dockview-core 1.16.0 → 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.
Files changed (84) hide show
  1. package/dist/cjs/api/component.api.d.ts +6 -4
  2. package/dist/cjs/dnd/groupDragHandler.js +1 -1
  3. package/dist/cjs/dockview/components/tab/defaultTab.js +2 -2
  4. package/dist/cjs/dockview/components/tab/tab.js +1 -1
  5. package/dist/cjs/dockview/components/titlebar/tabsContainer.js +2 -2
  6. package/dist/cjs/dockview/components/watermark/watermark.d.ts +0 -7
  7. package/dist/cjs/dockview/components/watermark/watermark.js +3 -18
  8. package/dist/cjs/dockview/deserializer.js +4 -0
  9. package/dist/cjs/dockview/dockviewComponent.d.ts +2 -0
  10. package/dist/cjs/dockview/dockviewComponent.js +77 -58
  11. package/dist/cjs/dockview/dockviewGroupPanel.d.ts +4 -0
  12. package/dist/cjs/dockview/dockviewGroupPanel.js +49 -2
  13. package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +4 -0
  14. package/dist/cjs/dockview/dockviewGroupPanelModel.js +0 -1
  15. package/dist/cjs/dockview/dockviewPanel.d.ts +14 -1
  16. package/dist/cjs/dockview/dockviewPanel.js +36 -0
  17. package/dist/cjs/dockview/options.d.ts +16 -9
  18. package/dist/cjs/dockview/types.d.ts +5 -2
  19. package/dist/cjs/dom.d.ts +7 -0
  20. package/dist/cjs/dom.js +63 -1
  21. package/dist/cjs/gridview/baseComponentGridview.d.ts +3 -2
  22. package/dist/cjs/gridview/baseComponentGridview.js +30 -5
  23. package/dist/cjs/gridview/gridviewComponent.d.ts +2 -3
  24. package/dist/cjs/gridview/gridviewComponent.js +2 -2
  25. package/dist/cjs/gridview/gridviewPanel.d.ts +6 -0
  26. package/dist/cjs/overlay/overlay.js +6 -6
  27. package/dist/cjs/paneview/paneviewComponent.d.ts +1 -0
  28. package/dist/cjs/paneview/paneviewComponent.js +11 -3
  29. package/dist/cjs/splitview/splitviewComponent.d.ts +4 -4
  30. package/dist/cjs/splitview/splitviewComponent.js +13 -7
  31. package/dist/dockview-core.amd.js +231 -103
  32. package/dist/dockview-core.amd.js.map +1 -1
  33. package/dist/dockview-core.amd.min.js +2 -2
  34. package/dist/dockview-core.amd.min.js.map +1 -1
  35. package/dist/dockview-core.amd.min.noStyle.js +2 -2
  36. package/dist/dockview-core.amd.min.noStyle.js.map +1 -1
  37. package/dist/dockview-core.amd.noStyle.js +230 -102
  38. package/dist/dockview-core.amd.noStyle.js.map +1 -1
  39. package/dist/dockview-core.cjs.js +231 -103
  40. package/dist/dockview-core.cjs.js.map +1 -1
  41. package/dist/dockview-core.esm.js +231 -103
  42. package/dist/dockview-core.esm.js.map +1 -1
  43. package/dist/dockview-core.esm.min.js +2 -2
  44. package/dist/dockview-core.esm.min.js.map +1 -1
  45. package/dist/dockview-core.js +231 -103
  46. package/dist/dockview-core.js.map +1 -1
  47. package/dist/dockview-core.min.js +2 -2
  48. package/dist/dockview-core.min.js.map +1 -1
  49. package/dist/dockview-core.min.noStyle.js +2 -2
  50. package/dist/dockview-core.min.noStyle.js.map +1 -1
  51. package/dist/dockview-core.noStyle.js +230 -102
  52. package/dist/dockview-core.noStyle.js.map +1 -1
  53. package/dist/esm/api/component.api.d.ts +6 -4
  54. package/dist/esm/dnd/groupDragHandler.js +1 -1
  55. package/dist/esm/dockview/components/tab/defaultTab.js +2 -2
  56. package/dist/esm/dockview/components/tab/tab.js +1 -1
  57. package/dist/esm/dockview/components/titlebar/tabsContainer.js +2 -2
  58. package/dist/esm/dockview/components/watermark/watermark.d.ts +0 -7
  59. package/dist/esm/dockview/components/watermark/watermark.js +3 -18
  60. package/dist/esm/dockview/deserializer.js +4 -0
  61. package/dist/esm/dockview/dockviewComponent.d.ts +2 -0
  62. package/dist/esm/dockview/dockviewComponent.js +76 -54
  63. package/dist/esm/dockview/dockviewGroupPanel.d.ts +4 -0
  64. package/dist/esm/dockview/dockviewGroupPanel.js +33 -2
  65. package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +4 -0
  66. package/dist/esm/dockview/dockviewGroupPanelModel.js +0 -1
  67. package/dist/esm/dockview/dockviewPanel.d.ts +14 -1
  68. package/dist/esm/dockview/dockviewPanel.js +20 -0
  69. package/dist/esm/dockview/options.d.ts +16 -9
  70. package/dist/esm/dockview/types.d.ts +5 -2
  71. package/dist/esm/dom.d.ts +7 -0
  72. package/dist/esm/dom.js +36 -0
  73. package/dist/esm/gridview/baseComponentGridview.d.ts +3 -2
  74. package/dist/esm/gridview/baseComponentGridview.js +30 -5
  75. package/dist/esm/gridview/gridviewComponent.d.ts +2 -3
  76. package/dist/esm/gridview/gridviewComponent.js +2 -2
  77. package/dist/esm/gridview/gridviewPanel.d.ts +6 -0
  78. package/dist/esm/overlay/overlay.js +6 -6
  79. package/dist/esm/paneview/paneviewComponent.d.ts +1 -0
  80. package/dist/esm/paneview/paneviewComponent.js +11 -3
  81. package/dist/esm/splitview/splitviewComponent.d.ts +4 -4
  82. package/dist/esm/splitview/splitviewComponent.js +13 -7
  83. package/dist/styles/dockview.css +1 -1
  84. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * dockview-core
