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
  */
@@ -33,7 +33,7 @@ define(['exports'], (function (exports) { 'use strict';
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'], (function (exports) { 'use strict';
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,7 +2736,8 @@ define(['exports'], (function (exports) { 'use strict';
2700
2736
  set locked(value) {
2701
2737
  this.gridview.locked = value;
2702
2738
  }
2703
- constructor(options) {
2739
+ constructor(parentElement, options) {
2740
+ var _a;
2704
2741
  super(document.createElement('div'), options.disableAutoResizing);
2705
2742
  this._id = nextLayoutId$1.next();
2706
2743
  this._groups = new Map();
@@ -2716,10 +2753,9 @@ define(['exports'], (function (exports) { 'use strict';
2716
2753
  this.onDidViewVisibilityChangeMicroTaskQueue = this._onDidViewVisibilityChangeMicroTaskQueue.onEvent;
2717
2754
  this.element.style.height = '100%';
2718
2755
  this.element.style.width = '100%';
2719
- if (typeof options.className === 'string') {
2720
- this.element.classList.add(options.className);
2721
- }
2722
- 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);
2723
2759
  this.gridview = new Gridview(!!options.proportionalLayout, options.styles, options.orientation, options.locked, options.margin);
2724
2760
  this.gridview.locked = !!options.locked;
2725
2761
  this.element.appendChild(this.gridview.element);
@@ -2742,6 +2778,25 @@ define(['exports'], (function (exports) { 'use strict';
2742
2778
  isVisible(panel) {
2743
2779
  return this.gridview.isViewVisible(getGridLocation(panel.element));
2744
2780
  }
2781
+ updateOptions(options) {
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
+ }
2796
+ if ('className' in options) {
2797
+ this._classNames.setClassNames((_d = options.className) !== null && _d !== void 0 ? _d : '');
2798
+ }
2799
+ }
2745
2800
  maximizeGroup(panel) {
2746
2801
  this.gridview.maximizeView(panel);
2747
2802
  this.doSetGroupActive(panel);
@@ -4665,7 +4720,7 @@ define(['exports'], (function (exports) { 'use strict';
4665
4720
  this.onWillShowOverlay = this.dropTarget.onWillShowOverlay;
4666
4721
  this.addDisposables(this._onChanged, this._onDropped, this._onDragStart, dragHandler.onDragStart((event) => {
4667
4722
  this._onDragStart.fire(event);
4668
- }), dragHandler, addDisposableListener(this._element, 'mousedown', (event) => {
4723
+ }), dragHandler, addDisposableListener(this._element, 'pointerdown', (event) => {
4669
4724
  if (event.defaultPrevented) {
4670
4725
  return;
4671
4726
  }
@@ -4707,7 +4762,7 @@ define(['exports'], (function (exports) { 'use strict';
4707
4762
  this.accessor = accessor;
4708
4763
  this.group = group;
4709
4764
  this.panelTransfer = LocalSelectionTransfer.getInstance();
4710
- this.addDisposables(addDisposableListener(element, 'mousedown', (e) => {
4765
+ this.addDisposables(addDisposableListener(element, 'pointerdown', (e) => {
4711
4766
  if (e.shiftKey) {
4712
4767
  /**
4713
4768
  * You cannot call e.preventDefault() because that will prevent drag events from firing
@@ -4926,7 +4981,7 @@ define(['exports'], (function (exports) { 'use strict';
4926
4981
  group: this.group,
4927
4982
  getData: getPanelData,
4928
4983
  }));
4929
- }), addDisposableListener(this.voidContainer.element, 'mousedown', (event) => {
4984
+ }), addDisposableListener(this.voidContainer.element, 'pointerdown', (event) => {
4930
4985
  const isFloatingGroupsEnabled = !this.accessor.options.disableFloatingGroups;
4931
4986
  if (isFloatingGroupsEnabled &&
4932
4987
  event.shiftKey &&
@@ -4940,7 +4995,7 @@ define(['exports'], (function (exports) { 'use strict';
4940
4995
  inDragMode: true,
4941
4996
  });
4942
4997
  }
4943
- }), addDisposableListener(this.tabContainer, 'mousedown', (event) => {
4998
+ }), addDisposableListener(this.tabContainer, 'pointerdown', (event) => {
4944
4999
  if (event.defaultPrevented) {
4945
5000
  return;
4946
5001
  }
@@ -5645,7 +5700,6 @@ define(['exports'], (function (exports) { 'use strict';
5645
5700
  });
5646
5701
  this.tabsContainer.hide();
5647
5702
  this.contentContainer.element.appendChild(this.watermark.element);
5648
- this.watermark.updateParentGroup(this.groupPanel, true);
5649
5703
  }
5650
5704
  if (!this.isEmpty && this.watermark) {
5651
5705
  this.watermark.element.remove();
@@ -6008,6 +6062,34 @@ define(['exports'], (function (exports) { 'use strict';
6008
6062
  const MINIMUM_DOCKVIEW_GROUP_PANEL_WIDTH = 100;
6009
6063
  const MINIMUM_DOCKVIEW_GROUP_PANEL_HEIGHT = 100;
6010
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
+ }
6011
6093
  get panels() {
6012
6094
  return this._model.panels;
6013
6095
  }
@@ -6030,9 +6112,12 @@ define(['exports'], (function (exports) { 'use strict';
6030
6112
  return this._model.header;
6031
6113
  }
6032
6114
  constructor(accessor, id, options) {
6115
+ var _a, _b, _c, _d, _e, _f;
6033
6116
  super(id, 'groupview_default', {
6034
- minimumHeight: MINIMUM_DOCKVIEW_GROUP_PANEL_HEIGHT,
6035
- 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,
6036
6121
  }, new DockviewGroupPanelApiImpl(id, accessor));
6037
6122
  this.api.initialize(this); // cannot use 'this' after after 'super' call
6038
6123
  this._model = new DockviewGroupPanelModel(this.element, accessor, id, options, this);
@@ -6188,6 +6273,18 @@ define(['exports'], (function (exports) { 'use strict';
6188
6273
  var _a;
6189
6274
  return (_a = this._renderer) !== null && _a !== void 0 ? _a : this.accessor.renderer;
6190
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
+ }
6191
6288
  constructor(id, component, tabComponent, accessor, containerApi, group, view, options) {
6192
6289
  super();
6193
6290
  this.id = id;
@@ -6196,6 +6293,10 @@ define(['exports'], (function (exports) { 'use strict';
6196
6293
  this.view = view;
6197
6294
  this._renderer = options.renderer;
6198
6295
  this._group = group;
6296
+ this._minimumWidth = options.minimumWidth;
6297
+ this._minimumHeight = options.minimumHeight;
6298
+ this._maximumWidth = options.maximumWidth;
6299
+ this._maximumHeight = options.maximumHeight;
6199
6300
  this.api = new DockviewPanelApiImpl(this, this._group, accessor, component, tabComponent);
6200
6301
  this.addDisposables(this.api.onActiveChange(() => {
6201
6302
  accessor.setActivePanel(this);
@@ -6232,6 +6333,10 @@ define(['exports'], (function (exports) { 'use strict';
6232
6333
  : undefined,
6233
6334
  title: this.title,
6234
6335
  renderer: this._renderer,
6336
+ minimumHeight: this._minimumHeight,
6337
+ maximumHeight: this._maximumHeight,
6338
+ minimumWidth: this._minimumWidth,
6339
+ maximumWidth: this._maximumWidth,
6235
6340
  };
6236
6341
  }
6237
6342
  setTitle(title) {
@@ -6361,7 +6466,7 @@ define(['exports'], (function (exports) { 'use strict';
6361
6466
  this.action.appendChild(createCloseButton());
6362
6467
  this._element.appendChild(this._content);
6363
6468
  this._element.appendChild(this.action);
6364
- this.addDisposables(addDisposableListener(this.action, 'mousedown', (ev) => {
6469
+ this.addDisposables(addDisposableListener(this.action, 'pointerdown', (ev) => {
6365
6470
  ev.preventDefault();
6366
6471
  }));
6367
6472
  this.render();
@@ -6371,7 +6476,7 @@ define(['exports'], (function (exports) { 'use strict';
6371
6476
  this.addDisposables(params.api.onDidTitleChange((event) => {
6372
6477
  this._title = event.title;
6373
6478
  this.render();
6374
- }), addDisposableListener(this.action, 'mousedown', (ev) => {
6479
+ }), addDisposableListener(this.action, 'pointerdown', (ev) => {
6375
6480
  ev.preventDefault();
6376
6481
  }), addDisposableListener(this.action, 'click', (ev) => {
6377
6482
  if (ev.defaultPrevented) {
@@ -6472,6 +6577,10 @@ define(['exports'], (function (exports) { 'use strict';
6472
6577
  const view = new DockviewPanelModel(this.accessor, panelId, contentComponent, tabComponent);
6473
6578
  const panel = new DockviewPanel(panelId, contentComponent, tabComponent, this.accessor, new DockviewApi(this.accessor), group, view, {
6474
6579
  renderer: panelData.renderer,
6580
+ minimumWidth: panelData.minimumWidth,
6581
+ minimumHeight: panelData.minimumHeight,
6582
+ maximumWidth: panelData.maximumWidth,
6583
+ maximumHeight: panelData.maximumHeight,
6475
6584
  });
6476
6585
  panel.init({
6477
6586
  title: title !== null && title !== void 0 ? title : panelId,
@@ -6505,34 +6614,19 @@ define(['exports'], (function (exports) { 'use strict';
6505
6614
  actionsContainer.appendChild(closeAnchor);
6506
6615
  title.appendChild(emptySpace);
6507
6616
  title.appendChild(actionsContainer);
6508
- this.addDisposables(addDisposableListener(closeAnchor, 'click', (ev) => {
6617
+ this.addDisposables(addDisposableListener(closeAnchor, 'click', (event) => {
6509
6618
  var _a;
6510
- ev.preventDefault();
6619
+ event.preventDefault();
6511
6620
  if (this._group) {
6512
6621
  (_a = this._api) === null || _a === void 0 ? void 0 : _a.removeGroup(this._group);
6513
6622
  }
6514
6623
  }));
6515
6624
  }
6516
- update(_event) {
6517
- // noop
6518
- }
6519
- focus() {
6520
- // noop
6521
- }
6522
- layout(_width, _height) {
6523
- // noop
6524
- }
6525
6625
  init(_params) {
6526
6626
  this._api = _params.containerApi;
6627
+ this._group = _params.group;
6527
6628
  this.render();
6528
6629
  }
6529
- updateParentGroup(group, _visible) {
6530
- this._group = group;
6531
- this.render();
6532
- }
6533
- dispose() {
6534
- super.dispose();
6535
- }
6536
6630
  render() {
6537
6631
  const isOneGroup = !!(this._api && this._api.size <= 1);
6538
6632
  toggleClass(this.element, 'has-actions', isOneGroup);
@@ -6691,7 +6785,7 @@ define(['exports'], (function (exports) { 'use strict';
6691
6785
  dispose: () => {
6692
6786
  iframes.release();
6693
6787
  },
6694
- }, addDisposableWindowListener(window, 'mousemove', (e) => {
6788
+ }, addDisposableWindowListener(window, 'pointermove', (e) => {
6695
6789
  const containerRect = this.options.container.getBoundingClientRect();
6696
6790
  const x = e.clientX - containerRect.left;
6697
6791
  const y = e.clientY - containerRect.top;
@@ -6734,7 +6828,7 @@ define(['exports'], (function (exports) { 'use strict';
6734
6828
  this._onDidChangeEnd.fire();
6735
6829
  }));
6736
6830
  };
6737
- this.addDisposables(move, addDisposableListener(dragTarget, 'mousedown', (event) => {
6831
+ this.addDisposables(move, addDisposableListener(dragTarget, 'pointerdown', (event) => {
6738
6832
  if (event.defaultPrevented) {
6739
6833
  event.preventDefault();
6740
6834
  return;
@@ -6745,7 +6839,7 @@ define(['exports'], (function (exports) { 'use strict';
6745
6839
  return;
6746
6840
  }
6747
6841
  track();
6748
- }), addDisposableListener(this.options.content, 'mousedown', (event) => {
6842
+ }), addDisposableListener(this.options.content, 'pointerdown', (event) => {
6749
6843
  if (event.defaultPrevented) {
6750
6844
  return;
6751
6845
  }
@@ -6757,7 +6851,7 @@ define(['exports'], (function (exports) { 'use strict';
6757
6851
  if (event.shiftKey) {
6758
6852
  track();
6759
6853
  }
6760
- }), addDisposableListener(this.options.content, 'mousedown', () => {
6854
+ }), addDisposableListener(this.options.content, 'pointerdown', () => {
6761
6855
  arialLevelTracker.push(this._element);
6762
6856
  }, true));
6763
6857
  if (options.inDragMode) {
@@ -6769,11 +6863,11 @@ define(['exports'], (function (exports) { 'use strict';
6769
6863
  resizeHandleElement.className = `dv-resize-handle-${direction}`;
6770
6864
  this._element.appendChild(resizeHandleElement);
6771
6865
  const move = new MutableDisposable();
6772
- this.addDisposables(move, addDisposableListener(resizeHandleElement, 'mousedown', (e) => {
6866
+ this.addDisposables(move, addDisposableListener(resizeHandleElement, 'pointerdown', (e) => {
6773
6867
  e.preventDefault();
6774
6868
  let startPosition = null;
6775
6869
  const iframes = disableIframePointEvents();
6776
- move.value = new CompositeDisposable(addDisposableWindowListener(window, 'mousemove', (e) => {
6870
+ move.value = new CompositeDisposable(addDisposableWindowListener(window, 'pointermove', (e) => {
6777
6871
  const containerRect = this.options.container.getBoundingClientRect();
6778
6872
  const overlayRect = this._element.getBoundingClientRect();
6779
6873
  const y = e.clientY - containerRect.top;
@@ -7278,25 +7372,6 @@ define(['exports'], (function (exports) { 'use strict';
7278
7372
  });
7279
7373
  });
7280
7374
  }
7281
- function getDockviewTheme(element) {
7282
- function toClassList(element) {
7283
- const list = [];
7284
- for (let i = 0; i < element.classList.length; i++) {
7285
- list.push(element.classList.item(i));
7286
- }
7287
- return list;
7288
- }
7289
- let theme = undefined;
7290
- let parent = element;
7291
- while (parent !== null) {
7292
- theme = toClassList(parent).find((cls) => cls.startsWith('dockview-theme-'));
7293
- if (typeof theme === 'string') {
7294
- break;
7295
- }
7296
- parent = parent.parentElement;
7297
- }
7298
- return theme;
7299
- }
7300
7375
  class DockviewComponent extends BaseGrid {
7301
7376
  get orientation() {
7302
7377
  return this.gridview.orientation;
@@ -7332,13 +7407,12 @@ define(['exports'], (function (exports) { 'use strict';
7332
7407
  }
7333
7408
  constructor(parentElement, options) {
7334
7409
  var _a;
7335
- super({
7410
+ super(parentElement, {
7336
7411
  proportionalLayout: true,
7337
7412
  orientation: exports.Orientation.HORIZONTAL,
7338
7413
  styles: options.hideBorders
7339
7414
  ? { separatorBorder: 'transparent' }
7340
7415
  : undefined,
7341
- parentElement: parentElement,
7342
7416
  disableAutoResizing: options.disableAutoResizing,
7343
7417
  locked: options.locked,
7344
7418
  margin: options.gap,
@@ -7378,9 +7452,6 @@ define(['exports'], (function (exports) { 'use strict';
7378
7452
  this._onDidActiveGroupChange = new Emitter();
7379
7453
  this.onDidActiveGroupChange = this._onDidActiveGroupChange.event;
7380
7454
  this._moving = false;
7381
- // const gready = document.createElement('div');
7382
- // gready.className = 'dv-overlay-render-container';
7383
- // this.gridview.element.appendChild(gready);
7384
7455
  this.overlayRenderContainer = new OverlayRenderContainer(this.gridview.element, this);
7385
7456
  toggleClass(this.gridview.element, 'dv-dockview', true);
7386
7457
  toggleClass(this.element, 'dv-debug', !!options.debug);
@@ -7829,15 +7900,11 @@ define(['exports'], (function (exports) { 'use strict';
7829
7900
  }
7830
7901
  }
7831
7902
  updateOptions(options) {
7832
- var _a, _b;
7833
- const changed_floatingGroupBounds = 'floatingGroupBounds' in options &&
7834
- options.floatingGroupBounds !== this.options.floatingGroupBounds;
7835
- const changed_rootOverlayOptions = 'rootOverlayModel' in options &&
7836
- options.rootOverlayModel !== this.options.rootOverlayModel;
7837
- this._options = Object.assign(Object.assign({}, this.options), options);
7838
- if (changed_floatingGroupBounds) {
7903
+ var _a, _b, _c, _d;
7904
+ super.updateOptions(options);
7905
+ if ('floatingGroupBounds' in options) {
7839
7906
  for (const group of this._floatingGroups) {
7840
- switch (this.options.floatingGroupBounds) {
7907
+ switch (options.floatingGroupBounds) {
7841
7908
  case 'boundedWithinViewport':
7842
7909
  group.overlay.minimumInViewportHeight = undefined;
7843
7910
  group.overlay.minimumInViewportWidth = undefined;
@@ -7850,25 +7917,20 @@ define(['exports'], (function (exports) { 'use strict';
7850
7917
  break;
7851
7918
  default:
7852
7919
  group.overlay.minimumInViewportHeight =
7853
- (_a = this.options.floatingGroupBounds) === null || _a === void 0 ? void 0 : _a.minimumHeightWithinViewport;
7920
+ (_a = options.floatingGroupBounds) === null || _a === void 0 ? void 0 : _a.minimumHeightWithinViewport;
7854
7921
  group.overlay.minimumInViewportWidth =
7855
- (_b = this.options.floatingGroupBounds) === null || _b === void 0 ? void 0 : _b.minimumWidthWithinViewport;
7922
+ (_b = options.floatingGroupBounds) === null || _b === void 0 ? void 0 : _b.minimumWidthWithinViewport;
7856
7923
  }
7857
7924
  group.overlay.setBounds();
7858
7925
  }
7859
7926
  }
7860
- if (changed_rootOverlayOptions) {
7861
- this._rootDropTarget.setOverlayModel(options.rootOverlayModel);
7927
+ if ('rootOverlayModel' in options) {
7928
+ this._rootDropTarget.setOverlayModel((_c = options.rootOverlayModel) !== null && _c !== void 0 ? _c : DEFAULT_ROOT_OVERLAY_MODEL);
7862
7929
  }
7863
- if (
7864
- // if explicitly set as `undefined`
7865
- 'gap' in options &&
7866
- options.gap === undefined) {
7867
- this.gridview.margin = 0;
7868
- }
7869
- if (typeof options.gap === 'number') {
7870
- this.gridview.margin = options.gap;
7930
+ if ('gap' in options) {
7931
+ this.gridview.margin = (_d = options.gap) !== null && _d !== void 0 ? _d : 0;
7871
7932
  }
7933
+ this._options = Object.assign(Object.assign({}, this.options), options);
7872
7934
  this.layout(this.gridview.width, this.gridview.height, true);
7873
7935
  }
7874
7936
  layout(width, height, forceResize) {
@@ -8125,6 +8187,10 @@ define(['exports'], (function (exports) { 'use strict';
8125
8187
  if (options.position && options.floating) {
8126
8188
  throw new Error('you can only provide one of: position, floating as arguments to .addPanel(...)');
8127
8189
  }
8190
+ const initial = {
8191
+ width: options.initialWidth,
8192
+ height: options.initialHeight,
8193
+ };
8128
8194
  if (options.position) {
8129
8195
  if (isPanelOptionsWithPanel(options.position)) {
8130
8196
  const referencePanel = typeof options.position.referencePanel === 'string'
@@ -8154,6 +8220,10 @@ define(['exports'], (function (exports) { 'use strict';
8154
8220
  if (!options.inactive) {
8155
8221
  this.doSetGroupAndPanelActive(group);
8156
8222
  }
8223
+ group.api.setSize({
8224
+ height: initial === null || initial === void 0 ? void 0 : initial.height,
8225
+ width: initial === null || initial === void 0 ? void 0 : initial.width,
8226
+ });
8157
8227
  return panel;
8158
8228
  }
8159
8229
  }
@@ -8184,6 +8254,10 @@ define(['exports'], (function (exports) { 'use strict';
8184
8254
  skipSetActive: options.inactive,
8185
8255
  skipSetGroupActive: options.inactive,
8186
8256
  });
8257
+ referenceGroup.api.setSize({
8258
+ width: initial === null || initial === void 0 ? void 0 : initial.width,
8259
+ height: initial === null || initial === void 0 ? void 0 : initial.height,
8260
+ });
8187
8261
  if (!options.inactive) {
8188
8262
  this.doSetGroupAndPanelActive(referenceGroup);
8189
8263
  }
@@ -8191,7 +8265,10 @@ define(['exports'], (function (exports) { 'use strict';
8191
8265
  else {
8192
8266
  const location = getGridLocation(referenceGroup.element);
8193
8267
  const relativeLocation = getRelativeLocation(this.gridview.orientation, location, target);
8194
- const group = this.createGroupAtLocation(relativeLocation);
8268
+ const group = this.createGroupAtLocation(relativeLocation, this.orientationAtLocation(relativeLocation) ===
8269
+ exports.Orientation.VERTICAL
8270
+ ? initial === null || initial === void 0 ? void 0 : initial.height
8271
+ : initial === null || initial === void 0 ? void 0 : initial.width);
8195
8272
  panel = this.createPanel(options, group);
8196
8273
  group.model.openPanel(panel, {
8197
8274
  skipSetActive: options.inactive,
@@ -8217,7 +8294,9 @@ define(['exports'], (function (exports) { 'use strict';
8217
8294
  });
8218
8295
  }
8219
8296
  else {
8220
- const group = this.createGroupAtLocation();
8297
+ const group = this.createGroupAtLocation([0], this.gridview.orientation === exports.Orientation.VERTICAL
8298
+ ? initial === null || initial === void 0 ? void 0 : initial.height
8299
+ : initial === null || initial === void 0 ? void 0 : initial.width);
8221
8300
  panel = this.createPanel(options, group);
8222
8301
  group.model.openPanel(panel, {
8223
8302
  skipSetActive: options.inactive,
@@ -8311,7 +8390,11 @@ define(['exports'], (function (exports) { 'use strict';
8311
8390
  const location = getGridLocation(referenceGroup.element);
8312
8391
  const relativeLocation = getRelativeLocation(this.gridview.orientation, location, target);
8313
8392
  const group = this.createGroup(options);
8314
- this.doAddGroup(group, relativeLocation);
8393
+ const size = this.getLocationOrientation(relativeLocation) ===
8394
+ exports.Orientation.VERTICAL
8395
+ ? options.initialHeight
8396
+ : options.initialWidth;
8397
+ this.doAddGroup(group, relativeLocation, size);
8315
8398
  if (!options.skipSetActive) {
8316
8399
  this.doSetGroupAndPanelActive(group);
8317
8400
  }
@@ -8324,6 +8407,12 @@ define(['exports'], (function (exports) { 'use strict';
8324
8407
  return group;
8325
8408
  }
8326
8409
  }
8410
+ getLocationOrientation(location) {
8411
+ return location.length % 2 == 0 &&
8412
+ this.gridview.orientation === exports.Orientation.HORIZONTAL
8413
+ ? exports.Orientation.HORIZONTAL
8414
+ : exports.Orientation.VERTICAL;
8415
+ }
8327
8416
  removeGroup(group, options) {
8328
8417
  this.doRemoveGroup(group, options);
8329
8418
  }
@@ -8595,7 +8684,22 @@ define(['exports'], (function (exports) { 'use strict';
8595
8684
  }
8596
8685
  const referenceLocation = getGridLocation(to.element);
8597
8686
  const dropLocation = getRelativeLocation(this.gridview.orientation, referenceLocation, target);
8598
- this.gridview.addView(from, exports.Sizing.Distribute, dropLocation);
8687
+ let size;
8688
+ switch (this.gridview.orientation) {
8689
+ case exports.Orientation.VERTICAL:
8690
+ size =
8691
+ referenceLocation.length % 2 == 0
8692
+ ? from.api.width
8693
+ : from.api.height;
8694
+ break;
8695
+ case exports.Orientation.HORIZONTAL:
8696
+ size =
8697
+ referenceLocation.length % 2 == 0
8698
+ ? from.api.height
8699
+ : from.api.width;
8700
+ break;
8701
+ }
8702
+ this.gridview.addView(from, size, dropLocation);
8599
8703
  }
8600
8704
  from.panels.forEach((panel) => {
8601
8705
  this._onDidMovePanel.fire({ panel, from });
@@ -8707,22 +8811,34 @@ define(['exports'], (function (exports) { 'use strict';
8707
8811
  const contentComponent = options.component;
8708
8812
  const tabComponent = (_a = options.tabComponent) !== null && _a !== void 0 ? _a : this.options.defaultTabComponent;
8709
8813
  const view = new DockviewPanelModel(this, options.id, contentComponent, tabComponent);
8710
- const panel = new DockviewPanel(options.id, contentComponent, tabComponent, this, this._api, group, view, { renderer: options.renderer });
8814
+ const panel = new DockviewPanel(options.id, contentComponent, tabComponent, this, this._api, group, view, {
8815
+ renderer: options.renderer,
8816
+ minimumWidth: options.minimumWidth,
8817
+ minimumHeight: options.minimumHeight,
8818
+ maximumWidth: options.maximumWidth,
8819
+ maximumHeight: options.maximumHeight,
8820
+ });
8711
8821
  panel.init({
8712
8822
  title: (_b = options.title) !== null && _b !== void 0 ? _b : options.id,
8713
8823
  params: (_c = options === null || options === void 0 ? void 0 : options.params) !== null && _c !== void 0 ? _c : {},
8714
8824
  });
8715
8825
  return panel;
8716
8826
  }
8717
- createGroupAtLocation(location = [0]) {
8827
+ createGroupAtLocation(location, size) {
8718
8828
  const group = this.createGroup();
8719
- this.doAddGroup(group, location);
8829
+ this.doAddGroup(group, location, size);
8720
8830
  return group;
8721
8831
  }
8722
8832
  findGroup(panel) {
8723
8833
  var _a;
8724
8834
  return (_a = Array.from(this._groups.values()).find((group) => group.value.model.containsPanel(panel))) === null || _a === void 0 ? void 0 : _a.value;
8725
8835
  }
8836
+ orientationAtLocation(location) {
8837
+ const rootOrientation = this.gridview.orientation;
8838
+ return location.length % 2 == 1
8839
+ ? rootOrientation
8840
+ : orthogonal(rootOrientation);
8841
+ }
8726
8842
  }
8727
8843
 
8728
8844
  class GridviewComponent extends BaseGrid {
@@ -8742,8 +8858,7 @@ define(['exports'], (function (exports) { 'use strict';
8742
8858
  this._deserializer = value;
8743
8859
  }
8744
8860
  constructor(parentElement, options) {
8745
- super({
8746
- parentElement: parentElement,
8861
+ super(parentElement, {
8747
8862
  proportionalLayout: options.proportionalLayout,
8748
8863
  orientation: options.orientation,
8749
8864
  styles: options.styles,
@@ -8774,6 +8889,7 @@ define(['exports'], (function (exports) { 'use strict';
8774
8889
  }
8775
8890
  }
8776
8891
  updateOptions(options) {
8892
+ super.updateOptions(options);
8777
8893
  const hasOrientationChanged = typeof options.orientation === 'string' &&
8778
8894
  this.gridview.orientation !== options.orientation;
8779
8895
  this._options = Object.assign(Object.assign({}, this.options), options);
@@ -9041,6 +9157,7 @@ define(['exports'], (function (exports) { 'use strict';
9041
9157
  : this.splitview.orthogonalSize;
9042
9158
  }
9043
9159
  constructor(parentElement, options) {
9160
+ var _a;
9044
9161
  super(parentElement, options.disableAutoResizing);
9045
9162
  this._splitviewChangeDisposable = new MutableDisposable();
9046
9163
  this._panels = new Map();
@@ -9052,9 +9169,8 @@ define(['exports'], (function (exports) { 'use strict';
9052
9169
  this.onDidRemoveView = this._onDidRemoveView.event;
9053
9170
  this._onDidLayoutChange = new Emitter();
9054
9171
  this.onDidLayoutChange = this._onDidLayoutChange.event;
9055
- if (typeof options.className === 'string') {
9056
- this.element.classList.add(options.className);
9057
- }
9172
+ this._classNames = new Classnames(this.element);
9173
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9058
9174
  this._options = options;
9059
9175
  if (!options.components) {
9060
9176
  options.components = {};
@@ -9066,12 +9182,17 @@ define(['exports'], (function (exports) { 'use strict';
9066
9182
  this.addDisposables(this._onDidAddView, this._onDidLayoutfromJSON, this._onDidRemoveView, this._onDidLayoutChange);
9067
9183
  }
9068
9184
  updateOptions(options) {
9069
- const hasOrientationChanged = typeof options.orientation === 'string' &&
9070
- this.options.orientation !== options.orientation;
9071
- this._options = Object.assign(Object.assign({}, this.options), options);
9072
- if (hasOrientationChanged) {
9185
+ var _a, _b;
9186
+ if ('className' in options) {
9187
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9188
+ }
9189
+ if ('disableResizing' in options) {
9190
+ this.disableResizing = (_b = options.disableAutoResizing) !== null && _b !== void 0 ? _b : false;
9191
+ }
9192
+ if (typeof options.orientation === 'string') {
9073
9193
  this.splitview.orientation = options.orientation;
9074
9194
  }
9195
+ this._options = Object.assign(Object.assign({}, this.options), options);
9075
9196
  this.splitview.layout(this.splitview.size, this.splitview.orthogonalSize);
9076
9197
  }
9077
9198
  focus() {
@@ -9368,6 +9489,7 @@ define(['exports'], (function (exports) { 'use strict';
9368
9489
  return this._options;
9369
9490
  }
9370
9491
  constructor(parentElement, options) {
9492
+ var _a;
9371
9493
  super(parentElement, options.disableAutoResizing);
9372
9494
  this._id = nextLayoutId.next();
9373
9495
  this._disposable = new MutableDisposable();
@@ -9382,10 +9504,9 @@ define(['exports'], (function (exports) { 'use strict';
9382
9504
  this.onDidAddView = this._onDidAddView.event;
9383
9505
  this._onDidRemoveView = new Emitter();
9384
9506
  this.onDidRemoveView = this._onDidRemoveView.event;
9385
- if (typeof options.className === 'string') {
9386
- this.element.classList.add(options.className);
9387
- }
9388
9507
  this.addDisposables(this._onDidLayoutChange, this._onDidLayoutfromJSON, this._onDidDrop, this._onDidAddView, this._onDidRemoveView);
9508
+ this._classNames = new Classnames(this.element);
9509
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9389
9510
  this._options = options;
9390
9511
  if (!options.components) {
9391
9512
  options.components = {};
@@ -9407,6 +9528,13 @@ define(['exports'], (function (exports) { 'use strict';
9407
9528
  //noop
9408
9529
  }
9409
9530
  updateOptions(options) {
9531
+ var _a, _b;
9532
+ if ('className' in options) {
9533
+ this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9534
+ }
9535
+ if ('disableResizing' in options) {
9536
+ this.disableResizing = (_b = options.disableAutoResizing) !== null && _b !== void 0 ? _b : false;
9537
+ }
9410
9538
  this._options = Object.assign(Object.assign({}, this.options), options);
9411
9539
  }
9412
9540
  addPanel(options) {