dockview-core 1.17.2 → 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 (122) 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 -3
  37. package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +1 -1
  38. package/dist/cjs/paneview/defaultPaneviewHeader.js +5 -3
  39. package/dist/cjs/paneview/paneview.d.ts +3 -3
  40. package/dist/cjs/paneview/paneview.js +3 -3
  41. package/dist/cjs/paneview/paneviewComponent.d.ts +2 -2
  42. package/dist/cjs/paneview/paneviewPanel.d.ts +2 -2
  43. package/dist/cjs/paneview/paneviewPanel.js +3 -3
  44. package/dist/cjs/popoutWindow.js +23 -16
  45. package/dist/cjs/splitview/splitview.d.ts +6 -6
  46. package/dist/cjs/splitview/splitview.js +18 -17
  47. package/dist/cjs/splitview/splitviewComponent.d.ts +2 -2
  48. package/dist/cjs/splitview/viewItem.d.ts +1 -1
  49. package/dist/cjs/svg.js +1 -1
  50. package/dist/dockview-core.amd.js +241 -169
  51. package/dist/dockview-core.amd.js.map +1 -1
  52. package/dist/dockview-core.amd.min.js +2 -2
  53. package/dist/dockview-core.amd.min.js.map +1 -1
  54. package/dist/dockview-core.amd.min.noStyle.js +2 -2
  55. package/dist/dockview-core.amd.min.noStyle.js.map +1 -1
  56. package/dist/dockview-core.amd.noStyle.js +240 -168
  57. package/dist/dockview-core.amd.noStyle.js.map +1 -1
  58. package/dist/dockview-core.cjs.js +241 -169
  59. package/dist/dockview-core.cjs.js.map +1 -1
  60. package/dist/dockview-core.esm.js +242 -168
  61. package/dist/dockview-core.esm.js.map +1 -1
  62. package/dist/dockview-core.esm.min.js +2 -2
  63. package/dist/dockview-core.esm.min.js.map +1 -1
  64. package/dist/dockview-core.js +241 -169
  65. package/dist/dockview-core.js.map +1 -1
  66. package/dist/dockview-core.min.js +2 -2
  67. package/dist/dockview-core.min.js.map +1 -1
  68. package/dist/dockview-core.min.noStyle.js +2 -2
  69. package/dist/dockview-core.min.noStyle.js.map +1 -1
  70. package/dist/dockview-core.noStyle.js +240 -168
  71. package/dist/dockview-core.noStyle.js.map +1 -1
  72. package/dist/esm/api/component.api.d.ts +1 -1
  73. package/dist/esm/api/dockviewGroupPanelApi.d.ts +10 -8
  74. package/dist/esm/api/dockviewGroupPanelApi.js +1 -0
  75. package/dist/esm/api/dockviewPanelApi.d.ts +6 -14
  76. package/dist/esm/api/dockviewPanelApi.js +5 -3
  77. package/dist/esm/dnd/abstractDragHandler.js +1 -1
  78. package/dist/esm/dnd/dnd.d.ts +2 -2
  79. package/dist/esm/dnd/droptarget.js +4 -4
  80. package/dist/esm/dockview/components/panel/content.d.ts +2 -2
  81. package/dist/esm/dockview/components/panel/content.js +4 -2
  82. package/dist/esm/dockview/components/tab/defaultTab.d.ts +3 -3
  83. package/dist/esm/dockview/components/tab/tab.js +4 -4
  84. package/dist/esm/dockview/components/titlebar/tabsContainer.js +5 -9
  85. package/dist/esm/dockview/components/titlebar/voidContainer.js +1 -1
  86. package/dist/esm/dockview/components/watermark/watermark.d.ts +1 -1
  87. package/dist/esm/dockview/components/watermark/watermark.js +6 -6
  88. package/dist/esm/dockview/dockviewComponent.d.ts +2 -3
  89. package/dist/esm/dockview/dockviewComponent.js +65 -34
  90. package/dist/esm/dockview/dockviewGroupPanel.js +16 -12
  91. package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +3 -3
  92. package/dist/esm/dockview/dockviewGroupPanelModel.js +7 -7
  93. package/dist/esm/dockview/dockviewPanel.d.ts +4 -4
  94. package/dist/esm/dockview/dockviewPanelModel.d.ts +1 -1
  95. package/dist/esm/dockview/options.d.ts +8 -0
  96. package/dist/esm/dom.d.ts +11 -1
  97. package/dist/esm/dom.js +14 -0
  98. package/dist/esm/gridview/basePanelView.d.ts +1 -1
  99. package/dist/esm/gridview/branchNode.d.ts +1 -1
  100. package/dist/esm/gridview/branchNode.js +1 -1
  101. package/dist/esm/gridview/gridview.js +2 -2
  102. package/dist/esm/gridview/gridviewPanel.d.ts +4 -0
  103. package/dist/esm/gridview/gridviewPanel.js +40 -12
  104. package/dist/esm/gridview/leafNode.d.ts +1 -1
  105. package/dist/esm/index.d.ts +8 -9
  106. package/dist/esm/index.js +5 -6
  107. package/dist/esm/overlay/overlay.d.ts +3 -3
  108. package/dist/esm/paneview/defaultPaneviewHeader.d.ts +1 -1
  109. package/dist/esm/paneview/defaultPaneviewHeader.js +5 -3
  110. package/dist/esm/paneview/paneview.d.ts +3 -3
  111. package/dist/esm/paneview/paneview.js +3 -3
  112. package/dist/esm/paneview/paneviewComponent.d.ts +2 -2
  113. package/dist/esm/paneview/paneviewPanel.d.ts +2 -2
  114. package/dist/esm/paneview/paneviewPanel.js +3 -3
  115. package/dist/esm/popoutWindow.js +24 -17
  116. package/dist/esm/splitview/splitview.d.ts +6 -6
  117. package/dist/esm/splitview/splitview.js +18 -17
  118. package/dist/esm/splitview/splitviewComponent.d.ts +2 -2
  119. package/dist/esm/splitview/viewItem.d.ts +1 -1
  120. package/dist/esm/svg.js +1 -1
  121. package/dist/styles/dockview.css +114 -125
  122. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * dockview-core
