@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.
- package/dist/{ClippingMediaViewer-B6WG7Q64.cjs → ClippingMediaViewer-IEIBT74X.cjs} +8 -8
- package/dist/{ClippingMediaViewer-B6WG7Q64.cjs.map → ClippingMediaViewer-IEIBT74X.cjs.map} +1 -1
- package/dist/{ClippingPdfViewer-6GCVTV3V.cjs → ClippingPdfViewer-OGYLMVCE.cjs} +5 -5
- package/dist/{ClippingPdfViewer-6GCVTV3V.cjs.map → ClippingPdfViewer-OGYLMVCE.cjs.map} +1 -1
- package/dist/{ConnectedCallDock-DC5V5OUJ.cjs → ConnectedCallDock-XJOYVVAH.cjs} +21 -21
- package/dist/{ConnectedCallDock-DC5V5OUJ.cjs.map → ConnectedCallDock-XJOYVVAH.cjs.map} +1 -1
- package/dist/{ConnectedCallRoom-FQLXWTFB.cjs → ConnectedCallRoom-CUDYAPQK.cjs} +14 -14
- package/dist/{ConnectedCallRoom-FQLXWTFB.cjs.map → ConnectedCallRoom-CUDYAPQK.cjs.map} +1 -1
- package/dist/{ConnectedNativeDocxComparison-4Q5S7VLD.cjs → ConnectedNativeDocxComparison-QKHCYD6W.cjs} +15 -15
- package/dist/{ConnectedNativeDocxComparison-4Q5S7VLD.cjs.map → ConnectedNativeDocxComparison-QKHCYD6W.cjs.map} +1 -1
- package/dist/ConnectedPresentation-5DOJ35XL.cjs +321 -0
- package/dist/ConnectedPresentation-5DOJ35XL.cjs.map +1 -0
- package/dist/{ConnectedProductionSetDialog-4EAY6KAZ.cjs → ConnectedProductionSetDialog-LHB4VQWC.cjs} +3 -3
- package/dist/{ConnectedProductionSetDialog-4EAY6KAZ.cjs.map → ConnectedProductionSetDialog-LHB4VQWC.cjs.map} +1 -1
- package/dist/{ConnectedSlidesTab-7QDE2CZD.cjs → ConnectedSlidesTab-7YMEDGUU.cjs} +73 -49
- package/dist/ConnectedSlidesTab-7YMEDGUU.cjs.map +1 -0
- package/dist/{ConnectedStreamedWordArtifact-FFOQJBOI.cjs → ConnectedStreamedWordArtifact-AG62232A.cjs} +15 -15
- package/dist/{ConnectedStreamedWordArtifact-FFOQJBOI.cjs.map → ConnectedStreamedWordArtifact-AG62232A.cjs.map} +1 -1
- package/dist/{DocumentReviewCard-SNWVEZ7S.cjs → DocumentReviewCard-M53XFLI2.cjs} +15 -15
- package/dist/{DocumentReviewCard-SNWVEZ7S.cjs.map → DocumentReviewCard-M53XFLI2.cjs.map} +1 -1
- package/dist/{FilesViewerDialog-IZI63FOV.cjs → FilesViewerDialog-2QCCRWF2.cjs} +50 -49
- package/dist/FilesViewerDialog-2QCCRWF2.cjs.map +1 -0
- package/dist/{WorkspaceTableView-TEIRB6VJ.cjs → WorkspaceTableView-3XYAV4BV.cjs} +8 -8
- package/dist/{WorkspaceTableView-TEIRB6VJ.cjs.map → WorkspaceTableView-3XYAV4BV.cjs.map} +1 -1
- package/dist/agents/index.cjs +296 -296
- package/dist/{ai-KBYNRNZ6.cjs → ai-IEIR7SC2.cjs} +25 -25
- package/dist/ai-IEIR7SC2.cjs.map +1 -0
- package/dist/calls/index.cjs +121 -121
- package/dist/chat/index.cjs +1 -1
- package/dist/{chunk-NLOETJCB.cjs → chunk-2F57IO7S.cjs} +12 -12
- package/dist/{chunk-NLOETJCB.cjs.map → chunk-2F57IO7S.cjs.map} +1 -1
- package/dist/chunk-2RLA6QO2.cjs +174 -0
- package/dist/chunk-2RLA6QO2.cjs.map +1 -0
- package/dist/{chunk-Q6DQGGP4.cjs → chunk-325GVZE6.cjs} +3 -3
- package/dist/{chunk-Q6DQGGP4.cjs.map → chunk-325GVZE6.cjs.map} +1 -1
- package/dist/{chunk-LHWOKOMP.cjs → chunk-46P7IDBX.cjs} +3 -3
- package/dist/chunk-46P7IDBX.cjs.map +1 -0
- package/dist/{chunk-XTR26TNE.cjs → chunk-4TTX6ZNS.cjs} +20 -4
- package/dist/chunk-4TTX6ZNS.cjs.map +1 -0
- package/dist/{chunk-BVAT4EVC.cjs → chunk-5QERK4PK.cjs} +35 -35
- package/dist/{chunk-BVAT4EVC.cjs.map → chunk-5QERK4PK.cjs.map} +1 -1
- package/dist/{chunk-GX2EBMJW.cjs → chunk-6OK7ESTL.cjs} +7 -6
- package/dist/chunk-6OK7ESTL.cjs.map +1 -0
- package/dist/{chunk-C2OICDMI.cjs → chunk-7557LDAN.cjs} +10 -10
- package/dist/{chunk-C2OICDMI.cjs.map → chunk-7557LDAN.cjs.map} +1 -1
- package/dist/{chunk-474GPLCM.cjs → chunk-7L4X6QN2.cjs} +6 -6
- package/dist/{chunk-474GPLCM.cjs.map → chunk-7L4X6QN2.cjs.map} +1 -1
- package/dist/{chunk-52KGMAO5.cjs → chunk-7NLO7ASW.cjs} +15 -15
- package/dist/{chunk-52KGMAO5.cjs.map → chunk-7NLO7ASW.cjs.map} +1 -1
- package/dist/{chunk-H5OLHP2U.cjs → chunk-7OPOPYV6.cjs} +3 -3
- package/dist/{chunk-H5OLHP2U.cjs.map → chunk-7OPOPYV6.cjs.map} +1 -1
- package/dist/{chunk-W6B3RYTX.cjs → chunk-7PN3YENO.cjs} +4 -4
- package/dist/{chunk-W6B3RYTX.cjs.map → chunk-7PN3YENO.cjs.map} +1 -1
- package/dist/{chunk-734NPQNR.cjs → chunk-ADDQKZ5I.cjs} +4 -4
- package/dist/{chunk-734NPQNR.cjs.map → chunk-ADDQKZ5I.cjs.map} +1 -1
- package/dist/{chunk-JQLWKNJO.cjs → chunk-ALK3PUUB.cjs} +4 -4
- package/dist/{chunk-JQLWKNJO.cjs.map → chunk-ALK3PUUB.cjs.map} +1 -1
- package/dist/{chunk-4VZZWYEC.cjs → chunk-BQ5RIWWT.cjs} +3 -3
- package/dist/{chunk-4VZZWYEC.cjs.map → chunk-BQ5RIWWT.cjs.map} +1 -1
- package/dist/{chunk-Q3XJUXID.cjs → chunk-DWMWEALB.cjs} +499 -409
- package/dist/chunk-DWMWEALB.cjs.map +1 -0
- package/dist/{chunk-3SCNXNHI.cjs → chunk-E3L5DB5F.cjs} +5 -5
- package/dist/{chunk-3SCNXNHI.cjs.map → chunk-E3L5DB5F.cjs.map} +1 -1
- package/dist/{chunk-VJ5ZLRBD.cjs → chunk-GFUOCGY6.cjs} +8 -3
- package/dist/chunk-GFUOCGY6.cjs.map +1 -0
- package/dist/{chunk-7VUJGHMY.cjs → chunk-JD2HX2BR.cjs} +272 -156
- package/dist/chunk-JD2HX2BR.cjs.map +1 -0
- package/dist/{chunk-RYVZDFVO.cjs → chunk-JJZOL5MG.cjs} +3 -3
- package/dist/{chunk-RYVZDFVO.cjs.map → chunk-JJZOL5MG.cjs.map} +1 -1
- package/dist/{chunk-QFXILJMJ.cjs → chunk-K4763GD5.cjs} +17 -174
- package/dist/chunk-K4763GD5.cjs.map +1 -0
- package/dist/{chunk-EHP6OH5D.cjs → chunk-KA3F6TIH.cjs} +11 -11
- package/dist/{chunk-EHP6OH5D.cjs.map → chunk-KA3F6TIH.cjs.map} +1 -1
- package/dist/{chunk-UUENH4BJ.cjs → chunk-KXIRVKCJ.cjs} +3 -3
- package/dist/{chunk-UUENH4BJ.cjs.map → chunk-KXIRVKCJ.cjs.map} +1 -1
- package/dist/{chunk-AY6EZSZB.cjs → chunk-L4CIFLCU.cjs} +4 -4
- package/dist/{chunk-AY6EZSZB.cjs.map → chunk-L4CIFLCU.cjs.map} +1 -1
- package/dist/{chunk-4RBQ44RY.cjs → chunk-MLA2BJ2Y.cjs} +28 -28
- package/dist/{chunk-4RBQ44RY.cjs.map → chunk-MLA2BJ2Y.cjs.map} +1 -1
- package/dist/{chunk-DR2AH7JL.cjs → chunk-NG2EE7HR.cjs} +48 -48
- package/dist/{chunk-DR2AH7JL.cjs.map → chunk-NG2EE7HR.cjs.map} +1 -1
- package/dist/{chunk-ENGL7P3I.cjs → chunk-NQML7IUC.cjs} +26 -26
- package/dist/{chunk-ENGL7P3I.cjs.map → chunk-NQML7IUC.cjs.map} +1 -1
- package/dist/{chunk-4NPCDS2X.cjs → chunk-NY3YUCOW.cjs} +3 -3
- package/dist/{chunk-4NPCDS2X.cjs.map → chunk-NY3YUCOW.cjs.map} +1 -1
- package/dist/{chunk-JZEYHDWJ.cjs → chunk-OHHKBURG.cjs} +76 -76
- package/dist/chunk-OHHKBURG.cjs.map +1 -0
- package/dist/{chunk-5534FYXP.cjs → chunk-SDRYSLOX.cjs} +4 -4
- package/dist/{chunk-5534FYXP.cjs.map → chunk-SDRYSLOX.cjs.map} +1 -1
- package/dist/{chunk-2W5E62EY.cjs → chunk-SGYSDABK.cjs} +6 -6
- package/dist/{chunk-2W5E62EY.cjs.map → chunk-SGYSDABK.cjs.map} +1 -1
- package/dist/{chunk-KP5AITQ4.cjs → chunk-SNPK3R3O.cjs} +7 -7
- package/dist/{chunk-KP5AITQ4.cjs.map → chunk-SNPK3R3O.cjs.map} +1 -1
- package/dist/{chunk-EATIFPKP.cjs → chunk-T73BHNQX.cjs} +4 -4
- package/dist/{chunk-EATIFPKP.cjs.map → chunk-T73BHNQX.cjs.map} +1 -1
- package/dist/{chunk-4IOYQLKG.cjs → chunk-TP5PGWIO.cjs} +3 -3
- package/dist/{chunk-4IOYQLKG.cjs.map → chunk-TP5PGWIO.cjs.map} +1 -1
- package/dist/{chunk-GKVE5JGB.cjs → chunk-UFT22LAB.cjs} +3 -3
- package/dist/{chunk-GKVE5JGB.cjs.map → chunk-UFT22LAB.cjs.map} +1 -1
- package/dist/{chunk-FKFQCK3C.cjs → chunk-V6MW7B4B.cjs} +4 -4
- package/dist/{chunk-FKFQCK3C.cjs.map → chunk-V6MW7B4B.cjs.map} +1 -1
- package/dist/{chunk-2PZT3J34.cjs → chunk-VWBYE3XY.cjs} +6 -6
- package/dist/{chunk-2PZT3J34.cjs.map → chunk-VWBYE3XY.cjs.map} +1 -1
- package/dist/{chunk-GQXPNIRE.cjs → chunk-WAV762GP.cjs} +6 -6
- package/dist/{chunk-GQXPNIRE.cjs.map → chunk-WAV762GP.cjs.map} +1 -1
- package/dist/{chunk-5LTIZ44D.cjs → chunk-WFMWKPGY.cjs} +14 -7
- package/dist/chunk-WFMWKPGY.cjs.map +1 -0
- package/dist/{chunk-GPX5VC57.cjs → chunk-WV7BCGCK.cjs} +50 -50
- package/dist/{chunk-GPX5VC57.cjs.map → chunk-WV7BCGCK.cjs.map} +1 -1
- package/dist/{chunk-MZ2KZXNU.cjs → chunk-WXUU3COI.cjs} +3 -3
- package/dist/{chunk-MZ2KZXNU.cjs.map → chunk-WXUU3COI.cjs.map} +1 -1
- package/dist/{chunk-NAJN32MF.cjs → chunk-XF355M7O.cjs} +13 -13
- package/dist/{chunk-NAJN32MF.cjs.map → chunk-XF355M7O.cjs.map} +1 -1
- package/dist/connect/docx.cjs +18 -18
- package/dist/connect/index.cjs +995 -994
- package/dist/connect/index.cjs.map +1 -1
- package/dist/connect/viewer.cjs +38 -37
- package/dist/connection/conversation/ConnectedMessage.js +1 -1
- package/dist/connection/conversation/ConnectedMessage.js.map +2 -2
- package/dist/connection/presentation/ConnectedSlidesTab.js +39 -15
- package/dist/connection/presentation/ConnectedSlidesTab.js.map +2 -2
- package/dist/connection/presentation/PresentationPill.js +3 -8
- package/dist/connection/presentation/PresentationPill.js.map +2 -2
- package/dist/connection/presentation/requests.d.ts +5 -0
- package/dist/connection/presentation/requests.js +8 -1
- package/dist/connection/presentation/requests.js.map +2 -2
- package/dist/connection/viewer/ConnectedDocumentViewer.js +51 -60
- package/dist/connection/viewer/ConnectedDocumentViewer.js.map +2 -2
- package/dist/connection/viewer/ViewerMoreMenu.d.ts +18 -0
- package/dist/connection/viewer/ViewerMoreMenu.js +45 -0
- package/dist/connection/viewer/ViewerMoreMenu.js.map +7 -0
- package/dist/connection/viewer/ViewerPdfPane.js +4 -1
- package/dist/connection/viewer/ViewerPdfPane.js.map +2 -2
- package/dist/connection/viewer/documentPlace.d.ts +5 -4
- package/dist/connection/viewer/documentPlace.js +2 -2
- package/dist/connection/viewer/documentPlace.js.map +2 -2
- package/dist/connection/viewer/pdf/PdfClipOutlines.d.ts +11 -0
- package/dist/connection/viewer/pdf/PdfClipOutlines.js +42 -0
- package/dist/connection/viewer/pdf/PdfClipOutlines.js.map +7 -0
- package/dist/connection/viewer/pdf/PdfPassageHighlights.js +3 -2
- package/dist/connection/viewer/pdf/PdfPassageHighlights.js.map +2 -2
- package/dist/connection/viewer/pdf/clipOutlines.d.ts +17 -0
- package/dist/connection/viewer/pdf/clipOutlines.js +24 -0
- package/dist/connection/viewer/pdf/clipOutlines.js.map +7 -0
- package/dist/connection/viewer/pdf/passageHighlights.d.ts +2 -0
- package/dist/connection/viewer/pdf/passageHighlights.js +12 -1
- package/dist/connection/viewer/pdf/passageHighlights.js.map +2 -2
- package/dist/connection/viewer/pdf/usePdfClipOutlines.d.ts +7 -0
- package/dist/connection/viewer/pdf/usePdfClipOutlines.js +36 -0
- package/dist/connection/viewer/pdf/usePdfClipOutlines.js.map +7 -0
- package/dist/connection/viewer/pdf/usePdfPassageHighlights.js +11 -2
- package/dist/connection/viewer/pdf/usePdfPassageHighlights.js.map +2 -2
- package/dist/dashboards/index.cjs +1 -1
- package/dist/document-tools/DocumentToolButtons.js +2 -2
- package/dist/document-tools/DocumentToolButtons.js.map +2 -2
- package/dist/document-tools/index.cjs +13 -13
- package/dist/embed/index.cjs +38 -38
- package/dist/files/index.cjs +224 -224
- package/dist/index.cjs +1596 -1595
- package/dist/index.cjs.map +1 -1
- package/dist/presentation/BoxActionBar.d.ts +2 -2
- package/dist/presentation/BoxActionBar.js +62 -30
- package/dist/presentation/BoxActionBar.js.map +2 -2
- package/dist/presentation/ClipActionBar.js +60 -7
- package/dist/presentation/ClipActionBar.js.map +2 -2
- package/dist/presentation/ClipViewControls.d.ts +3 -3
- package/dist/presentation/ClipViewControls.js +59 -64
- package/dist/presentation/ClipViewControls.js.map +2 -2
- package/dist/presentation/PresentControls.d.ts +11 -0
- package/dist/presentation/PresentControls.js +117 -0
- package/dist/presentation/PresentControls.js.map +7 -0
- package/dist/presentation/PresenterView.js +36 -5
- package/dist/presentation/PresenterView.js.map +2 -2
- package/dist/presentation/SlidesEditor.js +73 -43
- package/dist/presentation/SlidesEditor.js.map +2 -2
- package/dist/presentation/StageItem.js +0 -5
- package/dist/presentation/StageItem.js.map +2 -2
- package/dist/presentation/panel-id.d.ts +12 -2
- package/dist/presentation/panel-id.js +6 -1
- package/dist/presentation/panel-id.js.map +2 -2
- package/dist/presentation/slide-layout.d.ts +5 -1
- package/dist/presentation/slide-layout.js +16 -0
- package/dist/presentation/slide-layout.js.map +2 -2
- package/dist/settings/index.cjs +146 -146
- package/dist/shell/PanelPortal.js +13 -4
- package/dist/shell/PanelPortal.js.map +2 -2
- package/dist/shell/index.cjs +92 -91
- package/dist/shell/panel-windows.js +1 -0
- package/dist/shell/panel-windows.js.map +2 -2
- package/dist/studio/index.cjs +28 -28
- package/dist/styles.css +1 -1
- package/dist/workflow-canvas/index.cjs +52 -52
- package/node_modules/@arbidocs/coedit/package.json +1 -1
- package/package.json +5 -5
- package/dist/ConnectedPresentation-4HLDZDWV.cjs +0 -183
- package/dist/ConnectedPresentation-4HLDZDWV.cjs.map +0 -1
- package/dist/ConnectedSlidesTab-7QDE2CZD.cjs.map +0 -1
- package/dist/FilesViewerDialog-IZI63FOV.cjs.map +0 -1
- package/dist/ai-KBYNRNZ6.cjs.map +0 -1
- package/dist/chunk-5LTIZ44D.cjs.map +0 -1
- package/dist/chunk-7VUJGHMY.cjs.map +0 -1
- package/dist/chunk-GX2EBMJW.cjs.map +0 -1
- package/dist/chunk-JZEYHDWJ.cjs.map +0 -1
- package/dist/chunk-LHWOKOMP.cjs.map +0 -1
- package/dist/chunk-Q3XJUXID.cjs.map +0 -1
- package/dist/chunk-QFXILJMJ.cjs.map +0 -1
- package/dist/chunk-VJ5ZLRBD.cjs.map +0 -1
- package/dist/chunk-XTR26TNE.cjs.map +0 -1
|
@@ -151,12 +151,21 @@ function PanelPortal({
|
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
153
|
}, [isOpen, mode, panelId, popoutTitle, onPopupClosed, windowManager]);
|
|
154
|
+
const pendingClose = useRef(null);
|
|
154
155
|
useEffect(() => {
|
|
156
|
+
if (pendingClose.current) {
|
|
157
|
+
clearTimeout(pendingClose.current);
|
|
158
|
+
pendingClose.current = null;
|
|
159
|
+
}
|
|
155
160
|
return () => {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
161
|
+
const windowId = popupWindowIdRef.current;
|
|
162
|
+
if (!windowId) return;
|
|
163
|
+
popupWindowIdRef.current = null;
|
|
164
|
+
pendingClose.current = setTimeout(() => {
|
|
165
|
+
pendingClose.current = null;
|
|
166
|
+
if (popupWindowIdRef.current === windowId) return;
|
|
167
|
+
windowManager.closeWindow(windowId);
|
|
168
|
+
}, 0);
|
|
160
169
|
};
|
|
161
170
|
}, [windowManager]);
|
|
162
171
|
if (!isOpen && !isExiting) return null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/shell/PanelPortal.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * PanelPortal Component\n *\n * Thin portal layer that renders children into the right target based on panel mode:\n * - docked: portal to #dock-zone element\n * - overlay: portal to <body> as a slide-out sheet over a backdrop\n * - popout: portal to a separate browser window\n * - main: portal to #main-zone element\n *\n * Manages popup window lifecycle for popout mode.\n * Content-agnostic \u2014 just handles where things render.\n */\n\nimport { useCallback, useEffect, useRef, useState } from 'react'\nimport { createPortal } from 'react-dom'\nimport { DEFAULT_OVERLAY_ZONE_ID } from './Shell'\nimport { usePanelHostSupport } from './panel-host'\nimport { PortalContainerProvider } from '@arbidocs/react/ui'\nimport type { FloatingPanelMode as PanelMode } from '../settings/FloatingPanel'\n\n// Overlay sheet sizing \u2014 defaults match the docked width (DEFAULT_DOCK_PX) so a\n// panel is the same size whether pinned or floating, and stays draggable here.\nconst OVERLAY_DEFAULT_PX = 544\nconst OVERLAY_MIN_PX = 360\n\nexport interface PanelPortalProps {\n panelId: string\n mode: PanelMode\n isOpen: boolean\n /** True while the overlay is animating out before unmounting. */\n isExiting?: boolean\n /** Called when popup window is closed externally (user closes the window) */\n onPopupClosed?: () => void\n /** Dismisses the panel \u2014 used by the overlay backdrop. */\n onClose?: () => void\n /** Window title for popout mode */\n popoutTitle?: string\n /** Initial overlay width in px (defaults to OVERLAY_DEFAULT_PX). */\n defaultWidth?: number\n children: React.ReactNode\n}\n\n/**\n * Overlay sheet \u2014 a slide-out panel over the still-visible page, resizable by\n * dragging its left edge. Slides in on mount and out (via isExiting) before\n * unmounting, mirroring the left sidebar's animation.\n */\nfunction OverlaySheet({\n panelId,\n isExiting,\n onClose,\n defaultWidth,\n scoped,\n children,\n}: {\n panelId: string\n isExiting?: boolean\n onClose?: () => void\n defaultWidth?: number\n /** Rendered inside the layout's overlay zone (below the topbar) rather than\n * over the whole viewport. */\n scoped?: boolean\n children: React.ReactNode\n}) {\n const [width, setWidth] = useState(defaultWidth ?? OVERLAY_DEFAULT_PX)\n const [isResizing, setIsResizing] = useState(false)\n // Live cursor position while dragging. The panel keeps its committed `width`\n // during the drag \u2014 only this thin preview line moves \u2014 so the heavy panel\n // content never reflows mid-drag (matching DockZone's split-screen handle).\n // The width is committed once on mouse-up.\n const [dragWidth, setDragWidth] = useState<number | null>(null)\n const dragWidthRef = useRef<number | null>(null)\n // Once the slide-in has played we drop the entry class, so later re-renders\n // don't restart the animation.\n const [hasEntered, setHasEntered] = useState(false)\n\n const handleResizeStart = useCallback((e: React.MouseEvent) => {\n e.preventDefault()\n setHasEntered(true)\n setIsResizing(true)\n setDragWidth(null)\n dragWidthRef.current = null\n }, [])\n\n useEffect(() => {\n if (!isResizing) return\n const handleMouseMove = (e: MouseEvent) => {\n // Anchored to the right edge \u2014 width grows as the cursor moves left.\n const max = window.innerWidth * 0.92\n const next = Math.min(Math.max(window.innerWidth - e.clientX, OVERLAY_MIN_PX), max)\n dragWidthRef.current = next\n setDragWidth(next)\n }\n const handleMouseUp = () => {\n if (dragWidthRef.current !== null) setWidth(dragWidthRef.current)\n setIsResizing(false)\n setDragWidth(null)\n dragWidthRef.current = null\n }\n document.addEventListener('mousemove', handleMouseMove)\n document.addEventListener('mouseup', handleMouseUp)\n document.body.style.cursor = 'col-resize'\n document.body.style.userSelect = 'none'\n return () => {\n document.removeEventListener('mousemove', handleMouseMove)\n document.removeEventListener('mouseup', handleMouseUp)\n document.body.style.cursor = ''\n document.body.style.userSelect = ''\n }\n }, [isResizing])\n\n return (\n // Scoped: absolute within the layout's overlay zone (below the topbar).\n // Unscoped fallback: fixed over the whole viewport, as before.\n <div\n className={scoped ? 'absolute inset-0 z-40' : 'fixed inset-0 z-50'}\n data-testid={`${panelId}-overlay`}\n >\n {/* In dark mode a 40% black veil crushes the light page text behind the sheet to\n mid-grey, so the veil is lighter there and the page stays readable underneath. */}\n <div\n className={`absolute inset-0 bg-black/40 dark:bg-black/20 duration-200 ${\n // fill-mode-forwards holds the exit end-state \u2014 without it the\n // element snaps back fully visible for the frames between the\n // animation finishing and React unmounting it (a flicker).\n isExiting ? 'animate-out fade-out fill-mode-forwards' : 'animate-in fade-in'\n }`}\n onClick={onClose}\n aria-hidden=\"true\"\n data-testid={`${panelId}-overlay-backdrop`}\n />\n <div\n style={{ width }}\n onAnimationEnd={() => !isExiting && setHasEntered(true)}\n className={`absolute right-0 top-0 bottom-0 flex max-w-[92vw] flex-col border-l max-sm:!w-full max-sm:!max-w-full max-sm:border-l-0 border-border bg-muted shadow-2xl duration-200 ${\n isExiting\n ? 'animate-out slide-out-to-right fill-mode-forwards'\n : // Suppress the slide transform once entered so it doesn't replay.\n hasEntered\n ? ''\n : 'animate-in slide-in-from-right'\n }`}\n >\n {/* Drag handle on the left edge to resize the sheet. */}\n <div\n className=\"absolute left-0 top-0 bottom-0 z-10 w-1.5 -translate-x-1/2 cursor-col-resize hover:bg-primary/40\"\n onMouseDown={handleResizeStart}\n data-testid={`${panelId}-overlay-resize-handle`}\n />\n {children}\n </div>\n\n {/* Preview line \u2014 tracks the cursor during the drag; the panel resizes\n to this position only on release. */}\n {isResizing && dragWidth !== null && (\n <div\n className=\"absolute top-0 bottom-0 z-[60] w-0.5 bg-primary pointer-events-none\"\n style={{ right: dragWidth }}\n />\n )}\n {/* Transparent capture layer so the drag isn't interrupted by elements\n (iframes, the grid) swallowing pointer events. */}\n {isResizing && <div className=\"absolute inset-0 z-[55] cursor-col-resize\" />}\n </div>\n )\n}\n\nexport function PanelPortal({\n panelId,\n mode,\n isOpen,\n isExiting,\n onPopupClosed,\n onClose,\n popoutTitle,\n defaultWidth,\n children,\n}: PanelPortalProps) {\n const { windows: windowManager } = usePanelHostSupport()\n const [popupRoot, setPopupRoot] = useState<HTMLElement | null>(null)\n const popupWindowIdRef = useRef<string | null>(null)\n\n // Open popup window when switching to popout mode\n useEffect(() => {\n if (!isOpen || mode !== 'popout') {\n // Close popup if we're leaving popout mode (intentional mode switch, not user closing)\n if (popupWindowIdRef.current) {\n // Clear the onClose callback before closing so it doesn't trigger onPopupClosed\n windowManager.clearOnClose(popupWindowIdRef.current)\n windowManager.closeWindow(popupWindowIdRef.current)\n popupWindowIdRef.current = null\n setPopupRoot(null)\n }\n return\n }\n\n // Already have a popup open\n if (popupWindowIdRef.current) return\n\n const windowId = windowManager.createPopupWindow(\n `panel-${panelId}`,\n () => {\n popupWindowIdRef.current = null\n setPopupRoot(null)\n onPopupClosed?.()\n },\n popoutTitle || panelId\n )\n\n if (windowId) {\n const rootElement = windowManager.getRootElement(windowId)\n if (rootElement) {\n popupWindowIdRef.current = windowId\n setPopupRoot(rootElement)\n windowManager.getWindow(windowId)?.focus()\n }\n }\n }, [isOpen, mode, panelId, popoutTitle, onPopupClosed, windowManager])\n\n // Clean up on unmount. The ref is cleared too: a remount (React's StrictMode replays mount\n // effects) of a panel that mounts already popped out must open a new window, not keep\n // pointing at the closed one.\n useEffect(() => {\n return () => {\n if (popupWindowIdRef.current) {\n windowManager.closeWindow(popupWindowIdRef.current)\n popupWindowIdRef.current = null\n }\n }\n }, [windowManager])\n\n if (!isOpen && !isExiting) return null\n\n // Popout: render into popup window. Its dialogs and menus open there too, not in the window\n // behind it (where the Sign dialog used to open, out of sight).\n if (mode === 'popout' && popupRoot) {\n return createPortal(\n <PortalContainerProvider container={popupRoot}>{children}</PortalContainerProvider>,\n popupRoot\n )\n }\n\n // Overlay: a slide-out sheet over the still-visible page. Rendered into the\n // layout's #app-overlay-zone \u2014 the content region BELOW the app topbar \u2014 so\n // the bar stays visible and interactive above every overlay. Falls back to\n // <body> (viewport-covering) when no zone is mounted (e.g. embedded shells).\n if (mode === 'overlay') {\n const overlayZone = document.getElementById(DEFAULT_OVERLAY_ZONE_ID)\n return createPortal(\n <OverlaySheet\n panelId={panelId}\n isExiting={isExiting}\n onClose={onClose}\n defaultWidth={defaultWidth}\n scoped={overlayZone !== null}\n >\n {children}\n </OverlaySheet>,\n overlayZone ?? document.body\n )\n }\n\n // Main: render into main content zone\n if (mode === 'main') {\n const mainZone = document.getElementById('main-zone')\n if (mainZone) {\n return createPortal(children, mainZone)\n }\n }\n\n // Docked: render into dock zone\n const dockZone = document.getElementById('dock-zone')\n if (dockZone) {\n return createPortal(children, dockZone)\n }\n\n // No target zone mounted yet \u2014 render nothing\n return null\n}\n"],
|
|
5
|
-
"mappings": "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
|
|
4
|
+
"sourcesContent": ["/**\n * PanelPortal Component\n *\n * Thin portal layer that renders children into the right target based on panel mode:\n * - docked: portal to #dock-zone element\n * - overlay: portal to <body> as a slide-out sheet over a backdrop\n * - popout: portal to a separate browser window\n * - main: portal to #main-zone element\n *\n * Manages popup window lifecycle for popout mode.\n * Content-agnostic \u2014 just handles where things render.\n */\n\nimport { useCallback, useEffect, useRef, useState } from 'react'\nimport { createPortal } from 'react-dom'\nimport { DEFAULT_OVERLAY_ZONE_ID } from './Shell'\nimport { usePanelHostSupport } from './panel-host'\nimport { PortalContainerProvider } from '@arbidocs/react/ui'\nimport type { FloatingPanelMode as PanelMode } from '../settings/FloatingPanel'\n\n// Overlay sheet sizing \u2014 defaults match the docked width (DEFAULT_DOCK_PX) so a\n// panel is the same size whether pinned or floating, and stays draggable here.\nconst OVERLAY_DEFAULT_PX = 544\nconst OVERLAY_MIN_PX = 360\n\nexport interface PanelPortalProps {\n panelId: string\n mode: PanelMode\n isOpen: boolean\n /** True while the overlay is animating out before unmounting. */\n isExiting?: boolean\n /** Called when popup window is closed externally (user closes the window) */\n onPopupClosed?: () => void\n /** Dismisses the panel \u2014 used by the overlay backdrop. */\n onClose?: () => void\n /** Window title for popout mode */\n popoutTitle?: string\n /** Initial overlay width in px (defaults to OVERLAY_DEFAULT_PX). */\n defaultWidth?: number\n children: React.ReactNode\n}\n\n/**\n * Overlay sheet \u2014 a slide-out panel over the still-visible page, resizable by\n * dragging its left edge. Slides in on mount and out (via isExiting) before\n * unmounting, mirroring the left sidebar's animation.\n */\nfunction OverlaySheet({\n panelId,\n isExiting,\n onClose,\n defaultWidth,\n scoped,\n children,\n}: {\n panelId: string\n isExiting?: boolean\n onClose?: () => void\n defaultWidth?: number\n /** Rendered inside the layout's overlay zone (below the topbar) rather than\n * over the whole viewport. */\n scoped?: boolean\n children: React.ReactNode\n}) {\n const [width, setWidth] = useState(defaultWidth ?? OVERLAY_DEFAULT_PX)\n const [isResizing, setIsResizing] = useState(false)\n // Live cursor position while dragging. The panel keeps its committed `width`\n // during the drag \u2014 only this thin preview line moves \u2014 so the heavy panel\n // content never reflows mid-drag (matching DockZone's split-screen handle).\n // The width is committed once on mouse-up.\n const [dragWidth, setDragWidth] = useState<number | null>(null)\n const dragWidthRef = useRef<number | null>(null)\n // Once the slide-in has played we drop the entry class, so later re-renders\n // don't restart the animation.\n const [hasEntered, setHasEntered] = useState(false)\n\n const handleResizeStart = useCallback((e: React.MouseEvent) => {\n e.preventDefault()\n setHasEntered(true)\n setIsResizing(true)\n setDragWidth(null)\n dragWidthRef.current = null\n }, [])\n\n useEffect(() => {\n if (!isResizing) return\n const handleMouseMove = (e: MouseEvent) => {\n // Anchored to the right edge \u2014 width grows as the cursor moves left.\n const max = window.innerWidth * 0.92\n const next = Math.min(Math.max(window.innerWidth - e.clientX, OVERLAY_MIN_PX), max)\n dragWidthRef.current = next\n setDragWidth(next)\n }\n const handleMouseUp = () => {\n if (dragWidthRef.current !== null) setWidth(dragWidthRef.current)\n setIsResizing(false)\n setDragWidth(null)\n dragWidthRef.current = null\n }\n document.addEventListener('mousemove', handleMouseMove)\n document.addEventListener('mouseup', handleMouseUp)\n document.body.style.cursor = 'col-resize'\n document.body.style.userSelect = 'none'\n return () => {\n document.removeEventListener('mousemove', handleMouseMove)\n document.removeEventListener('mouseup', handleMouseUp)\n document.body.style.cursor = ''\n document.body.style.userSelect = ''\n }\n }, [isResizing])\n\n return (\n // Scoped: absolute within the layout's overlay zone (below the topbar).\n // Unscoped fallback: fixed over the whole viewport, as before.\n <div\n className={scoped ? 'absolute inset-0 z-40' : 'fixed inset-0 z-50'}\n data-testid={`${panelId}-overlay`}\n >\n {/* In dark mode a 40% black veil crushes the light page text behind the sheet to\n mid-grey, so the veil is lighter there and the page stays readable underneath. */}\n <div\n className={`absolute inset-0 bg-black/40 dark:bg-black/20 duration-200 ${\n // fill-mode-forwards holds the exit end-state \u2014 without it the\n // element snaps back fully visible for the frames between the\n // animation finishing and React unmounting it (a flicker).\n isExiting ? 'animate-out fade-out fill-mode-forwards' : 'animate-in fade-in'\n }`}\n onClick={onClose}\n aria-hidden=\"true\"\n data-testid={`${panelId}-overlay-backdrop`}\n />\n <div\n style={{ width }}\n onAnimationEnd={() => !isExiting && setHasEntered(true)}\n className={`absolute right-0 top-0 bottom-0 flex max-w-[92vw] flex-col border-l max-sm:!w-full max-sm:!max-w-full max-sm:border-l-0 border-border bg-muted shadow-2xl duration-200 ${\n isExiting\n ? 'animate-out slide-out-to-right fill-mode-forwards'\n : // Suppress the slide transform once entered so it doesn't replay.\n hasEntered\n ? ''\n : 'animate-in slide-in-from-right'\n }`}\n >\n {/* Drag handle on the left edge to resize the sheet. */}\n <div\n className=\"absolute left-0 top-0 bottom-0 z-10 w-1.5 -translate-x-1/2 cursor-col-resize hover:bg-primary/40\"\n onMouseDown={handleResizeStart}\n data-testid={`${panelId}-overlay-resize-handle`}\n />\n {children}\n </div>\n\n {/* Preview line \u2014 tracks the cursor during the drag; the panel resizes\n to this position only on release. */}\n {isResizing && dragWidth !== null && (\n <div\n className=\"absolute top-0 bottom-0 z-[60] w-0.5 bg-primary pointer-events-none\"\n style={{ right: dragWidth }}\n />\n )}\n {/* Transparent capture layer so the drag isn't interrupted by elements\n (iframes, the grid) swallowing pointer events. */}\n {isResizing && <div className=\"absolute inset-0 z-[55] cursor-col-resize\" />}\n </div>\n )\n}\n\nexport function PanelPortal({\n panelId,\n mode,\n isOpen,\n isExiting,\n onPopupClosed,\n onClose,\n popoutTitle,\n defaultWidth,\n children,\n}: PanelPortalProps) {\n const { windows: windowManager } = usePanelHostSupport()\n const [popupRoot, setPopupRoot] = useState<HTMLElement | null>(null)\n const popupWindowIdRef = useRef<string | null>(null)\n\n // Open popup window when switching to popout mode\n useEffect(() => {\n if (!isOpen || mode !== 'popout') {\n // Close popup if we're leaving popout mode (intentional mode switch, not user closing)\n if (popupWindowIdRef.current) {\n // Clear the onClose callback before closing so it doesn't trigger onPopupClosed\n windowManager.clearOnClose(popupWindowIdRef.current)\n windowManager.closeWindow(popupWindowIdRef.current)\n popupWindowIdRef.current = null\n setPopupRoot(null)\n }\n return\n }\n\n // Already have a popup open\n if (popupWindowIdRef.current) return\n\n const windowId = windowManager.createPopupWindow(\n `panel-${panelId}`,\n () => {\n popupWindowIdRef.current = null\n setPopupRoot(null)\n onPopupClosed?.()\n },\n popoutTitle || panelId\n )\n\n if (windowId) {\n const rootElement = windowManager.getRootElement(windowId)\n if (rootElement) {\n popupWindowIdRef.current = windowId\n setPopupRoot(rootElement)\n windowManager.getWindow(windowId)?.focus()\n }\n }\n }, [isOpen, mode, panelId, popoutTitle, onPopupClosed, windowManager])\n\n // Close the window on unmount, a moment later: a remount straight after (React's StrictMode\n // replays mount effects) keeps it instead. Closing it and opening another would need a second\n // click's permission to open a window, and the browser would block the new one as a pop-up.\n const pendingClose = useRef<ReturnType<typeof setTimeout> | null>(null)\n useEffect(() => {\n if (pendingClose.current) {\n clearTimeout(pendingClose.current)\n pendingClose.current = null\n }\n return () => {\n const windowId = popupWindowIdRef.current\n if (!windowId) return\n popupWindowIdRef.current = null\n pendingClose.current = setTimeout(() => {\n pendingClose.current = null\n // Taken up again by the remount (the open effect reuses a window that is still open).\n if (popupWindowIdRef.current === windowId) return\n windowManager.closeWindow(windowId)\n }, 0)\n }\n }, [windowManager])\n\n if (!isOpen && !isExiting) return null\n\n // Popout: render into popup window. Its dialogs and menus open there too, not in the window\n // behind it (where the Sign dialog used to open, out of sight).\n if (mode === 'popout' && popupRoot) {\n return createPortal(\n <PortalContainerProvider container={popupRoot}>{children}</PortalContainerProvider>,\n popupRoot\n )\n }\n\n // Overlay: a slide-out sheet over the still-visible page. Rendered into the\n // layout's #app-overlay-zone \u2014 the content region BELOW the app topbar \u2014 so\n // the bar stays visible and interactive above every overlay. Falls back to\n // <body> (viewport-covering) when no zone is mounted (e.g. embedded shells).\n if (mode === 'overlay') {\n const overlayZone = document.getElementById(DEFAULT_OVERLAY_ZONE_ID)\n return createPortal(\n <OverlaySheet\n panelId={panelId}\n isExiting={isExiting}\n onClose={onClose}\n defaultWidth={defaultWidth}\n scoped={overlayZone !== null}\n >\n {children}\n </OverlaySheet>,\n overlayZone ?? document.body\n )\n }\n\n // Main: render into main content zone\n if (mode === 'main') {\n const mainZone = document.getElementById('main-zone')\n if (mainZone) {\n return createPortal(children, mainZone)\n }\n }\n\n // Docked: render into dock zone\n const dockZone = document.getElementById('dock-zone')\n if (dockZone) {\n return createPortal(children, dockZone)\n }\n\n // No target zone mounted yet \u2014 render nothing\n return null\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/shell/index.cjs
CHANGED
|
@@ -3,23 +3,24 @@
|
|
|
3
3
|
|
|
4
4
|
var chunkVCEX7COE_cjs = require('../chunk-VCEX7COE.cjs');
|
|
5
5
|
require('../chunk-34HQO4ZQ.cjs');
|
|
6
|
+
var chunkKA3F6TIH_cjs = require('../chunk-KA3F6TIH.cjs');
|
|
7
|
+
var chunkK4763GD5_cjs = require('../chunk-K4763GD5.cjs');
|
|
8
|
+
var chunk2RLA6QO2_cjs = require('../chunk-2RLA6QO2.cjs');
|
|
9
|
+
var chunkNY3YUCOW_cjs = require('../chunk-NY3YUCOW.cjs');
|
|
10
|
+
var chunk325GVZE6_cjs = require('../chunk-325GVZE6.cjs');
|
|
11
|
+
require('../chunk-AHDJXIUB.cjs');
|
|
12
|
+
var chunk6UZC4XVV_cjs = require('../chunk-6UZC4XVV.cjs');
|
|
13
|
+
require('../chunk-JV5TVUOU.cjs');
|
|
14
|
+
var chunkKKYNTWDU_cjs = require('../chunk-KKYNTWDU.cjs');
|
|
15
|
+
require('../chunk-3YZKDCWY.cjs');
|
|
16
|
+
var chunkSJSGSHIT_cjs = require('../chunk-SJSGSHIT.cjs');
|
|
6
17
|
var chunkCT3SLXB7_cjs = require('../chunk-CT3SLXB7.cjs');
|
|
7
|
-
var chunkEHP6OH5D_cjs = require('../chunk-EHP6OH5D.cjs');
|
|
8
|
-
var chunkQFXILJMJ_cjs = require('../chunk-QFXILJMJ.cjs');
|
|
9
|
-
var chunk4NPCDS2X_cjs = require('../chunk-4NPCDS2X.cjs');
|
|
10
|
-
var chunkQ6DQGGP4_cjs = require('../chunk-Q6DQGGP4.cjs');
|
|
11
18
|
var chunkDEXUL3T6_cjs = require('../chunk-DEXUL3T6.cjs');
|
|
12
19
|
var chunkAFQTQC7A_cjs = require('../chunk-AFQTQC7A.cjs');
|
|
13
20
|
var chunkXJEXFEWG_cjs = require('../chunk-XJEXFEWG.cjs');
|
|
14
21
|
var chunkYZSQ7F5K_cjs = require('../chunk-YZSQ7F5K.cjs');
|
|
15
22
|
var chunkKQF7POTG_cjs = require('../chunk-KQF7POTG.cjs');
|
|
16
23
|
var chunkFX3K6LNZ_cjs = require('../chunk-FX3K6LNZ.cjs');
|
|
17
|
-
require('../chunk-AHDJXIUB.cjs');
|
|
18
|
-
var chunk6UZC4XVV_cjs = require('../chunk-6UZC4XVV.cjs');
|
|
19
|
-
require('../chunk-JV5TVUOU.cjs');
|
|
20
|
-
var chunkKKYNTWDU_cjs = require('../chunk-KKYNTWDU.cjs');
|
|
21
|
-
require('../chunk-3YZKDCWY.cjs');
|
|
22
|
-
var chunkSJSGSHIT_cjs = require('../chunk-SJSGSHIT.cjs');
|
|
23
24
|
require('../chunk-PPCATBOY.cjs');
|
|
24
25
|
require('../chunk-TKHCIHE2.cjs');
|
|
25
26
|
require('../chunk-JDFBEGQO.cjs');
|
|
@@ -80,193 +81,221 @@ Object.defineProperty(exports, "useInstallPrompt", {
|
|
|
80
81
|
enumerable: true,
|
|
81
82
|
get: function () { return chunkVCEX7COE_cjs.useInstallPrompt; }
|
|
82
83
|
});
|
|
83
|
-
Object.defineProperty(exports, "DEFAULT_DOCK_WIDTH", {
|
|
84
|
-
enumerable: true,
|
|
85
|
-
get: function () { return chunkCT3SLXB7_cjs.DEFAULT_DOCK_WIDTH; }
|
|
86
|
-
});
|
|
87
|
-
Object.defineProperty(exports, "Toaster", {
|
|
88
|
-
enumerable: true,
|
|
89
|
-
get: function () { return chunkCT3SLXB7_cjs.Toaster; }
|
|
90
|
-
});
|
|
91
84
|
Object.defineProperty(exports, "ActionCluster", {
|
|
92
85
|
enumerable: true,
|
|
93
|
-
get: function () { return
|
|
86
|
+
get: function () { return chunkKA3F6TIH_cjs.ActionCluster; }
|
|
94
87
|
});
|
|
95
88
|
Object.defineProperty(exports, "AskField", {
|
|
96
89
|
enumerable: true,
|
|
97
|
-
get: function () { return
|
|
90
|
+
get: function () { return chunkKA3F6TIH_cjs.AskField; }
|
|
98
91
|
});
|
|
99
92
|
Object.defineProperty(exports, "AskRow", {
|
|
100
93
|
enumerable: true,
|
|
101
|
-
get: function () { return
|
|
94
|
+
get: function () { return chunkKA3F6TIH_cjs.AskRow; }
|
|
102
95
|
});
|
|
103
96
|
Object.defineProperty(exports, "AskTrigger", {
|
|
104
97
|
enumerable: true,
|
|
105
|
-
get: function () { return
|
|
98
|
+
get: function () { return chunkKA3F6TIH_cjs.AskTrigger; }
|
|
106
99
|
});
|
|
107
100
|
Object.defineProperty(exports, "DEFAULT_ASK_FIELD_LABELS", {
|
|
108
101
|
enumerable: true,
|
|
109
|
-
get: function () { return
|
|
102
|
+
get: function () { return chunkKA3F6TIH_cjs.DEFAULT_ASK_FIELD_LABELS; }
|
|
110
103
|
});
|
|
111
104
|
Object.defineProperty(exports, "DEFAULT_OFFLINE_PILL_LABELS", {
|
|
112
105
|
enumerable: true,
|
|
113
|
-
get: function () { return
|
|
106
|
+
get: function () { return chunkKA3F6TIH_cjs.DEFAULT_OFFLINE_PILL_LABELS; }
|
|
114
107
|
});
|
|
115
108
|
Object.defineProperty(exports, "DEFAULT_REMOTE_CONTROL_PILL_LABELS", {
|
|
116
109
|
enumerable: true,
|
|
117
|
-
get: function () { return
|
|
110
|
+
get: function () { return chunkKA3F6TIH_cjs.DEFAULT_REMOTE_CONTROL_PILL_LABELS; }
|
|
118
111
|
});
|
|
119
112
|
Object.defineProperty(exports, "DEFAULT_TIP_CARD_LABELS", {
|
|
120
113
|
enumerable: true,
|
|
121
|
-
get: function () { return
|
|
114
|
+
get: function () { return chunkKA3F6TIH_cjs.DEFAULT_TIP_CARD_LABELS; }
|
|
122
115
|
});
|
|
123
116
|
Object.defineProperty(exports, "DockZone", {
|
|
124
117
|
enumerable: true,
|
|
125
|
-
get: function () { return
|
|
118
|
+
get: function () { return chunkKA3F6TIH_cjs.DockZone; }
|
|
126
119
|
});
|
|
127
120
|
Object.defineProperty(exports, "OfflinePill", {
|
|
128
121
|
enumerable: true,
|
|
129
|
-
get: function () { return
|
|
122
|
+
get: function () { return chunkKA3F6TIH_cjs.OfflinePill; }
|
|
130
123
|
});
|
|
131
124
|
Object.defineProperty(exports, "RemoteControlPill", {
|
|
132
125
|
enumerable: true,
|
|
133
|
-
get: function () { return
|
|
126
|
+
get: function () { return chunkKA3F6TIH_cjs.RemoteControlPill; }
|
|
134
127
|
});
|
|
135
128
|
Object.defineProperty(exports, "ShellSidebar", {
|
|
136
129
|
enumerable: true,
|
|
137
|
-
get: function () { return
|
|
130
|
+
get: function () { return chunkKA3F6TIH_cjs.ShellSidebar; }
|
|
138
131
|
});
|
|
139
132
|
Object.defineProperty(exports, "SidebarRowAction", {
|
|
140
133
|
enumerable: true,
|
|
141
|
-
get: function () { return
|
|
134
|
+
get: function () { return chunkKA3F6TIH_cjs.SidebarRowAction; }
|
|
142
135
|
});
|
|
143
136
|
Object.defineProperty(exports, "StatusBadge", {
|
|
144
137
|
enumerable: true,
|
|
145
|
-
get: function () { return
|
|
138
|
+
get: function () { return chunkKA3F6TIH_cjs.StatusBadge; }
|
|
146
139
|
});
|
|
147
140
|
Object.defineProperty(exports, "StatusRow", {
|
|
148
141
|
enumerable: true,
|
|
149
|
-
get: function () { return
|
|
142
|
+
get: function () { return chunkKA3F6TIH_cjs.StatusRow; }
|
|
150
143
|
});
|
|
151
144
|
Object.defineProperty(exports, "TipCard", {
|
|
152
145
|
enumerable: true,
|
|
153
|
-
get: function () { return
|
|
146
|
+
get: function () { return chunkKA3F6TIH_cjs.TipCard; }
|
|
154
147
|
});
|
|
155
148
|
Object.defineProperty(exports, "resolveSidebarLayout", {
|
|
156
149
|
enumerable: true,
|
|
157
|
-
get: function () { return
|
|
150
|
+
get: function () { return chunkKA3F6TIH_cjs.resolveSidebarLayout; }
|
|
158
151
|
});
|
|
159
152
|
Object.defineProperty(exports, "useCloseOnEscape", {
|
|
160
153
|
enumerable: true,
|
|
161
|
-
get: function () { return
|
|
154
|
+
get: function () { return chunkKA3F6TIH_cjs.useCloseOnEscape; }
|
|
162
155
|
});
|
|
163
156
|
Object.defineProperty(exports, "useSidebarController", {
|
|
164
157
|
enumerable: true,
|
|
165
|
-
get: function () { return
|
|
158
|
+
get: function () { return chunkKA3F6TIH_cjs.useSidebarController; }
|
|
166
159
|
});
|
|
167
160
|
Object.defineProperty(exports, "useSidebarSettle", {
|
|
168
161
|
enumerable: true,
|
|
169
|
-
get: function () { return
|
|
162
|
+
get: function () { return chunkKA3F6TIH_cjs.useSidebarSettle; }
|
|
170
163
|
});
|
|
171
164
|
Object.defineProperty(exports, "PanelModeSwitcher", {
|
|
172
165
|
enumerable: true,
|
|
173
|
-
get: function () { return
|
|
166
|
+
get: function () { return chunkK4763GD5_cjs.PanelModeSwitcher; }
|
|
174
167
|
});
|
|
175
168
|
Object.defineProperty(exports, "PanelPortal", {
|
|
176
169
|
enumerable: true,
|
|
177
|
-
get: function () { return
|
|
170
|
+
get: function () { return chunkK4763GD5_cjs.PanelPortal; }
|
|
178
171
|
});
|
|
179
172
|
Object.defineProperty(exports, "createPanelWindowManager", {
|
|
180
173
|
enumerable: true,
|
|
181
|
-
get: function () { return
|
|
174
|
+
get: function () { return chunk2RLA6QO2_cjs.createPanelWindowManager; }
|
|
182
175
|
});
|
|
183
176
|
Object.defineProperty(exports, "usePanelHostSupport", {
|
|
184
177
|
enumerable: true,
|
|
185
|
-
get: function () { return
|
|
178
|
+
get: function () { return chunk2RLA6QO2_cjs.usePanelHostSupport; }
|
|
186
179
|
});
|
|
187
180
|
Object.defineProperty(exports, "DEFAULT_MOBILE_BARS_LABELS", {
|
|
188
181
|
enumerable: true,
|
|
189
|
-
get: function () { return
|
|
182
|
+
get: function () { return chunkNY3YUCOW_cjs.DEFAULT_MOBILE_BARS_LABELS; }
|
|
190
183
|
});
|
|
191
184
|
Object.defineProperty(exports, "DEFAULT_WORKSPACE_KIND_LABELS", {
|
|
192
185
|
enumerable: true,
|
|
193
|
-
get: function () { return
|
|
186
|
+
get: function () { return chunkNY3YUCOW_cjs.DEFAULT_WORKSPACE_KIND_LABELS; }
|
|
194
187
|
});
|
|
195
188
|
Object.defineProperty(exports, "DEFAULT_WORKSPACE_SWITCHER_LABELS", {
|
|
196
189
|
enumerable: true,
|
|
197
|
-
get: function () { return
|
|
190
|
+
get: function () { return chunkNY3YUCOW_cjs.DEFAULT_WORKSPACE_SWITCHER_LABELS; }
|
|
198
191
|
});
|
|
199
192
|
Object.defineProperty(exports, "MobileAppBar", {
|
|
200
193
|
enumerable: true,
|
|
201
|
-
get: function () { return
|
|
194
|
+
get: function () { return chunkNY3YUCOW_cjs.MobileAppBar; }
|
|
202
195
|
});
|
|
203
196
|
Object.defineProperty(exports, "MobileTabBar", {
|
|
204
197
|
enumerable: true,
|
|
205
|
-
get: function () { return
|
|
198
|
+
get: function () { return chunkNY3YUCOW_cjs.MobileTabBar; }
|
|
206
199
|
});
|
|
207
200
|
Object.defineProperty(exports, "WorkspaceIdentity", {
|
|
208
201
|
enumerable: true,
|
|
209
|
-
get: function () { return
|
|
202
|
+
get: function () { return chunkNY3YUCOW_cjs.WorkspaceIdentity; }
|
|
210
203
|
});
|
|
211
204
|
Object.defineProperty(exports, "WorkspaceSwitcher", {
|
|
212
205
|
enumerable: true,
|
|
213
|
-
get: function () { return
|
|
206
|
+
get: function () { return chunkNY3YUCOW_cjs.WorkspaceSwitcher; }
|
|
214
207
|
});
|
|
215
208
|
Object.defineProperty(exports, "hasUnsavedInput", {
|
|
216
209
|
enumerable: true,
|
|
217
|
-
get: function () { return
|
|
210
|
+
get: function () { return chunkNY3YUCOW_cjs.hasUnsavedInput; }
|
|
218
211
|
});
|
|
219
212
|
Object.defineProperty(exports, "installReloadPolicy", {
|
|
220
213
|
enumerable: true,
|
|
221
|
-
get: function () { return
|
|
214
|
+
get: function () { return chunkNY3YUCOW_cjs.installReloadPolicy; }
|
|
222
215
|
});
|
|
223
216
|
Object.defineProperty(exports, "markBuildStale", {
|
|
224
217
|
enumerable: true,
|
|
225
|
-
get: function () { return
|
|
218
|
+
get: function () { return chunkNY3YUCOW_cjs.markBuildStale; }
|
|
226
219
|
});
|
|
227
220
|
Object.defineProperty(exports, "prefetchChunk", {
|
|
228
221
|
enumerable: true,
|
|
229
|
-
get: function () { return
|
|
222
|
+
get: function () { return chunkNY3YUCOW_cjs.prefetchChunk; }
|
|
230
223
|
});
|
|
231
224
|
Object.defineProperty(exports, "requestReload", {
|
|
232
225
|
enumerable: true,
|
|
233
|
-
get: function () { return
|
|
226
|
+
get: function () { return chunkNY3YUCOW_cjs.requestReload; }
|
|
234
227
|
});
|
|
235
228
|
Object.defineProperty(exports, "workspaceKindColor", {
|
|
236
229
|
enumerable: true,
|
|
237
|
-
get: function () { return
|
|
230
|
+
get: function () { return chunkNY3YUCOW_cjs.workspaceKindColor; }
|
|
238
231
|
});
|
|
239
232
|
Object.defineProperty(exports, "workspaceKindMeta", {
|
|
240
233
|
enumerable: true,
|
|
241
|
-
get: function () { return
|
|
234
|
+
get: function () { return chunkNY3YUCOW_cjs.workspaceKindMeta; }
|
|
242
235
|
});
|
|
243
236
|
Object.defineProperty(exports, "DEFAULT_SIDEBAR_LABELS", {
|
|
244
237
|
enumerable: true,
|
|
245
|
-
get: function () { return
|
|
238
|
+
get: function () { return chunk325GVZE6_cjs.DEFAULT_SIDEBAR_LABELS; }
|
|
246
239
|
});
|
|
247
240
|
Object.defineProperty(exports, "SHELL_START_INSET_VAR", {
|
|
248
241
|
enumerable: true,
|
|
249
|
-
get: function () { return
|
|
242
|
+
get: function () { return chunk325GVZE6_cjs.SHELL_START_INSET_VAR; }
|
|
250
243
|
});
|
|
251
244
|
Object.defineProperty(exports, "Sidebar", {
|
|
252
245
|
enumerable: true,
|
|
253
|
-
get: function () { return
|
|
246
|
+
get: function () { return chunk325GVZE6_cjs.Sidebar; }
|
|
254
247
|
});
|
|
255
248
|
Object.defineProperty(exports, "SidebarBadgeRow", {
|
|
256
249
|
enumerable: true,
|
|
257
|
-
get: function () { return
|
|
250
|
+
get: function () { return chunk325GVZE6_cjs.SidebarBadgeRow; }
|
|
258
251
|
});
|
|
259
252
|
Object.defineProperty(exports, "SidebarRowHoverContext", {
|
|
260
253
|
enumerable: true,
|
|
261
|
-
get: function () { return
|
|
254
|
+
get: function () { return chunk325GVZE6_cjs.SidebarRowHoverContext; }
|
|
262
255
|
});
|
|
263
256
|
Object.defineProperty(exports, "useShellStartInset", {
|
|
264
257
|
enumerable: true,
|
|
265
|
-
get: function () { return
|
|
258
|
+
get: function () { return chunk325GVZE6_cjs.useShellStartInset; }
|
|
266
259
|
});
|
|
267
260
|
Object.defineProperty(exports, "useSidebarContext", {
|
|
268
261
|
enumerable: true,
|
|
269
|
-
get: function () { return
|
|
262
|
+
get: function () { return chunk325GVZE6_cjs.useSidebarContext; }
|
|
263
|
+
});
|
|
264
|
+
Object.defineProperty(exports, "DEFAULT_FILTER_FIELDS", {
|
|
265
|
+
enumerable: true,
|
|
266
|
+
get: function () { return chunk6UZC4XVV_cjs.DEFAULT_FILTER_FIELDS; }
|
|
267
|
+
});
|
|
268
|
+
Object.defineProperty(exports, "DEFAULT_FILTER_INPUT_LABELS", {
|
|
269
|
+
enumerable: true,
|
|
270
|
+
get: function () { return chunk6UZC4XVV_cjs.DEFAULT_FILTER_INPUT_LABELS; }
|
|
271
|
+
});
|
|
272
|
+
Object.defineProperty(exports, "FilterInput", {
|
|
273
|
+
enumerable: true,
|
|
274
|
+
get: function () { return chunk6UZC4XVV_cjs.FilterInput; }
|
|
275
|
+
});
|
|
276
|
+
Object.defineProperty(exports, "getInstallInstructions", {
|
|
277
|
+
enumerable: true,
|
|
278
|
+
get: function () { return chunkKKYNTWDU_cjs.getInstallInstructions; }
|
|
279
|
+
});
|
|
280
|
+
Object.defineProperty(exports, "isIosDevice", {
|
|
281
|
+
enumerable: true,
|
|
282
|
+
get: function () { return chunkKKYNTWDU_cjs.isIosDevice; }
|
|
283
|
+
});
|
|
284
|
+
Object.defineProperty(exports, "DEFAULT_TAB_HEADER_LABELS", {
|
|
285
|
+
enumerable: true,
|
|
286
|
+
get: function () { return chunkSJSGSHIT_cjs.DEFAULT_TAB_HEADER_LABELS; }
|
|
287
|
+
});
|
|
288
|
+
Object.defineProperty(exports, "TabHeader", {
|
|
289
|
+
enumerable: true,
|
|
290
|
+
get: function () { return chunkSJSGSHIT_cjs.TabHeader; }
|
|
291
|
+
});
|
|
292
|
+
Object.defineProperty(exports, "DEFAULT_DOCK_WIDTH", {
|
|
293
|
+
enumerable: true,
|
|
294
|
+
get: function () { return chunkCT3SLXB7_cjs.DEFAULT_DOCK_WIDTH; }
|
|
295
|
+
});
|
|
296
|
+
Object.defineProperty(exports, "Toaster", {
|
|
297
|
+
enumerable: true,
|
|
298
|
+
get: function () { return chunkCT3SLXB7_cjs.Toaster; }
|
|
270
299
|
});
|
|
271
300
|
Object.defineProperty(exports, "STATUS_ROW_BASE_CLASS", {
|
|
272
301
|
enumerable: true,
|
|
@@ -328,33 +357,5 @@ Object.defineProperty(exports, "useMediaQuery", {
|
|
|
328
357
|
enumerable: true,
|
|
329
358
|
get: function () { return chunkFX3K6LNZ_cjs.useMediaQuery; }
|
|
330
359
|
});
|
|
331
|
-
Object.defineProperty(exports, "DEFAULT_FILTER_FIELDS", {
|
|
332
|
-
enumerable: true,
|
|
333
|
-
get: function () { return chunk6UZC4XVV_cjs.DEFAULT_FILTER_FIELDS; }
|
|
334
|
-
});
|
|
335
|
-
Object.defineProperty(exports, "DEFAULT_FILTER_INPUT_LABELS", {
|
|
336
|
-
enumerable: true,
|
|
337
|
-
get: function () { return chunk6UZC4XVV_cjs.DEFAULT_FILTER_INPUT_LABELS; }
|
|
338
|
-
});
|
|
339
|
-
Object.defineProperty(exports, "FilterInput", {
|
|
340
|
-
enumerable: true,
|
|
341
|
-
get: function () { return chunk6UZC4XVV_cjs.FilterInput; }
|
|
342
|
-
});
|
|
343
|
-
Object.defineProperty(exports, "getInstallInstructions", {
|
|
344
|
-
enumerable: true,
|
|
345
|
-
get: function () { return chunkKKYNTWDU_cjs.getInstallInstructions; }
|
|
346
|
-
});
|
|
347
|
-
Object.defineProperty(exports, "isIosDevice", {
|
|
348
|
-
enumerable: true,
|
|
349
|
-
get: function () { return chunkKKYNTWDU_cjs.isIosDevice; }
|
|
350
|
-
});
|
|
351
|
-
Object.defineProperty(exports, "DEFAULT_TAB_HEADER_LABELS", {
|
|
352
|
-
enumerable: true,
|
|
353
|
-
get: function () { return chunkSJSGSHIT_cjs.DEFAULT_TAB_HEADER_LABELS; }
|
|
354
|
-
});
|
|
355
|
-
Object.defineProperty(exports, "TabHeader", {
|
|
356
|
-
enumerable: true,
|
|
357
|
-
get: function () { return chunkSJSGSHIT_cjs.TabHeader; }
|
|
358
|
-
});
|
|
359
360
|
//# sourceMappingURL=index.cjs.map
|
|
360
361
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/shell/panel-windows.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * Window Manager for Pop-out Panels\n *\n * Handles creating, managing, and communicating with popup windows\n */\n\ninterface PopupWindow {\n id: string\n window: Window\n panelId: string\n rootElement: HTMLElement | null\n onClose?: () => void\n}\n\n/** Window lifecycle port; hosts may share or replace the browser implementation. */\nexport interface PanelWindows {\n createPopupWindow(panelId: string, onClose?: () => void, title?: string): string | null\n getWindow(windowId: string): Window | null\n getRootElement(windowId: string): HTMLElement | null\n focusPanelWindow(panelId: string): boolean\n clearOnClose(windowId: string): void\n closeWindow(windowId: string): void\n closeAllWindows(): void\n}\n\nclass PanelWindowManager implements PanelWindows {\n constructor(private readonly defaultTitle = 'Panel') {}\n private windows = new Map<string, PopupWindow>()\n /** Counts the windows opened, for their browser names. */\n private opened = 0\n\n createPopupWindow(panelId: string, onClose?: () => void, title?: string): string | null {\n const windowId = `panel-window-${panelId}`\n\n // Check if window already exists\n if (this.windows.has(windowId)) {\n const existing = this.windows.get(windowId)\n if (existing && !existing.window.closed) {\n existing.window.focus()\n return windowId\n } else {\n // Clean up closed window\n this.windows.delete(windowId)\n }\n }\n\n // Position popup in the right half of the screen\n const currentWidth = window.outerWidth\n const currentHeight = window.outerHeight\n const currentLeft = window.screenX ?? window.screenLeft ?? 0\n const currentTop = window.screenY ?? window.screenTop ?? 0\n\n // Calculate popup position (right half)\n const halfWidth = Math.floor(currentWidth / 2)\n const popupWidth = halfWidth\n const popupHeight = currentHeight\n const left = currentLeft + halfWidth\n const top = currentTop\n\n const popup = window.open(\n '',\n // A browser window name of its own: one closed a moment ago (a panel remounted, as React's\n // StrictMode does) may still be closing, and reusing its name would hand back that window.\n `${windowId}-${++this.opened}`,\n `width=${popupWidth},height=${popupHeight},left=${left},top=${top},scrollbars=yes,resizable=yes,menubar=no,toolbar=no,location=no,status=no`\n )\n\n if (!popup) {\n console.error('Failed to create popup window - popup blocked?')\n return null\n }\n\n // Set up the popup window HTML with proper CSS links\n const mainDocument = document\n const stylesheets = Array.from(\n mainDocument.head.querySelectorAll('link[rel=\"stylesheet\"], style')\n )\n .map((el) => el.outerHTML)\n .join('\\n')\n\n popup.document.write(`\n <!DOCTYPE html>\n <html lang=\"en\">\n <head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title></title>\n <!-- about:blank has no base, so copied @font-face / asset URLs (e.g.\n /assets/font.woff2) would resolve against nothing and render as\n tofu squares. Anchor relative URLs to the app origin. -->\n <base href=\"${window.location.origin}/\">\n ${stylesheets}\n <style>\n body {\n margin: 0;\n padding: 0;\n font-family: system-ui, -apple-system, sans-serif;\n }\n #panel-root {\n width: 100%;\n height: 100vh;\n overflow: hidden;\n }\n * {\n box-sizing: border-box;\n }\n </style>\n </head>\n <body>\n <div id=\"panel-root\"></div>\n </body>\n </html>\n `)\n popup.document.close()\n // A host title is text, even when it contains HTML delimiters.\n popup.document.title = title || this.defaultTitle\n\n // Belt-and-suspenders: re-register the parent's already-loaded web fonts in\n // the popup's FontFaceSet, so glyphs render even if a copied @font-face\n // doesn't re-fetch. Best-effort \u2014 engines that reject a cross-document add\n // just fall back to the <base>-anchored @font-face rules above.\n try {\n mainDocument.fonts.forEach((font) => {\n try {\n popup.document.fonts.add(font)\n } catch {\n /* ignore per-font failures */\n }\n })\n } catch {\n /* FontFaceSet unavailable \u2014 ignore */\n }\n\n // Get root element after DOM is ready\n const rootElement = popup.document.getElementById('panel-root')\n\n // Store window reference\n const popupWindow: PopupWindow = {\n id: windowId,\n window: popup,\n panelId,\n rootElement,\n onClose,\n }\n this.windows.set(windowId, popupWindow)\n\n // Handle window close \u2014 read onClose from the map entry so clearOnClose() works\n const closeCheckInterval = setInterval(() => {\n if (popup.closed) {\n clearInterval(closeCheckInterval)\n const entry = this.windows.get(windowId)\n // The panel may have a newer window by now (closed and reopened): leave that one be.\n if (entry?.window !== popup) return\n this.windows.delete(windowId)\n entry.onClose?.()\n }\n }, 200)\n\n return windowId\n }\n\n getWindow(windowId: string): Window | null {\n const popup = this.windows.get(windowId)\n return popup && !popup.window.closed ? popup.window : null\n }\n\n getRootElement(windowId: string): HTMLElement | null {\n const popup = this.windows.get(windowId)\n return popup && !popup.window.closed ? popup.rootElement : null\n }\n\n /** Focus the popup window for a given panel ID. Returns true if focused. */\n focusPanelWindow(panelId: string): boolean {\n const windowId = `panel-window-panel-${panelId}`\n const popup = this.windows.get(windowId)\n if (popup && !popup.window.closed) {\n popup.window.focus()\n return true\n }\n return false\n }\n\n /** Remove the onClose callback so it won't fire when the window is closed programmatically. */\n clearOnClose(windowId: string): void {\n const popup = this.windows.get(windowId)\n if (popup) {\n popup.onClose = undefined\n }\n }\n\n closeWindow(windowId: string): void {\n const popup = this.windows.get(windowId)\n if (popup && !popup.window.closed) {\n popup.window.close()\n }\n this.windows.delete(windowId)\n }\n\n closeAllWindows(): void {\n for (const [, popup] of this.windows) {\n if (!popup.window.closed) {\n popup.window.close()\n }\n }\n this.windows.clear()\n }\n}\n\n/** A window registry shared by the host's panel controls and portal layer. */\nexport function createPanelWindowManager(options: { defaultTitle?: string } = {}) {\n return new PanelWindowManager(options.defaultTitle)\n}\n"],
|
|
5
|
-
"mappings": ";AAyBA,MAAM,mBAA2C;AAAA,EAC/C,YAA6B,eAAe,SAAS;AAAxB;AAAA,EAAyB;AAAA,EAAzB;AAAA,EACrB,UAAU,oBAAI,IAAyB;AAAA;AAAA,EAEvC,SAAS;AAAA,EAEjB,kBAAkB,SAAiB,SAAsB,OAA+B;AACtF,UAAM,WAAW,gBAAgB,OAAO;AAGxC,QAAI,KAAK,QAAQ,IAAI,QAAQ,GAAG;AAC9B,YAAM,WAAW,KAAK,QAAQ,IAAI,QAAQ;AAC1C,UAAI,YAAY,CAAC,SAAS,OAAO,QAAQ;
|
|
4
|
+
"sourcesContent": ["/**\n * Window Manager for Pop-out Panels\n *\n * Handles creating, managing, and communicating with popup windows\n */\n\ninterface PopupWindow {\n id: string\n window: Window\n panelId: string\n rootElement: HTMLElement | null\n onClose?: () => void\n}\n\n/** Window lifecycle port; hosts may share or replace the browser implementation. */\nexport interface PanelWindows {\n createPopupWindow(panelId: string, onClose?: () => void, title?: string): string | null\n getWindow(windowId: string): Window | null\n getRootElement(windowId: string): HTMLElement | null\n focusPanelWindow(panelId: string): boolean\n clearOnClose(windowId: string): void\n closeWindow(windowId: string): void\n closeAllWindows(): void\n}\n\nclass PanelWindowManager implements PanelWindows {\n constructor(private readonly defaultTitle = 'Panel') {}\n private windows = new Map<string, PopupWindow>()\n /** Counts the windows opened, for their browser names. */\n private opened = 0\n\n createPopupWindow(panelId: string, onClose?: () => void, title?: string): string | null {\n const windowId = `panel-window-${panelId}`\n\n // Check if window already exists\n if (this.windows.has(windowId)) {\n const existing = this.windows.get(windowId)\n if (existing && !existing.window.closed) {\n // Opened ahead in a click (so the browser lets it open); the panel adopts it.\n if (onClose) existing.onClose = onClose\n existing.window.focus()\n return windowId\n } else {\n // Clean up closed window\n this.windows.delete(windowId)\n }\n }\n\n // Position popup in the right half of the screen\n const currentWidth = window.outerWidth\n const currentHeight = window.outerHeight\n const currentLeft = window.screenX ?? window.screenLeft ?? 0\n const currentTop = window.screenY ?? window.screenTop ?? 0\n\n // Calculate popup position (right half)\n const halfWidth = Math.floor(currentWidth / 2)\n const popupWidth = halfWidth\n const popupHeight = currentHeight\n const left = currentLeft + halfWidth\n const top = currentTop\n\n const popup = window.open(\n '',\n // A browser window name of its own: one closed a moment ago (a panel remounted, as React's\n // StrictMode does) may still be closing, and reusing its name would hand back that window.\n `${windowId}-${++this.opened}`,\n `width=${popupWidth},height=${popupHeight},left=${left},top=${top},scrollbars=yes,resizable=yes,menubar=no,toolbar=no,location=no,status=no`\n )\n\n if (!popup) {\n console.error('Failed to create popup window - popup blocked?')\n return null\n }\n\n // Set up the popup window HTML with proper CSS links\n const mainDocument = document\n const stylesheets = Array.from(\n mainDocument.head.querySelectorAll('link[rel=\"stylesheet\"], style')\n )\n .map((el) => el.outerHTML)\n .join('\\n')\n\n popup.document.write(`\n <!DOCTYPE html>\n <html lang=\"en\">\n <head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title></title>\n <!-- about:blank has no base, so copied @font-face / asset URLs (e.g.\n /assets/font.woff2) would resolve against nothing and render as\n tofu squares. Anchor relative URLs to the app origin. -->\n <base href=\"${window.location.origin}/\">\n ${stylesheets}\n <style>\n body {\n margin: 0;\n padding: 0;\n font-family: system-ui, -apple-system, sans-serif;\n }\n #panel-root {\n width: 100%;\n height: 100vh;\n overflow: hidden;\n }\n * {\n box-sizing: border-box;\n }\n </style>\n </head>\n <body>\n <div id=\"panel-root\"></div>\n </body>\n </html>\n `)\n popup.document.close()\n // A host title is text, even when it contains HTML delimiters.\n popup.document.title = title || this.defaultTitle\n\n // Belt-and-suspenders: re-register the parent's already-loaded web fonts in\n // the popup's FontFaceSet, so glyphs render even if a copied @font-face\n // doesn't re-fetch. Best-effort \u2014 engines that reject a cross-document add\n // just fall back to the <base>-anchored @font-face rules above.\n try {\n mainDocument.fonts.forEach((font) => {\n try {\n popup.document.fonts.add(font)\n } catch {\n /* ignore per-font failures */\n }\n })\n } catch {\n /* FontFaceSet unavailable \u2014 ignore */\n }\n\n // Get root element after DOM is ready\n const rootElement = popup.document.getElementById('panel-root')\n\n // Store window reference\n const popupWindow: PopupWindow = {\n id: windowId,\n window: popup,\n panelId,\n rootElement,\n onClose,\n }\n this.windows.set(windowId, popupWindow)\n\n // Handle window close \u2014 read onClose from the map entry so clearOnClose() works\n const closeCheckInterval = setInterval(() => {\n if (popup.closed) {\n clearInterval(closeCheckInterval)\n const entry = this.windows.get(windowId)\n // The panel may have a newer window by now (closed and reopened): leave that one be.\n if (entry?.window !== popup) return\n this.windows.delete(windowId)\n entry.onClose?.()\n }\n }, 200)\n\n return windowId\n }\n\n getWindow(windowId: string): Window | null {\n const popup = this.windows.get(windowId)\n return popup && !popup.window.closed ? popup.window : null\n }\n\n getRootElement(windowId: string): HTMLElement | null {\n const popup = this.windows.get(windowId)\n return popup && !popup.window.closed ? popup.rootElement : null\n }\n\n /** Focus the popup window for a given panel ID. Returns true if focused. */\n focusPanelWindow(panelId: string): boolean {\n const windowId = `panel-window-panel-${panelId}`\n const popup = this.windows.get(windowId)\n if (popup && !popup.window.closed) {\n popup.window.focus()\n return true\n }\n return false\n }\n\n /** Remove the onClose callback so it won't fire when the window is closed programmatically. */\n clearOnClose(windowId: string): void {\n const popup = this.windows.get(windowId)\n if (popup) {\n popup.onClose = undefined\n }\n }\n\n closeWindow(windowId: string): void {\n const popup = this.windows.get(windowId)\n if (popup && !popup.window.closed) {\n popup.window.close()\n }\n this.windows.delete(windowId)\n }\n\n closeAllWindows(): void {\n for (const [, popup] of this.windows) {\n if (!popup.window.closed) {\n popup.window.close()\n }\n }\n this.windows.clear()\n }\n}\n\n/** A window registry shared by the host's panel controls and portal layer. */\nexport function createPanelWindowManager(options: { defaultTitle?: string } = {}) {\n return new PanelWindowManager(options.defaultTitle)\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/studio/index.cjs
CHANGED
|
@@ -1,34 +1,24 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
'use strict';
|
|
3
3
|
|
|
4
|
-
var
|
|
5
|
-
require('../chunk-
|
|
6
|
-
require('../chunk-
|
|
7
|
-
require('../chunk-
|
|
8
|
-
require('../chunk-
|
|
4
|
+
var chunk7L4X6QN2_cjs = require('../chunk-7L4X6QN2.cjs');
|
|
5
|
+
require('../chunk-XF355M7O.cjs');
|
|
6
|
+
require('../chunk-2F57IO7S.cjs');
|
|
7
|
+
require('../chunk-UFT22LAB.cjs');
|
|
8
|
+
require('../chunk-WAV762GP.cjs');
|
|
9
9
|
var chunk4EK7TAP7_cjs = require('../chunk-4EK7TAP7.cjs');
|
|
10
10
|
var chunkUZHWXKS6_cjs = require('../chunk-UZHWXKS6.cjs');
|
|
11
11
|
var chunkPBPO54KZ_cjs = require('../chunk-PBPO54KZ.cjs');
|
|
12
12
|
var chunkVRK3IQAP_cjs = require('../chunk-VRK3IQAP.cjs');
|
|
13
13
|
var chunkANWJG4A4_cjs = require('../chunk-ANWJG4A4.cjs');
|
|
14
14
|
var chunkICZSVCDT_cjs = require('../chunk-ICZSVCDT.cjs');
|
|
15
|
-
var
|
|
15
|
+
var chunkSGYSDABK_cjs = require('../chunk-SGYSDABK.cjs');
|
|
16
16
|
var chunkNEGFHF3V_cjs = require('../chunk-NEGFHF3V.cjs');
|
|
17
17
|
require('../chunk-ADMNU2CR.cjs');
|
|
18
18
|
var chunkPCB2BPN3_cjs = require('../chunk-PCB2BPN3.cjs');
|
|
19
|
-
require('../chunk-KNGZZC4O.cjs');
|
|
20
|
-
require('../chunk-IDCD5TEZ.cjs');
|
|
21
|
-
require('../chunk-M2FOXGJU.cjs');
|
|
22
|
-
require('../chunk-5F4DCIHS.cjs');
|
|
23
19
|
var chunk34HQO4ZQ_cjs = require('../chunk-34HQO4ZQ.cjs');
|
|
24
|
-
require('../chunk-
|
|
20
|
+
require('../chunk-325GVZE6.cjs');
|
|
25
21
|
require('../chunk-NWNVWO6L.cjs');
|
|
26
|
-
require('../chunk-AFQTQC7A.cjs');
|
|
27
|
-
require('../chunk-XJEXFEWG.cjs');
|
|
28
|
-
require('../chunk-YZSQ7F5K.cjs');
|
|
29
|
-
require('../chunk-MCXS6X37.cjs');
|
|
30
|
-
require('../chunk-KQF7POTG.cjs');
|
|
31
|
-
require('../chunk-75BNMCUX.cjs');
|
|
32
22
|
var chunkULPTSXXO_cjs = require('../chunk-ULPTSXXO.cjs');
|
|
33
23
|
var chunkZU2B2RZK_cjs = require('../chunk-ZU2B2RZK.cjs');
|
|
34
24
|
var chunkNSD37OF5_cjs = require('../chunk-NSD37OF5.cjs');
|
|
@@ -36,23 +26,33 @@ require('../chunk-OEJQFPWO.cjs');
|
|
|
36
26
|
require('../chunk-I4IS6ST6.cjs');
|
|
37
27
|
require('../chunk-7JLJH5CW.cjs');
|
|
38
28
|
require('../chunk-EVZH6Z5O.cjs');
|
|
39
|
-
require('../chunk-IN6ILI5A.cjs');
|
|
40
|
-
require('../chunk-HSLPFBK2.cjs');
|
|
41
29
|
require('../chunk-II2OEXHW.cjs');
|
|
42
|
-
require('../chunk-
|
|
30
|
+
require('../chunk-WXUU3COI.cjs');
|
|
43
31
|
require('../chunk-AHDJXIUB.cjs');
|
|
44
32
|
require('../chunk-YVCOQHCE.cjs');
|
|
45
|
-
require('../chunk-QGVOT7E4.cjs');
|
|
46
|
-
require('../chunk-QRAQZTJE.cjs');
|
|
47
|
-
require('../chunk-UDSHVNU3.cjs');
|
|
48
33
|
require('../chunk-JV5TVUOU.cjs');
|
|
49
|
-
var chunkIPSHAMO2_cjs = require('../chunk-IPSHAMO2.cjs');
|
|
50
34
|
require('../chunk-VZOOGA47.cjs');
|
|
51
35
|
require('../chunk-HQDR43JC.cjs');
|
|
52
36
|
var chunkJR2YSBD5_cjs = require('../chunk-JR2YSBD5.cjs');
|
|
53
37
|
require('../chunk-3YZKDCWY.cjs');
|
|
54
|
-
require('../chunk-PPCATBOY.cjs');
|
|
55
38
|
var chunkZW6FPIFC_cjs = require('../chunk-ZW6FPIFC.cjs');
|
|
39
|
+
require('../chunk-KNGZZC4O.cjs');
|
|
40
|
+
require('../chunk-IDCD5TEZ.cjs');
|
|
41
|
+
require('../chunk-M2FOXGJU.cjs');
|
|
42
|
+
require('../chunk-5F4DCIHS.cjs');
|
|
43
|
+
require('../chunk-AFQTQC7A.cjs');
|
|
44
|
+
require('../chunk-XJEXFEWG.cjs');
|
|
45
|
+
require('../chunk-YZSQ7F5K.cjs');
|
|
46
|
+
require('../chunk-MCXS6X37.cjs');
|
|
47
|
+
require('../chunk-KQF7POTG.cjs');
|
|
48
|
+
require('../chunk-75BNMCUX.cjs');
|
|
49
|
+
require('../chunk-IN6ILI5A.cjs');
|
|
50
|
+
require('../chunk-HSLPFBK2.cjs');
|
|
51
|
+
require('../chunk-QGVOT7E4.cjs');
|
|
52
|
+
require('../chunk-QRAQZTJE.cjs');
|
|
53
|
+
require('../chunk-UDSHVNU3.cjs');
|
|
54
|
+
var chunkIPSHAMO2_cjs = require('../chunk-IPSHAMO2.cjs');
|
|
55
|
+
require('../chunk-PPCATBOY.cjs');
|
|
56
56
|
var chunkTKHCIHE2_cjs = require('../chunk-TKHCIHE2.cjs');
|
|
57
57
|
require('../chunk-JDFBEGQO.cjs');
|
|
58
58
|
require('../chunk-ULWRNGGE.cjs');
|
|
@@ -619,7 +619,7 @@ function StudioEditor({
|
|
|
619
619
|
className: "w-80 shrink-0 border-l border-border",
|
|
620
620
|
"data-testid": `${testIdPrefix}-theme-drawer`,
|
|
621
621
|
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
622
|
-
|
|
622
|
+
chunkSGYSDABK_cjs.ThemeEditor,
|
|
623
623
|
{
|
|
624
624
|
bundle: themeBundle,
|
|
625
625
|
variant: "drawer",
|
|
@@ -992,7 +992,7 @@ function latestImageDocId(artifacts) {
|
|
|
992
992
|
return null;
|
|
993
993
|
}
|
|
994
994
|
function useImageGen() {
|
|
995
|
-
const task =
|
|
995
|
+
const task = chunk7L4X6QN2_cjs.useConnectedAiTask();
|
|
996
996
|
const { run } = task;
|
|
997
997
|
const generate = react.useCallback(
|
|
998
998
|
async (prompt, referenceDocIds = []) => {
|
|
@@ -3391,7 +3391,7 @@ function VerticalBuilder({
|
|
|
3391
3391
|
] })
|
|
3392
3392
|
] }),
|
|
3393
3393
|
/* @__PURE__ */ jsxRuntime.jsx(ui.TabsContent, { value: "theme", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
3394
|
-
|
|
3394
|
+
chunkSGYSDABK_cjs.ThemeEditor,
|
|
3395
3395
|
{
|
|
3396
3396
|
bundle: themeBundle,
|
|
3397
3397
|
variant: "panel",
|