dockview-react 1.16.1 → 1.17.0

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.
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * dockview-react
3
- * @version 1.16.1
3
+ * @version 1.17.0
4
4
  * @link https://github.com/mathuo/dockview
5
5
  * @license MIT
6
6
  */
@@ -33,7 +33,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
33
33
  }
34
34
  }
35
35
 
36
- var css_248z = ".dockview-svg {\n display: inline-block;\n fill: currentcolor;\n line-height: 1;\n stroke: currentcolor;\n stroke-width: 0;\n}\n.dockview-theme-dark {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #1e1e1e;\n --dv-tabs-and-actions-container-background-color: #252526;\n --dv-activegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-activegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-inactivegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-tab-divider-color: #1e1e1e;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: #969696;\n --dv-inactivegroup-visiblepanel-tab-color: #8f8f8f;\n --dv-inactivegroup-hiddenpanel-tab-color: #626262;\n --dv-separator-border: rgb(68, 68, 68);\n --dv-paneview-header-border-color: rgba(204, 204, 204, 0.2);\n}\n\n.dockview-theme-light {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: white;\n --dv-tabs-and-actions-container-background-color: #f3f3f3;\n --dv-activegroup-visiblepanel-tab-background-color: white;\n --dv-activegroup-hiddenpanel-tab-background-color: #ececec;\n --dv-inactivegroup-visiblepanel-tab-background-color: white;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #ececec;\n --dv-tab-divider-color: white;\n --dv-activegroup-visiblepanel-tab-color: rgb(51, 51, 51);\n --dv-activegroup-hiddenpanel-tab-color: rgba(51, 51, 51, 0.7);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(51, 51, 51, 0.7);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(51, 51, 51, 0.35);\n --dv-separator-border: rgba(128, 128, 128, 0.35);\n --dv-paneview-header-border-color: rgb(51, 51, 51);\n}\n\n.dockview-theme-vs {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #1e1e1e;\n --dv-tabs-and-actions-container-background-color: #252526;\n --dv-activegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-activegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-inactivegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-tab-divider-color: #1e1e1e;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: #969696;\n --dv-inactivegroup-visiblepanel-tab-color: #8f8f8f;\n --dv-inactivegroup-hiddenpanel-tab-color: #626262;\n --dv-separator-border: rgb(68, 68, 68);\n --dv-paneview-header-border-color: rgba(204, 204, 204, 0.2);\n --dv-tabs-and-actions-container-background-color: #2d2d30;\n --dv-tabs-and-actions-container-height: 20px;\n --dv-tabs-and-actions-container-font-size: 11px;\n --dv-activegroup-visiblepanel-tab-background-color: #007acc;\n --dv-inactivegroup-visiblepanel-tab-background-color: #3f3f46;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: white;\n --dv-inactivegroup-visiblepanel-tab-color: white;\n --dv-inactivegroup-hiddenpanel-tab-color: white;\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container {\n box-sizing: content-box;\n border-bottom: 2px solid var(--dv-activegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container .tab.active-tab {\n border-top: 2px solid var(--dv-activegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container .tab.inactive-tab {\n border-top: 2px solid var(--dv-activegroup-hiddenpanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container {\n box-sizing: content-box;\n border-bottom: 2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container .tab.active-tab {\n border-top: 2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container .tab.inactive-tab {\n border-top: 2px solid var(--dv-inactivegroup-hiddenpanel-tab-background-color);\n}\n\n.dockview-theme-abyss {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #000c18;\n --dv-tabs-and-actions-container-background-color: #1c1c2a;\n --dv-activegroup-visiblepanel-tab-background-color: #000c18;\n --dv-activegroup-hiddenpanel-tab-background-color: #10192c;\n --dv-inactivegroup-visiblepanel-tab-background-color: #000c18;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #10192c;\n --dv-tab-divider-color: #2b2b4a;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: rgba(255, 255, 255, 0.5);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(255, 255, 255, 0.5);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(255, 255, 255, 0.25);\n --dv-separator-border: #2b2b4a;\n --dv-paneview-header-border-color: #2b2b4a;\n --dv-paneview-active-outline-color: #596f99;\n}\n\n.dockview-theme-dracula {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #282a36;\n --dv-tabs-and-actions-container-background-color: #191a21;\n --dv-activegroup-visiblepanel-tab-background-color: #282a36;\n --dv-activegroup-hiddenpanel-tab-background-color: #21222c;\n --dv-inactivegroup-visiblepanel-tab-background-color: #282a36;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #21222c;\n --dv-tab-divider-color: #191a21;\n --dv-activegroup-visiblepanel-tab-color: rgb(248, 248, 242);\n --dv-activegroup-hiddenpanel-tab-color: rgb(98, 114, 164);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(248, 248, 242, 0.5);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(98, 114, 164, 0.5);\n --dv-separator-border: #bd93f9;\n --dv-paneview-header-border-color: #bd93f9;\n --dv-paneview-active-outline-color: #6272a4;\n}\n.dockview-theme-dracula .groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n position: relative;\n}\n.dockview-theme-dracula .groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab::after {\n position: absolute;\n left: 0px;\n top: 0px;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: #94527e;\n z-index: 999;\n}\n.dockview-theme-dracula .groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n position: relative;\n}\n.dockview-theme-dracula .groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab::after {\n position: absolute;\n left: 0px;\n bottom: 0px;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: #5e3d5a;\n z-index: 999;\n}\n\n.dockview-theme-replit {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #ebeced;\n --dv-tabs-and-actions-container-background-color: #fcfcfc;\n --dv-activegroup-visiblepanel-tab-background-color: #f0f1f2;\n --dv-activegroup-hiddenpanel-tab-background-color: ##fcfcfc;\n --dv-inactivegroup-visiblepanel-tab-background-color: #f0f1f2;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #fcfcfc;\n --dv-tab-divider-color: transparent;\n --dv-activegroup-visiblepanel-tab-color: rgb(51, 51, 51);\n --dv-activegroup-hiddenpanel-tab-color: rgb(51, 51, 51);\n --dv-inactivegroup-visiblepanel-tab-color: rgb(51, 51, 51);\n --dv-inactivegroup-hiddenpanel-tab-color: rgb(51, 51, 51);\n --dv-separator-border: transparent;\n --dv-paneview-header-border-color: rgb(51, 51, 51);\n --dv-background-color: #ebeced;\n --dv-separator-handle-background-color: #cfd1d3;\n --dv-separator-handle-hover-background-color: #babbbb;\n}\n.dockview-theme-replit .dv-resize-container:has(> .groupview) {\n border-radius: 8px;\n}\n.dockview-theme-replit .groupview {\n overflow: hidden;\n border-radius: 10px;\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container {\n border-bottom: 1px solid rgba(128, 128, 128, 0.35);\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container .tab {\n margin: 4px;\n border-radius: 8px;\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container .tab .dockview-svg {\n height: 8px;\n width: 8px;\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container .tab:hover {\n background-color: #e4e5e6 !important;\n}\n.dockview-theme-replit .groupview .content-container {\n background-color: #fcfcfc;\n}\n.dockview-theme-replit .groupview.active-group {\n border: 1px solid rgba(128, 128, 128, 0.35);\n}\n.dockview-theme-replit .groupview.inactive-group {\n border: 1px solid transparent;\n}\n.dockview-theme-replit .vertical > .sash-container > .sash:not(.disabled)::after {\n content: \"\";\n height: 4px;\n width: 40px;\n border-radius: 2px;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: var(--dv-separator-handle-background-color);\n position: absolute;\n}\n.dockview-theme-replit .vertical > .sash-container > .sash:not(.disabled):hover::after {\n background-color: var(--dv-separator-handle-hover-background-color);\n}\n.dockview-theme-replit .horizontal > .sash-container > .sash:not(.disabled)::after {\n content: \"\";\n height: 40px;\n width: 4px;\n border-radius: 2px;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: var(--dv-separator-handle-background-color);\n position: absolute;\n}\n.dockview-theme-replit .horizontal > .sash-container > .sash:not(.disabled):hover::after {\n background-color: var(--dv-separator-handle-hover-background-color);\n}\n.drop-target {\n position: relative;\n}\n.drop-target > .drop-target-dropzone {\n position: absolute;\n left: 0px;\n top: 0px;\n height: 100%;\n width: 100%;\n z-index: 1000;\n pointer-events: none;\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection {\n position: relative;\n box-sizing: border-box;\n height: 100%;\n width: 100%;\n background-color: var(--dv-drag-over-background-color);\n transition: top 70ms ease-out, left 70ms ease-out, width 70ms ease-out, height 70ms ease-out, opacity 0.15s ease-out;\n will-change: transform;\n pointer-events: none;\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-top.dv-drop-target-small-vertical {\n border-top: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-bottom.dv-drop-target-small-vertical {\n border-bottom: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-left.dv-drop-target-small-horizontal {\n border-left: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-right.dv-drop-target-small-horizontal {\n border-right: 1px solid var(--dv-drag-over-border-color);\n}\n.dv-dockview {\n position: relative;\n background-color: var(--dv-group-view-background-color);\n}\n.dv-dockview .dv-watermark-container {\n position: absolute;\n top: 0px;\n left: 0px;\n height: 100%;\n width: 100%;\n z-index: 1;\n}\n.dv-dockview .dv-overlay-render-container {\n position: relative;\n}\n\n.groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n background-color: var(--dv-activegroup-visiblepanel-tab-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.inactive-tab {\n background-color: var(--dv-activegroup-hiddenpanel-tab-background-color);\n color: var(--dv-activegroup-hiddenpanel-tab-color);\n}\n.groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n background-color: var(--dv-inactivegroup-visiblepanel-tab-background-color);\n color: var(--dv-inactivegroup-visiblepanel-tab-color);\n}\n.groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.inactive-tab {\n background-color: var(--dv-inactivegroup-hiddenpanel-tab-background-color);\n color: var(--dv-inactivegroup-hiddenpanel-tab-color);\n}\n\n/**\n * when a tab is dragged we lose the above stylings because they are conditional on parent elements\n * therefore we also set some stylings for the dragging event\n **/\n.tab.dv-tab-dragging {\n background-color: var(--dv-activegroup-visiblepanel-tab-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.groupview {\n display: flex;\n flex-direction: column;\n height: 100%;\n background-color: var(--dv-group-view-background-color);\n overflow: hidden;\n}\n.groupview:focus {\n outline: none;\n}\n.groupview.empty > .tabs-and-actions-container {\n display: none;\n}\n.groupview > .content-container {\n flex-grow: 1;\n min-height: 0;\n outline: none;\n}\n.dv-root-wrapper {\n height: 100%;\n width: 100%;\n}\n.grid-view,\n.branch-node {\n height: 100%;\n width: 100%;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-top {\n background-color: red;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-bottom {\n background-color: green;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-left {\n background-color: yellow;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-right {\n background-color: blue;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-topleft,\n.dv-debug .dv-resize-container .dv-resize-handle-topright,\n.dv-debug .dv-resize-container .dv-resize-handle-bottomleft,\n.dv-debug .dv-resize-container .dv-resize-handle-bottomright {\n background-color: cyan;\n}\n\n.dv-resize-container {\n position: absolute;\n z-index: 997;\n border: 1px solid var(--dv-tab-divider-color);\n box-shadow: var(--dv-floating-box-shadow);\n}\n.dv-resize-container.dv-resize-container-dragging {\n opacity: 0.5;\n}\n.dv-resize-container .dv-resize-handle-top {\n height: 4px;\n width: calc(100% - 8px);\n left: 4px;\n top: -2px;\n z-index: 999;\n position: absolute;\n cursor: ns-resize;\n}\n.dv-resize-container .dv-resize-handle-bottom {\n height: 4px;\n width: calc(100% - 8px);\n left: 4px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: ns-resize;\n}\n.dv-resize-container .dv-resize-handle-left {\n height: calc(100% - 8px);\n width: 4px;\n left: -2px;\n top: 4px;\n z-index: 999;\n position: absolute;\n cursor: ew-resize;\n}\n.dv-resize-container .dv-resize-handle-right {\n height: calc(100% - 8px);\n width: 4px;\n right: -2px;\n top: 4px;\n z-index: 999;\n position: absolute;\n cursor: ew-resize;\n}\n.dv-resize-container .dv-resize-handle-topleft {\n height: 4px;\n width: 4px;\n top: -2px;\n left: -2px;\n z-index: 999;\n position: absolute;\n cursor: nw-resize;\n}\n.dv-resize-container .dv-resize-handle-topright {\n height: 4px;\n width: 4px;\n right: -2px;\n top: -2px;\n z-index: 999;\n position: absolute;\n cursor: ne-resize;\n}\n.dv-resize-container .dv-resize-handle-bottomleft {\n height: 4px;\n width: 4px;\n left: -2px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: sw-resize;\n}\n.dv-resize-container .dv-resize-handle-bottomright {\n height: 4px;\n width: 4px;\n right: -2px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: se-resize;\n}\n.dv-render-overlay {\n position: absolute;\n z-index: 1;\n height: 100%;\n}\n.dv-render-overlay.dv-render-overlay-float {\n z-index: 998;\n}\n.dv-debug .dv-render-overlay {\n outline: 1px solid red;\n outline-offset: -1;\n}\n.pane-container {\n height: 100%;\n width: 100%;\n}\n.pane-container.animated .view {\n transition-duration: 0.15s;\n transition-timing-function: ease-out;\n}\n.pane-container .view {\n overflow: hidden;\n display: flex;\n flex-direction: column;\n padding: 0px !important;\n}\n.pane-container .view:not(:first-child)::before {\n background-color: transparent !important;\n}\n.pane-container .view:not(:first-child) .pane > .pane-header {\n border-top: 1px solid var(--dv-paneview-header-border-color);\n}\n.pane-container .view .default-header {\n background-color: var(--dv-group-view-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n display: flex;\n padding: 0px 8px;\n cursor: pointer;\n}\n.pane-container .view .default-header .dockview-pane-header-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.pane-container .view .default-header > span {\n padding-left: 8px;\n flex-grow: 1;\n}\n.pane-container:first-of-type > .pane > .pane-header {\n border-top: none !important;\n}\n.pane-container .pane {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n height: 100%;\n}\n.pane-container .pane .pane-header {\n box-sizing: border-box;\n user-select: none;\n position: relative;\n outline: none;\n}\n.pane-container .pane .pane-header.pane-draggable {\n cursor: pointer;\n}\n.pane-container .pane .pane-header:focus:before, .pane-container .pane .pane-header:focus-within:before {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 5;\n content: \"\";\n pointer-events: none;\n outline: 1px solid;\n outline-width: -1px;\n outline-style: solid;\n outline-offset: -1px;\n outline-color: var(--dv-paneview-active-outline-color);\n}\n.pane-container .pane .pane-body {\n overflow-y: auto;\n overflow-x: hidden;\n flex-grow: 1;\n position: relative;\n outline: none;\n}\n.pane-container .pane .pane-body:focus:before, .pane-container .pane .pane-body:focus-within:before {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 5;\n content: \"\";\n pointer-events: none;\n outline: 1px solid;\n outline-width: -1px;\n outline-style: solid;\n outline-offset: -1px;\n outline-color: var(--dv-paneview-active-outline-color);\n}\n.dv-debug .split-view-container .sash-container .sash.enabled {\n background-color: black;\n}\n.dv-debug .split-view-container .sash-container .sash.disabled {\n background-color: orange;\n}\n.dv-debug .split-view-container .sash-container .sash.maximum {\n background-color: green;\n}\n.dv-debug .split-view-container .sash-container .sash.minimum {\n background-color: red;\n}\n\n.split-view-container {\n position: relative;\n overflow: hidden;\n height: 100%;\n width: 100%;\n}\n.split-view-container.dv-splitview-disabled > .sash-container > .sash {\n pointer-events: none;\n}\n.split-view-container.animation .view,\n.split-view-container.animation .sash {\n transition-duration: 0.15s;\n transition-timing-function: ease-out;\n}\n.split-view-container.horizontal {\n height: 100%;\n}\n.split-view-container.horizontal > .sash-container > .sash {\n height: 100%;\n width: 4px;\n}\n.split-view-container.horizontal > .sash-container > .sash.enabled {\n cursor: ew-resize;\n}\n.split-view-container.horizontal > .sash-container > .sash.disabled {\n cursor: default;\n}\n.split-view-container.horizontal > .sash-container > .sash.maximum {\n cursor: w-resize;\n}\n.split-view-container.horizontal > .sash-container > .sash.minimum {\n cursor: e-resize;\n}\n.split-view-container.horizontal > .view-container > .view:not(:first-child)::before {\n height: 100%;\n width: 1px;\n}\n.split-view-container.vertical {\n width: 100%;\n}\n.split-view-container.vertical > .sash-container > .sash {\n width: 100%;\n height: 4px;\n}\n.split-view-container.vertical > .sash-container > .sash.enabled {\n cursor: ns-resize;\n}\n.split-view-container.vertical > .sash-container > .sash.disabled {\n cursor: default;\n}\n.split-view-container.vertical > .sash-container > .sash.maximum {\n cursor: n-resize;\n}\n.split-view-container.vertical > .sash-container > .sash.minimum {\n cursor: s-resize;\n}\n.split-view-container.vertical > .view-container > .view {\n width: 100%;\n}\n.split-view-container.vertical > .view-container > .view:not(:first-child)::before {\n height: 1px;\n width: 100%;\n}\n.split-view-container .sash-container {\n height: 100%;\n width: 100%;\n position: absolute;\n}\n.split-view-container .sash-container .sash {\n position: absolute;\n z-index: 99;\n outline: none;\n user-select: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n touch-action: none;\n}\n.split-view-container .sash-container .sash:not(.disabled):active {\n transition: background-color 0.1s ease-in-out;\n background-color: var(--dv-active-sash-color, transparent);\n}\n.split-view-container .sash-container .sash:not(.disabled):hover {\n background-color: var(--dv-active-sash-color, transparent);\n transition: background-color 0.1s ease-in-out;\n transition-delay: 0.5s;\n}\n.split-view-container .view-container {\n position: relative;\n height: 100%;\n width: 100%;\n background-color: var(--dv-background-color);\n}\n.split-view-container .view-container .view {\n height: 100%;\n box-sizing: border-box;\n overflow: auto;\n position: absolute;\n}\n.split-view-container.separator-border .view:not(:first-child)::before {\n content: \" \";\n position: absolute;\n top: 0;\n left: 0;\n z-index: 5;\n pointer-events: none;\n background-color: var(--dv-separator-border);\n}\n.dv-dragged {\n transform: translate3d(0px, 0px, 0px); /* forces tab to be drawn on a separate layer (see https://github.com/microsoft/vscode/issues/18733) */\n}\n\n.tab {\n flex-shrink: 0;\n}\n.tab:focus-within, .tab:focus {\n position: relative;\n}\n.tab:focus-within::after, .tab:focus::after {\n position: absolute;\n content: \"\";\n height: 100%;\n width: 100%;\n top: 0px;\n left: 0px;\n pointer-events: none;\n outline: 1px solid var(--dv-tab-divider-color) !important;\n outline-offset: -1px;\n z-index: 5;\n}\n.tab.dv-tab-dragging .dv-default-tab-action {\n background-color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.tab.active-tab .dv-default-tab .dv-default-tab-action {\n visibility: visible;\n}\n.tab.inactive-tab .dv-default-tab .dv-default-tab-action {\n visibility: hidden;\n}\n.tab.inactive-tab .dv-default-tab:hover .dv-default-tab-action {\n visibility: visible;\n}\n.tab .dv-default-tab {\n position: relative;\n height: 100%;\n display: flex;\n min-width: 80px;\n align-items: center;\n padding: 0px 8px;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.tab .dv-default-tab .dv-default-tab-content {\n padding: 0px 8px;\n flex-grow: 1;\n}\n.tab .dv-default-tab .dv-default-tab-action {\n padding: 4px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n}\n.tab .dv-default-tab .dv-default-tab-action:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-hover-background-color);\n}\n.tabs-and-actions-container {\n display: flex;\n background-color: var(--dv-tabs-and-actions-container-background-color);\n flex-shrink: 0;\n box-sizing: border-box;\n height: var(--dv-tabs-and-actions-container-height);\n font-size: var(--dv-tabs-and-actions-container-font-size);\n}\n.tabs-and-actions-container.hidden {\n display: none;\n}\n.tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .tabs-container {\n flex-grow: 1;\n}\n.tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .tabs-container .tab {\n flex-grow: 1;\n}\n.tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .void-container {\n flex-grow: 0;\n}\n.tabs-and-actions-container .void-container {\n display: flex;\n flex-grow: 1;\n cursor: grab;\n}\n.tabs-and-actions-container .tabs-container {\n display: flex;\n overflow-x: overlay;\n overflow-y: hidden;\n scrollbar-width: thin;\n /* Track */\n /* Handle */\n}\n.tabs-and-actions-container .tabs-container::-webkit-scrollbar {\n height: 3px;\n}\n.tabs-and-actions-container .tabs-container::-webkit-scrollbar-track {\n background: transparent;\n}\n.tabs-and-actions-container .tabs-container::-webkit-scrollbar-thumb {\n background: var(--dv-tabs-container-scrollbar-color);\n}\n.tabs-and-actions-container .tabs-container .tab {\n -webkit-user-drag: element;\n outline: none;\n min-width: 75px;\n cursor: pointer;\n position: relative;\n box-sizing: border-box;\n}\n.tabs-and-actions-container .tabs-container .tab:not(:first-child)::before {\n content: \" \";\n position: absolute;\n top: 0;\n left: 0;\n z-index: 5;\n pointer-events: none;\n background-color: var(--dv-tab-divider-color);\n width: 1px;\n height: 100%;\n}\n.watermark {\n display: flex;\n width: 100%;\n}\n.watermark.has-actions .watermark-title .actions-container {\n display: none;\n}\n.watermark .watermark-title {\n height: 35px;\n width: 100%;\n display: flex;\n}\n.watermark .watermark-content {\n flex-grow: 1;\n}\n.watermark .actions-container {\n display: flex;\n align-items: center;\n padding: 0px 8px;\n}\n.watermark .actions-container .close-action {\n padding: 4px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n cursor: pointer;\n color: var(--dv-activegroup-hiddenpanel-tab-color);\n}\n.watermark .actions-container .close-action:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-hover-background-color);\n}";
36
+ var css_248z = ".dockview-svg {\n display: inline-block;\n fill: currentcolor;\n line-height: 1;\n stroke: currentcolor;\n stroke-width: 0;\n}\n.dockview-theme-dark {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #1e1e1e;\n --dv-tabs-and-actions-container-background-color: #252526;\n --dv-activegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-activegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-inactivegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-tab-divider-color: #1e1e1e;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: #969696;\n --dv-inactivegroup-visiblepanel-tab-color: #8f8f8f;\n --dv-inactivegroup-hiddenpanel-tab-color: #626262;\n --dv-separator-border: rgb(68, 68, 68);\n --dv-paneview-header-border-color: rgba(204, 204, 204, 0.2);\n}\n\n.dockview-theme-light {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: white;\n --dv-tabs-and-actions-container-background-color: #f3f3f3;\n --dv-activegroup-visiblepanel-tab-background-color: white;\n --dv-activegroup-hiddenpanel-tab-background-color: #ececec;\n --dv-inactivegroup-visiblepanel-tab-background-color: white;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #ececec;\n --dv-tab-divider-color: white;\n --dv-activegroup-visiblepanel-tab-color: rgb(51, 51, 51);\n --dv-activegroup-hiddenpanel-tab-color: rgba(51, 51, 51, 0.7);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(51, 51, 51, 0.7);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(51, 51, 51, 0.35);\n --dv-separator-border: rgba(128, 128, 128, 0.35);\n --dv-paneview-header-border-color: rgb(51, 51, 51);\n}\n\n.dockview-theme-vs {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #1e1e1e;\n --dv-tabs-and-actions-container-background-color: #252526;\n --dv-activegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-activegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-inactivegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-tab-divider-color: #1e1e1e;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: #969696;\n --dv-inactivegroup-visiblepanel-tab-color: #8f8f8f;\n --dv-inactivegroup-hiddenpanel-tab-color: #626262;\n --dv-separator-border: rgb(68, 68, 68);\n --dv-paneview-header-border-color: rgba(204, 204, 204, 0.2);\n --dv-tabs-and-actions-container-background-color: #2d2d30;\n --dv-tabs-and-actions-container-height: 20px;\n --dv-tabs-and-actions-container-font-size: 11px;\n --dv-activegroup-visiblepanel-tab-background-color: #007acc;\n --dv-inactivegroup-visiblepanel-tab-background-color: #3f3f46;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: white;\n --dv-inactivegroup-visiblepanel-tab-color: white;\n --dv-inactivegroup-hiddenpanel-tab-color: white;\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container {\n box-sizing: content-box;\n border-bottom: 2px solid var(--dv-activegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container .tab.active-tab {\n border-top: 2px solid var(--dv-activegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container .tab.inactive-tab {\n border-top: 2px solid var(--dv-activegroup-hiddenpanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container {\n box-sizing: content-box;\n border-bottom: 2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container .tab.active-tab {\n border-top: 2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container .tab.inactive-tab {\n border-top: 2px solid var(--dv-inactivegroup-hiddenpanel-tab-background-color);\n}\n\n.dockview-theme-abyss {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #000c18;\n --dv-tabs-and-actions-container-background-color: #1c1c2a;\n --dv-activegroup-visiblepanel-tab-background-color: #000c18;\n --dv-activegroup-hiddenpanel-tab-background-color: #10192c;\n --dv-inactivegroup-visiblepanel-tab-background-color: #000c18;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #10192c;\n --dv-tab-divider-color: #2b2b4a;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: rgba(255, 255, 255, 0.5);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(255, 255, 255, 0.5);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(255, 255, 255, 0.25);\n --dv-separator-border: #2b2b4a;\n --dv-paneview-header-border-color: #2b2b4a;\n --dv-paneview-active-outline-color: #596f99;\n}\n\n.dockview-theme-dracula {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #282a36;\n --dv-tabs-and-actions-container-background-color: #191a21;\n --dv-activegroup-visiblepanel-tab-background-color: #282a36;\n --dv-activegroup-hiddenpanel-tab-background-color: #21222c;\n --dv-inactivegroup-visiblepanel-tab-background-color: #282a36;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #21222c;\n --dv-tab-divider-color: #191a21;\n --dv-activegroup-visiblepanel-tab-color: rgb(248, 248, 242);\n --dv-activegroup-hiddenpanel-tab-color: rgb(98, 114, 164);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(248, 248, 242, 0.5);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(98, 114, 164, 0.5);\n --dv-separator-border: #bd93f9;\n --dv-paneview-header-border-color: #bd93f9;\n --dv-paneview-active-outline-color: #6272a4;\n}\n.dockview-theme-dracula .groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n position: relative;\n}\n.dockview-theme-dracula .groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab::after {\n position: absolute;\n left: 0px;\n top: 0px;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: #94527e;\n z-index: 999;\n}\n.dockview-theme-dracula .groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n position: relative;\n}\n.dockview-theme-dracula .groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab::after {\n position: absolute;\n left: 0px;\n bottom: 0px;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: #5e3d5a;\n z-index: 999;\n}\n\n.dockview-theme-replit {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #ebeced;\n --dv-tabs-and-actions-container-background-color: #fcfcfc;\n --dv-activegroup-visiblepanel-tab-background-color: #f0f1f2;\n --dv-activegroup-hiddenpanel-tab-background-color: #fcfcfc;\n --dv-inactivegroup-visiblepanel-tab-background-color: #f0f1f2;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #fcfcfc;\n --dv-tab-divider-color: transparent;\n --dv-activegroup-visiblepanel-tab-color: rgb(51, 51, 51);\n --dv-activegroup-hiddenpanel-tab-color: rgb(51, 51, 51);\n --dv-inactivegroup-visiblepanel-tab-color: rgb(51, 51, 51);\n --dv-inactivegroup-hiddenpanel-tab-color: rgb(51, 51, 51);\n --dv-separator-border: transparent;\n --dv-paneview-header-border-color: rgb(51, 51, 51);\n --dv-background-color: #ebeced;\n --dv-separator-handle-background-color: #cfd1d3;\n --dv-separator-handle-hover-background-color: #babbbb;\n}\n.dockview-theme-replit .dv-resize-container:has(> .groupview) {\n border-radius: 8px;\n}\n.dockview-theme-replit .groupview {\n overflow: hidden;\n border-radius: 10px;\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container {\n border-bottom: 1px solid rgba(128, 128, 128, 0.35);\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container .tab {\n margin: 4px;\n border-radius: 8px;\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container .tab .dockview-svg {\n height: 8px;\n width: 8px;\n}\n.dockview-theme-replit .groupview .tabs-and-actions-container .tab:hover {\n background-color: #e4e5e6 !important;\n}\n.dockview-theme-replit .groupview .content-container {\n background-color: #fcfcfc;\n}\n.dockview-theme-replit .groupview.active-group {\n border: 1px solid rgba(128, 128, 128, 0.35);\n}\n.dockview-theme-replit .groupview.inactive-group {\n border: 1px solid transparent;\n}\n.dockview-theme-replit .vertical > .sash-container > .sash:not(.disabled)::after {\n content: \"\";\n height: 4px;\n width: 40px;\n border-radius: 2px;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: var(--dv-separator-handle-background-color);\n position: absolute;\n}\n.dockview-theme-replit .vertical > .sash-container > .sash:not(.disabled):hover::after {\n background-color: var(--dv-separator-handle-hover-background-color);\n}\n.dockview-theme-replit .horizontal > .sash-container > .sash:not(.disabled)::after {\n content: \"\";\n height: 40px;\n width: 4px;\n border-radius: 2px;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n background-color: var(--dv-separator-handle-background-color);\n position: absolute;\n}\n.dockview-theme-replit .horizontal > .sash-container > .sash:not(.disabled):hover::after {\n background-color: var(--dv-separator-handle-hover-background-color);\n}\n.drop-target {\n position: relative;\n}\n.drop-target > .drop-target-dropzone {\n position: absolute;\n left: 0px;\n top: 0px;\n height: 100%;\n width: 100%;\n z-index: 1000;\n pointer-events: none;\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection {\n position: relative;\n box-sizing: border-box;\n height: 100%;\n width: 100%;\n background-color: var(--dv-drag-over-background-color);\n transition: top 70ms ease-out, left 70ms ease-out, width 70ms ease-out, height 70ms ease-out, opacity 0.15s ease-out;\n will-change: transform;\n pointer-events: none;\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-top.dv-drop-target-small-vertical {\n border-top: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-bottom.dv-drop-target-small-vertical {\n border-bottom: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-left.dv-drop-target-small-horizontal {\n border-left: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.dv-drop-target-right.dv-drop-target-small-horizontal {\n border-right: 1px solid var(--dv-drag-over-border-color);\n}\n.dv-dockview {\n position: relative;\n background-color: var(--dv-group-view-background-color);\n}\n.dv-dockview .dv-watermark-container {\n position: absolute;\n top: 0px;\n left: 0px;\n height: 100%;\n width: 100%;\n z-index: 1;\n}\n.dv-dockview .dv-overlay-render-container {\n position: relative;\n}\n\n.groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n background-color: var(--dv-activegroup-visiblepanel-tab-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.inactive-tab {\n background-color: var(--dv-activegroup-hiddenpanel-tab-background-color);\n color: var(--dv-activegroup-hiddenpanel-tab-color);\n}\n.groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n background-color: var(--dv-inactivegroup-visiblepanel-tab-background-color);\n color: var(--dv-inactivegroup-visiblepanel-tab-color);\n}\n.groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.inactive-tab {\n background-color: var(--dv-inactivegroup-hiddenpanel-tab-background-color);\n color: var(--dv-inactivegroup-hiddenpanel-tab-color);\n}\n\n/**\n * when a tab is dragged we lose the above stylings because they are conditional on parent elements\n * therefore we also set some stylings for the dragging event\n **/\n.tab.dv-tab-dragging {\n background-color: var(--dv-activegroup-visiblepanel-tab-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.groupview {\n display: flex;\n flex-direction: column;\n height: 100%;\n background-color: var(--dv-group-view-background-color);\n overflow: hidden;\n}\n.groupview:focus {\n outline: none;\n}\n.groupview.empty > .tabs-and-actions-container {\n display: none;\n}\n.groupview > .content-container {\n flex-grow: 1;\n min-height: 0;\n outline: none;\n}\n.dv-root-wrapper {\n height: 100%;\n width: 100%;\n}\n.grid-view,\n.branch-node {\n height: 100%;\n width: 100%;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-top {\n background-color: red;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-bottom {\n background-color: green;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-left {\n background-color: yellow;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-right {\n background-color: blue;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-topleft,\n.dv-debug .dv-resize-container .dv-resize-handle-topright,\n.dv-debug .dv-resize-container .dv-resize-handle-bottomleft,\n.dv-debug .dv-resize-container .dv-resize-handle-bottomright {\n background-color: cyan;\n}\n\n.dv-resize-container {\n position: absolute;\n z-index: 997;\n border: 1px solid var(--dv-tab-divider-color);\n box-shadow: var(--dv-floating-box-shadow);\n}\n.dv-resize-container.dv-resize-container-dragging {\n opacity: 0.5;\n}\n.dv-resize-container .dv-resize-handle-top {\n height: 4px;\n width: calc(100% - 8px);\n left: 4px;\n top: -2px;\n z-index: 999;\n position: absolute;\n cursor: ns-resize;\n}\n.dv-resize-container .dv-resize-handle-bottom {\n height: 4px;\n width: calc(100% - 8px);\n left: 4px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: ns-resize;\n}\n.dv-resize-container .dv-resize-handle-left {\n height: calc(100% - 8px);\n width: 4px;\n left: -2px;\n top: 4px;\n z-index: 999;\n position: absolute;\n cursor: ew-resize;\n}\n.dv-resize-container .dv-resize-handle-right {\n height: calc(100% - 8px);\n width: 4px;\n right: -2px;\n top: 4px;\n z-index: 999;\n position: absolute;\n cursor: ew-resize;\n}\n.dv-resize-container .dv-resize-handle-topleft {\n height: 4px;\n width: 4px;\n top: -2px;\n left: -2px;\n z-index: 999;\n position: absolute;\n cursor: nw-resize;\n}\n.dv-resize-container .dv-resize-handle-topright {\n height: 4px;\n width: 4px;\n right: -2px;\n top: -2px;\n z-index: 999;\n position: absolute;\n cursor: ne-resize;\n}\n.dv-resize-container .dv-resize-handle-bottomleft {\n height: 4px;\n width: 4px;\n left: -2px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: sw-resize;\n}\n.dv-resize-container .dv-resize-handle-bottomright {\n height: 4px;\n width: 4px;\n right: -2px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: se-resize;\n}\n.dv-render-overlay {\n position: absolute;\n z-index: 1;\n height: 100%;\n}\n.dv-render-overlay.dv-render-overlay-float {\n z-index: 998;\n}\n.dv-debug .dv-render-overlay {\n outline: 1px solid red;\n outline-offset: -1;\n}\n.pane-container {\n height: 100%;\n width: 100%;\n}\n.pane-container.animated .view {\n transition-duration: 0.15s;\n transition-timing-function: ease-out;\n}\n.pane-container .view {\n overflow: hidden;\n display: flex;\n flex-direction: column;\n padding: 0px !important;\n}\n.pane-container .view:not(:first-child)::before {\n background-color: transparent !important;\n}\n.pane-container .view:not(:first-child) .pane > .pane-header {\n border-top: 1px solid var(--dv-paneview-header-border-color);\n}\n.pane-container .view .default-header {\n background-color: var(--dv-group-view-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n display: flex;\n padding: 0px 8px;\n cursor: pointer;\n}\n.pane-container .view .default-header .dockview-pane-header-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.pane-container .view .default-header > span {\n padding-left: 8px;\n flex-grow: 1;\n}\n.pane-container:first-of-type > .pane > .pane-header {\n border-top: none !important;\n}\n.pane-container .pane {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n height: 100%;\n}\n.pane-container .pane .pane-header {\n box-sizing: border-box;\n user-select: none;\n position: relative;\n outline: none;\n}\n.pane-container .pane .pane-header.pane-draggable {\n cursor: pointer;\n}\n.pane-container .pane .pane-header:focus:before, .pane-container .pane .pane-header:focus-within:before {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 5;\n content: \"\";\n pointer-events: none;\n outline: 1px solid;\n outline-width: -1px;\n outline-style: solid;\n outline-offset: -1px;\n outline-color: var(--dv-paneview-active-outline-color);\n}\n.pane-container .pane .pane-body {\n overflow-y: auto;\n overflow-x: hidden;\n flex-grow: 1;\n position: relative;\n outline: none;\n}\n.pane-container .pane .pane-body:focus:before, .pane-container .pane .pane-body:focus-within:before {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: 5;\n content: \"\";\n pointer-events: none;\n outline: 1px solid;\n outline-width: -1px;\n outline-style: solid;\n outline-offset: -1px;\n outline-color: var(--dv-paneview-active-outline-color);\n}\n.dv-debug .split-view-container .sash-container .sash.enabled {\n background-color: black;\n}\n.dv-debug .split-view-container .sash-container .sash.disabled {\n background-color: orange;\n}\n.dv-debug .split-view-container .sash-container .sash.maximum {\n background-color: green;\n}\n.dv-debug .split-view-container .sash-container .sash.minimum {\n background-color: red;\n}\n\n.split-view-container {\n position: relative;\n overflow: hidden;\n height: 100%;\n width: 100%;\n}\n.split-view-container.dv-splitview-disabled > .sash-container > .sash {\n pointer-events: none;\n}\n.split-view-container.animation .view,\n.split-view-container.animation .sash {\n transition-duration: 0.15s;\n transition-timing-function: ease-out;\n}\n.split-view-container.horizontal {\n height: 100%;\n}\n.split-view-container.horizontal > .sash-container > .sash {\n height: 100%;\n width: 4px;\n}\n.split-view-container.horizontal > .sash-container > .sash.enabled {\n cursor: ew-resize;\n}\n.split-view-container.horizontal > .sash-container > .sash.disabled {\n cursor: default;\n}\n.split-view-container.horizontal > .sash-container > .sash.maximum {\n cursor: w-resize;\n}\n.split-view-container.horizontal > .sash-container > .sash.minimum {\n cursor: e-resize;\n}\n.split-view-container.horizontal > .view-container > .view:not(:first-child)::before {\n height: 100%;\n width: 1px;\n}\n.split-view-container.vertical {\n width: 100%;\n}\n.split-view-container.vertical > .sash-container > .sash {\n width: 100%;\n height: 4px;\n}\n.split-view-container.vertical > .sash-container > .sash.enabled {\n cursor: ns-resize;\n}\n.split-view-container.vertical > .sash-container > .sash.disabled {\n cursor: default;\n}\n.split-view-container.vertical > .sash-container > .sash.maximum {\n cursor: n-resize;\n}\n.split-view-container.vertical > .sash-container > .sash.minimum {\n cursor: s-resize;\n}\n.split-view-container.vertical > .view-container > .view {\n width: 100%;\n}\n.split-view-container.vertical > .view-container > .view:not(:first-child)::before {\n height: 1px;\n width: 100%;\n}\n.split-view-container .sash-container {\n height: 100%;\n width: 100%;\n position: absolute;\n}\n.split-view-container .sash-container .sash {\n position: absolute;\n z-index: 99;\n outline: none;\n user-select: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n touch-action: none;\n}\n.split-view-container .sash-container .sash:not(.disabled):active {\n transition: background-color 0.1s ease-in-out;\n background-color: var(--dv-active-sash-color, transparent);\n}\n.split-view-container .sash-container .sash:not(.disabled):hover {\n background-color: var(--dv-active-sash-color, transparent);\n transition: background-color 0.1s ease-in-out;\n transition-delay: 0.5s;\n}\n.split-view-container .view-container {\n position: relative;\n height: 100%;\n width: 100%;\n background-color: var(--dv-background-color);\n}\n.split-view-container .view-container .view {\n height: 100%;\n box-sizing: border-box;\n overflow: auto;\n position: absolute;\n}\n.split-view-container.separator-border .view:not(:first-child)::before {\n content: \" \";\n position: absolute;\n top: 0;\n left: 0;\n z-index: 5;\n pointer-events: none;\n background-color: var(--dv-separator-border);\n}\n.dv-dragged {\n transform: translate3d(0px, 0px, 0px); /* forces tab to be drawn on a separate layer (see https://github.com/microsoft/vscode/issues/18733) */\n}\n\n.tab {\n flex-shrink: 0;\n}\n.tab:focus-within, .tab:focus {\n position: relative;\n}\n.tab:focus-within::after, .tab:focus::after {\n position: absolute;\n content: \"\";\n height: 100%;\n width: 100%;\n top: 0px;\n left: 0px;\n pointer-events: none;\n outline: 1px solid var(--dv-tab-divider-color) !important;\n outline-offset: -1px;\n z-index: 5;\n}\n.tab.dv-tab-dragging .dv-default-tab-action {\n background-color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.tab.active-tab .dv-default-tab .dv-default-tab-action {\n visibility: visible;\n}\n.tab.inactive-tab .dv-default-tab .dv-default-tab-action {\n visibility: hidden;\n}\n.tab.inactive-tab .dv-default-tab:hover .dv-default-tab-action {\n visibility: visible;\n}\n.tab .dv-default-tab {\n position: relative;\n height: 100%;\n display: flex;\n min-width: 80px;\n align-items: center;\n padding: 0px 8px;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.tab .dv-default-tab .dv-default-tab-content {\n padding: 0px 8px;\n flex-grow: 1;\n}\n.tab .dv-default-tab .dv-default-tab-action {\n padding: 4px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n}\n.tab .dv-default-tab .dv-default-tab-action:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-hover-background-color);\n}\n.tabs-and-actions-container {\n display: flex;\n background-color: var(--dv-tabs-and-actions-container-background-color);\n flex-shrink: 0;\n box-sizing: border-box;\n height: var(--dv-tabs-and-actions-container-height);\n font-size: var(--dv-tabs-and-actions-container-font-size);\n}\n.tabs-and-actions-container.hidden {\n display: none;\n}\n.tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .tabs-container {\n flex-grow: 1;\n}\n.tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .tabs-container .tab {\n flex-grow: 1;\n}\n.tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .void-container {\n flex-grow: 0;\n}\n.tabs-and-actions-container .void-container {\n display: flex;\n flex-grow: 1;\n cursor: grab;\n}\n.tabs-and-actions-container .tabs-container {\n display: flex;\n overflow-x: overlay;\n overflow-y: hidden;\n scrollbar-width: thin;\n /* Track */\n /* Handle */\n}\n.tabs-and-actions-container .tabs-container::-webkit-scrollbar {\n height: 3px;\n}\n.tabs-and-actions-container .tabs-container::-webkit-scrollbar-track {\n background: transparent;\n}\n.tabs-and-actions-container .tabs-container::-webkit-scrollbar-thumb {\n background: var(--dv-tabs-container-scrollbar-color);\n}\n.tabs-and-actions-container .tabs-container .tab {\n -webkit-user-drag: element;\n outline: none;\n min-width: 75px;\n cursor: pointer;\n position: relative;\n box-sizing: border-box;\n}\n.tabs-and-actions-container .tabs-container .tab:not(:first-child)::before {\n content: \" \";\n position: absolute;\n top: 0;\n left: 0;\n z-index: 5;\n pointer-events: none;\n background-color: var(--dv-tab-divider-color);\n width: 1px;\n height: 100%;\n}\n.watermark {\n display: flex;\n width: 100%;\n}\n.watermark.has-actions .watermark-title .actions-container {\n display: none;\n}\n.watermark .watermark-title {\n height: 35px;\n width: 100%;\n display: flex;\n}\n.watermark .watermark-content {\n flex-grow: 1;\n}\n.watermark .actions-container {\n display: flex;\n align-items: center;\n padding: 0px 8px;\n}\n.watermark .actions-container .close-action {\n padding: 4px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n cursor: pointer;\n color: var(--dv-activegroup-hiddenpanel-tab-color);\n}\n.watermark .actions-container .close-action:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-hover-background-color);\n}";
37
37
  styleInject(css_248z);