3
- * @version 1.16.0
3
+ * @version 1.17.0
4
4
  * @link https://github.com/mathuo/dockview
5
5
  * @license MIT
6
6
  */
@@ -31,7 +31,7 @@ function styleInject(css, ref) {
31
31
  }
32
32
  }
33
33
 
34
- 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}";
34
+ 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}";
35
35
  styleInject(css_248z);
36
36
 
37
37
  class TransferObject {
@@ -579,6 +579,42 @@ function disableIframePointEvents() {
579
579
  },
580
580
  };
581
581
  }
582
+ function getDockviewTheme(element) {
583
+ function toClassList(element) {
584
+ const list = [];
585
+ for (let i = 0; i < element.classList.length; i++) {
586
+ list.push(element.classList.item(i));
587
+ }
588
+ return list;
589
+ }
590
+ let theme = undefined;
591
+ let parent = element;
592
+ while (parent !== null) {
593
+ theme = toClassList(parent).find((cls) => cls.startsWith('dockview-theme-'));
594
+ if (typeof theme === 'string') {
595
+ break;
596
+ }
597
+ parent = parent.parentElement;
598
+ }
599
+ return theme;
600
+ }
601
+ class Classnames {
602
+ constructor(element) {
603
+ this.element = element;
604
+ this._classNames = [];
605
+ }
606
+ setClassNames(classNames) {
607
+ for (const className of this._classNames) {
608
+ toggleClass(this.element, className, false);
609
+ }
610
+ this._classNames = classNames
611
+ .split(' ')
612
+ .filter((v) => v.trim().length > 0);
613
+ for (const className of this._classNames) {
614
+ toggleClass(this.element, className, true);
615
+ }
616
+ }
617
+ }
582
618
 
