dockview-core 1.17.1 → 2.0.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 (126) hide show
  1. package/dist/cjs/api/component.api.d.ts +1 -1
  2. package/dist/cjs/api/dockviewGroupPanelApi.d.ts +10 -8
  3. package/dist/cjs/api/dockviewGroupPanelApi.js +1 -0
  4. package/dist/cjs/api/dockviewPanelApi.d.ts +6 -14
  5. package/dist/cjs/api/dockviewPanelApi.js +5 -3
  6. package/dist/cjs/dnd/abstractDragHandler.js +1 -1
  7. package/dist/cjs/dnd/dnd.d.ts +2 -2
  8. package/dist/cjs/dnd/droptarget.js +4 -4
  9. package/dist/cjs/dockview/components/panel/content.d.ts +2 -2
  10. package/dist/cjs/dockview/components/panel/content.js +3 -1
  11. package/dist/cjs/dockview/components/tab/defaultTab.d.ts +3 -3
  12. package/dist/cjs/dockview/components/tab/tab.js +4 -4
  13. package/dist/cjs/dockview/components/titlebar/tabsContainer.js +5 -9
  14. package/dist/cjs/dockview/components/titlebar/voidContainer.js +1 -1
  15. package/dist/cjs/dockview/components/watermark/watermark.d.ts +1 -1
  16. package/dist/cjs/dockview/components/watermark/watermark.js +6 -6
  17. package/dist/cjs/dockview/dockviewComponent.d.ts +2 -3
  18. package/dist/cjs/dockview/dockviewComponent.js +66 -35
  19. package/dist/cjs/dockview/dockviewGroupPanel.js +16 -12
  20. package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +3 -3
  21. package/dist/cjs/dockview/dockviewGroupPanelModel.js +7 -7
  22. package/dist/cjs/dockview/dockviewPanel.d.ts +4 -4
  23. package/dist/cjs/dockview/dockviewPanelModel.d.ts +1 -1
  24. package/dist/cjs/dockview/options.d.ts +8 -0
  25. package/dist/cjs/dom.d.ts +11 -1
  26. package/dist/cjs/dom.js +19 -1
  27. package/dist/cjs/gridview/basePanelView.d.ts +1 -1
  28. package/dist/cjs/gridview/branchNode.d.ts +1 -1
  29. package/dist/cjs/gridview/branchNode.js +1 -1
  30. package/dist/cjs/gridview/gridview.js +2 -2
  31. package/dist/cjs/gridview/gridviewPanel.d.ts +4 -0
  32. package/dist/cjs/gridview/gridviewPanel.js +60 -32
  33. package/dist/cjs/gridview/leafNode.d.ts +1 -1
  34. package/dist/cjs/index.d.ts +8 -9
  35. package/dist/cjs/index.js +14 -7
  36. package/dist/cjs/overlay/overlay.d.ts +3 -4
  37. package/dist/cjs/overlay/overlay.js +2 -3
  38. package/dist/cjs/overlay/overlayRenderContainer.js +1 -2
  39. package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +1 -1
  40. package/dist/cjs/paneview/defaultPaneviewHeader.js +5 -3
  41. package/dist/cjs/paneview/paneview.d.ts +3 -3
  42. package/dist/cjs/paneview/paneview.js +3 -3
  43. package/dist/cjs/paneview/paneviewComponent.d.ts +2 -2
  44. package/dist/cjs/paneview/paneviewPanel.d.ts +2 -2
  45. package/dist/cjs/paneview/paneviewPanel.js +3 -3
  46. package/dist/cjs/popoutWindow.js +23 -16
  47. package/dist/cjs/splitview/splitview.d.ts +6 -6
  48. package/dist/cjs/splitview/splitview.js +18 -17
  49. package/dist/cjs/splitview/splitviewComponent.d.ts +2 -2
  50. package/dist/cjs/splitview/viewItem.d.ts +1 -1
  51. package/dist/cjs/svg.js +1 -1
  52. package/dist/dockview-core.amd.js +243 -172
  53. package/dist/dockview-core.amd.js.map +1 -1
  54. package/dist/dockview-core.amd.min.js +2 -2
  55. package/dist/dockview-core.amd.min.js.map +1 -1
  56. package/dist/dockview-core.amd.min.noStyle.js +2 -2
  57. package/dist/dockview-core.amd.min.noStyle.js.map +1 -1
  58. package/dist/dockview-core.amd.noStyle.js +242 -171
  59. package/dist/dockview-core.amd.noStyle.js.map +1 -1
  60. package/dist/dockview-core.cjs.js +243 -172
  61. package/dist/dockview-core.cjs.js.map +1 -1
  62. package/dist/dockview-core.esm.js +244 -171
  63. package/dist/dockview-core.esm.js.map +1 -1
  64. package/dist/dockview-core.esm.min.js +2 -2
  65. package/dist/dockview-core.esm.min.js.map +1 -1
  66. package/dist/dockview-core.js +243 -172
  67. package/dist/dockview-core.js.map +1 -1
  68. package/dist/dockview-core.min.js +2 -2
  69. package/dist/dockview-core.min.js.map +1 -1
  70. package/dist/dockview-core.min.noStyle.js +2 -2
  71. package/dist/dockview-core.min.noStyle.js.map +1 -1
  72. package/dist/dockview-core.noStyle.js +242 -171
  73. package/dist/dockview-core.noStyle.js.map +1 -1
  74. package/dist/esm/api/component.api.d.ts +1 -1
  75. package/dist/esm/api/dockviewGroupPanelApi.d.ts +10 -8
  76. package/dist/esm/api/dockviewGroupPanelApi.js +1 -0
  77. package/dist/esm/api/dockviewPanelApi.d.ts +6 -14
  78. package/dist/esm/api/dockviewPanelApi.js +5 -3
  79. package/dist/esm/dnd/abstractDragHandler.js +1 -1
  80. package/dist/esm/dnd/dnd.d.ts +2 -2
  81. package/dist/esm/dnd/droptarget.js +4 -4
  82. package/dist/esm/dockview/components/panel/content.d.ts +2 -2
  83. package/dist/esm/dockview/components/panel/content.js +4 -2
  84. package/dist/esm/dockview/components/tab/defaultTab.d.ts +3 -3
  85. package/dist/esm/dockview/components/tab/tab.js +4 -4
  86. package/dist/esm/dockview/components/titlebar/tabsContainer.js +5 -9
  87. package/dist/esm/dockview/components/titlebar/voidContainer.js +1 -1
  88. package/dist/esm/dockview/components/watermark/watermark.d.ts +1 -1
  89. package/dist/esm/dockview/components/watermark/watermark.js +6 -6
  90. package/dist/esm/dockview/dockviewComponent.d.ts +2 -3
  91. package/dist/esm/dockview/dockviewComponent.js +65 -34
  92. package/dist/esm/dockview/dockviewGroupPanel.js +16 -12
  93. package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +3 -3
  94. package/dist/esm/dockview/dockviewGroupPanelModel.js +7 -7
  95. package/dist/esm/dockview/dockviewPanel.d.ts +4 -4
  96. package/dist/esm/dockview/dockviewPanelModel.d.ts +1 -1
  97. package/dist/esm/dockview/options.d.ts +8 -0
  98. package/dist/esm/dom.d.ts +11 -1
  99. package/dist/esm/dom.js +14 -0
  100. package/dist/esm/gridview/basePanelView.d.ts +1 -1
  101. package/dist/esm/gridview/branchNode.d.ts +1 -1
  102. package/dist/esm/gridview/branchNode.js +1 -1
  103. package/dist/esm/gridview/gridview.js +2 -2
  104. package/dist/esm/gridview/gridviewPanel.d.ts +4 -0
  105. package/dist/esm/gridview/gridviewPanel.js +40 -12
  106. package/dist/esm/gridview/leafNode.d.ts +1 -1
  107. package/dist/esm/index.d.ts +8 -9
  108. package/dist/esm/index.js +5 -6
  109. package/dist/esm/overlay/overlay.d.ts +3 -4
  110. package/dist/esm/overlay/overlay.js +1 -2
  111. package/dist/esm/overlay/overlayRenderContainer.js +1 -2
  112. package/dist/esm/paneview/defaultPaneviewHeader.d.ts +1 -1
  113. package/dist/esm/paneview/defaultPaneviewHeader.js +5 -3
  114. package/dist/esm/paneview/paneview.d.ts +3 -3
  115. package/dist/esm/paneview/paneview.js +3 -3
  116. package/dist/esm/paneview/paneviewComponent.d.ts +2 -2
  117. package/dist/esm/paneview/paneviewPanel.d.ts +2 -2
  118. package/dist/esm/paneview/paneviewPanel.js +3 -3
  119. package/dist/esm/popoutWindow.js +24 -17
  120. package/dist/esm/splitview/splitview.d.ts +6 -6
  121. package/dist/esm/splitview/splitview.js +18 -17
  122. package/dist/esm/splitview/splitviewComponent.d.ts +2 -2
  123. package/dist/esm/splitview/viewItem.d.ts +1 -1
  124. package/dist/esm/svg.js +1 -1
  125. package/dist/styles/dockview.css +133 -135
  126. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * dockview-core