38
38
 
39
39
  class TransferObject {
@@ -581,6 +581,42 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
581
581
  },
582
582
  };
583
583
  }
584
+ function getDockviewTheme(element) {
585
+ function toClassList(element) {
586
+ const list = [];
587
+ for (let i = 0; i < element.classList.length; i++) {
588
+ list.push(element.classList.item(i));
589
+ }
590
+ return list;
591
+ }
592
+ let theme = undefined;
593
+ let parent = element;
594
+ while (parent !== null) {
595
+ theme = toClassList(parent).find((cls) => cls.startsWith('dockview-theme-'));
596
+ if (typeof theme === 'string') {
597
+ break;
598
+ }
599
+ parent = parent.parentElement;
600
+ }
601
+ return theme;
602
+ }
603
+ class Classnames {
604
+ constructor(element) {
605
+ this.element = element;
606
+ this._classNames = [];
607
+ }
608
+ setClassNames(classNames) {
609
+ for (const className of this._classNames) {
610
+ toggleClass(this.element, className, false);
611
+ }
612
+ this._classNames = classNames
613
+ .split(' ')
614
+ .filter((v) => v.trim().length > 0);
615
+ for (const className of this._classNames) {
616
+ toggleClass(this.element, className, true);
617
+ }
618
+ }
619
+ }
584
620
 