583
619
  function tail(arr) {
584
620
  if (arr.length === 0) {
@@ -2698,7 +2734,8 @@ class BaseGrid extends Resizable {
2698
2734
  set locked(value) {
2699
2735
  this.gridview.locked = value;
2700
2736
  }
2701
- constructor(options) {
2737
+ constructor(parentElement, options) {
2738
+ var _a;
2702
2739
  super(document.createElement('div'), options.disableAutoResizing);
2703
2740
  this._id = nextLayoutId$1.next();
2704
2741
  this._groups = new Map();
@@ -2714,10 +2751,9 @@ class BaseGrid extends Resizable {
2714
2751
  this.onDidViewVisibilityChangeMicroTaskQueue = this._onDidViewVisibilityChangeMicroTaskQueue.onEvent;
2715
2752
  this.element.style.height = '100%';
2716
2753
  this.element.style.width = '100%';
2717
- if (typeof options.className === 'string') {
2718
- this.element.classList.add(options.className);
2719
- }
2720
- options.parentElement.appendChild(this.element);
2754
+ this._classNames = new Classnames(this.element);
2755
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
2756
+ parentElement.appendChild(this.element);
2721
2757
  this.gridview = new Gridview(!!options.proportionalLayout, options.styles, options.orientation, options.locked, options.margin);
2722
2758
  this.gridview.locked = !!options.locked;
2723
2759
  this.element.appendChild(this.gridview.element);
@@ -2740,6 +2776,25 @@ class BaseGrid extends Resizable {
2740
2776
  isVisible(panel) {
2741
2777
  return this.gridview.isViewVisible(getGridLocation(panel.element));
2742
2778
  }
2779
+ updateOptions(options) {
2780
+ var _a, _b, _c, _d;
2781
+ if (typeof options.proportionalLayout === 'boolean') ;
2782
+ if (options.orientation) {
2783
+ this.gridview.orientation = options.orientation;
2784
+ }
2785
+ if ('disableResizing' in options) {
2786
+ this.disableResizing = (_a = options.disableAutoResizing) !== null && _a !== void 0 ? _a : false;
2787
+ }
2788
+ if ('locked' in options) {
2789
+ this.locked = (_b = options.locked) !== null && _b !== void 0 ? _b : false;
2790
+ }
2791
+ if ('margin' in options) {
2792
+ this.gridview.margin = (_c = options.margin) !== null && _c !== void 0 ? _c : 0;
2793
+ }
2794
+ if ('className' in options) {
2795
+ this._classNames.setClassNames((_d = options.className) !== null && _d !== void 0 ? _d : '');
2796
+ }
2797
+ }
2743
2798
  maximizeGroup(panel) {
2744
2799
  this.gridview.maximizeView(panel);
2745
2800
  this.doSetGroupActive(panel);
@@ -4663,7 +4718,7 @@ class Tab extends CompositeDisposable {
4663
4718
  this.onWillShowOverlay = this.dropTarget.onWillShowOverlay;
4664
4719
  this.addDisposables(this._onChanged, this._onDropped, this._onDragStart, dragHandler.onDragStart((event) => {
4665
4720
  this._onDragStart.fire(event);
4666
- }), dragHandler, addDisposableListener(this._element, 'mousedown', (event) => {
4721
+ }), dragHandler, addDisposableListener(this._element, 'pointerdown', (event) => {
4667
4722
  if (event.defaultPrevented) {
4668
4723
  return;
4669
4724
  }
@@ -4705,7 +4760,7 @@ class GroupDragHandler extends DragHandler {
4705
4760
  this.accessor = accessor;
4706
4761
  this.group = group;
4707
4762
  this.panelTransfer = LocalSelectionTransfer.getInstance();
4708
- this.addDisposables(addDisposableListener(element, 'mousedown', (e) => {
4763
+ this.addDisposables(addDisposableListener(element, 'pointerdown', (e) => {
4709
4764
  if (e.shiftKey) {
4710
4765
  /**
4711
4766
  * You cannot call e.preventDefault() because that will prevent drag events from firing
@@ -4924,7 +4979,7 @@ class TabsContainer extends CompositeDisposable {
4924
4979
  group: this.group,
4925
4980
  getData: getPanelData,
4926
4981
  }));
4927
- }), addDisposableListener(this.voidContainer.element, 'mousedown', (event) => {
4982
+ }), addDisposableListener(this.voidContainer.element, 'pointerdown', (event) => {
4928
4983
  const isFloatingGroupsEnabled = !this.accessor.options.disableFloatingGroups;
4929
4984
  if (isFloatingGroupsEnabled &&
4930
4985
  event.shiftKey &&
@@ -4938,7 +4993,7 @@ class TabsContainer extends CompositeDisposable {
4938
4993
  inDragMode: true,
4939
4994
  });
4940
4995
  }
4941
- }), addDisposableListener(this.tabContainer, 'mousedown', (event) => {
4996
+ }), addDisposableListener(this.tabContainer, 'pointerdown', (event) => {
4942
4997
  if (event.defaultPrevented) {
4943
4998
  return;
4944
4999
  }
@@ -5643,7 +5698,6 @@ class DockviewGroupPanelModel extends CompositeDisposable {
5643
5698
  });
5644
5699
  this.tabsContainer.hide();
5645
5700
  this.contentContainer.element.appendChild(this.watermark.element);
5646
- this.watermark.updateParentGroup(this.groupPanel, true);
5647
5701
  }
5648
5702
  if (!this.isEmpty && this.watermark) {
5649
5703
  this.watermark.element.remove();
@@ -6006,6 +6060,34 @@ class DockviewGroupPanelApiImpl extends GridviewPanelApiImpl {
6006
6060
  const MINIMUM_DOCKVIEW_GROUP_PANEL_WIDTH = 100;
6007
6061
  const MINIMUM_DOCKVIEW_GROUP_PANEL_HEIGHT = 100;
6008
6062
  class DockviewGroupPanel extends GridviewPanel {
6063
+ get minimumWidth() {
6064
+ var _a;
6065
+ const activePanelMinimumWidth = (_a = this.activePanel) === null || _a === void 0 ? void 0 : _a.minimumWidth;
6066
+ return typeof activePanelMinimumWidth === 'number'
6067
+ ? activePanelMinimumWidth
6068
+ : MINIMUM_DOCKVIEW_GROUP_PANEL_WIDTH;
6069
+ }
6070
+ get minimumHeight() {
6071
+ var _a;
6072
+ const activePanelMinimumHeight = (_a = this.activePanel) === null || _a === void 0 ? void 0 : _a.minimumHeight;
6073
+ return typeof activePanelMinimumHeight === 'number'
6074
+ ? activePanelMinimumHeight
6075
+ : MINIMUM_DOCKVIEW_GROUP_PANEL_HEIGHT;
6076
+ }
6077
+ get maximumWidth() {
6078
+ var _a;
6079
+ const activePanelMaximumWidth = (_a = this.activePanel) === null || _a === void 0 ? void 0 : _a.maximumWidth;
6080
+ return typeof activePanelMaximumWidth === 'number'
6081
+ ? activePanelMaximumWidth
6082
+ : Number.MAX_SAFE_INTEGER;
6083
+ }
6084
+ get maximumHeight() {
6085
+ var _a;
6086
+ const activePanelMaximumHeight = (_a = this.activePanel) === null || _a === void 0 ? void 0 : _a.maximumHeight;
6087
+ return typeof activePanelMaximumHeight === 'number'
6088
+ ? activePanelMaximumHeight
6089
+ : Number.MAX_SAFE_INTEGER;
6090
+ }
6009
6091
  get panels() {
6010
6092
  return this._model.panels;
6011
6093
  }
@@ -6028,9 +6110,12 @@ class DockviewGroupPanel extends GridviewPanel {
6028
6110
  return this._model.header;
6029
6111
  }
6030
6112
  constructor(accessor, id, options) {
6113
+ var _a, _b, _c, _d, _e, _f;
6031
6114
  super(id, 'groupview_default', {
6032
- minimumHeight: MINIMUM_DOCKVIEW_GROUP_PANEL_HEIGHT,
6033
- minimumWidth: MINIMUM_DOCKVIEW_GROUP_PANEL_WIDTH,
6115
+ minimumHeight: (_b = (_a = options.constraints) === null || _a === void 0 ? void 0 : _a.minimumHeight) !== null && _b !== void 0 ? _b : MINIMUM_DOCKVIEW_GROUP_PANEL_HEIGHT,
6116
+ minimumWidth: (_d = (_c = options.constraints) === null || _c === void 0 ? void 0 : _c.maximumHeight) !== null && _d !== void 0 ? _d : MINIMUM_DOCKVIEW_GROUP_PANEL_WIDTH,
6117
+ maximumHeight: (_e = options.constraints) === null || _e === void 0 ? void 0 : _e.maximumHeight,
6118
+ maximumWidth: (_f = options.constraints) === null || _f === void 0 ? void 0 : _f.maximumWidth,
6034
6119
  }, new DockviewGroupPanelApiImpl(id, accessor));
6035
6120
  this.api.initialize(this); // cannot use 'this' after after 'super' call
6036
6121
  this._model = new DockviewGroupPanelModel(this.element, accessor, id, options, this);
@@ -6186,6 +6271,18 @@ class DockviewPanel extends CompositeDisposable {
6186
6271
  var _a;
6187
6272
  return (_a = this._renderer) !== null && _a !== void 0 ? _a : this.accessor.renderer;
6188
6273
  }
6274
+ get minimumWidth() {
6275
+ return this._minimumWidth;
6276
+ }
6277
+ get minimumHeight() {
6278
+ return this._minimumHeight;
6279
+ }
6280
+ get maximumWidth() {
6281
+ return this._maximumWidth;
6282
+ }
6283
+ get maximumHeight() {
6284
+ return this._maximumHeight;
6285
+ }
6189
6286
  constructor(id, component, tabComponent, accessor, containerApi, group, view, options) {
6190
6287
  super();
6191
6288
  this.id = id;
@@ -6194,6 +6291,10 @@ class DockviewPanel extends CompositeDisposable {
6194
6291
  this.view = view;
6195
6292
  this._renderer = options.renderer;
6196
6293
  this._group = group;
6294
+ this._minimumWidth = options.minimumWidth;
6295
+ this._minimumHeight = options.minimumHeight;
6296
+ this._maximumWidth = options.maximumWidth;
6297
+ this._maximumHeight = options.maximumHeight;
6197
6298
  this.api = new DockviewPanelApiImpl(this, this._group, accessor, component, tabComponent);
6198
6299
  this.addDisposables(this.api.onActiveChange(() => {
6199
6300
  accessor.setActivePanel(this);
@@ -6230,6 +6331,10 @@ class DockviewPanel extends CompositeDisposable {
6230
6331
  : undefined,
6231
6332
  title: this.title,
6232
6333
  renderer: this._renderer,
6334
+ minimumHeight: this._minimumHeight,
6335
+ maximumHeight: this._maximumHeight,
6336
+ minimumWidth: this._minimumWidth,
6337
+ maximumWidth: this._maximumWidth,
6233
6338
  };
6234
6339
  }
6235
6340
  setTitle(title) {
@@ -6359,7 +6464,7 @@ class DefaultTab extends CompositeDisposable {
6359
6464
  this.action.appendChild(createCloseButton());
6360
6465
  this._element.appendChild(this._content);
6361
6466
  this._element.appendChild(this.action);
6362
- this.addDisposables(addDisposableListener(this.action, 'mousedown', (ev) => {
6467
+ this.addDisposables(addDisposableListener(this.action, 'pointerdown', (ev) => {
6363
6468
  ev.preventDefault();
6364
6469
  }));
6365
6470
  this.render();
@@ -6369,7 +6474,7 @@ class DefaultTab extends CompositeDisposable {
6369
6474
  this.addDisposables(params.api.onDidTitleChange((event) => {
6370
6475
  this._title = event.title;
6371
6476
  this.render();
6372
- }), addDisposableListener(this.action, 'mousedown', (ev) => {
6477
+ }), addDisposableListener(this.action, 'pointerdown', (ev) => {
6373
6478
  ev.preventDefault();
6374
6479
  }), addDisposableListener(this.action, 'click', (ev) => {
6375
6480
  if (ev.defaultPrevented) {
@@ -6470,6 +6575,10 @@ class DefaultDockviewDeserialzier {
6470
6575
  const view = new DockviewPanelModel(this.accessor, panelId, contentComponent, tabComponent);
6471
6576
  const panel = new DockviewPanel(panelId, contentComponent, tabComponent, this.accessor, new DockviewApi(this.accessor), group, view, {
6472
6577
  renderer: panelData.renderer,
6578
+ minimumWidth: panelData.minimumWidth,
6579
+ minimumHeight: panelData.minimumHeight,
6580
+ maximumWidth: panelData.maximumWidth,
6581
+ maximumHeight: panelData.maximumHeight,
6473
6582
  });
6474
6583
  panel.init({
6475
6584
  title: title !== null && title !== void 0 ? title : panelId,
@@ -6503,34 +6612,19 @@ class Watermark extends CompositeDisposable {
6503
6612
  actionsContainer.appendChild(closeAnchor);
6504
6613
  title.appendChild(emptySpace);
6505
6614
  title.appendChild(actionsContainer);
6506
- this.addDisposables(addDisposableListener(closeAnchor, 'click', (ev) => {
6615
+ this.addDisposables(addDisposableListener(closeAnchor, 'click', (event) => {
6507
6616
  var _a;
6508
- ev.preventDefault();
6617
+ event.preventDefault();
6509
6618
  if (this._group) {
6510
6619
  (_a = this._api) === null || _a === void 0 ? void 0 : _a.removeGroup(this._group);
6511
6620
  }
6512
6621
  }));
6513
6622
  }
6514
- update(_event) {
6515
- // noop
6516
- }
6517
- focus() {
6518
- // noop
6519
- }
6520
- layout(_width, _height) {
6521
- // noop
6522
- }
6523
6623
  init(_params) {
6524
6624
  this._api = _params.containerApi;
6625
+ this._group = _params.group;
6525
6626
  this.render();
6526
6627
  }
6527
- updateParentGroup(group, _visible) {
6528
- this._group = group;
6529
- this.render();
6530
- }
6531
- dispose() {
6532
- super.dispose();
6533
- }
6534
6628
  render() {
6535
6629
  const isOneGroup = !!(this._api && this._api.size <= 1);
6536
6630
  toggleClass(this.element, 'has-actions', isOneGroup);
@@ -6689,7 +6783,7 @@ class Overlay extends CompositeDisposable {
6689
6783
  dispose: () => {
6690
6784
  iframes.release();
6691
6785
  },
6692
- }, addDisposableWindowListener(window, 'mousemove', (e) => {
6786
+ }, addDisposableWindowListener(window, 'pointermove', (e) => {
6693
6787
  const containerRect = this.options.container.getBoundingClientRect();
6694
6788
  const x = e.clientX - containerRect.left;
6695
6789
  const y = e.clientY - containerRect.top;
@@ -6732,7 +6826,7 @@ class Overlay extends CompositeDisposable {
6732
6826
  this._onDidChangeEnd.fire();
6733
6827
  }));
6734
6828
  };
6735
- this.addDisposables(move, addDisposableListener(dragTarget, 'mousedown', (event) => {
6829
+ this.addDisposables(move, addDisposableListener(dragTarget, 'pointerdown', (event) => {
6736
6830
  if (event.defaultPrevented) {
6737
6831
  event.preventDefault();
6738
6832
  return;
@@ -6743,7 +6837,7 @@ class Overlay extends CompositeDisposable {
6743
6837
  return;
6744
6838
  }
6745
6839
  track();
6746
- }), addDisposableListener(this.options.content, 'mousedown', (event) => {
6840
+ }), addDisposableListener(this.options.content, 'pointerdown', (event) => {
6747
6841
  if (event.defaultPrevented) {
6748
6842
  return;
6749
6843
  }
@@ -6755,7 +6849,7 @@ class Overlay extends CompositeDisposable {
6755
6849
  if (event.shiftKey) {
6756
6850
  track();
6757
6851
  }
6758
- }), addDisposableListener(this.options.content, 'mousedown', () => {
6852
+ }), addDisposableListener(this.options.content, 'pointerdown', () => {
6759
6853
  arialLevelTracker.push(this._element);
6760
6854
  }, true));
6761
6855
  if (options.inDragMode) {
@@ -6767,11 +6861,11 @@ class Overlay extends CompositeDisposable {
6767
6861
  resizeHandleElement.className = `dv-resize-handle-${direction}`;
6768
6862
  this._element.appendChild(resizeHandleElement);
6769
6863
  const move = new MutableDisposable();
6770
- this.addDisposables(move, addDisposableListener(resizeHandleElement, 'mousedown', (e) => {
6864
+ this.addDisposables(move, addDisposableListener(resizeHandleElement, 'pointerdown', (e) => {
6771
6865
  e.preventDefault();
6772
6866
  let startPosition = null;
6773
6867
  const iframes = disableIframePointEvents();
6774
- move.value = new CompositeDisposable(addDisposableWindowListener(window, 'mousemove', (e) => {
6868
+ move.value = new CompositeDisposable(addDisposableWindowListener(window, 'pointermove', (e) => {
6775
6869
  const containerRect = this.options.container.getBoundingClientRect();
6776
6870
  const overlayRect = this._element.getBoundingClientRect();
6777
6871
  const y = e.clientY - containerRect.top;
@@ -7276,25 +7370,6 @@ function moveGroupWithoutDestroying(options) {
7276
7370
  });
7277
7371
  });
7278
7372
  }
7279
- function getDockviewTheme(element) {
7280
- function toClassList(element) {
7281
- const list = [];
7282
- for (let i = 0; i < element.classList.length; i++) {
7283
- list.push(element.classList.item(i));
7284
- }
7285
- return list;
7286
- }
7287
- let theme = undefined;
7288
- let parent = element;
7289
- while (parent !== null) {
7290
- theme = toClassList(parent).find((cls) => cls.startsWith('dockview-theme-'));
7291
- if (typeof theme === 'string') {
7292
- break;
7293
- }
7294
- parent = parent.parentElement;
7295
- }
7296
- return theme;
7297
- }
7298
7373
  class DockviewComponent extends BaseGrid {
7299
7374
  get orientation() {
7300
7375
  return this.gridview.orientation;
@@ -7330,13 +7405,12 @@ class DockviewComponent extends BaseGrid {
7330
7405
  }
7331
7406
  constructor(parentElement, options) {
7332
7407
  var _a;
7333
- super({
7408
+ super(parentElement, {
7334
7409
  proportionalLayout: true,
7335
7410
  orientation: Orientation.HORIZONTAL,
7336
7411
  styles: options.hideBorders
7337
7412
  ? { separatorBorder: 'transparent' }
7338
7413
  : undefined,
7339
- parentElement: parentElement,
7340
7414
  disableAutoResizing: options.disableAutoResizing,
7341
7415
  locked: options.locked,
7342
7416
  margin: options.gap,
@@ -7376,9 +7450,6 @@ class DockviewComponent extends BaseGrid {
7376
7450
  this._onDidActiveGroupChange = new Emitter();
7377
7451
  this.onDidActiveGroupChange = this._onDidActiveGroupChange.event;
7378
7452
  this._moving = false;
7379
- // const gready = document.createElement('div');
7380
- // gready.className = 'dv-overlay-render-container';
7381
- // this.gridview.element.appendChild(gready);
7382
7453
  this.overlayRenderContainer = new OverlayRenderContainer(this.gridview.element, this);
7383
7454
  toggleClass(this.gridview.element, 'dv-dockview', true);
7384
7455
  toggleClass(this.element, 'dv-debug', !!options.debug);
@@ -7827,15 +7898,11 @@ class DockviewComponent extends BaseGrid {
7827
7898
  }
7828
7899
  }
7829
7900
  updateOptions(options) {
7830
- var _a, _b;
7831
- const changed_floatingGroupBounds = 'floatingGroupBounds' in options &&
7832
- options.floatingGroupBounds !== this.options.floatingGroupBounds;
7833
- const changed_rootOverlayOptions = 'rootOverlayModel' in options &&
7834
- options.rootOverlayModel !== this.options.rootOverlayModel;
7835
- this._options = Object.assign(Object.assign({}, this.options), options);
7836
- if (changed_floatingGroupBounds) {
7901
+ var _a, _b, _c, _d;
7902
+ super.updateOptions(options);
7903
+ if ('floatingGroupBounds' in options) {
7837
7904
  for (const group of this._floatingGroups) {
7838
- switch (this.options.floatingGroupBounds) {
7905
+ switch (options.floatingGroupBounds) {
7839
7906
  case 'boundedWithinViewport':
7840
7907
  group.overlay.minimumInViewportHeight = undefined;
7841
7908
  group.overlay.minimumInViewportWidth = undefined;
@@ -7848,25 +7915,20 @@ class DockviewComponent extends BaseGrid {
7848
7915
  break;
7849
7916
  default:
7850
7917
  group.overlay.minimumInViewportHeight =
7851
- (_a = this.options.floatingGroupBounds) === null || _a === void 0 ? void 0 : _a.minimumHeightWithinViewport;
7918
+ (_a = options.floatingGroupBounds) === null || _a === void 0 ? void 0 : _a.minimumHeightWithinViewport;
7852
7919
  group.overlay.minimumInViewportWidth =
7853
- (_b = this.options.floatingGroupBounds) === null || _b === void 0 ? void 0 : _b.minimumWidthWithinViewport;
7920
+ (_b = options.floatingGroupBounds) === null || _b === void 0 ? void 0 : _b.minimumWidthWithinViewport;
7854
7921
  }
7855
7922
  group.overlay.setBounds();
7856
7923
  }
7857
7924
  }
7858
- if (changed_rootOverlayOptions) {
7859
- this._rootDropTarget.setOverlayModel(options.rootOverlayModel);
7925
+ if ('rootOverlayModel' in options) {
7926
+ this._rootDropTarget.setOverlayModel((_c = options.rootOverlayModel) !== null && _c !== void 0 ? _c : DEFAULT_ROOT_OVERLAY_MODEL);
7860
7927
  }
7861
- if (
7862
- // if explicitly set as `undefined`
7863
- 'gap' in options &&
7864
- options.gap === undefined) {
7865
- this.gridview.margin = 0;
7866
- }
7867
- if (typeof options.gap === 'number') {
7868
- this.gridview.margin = options.gap;
7928
+ if ('gap' in options) {
7929
+ this.gridview.margin = (_d = options.gap) !== null && _d !== void 0 ? _d : 0;
7869
7930
  }
7931
+ this._options = Object.assign(Object.assign({}, this.options), options);
7870
7932
  this.layout(this.gridview.width, this.gridview.height, true);
7871
7933
  }
7872
7934
  layout(width, height, forceResize) {
@@ -8123,6 +8185,10 @@ class DockviewComponent extends BaseGrid {
8123
8185
  if (options.position && options.floating) {
8124
8186
  throw new Error('you can only provide one of: position, floating as arguments to .addPanel(...)');
8125
8187
  }
8188
+ const initial = {
8189
+ width: options.initialWidth,
8190
+ height: options.initialHeight,
8191
+ };
8126
8192
  if (options.position) {
8127
8193
  if (isPanelOptionsWithPanel(options.position)) {
8128
8194
  const referencePanel = typeof options.position.referencePanel === 'string'
@@ -8152,6 +8218,10 @@ class DockviewComponent extends BaseGrid {
8152
8218
  if (!options.inactive) {
8153
8219
  this.doSetGroupAndPanelActive(group);
8154
8220
  }
8221
+ group.api.setSize({
8222
+ height: initial === null || initial === void 0 ? void 0 : initial.height,
8223
+ width: initial === null || initial === void 0 ? void 0 : initial.width,
8224
+ });
8155
8225
  return panel;
8156
8226
  }
8157
8227
  }
@@ -8182,6 +8252,10 @@ class DockviewComponent extends BaseGrid {
8182
8252
  skipSetActive: options.inactive,
8183
8253
  skipSetGroupActive: options.inactive,
8184
8254
  });
8255
+ referenceGroup.api.setSize({
8256
+ width: initial === null || initial === void 0 ? void 0 : initial.width,
8257
+ height: initial === null || initial === void 0 ? void 0 : initial.height,
8258
+ });
8185
8259
  if (!options.inactive) {
8186
8260
  this.doSetGroupAndPanelActive(referenceGroup);
8187
8261
  }
@@ -8189,7 +8263,10 @@ class DockviewComponent extends BaseGrid {
8189
8263
  else {
8190
8264
  const location = getGridLocation(referenceGroup.element);
8191
8265
  const relativeLocation = getRelativeLocation(this.gridview.orientation, location, target);
8192
- const group = this.createGroupAtLocation(relativeLocation);
8266
+ const group = this.createGroupAtLocation(relativeLocation, this.orientationAtLocation(relativeLocation) ===
8267
+ Orientation.VERTICAL
8268
+ ? initial === null || initial === void 0 ? void 0 : initial.height
8269
+ : initial === null || initial === void 0 ? void 0 : initial.width);
8193
8270
  panel = this.createPanel(options, group);
8194
8271
  group.model.openPanel(panel, {
8195
8272
  skipSetActive: options.inactive,
@@ -8215,7 +8292,9 @@ class DockviewComponent extends BaseGrid {
8215
8292
  });
8216
8293
  }
8217
8294
  else {
8218
- const group = this.createGroupAtLocation();
8295
+ const group = this.createGroupAtLocation([0], this.gridview.orientation === Orientation.VERTICAL
8296
+ ? initial === null || initial === void 0 ? void 0 : initial.height
8297
+ : initial === null || initial === void 0 ? void 0 : initial.width);
8219
8298
  panel = this.createPanel(options, group);
8220
8299
  group.model.openPanel(panel, {
8221
8300
  skipSetActive: options.inactive,
@@ -8309,7 +8388,11 @@ class DockviewComponent extends BaseGrid {
8309
8388
  const location = getGridLocation(referenceGroup.element);
8310
8389
  const relativeLocation = getRelativeLocation(this.gridview.orientation, location, target);
8311
8390
  const group = this.createGroup(options);
8312
- this.doAddGroup(group, relativeLocation);
8391
+ const size = this.getLocationOrientation(relativeLocation) ===
8392
+ Orientation.VERTICAL
8393
+ ? options.initialHeight
8394
+ : options.initialWidth;
8395
+ this.doAddGroup(group, relativeLocation, size);
8313
8396
  if (!options.skipSetActive) {
8314
8397
  this.doSetGroupAndPanelActive(group);
8315
8398
  }
@@ -8322,6 +8405,12 @@ class DockviewComponent extends BaseGrid {
8322
8405
  return group;
8323
8406
  }
8324
8407
  }
8408
+ getLocationOrientation(location) {
8409
+ return location.length % 2 == 0 &&
8410
+ this.gridview.orientation === Orientation.HORIZONTAL
8411
+ ? Orientation.HORIZONTAL
8412
+ : Orientation.VERTICAL;
8413
+ }
8325
8414
  removeGroup(group, options) {
8326
8415
  this.doRemoveGroup(group, options);
8327
8416
  }
@@ -8593,7 +8682,22 @@ class DockviewComponent extends BaseGrid {
8593
8682
  }
8594
8683
  const referenceLocation = getGridLocation(to.element);
8595
8684
  const dropLocation = getRelativeLocation(this.gridview.orientation, referenceLocation, target);
8596
- this.gridview.addView(from, Sizing.Distribute, dropLocation);
8685
+ let size;
8686
+ switch (this.gridview.orientation) {
8687
+ case Orientation.VERTICAL:
8688
+ size =
8689
+ referenceLocation.length % 2 == 0
8690
+ ? from.api.width
8691
+ : from.api.height;
8692
+ break;
8693
+ case Orientation.HORIZONTAL:
8694
+ size =
8695
+ referenceLocation.length % 2 == 0
8696
+ ? from.api.height
8697
+ : from.api.width;
8698
+ break;
8699
+ }
8700
+ this.gridview.addView(from, size, dropLocation);
8597
8701
  }
8598
8702
  from.panels.forEach((panel) => {
8599
8703
  this._onDidMovePanel.fire({ panel, from });
@@ -8705,22 +8809,34 @@ class DockviewComponent extends BaseGrid {
8705
8809
  const contentComponent = options.component;
8706
8810
  const tabComponent = (_a = options.tabComponent) !== null && _a !== void 0 ? _a : this.options.defaultTabComponent;
8707
8811
  const view = new DockviewPanelModel(this, options.id, contentComponent, tabComponent);
8708
- const panel = new DockviewPanel(options.id, contentComponent, tabComponent, this, this._api, group, view, { renderer: options.renderer });
8812
+ const panel = new DockviewPanel(options.id, contentComponent, tabComponent, this, this._api, group, view, {
8813
+ renderer: options.renderer,
8814
+ minimumWidth: options.minimumWidth,
8815
+ minimumHeight: options.minimumHeight,
8816
+ maximumWidth: options.maximumWidth,
8817
+ maximumHeight: options.maximumHeight,
8818
+ });
8709
8819
  panel.init({
8710
8820
  title: (_b = options.title) !== null && _b !== void 0 ? _b : options.id,
8711
8821
  params: (_c = options === null || options === void 0 ? void 0 : options.params) !== null && _c !== void 0 ? _c : {},
8712
8822
  });
8713
8823
  return panel;
8714
8824
  }
8715
- createGroupAtLocation(location = [0]) {
8825
+ createGroupAtLocation(location, size) {
8716
8826
  const group = this.createGroup();
8717
- this.doAddGroup(group, location);
8827
+ this.doAddGroup(group, location, size);
8718
8828
  return group;
8719
8829
  }
8720
8830
  findGroup(panel) {
8721
8831
  var _a;
8722
8832
  return (_a = Array.from(this._groups.values()).find((group) => group.value.model.containsPanel(panel))) === null || _a === void 0 ? void 0 : _a.value;
8723
8833
  }
8834
+ orientationAtLocation(location) {
8835
+ const rootOrientation = this.gridview.orientation;
8836
+ return location.length % 2 == 1
8837
+ ? rootOrientation
8838
+ : orthogonal(rootOrientation);
8839
+ }
8724
8840
  }
8725
8841
 
8726
8842
  class GridviewComponent extends BaseGrid {
@@ -8740,8 +8856,7 @@ class GridviewComponent extends BaseGrid {
8740
8856
  this._deserializer = value;
8741
8857
  }
8742
8858
  constructor(parentElement, options) {
8743
- super({
8744
- parentElement: parentElement,
8859
+ super(parentElement, {
8745
8860
  proportionalLayout: options.proportionalLayout,
8746
8861
  orientation: options.orientation,
8747
8862
  styles: options.styles,
@@ -8772,6 +8887,7 @@ class GridviewComponent extends BaseGrid {
8772
8887
  }
8773
8888
  }
8774
8889
  updateOptions(options) {
8890
+ super.updateOptions(options);
8775
8891
  const hasOrientationChanged = typeof options.orientation === 'string' &&
8776
8892
  this.gridview.orientation !== options.orientation;
8777
8893
  this._options = Object.assign(Object.assign({}, this.options), options);
@@ -9039,6 +9155,7 @@ class SplitviewComponent extends Resizable {
9039
9155
  : this.splitview.orthogonalSize;
9040
9156
  }
9041
9157
  constructor(parentElement, options) {
9158
+ var _a;
9042
9159
  super(parentElement, options.disableAutoResizing);
9043
9160
  this._splitviewChangeDisposable = new MutableDisposable();
9044
9161
  this._panels = new Map();
@@ -9050,9 +9167,8 @@ class SplitviewComponent extends Resizable {
9050
9167
  this.onDidRemoveView = this._onDidRemoveView.event;
9051
9168
  this._onDidLayoutChange = new Emitter();
9052
9169
  this.onDidLayoutChange = this._onDidLayoutChange.event;
9053
- if (typeof options.className === 'string') {
9054
- this.element.classList.add(options.className);
9055
- }
9170
+ this._classNames = new Classnames(this.element);
9171
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9056
9172
  this._options = options;
9057
9173
  if (!options.components) {
9058
9174
  options.components = {};
@@ -9064,12 +9180,17 @@ class SplitviewComponent extends Resizable {
9064
9180
  this.addDisposables(this._onDidAddView, this._onDidLayoutfromJSON, this._onDidRemoveView, this._onDidLayoutChange);
9065
9181
  }
9066
9182
  updateOptions(options) {
9067
- const hasOrientationChanged = typeof options.orientation === 'string' &&
9068
- this.options.orientation !== options.orientation;
9069
- this._options = Object.assign(Object.assign({}, this.options), options);
9070
- if (hasOrientationChanged) {
9183
+ var _a, _b;
9184
+ if ('className' in options) {
9185
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9186
+ }
9187
+ if ('disableResizing' in options) {
9188
+ this.disableResizing = (_b = options.disableAutoResizing) !== null && _b !== void 0 ? _b : false;
9189
+ }
9190
+ if (typeof options.orientation === 'string') {
9071
9191
  this.splitview.orientation = options.orientation;
9072
9192
  }
9193
+ this._options = Object.assign(Object.assign({}, this.options), options);
9073
9194
  this.splitview.layout(this.splitview.size, this.splitview.orthogonalSize);
9074
9195
  }
9075
9196
  focus() {
@@ -9366,6 +9487,7 @@ class PaneviewComponent extends Resizable {
9366
9487
  return this._options;
9367
9488
  }
9368
9489
  constructor(parentElement, options) {
9490
+ var _a;
9369
9491
  super(parentElement, options.disableAutoResizing);
9370
9492
  this._id = nextLayoutId.next();
9371
9493
  this._disposable = new MutableDisposable();
@@ -9380,10 +9502,9 @@ class PaneviewComponent extends Resizable {
9380
9502
  this.onDidAddView = this._onDidAddView.event;
9381
9503
  this._onDidRemoveView = new Emitter();
9382
9504
  this.onDidRemoveView = this._onDidRemoveView.event;
9383
- if (typeof options.className === 'string') {
9384
- this.element.classList.add(options.className);
9385
- }
9386
9505
  this.addDisposables(this._onDidLayoutChange, this._onDidLayoutfromJSON, this._onDidDrop, this._onDidAddView, this._onDidRemoveView);
9506
+ this._classNames = new Classnames(this.element);
9507
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9387
9508
  this._options = options;
9388
9509
  if (!options.components) {
9389
9510
  options.components = {};
@@ -9405,6 +9526,13 @@ class PaneviewComponent extends Resizable {
9405
9526
  //noop
9406
9527
  }
9407
9528
  updateOptions(options) {
9529
+ var _a, _b;
9530
+ if ('className' in options) {
9531
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9532
+ }
9533
+ if ('disableResizing' in options) {
9534
+ this.disableResizing = (_b = options.disableAutoResizing) !== null && _b !== void 0 ? _b : false;
9535
+ }
9408
9536
  this._options = Object.assign(Object.assign({}, this.options), options);
9409
9537
  }
9410
9538
  addPanel(options) {