3
- * @version 1.17.1
3
+ * @version 2.0.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 = ".dv-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-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-overlay-z-index: 999;\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-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-overlay-z-index: 999;\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-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-overlay-z-index: 999;\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 .dv-groupview.dv-active-group > .dv-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 .dv-groupview.dv-active-group > .dv-tabs-and-actions-container .dv-tab.dv-active-tab {\n border-top: 2px solid var(--dv-activegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .dv-groupview.dv-active-group > .dv-tabs-and-actions-container .dv-tab.dv-inactive-tab {\n border-top: 2px solid var(--dv-activegroup-hiddenpanel-tab-background-color);\n}\n.dockview-theme-vs .dv-groupview.dv-inactive-group > .dv-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 .dv-groupview.dv-inactive-group > .dv-tabs-and-actions-container .dv-tab.dv-active-tab {\n border-top: 2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .dv-groupview.dv-inactive-group > .dv-tabs-and-actions-container .dv-tab.dv-inactive-tab {\n border-top: 2px solid var(--dv-inactivegroup-hiddenpanel-tab-background-color);\n}\n\n.dockview-theme-abyss {\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-overlay-z-index: 999;\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-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-overlay-z-index: 999;\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 .dv-groupview.dv-active-group > .dv-tabs-and-actions-container > .dv-tabs-container > .dv-tab.dv-active-tab {\n position: relative;\n}\n.dockview-theme-dracula .dv-groupview.dv-active-group > .dv-tabs-and-actions-container > .dv-tabs-container > .dv-tab.dv-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 .dv-groupview.dv-inactive-group > .dv-tabs-and-actions-container > .dv-tabs-container > .dv-tab.dv-active-tab {\n position: relative;\n}\n.dockview-theme-dracula .dv-groupview.dv-inactive-group > .dv-tabs-and-actions-container > .dv-tabs-container > .dv-tab.dv-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-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-overlay-z-index: 999;\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-separator-handle-background-color: #cfd1d3;\n --dv-separator-handle-hover-background-color: #babbbb;\n}\n.dockview-theme-replit .dv-resize-container:has(> .dv-groupview) {\n border-radius: 8px;\n}\n.dockview-theme-replit .dv-groupview {\n overflow: hidden;\n border-radius: 10px;\n}\n.dockview-theme-replit .dv-groupview .dv-tabs-and-actions-container {\n border-bottom: 1px solid rgba(128, 128, 128, 0.35);\n}\n.dockview-theme-replit .dv-groupview .dv-tabs-and-actions-container .dv-tab {\n margin: 4px;\n border-radius: 8px;\n}\n.dockview-theme-replit .dv-groupview .dv-tabs-and-actions-container .dv-tab .dv-svg {\n height: 8px;\n width: 8px;\n}\n.dockview-theme-replit .dv-groupview .dv-tabs-and-actions-container .dv-tab:hover {\n background-color: #e4e5e6 !important;\n}\n.dockview-theme-replit .dv-groupview .dv-content-container {\n background-color: #fcfcfc;\n}\n.dockview-theme-replit .dv-groupview.dv-active-group {\n border: 1px solid rgba(128, 128, 128, 0.35);\n}\n.dockview-theme-replit .dv-groupview.dv-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 .dv-horizontal > .dv-sash-container > .dv-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 .dv-horizontal > .dv-sash-container > .dv-sash:not(.disabled):hover::after {\n background-color: var(--dv-separator-handle-hover-background-color);\n}\n.dv-drop-target {\n position: relative;\n}\n.dv-drop-target > .dv-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.dv-drop-target > .dv-drop-target-dropzone > .dv-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.dv-drop-target > .dv-drop-target-dropzone > .dv-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.dv-drop-target > .dv-drop-target-dropzone > .dv-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.dv-drop-target > .dv-drop-target-dropzone > .dv-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.dv-drop-target > .dv-drop-target-dropzone > .dv-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.dv-groupview.dv-active-group > .dv-tabs-and-actions-container > .dv-tabs-container > .dv-tab.dv-active-tab {\n background-color: var(--dv-activegroup-visiblepanel-tab-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.dv-groupview.dv-active-group > .dv-tabs-and-actions-container > .dv-tabs-container > .dv-tab.dv-inactive-tab {\n background-color: var(--dv-activegroup-hiddenpanel-tab-background-color);\n color: var(--dv-activegroup-hiddenpanel-tab-color);\n}\n.dv-groupview.dv-inactive-group > .dv-tabs-and-actions-container > .dv-tabs-container > .dv-tab.dv-active-tab {\n background-color: var(--dv-inactivegroup-visiblepanel-tab-background-color);\n color: var(--dv-inactivegroup-visiblepanel-tab-color);\n}\n.dv-groupview.dv-inactive-group > .dv-tabs-and-actions-container > .dv-tabs-container > .dv-tab.dv-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.dv-tab.dv-tab-dragging {\n background-color: var(--dv-activegroup-visiblepanel-tab-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.dv-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.dv-groupview:focus {\n outline: none;\n}\n.dv-groupview.dv-empty > .dv-tabs-and-actions-container {\n display: none;\n}\n.dv-groupview > .dv-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.dv-grid-view,\n.dv-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 --dv-overlay-z-index: var(--dv-overlay-z-index, 999);\n position: absolute;\n z-index: calc(var(--dv-overlay-z-index) - 2);\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: var(--dv-overlay-z-index);\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: var(--dv-overlay-z-index);\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: var(--dv-overlay-z-index);\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: var(--dv-overlay-z-index);\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: var(--dv-overlay-z-index);\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: var(--dv-overlay-z-index);\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: var(--dv-overlay-z-index);\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: var(--dv-overlay-z-index);\n position: absolute;\n cursor: se-resize;\n}\n.dv-render-overlay {\n --dv-overlay-z-index: var(--dv-overlay-z-index, 999);\n position: absolute;\n z-index: 1;\n height: 100%;\n}\n.dv-render-overlay.dv-render-overlay-float {\n z-index: calc(var(--dv-overlay-z-index) - 1);\n}\n\n.dv-debug .dv-render-overlay {\n outline: 1px solid red;\n outline-offset: -1;\n}\n.dv-pane-container {\n height: 100%;\n width: 100%;\n}\n.dv-pane-container.dv-animated .dv-view {\n transition-duration: 0.15s;\n transition-timing-function: ease-out;\n}\n.dv-pane-container .dv-view {\n overflow: hidden;\n display: flex;\n flex-direction: column;\n padding: 0px !important;\n}\n.dv-pane-container .dv-view:not(:first-child)::before {\n background-color: transparent !important;\n}\n.dv-pane-container .dv-view:not(:first-child) .dv-pane > .dv-pane-header {\n border-top: 1px solid var(--dv-paneview-header-border-color);\n}\n.dv-pane-container .dv-view .dv-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.dv-pane-container .dv-view .dv-default-header .dv-pane-header-icon {\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.dv-pane-container .dv-view .dv-default-header > span {\n padding-left: 8px;\n flex-grow: 1;\n}\n.dv-pane-container:first-of-type > .dv-pane > .dv-pane-header {\n border-top: none !important;\n}\n.dv-pane-container .dv-pane {\n display: flex;\n flex-direction: column;\n overflow: hidden;\n height: 100%;\n}\n.dv-pane-container .dv-pane .dv-pane-header {\n box-sizing: border-box;\n user-select: none;\n position: relative;\n outline: none;\n}\n.dv-pane-container .dv-pane .dv-pane-header.dv-pane-draggable {\n cursor: pointer;\n}\n.dv-pane-container .dv-pane .dv-pane-header:focus:before, .dv-pane-container .dv-pane .dv-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.dv-pane-container .dv-pane .dv-pane-body {\n overflow-y: auto;\n overflow-x: hidden;\n flex-grow: 1;\n position: relative;\n outline: none;\n}\n.dv-pane-container .dv-pane .dv-pane-body:focus:before, .dv-pane-container .dv-pane .dv-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 .dv-split-view-container .dv-sash-container .dv-sash.dv-enabled {\n background-color: black;\n}\n.dv-debug .dv-split-view-container .dv-sash-container .dv-sash.dv-disabled {\n background-color: orange;\n}\n.dv-debug .dv-split-view-container .dv-sash-container .dv-sash.dv-maximum {\n background-color: green;\n}\n.dv-debug .dv-split-view-container .dv-sash-container .dv-sash.dv-minimum {\n background-color: red;\n}\n\n.dv-split-view-container {\n position: relative;\n overflow: hidden;\n height: 100%;\n width: 100%;\n}\n.dv-split-view-container.dv-splitview-disabled > .dv-sash-container > .dv-sash {\n pointer-events: none;\n}\n.dv-split-view-container.dv-animation .dv-view,\n.dv-split-view-container.dv-animation .dv-sash {\n transition-duration: 0.15s;\n transition-timing-function: ease-out;\n}\n.dv-split-view-container.dv-horizontal {\n height: 100%;\n}\n.dv-split-view-container.dv-horizontal > .dv-sash-container > .dv-sash {\n height: 100%;\n width: 4px;\n}\n.dv-split-view-container.dv-horizontal > .dv-sash-container > .dv-sash.dv-enabled {\n cursor: ew-resize;\n}\n.dv-split-view-container.dv-horizontal > .dv-sash-container > .dv-sash.dv-disabled {\n cursor: default;\n}\n.dv-split-view-container.dv-horizontal > .dv-sash-container > .dv-sash.dv-maximum {\n cursor: w-resize;\n}\n.dv-split-view-container.dv-horizontal > .dv-sash-container > .dv-sash.dv-minimum {\n cursor: e-resize;\n}\n.dv-split-view-container.dv-horizontal > .dv-view-container > .dv-view:not(:first-child)::before {\n height: 100%;\n width: 1px;\n}\n.dv-split-view-container.dv-vertical {\n width: 100%;\n}\n.dv-split-view-container.dv-vertical > .dv-sash-container > .dv-sash {\n width: 100%;\n height: 4px;\n}\n.dv-split-view-container.dv-vertical > .dv-sash-container > .dv-sash.dv-enabled {\n cursor: ns-resize;\n}\n.dv-split-view-container.dv-vertical > .dv-sash-container > .dv-sash.dv-disabled {\n cursor: default;\n}\n.dv-split-view-container.dv-vertical > .dv-sash-container > .dv-sash.dv-maximum {\n cursor: n-resize;\n}\n.dv-split-view-container.dv-vertical > .dv-sash-container > .dv-sash.dv-minimum {\n cursor: s-resize;\n}\n.dv-split-view-container.dv-vertical > .dv-view-container > .dv-view {\n width: 100%;\n}\n.dv-split-view-container.dv-vertical > .dv-view-container > .dv-view:not(:first-child)::before {\n height: 1px;\n width: 100%;\n}\n.dv-split-view-container .dv-sash-container {\n height: 100%;\n width: 100%;\n position: absolute;\n}\n.dv-split-view-container .dv-sash-container .dv-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.dv-split-view-container .dv-sash-container .dv-sash:not(.disabled):active {\n transition: background-color 0.1s ease-in-out;\n background-color: var(--dv-active-sash-color, transparent);\n}\n.dv-split-view-container .dv-sash-container .dv-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.dv-split-view-container .dv-view-container {\n position: relative;\n height: 100%;\n width: 100%;\n}\n.dv-split-view-container .dv-view-container .dv-view {\n height: 100%;\n box-sizing: border-box;\n overflow: auto;\n position: absolute;\n}\n.dv-split-view-container.dv-separator-border .dv-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.dv-tab {\n flex-shrink: 0;\n}\n.dv-tab:focus-within, .dv-tab:focus {\n position: relative;\n}\n.dv-tab:focus-within::after, .dv-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.dv-tab.dv-tab-dragging .dv-default-tab-action {\n background-color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.dv-tab.dv-active-tab .dv-default-tab .dv-default-tab-action {\n visibility: visible;\n}\n.dv-tab.dv-inactive-tab .dv-default-tab .dv-default-tab-action {\n visibility: hidden;\n}\n.dv-tab.dv-inactive-tab .dv-default-tab:hover .dv-default-tab-action {\n visibility: visible;\n}\n.dv-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.dv-tab .dv-default-tab .dv-default-tab-content {\n padding: 0px 8px;\n flex-grow: 1;\n}\n.dv-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.dv-tab .dv-default-tab .dv-default-tab-action:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-hover-background-color);\n}\n.dv-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.dv-tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .dv-tabs-container {\n flex-grow: 1;\n}\n.dv-tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .dv-tabs-container .dv-tab {\n flex-grow: 1;\n}\n.dv-tabs-and-actions-container.dv-single-tab.dv-full-width-single-tab .dv-void-container {\n flex-grow: 0;\n}\n.dv-tabs-and-actions-container .dv-void-container {\n display: flex;\n flex-grow: 1;\n cursor: grab;\n}\n.dv-tabs-and-actions-container .dv-tabs-container {\n display: flex;\n overflow-x: overlay;\n overflow-y: hidden;\n scrollbar-width: thin;\n /* Track */\n /* Handle */\n}\n.dv-tabs-and-actions-container .dv-tabs-container::-webkit-scrollbar {\n height: 3px;\n}\n.dv-tabs-and-actions-container .dv-tabs-container::-webkit-scrollbar-track {\n background: transparent;\n}\n.dv-tabs-and-actions-container .dv-tabs-container::-webkit-scrollbar-thumb {\n background: var(--dv-tabs-container-scrollbar-color);\n}\n.dv-tabs-and-actions-container .dv-tabs-container .dv-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.dv-tabs-and-actions-container .dv-tabs-container .dv-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.dv-watermark {\n display: flex;\n width: 100%;\n}\n.dv-watermark.dv-has-actions .dv-watermark-title .dv-actions-container {\n display: none;\n}\n.dv-watermark .dv-watermark-title {\n height: 35px;\n width: 100%;\n display: flex;\n}\n.dv-watermark .dv-watermark-content {\n flex-grow: 1;\n}\n.dv-watermark .dv-actions-container {\n display: flex;\n align-items: center;\n padding: 0px 8px;\n}\n.dv-watermark .dv-actions-container .dv-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.dv-watermark .dv-actions-container .dv-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 {
@@ -354,31 +354,6 @@ define(['exports'], (function (exports) { 'use strict';
354
354
  }
355
355
  }
356
356
 
357
- function createComponent(id, componentName, components = {}, frameworkComponents = {}, createFrameworkComponent, fallback) {
358
- const Component = typeof componentName === 'string'
359
- ? components[componentName]
360
- : undefined;
361
- const FrameworkComponent = typeof componentName === 'string'
362
- ? frameworkComponents[componentName]
363
- : undefined;
364
- if (Component && FrameworkComponent) {
365
- throw new Error(`Cannot create '${id}'. component '${componentName}' registered as both a component and frameworkComponent`);
366
- }
367
- if (FrameworkComponent) {
368
- if (!createFrameworkComponent) {
369
- throw new Error(`Cannot create '${id}' for framework component '${componentName}'. you must register a frameworkPanelWrapper to use framework components`);
370
- }
371
- return createFrameworkComponent.createComponent(id, componentName, FrameworkComponent);
372
- }
373
- if (!Component) {
374
- if (fallback) {
375
- return fallback();
376
- }
377
- throw new Error(`Cannot create '${id}', no component '${componentName}' provided`);
378
- }
379
- return new Component(id, componentName);
380
- }
381
-
382
357
  function watchElementResize(element, cb) {
383
358
  const observer = new ResizeObserver((entires) => {
384
359
  /**
@@ -847,10 +822,10 @@ define(['exports'], (function (exports) { 'use strict';
847
822
  const tmp = this.size;
848
823
  this.size = this.orthogonalSize;
849
824
  this.orthogonalSize = tmp;
850
- removeClasses(this.element, 'horizontal', 'vertical');
825
+ removeClasses(this.element, 'dv-horizontal', 'dv-vertical');
851
826
  this.element.classList.add(this.orientation == exports.Orientation.HORIZONTAL
852
- ? 'horizontal'
853
- : 'vertical');
827
+ ? 'dv-horizontal'
828
+ : 'dv-vertical');
854
829
  }
855
830
  get minimumSize() {
856
831
  return this.viewItems.reduce((r, item) => r + item.minimumSize, 0);
@@ -1028,11 +1003,11 @@ define(['exports'], (function (exports) { 'use strict';
1028
1003
  }
1029
1004
  style(styles) {
1030
1005
  if ((styles === null || styles === void 0 ? void 0 : styles.separatorBorder) === 'transparent') {
1031
- removeClasses(this.element, 'separator-border');
1006
+ removeClasses(this.element, 'dv-separator-border');
1032
1007
  this.element.style.removeProperty('--dv-separator-border');
1033
1008
  }
1034
1009
  else {
1035
- addClasses(this.element, 'separator-border');
1010
+ addClasses(this.element, 'dv-separator-border');
1036
1011
  if (styles === null || styles === void 0 ? void 0 : styles.separatorBorder) {
1037
1012
  this.element.style.setProperty('--dv-separator-border', styles.separatorBorder);
1038
1013
  }
@@ -1102,7 +1077,7 @@ define(['exports'], (function (exports) { 'use strict';
1102
1077
  }
1103
1078
  addView(view, size = { type: 'distribute' }, index = this.viewItems.length, skipLayout) {
1104
1079
  const container = document.createElement('div');
1105
- container.className = 'view';
1080
+ container.className = 'dv-view';
1106
1081
  container.appendChild(view.element);
1107
1082
  let viewSize;
1108
1083
  if (typeof size === 'number') {
@@ -1134,7 +1109,7 @@ define(['exports'], (function (exports) { 'use strict';
1134
1109
  if (this.viewItems.length > 1) {
1135
1110
  //add sash
1136
1111
  const sash = document.createElement('div');
1137
- sash.className = 'sash';
1112
+ sash.className = 'dv-sash';
1138
1113
  const onPointerStart = (event) => {
1139
1114
  for (const item of this.viewItems) {
1140
1115
  item.enabled = false;
@@ -1393,7 +1368,8 @@ define(['exports'], (function (exports) { 'use strict';
1393
1368
  const offset = i === 0 || visiblePanelsBeforeThisView === 0
1394
1369
  ? 0
1395
1370
  : viewLeftOffsets[i - 1] +
1396
- (visiblePanelsBeforeThisView / sashCount) * marginReducedSize;
1371
+ (visiblePanelsBeforeThisView / sashCount) *
1372
+ marginReducedSize;
1397
1373
  if (i < this.viewItems.length - 1) {
1398
1374
  // calculate sash position
1399
1375
  const newSize = view.visible
@@ -1504,27 +1480,27 @@ define(['exports'], (function (exports) { 'use strict';
1504
1480
  }
1505
1481
  }
1506
1482
  updateSash(sash, state) {
1507
- toggleClass(sash.container, 'disabled', state === exports.SashState.DISABLED);
1508
- toggleClass(sash.container, 'enabled', state === exports.SashState.ENABLED);
1509
- toggleClass(sash.container, 'maximum', state === exports.SashState.MAXIMUM);
1510
- toggleClass(sash.container, 'minimum', state === exports.SashState.MINIMUM);
1483
+ toggleClass(sash.container, 'dv-disabled', state === exports.SashState.DISABLED);
1484
+ toggleClass(sash.container, 'dv-enabled', state === exports.SashState.ENABLED);
1485
+ toggleClass(sash.container, 'dv-maximum', state === exports.SashState.MAXIMUM);
1486
+ toggleClass(sash.container, 'dv-minimum', state === exports.SashState.MINIMUM);
1511
1487
  }
1512
1488
  createViewContainer() {
1513
1489
  const element = document.createElement('div');
1514
- element.className = 'view-container';
1490
+ element.className = 'dv-view-container';
1515
1491
  return element;
1516
1492
  }
1517
1493
  createSashContainer() {
1518
1494
  const element = document.createElement('div');
1519
- element.className = 'sash-container';
1495
+ element.className = 'dv-sash-container';
1520
1496
  return element;
1521
1497
  }
1522
1498
  createContainer() {
1523
1499
  const element = document.createElement('div');
1524
1500
  const orientationClassname = this._orientation === exports.Orientation.HORIZONTAL
1525
- ? 'horizontal'
1526
- : 'vertical';
1527
- element.className = `split-view-container ${orientationClassname}`;
1501
+ ? 'dv-horizontal'
1502
+ : 'dv-vertical';
1503
+ element.className = `dv-split-view-container ${orientationClassname}`;
1528
1504
  return element;
1529
1505
  }
1530
1506
  dispose() {
@@ -1575,7 +1551,7 @@ define(['exports'], (function (exports) { 'use strict';
1575
1551
  this.onDidChange = this._onDidChange.event;
1576
1552
  this._orientation = (_a = options.orientation) !== null && _a !== void 0 ? _a : exports.Orientation.VERTICAL;
1577
1553
  this.element = document.createElement('div');
1578
- this.element.className = 'pane-container';
1554
+ this.element.className = 'dv-pane-container';
1579
1555
  container.appendChild(this.element);
1580
1556
  this.splitview = new Splitview(this.element, {
1581
1557
  orientation: this._orientation,
@@ -1667,10 +1643,10 @@ define(['exports'], (function (exports) { 'use strict';
1667
1643
  clearTimeout(this.animationTimer);
1668
1644
  this.animationTimer = undefined;
1669
1645
  }
1670
- addClasses(this.element, 'animated');
1646
+ addClasses(this.element, 'dv-animated');
1671
1647
  this.animationTimer = setTimeout(() => {
1672
1648
  this.animationTimer = undefined;
1673
- removeClasses(this.element, 'animated');
1649
+ removeClasses(this.element, 'dv-animated');
1674
1650
  }, 200);
1675
1651
  }
1676
1652
  dispose() {
@@ -1895,7 +1871,7 @@ define(['exports'], (function (exports) { 'use strict';
1895
1871
  this._orthogonalSize = orthogonalSize;
1896
1872
  this._size = size;
1897
1873
  this.element = document.createElement('div');
1898
- this.element.className = 'branch-node';
1874
+ this.element.className = 'dv-branch-node';
1899
1875
  if (!childDescriptors) {
1900
1876
  this.splitview = new Splitview(this.element, {
1901
1877
  orientation: this.orientation,
@@ -2106,7 +2082,7 @@ define(['exports'], (function (exports) { 'use strict';
2106
2082
  if (!parentElement) {
2107
2083
  throw new Error('Invalid grid element');
2108
2084
  }
2109
- if (/\bgrid-view\b/.test(parentElement.className)) {
2085
+ if (/\bdv-grid-view\b/.test(parentElement.className)) {
2110
2086
  return [];
2111
2087
  }
2112
2088
  const index = indexInParent(parentElement);
@@ -2454,7 +2430,7 @@ define(['exports'], (function (exports) { 'use strict';
2454
2430
  this._onDidMaximizedNodeChange = new Emitter();
2455
2431
  this.onDidMaximizedNodeChange = this._onDidMaximizedNodeChange.event;
2456
2432
  this.element = document.createElement('div');
2457
- this.element.className = 'grid-view';
2433
+ this.element.className = 'dv-grid-view';
2458
2434
  this._locked = locked !== null && locked !== void 0 ? locked : false;
2459
2435
  this._margin = margin !== null && margin !== void 0 ? margin : 0;
2460
2436
  this.root = new BranchNode(orientation, proportionalLayout, styles, 0, 0, this.locked, this.margin);
@@ -3676,7 +3652,7 @@ define(['exports'], (function (exports) { 'use strict';
3676
3652
  * dnd logic. You can see the code at
3677
3653
  * https://github.com/react-dnd/react-dnd/blob/main/packages/backend-html5/src/HTML5BackendImpl.ts#L542
3678
3654
  */
3679
- event.dataTransfer.setData('text/plain', '__dockview_internal_drag_event__');
3655
+ event.dataTransfer.setData('text/plain', '');
3680
3656
  }
3681
3657
  }
3682
3658
  }), addDisposableListener(this.el, 'dragend', () => {
@@ -3850,12 +3826,12 @@ define(['exports'], (function (exports) { 'use strict';
3850
3826
  this.markAsUsed(e);
3851
3827
  if (!this.targetElement) {
3852
3828
  this.targetElement = document.createElement('div');
3853
- this.targetElement.className = 'drop-target-dropzone';
3829
+ this.targetElement.className = 'dv-drop-target-dropzone';
3854
3830
  this.overlayElement = document.createElement('div');
3855
- this.overlayElement.className = 'drop-target-selection';
3831
+ this.overlayElement.className = 'dv-drop-target-selection';
3856
3832
  this._state = 'center';
3857
3833
  this.targetElement.appendChild(this.overlayElement);
3858
- this.element.classList.add('drop-target');
3834
+ this.element.classList.add('dv-drop-target');
3859
3835
  this.element.append(this.targetElement);
3860
3836
  }
3861
3837
  this.toggleClasses(quadrant, width, height);
@@ -3993,7 +3969,7 @@ define(['exports'], (function (exports) { 'use strict';
3993
3969
  this.element.removeChild(this.targetElement);
3994
3970
  this.targetElement = undefined;
3995
3971
  this.overlayElement = undefined;
3996
- this.element.classList.remove('drop-target');
3972
+ this.element.classList.remove('dv-drop-target');
3997
3973
  }
3998
3974
  }
3999
3975
  }
@@ -4330,7 +4306,7 @@ define(['exports'], (function (exports) { 'use strict';
4330
4306
  this._headerVisible = isHeaderVisible;
4331
4307
  this._onDidChangeExpansionState.fire(this.isExpanded()); // initialize value
4332
4308
  this._orientation = orientation;
4333
- this.element.classList.add('pane');
4309
+ this.element.classList.add('dv-pane');
4334
4310
  this.addDisposables(this.api.onWillVisibilityChange((event) => {
4335
4311
  const { isVisible } = event;
4336
4312
  const { accessor } = this._params;
@@ -4427,14 +4403,14 @@ define(['exports'], (function (exports) { 'use strict';
4427
4403
  renderOnce() {
4428
4404
  this.header = document.createElement('div');
4429
4405
  this.header.tabIndex = 0;
4430
- this.header.className = 'pane-header';
4406
+ this.header.className = 'dv-pane-header';
4431
4407
  this.header.style.height = `${this.headerSize}px`;
4432
4408
  this.header.style.lineHeight = `${this.headerSize}px`;
4433
4409
  this.header.style.minHeight = `${this.headerSize}px`;
4434
4410
  this.header.style.maxHeight = `${this.headerSize}px`;
4435
4411
  this.element.appendChild(this.header);
4436
4412
  this.body = document.createElement('div');
4437
- this.body.className = 'pane-body';
4413
+ this.body.className = 'dv-pane-body';
4438
4414
  this.element.appendChild(this.body);
4439
4415
  }
4440
4416
  // TODO slightly hacky by-pass of the component to create a body and header component
@@ -4555,7 +4531,7 @@ define(['exports'], (function (exports) { 'use strict';
4555
4531
  this._onDidBlur = new Emitter();
4556
4532
  this.onDidBlur = this._onDidBlur.event;
4557
4533
  this._element = document.createElement('div');
4558
- this._element.className = 'content-container';
4534
+ this._element.className = 'dv-content-container';
4559
4535
  this._element.tabIndex = -1;
4560
4536
  this.addDisposables(this._onDidFocus, this._onDidBlur);
4561
4537
  this.dropTarget = new Droptarget(this.element, {
@@ -4628,6 +4604,8 @@ define(['exports'], (function (exports) { 'use strict';
4628
4604
  referenceContainer: this,
4629
4605
  });
4630
4606
  break;
4607
+ default:
4608
+ throw new Error(`dockview: invalid renderer type '${panel.api.renderer}'`);
4631
4609
  }
4632
4610
  if (doRender) {
4633
4611
  const focusTracker = trackFocus(container);
@@ -4694,10 +4672,10 @@ define(['exports'], (function (exports) { 'use strict';
4694
4672
  this._onDragStart = new Emitter();
4695
4673
  this.onDragStart = this._onDragStart.event;
4696
4674
  this._element = document.createElement('div');
4697
- this._element.className = 'tab';
4675
+ this._element.className = 'dv-tab';
4698
4676
  this._element.tabIndex = 0;
4699
4677
  this._element.draggable = true;
4700
- toggleClass(this.element, 'inactive-tab', true);
4678
+ toggleClass(this.element, 'dv-inactive-tab', true);
4701
4679
  const dragHandler = new TabDragHandler(this._element, this.accessor, this.group, this.panel);
4702
4680
  this.dropTarget = new Droptarget(this._element, {
4703
4681
  acceptedTargetZones: ['center'],
@@ -4730,8 +4708,8 @@ define(['exports'], (function (exports) { 'use strict';
4730
4708
  }), this.dropTarget);
4731
4709
  }
4732
4710
  setActive(isActive) {
4733
- toggleClass(this.element, 'active-tab', isActive);
4734
- toggleClass(this.element, 'inactive-tab', !isActive);
4711
+ toggleClass(this.element, 'dv-active-tab', isActive);
4712
+ toggleClass(this.element, 'dv-inactive-tab', !isActive);
4735
4713
  }
4736
4714
  setContent(part) {
4737
4715
  if (this.content) {
@@ -4819,7 +4797,7 @@ define(['exports'], (function (exports) { 'use strict';
4819
4797
  this._onDragStart = new Emitter();
4820
4798
  this.onDragStart = this._onDragStart.event;
4821
4799
  this._element = document.createElement('div');
4822
- this._element.className = 'void-container';
4800
+ this._element.className = 'dv-void-container';
4823
4801
  this._element.tabIndex = 0;
4824
4802
  this._element.draggable = true;
4825
4803
  this.addDisposables(this._onDrop, this._onDragStart, addDisposableListener(this._element, 'pointerdown', () => {
@@ -4939,16 +4917,16 @@ define(['exports'], (function (exports) { 'use strict';
4939
4917
  this._onWillShowOverlay = new Emitter();
4940
4918
  this.onWillShowOverlay = this._onWillShowOverlay.event;
4941
4919
  this._element = document.createElement('div');
4942
- this._element.className = 'tabs-and-actions-container';
4920
+ this._element.className = 'dv-tabs-and-actions-container';
4943
4921
  toggleClass(this._element, 'dv-full-width-single-tab', this.accessor.options.singleTabMode === 'fullwidth');
4944
4922
  this.rightActionsContainer = document.createElement('div');
4945
- this.rightActionsContainer.className = 'right-actions-container';
4923
+ this.rightActionsContainer.className = 'dv-right-actions-container';
4946
4924
  this.leftActionsContainer = document.createElement('div');
4947
- this.leftActionsContainer.className = 'left-actions-container';
4925
+ this.leftActionsContainer.className = 'dv-left-actions-container';
4948
4926
  this.preActionsContainer = document.createElement('div');
4949
- this.preActionsContainer.className = 'pre-actions-container';
4927
+ this.preActionsContainer.className = 'dv-pre-actions-container';
4950
4928
  this.tabContainer = document.createElement('div');
4951
- this.tabContainer.className = 'tabs-container';
4929
+ this.tabContainer.className = 'dv-tabs-container';
4952
4930
  this.voidContainer = new VoidContainer(this.accessor, this.group);
4953
4931
  this._element.appendChild(this.preActionsContainer);
4954
4932
  this._element.appendChild(this.tabContainer);
@@ -5037,14 +5015,10 @@ define(['exports'], (function (exports) { 'use strict';
5037
5015
  });
5038
5016
  }
5039
5017
  openPanel(panel, index = this.tabs.length) {
5040
- var _a;
5041
5018
  if (this.tabs.find((tab) => tab.value.panel.id === panel.id)) {
5042
5019
  return;
5043
5020
  }
5044
5021
  const tab = new Tab(panel, this.accessor, this.group);
5045
- if (!((_a = panel.view) === null || _a === void 0 ? void 0 : _a.tab)) {
5046
- throw new Error('invalid header component');
5047
- }
5048
5022
  tab.setContent(panel.view.tab);
5049
5023
  const disposable = new CompositeDisposable(tab.onDragStart((event) => {
5050
5024
  this._onTabDragStart.fire({ nativeEvent: event, panel });
@@ -5234,7 +5208,7 @@ define(['exports'], (function (exports) { 'use strict';
5234
5208
  }
5235
5209
  class DockviewGroupPanelModel extends CompositeDisposable {
5236
5210
  get element() {
5237
- throw new Error('not supported');
5211
+ throw new Error('dockview: not supported');
5238
5212
  }
5239
5213
  get activePanel() {
5240
5214
  return this._activePanel;
@@ -5244,7 +5218,7 @@ define(['exports'], (function (exports) { 'use strict';
5244
5218
  }
5245
5219
  set locked(value) {
5246
5220
  this._locked = value;
5247
- toggleClass(this.container, 'locked-groupview', value === 'no-drop-target' || value);
5221
+ toggleClass(this.container, 'dv-locked-groupview', value === 'no-drop-target' || value);
5248
5222
  }
5249
5223
  get isActive() {
5250
5224
  return this._isGroupActive;
@@ -5315,6 +5289,7 @@ define(['exports'], (function (exports) { 'use strict';
5315
5289
  this._locked = false;
5316
5290
  this._location = { type: 'grid' };
5317
5291
  this.mostRecentlyUsed = [];
5292
+ this._overwriteRenderContainer = null;
5318
5293
  this._onDidChange = new Emitter();
5319
5294
  this.onDidChange = this._onDidChange.event;
5320
5295
  this._width = 0;
@@ -5345,8 +5320,7 @@ define(['exports'], (function (exports) { 'use strict';
5345
5320
  this.onDidActivePanelChange = this._onDidActivePanelChange.event;
5346
5321
  this._onUnhandledDragOverEvent = new Emitter();
5347
5322
  this.onUnhandledDragOverEvent = this._onUnhandledDragOverEvent.event;
5348
- this._overwriteRenderContainer = null;
5349
- toggleClass(this.container, 'groupview', true);
5323
+ toggleClass(this.container, 'dv-groupview', true);
5350
5324
  this._api = new DockviewApi(this.accessor);
5351
5325
  this.tabsContainer = new TabsContainer(this.accessor, this.groupPanel);
5352
5326
  this.contentContainer = new ContentContainer(this.accessor, this);
@@ -5591,8 +5565,8 @@ define(['exports'], (function (exports) { 'use strict';
5591
5565
  return;
5592
5566
  }
5593
5567
  this._isGroupActive = isGroupActive;
5594
- toggleClass(this.container, 'active-group', isGroupActive);
5595
- toggleClass(this.container, 'inactive-group', !isGroupActive);
5568
+ toggleClass(this.container, 'dv-active-group', isGroupActive);
5569
+ toggleClass(this.container, 'dv-inactive-group', !isGroupActive);
5596
5570
  this.tabsContainer.setActive(this.isActive);
5597
5571
  if (!this._activePanel && this.panels.length > 0) {
5598
5572
  this.doSetActivePanel(this.panels[0]);
@@ -5684,7 +5658,7 @@ define(['exports'], (function (exports) { 'use strict';
5684
5658
  }
5685
5659
  updateContainer() {
5686
5660
  var _a, _b;
5687
- toggleClass(this.container, 'empty', this.isEmpty);
5661
+ toggleClass(this.container, 'dv-empty', this.isEmpty);
5688
5662
  this.panels.forEach((panel) => panel.runEvents());
5689
5663
  if (this.isEmpty && !this.watermark) {
5690
5664
  const watermark = this.accessor.createWatermarkComponent();
@@ -5825,6 +5799,34 @@ define(['exports'], (function (exports) { 'use strict';
5825
5799
  return this._snap;
5826
5800
  }
5827
5801
  get minimumWidth() {
5802
+ /**
5803
+ * defer to protected function to allow subclasses to override easily.
5804
+ * see https://github.com/microsoft/TypeScript/issues/338
5805
+ */
5806
+ return this.__minimumWidth();
5807
+ }
5808
+ get minimumHeight() {
5809
+ /**
5810
+ * defer to protected function to allow subclasses to override easily.
5811
+ * see https://github.com/microsoft/TypeScript/issues/338
5812
+ */
5813
+ return this.__minimumHeight();
5814
+ }
5815
+ get maximumHeight() {
5816
+ /**
5817
+ * defer to protected function to allow subclasses to override easily.
5818
+ * see https://github.com/microsoft/TypeScript/issues/338
5819
+ */
5820
+ return this.__maximumHeight();
5821
+ }
5822
+ get maximumWidth() {
5823
+ /**
5824
+ * defer to protected function to allow subclasses to override easily.
5825
+ * see https://github.com/microsoft/TypeScript/issues/338
5826
+ */
5827
+ return this.__maximumWidth();
5828
+ }
5829
+ __minimumWidth() {
5828
5830
  const width = typeof this._minimumWidth === 'function'
5829
5831
  ? this._minimumWidth()
5830
5832
  : this._minimumWidth;
@@ -5834,7 +5836,17 @@ define(['exports'], (function (exports) { 'use strict';
5834
5836
  }
5835
5837
  return width;
5836
5838
  }
5837
- get minimumHeight() {
5839
+ __maximumWidth() {
5840
+ const width = typeof this._maximumWidth === 'function'
5841
+ ? this._maximumWidth()
5842
+ : this._maximumWidth;
5843
+ if (width !== this._evaluatedMaximumWidth) {
5844
+ this._evaluatedMaximumWidth = width;
5845
+ this.updateConstraints();
5846
+ }
5847
+ return width;
5848
+ }
5849
+ __minimumHeight() {
5838
5850
  const height = typeof this._minimumHeight === 'function'
5839
5851
  ? this._minimumHeight()
5840
5852
  : this._minimumHeight;
@@ -5844,7 +5856,7 @@ define(['exports'], (function (exports) { 'use strict';
5844
5856
  }
5845
5857
  return height;
5846
5858
  }
5847
- get maximumHeight() {
5859
+ __maximumHeight() {
5848
5860
  const height = typeof this._maximumHeight === 'function'
5849
5861
  ? this._maximumHeight()
5850
5862
  : this._maximumHeight;
@@ -5854,16 +5866,6 @@ define(['exports'], (function (exports) { 'use strict';
5854
5866
  }
5855
5867
  return height;
5856
5868
  }
5857
- get maximumWidth() {
5858
- const width = typeof this._maximumWidth === 'function'
5859
- ? this._maximumWidth()
5860
- : this._maximumWidth;
5861
- if (width !== this._evaluatedMaximumWidth) {
5862
- this._evaluatedMaximumWidth = width;
5863
- this.updateConstraints();
5864
- }
5865
- return width;
5866
- }
5867
5869
  get isActive() {
5868
5870
  return this.api.isActive;
5869
5871
  }
@@ -6014,6 +6016,7 @@ define(['exports'], (function (exports) { 'use strict';
6014
6016
  position: options.group
6015
6017
  ? (_c = options.position) !== null && _c !== void 0 ? _c : 'center'
6016
6018
  : 'center',
6019
+ index: options.index,
6017
6020
  },
6018
6021
  });
6019
6022
  }
@@ -6065,30 +6068,34 @@ define(['exports'], (function (exports) { 'use strict';
6065
6068
  get minimumWidth() {
6066
6069
  var _a;
6067
6070
  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
+ if (typeof activePanelMinimumWidth === 'number') {
6072
+ return activePanelMinimumWidth;
6073
+ }
6074
+ return super.__minimumWidth();
6071
6075
  }
6072
6076
  get minimumHeight() {
6073
6077
  var _a;
6074
6078
  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;
6079
+ if (typeof activePanelMinimumHeight === 'number') {
6080
+ return activePanelMinimumHeight;
6081
+ }
6082
+ return super.__minimumHeight();
6078
6083
  }
6079
6084
  get maximumWidth() {
6080
6085
  var _a;
6081
6086
  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;
6087
+ if (typeof activePanelMaximumWidth === 'number') {
6088
+ return activePanelMaximumWidth;
6089
+ }
6090
+ return super.__maximumWidth();
6085
6091
  }
6086
6092
  get maximumHeight() {
6087
6093
  var _a;
6088
6094
  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;
6095
+ if (typeof activePanelMaximumHeight === 'number') {
6096
+ return activePanelMaximumHeight;
6097
+ }
6098
+ return super.__maximumHeight();
6092
6099
  }
6093
6100
  get panels() {
6094
6101
  return this._model.panels;
@@ -6202,12 +6209,14 @@ define(['exports'], (function (exports) { 'use strict';
6202
6209
  return this.group.api.getWindow();
6203
6210
  }
6204
6211
  moveTo(options) {
6205
- var _a;
6212
+ var _a, _b;
6206
6213
  this.accessor.moveGroupOrPanel({
6207
6214
  from: { groupId: this._group.id, panelId: this.panel.id },
6208
6215
  to: {
6209
- group: options.group,
6210
- position: (_a = options.position) !== null && _a !== void 0 ? _a : 'center',
6216
+ group: (_a = options.group) !== null && _a !== void 0 ? _a : this._group,
6217
+ position: options.group
6218
+ ? (_b = options.position) !== null && _b !== void 0 ? _b : 'center'
6219
+ : 'center',
6211
6220
  index: options.index,
6212
6221
  },
6213
6222
  });
@@ -6426,7 +6435,7 @@ define(['exports'], (function (exports) { 'use strict';
6426
6435
  svg.setAttributeNS(null, 'viewBox', params.viewbox);
6427
6436
  svg.setAttributeNS(null, 'aria-hidden', 'false');
6428
6437
  svg.setAttributeNS(null, 'focusable', 'false');
6429
- svg.classList.add('dockview-svg');
6438
+ svg.classList.add('dv-svg');
6430
6439
  const path = document.createElementNS('http://www.w3.org/2000/svg', 'path');
6431
6440
  path.setAttributeNS(null, 'd', params.path);
6432
6441
  svg.appendChild(path);
@@ -6597,19 +6606,19 @@ define(['exports'], (function (exports) { 'use strict';
6597
6606
  constructor() {
6598
6607
  super();
6599
6608
  this._element = document.createElement('div');
6600
- this._element.className = 'watermark';
6609
+ this._element.className = 'dv-watermark';
6601
6610
  const title = document.createElement('div');
6602
- title.className = 'watermark-title';
6611
+ title.className = 'dv-watermark-title';
6603
6612
  const emptySpace = document.createElement('span');
6604
6613
  emptySpace.style.flexGrow = '1';
6605
6614
  const content = document.createElement('div');
6606
- content.className = 'watermark-content';
6615
+ content.className = 'dv-watermark-content';
6607
6616
  this._element.appendChild(title);
6608
6617
  this._element.appendChild(content);
6609
6618
  const actionsContainer = document.createElement('div');
6610
- actionsContainer.className = 'actions-container';
6619
+ actionsContainer.className = 'dv-actions-container';
6611
6620
  const closeAnchor = document.createElement('div');
6612
- closeAnchor.className = 'close-action';
6621
+ closeAnchor.className = 'dv-close-action';
6613
6622
  closeAnchor.appendChild(createCloseButton());
6614
6623
  actionsContainer.appendChild(closeAnchor);
6615
6624
  title.appendChild(emptySpace);
@@ -6629,11 +6638,10 @@ define(['exports'], (function (exports) { 'use strict';
6629
6638
  }
6630
6639
  render() {
6631
6640
  const isOneGroup = !!(this._api && this._api.size <= 1);
6632
- toggleClass(this.element, 'has-actions', isOneGroup);
6641
+ toggleClass(this.element, 'dv-has-actions', isOneGroup);
6633
6642
  }
6634
6643
  }
6635
6644
 
6636
- const DEFAULT_OVERLAY_Z_INDEX = 999;
6637
6645
  class AriaLevelTracker {
6638
6646
  constructor() {
6639
6647
  this._orderedList = [];
@@ -6652,7 +6660,7 @@ define(['exports'], (function (exports) { 'use strict';
6652
6660
  update() {
6653
6661
  for (let i = 0; i < this._orderedList.length; i++) {
6654
6662
  this._orderedList[i].setAttribute('aria-level', `${i}`);
6655
- this._orderedList[i].style.zIndex = `${DEFAULT_OVERLAY_Z_INDEX + i * 2}`;
6663
+ this._orderedList[i].style.zIndex = `calc(var(--dv-overlay-z-index, 999) + ${i * 2})`;
6656
6664
  }
6657
6665
  }
6658
6666
  }
@@ -7109,7 +7117,7 @@ define(['exports'], (function (exports) { 'use strict';
7109
7117
  const element = floatingGroup.overlay.element;
7110
7118
  const update = () => {
7111
7119
  const level = Number(element.getAttribute('aria-level'));
7112
- focusContainer.style.zIndex = `${DEFAULT_OVERLAY_Z_INDEX + level * 2 + 1}`;
7120
+ focusContainer.style.zIndex = `calc(var(--dv-overlay-z-index, 999) + ${level * 2 + 1})`;
7113
7121
  };
7114
7122
  const observer = new MutationObserver(() => {
7115
7123
  update();
@@ -7264,7 +7272,6 @@ define(['exports'], (function (exports) { 'use strict';
7264
7272
  window: this._window.value,
7265
7273
  });
7266
7274
  this._window.disposable.dispose();
7267
- this._window.value.close();
7268
7275
  this._window = null;
7269
7276
  this._onDidClose.fire();
7270
7277
  }
@@ -7296,7 +7303,9 @@ define(['exports'], (function (exports) { 'use strict';
7296
7303
  }
7297
7304
  const disposable = new CompositeDisposable();
7298
7305
  this._window = { value: externalWindow, disposable };
7299
- disposable.addDisposables(addDisposableWindowListener(window, 'beforeunload', () => {
7306
+ disposable.addDisposables(exports.DockviewDisposable.from(() => {
7307
+ externalWindow.close();
7308
+ }), addDisposableWindowListener(window, 'beforeunload', () => {
7300
7309
  /**
7301
7310
  * before the main window closes we should close this popup too
7302
7311
  * to be good citizens
@@ -7313,7 +7322,7 @@ define(['exports'], (function (exports) { 'use strict';
7313
7322
  id: this.target,
7314
7323
  window: externalWindow,
7315
7324
  });
7316
- return new Promise((resolve) => {
7325
+ return new Promise((resolve, reject) => {
7317
7326
  externalWindow.addEventListener('unload', (e) => {
7318
7327
  // if page fails to load before unloading
7319
7328
  // this.close();
@@ -7322,21 +7331,27 @@ define(['exports'], (function (exports) { 'use strict';
7322
7331
  /**
7323
7332
  * @see https://developer.mozilla.org/en-US/docs/Web/API/Window/load_event
7324
7333
  */
7325
- const externalDocument = externalWindow.document;
7326
- externalDocument.title = document.title;
7327
- externalDocument.body.appendChild(container);
7328
- addStyles(externalDocument, window.document.styleSheets);
7329
- /**
7330
- * beforeunload must be registered after load for reasons I could not determine
7331
- * otherwise the beforeunload event will not fire when the window is closed
7332
- */
7333
- addDisposableWindowListener(externalWindow, 'beforeunload', () => {
7334
+ try {
7335
+ const externalDocument = externalWindow.document;
7336
+ externalDocument.title = document.title;
7337
+ externalDocument.body.appendChild(container);
7338
+ addStyles(externalDocument, window.document.styleSheets);
7334
7339
  /**
7335
- * @see https://developer.mozilla.org/en-US/docs/Web/API/Window/beforeunload_event
7340
+ * beforeunload must be registered after load for reasons I could not determine
7341
+ * otherwise the beforeunload event will not fire when the window is closed
7336
7342
  */
7337
- this.close();
7338
- });
7339
- resolve(container);
7343
+ addDisposableWindowListener(externalWindow, 'beforeunload', () => {
7344
+ /**
7345
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/Window/beforeunload_event
7346
+ */
7347
+ this.close();
7348
+ });
7349
+ resolve(container);
7350
+ }
7351
+ catch (err) {
7352
+ // only except this is the DOM isn't setup. e.g. in a in correctly configured test
7353
+ reject(err);
7354
+ }
7340
7355
  });
7341
7356
  });
7342
7357
  });
@@ -7589,9 +7604,6 @@ define(['exports'], (function (exports) { 'use strict';
7589
7604
  }
7590
7605
  const box = getBox();
7591
7606
  const groupId = (_b = (_a = options === null || options === void 0 ? void 0 : options.overridePopoutGroup) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : this.getNextGroupId();
7592
- if (itemToPopout.api.location.type === 'grid') {
7593
- itemToPopout.api.setVisible(false);
7594
- }
7595
7607
  const _window = new PopoutWindow(`${this.id}-${groupId}`, // unique id
7596
7608
  theme !== null && theme !== void 0 ? theme : '', {
7597
7609
  url: (_c = options === null || options === void 0 ? void 0 : options.popoutUrl) !== null && _c !== void 0 ? _c : '/popout.html',
@@ -7610,11 +7622,11 @@ define(['exports'], (function (exports) { 'use strict';
7610
7622
  .then((popoutContainer) => {
7611
7623
  var _a;
7612
7624
  if (_window.isDisposed) {
7613
- return;
7625
+ return false;
7614
7626
  }
7615
7627
  if (popoutContainer === null) {
7616
7628
  popoutWindowDisposable.dispose();
7617
- return;
7629
+ return false;
7618
7630
  }
7619
7631
  const gready = document.createElement('div');
7620
7632
  gready.className = 'dv-overlay-render-container';
@@ -7623,30 +7635,40 @@ define(['exports'], (function (exports) { 'use strict';
7623
7635
  ? itemToPopout.group
7624
7636
  : itemToPopout;
7625
7637
  const referenceLocation = itemToPopout.api.location.type;
7626
- const group = (_a = options === null || options === void 0 ? void 0 : options.overridePopoutGroup) !== null && _a !== void 0 ? _a : this.createGroup({ id: groupId });
7638
+ /**
7639
+ * The group that is being added doesn't already exist within the DOM, the most likely occurance
7640
+ * of this case is when being called from the `fromJSON(...)` method
7641
+ */
7642
+ const isGroupAddedToDom = referenceGroup.element.parentElement !== null;
7643
+ const group = !isGroupAddedToDom
7644
+ ? referenceGroup
7645
+ : (_a = options === null || options === void 0 ? void 0 : options.overridePopoutGroup) !== null && _a !== void 0 ? _a : this.createGroup({ id: groupId });
7627
7646
  group.model.renderContainer = overlayRenderContainer;
7628
- if (!(options === null || options === void 0 ? void 0 : options.overridePopoutGroup)) {
7647
+ group.layout(_window.window.innerWidth, _window.window.innerHeight);
7648
+ if (!this._groups.has(group.api.id)) {
7629
7649
  this._onDidAddGroup.fire(group);
7630
7650
  }
7631
- if (itemToPopout instanceof DockviewPanel) {
7632
- this.movingLock(() => {
7633
- const panel = referenceGroup.model.removePanel(itemToPopout);
7634
- group.model.openPanel(panel);
7635
- });
7636
- }
7637
- else {
7638
- this.movingLock(() => moveGroupWithoutDestroying({
7639
- from: referenceGroup,
7640
- to: group,
7641
- }));
7642
- switch (referenceLocation) {
7643
- case 'grid':
7644
- referenceGroup.api.setVisible(false);
7645
- break;
7646
- case 'floating':
7647
- case 'popout':
7648
- this.removeGroup(referenceGroup);
7649
- break;
7651
+ if (!(options === null || options === void 0 ? void 0 : options.overridePopoutGroup) && isGroupAddedToDom) {
7652
+ if (itemToPopout instanceof DockviewPanel) {
7653
+ this.movingLock(() => {
7654
+ const panel = referenceGroup.model.removePanel(itemToPopout);
7655
+ group.model.openPanel(panel);
7656
+ });
7657
+ }
7658
+ else {
7659
+ this.movingLock(() => moveGroupWithoutDestroying({
7660
+ from: referenceGroup,
7661
+ to: group,
7662
+ }));
7663
+ switch (referenceLocation) {
7664
+ case 'grid':
7665
+ referenceGroup.api.setVisible(false);
7666
+ break;
7667
+ case 'floating':
7668
+ case 'popout':
7669
+ this.removeGroup(referenceGroup);
7670
+ break;
7671
+ }
7650
7672
  }
7651
7673
  }
7652
7674
  popoutContainer.classList.add('dv-dockview');
@@ -7657,6 +7679,10 @@ define(['exports'], (function (exports) { 'use strict';
7657
7679
  type: 'popout',
7658
7680
  getWindow: () => _window.window,
7659
7681
  };
7682
+ if (isGroupAddedToDom &&
7683
+ itemToPopout.api.location.type === 'grid') {
7684
+ itemToPopout.api.setVisible(false);
7685
+ }
7660
7686
  this.doSetGroupAndPanelActive(group);
7661
7687
  popoutWindowDisposable.addDisposables(group.api.onDidActiveChange((event) => {
7662
7688
  var _a;
@@ -7671,9 +7697,13 @@ define(['exports'], (function (exports) { 'use strict';
7671
7697
  const value = {
7672
7698
  window: _window,
7673
7699
  popoutGroup: group,
7674
- referenceGroup: this.getPanel(referenceGroup.id)
7675
- ? referenceGroup.id
7676
- : undefined,
7700
+ referenceGroup: !isGroupAddedToDom
7701
+ ? undefined
7702
+ : referenceGroup
7703
+ ? this.getPanel(referenceGroup.id)
7704
+ ? referenceGroup.id
7705
+ : undefined
7706
+ : undefined,
7677
7707
  disposable: {
7678
7708
  dispose: () => {
7679
7709
  popoutWindowDisposable.dispose();
@@ -7688,9 +7718,10 @@ define(['exports'], (function (exports) { 'use strict';
7688
7718
  * window dimensions
7689
7719
  */
7690
7720
  addDisposableWindowListener(_window.window, 'resize', () => {
7691
- group.layout(window.innerWidth, window.innerHeight);
7721
+ group.layout(_window.window.innerWidth, _window.window.innerHeight);
7692
7722
  }), overlayRenderContainer, exports.DockviewDisposable.from(() => {
7693
- if (this.getPanel(referenceGroup.id)) {
7723
+ if (isGroupAddedToDom &&
7724
+ this.getPanel(referenceGroup.id)) {
7694
7725
  this.movingLock(() => moveGroupWithoutDestroying({
7695
7726
  from: group,
7696
7727
  to: referenceGroup,
@@ -7705,21 +7736,27 @@ define(['exports'], (function (exports) { 'use strict';
7705
7736
  }
7706
7737
  }
7707
7738
  else if (this.getPanel(group.id)) {
7708
- const removedGroup = this.doRemoveGroup(group, {
7739
+ this.doRemoveGroup(group, {
7709
7740
  skipDispose: true,
7710
7741
  skipActive: true,
7742
+ skipPopoutReturn: true,
7711
7743
  });
7744
+ const removedGroup = group;
7712
7745
  removedGroup.model.renderContainer =
7713
7746
  this.overlayRenderContainer;
7714
7747
  removedGroup.model.location = { type: 'grid' };
7715
7748
  returnedGroup = removedGroup;
7749
+ this.doAddGroup(removedGroup, [0]);
7750
+ this.doSetGroupAndPanelActive(removedGroup);
7716
7751
  }
7717
7752
  }));
7718
7753
  this._popoutGroups.push(value);
7719
7754
  this.updateWatermark();
7755
+ return true;
7720
7756
  })
7721
7757
  .catch((err) => {
7722
7758
  console.error('dockview: failed to create popout window', err);
7759
+ return false;
7723
7760
  });
7724
7761
  }
7725
7762
  addFloatingGroup(item, options) {
@@ -7823,7 +7860,7 @@ define(['exports'], (function (exports) { 'use strict';
7823
7860
  : (_c = (_b = this.options.floatingGroupBounds) === null || _b === void 0 ? void 0 : _b.minimumWidthWithinViewport) !== null && _c !== void 0 ? _c : DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE, minimumInViewportHeight: this.options.floatingGroupBounds === 'boundedWithinViewport'
7824
7861
  ? undefined
7825
7862
  : (_e = (_d = this.options.floatingGroupBounds) === null || _d === void 0 ? void 0 : _d.minimumHeightWithinViewport) !== null && _e !== void 0 ? _e : DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE }));
7826
- const el = group.element.querySelector('.void-container');
7863
+ const el = group.element.querySelector('.dv-void-container');
7827
7864
  if (!el) {
7828
7865
  throw new Error('failed to find drag handle');
7829
7866
  }
@@ -8106,7 +8143,6 @@ define(['exports'], (function (exports) { 'use strict';
8106
8143
  this.addPopoutGroup((_c = (gridReferenceGroup
8107
8144
  ? this.getPanel(gridReferenceGroup)
8108
8145
  : undefined)) !== null && _c !== void 0 ? _c : group, {
8109
- skipRemoveGroup: true,
8110
8146
  position: position !== null && position !== void 0 ? position : undefined,
8111
8147
  overridePopoutGroup: gridReferenceGroup
8112
8148
  ? group
@@ -8124,6 +8160,7 @@ define(['exports'], (function (exports) { 'use strict';
8124
8160
  }
8125
8161
  }
8126
8162
  catch (err) {
8163
+ console.error('dockview: failed to deserialize layout. Reverting changes', err);
8127
8164
  /**
8128
8165
  * Takes all the successfully created groups and remove all of their panels.
8129
8166
  */
@@ -8191,11 +8228,13 @@ define(['exports'], (function (exports) { 'use strict';
8191
8228
  width: options.initialWidth,
8192
8229
  height: options.initialHeight,
8193
8230
  };
8231
+ let index;
8194
8232
  if (options.position) {
8195
8233
  if (isPanelOptionsWithPanel(options.position)) {
8196
8234
  const referencePanel = typeof options.position.referencePanel === 'string'
8197
8235
  ? this.getGroupPanel(options.position.referencePanel)
8198
8236
  : options.position.referencePanel;
8237
+ index = options.position.index;
8199
8238
  if (!referencePanel) {
8200
8239
  throw new Error(`referencePanel '${options.position.referencePanel}' does not exist`);
8201
8240
  }
@@ -8206,6 +8245,7 @@ define(['exports'], (function (exports) { 'use strict';
8206
8245
  typeof options.position.referenceGroup === 'string'
8207
8246
  ? (_a = this._groups.get(options.position.referenceGroup)) === null || _a === void 0 ? void 0 : _a.value
8208
8247
  : options.position.referenceGroup;
8248
+ index = options.position.index;
8209
8249
  if (!referenceGroup) {
8210
8250
  throw new Error(`referenceGroup '${options.position.referenceGroup}' does not exist`);
8211
8251
  }
@@ -8216,6 +8256,7 @@ define(['exports'], (function (exports) { 'use strict';
8216
8256
  group.model.openPanel(panel, {
8217
8257
  skipSetActive: options.inactive,
8218
8258
  skipSetGroupActive: options.inactive,
8259
+ index,
8219
8260
  });
8220
8261
  if (!options.inactive) {
8221
8262
  this.doSetGroupAndPanelActive(group);
@@ -8245,6 +8286,7 @@ define(['exports'], (function (exports) { 'use strict';
8245
8286
  group.model.openPanel(panel, {
8246
8287
  skipSetActive: options.inactive,
8247
8288
  skipSetGroupActive: options.inactive,
8289
+ index,
8248
8290
  });
8249
8291
  }
8250
8292
  else if (referenceGroup.api.location.type === 'floating' ||
@@ -8253,6 +8295,7 @@ define(['exports'], (function (exports) { 'use strict';
8253
8295
  referenceGroup.model.openPanel(panel, {
8254
8296
  skipSetActive: options.inactive,
8255
8297
  skipSetGroupActive: options.inactive,
8298
+ index,
8256
8299
  });
8257
8300
  referenceGroup.api.setSize({
8258
8301
  width: initial === null || initial === void 0 ? void 0 : initial.width,
@@ -8273,6 +8316,7 @@ define(['exports'], (function (exports) { 'use strict';
8273
8316
  group.model.openPanel(panel, {
8274
8317
  skipSetActive: options.inactive,
8275
8318
  skipSetGroupActive: options.inactive,
8319
+ index,
8276
8320
  });
8277
8321
  if (!options.inactive) {
8278
8322
  this.doSetGroupAndPanelActive(group);
@@ -8291,6 +8335,7 @@ define(['exports'], (function (exports) { 'use strict';
8291
8335
  group.model.openPanel(panel, {
8292
8336
  skipSetActive: options.inactive,
8293
8337
  skipSetGroupActive: options.inactive,
8338
+ index,
8294
8339
  });
8295
8340
  }
8296
8341
  else {
@@ -8301,6 +8346,7 @@ define(['exports'], (function (exports) { 'use strict';
8301
8346
  group.model.openPanel(panel, {
8302
8347
  skipSetActive: options.inactive,
8303
8348
  skipSetGroupActive: options.inactive,
8349
+ index,
8304
8350
  });
8305
8351
  if (!options.inactive) {
8306
8352
  this.doSetGroupAndPanelActive(group);
@@ -8841,6 +8887,31 @@ define(['exports'], (function (exports) { 'use strict';
8841
8887
  }
8842
8888
  }
8843
8889
 
8890
+ function createComponent(id, componentName, components = {}, frameworkComponents = {}, createFrameworkComponent, fallback) {
8891
+ const Component = typeof componentName === 'string'
8892
+ ? components[componentName]
8893
+ : undefined;
8894
+ const FrameworkComponent = typeof componentName === 'string'
8895
+ ? frameworkComponents[componentName]
8896
+ : undefined;
8897
+ if (Component && FrameworkComponent) {
8898
+ throw new Error(`Cannot create '${id}'. component '${componentName}' registered as both a component and frameworkComponent`);
8899
+ }
8900
+ if (FrameworkComponent) {
8901
+ if (!createFrameworkComponent) {
8902
+ throw new Error(`Cannot create '${id}' for framework component '${componentName}'. you must register a frameworkPanelWrapper to use framework components`);
8903
+ }
8904
+ return createFrameworkComponent.createComponent(id, componentName, FrameworkComponent);
8905
+ }
8906
+ if (!Component) {
8907
+ if (fallback) {
8908
+ return fallback();
8909
+ }
8910
+ throw new Error(`Cannot create '${id}', no component '${componentName}' provided`);
8911
+ }
8912
+ return new Component(id, componentName);
8913
+ }
8914
+
8844
8915
  class GridviewComponent extends BaseGrid {
8845
8916
  get orientation() {
8846
8917
  return this.gridview.orientation;
@@ -9389,12 +9460,14 @@ define(['exports'], (function (exports) { 'use strict';
9389
9460
  this._expandedIcon = createExpandMoreButton();
9390
9461
  this._collapsedIcon = createChevronRightButton();
9391
9462
  this.disposable = new MutableDisposable();
9392
- this.apiRef = { api: null };
9463
+ this.apiRef = {
9464
+ api: null,
9465
+ };
9393
9466
  this._element = document.createElement('div');
9394
- this.element.className = 'default-header';
9467
+ this.element.className = 'dv-default-header';
9395
9468
  this._content = document.createElement('span');
9396
9469
  this._expander = document.createElement('div');
9397
- this._expander.className = 'dockview-pane-header-icon';
9470
+ this._expander.className = 'dv-pane-header-icon';
9398
9471
  this.element.appendChild(this._expander);
9399
9472
  this.element.appendChild(this._content);
9400
9473
  this.addDisposables(addDisposableListener(this._element, 'click', () => {
@@ -9865,7 +9938,6 @@ define(['exports'], (function (exports) { 'use strict';
9865
9938
  exports.GridviewApi = GridviewApi;
9866
9939
  exports.GridviewComponent = GridviewComponent;
9867
9940
  exports.GridviewPanel = GridviewPanel;
9868
- exports.LocalSelectionTransfer = LocalSelectionTransfer;
9869
9941
  exports.PROPERTY_KEYS = PROPERTY_KEYS;
9870
9942
  exports.PaneFramework = PaneFramework;
9871
9943
  exports.PaneTransfer = PaneTransfer;
@@ -9880,7 +9952,6 @@ define(['exports'], (function (exports) { 'use strict';
9880
9952
  exports.SplitviewPanel = SplitviewPanel;
9881
9953
  exports.Tab = Tab;
9882
9954
  exports.WillShowOverlayLocationEvent = WillShowOverlayLocationEvent;
9883
- exports.createComponent = createComponent;
9884
9955
  exports.createDockview = createDockview;
9885
9956
  exports.createGridview = createGridview;
9886
9957
  exports.createPaneview = createPaneview;