585
621
  function tail(arr) {
586
622
  if (arr.length === 0) {
@@ -2700,8 +2736,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
2700
2736
  set locked(value) {
2701
2737
  this.gridview.locked = value;
2702
2738
  }
2703
- constructor(options) {
2704
- var _a, _b;
2739
+ constructor(parentElement, options) {
2740
+ var _a;
2705
2741
  super(document.createElement('div'), options.disableAutoResizing);
2706
2742
  this._id = nextLayoutId$1.next();
2707
2743
  this._groups = new Map();
@@ -2715,14 +2751,11 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
2715
2751
  this.onDidLayoutChange = this._bufferOnDidLayoutChange.onEvent;
2716
2752
  this._onDidViewVisibilityChangeMicroTaskQueue = new AsapEvent();
2717
2753
  this.onDidViewVisibilityChangeMicroTaskQueue = this._onDidViewVisibilityChangeMicroTaskQueue.onEvent;
2718
- this.classNames = [];
2719
2754
  this.element.style.height = '100%';
2720
2755
  this.element.style.width = '100%';
2721
- this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
2722
- for (const className of this.classNames) {
2723
- toggleClass(this.element, className, true);
2724
- }
2725
- options.parentElement.appendChild(this.element);
2756
+ this._classNames = new Classnames(this.element);
2757
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
2758
+ parentElement.appendChild(this.element);
2726
2759
  this.gridview = new Gridview(!!options.proportionalLayout, options.styles, options.orientation, options.locked, options.margin);
2727
2760
  this.gridview.locked = !!options.locked;
2728
2761
  this.element.appendChild(this.gridview.element);
@@ -2746,15 +2779,22 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
2746
2779
  return this.gridview.isViewVisible(getGridLocation(panel.element));
2747
2780
  }
2748
2781
  updateOptions(options) {
2749
- var _a, _b;
2782
+ var _a, _b, _c, _d;
2783
+ if (typeof options.proportionalLayout === 'boolean') ;
2784
+ if (options.orientation) {
2785
+ this.gridview.orientation = options.orientation;
2786
+ }
2787
+ if ('disableResizing' in options) {
2788
+ this.disableResizing = (_a = options.disableAutoResizing) !== null && _a !== void 0 ? _a : false;
2789
+ }
2790
+ if ('locked' in options) {
2791
+ this.locked = (_b = options.locked) !== null && _b !== void 0 ? _b : false;
2792
+ }
2793
+ if ('margin' in options) {
2794
+ this.gridview.margin = (_c = options.margin) !== null && _c !== void 0 ? _c : 0;
2795
+ }
2750
2796
  if ('className' in options) {
2751
- for (const className of this.classNames) {
2752
- toggleClass(this.element, className, false);
2753
- }
2754
- this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
2755
- for (const className of this.classNames) {
2756
- toggleClass(this.element, className, true);
2757
- }
2797
+ this._classNames.setClassNames((_d = options.className) !== null && _d !== void 0 ? _d : '');
2758
2798
  }
2759
2799
  }
2760
2800
  maximizeGroup(panel) {
@@ -4680,7 +4720,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
4680
4720
  this.onWillShowOverlay = this.dropTarget.onWillShowOverlay;
4681
4721
  this.addDisposables(this._onChanged, this._onDropped, this._onDragStart, dragHandler.onDragStart((event) => {
4682
4722
  this._onDragStart.fire(event);
4683
- }), dragHandler, addDisposableListener(this._element, 'mousedown', (event) => {
4723
+ }), dragHandler, addDisposableListener(this._element, 'pointerdown', (event) => {
4684
4724
  if (event.defaultPrevented) {
4685
4725
  return;
4686
4726
  }
@@ -4722,7 +4762,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
4722
4762
  this.accessor = accessor;
4723
4763
  this.group = group;
4724
4764
  this.panelTransfer = LocalSelectionTransfer.getInstance();
4725
- this.addDisposables(addDisposableListener(element, 'mousedown', (e) => {
4765
+ this.addDisposables(addDisposableListener(element, 'pointerdown', (e) => {
4726
4766
  if (e.shiftKey) {
4727
4767
  /**
4728
4768
  * You cannot call e.preventDefault() because that will prevent drag events from firing
@@ -4941,7 +4981,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
4941
4981
  group: this.group,
4942
4982
  getData: getPanelData,
4943
4983
  }));
4944
- }), addDisposableListener(this.voidContainer.element, 'mousedown', (event) => {
4984
+ }), addDisposableListener(this.voidContainer.element, 'pointerdown', (event) => {
4945
4985
  const isFloatingGroupsEnabled = !this.accessor.options.disableFloatingGroups;
4946
4986
  if (isFloatingGroupsEnabled &&
4947
4987
  event.shiftKey &&
@@ -4955,7 +4995,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
4955
4995
  inDragMode: true,
4956
4996
  });
4957
4997
  }
4958
- }), addDisposableListener(this.tabContainer, 'mousedown', (event) => {
4998
+ }), addDisposableListener(this.tabContainer, 'pointerdown', (event) => {
4959
4999
  if (event.defaultPrevented) {
4960
5000
  return;
4961
5001
  }
@@ -5660,7 +5700,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5660
5700
  });
5661
5701
  this.tabsContainer.hide();
5662
5702
  this.contentContainer.element.appendChild(this.watermark.element);
5663
- this.watermark.updateParentGroup(this.groupPanel, true);
5664
5703
  }
5665
5704
  if (!this.isEmpty && this.watermark) {
5666
5705
  this.watermark.element.remove();
@@ -6023,6 +6062,34 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6023
6062
  const MINIMUM_DOCKVIEW_GROUP_PANEL_WIDTH = 100;
6024
6063
  const MINIMUM_DOCKVIEW_GROUP_PANEL_HEIGHT = 100;
6025
6064
  class DockviewGroupPanel extends GridviewPanel {
6065
+ get minimumWidth() {
6066
+ var _a;
6067
+ const activePanelMinimumWidth = (_a = this.activePanel) === null || _a === void 0 ? void 0 : _a.minimumWidth;
6068
+ return typeof activePanelMinimumWidth === 'number'
6069
+ ? activePanelMinimumWidth
6070
+ : MINIMUM_DOCKVIEW_GROUP_PANEL_WIDTH;
6071
+ }
6072
+ get minimumHeight() {
6073
+ var _a;
6074
+ const activePanelMinimumHeight = (_a = this.activePanel) === null || _a === void 0 ? void 0 : _a.minimumHeight;
6075
+ return typeof activePanelMinimumHeight === 'number'
6076
+ ? activePanelMinimumHeight
6077
+ : MINIMUM_DOCKVIEW_GROUP_PANEL_HEIGHT;
6078
+ }
6079
+ get maximumWidth() {
6080
+ var _a;
6081
+ const activePanelMaximumWidth = (_a = this.activePanel) === null || _a === void 0 ? void 0 : _a.maximumWidth;
6082
+ return typeof activePanelMaximumWidth === 'number'
6083
+ ? activePanelMaximumWidth
6084
+ : Number.MAX_SAFE_INTEGER;
6085
+ }
6086
+ get maximumHeight() {
6087
+ var _a;
6088
+ const activePanelMaximumHeight = (_a = this.activePanel) === null || _a === void 0 ? void 0 : _a.maximumHeight;
6089
+ return typeof activePanelMaximumHeight === 'number'
6090
+ ? activePanelMaximumHeight
6091
+ : Number.MAX_SAFE_INTEGER;
6092
+ }
6026
6093
  get panels() {
6027
6094
  return this._model.panels;
6028
6095
  }
@@ -6045,9 +6112,12 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6045
6112
  return this._model.header;
6046
6113
  }
6047
6114
  constructor(accessor, id, options) {
6115
+ var _a, _b, _c, _d, _e, _f;
6048
6116
  super(id, 'groupview_default', {
6049
- minimumHeight: MINIMUM_DOCKVIEW_GROUP_PANEL_HEIGHT,
6050
- minimumWidth: MINIMUM_DOCKVIEW_GROUP_PANEL_WIDTH,
6117
+ minimumHeight: (_b = (_a = options.constraints) === null || _a === void 0 ? void 0 : _a.minimumHeight) !== null && _b !== void 0 ? _b : MINIMUM_DOCKVIEW_GROUP_PANEL_HEIGHT,
6118
+ minimumWidth: (_d = (_c = options.constraints) === null || _c === void 0 ? void 0 : _c.maximumHeight) !== null && _d !== void 0 ? _d : MINIMUM_DOCKVIEW_GROUP_PANEL_WIDTH,
6119
+ maximumHeight: (_e = options.constraints) === null || _e === void 0 ? void 0 : _e.maximumHeight,
6120
+ maximumWidth: (_f = options.constraints) === null || _f === void 0 ? void 0 : _f.maximumWidth,
6051
6121
  }, new DockviewGroupPanelApiImpl(id, accessor));
6052
6122
  this.api.initialize(this); // cannot use 'this' after after 'super' call
6053
6123
  this._model = new DockviewGroupPanelModel(this.element, accessor, id, options, this);
@@ -6203,6 +6273,18 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6203
6273
  var _a;
6204
6274
  return (_a = this._renderer) !== null && _a !== void 0 ? _a : this.accessor.renderer;
6205
6275
  }
6276
+ get minimumWidth() {
6277
+ return this._minimumWidth;
6278
+ }
6279
+ get minimumHeight() {
6280
+ return this._minimumHeight;
6281
+ }
6282
+ get maximumWidth() {
6283
+ return this._maximumWidth;
6284
+ }
6285
+ get maximumHeight() {
6286
+ return this._maximumHeight;
6287
+ }
6206
6288
  constructor(id, component, tabComponent, accessor, containerApi, group, view, options) {
6207
6289
  super();
6208
6290
  this.id = id;
@@ -6211,6 +6293,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6211
6293
  this.view = view;
6212
6294
  this._renderer = options.renderer;
6213
6295
  this._group = group;
6296
+ this._minimumWidth = options.minimumWidth;
6297
+ this._minimumHeight = options.minimumHeight;
6298
+ this._maximumWidth = options.maximumWidth;
6299
+ this._maximumHeight = options.maximumHeight;
6214
6300
  this.api = new DockviewPanelApiImpl(this, this._group, accessor, component, tabComponent);
6215
6301
  this.addDisposables(this.api.onActiveChange(() => {
6216
6302
  accessor.setActivePanel(this);
@@ -6247,6 +6333,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6247
6333
  : undefined,
6248
6334
  title: this.title,
6249
6335
  renderer: this._renderer,
6336
+ minimumHeight: this._minimumHeight,
6337
+ maximumHeight: this._maximumHeight,
6338
+ minimumWidth: this._minimumWidth,
6339
+ maximumWidth: this._maximumWidth,
6250
6340
  };
6251
6341
  }
6252
6342
  setTitle(title) {
@@ -6376,7 +6466,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6376
6466
  this.action.appendChild(createCloseButton());
6377
6467
  this._element.appendChild(this._content);
6378
6468
  this._element.appendChild(this.action);
6379
- this.addDisposables(addDisposableListener(this.action, 'mousedown', (ev) => {
6469
+ this.addDisposables(addDisposableListener(this.action, 'pointerdown', (ev) => {
6380
6470
  ev.preventDefault();
6381
6471
  }));
6382
6472
  this.render();
@@ -6386,7 +6476,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6386
6476
  this.addDisposables(params.api.onDidTitleChange((event) => {
6387
6477
  this._title = event.title;
6388
6478
  this.render();
6389
- }), addDisposableListener(this.action, 'mousedown', (ev) => {
6479
+ }), addDisposableListener(this.action, 'pointerdown', (ev) => {
6390
6480
  ev.preventDefault();
6391
6481
  }), addDisposableListener(this.action, 'click', (ev) => {
6392
6482
  if (ev.defaultPrevented) {
@@ -6487,6 +6577,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6487
6577
  const view = new DockviewPanelModel(this.accessor, panelId, contentComponent, tabComponent);
6488
6578
  const panel = new DockviewPanel(panelId, contentComponent, tabComponent, this.accessor, new DockviewApi(this.accessor), group, view, {
6489
6579
  renderer: panelData.renderer,
6580
+ minimumWidth: panelData.minimumWidth,
6581
+ minimumHeight: panelData.minimumHeight,
6582
+ maximumWidth: panelData.maximumWidth,
6583
+ maximumHeight: panelData.maximumHeight,
6490
6584
  });
6491
6585
  panel.init({
6492
6586
  title: title !== null && title !== void 0 ? title : panelId,
@@ -6520,34 +6614,19 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6520
6614
  actionsContainer.appendChild(closeAnchor);
6521
6615
  title.appendChild(emptySpace);
6522
6616
  title.appendChild(actionsContainer);
6523
- this.addDisposables(addDisposableListener(closeAnchor, 'click', (ev) => {
6617
+ this.addDisposables(addDisposableListener(closeAnchor, 'click', (event) => {
6524
6618
  var _a;
6525
- ev.preventDefault();
6619
+ event.preventDefault();
6526
6620
  if (this._group) {
6527
6621
  (_a = this._api) === null || _a === void 0 ? void 0 : _a.removeGroup(this._group);
6528
6622
  }
6529
6623
  }));
6530
6624
  }
6531
- update(_event) {
6532
- // noop
6533
- }
6534
- focus() {
6535
- // noop
6536
- }
6537
- layout(_width, _height) {
6538
- // noop
6539
- }
6540
6625
  init(_params) {
6541
6626
  this._api = _params.containerApi;
6627
+ this._group = _params.group;
6542
6628
  this.render();
6543
6629
  }
6544
- updateParentGroup(group, _visible) {
6545
- this._group = group;
6546
- this.render();
6547
- }
6548
- dispose() {
6549
- super.dispose();
6550
- }
6551
6630
  render() {
6552
6631
  const isOneGroup = !!(this._api && this._api.size <= 1);
6553
6632
  toggleClass(this.element, 'has-actions', isOneGroup);
@@ -6706,7 +6785,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6706
6785
  dispose: () => {
6707
6786
  iframes.release();
6708
6787
  },
6709
- }, addDisposableWindowListener(window, 'mousemove', (e) => {
6788
+ }, addDisposableWindowListener(window, 'pointermove', (e) => {
6710
6789
  const containerRect = this.options.container.getBoundingClientRect();
6711
6790
  const x = e.clientX - containerRect.left;
6712
6791
  const y = e.clientY - containerRect.top;
@@ -6749,7 +6828,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6749
6828
  this._onDidChangeEnd.fire();
6750
6829
  }));
6751
6830
  };
6752
- this.addDisposables(move, addDisposableListener(dragTarget, 'mousedown', (event) => {
6831
+ this.addDisposables(move, addDisposableListener(dragTarget, 'pointerdown', (event) => {
6753
6832
  if (event.defaultPrevented) {
6754
6833
  event.preventDefault();
6755
6834
  return;
@@ -6760,7 +6839,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6760
6839
  return;
6761
6840
  }
6762
6841
  track();
6763
- }), addDisposableListener(this.options.content, 'mousedown', (event) => {
6842
+ }), addDisposableListener(this.options.content, 'pointerdown', (event) => {
6764
6843
  if (event.defaultPrevented) {
6765
6844
  return;
6766
6845
  }
@@ -6772,7 +6851,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6772
6851
  if (event.shiftKey) {
6773
6852
  track();
6774
6853
  }
6775
- }), addDisposableListener(this.options.content, 'mousedown', () => {
6854
+ }), addDisposableListener(this.options.content, 'pointerdown', () => {
6776
6855
  arialLevelTracker.push(this._element);
6777
6856
  }, true));
6778
6857
  if (options.inDragMode) {
@@ -6784,11 +6863,11 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6784
6863
  resizeHandleElement.className = `dv-resize-handle-${direction}`;
6785
6864
  this._element.appendChild(resizeHandleElement);
6786
6865
  const move = new MutableDisposable();
6787
- this.addDisposables(move, addDisposableListener(resizeHandleElement, 'mousedown', (e) => {
6866
+ this.addDisposables(move, addDisposableListener(resizeHandleElement, 'pointerdown', (e) => {
6788
6867
  e.preventDefault();
6789
6868
  let startPosition = null;
6790
6869
  const iframes = disableIframePointEvents();
6791
- move.value = new CompositeDisposable(addDisposableWindowListener(window, 'mousemove', (e) => {
6870
+ move.value = new CompositeDisposable(addDisposableWindowListener(window, 'pointermove', (e) => {
6792
6871
  const containerRect = this.options.container.getBoundingClientRect();
6793
6872
  const overlayRect = this._element.getBoundingClientRect();
6794
6873
  const y = e.clientY - containerRect.top;
@@ -7270,25 +7349,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
7270
7349
  });
7271
7350
  });
7272
7351
  }
7273
- function getDockviewTheme(element) {
7274
- function toClassList(element) {
7275
- const list = [];
7276
- for (let i = 0; i < element.classList.length; i++) {
7277
- list.push(element.classList.item(i));
7278
- }
7279
- return list;
7280
- }
7281
- let theme = undefined;
7282
- let parent = element;
7283
- while (parent !== null) {
7284
- theme = toClassList(parent).find((cls) => cls.startsWith('dockview-theme-'));
7285
- if (typeof theme === 'string') {
7286
- break;
7287
- }
7288
- parent = parent.parentElement;
7289
- }
7290
- return theme;
7291
- }
7292
7352
  class DockviewComponent extends BaseGrid {
7293
7353
  get orientation() {
7294
7354
  return this.gridview.orientation;
@@ -7324,13 +7384,12 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
7324
7384
  }
7325
7385
  constructor(parentElement, options) {
7326
7386
  var _a;
7327
- super({
7387
+ super(parentElement, {
7328
7388
  proportionalLayout: true,
7329
7389
  orientation: exports.Orientation.HORIZONTAL,
7330
7390
  styles: options.hideBorders
7331
7391
  ? { separatorBorder: 'transparent' }
7332
7392
  : undefined,
7333
- parentElement: parentElement,
7334
7393
  disableAutoResizing: options.disableAutoResizing,
7335
7394
  locked: options.locked,
7336
7395
  margin: options.gap,
@@ -7370,9 +7429,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
7370
7429
  this._onDidActiveGroupChange = new Emitter();
7371
7430
  this.onDidActiveGroupChange = this._onDidActiveGroupChange.event;
7372
7431
  this._moving = false;
7373
- // const gready = document.createElement('div');
7374
- // gready.className = 'dv-overlay-render-container';
7375
- // this.gridview.element.appendChild(gready);
7376
7432
  this.overlayRenderContainer = new OverlayRenderContainer(this.gridview.element, this);
7377
7433
  toggleClass(this.gridview.element, 'dv-dockview', true);
7378
7434
  toggleClass(this.element, 'dv-debug', !!options.debug);
@@ -7821,16 +7877,11 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
7821
7877
  }
7822
7878
  }
7823
7879
  updateOptions(options) {
7824
- var _a, _b;
7880
+ var _a, _b, _c, _d;
7825
7881
  super.updateOptions(options);
7826
- const changed_floatingGroupBounds = 'floatingGroupBounds' in options &&
7827
- options.floatingGroupBounds !== this.options.floatingGroupBounds;
7828
- const changed_rootOverlayOptions = 'rootOverlayModel' in options &&
7829
- options.rootOverlayModel !== this.options.rootOverlayModel;
7830
- this._options = Object.assign(Object.assign({}, this.options), options);
7831
- if (changed_floatingGroupBounds) {
7882
+ if ('floatingGroupBounds' in options) {
7832
7883
  for (const group of this._floatingGroups) {
7833
- switch (this.options.floatingGroupBounds) {
7884
+ switch (options.floatingGroupBounds) {
7834
7885
  case 'boundedWithinViewport':
7835
7886
  group.overlay.minimumInViewportHeight = undefined;
7836
7887
  group.overlay.minimumInViewportWidth = undefined;
@@ -7843,25 +7894,20 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
7843
7894
  break;
7844
7895
  default:
7845
7896
  group.overlay.minimumInViewportHeight =
7846
- (_a = this.options.floatingGroupBounds) === null || _a === void 0 ? void 0 : _a.minimumHeightWithinViewport;
7897
+ (_a = options.floatingGroupBounds) === null || _a === void 0 ? void 0 : _a.minimumHeightWithinViewport;
7847
7898
  group.overlay.minimumInViewportWidth =
7848
- (_b = this.options.floatingGroupBounds) === null || _b === void 0 ? void 0 : _b.minimumWidthWithinViewport;
7899
+ (_b = options.floatingGroupBounds) === null || _b === void 0 ? void 0 : _b.minimumWidthWithinViewport;
7849
7900
  }
7850
7901
  group.overlay.setBounds();
7851
7902
  }
7852
7903
  }
7853
- if (changed_rootOverlayOptions) {
7854
- this._rootDropTarget.setOverlayModel(options.rootOverlayModel);
7904
+ if ('rootOverlayModel' in options) {
7905
+ this._rootDropTarget.setOverlayModel((_c = options.rootOverlayModel) !== null && _c !== void 0 ? _c : DEFAULT_ROOT_OVERLAY_MODEL);
7855
7906
  }
7856
- if (
7857
- // if explicitly set as `undefined`
7858
- 'gap' in options &&
7859
- options.gap === undefined) {
7860
- this.gridview.margin = 0;
7861
- }
7862
- if (typeof options.gap === 'number') {
7863
- this.gridview.margin = options.gap;
7907
+ if ('gap' in options) {
7908
+ this.gridview.margin = (_d = options.gap) !== null && _d !== void 0 ? _d : 0;
7864
7909
  }
7910
+ this._options = Object.assign(Object.assign({}, this.options), options);
7865
7911
  this.layout(this.gridview.width, this.gridview.height, true);
7866
7912
  }
7867
7913
  layout(width, height, forceResize) {
@@ -8118,6 +8164,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
8118
8164
  if (options.position && options.floating) {
8119
8165
  throw new Error('you can only provide one of: position, floating as arguments to .addPanel(...)');
8120
8166
  }
8167
+ const initial = {
8168
+ width: options.initialWidth,
8169
+ height: options.initialHeight,
8170
+ };
8121
8171
  if (options.position) {
8122
8172
  if (isPanelOptionsWithPanel(options.position)) {
8123
8173
  const referencePanel = typeof options.position.referencePanel === 'string'
@@ -8147,6 +8197,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
8147
8197
  if (!options.inactive) {
8148
8198
  this.doSetGroupAndPanelActive(group);
8149
8199
  }
8200
+ group.api.setSize({
8201
+ height: initial === null || initial === void 0 ? void 0 : initial.height,
8202
+ width: initial === null || initial === void 0 ? void 0 : initial.width,
8203
+ });
8150
8204
  return panel;
8151
8205
  }
8152
8206
  }
@@ -8177,6 +8231,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
8177
8231
  skipSetActive: options.inactive,
8178
8232
  skipSetGroupActive: options.inactive,
8179
8233
  });
8234
+ referenceGroup.api.setSize({
8235
+ width: initial === null || initial === void 0 ? void 0 : initial.width,
8236
+ height: initial === null || initial === void 0 ? void 0 : initial.height,
8237
+ });
8180
8238
  if (!options.inactive) {
8181
8239
  this.doSetGroupAndPanelActive(referenceGroup);
8182
8240
  }
@@ -8184,7 +8242,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
8184
8242
  else {
8185
8243
  const location = getGridLocation(referenceGroup.element);
8186
8244
  const relativeLocation = getRelativeLocation(this.gridview.orientation, location, target);
8187
- const group = this.createGroupAtLocation(relativeLocation);
8245
+ const group = this.createGroupAtLocation(relativeLocation, this.orientationAtLocation(relativeLocation) ===
8246
+ exports.Orientation.VERTICAL
8247
+ ? initial === null || initial === void 0 ? void 0 : initial.height
8248
+ : initial === null || initial === void 0 ? void 0 : initial.width);
8188
8249
  panel = this.createPanel(options, group);
8189
8250
  group.model.openPanel(panel, {
8190
8251
  skipSetActive: options.inactive,
@@ -8210,7 +8271,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
8210
8271
  });
8211
8272
  }
8212
8273
  else {
8213
- const group = this.createGroupAtLocation();
8274
+ const group = this.createGroupAtLocation([0], this.gridview.orientation === exports.Orientation.VERTICAL
8275
+ ? initial === null || initial === void 0 ? void 0 : initial.height
8276
+ : initial === null || initial === void 0 ? void 0 : initial.width);
8214
8277
  panel = this.createPanel(options, group);
8215
8278
  group.model.openPanel(panel, {
8216
8279
  skipSetActive: options.inactive,
@@ -8304,7 +8367,11 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
8304
8367
  const location = getGridLocation(referenceGroup.element);
8305
8368
  const relativeLocation = getRelativeLocation(this.gridview.orientation, location, target);
8306
8369
  const group = this.createGroup(options);
8307
- this.doAddGroup(group, relativeLocation);
8370
+ const size = this.getLocationOrientation(relativeLocation) ===
8371
+ exports.Orientation.VERTICAL
8372
+ ? options.initialHeight
8373
+ : options.initialWidth;
8374
+ this.doAddGroup(group, relativeLocation, size);
8308
8375
  if (!options.skipSetActive) {
8309
8376
  this.doSetGroupAndPanelActive(group);
8310
8377
  }
@@ -8317,6 +8384,12 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
8317
8384
  return group;
8318
8385
  }
8319
8386
  }
8387
+ getLocationOrientation(location) {
8388
+ return location.length % 2 == 0 &&
8389
+ this.gridview.orientation === exports.Orientation.HORIZONTAL
8390
+ ? exports.Orientation.HORIZONTAL
8391
+ : exports.Orientation.VERTICAL;
8392
+ }
8320
8393
  removeGroup(group, options) {
8321
8394
  this.doRemoveGroup(group, options);
8322
8395
  }
@@ -8588,7 +8661,22 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
8588
8661
  }
8589
8662
  const referenceLocation = getGridLocation(to.element);
8590
8663
  const dropLocation = getRelativeLocation(this.gridview.orientation, referenceLocation, target);
8591
- this.gridview.addView(from, exports.Sizing.Distribute, dropLocation);
8664
+ let size;
8665
+ switch (this.gridview.orientation) {
8666
+ case exports.Orientation.VERTICAL:
8667
+ size =
8668
+ referenceLocation.length % 2 == 0
8669
+ ? from.api.width
8670
+ : from.api.height;
8671
+ break;
8672
+ case exports.Orientation.HORIZONTAL:
8673
+ size =
8674
+ referenceLocation.length % 2 == 0
8675
+ ? from.api.height
8676
+ : from.api.width;
8677
+ break;
8678
+ }
8679
+ this.gridview.addView(from, size, dropLocation);
8592
8680
  }
8593
8681
  from.panels.forEach((panel) => {
8594
8682
  this._onDidMovePanel.fire({ panel, from });
@@ -8700,22 +8788,34 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
8700
8788
  const contentComponent = options.component;
8701
8789
  const tabComponent = (_a = options.tabComponent) !== null && _a !== void 0 ? _a : this.options.defaultTabComponent;
8702
8790
  const view = new DockviewPanelModel(this, options.id, contentComponent, tabComponent);
8703
- const panel = new DockviewPanel(options.id, contentComponent, tabComponent, this, this._api, group, view, { renderer: options.renderer });
8791
+ const panel = new DockviewPanel(options.id, contentComponent, tabComponent, this, this._api, group, view, {
8792
+ renderer: options.renderer,
8793
+ minimumWidth: options.minimumWidth,
8794
+ minimumHeight: options.minimumHeight,
8795
+ maximumWidth: options.maximumWidth,
8796
+ maximumHeight: options.maximumHeight,
8797
+ });
8704
8798
  panel.init({
8705
8799
  title: (_b = options.title) !== null && _b !== void 0 ? _b : options.id,
8706
8800
  params: (_c = options === null || options === void 0 ? void 0 : options.params) !== null && _c !== void 0 ? _c : {},
8707
8801
  });
8708
8802
  return panel;
8709
8803
  }
8710
- createGroupAtLocation(location = [0]) {
8804
+ createGroupAtLocation(location, size) {
8711
8805
  const group = this.createGroup();
8712
- this.doAddGroup(group, location);
8806
+ this.doAddGroup(group, location, size);
8713
8807
  return group;
8714
8808
  }
8715
8809
  findGroup(panel) {
8716
8810
  var _a;
8717
8811
  return (_a = Array.from(this._groups.values()).find((group) => group.value.model.containsPanel(panel))) === null || _a === void 0 ? void 0 : _a.value;
8718
8812
  }
8813
+ orientationAtLocation(location) {
8814
+ const rootOrientation = this.gridview.orientation;
8815
+ return location.length % 2 == 1
8816
+ ? rootOrientation
8817
+ : orthogonal(rootOrientation);
8818
+ }
8719
8819
  }
8720
8820
 
8721
8821
  class GridviewComponent extends BaseGrid {
@@ -8735,8 +8835,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
8735
8835
  this._deserializer = value;
8736
8836
  }
8737
8837
  constructor(parentElement, options) {
8738
- super({
8739
- parentElement: parentElement,
8838
+ super(parentElement, {
8740
8839
  proportionalLayout: options.proportionalLayout,
8741
8840
  orientation: options.orientation,
8742
8841
  styles: options.styles,
@@ -9035,7 +9134,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
9035
9134
  : this.splitview.orthogonalSize;
9036
9135
  }
9037
9136
  constructor(parentElement, options) {
9038
- var _a, _b;
9137
+ var _a;
9039
9138
  super(parentElement, options.disableAutoResizing);
9040
9139
  this._splitviewChangeDisposable = new MutableDisposable();
9041
9140
  this._panels = new Map();
@@ -9047,11 +9146,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
9047
9146
  this.onDidRemoveView = this._onDidRemoveView.event;
9048
9147
  this._onDidLayoutChange = new Emitter();
9049
9148
  this.onDidLayoutChange = this._onDidLayoutChange.event;
9050
- this.classNames = [];
9051
- this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
9052
- for (const className of this.classNames) {
9053
- toggleClass(this.element, className, true);
9054
- }
9149
+ this._classNames = new Classnames(this.element);
9150
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9055
9151
  this._options = options;
9056
9152
  if (!options.components) {
9057
9153
  options.components = {};
@@ -9065,20 +9161,15 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
9065
9161
  updateOptions(options) {
9066
9162
  var _a, _b;
9067
9163
  if ('className' in options) {
9068
- for (const className of this.classNames) {
9069
- toggleClass(this.element, className, false);
9070
- }
9071
- this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
9072
- for (const className of this.classNames) {
9073
- toggleClass(this.element, className, true);
9074
- }
9164
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9075
9165
  }
9076
- const hasOrientationChanged = typeof options.orientation === 'string' &&
9077
- this.options.orientation !== options.orientation;
9078
- this._options = Object.assign(Object.assign({}, this.options), options);
9079
- if (hasOrientationChanged) {
9166
+ if ('disableResizing' in options) {
9167
+ this.disableResizing = (_b = options.disableAutoResizing) !== null && _b !== void 0 ? _b : false;
9168
+ }
9169
+ if (typeof options.orientation === 'string') {
9080
9170
  this.splitview.orientation = options.orientation;
9081
9171
  }
9172
+ this._options = Object.assign(Object.assign({}, this.options), options);
9082
9173
  this.splitview.layout(this.splitview.size, this.splitview.orthogonalSize);
9083
9174
  }
9084
9175
  focus() {
@@ -9375,7 +9466,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
9375
9466
  return this._options;
9376
9467
  }
9377
9468
  constructor(parentElement, options) {
9378
- var _a, _b;
9469
+ var _a;
9379
9470
  super(parentElement, options.disableAutoResizing);
9380
9471
  this._id = nextLayoutId.next();
9381
9472
  this._disposable = new MutableDisposable();
@@ -9390,12 +9481,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
9390
9481
  this.onDidAddView = this._onDidAddView.event;
9391
9482
  this._onDidRemoveView = new Emitter();
9392
9483
  this.onDidRemoveView = this._onDidRemoveView.event;
9393
- this.classNames = [];
9394
9484
  this.addDisposables(this._onDidLayoutChange, this._onDidLayoutfromJSON, this._onDidDrop, this._onDidAddView, this._onDidRemoveView);
9395
- this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
9396
- for (const className of this.classNames) {
9397
- toggleClass(this.element, className, true);
9398
- }
9485
+ this._classNames = new Classnames(this.element);
9486
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9399
9487
  this._options = options;
9400
9488
  if (!options.components) {
9401
9489
  options.components = {};
@@ -9419,13 +9507,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
9419
9507
  updateOptions(options) {
9420
9508
  var _a, _b;
9421
9509
  if ('className' in options) {
9422
- for (const className of this.classNames) {
9423
- toggleClass(this.element, className, false);
9424
- }
9425
- this.classNames = (_b = (_a = options.className) === null || _a === void 0 ? void 0 : _a.split(' ')) !== null && _b !== void 0 ? _b : [];
9426
- for (const className of this.classNames) {
9427
- toggleClass(this.element, className, true);
9428
- }
9510
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9511
+ }
9512
+ if ('disableResizing' in options) {
9513
+ this.disableResizing = (_b = options.disableAutoResizing) !== null && _b !== void 0 ? _b : false;
9429
9514
  }
9430
9515
  this._options = Object.assign(Object.assign({}, this.options), options);
9431
9516
  }
@@ -9975,9 +10060,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
9975
10060
  layout(_width, _height) {
9976
10061
  // noop - retrieval from api
9977
10062
  }
9978
- updateParentGroup(_group, _isPanelVisible) {
9979
- // noop
9980
- }
9981
10063
  dispose() {
9982
10064
  var _a;
9983
10065
  (_a = this.part) === null || _a === void 0 ? void 0 : _a.dispose();
@@ -10290,7 +10372,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
10290
10372
  api.close();
10291
10373
  }
10292
10374
  }, [api, closeActionOverride]);
10293
- const onMouseDown = React.useCallback((e) => {
10375
+ const onPointerDown = React.useCallback((e) => {
10294
10376
  e.preventDefault();
10295
10377
  }, []);
10296
10378
  const onClick = React.useCallback((event) => {
@@ -10304,7 +10386,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
10304
10386
  }, [api, rest.onClick]);
10305
10387
  return (React.createElement("div", Object.assign({ "data-testid": "dockview-dv-default-tab" }, rest, { onClick: onClick, className: "dv-default-tab" }),
10306
10388
  React.createElement("span", { className: "dv-default-tab-content" }, title),
10307
- !hideClose && (React.createElement("div", { className: "dv-default-tab-action", onMouseDown: onMouseDown, onClick: onClose },
10389
+ !hideClose && (React.createElement("div", { className: "dv-default-tab-action", onPointerDown: onPointerDown, onClick: onClose },
10308
10390
  React.createElement(CloseButton, null)))));
10309
10391
  };
10310
10392