3
- * @version 1.17.2
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-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-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-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-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-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 .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-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-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-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 .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-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-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 --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.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,7 +6638,7 @@ 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
 
@@ -7263,7 +7272,6 @@ define(['exports'], (function (exports) { 'use strict';
7263
7272
  window: this._window.value,
7264
7273
  });
7265
7274
  this._window.disposable.dispose();
7266
- this._window.value.close();
7267
7275
  this._window = null;
7268
7276
  this._onDidClose.fire();
7269
7277
  }
@@ -7295,7 +7303,9 @@ define(['exports'], (function (exports) { 'use strict';
7295
7303
  }
7296
7304
  const disposable = new CompositeDisposable();
7297
7305
  this._window = { value: externalWindow, disposable };
7298
- disposable.addDisposables(addDisposableWindowListener(window, 'beforeunload', () => {
7306
+ disposable.addDisposables(exports.DockviewDisposable.from(() => {
7307
+ externalWindow.close();
7308
+ }), addDisposableWindowListener(window, 'beforeunload', () => {
7299
7309
  /**
7300
7310
  * before the main window closes we should close this popup too
7301
7311
  * to be good citizens
@@ -7312,7 +7322,7 @@ define(['exports'], (function (exports) { 'use strict';
7312
7322
  id: this.target,
7313
7323
  window: externalWindow,
7314
7324
  });
7315
- return new Promise((resolve) => {
7325
+ return new Promise((resolve, reject) => {
7316
7326
  externalWindow.addEventListener('unload', (e) => {
7317
7327
  // if page fails to load before unloading
7318
7328
  // this.close();
@@ -7321,21 +7331,27 @@ define(['exports'], (function (exports) { 'use strict';
7321
7331
  /**
7322
7332
  * @see https://developer.mozilla.org/en-US/docs/Web/API/Window/load_event
7323
7333
  */
7324
- const externalDocument = externalWindow.document;
7325
- externalDocument.title = document.title;
7326
- externalDocument.body.appendChild(container);
7327
- addStyles(externalDocument, window.document.styleSheets);
7328
- /**
7329
- * beforeunload must be registered after load for reasons I could not determine
7330
- * otherwise the beforeunload event will not fire when the window is closed
7331
- */
7332
- 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);
7333
7339
  /**
7334
- * @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
7335
7342
  */
7336
- this.close();
7337
- });
7338
- 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
+ }
7339
7355
  });
7340
7356
  });
7341
7357
  });
@@ -7588,9 +7604,6 @@ define(['exports'], (function (exports) { 'use strict';
7588
7604
  }
7589
7605
  const box = getBox();
7590
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();
7591
- if (itemToPopout.api.location.type === 'grid') {
7592
- itemToPopout.api.setVisible(false);
7593
- }
7594
7607
  const _window = new PopoutWindow(`${this.id}-${groupId}`, // unique id
7595
7608
  theme !== null && theme !== void 0 ? theme : '', {
7596
7609
  url: (_c = options === null || options === void 0 ? void 0 : options.popoutUrl) !== null && _c !== void 0 ? _c : '/popout.html',
@@ -7609,11 +7622,11 @@ define(['exports'], (function (exports) { 'use strict';
7609
7622
  .then((popoutContainer) => {
7610
7623
  var _a;
7611
7624
  if (_window.isDisposed) {
7612
- return;
7625
+ return false;
7613
7626
  }
7614
7627
  if (popoutContainer === null) {
7615
7628
  popoutWindowDisposable.dispose();
7616
- return;
7629
+ return false;
7617
7630
  }
7618
7631
  const gready = document.createElement('div');
7619
7632
  gready.className = 'dv-overlay-render-container';
@@ -7622,30 +7635,40 @@ define(['exports'], (function (exports) { 'use strict';
7622
7635
  ? itemToPopout.group
7623
7636
  : itemToPopout;
7624
7637
  const referenceLocation = itemToPopout.api.location.type;
7625
- 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 });
7626
7646
  group.model.renderContainer = overlayRenderContainer;
7627
- 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)) {
7628
7649
  this._onDidAddGroup.fire(group);
7629
7650
  }
7630
- if (itemToPopout instanceof DockviewPanel) {
7631
- this.movingLock(() => {
7632
- const panel = referenceGroup.model.removePanel(itemToPopout);
7633
- group.model.openPanel(panel);
7634
- });
7635
- }
7636
- else {
7637
- this.movingLock(() => moveGroupWithoutDestroying({
7638
- from: referenceGroup,
7639
- to: group,
7640
- }));
7641
- switch (referenceLocation) {
7642
- case 'grid':
7643
- referenceGroup.api.setVisible(false);
7644
- break;
7645
- case 'floating':
7646
- case 'popout':
7647
- this.removeGroup(referenceGroup);
7648
- 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
+ }
7649
7672
  }
7650
7673
  }
7651
7674
  popoutContainer.classList.add('dv-dockview');
@@ -7656,6 +7679,10 @@ define(['exports'], (function (exports) { 'use strict';
7656
7679
  type: 'popout',
7657
7680
  getWindow: () => _window.window,
7658
7681
  };
7682
+ if (isGroupAddedToDom &&
7683
+ itemToPopout.api.location.type === 'grid') {
7684
+ itemToPopout.api.setVisible(false);
7685
+ }
7659
7686
  this.doSetGroupAndPanelActive(group);
7660
7687
  popoutWindowDisposable.addDisposables(group.api.onDidActiveChange((event) => {
7661
7688
  var _a;
@@ -7670,9 +7697,13 @@ define(['exports'], (function (exports) { 'use strict';
7670
7697
  const value = {
7671
7698
  window: _window,
7672
7699
  popoutGroup: group,
7673
- referenceGroup: this.getPanel(referenceGroup.id)
7674
- ? referenceGroup.id
7675
- : undefined,
7700
+ referenceGroup: !isGroupAddedToDom
7701
+ ? undefined
7702
+ : referenceGroup
7703
+ ? this.getPanel(referenceGroup.id)
7704
+ ? referenceGroup.id
7705
+ : undefined
7706
+ : undefined,
7676
7707
  disposable: {
7677
7708
  dispose: () => {
7678
7709
  popoutWindowDisposable.dispose();
@@ -7687,9 +7718,10 @@ define(['exports'], (function (exports) { 'use strict';
7687
7718
  * window dimensions
7688
7719
  */
7689
7720
  addDisposableWindowListener(_window.window, 'resize', () => {
7690
- group.layout(window.innerWidth, window.innerHeight);
7721
+ group.layout(_window.window.innerWidth, _window.window.innerHeight);
7691
7722
  }), overlayRenderContainer, exports.DockviewDisposable.from(() => {
7692
- if (this.getPanel(referenceGroup.id)) {
7723
+ if (isGroupAddedToDom &&
7724
+ this.getPanel(referenceGroup.id)) {
7693
7725
  this.movingLock(() => moveGroupWithoutDestroying({
7694
7726
  from: group,
7695
7727
  to: referenceGroup,
@@ -7704,21 +7736,27 @@ define(['exports'], (function (exports) { 'use strict';
7704
7736
  }
7705
7737
  }
7706
7738
  else if (this.getPanel(group.id)) {
7707
- const removedGroup = this.doRemoveGroup(group, {
7739
+ this.doRemoveGroup(group, {
7708
7740
  skipDispose: true,
7709
7741
  skipActive: true,
7742
+ skipPopoutReturn: true,
7710
7743
  });
7744
+ const removedGroup = group;
7711
7745
  removedGroup.model.renderContainer =
7712
7746
  this.overlayRenderContainer;
7713
7747
  removedGroup.model.location = { type: 'grid' };
7714
7748
  returnedGroup = removedGroup;
7749
+ this.doAddGroup(removedGroup, [0]);
7750
+ this.doSetGroupAndPanelActive(removedGroup);
7715
7751
  }
7716
7752
  }));
7717
7753
  this._popoutGroups.push(value);
7718
7754
  this.updateWatermark();
7755
+ return true;
7719
7756
  })
7720
7757
  .catch((err) => {
7721
7758
  console.error('dockview: failed to create popout window', err);
7759
+ return false;
7722
7760
  });
7723
7761
  }
7724
7762
  addFloatingGroup(item, options) {
@@ -7822,7 +7860,7 @@ define(['exports'], (function (exports) { 'use strict';
7822
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'
7823
7861
  ? undefined
7824
7862
  : (_e = (_d = this.options.floatingGroupBounds) === null || _d === void 0 ? void 0 : _d.minimumHeightWithinViewport) !== null && _e !== void 0 ? _e : DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE }));
7825
- const el = group.element.querySelector('.void-container');
7863
+ const el = group.element.querySelector('.dv-void-container');
7826
7864
  if (!el) {
7827
7865
  throw new Error('failed to find drag handle');
7828
7866
  }
@@ -8105,7 +8143,6 @@ define(['exports'], (function (exports) { 'use strict';
8105
8143
  this.addPopoutGroup((_c = (gridReferenceGroup
8106
8144
  ? this.getPanel(gridReferenceGroup)
8107
8145
  : undefined)) !== null && _c !== void 0 ? _c : group, {
8108
- skipRemoveGroup: true,
8109
8146
  position: position !== null && position !== void 0 ? position : undefined,
8110
8147
  overridePopoutGroup: gridReferenceGroup
8111
8148
  ? group
@@ -8123,6 +8160,7 @@ define(['exports'], (function (exports) { 'use strict';
8123
8160
  }
8124
8161
  }
8125
8162
  catch (err) {
8163
+ console.error('dockview: failed to deserialize layout. Reverting changes', err);
8126
8164
  /**
8127
8165
  * Takes all the successfully created groups and remove all of their panels.
8128
8166
  */
@@ -8190,11 +8228,13 @@ define(['exports'], (function (exports) { 'use strict';
8190
8228
  width: options.initialWidth,
8191
8229
  height: options.initialHeight,
8192
8230
  };
8231
+ let index;
8193
8232
  if (options.position) {
8194
8233
  if (isPanelOptionsWithPanel(options.position)) {
8195
8234
  const referencePanel = typeof options.position.referencePanel === 'string'
8196
8235
  ? this.getGroupPanel(options.position.referencePanel)
8197
8236
  : options.position.referencePanel;
8237
+ index = options.position.index;
8198
8238
  if (!referencePanel) {
8199
8239
  throw new Error(`referencePanel '${options.position.referencePanel}' does not exist`);
8200
8240
  }
@@ -8205,6 +8245,7 @@ define(['exports'], (function (exports) { 'use strict';
8205
8245
  typeof options.position.referenceGroup === 'string'
8206
8246
  ? (_a = this._groups.get(options.position.referenceGroup)) === null || _a === void 0 ? void 0 : _a.value
8207
8247
  : options.position.referenceGroup;
8248
+ index = options.position.index;
8208
8249
  if (!referenceGroup) {
8209
8250
  throw new Error(`referenceGroup '${options.position.referenceGroup}' does not exist`);
8210
8251
  }
@@ -8215,6 +8256,7 @@ define(['exports'], (function (exports) { 'use strict';
8215
8256
  group.model.openPanel(panel, {
8216
8257
  skipSetActive: options.inactive,
8217
8258
  skipSetGroupActive: options.inactive,
8259
+ index,
8218
8260
  });
8219
8261
  if (!options.inactive) {
8220
8262
  this.doSetGroupAndPanelActive(group);
@@ -8244,6 +8286,7 @@ define(['exports'], (function (exports) { 'use strict';
8244
8286
  group.model.openPanel(panel, {
8245
8287
  skipSetActive: options.inactive,
8246
8288
  skipSetGroupActive: options.inactive,
8289
+ index,
8247
8290
  });
8248
8291
  }
8249
8292
  else if (referenceGroup.api.location.type === 'floating' ||
@@ -8252,6 +8295,7 @@ define(['exports'], (function (exports) { 'use strict';
8252
8295
  referenceGroup.model.openPanel(panel, {
8253
8296
  skipSetActive: options.inactive,
8254
8297
  skipSetGroupActive: options.inactive,
8298
+ index,
8255
8299
  });
8256
8300
  referenceGroup.api.setSize({
8257
8301
  width: initial === null || initial === void 0 ? void 0 : initial.width,
@@ -8272,6 +8316,7 @@ define(['exports'], (function (exports) { 'use strict';
8272
8316
  group.model.openPanel(panel, {
8273
8317
  skipSetActive: options.inactive,
8274
8318
  skipSetGroupActive: options.inactive,
8319
+ index,
8275
8320
  });
8276
8321
  if (!options.inactive) {
8277
8322
  this.doSetGroupAndPanelActive(group);
@@ -8290,6 +8335,7 @@ define(['exports'], (function (exports) { 'use strict';
8290
8335
  group.model.openPanel(panel, {
8291
8336
  skipSetActive: options.inactive,
8292
8337
  skipSetGroupActive: options.inactive,
8338
+ index,
8293
8339
  });
8294
8340
  }
8295
8341
  else {
@@ -8300,6 +8346,7 @@ define(['exports'], (function (exports) { 'use strict';
8300
8346
  group.model.openPanel(panel, {
8301
8347
  skipSetActive: options.inactive,
8302
8348
  skipSetGroupActive: options.inactive,
8349
+ index,
8303
8350
  });
8304
8351
  if (!options.inactive) {
8305
8352
  this.doSetGroupAndPanelActive(group);
@@ -8840,6 +8887,31 @@ define(['exports'], (function (exports) { 'use strict';
8840
8887
  }
8841
8888
  }
8842
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
+
8843
8915
  class GridviewComponent extends BaseGrid {
8844
8916
  get orientation() {
8845
8917
  return this.gridview.orientation;
@@ -9388,12 +9460,14 @@ define(['exports'], (function (exports) { 'use strict';
9388
9460
  this._expandedIcon = createExpandMoreButton();
9389
9461
  this._collapsedIcon = createChevronRightButton();
9390
9462
  this.disposable = new MutableDisposable();
9391
- this.apiRef = { api: null };
9463
+ this.apiRef = {
9464
+ api: null,
9465
+ };
9392
9466
  this._element = document.createElement('div');
9393
- this.element.className = 'default-header';
9467
+ this.element.className = 'dv-default-header';
9394
9468
  this._content = document.createElement('span');
9395
9469
  this._expander = document.createElement('div');
9396
- this._expander.className = 'dockview-pane-header-icon';
9470
+ this._expander.className = 'dv-pane-header-icon';
9397
9471
  this.element.appendChild(this._expander);
9398
9472
  this.element.appendChild(this._content);
9399
9473
  this.addDisposables(addDisposableListener(this._element, 'click', () => {
@@ -9864,7 +9938,6 @@ define(['exports'], (function (exports) { 'use strict';
9864
9938
  exports.GridviewApi = GridviewApi;
9865
9939
  exports.GridviewComponent = GridviewComponent;
9866
9940
  exports.GridviewPanel = GridviewPanel;
9867
- exports.LocalSelectionTransfer = LocalSelectionTransfer;
9868
9941
  exports.PROPERTY_KEYS = PROPERTY_KEYS;
9869
9942
  exports.PaneFramework = PaneFramework;
9870
9943
  exports.PaneTransfer = PaneTransfer;
@@ -9879,7 +9952,6 @@ define(['exports'], (function (exports) { 'use strict';
9879
9952
  exports.SplitviewPanel = SplitviewPanel;
9880
9953
  exports.Tab = Tab;
9881
9954
  exports.WillShowOverlayLocationEvent = WillShowOverlayLocationEvent;
9882
- exports.createComponent = createComponent;
9883
9955
  exports.createDockview = createDockview;
9884
9956
  exports.createGridview = createGridview;
9885
9957
  exports.createPaneview = createPaneview;