dockview 1.4.3 → 1.5.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/README.md +1 -1
  2. package/dist/cjs/dockview/components/tab/defaultTab.d.ts +1 -0
  3. package/dist/cjs/dockview/components/tab/defaultTab.js +6 -3
  4. package/dist/cjs/dockview/components/tab/defaultTab.js.map +1 -1
  5. package/dist/cjs/dockview/components/watermark/watermark.js +3 -1
  6. package/dist/cjs/dockview/components/watermark/watermark.js.map +1 -1
  7. package/dist/cjs/dockview/defaultGroupPanelView.d.ts +1 -5
  8. package/dist/cjs/dockview/defaultGroupPanelView.js +5 -20
  9. package/dist/cjs/dockview/defaultGroupPanelView.js.map +1 -1
  10. package/dist/cjs/dockview/dockviewComponent.d.ts +1 -1
  11. package/dist/cjs/dockview/dockviewComponent.js +7 -18
  12. package/dist/cjs/dockview/dockviewComponent.js.map +1 -1
  13. package/dist/cjs/dockview/options.d.ts +5 -0
  14. package/dist/cjs/groupview/groupview.d.ts +16 -15
  15. package/dist/cjs/groupview/groupview.js +24 -33
  16. package/dist/cjs/groupview/groupview.js.map +1 -1
  17. package/dist/cjs/groupview/tab.d.ts +1 -0
  18. package/dist/cjs/groupview/tab.js +2 -1
  19. package/dist/cjs/groupview/tab.js.map +1 -1
  20. package/dist/cjs/groupview/titlebar/tabsContainer.js +1 -1
  21. package/dist/cjs/groupview/titlebar/tabsContainer.js.map +1 -1
  22. package/dist/cjs/groupview/types.d.ts +0 -4
  23. package/dist/cjs/index.d.ts +1 -0
  24. package/dist/cjs/index.js.map +1 -1
  25. package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +3 -0
  26. package/dist/cjs/paneview/defaultPaneviewHeader.js +29 -5
  27. package/dist/cjs/paneview/defaultPaneviewHeader.js.map +1 -1
  28. package/dist/cjs/paneview/draggablePaneviewPanel.d.ts +3 -1
  29. package/dist/cjs/paneview/draggablePaneviewPanel.js +24 -9
  30. package/dist/cjs/paneview/draggablePaneviewPanel.js.map +1 -1
  31. package/dist/cjs/paneview/options.d.ts +2 -0
  32. package/dist/cjs/paneview/paneviewComponent.d.ts +12 -1
  33. package/dist/cjs/paneview/paneviewComponent.js +13 -1
  34. package/dist/cjs/paneview/paneviewComponent.js.map +1 -1
  35. package/dist/cjs/react/deserializer.js +13 -5
  36. package/dist/cjs/react/deserializer.js.map +1 -1
  37. package/dist/cjs/react/dockview/defaultTab.d.ts +4 -0
  38. package/dist/cjs/react/dockview/defaultTab.js +73 -0
  39. package/dist/cjs/react/dockview/defaultTab.js.map +1 -0
  40. package/dist/cjs/react/dockview/dockview.d.ts +3 -0
  41. package/dist/cjs/react/dockview/dockview.js +45 -3
  42. package/dist/cjs/react/dockview/dockview.js.map +1 -1
  43. package/dist/cjs/react/dockview/groupControlsRenderer.d.ts +43 -0
  44. package/dist/cjs/react/dockview/groupControlsRenderer.js +87 -0
  45. package/dist/cjs/react/dockview/groupControlsRenderer.js.map +1 -0
  46. package/dist/cjs/react/dockview/reactContentPart.d.ts +1 -16
  47. package/dist/cjs/react/dockview/reactContentPart.js +2 -18
  48. package/dist/cjs/react/dockview/reactContentPart.js.map +1 -1
  49. package/dist/cjs/react/dockview/reactHeaderPart.d.ts +2 -0
  50. package/dist/cjs/react/dockview/reactHeaderPart.js +4 -0
  51. package/dist/cjs/react/dockview/reactHeaderPart.js.map +1 -1
  52. package/dist/cjs/react/index.d.ts +2 -2
  53. package/dist/cjs/react/index.js +1 -2
  54. package/dist/cjs/react/index.js.map +1 -1
  55. package/dist/cjs/react/paneview/paneview.d.ts +2 -0
  56. package/dist/cjs/react/paneview/paneview.js +9 -0
  57. package/dist/cjs/react/paneview/paneview.js.map +1 -1
  58. package/dist/cjs/react/react.d.ts +1 -0
  59. package/dist/cjs/react/react.js +12 -2
  60. package/dist/cjs/react/react.js.map +1 -1
  61. package/dist/cjs/react/svg.d.ts +3 -0
  62. package/dist/cjs/react/svg.js +36 -0
  63. package/dist/cjs/react/svg.js.map +1 -0
  64. package/dist/cjs/svg.d.ts +3 -0
  65. package/dist/cjs/svg.js +44 -0
  66. package/dist/cjs/svg.js.map +1 -0
  67. package/dist/dockview.amd.js +327 -113
  68. package/dist/dockview.amd.min.js +2 -2
  69. package/dist/dockview.amd.min.noStyle.js +2 -2
  70. package/dist/dockview.amd.noStyle.js +326 -112
  71. package/dist/dockview.cjs.js +327 -113
  72. package/dist/dockview.esm.js +327 -112
  73. package/dist/dockview.esm.min.js +2 -2
  74. package/dist/dockview.js +327 -113
  75. package/dist/dockview.min.js +2 -2
  76. package/dist/dockview.min.noStyle.js +2 -2
  77. package/dist/dockview.noStyle.js +326 -112
  78. package/dist/esm/dockview/components/tab/defaultTab.d.ts +1 -0
  79. package/dist/esm/dockview/components/tab/defaultTab.js +5 -2
  80. package/dist/esm/dockview/components/watermark/watermark.js +3 -1
  81. package/dist/esm/dockview/defaultGroupPanelView.d.ts +1 -5
  82. package/dist/esm/dockview/defaultGroupPanelView.js +5 -16
  83. package/dist/esm/dockview/dockviewComponent.d.ts +1 -1
  84. package/dist/esm/dockview/dockviewComponent.js +7 -18
  85. package/dist/esm/dockview/options.d.ts +5 -0
  86. package/dist/esm/groupview/groupview.d.ts +16 -15
  87. package/dist/esm/groupview/groupview.js +23 -32
  88. package/dist/esm/groupview/tab.d.ts +1 -0
  89. package/dist/esm/groupview/tab.js +2 -1
  90. package/dist/esm/groupview/titlebar/tabsContainer.js +1 -1
  91. package/dist/esm/groupview/types.d.ts +0 -4
  92. package/dist/esm/index.d.ts +1 -0
  93. package/dist/esm/paneview/defaultPaneviewHeader.d.ts +3 -0
  94. package/dist/esm/paneview/defaultPaneviewHeader.js +29 -5
  95. package/dist/esm/paneview/draggablePaneviewPanel.d.ts +3 -1
  96. package/dist/esm/paneview/draggablePaneviewPanel.js +24 -9
  97. package/dist/esm/paneview/options.d.ts +2 -0
  98. package/dist/esm/paneview/paneviewComponent.d.ts +12 -1
  99. package/dist/esm/paneview/paneviewComponent.js +9 -1
  100. package/dist/esm/react/deserializer.js +13 -5
  101. package/dist/esm/react/dockview/defaultTab.d.ts +4 -0
  102. package/dist/esm/react/dockview/defaultTab.js +34 -0
  103. package/dist/esm/react/dockview/dockview.d.ts +3 -0
  104. package/dist/esm/react/dockview/dockview.js +30 -1
  105. package/dist/esm/react/dockview/groupControlsRenderer.d.ts +43 -0
  106. package/dist/esm/react/dockview/groupControlsRenderer.js +68 -0
  107. package/dist/esm/react/dockview/reactContentPart.d.ts +1 -16
  108. package/dist/esm/react/dockview/reactContentPart.js +2 -14
  109. package/dist/esm/react/dockview/reactHeaderPart.d.ts +2 -0
  110. package/dist/esm/react/dockview/reactHeaderPart.js +4 -0
  111. package/dist/esm/react/index.d.ts +2 -2
  112. package/dist/esm/react/index.js +1 -2
  113. package/dist/esm/react/paneview/paneview.d.ts +2 -0
  114. package/dist/esm/react/paneview/paneview.js +9 -0
  115. package/dist/esm/react/react.d.ts +1 -0
  116. package/dist/esm/react/react.js +12 -2
  117. package/dist/esm/react/svg.d.ts +3 -0
  118. package/dist/esm/react/svg.js +7 -0
  119. package/dist/esm/svg.d.ts +3 -0
  120. package/dist/esm/svg.js +31 -0
  121. package/dist/styles/dockview.css +155 -42
  122. package/package.json +2 -2
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * dockview
3
- * @version 1.4.3
3
+ * @version 1.5.0
4
4
  * @link https://github.com/mathuo/dockview
5
5
  * @license MIT
6
6
  */
@@ -54,7 +54,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
54
54
  }
55
55
  }
56
56
 
57
- var css_248z = ".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-tab-close-icon: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\"><path d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"/></svg>');\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-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-tab-close-icon: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\"><path d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"/></svg>');\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-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-tab-close-icon: url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\"><path d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"/></svg>');\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-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-activegroup-visiblepanel-tab-background-color: dodgerblue;\n --dv-tabs-and-actions-container-height: 18px;\n --dv-tabs-and-actions-container-font-size: 11px;\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container {\n border-bottom: 2px solid var(--dv-activegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container {\n border-bottom: 2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color);\n}\n.actions-bar {\n text-align: right;\n width: 28px;\n display: flex;\n align-items: center;\n flex-shrink: 0;\n}\n.actions-bar .actions-container {\n display: flex;\n padding: 0px;\n margin: 0px;\n justify-content: flex-end;\n}\n.actions-bar .actions-container a:active {\n -webkit-mask-size: 100% 100% !important;\n mask-size: 100% 100% !important;\n}\n.actions-bar .actions-container .close-action {\n background-color: white;\n height: 16px;\n width: 16px;\n display: block;\n -webkit-mask: var(--dv-tab-close-icon) 50% 50%/90% 90% no-repeat;\n mask: var(--dv-tab-close-icon) 50% 50%/90% 90% no-repeat;\n margin-right: \"0.5em\";\n cursor: pointer;\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: 10000;\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.left {\n transform: translateX(-25%) scaleX(0.5);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.right {\n transform: translateX(25%) scaleX(0.5);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.top {\n transform: translateY(-25%) scaleY(0.5);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.bottom {\n transform: translateY(25%) scaleY(0.5);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.small-top {\n border-top: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.small-bottom {\n border-bottom: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.small-left {\n border-left: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.small-right {\n border-right: 1px solid var(--dv-drag-over-border-color);\n}\n.custom-dragging {\n height: 24px;\n line-height: 24px;\n font-size: 11px;\n width: 100px;\n background-color: dodgerblue;\n color: ghostwhite;\n border-radius: 11px;\n position: absolute;\n padding-left: 10px;\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.active-tab .tab-action {\n background-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.active-group > .tabs-and-actions-container > .tabs-container > .tab.inactive-tab .tab-action {\n background-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.active-tab .tab-action {\n background-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.groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.inactive-tab .tab-action {\n background-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.dragging {\n background-color: var(--dv-activegroup-visiblepanel-tab-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.grid-view,\n.branch-node {\n height: 100%;\n width: 100%;\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 overflow: hidden;\n outline: none;\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 .collapsed {\n transform: rotate(-90deg);\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.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 .void-container {\n display: flex;\n flex-grow: 1;\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.dockview-react-part {\n height: 100%;\n width: 100%;\n}\n.split-view-container {\n position: relative;\n overflow: hidden;\n height: 100%;\n width: 100%;\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}\n.split-view-container .sash-container .sash: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: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}\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.dragged {\n transform: translate3d(0px, 0px, 0px);\n /* 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.dragging .tab-action {\n background-color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.tab.active-tab > .default-tab .tab-action {\n visibility: visible;\n}\n.tab.inactive-tab > .default-tab .tab-action {\n visibility: hidden;\n}\n.tab.inactive-tab > .default-tab:hover .tab-action {\n visibility: visible;\n}\n.tab .default-tab {\n position: relative;\n height: 100%;\n display: flex;\n min-width: 80px;\n align-items: center;\n padding-left: 10px;\n white-space: nowrap;\n text-overflow: elipsis;\n}\n.tab .default-tab .tab-content {\n flex-grow: 1;\n}\n.tab .default-tab .action-container {\n text-align: right;\n width: 28px;\n display: flex;\n}\n.tab .default-tab .action-container .tab-list {\n display: flex;\n padding: 0px;\n margin: 0px;\n justify-content: flex-end;\n}\n.tab .default-tab .action-container .tab-list a:active:hover {\n -webkit-mask-size: 100% 100% !important;\n mask-size: 100% 100% !important;\n}\n.tab .default-tab .action-container .tab-list .tab-action {\n height: 16px;\n width: 16px;\n display: block;\n -webkit-mask: var(--dv-tab-close-icon) 50% 50%/90% 90% no-repeat;\n mask: var(--dv-tab-close-icon) 50% 50%/90% 90% no-repeat;\n margin-right: \"0.5em\";\n}\n.tab .default-tab .action-container .tab-list .tab-action.disable-close {\n display: none;\n}\n.watermark {\n display: flex;\n width: 100%;\n}\n.watermark.has-actions .watermark-title .actions-bar {\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}";
57
+ 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-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-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-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-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-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-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-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.actions-bar {\n text-align: right;\n width: 28px;\n display: flex;\n align-items: center;\n flex-shrink: 0;\n}\n.actions-bar .actions-container {\n display: flex;\n padding: 0px;\n margin: 0px;\n justify-content: flex-end;\n}\n.actions-bar .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.actions-bar .actions-container .close-action:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-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: 10000;\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.left {\n transform: translateX(-25%) scaleX(0.5);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.right {\n transform: translateX(25%) scaleX(0.5);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.top {\n transform: translateY(-25%) scaleY(0.5);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.bottom {\n transform: translateY(25%) scaleY(0.5);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.small-top {\n border-top: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.small-bottom {\n border-bottom: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.small-left {\n border-left: 1px solid var(--dv-drag-over-border-color);\n}\n.drop-target > .drop-target-dropzone > .drop-target-selection.small-right {\n border-right: 1px solid var(--dv-drag-over-border-color);\n}\n.custom-dragging {\n height: 24px;\n line-height: 24px;\n font-size: 11px;\n width: 100px;\n background-color: dodgerblue;\n color: ghostwhite;\n border-radius: 11px;\n position: absolute;\n padding-left: 10px;\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.dragging {\n background-color: var(--dv-activegroup-visiblepanel-tab-background-color);\n color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.grid-view,\n.branch-node {\n height: 100%;\n width: 100%;\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 overflow: hidden;\n outline: none;\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.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 .void-container {\n display: flex;\n flex-grow: 1;\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.tab .dockview-react-tab {\n display: flex;\n padding: 0px 8px;\n align-items: center;\n height: 100%;\n}\n.tab .dockview-react-tab .dockview-react-tab-title {\n padding: 0px 8px;\n flex-grow: 1;\n}\n.tab .dockview-react-tab .dockview-react-tab-action {\n padding: 4px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n}\n.tab .dockview-react-tab .dockview-react-tab-action:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-hover-background-color);\n}\n.tab.inactive-tab:not(:hover) .dockview-react-tab-action {\n visibility: hidden;\n}\n.dockview-react-part {\n height: 100%;\n width: 100%;\n}\n.split-view-container {\n position: relative;\n overflow: hidden;\n height: 100%;\n width: 100%;\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}\n.split-view-container .sash-container .sash: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: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}\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.dragged {\n transform: translate3d(0px, 0px, 0px);\n /* 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.dragging .tab-action {\n background-color: var(--dv-activegroup-visiblepanel-tab-color);\n}\n.tab.active-tab > .default-tab .tab-action {\n visibility: visible;\n}\n.tab.inactive-tab > .default-tab .tab-action {\n visibility: hidden;\n}\n.tab.inactive-tab > .default-tab:hover .tab-action {\n visibility: visible;\n}\n.tab .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: elipsis;\n}\n.tab .default-tab .tab-content {\n padding: 0px 8px;\n flex-grow: 1;\n}\n.tab .default-tab .action-container {\n text-align: right;\n display: flex;\n}\n.tab .default-tab .action-container .tab-list {\n display: flex;\n padding: 0px;\n margin: 0px;\n justify-content: flex-end;\n}\n.tab .default-tab .action-container .tab-list .tab-action {\n padding: 4px;\n display: flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n}\n.tab .default-tab .action-container .tab-list .tab-action:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-hover-background-color);\n}\n.tab .default-tab .action-container .tab-list .tab-action.disable-close {\n display: none;\n}\n.watermark {\n display: flex;\n width: 100%;\n}\n.watermark.has-actions .watermark-title .actions-bar {\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}";
58
58
  styleInject(css_248z);
59
59
 
60
60
  class TransferObject {
@@ -2708,6 +2708,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
2708
2708
  constructor(panelId, accessor, group) {
2709
2709
  super();
2710
2710
  this.panelId = panelId;
2711
+ this.accessor = accessor;
2711
2712
  this.group = group;
2712
2713
  this._onChanged = new Emitter();
2713
2714
  this.onChanged = this._onChanged.event;
@@ -2758,7 +2759,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
2758
2759
  validOverlays: 'none',
2759
2760
  canDisplayOverlay: (event) => {
2760
2761
  const data = getPanelData();
2761
- if (data) {
2762
+ if (data && this.accessor.id === data.viewId) {
2762
2763
  return this.panelId !== data.panelId;
2763
2764
  }
2764
2765
  return this.group.model.canDisplayOverlay(event, exports.DockviewDropTargets.Tab);
@@ -2816,7 +2817,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
2816
2817
  canDisplayOverlay: (event) => {
2817
2818
  var _a;
2818
2819
  const data = getPanelData();
2819
- if (data) {
2820
+ if (data && this.accessor.id === data.viewId) {
2820
2821
  // don't show the overlay if the tab being dragged is the last panel of this group
2821
2822
  return ((_a = last(this.tabs)) === null || _a === void 0 ? void 0 : _a.value.panelId) !== data.panelId;
2822
2823
  }
@@ -2973,12 +2974,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
2973
2974
  }
2974
2975
  }
2975
2976
 
2976
- exports.GroupChangeKind2 = void 0;
2977
- (function (GroupChangeKind2) {
2978
- GroupChangeKind2["ADD_PANEL"] = "ADD_PANEL";
2979
- GroupChangeKind2["REMOVE_PANEL"] = "REMOVE_PANEL";
2980
- GroupChangeKind2["PANEL_ACTIVE"] = "PANEL_ACTIVE";
2981
- })(exports.GroupChangeKind2 || (exports.GroupChangeKind2 = {}));
2982
2977
  class Groupview extends CompositeDisposable {
2983
2978
  constructor(container, accessor, id, options, parent) {
2984
2979
  super();
@@ -2997,12 +2992,15 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
2997
2992
  this._panels = [];
2998
2993
  this._onMove = new Emitter();
2999
2994
  this.onMove = this._onMove.event;
3000
- this._onDidGroupChange = new Emitter();
3001
- this.onDidGroupChange = this._onDidGroupChange.event;
3002
2995
  this._onDidDrop = new Emitter();
3003
2996
  this.onDidDrop = this._onDidDrop.event;
2997
+ this._onDidAddPanel = new Emitter();
2998
+ this.onDidAddPanel = this._onDidAddPanel.event;
2999
+ this._onDidRemovePanel = new Emitter();
3000
+ this.onDidRemovePanel = this._onDidRemovePanel.event;
3001
+ this._onDidActivePanelChange = new Emitter();
3002
+ this.onDidActivePanelChange = this._onDidActivePanelChange.event;
3004
3003
  this.container.classList.add('groupview');
3005
- this.addDisposables(this._onMove, this._onDidGroupChange, this._onDidChange, this._onDidDrop);
3006
3004
  this.tabsContainer = new TabsContainer(this.accessor, this.parent, {
3007
3005
  tabHeight: options.tabHeight,
3008
3006
  });
@@ -3014,7 +3012,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3014
3012
  return false;
3015
3013
  }
3016
3014
  const data = getPanelData();
3017
- if (data) {
3015
+ if (data && data.viewId === this.accessor.id) {
3018
3016
  const groupHasOnePanelAndIsActiveDragElement = this._panels.length === 1 && data.groupId === this.id;
3019
3017
  return !groupHasOnePanelAndIsActiveDragElement;
3020
3018
  }
@@ -3024,7 +3022,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3024
3022
  container.append(this.tabsContainer.element, this.contentContainer.element);
3025
3023
  this.header.hidden = !!options.hideHeader;
3026
3024
  this.locked = !!options.locked;
3027
- this.addDisposables(this._onMove, this._onDidGroupChange, this.tabsContainer.onDrop((event) => {
3025
+ this.addDisposables(this._onMove, this._onDidChange, this._onDidDrop, this._onDidAddPanel, this._onDidRemovePanel, this._onDidActivePanelChange, this.tabsContainer.onDrop((event) => {
3028
3026
  this.handleDropEvent(event.event, exports.Position.Center, event.index);
3029
3027
  }), this.contentContainer.onDidFocus(() => {
3030
3028
  this.accessor.doSetGroupActive(this.parent, true);
@@ -3096,6 +3094,15 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3096
3094
  // correctly initialized
3097
3095
  this.setActive(this.isActive, true, true);
3098
3096
  this.updateContainer();
3097
+ if (this.accessor.options.createGroupControlElement) {
3098
+ this._control = this.accessor.options.createGroupControlElement(this.parent);
3099
+ this.addDisposables(this._control);
3100
+ this._control.init({
3101
+ containerApi: new DockviewApi(this.accessor),
3102
+ api: this.parent.api,
3103
+ });
3104
+ this.tabsContainer.setActionElement(this._control.element);
3105
+ }
3099
3106
  }
3100
3107
  indexOf(panel) {
3101
3108
  return this.tabsContainer.indexOf(panel.id);
@@ -3226,14 +3233,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3226
3233
  isPanelActive(panel) {
3227
3234
  return this._activePanel === panel;
3228
3235
  }
3229
- updateActions() {
3230
- var _a, _b;
3231
- if (this.isActive && ((_b = (_a = this._activePanel) === null || _a === void 0 ? void 0 : _a.view) === null || _b === void 0 ? void 0 : _b.actions)) {
3232
- this.tabsContainer.setActionElement(this._activePanel.view.actions.element);
3233
- }
3234
- else {
3235
- this.tabsContainer.setActionElement(undefined);
3236
- }
3236
+ updateActions(element) {
3237
+ this.tabsContainer.setActionElement(element);
3237
3238
  }
3238
3239
  setActive(isGroupActive, skipFocus = false, force = false) {
3239
3240
  var _a, _b;
@@ -3289,10 +3290,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3289
3290
  if (this.mostRecentlyUsed.includes(panel)) {
3290
3291
  this.mostRecentlyUsed.splice(this.mostRecentlyUsed.indexOf(panel), 1);
3291
3292
  }
3292
- this._onDidGroupChange.fire({
3293
- kind: exports.GroupChangeKind2.REMOVE_PANEL,
3294
- panel,
3295
- });
3293
+ this._onDidRemovePanel.fire({ panel });
3296
3294
  }
3297
3295
  doAddPanel(panel, index = this.panels.length, skipSetActive = false) {
3298
3296
  const existingPanel = this._panels.indexOf(panel);
@@ -3309,10 +3307,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3309
3307
  }
3310
3308
  this.updateMru(panel);
3311
3309
  this.panels.splice(index, 0, panel);
3312
- this._onDidGroupChange.fire({
3313
- kind: exports.GroupChangeKind2.ADD_PANEL,
3314
- panel,
3315
- });
3310
+ this._onDidAddPanel.fire({ panel });
3316
3311
  }
3317
3312
  doSetActivePanel(panel) {
3318
3313
  this._activePanel = panel;
@@ -3320,10 +3315,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3320
3315
  this.tabsContainer.setActivePanel(panel);
3321
3316
  panel.layout(this._width, this._height);
3322
3317
  this.updateMru(panel);
3323
- this._onDidGroupChange.fire({
3324
- kind: exports.GroupChangeKind2.PANEL_ACTIVE,
3325
- panel,
3326
- });
3318
+ this._onDidActivePanelChange.fire({ panel });
3327
3319
  }
3328
3320
  }
3329
3321
  updateMru(panel) {
@@ -3333,7 +3325,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3333
3325
  this.mostRecentlyUsed = [panel, ...this.mostRecentlyUsed];
3334
3326
  }
3335
3327
  updateContainer() {
3336
- this.updateActions();
3337
3328
  toggleClass(this.container, 'empty', this.isEmpty);
3338
3329
  this.panels.forEach((panel) => panel.updateParentGroup(this.parent, this.isActive));
3339
3330
  if (this.isEmpty && !this.watermark) {
@@ -3370,6 +3361,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3370
3361
  nativeEvent: event,
3371
3362
  target,
3372
3363
  group: this.accessor.getPanel(this.id),
3364
+ getData: getPanelData,
3373
3365
  });
3374
3366
  }
3375
3367
  return false;
@@ -3418,7 +3410,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3418
3410
  }
3419
3411
  }
3420
3412
 
3421
- const nextLayoutId = sequentialNumberGenerator();
3413
+ const nextLayoutId$1 = sequentialNumberGenerator();
3422
3414
  function toTarget(direction) {
3423
3415
  switch (direction) {
3424
3416
  case 'left':
@@ -3438,7 +3430,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3438
3430
  constructor(_element, options) {
3439
3431
  super();
3440
3432
  this._element = _element;
3441
- this._id = nextLayoutId.next();
3433
+ this._id = nextLayoutId$1.next();
3442
3434
  this._groups = new Map();
3443
3435
  this._onDidLayoutChange = new Emitter();
3444
3436
  this.onDidLayoutChange = this._onDidLayoutChange.event;
@@ -3898,6 +3890,38 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3898
3890
  }
3899
3891
  }
3900
3892
 
3893
+ const createSvgElementFromPath = (params) => {
3894
+ const svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');
3895
+ svg.setAttributeNS(null, 'height', params.height);
3896
+ svg.setAttributeNS(null, 'width', params.width);
3897
+ svg.setAttributeNS(null, 'viewBox', params.viewbox);
3898
+ svg.setAttributeNS(null, 'aria-hidden', 'false');
3899
+ svg.setAttributeNS(null, 'focusable', 'false');
3900
+ svg.classList.add('dockview-svg');
3901
+ const path = document.createElementNS('http://www.w3.org/2000/svg', 'path');
3902
+ path.setAttributeNS(null, 'd', params.path);
3903
+ svg.appendChild(path);
3904
+ return svg;
3905
+ };
3906
+ const createCloseButton = () => createSvgElementFromPath({
3907
+ width: '11',
3908
+ height: '11',
3909
+ viewbox: '0 0 28 28',
3910
+ path: 'M2.1 27.3L0 25.2L11.55 13.65L0 2.1L2.1 0L13.65 11.55L25.2 0L27.3 2.1L15.75 13.65L27.3 25.2L25.2 27.3L13.65 15.75L2.1 27.3Z',
3911
+ });
3912
+ const createExpandMoreButton = () => createSvgElementFromPath({
3913
+ width: '11',
3914
+ height: '11',
3915
+ viewbox: '0 0 24 15',
3916
+ path: 'M12 14.15L0 2.15L2.15 0L12 9.9L21.85 0.0499992L24 2.2L12 14.15Z',
3917
+ });
3918
+ const createChevronRightButton = () => createSvgElementFromPath({
3919
+ width: '11',
3920
+ height: '11',
3921
+ viewbox: '0 0 15 25',
3922
+ path: 'M2.15 24.1L0 21.95L9.9 12.05L0 2.15L2.15 0L14.2 12.05L2.15 24.1Z',
3923
+ });
3924
+
3901
3925
  class Watermark extends CompositeDisposable {
3902
3926
  constructor() {
3903
3927
  super();
@@ -3914,8 +3938,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3914
3938
  const actions = new ActionContainer();
3915
3939
  title.appendChild(emptySpace);
3916
3940
  title.appendChild(actions.element);
3917
- const closeAnchor = document.createElement('a');
3941
+ const closeAnchor = document.createElement('div');
3918
3942
  closeAnchor.className = 'close-action';
3943
+ closeAnchor.appendChild(createCloseButton());
3919
3944
  actions.add(closeAnchor);
3920
3945
  this.addDisposables(addDisposableListener(closeAnchor, 'click', (ev) => {
3921
3946
  var _a;
@@ -3988,6 +4013,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
3988
4013
  return new Component(id, componentName);
3989
4014
  }
3990
4015
 
4016
+ const DEFAULT_TAB_IDENTIFIER = '__default__tab__';
3991
4017
  class DefaultTab extends CompositeDisposable {
3992
4018
  constructor() {
3993
4019
  super();
@@ -4007,8 +4033,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
4007
4033
  this._list = document.createElement('ul');
4008
4034
  this._list.className = 'tab-list';
4009
4035
  //
4010
- this.action = document.createElement('a');
4036
+ this.action = document.createElement('div');
4011
4037
  this.action.className = 'tab-action';
4038
+ this.action.appendChild(createCloseButton());
4012
4039
  //
4013
4040
  this._element.appendChild(this._content);
4014
4041
  this._element.appendChild(this._actionContainer);
@@ -4024,7 +4051,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
4024
4051
  return this._element;
4025
4052
  }
4026
4053
  get id() {
4027
- return '__DEFAULT_TAB__';
4054
+ return DEFAULT_TAB_IDENTIFIER;
4028
4055
  }
4029
4056
  update(event) {
4030
4057
  this.params = Object.assign(Object.assign({}, this.params), event.params);
@@ -4341,16 +4368,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
4341
4368
  var _a;
4342
4369
  this._content = renderers.content;
4343
4370
  this._tab = (_a = renderers.tab) !== null && _a !== void 0 ? _a : new DefaultTab();
4344
- this._actions =
4345
- renderers.actions ||
4346
- (this.content.actions
4347
- ? {
4348
- element: this.content.actions,
4349
- dispose: () => {
4350
- //
4351
- },
4352
- }
4353
- : undefined);
4354
4371
  }
4355
4372
  get content() {
4356
4373
  return this._content;
@@ -4358,9 +4375,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
4358
4375
  get tab() {
4359
4376
  return this._tab;
4360
4377
  }
4361
- get actions() {
4362
- return this._actions;
4363
- }
4364
4378
  init(params) {
4365
4379
  this.content.init(Object.assign(Object.assign({}, params), { tab: this.tab }));
4366
4380
  this.tab.init(params);
@@ -4378,16 +4392,18 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
4378
4392
  this.tab.update(event);
4379
4393
  }
4380
4394
  toJSON() {
4395
+ let tab = this.tab instanceof DefaultTab ? undefined : this.tab.toJSON();
4396
+ if (tab && Object.keys(tab).length === 0) {
4397
+ tab = undefined;
4398
+ }
4381
4399
  return {
4382
4400
  content: this.content.toJSON(),
4383
- tab: this.tab instanceof DefaultTab ? undefined : this.tab.toJSON(),
4401
+ tab,
4384
4402
  };
4385
4403
  }
4386
4404
  dispose() {
4387
- var _a;
4388
4405
  this.content.dispose();
4389
4406
  this.tab.dispose();
4390
- (_a = this.actions) === null || _a === void 0 ? void 0 : _a.dispose();
4391
4407
  }
4392
4408
  }
4393
4409
 
@@ -4802,22 +4818,12 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
4802
4818
  this.moveGroupOrPanel(view, groupId, itemId, target, index);
4803
4819
  }), view.model.onDidDrop((event) => {
4804
4820
  this._onDidDrop.fire(Object.assign(Object.assign({}, event), { api: this._api, group: view }));
4805
- }), view.model.onDidGroupChange((event) => {
4806
- switch (event.kind) {
4807
- case exports.GroupChangeKind2.ADD_PANEL:
4808
- if (event.panel) {
4809
- this._onDidAddPanel.fire(event.panel);
4810
- }
4811
- break;
4812
- case exports.GroupChangeKind2.REMOVE_PANEL:
4813
- if (event.panel) {
4814
- this._onDidRemovePanel.fire(event.panel);
4815
- }
4816
- break;
4817
- case exports.GroupChangeKind2.PANEL_ACTIVE:
4818
- this._onDidActivePanelChange.fire(event.panel);
4819
- break;
4820
- }
4821
+ }), view.model.onDidAddPanel((event) => {
4822
+ this._onDidAddPanel.fire(event.panel);
4823
+ }), view.model.onDidRemovePanel((event) => {
4824
+ this._onDidRemovePanel.fire(event.panel);
4825
+ }), view.model.onDidActivePanelChange((event) => {
4826
+ this._onDidActivePanelChange.fire(event.panel);
4821
4827
  }));
4822
4828
  this._groups.set(view.id, { value: view, disposable });
4823
4829
  }
@@ -4832,7 +4838,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
4832
4838
  createPanel(options, group) {
4833
4839
  const view = new DefaultGroupPanelView({
4834
4840
  content: this.createContentComponent(options.id, options.component),
4835
- tab: this.createTabComponent(options.id, options.tabComponent),
4841
+ tab: this.createTabComponent(options.id, options.tabComponent || this.options.defaultTabComponent),
4836
4842
  });
4837
4843
  const panel = new DockviewGroupPanel(options.id, this, this._api, group);
4838
4844
  panel.init({
@@ -5585,8 +5591,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5585
5591
  }
5586
5592
 
5587
5593
  class DraggablePaneviewPanel extends PaneviewPanel {
5588
- constructor(id, component, headerComponent, orientation, isExpanded, disableDnd) {
5594
+ constructor(accessor, id, component, headerComponent, orientation, isExpanded, disableDnd) {
5589
5595
  super(id, component, headerComponent, orientation, isExpanded, true);
5596
+ this.accessor = accessor;
5590
5597
  this._onDidDrop = new Emitter();
5591
5598
  this.onDidDrop = this._onDidDrop.event;
5592
5599
  if (!disableDnd) {
@@ -5598,10 +5605,11 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5598
5605
  return;
5599
5606
  }
5600
5607
  const id = this.id;
5608
+ const accessorId = this.accessor.id;
5601
5609
  this.header.draggable = true;
5602
5610
  this.handler = new (class PaneDragHandler extends DragHandler {
5603
5611
  getData() {
5604
- LocalSelectionTransfer.getInstance().setData([new PaneTransfer('paneview', id)], PaneTransfer.prototype);
5612
+ LocalSelectionTransfer.getInstance().setData([new PaneTransfer(accessorId, id)], PaneTransfer.prototype);
5605
5613
  return {
5606
5614
  dispose: () => {
5607
5615
  LocalSelectionTransfer.getInstance().clearData(PaneTransfer.prototype);
@@ -5611,12 +5619,22 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5611
5619
  })(this.header);
5612
5620
  this.target = new Droptarget(this.element, {
5613
5621
  validOverlays: 'vertical',
5614
- canDisplayOverlay: () => {
5622
+ canDisplayOverlay: (event) => {
5615
5623
  const data = getPaneData();
5616
- if (!data) {
5617
- return true;
5624
+ if (data) {
5625
+ if (data.paneId !== this.id &&
5626
+ data.viewId === this.accessor.id) {
5627
+ return true;
5628
+ }
5629
+ }
5630
+ if (this.accessor.options.showDndOverlay) {
5631
+ return this.accessor.options.showDndOverlay({
5632
+ nativeEvent: event,
5633
+ getData: getPaneData,
5634
+ panel: this,
5635
+ });
5618
5636
  }
5619
- return data.paneId !== this.id;
5637
+ return false;
5620
5638
  },
5621
5639
  });
5622
5640
  this.addDisposables(this._onDidDrop, this.handler, this.target, this.target.onDrop((event) => {
@@ -5625,8 +5643,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5625
5643
  }
5626
5644
  onDrop(event) {
5627
5645
  const data = getPaneData();
5628
- if (!data) {
5629
- this._onDidDrop.fire(Object.assign(Object.assign({}, event), { panel: this, getData: () => getPaneData() }));
5646
+ if (!data || data.viewId !== this.accessor.id) {
5647
+ // if there is no local drag event for this panel
5648
+ // or if the drag event was creating by another Paneview instance
5649
+ this._onDidDrop.fire(Object.assign(Object.assign({}, event), { panel: this, getData: getPaneData }));
5630
5650
  return;
5631
5651
  }
5632
5652
  const containerApi = this._params
@@ -5634,7 +5654,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5634
5654
  const panelId = data.paneId;
5635
5655
  const existingPanel = containerApi.getPanel(panelId);
5636
5656
  if (!existingPanel) {
5637
- this._onDidDrop.fire(Object.assign(Object.assign({}, event), { panel: this, getData: () => getPaneData() }));
5657
+ // if the panel doesn't exist
5658
+ this._onDidDrop.fire(Object.assign(Object.assign({}, event), { panel: this, getData: getPaneData }));
5638
5659
  return;
5639
5660
  }
5640
5661
  const allPanels = containerApi.panels;
@@ -5658,12 +5679,15 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5658
5679
  class DefaultHeader extends CompositeDisposable {
5659
5680
  constructor() {
5660
5681
  super();
5682
+ this._expandedIcon = createExpandMoreButton();
5683
+ this._collapsedIcon = createChevronRightButton();
5661
5684
  this.disposable = new MutableDisposable();
5662
5685
  this.apiRef = { api: null };
5663
5686
  this._element = document.createElement('div');
5664
5687
  this.element.className = 'default-header';
5665
5688
  this._content = document.createElement('span');
5666
- this._expander = document.createElement('a');
5689
+ this._expander = document.createElement('div');
5690
+ this._expander.className = 'dockview-pane-header-icon';
5667
5691
  this.element.appendChild(this._expander);
5668
5692
  this.element.appendChild(this._content);
5669
5693
  this.addDisposables(addDisposableListener(this._element, 'click', () => {
@@ -5677,12 +5701,32 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5677
5701
  init(params) {
5678
5702
  this.apiRef.api = params.api;
5679
5703
  this._content.textContent = params.title;
5680
- this._expander.textContent = '▼';
5681
- toggleClass(this._expander, 'collapsed', !params.api.isExpanded);
5682
- this.disposable.value = params.api.onDidExpansionChange((e) => {
5683
- toggleClass(this._expander, 'collapsed', !e.isExpanded);
5704
+ this.updateIcon();
5705
+ this.disposable.value = params.api.onDidExpansionChange(() => {
5706
+ this.updateIcon();
5684
5707
  });
5685
5708
  }
5709
+ updateIcon() {
5710
+ var _a;
5711
+ const isExpanded = !!((_a = this.apiRef.api) === null || _a === void 0 ? void 0 : _a.isExpanded);
5712
+ toggleClass(this._expander, 'collapsed', !isExpanded);
5713
+ if (isExpanded) {
5714
+ if (this._expander.contains(this._collapsedIcon)) {
5715
+ this._collapsedIcon.remove();
5716
+ }
5717
+ if (!this._expander.contains(this._expandedIcon)) {
5718
+ this._expander.appendChild(this._expandedIcon);
5719
+ }
5720
+ }
5721
+ else {
5722
+ if (this._expander.contains(this._expandedIcon)) {
5723
+ this._expandedIcon.remove();
5724
+ }
5725
+ if (!this._expander.contains(this._collapsedIcon)) {
5726
+ this._expander.appendChild(this._collapsedIcon);
5727
+ }
5728
+ }
5729
+ }
5686
5730
  update(_params) {
5687
5731
  //
5688
5732
  }
@@ -5692,9 +5736,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5692
5736
  }
5693
5737
  }
5694
5738
 
5739
+ const nextLayoutId = sequentialNumberGenerator();
5695
5740
  class PaneFramework extends DraggablePaneviewPanel {
5696
5741
  constructor(options) {
5697
- super(options.id, options.component, options.headerComponent, options.orientation, options.isExpanded, options.disableDnd);
5742
+ super(options.accessor, options.id, options.component, options.headerComponent, options.orientation, options.isExpanded, options.disableDnd);
5698
5743
  this.options = options;
5699
5744
  }
5700
5745
  getBodyComponent() {
@@ -5708,6 +5753,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5708
5753
  constructor(element, options) {
5709
5754
  super();
5710
5755
  this.element = element;
5756
+ this._id = nextLayoutId.next();
5711
5757
  this._disposable = new MutableDisposable();
5712
5758
  this._viewDisposables = new Map();
5713
5759
  this._onDidLayoutfromJSON = new Emitter();
@@ -5734,6 +5780,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5734
5780
  });
5735
5781
  this.addDisposables(this._disposable);
5736
5782
  }
5783
+ get id() {
5784
+ return this._id;
5785
+ }
5737
5786
  get panels() {
5738
5787
  return this.paneview.getPanes();
5739
5788
  }
@@ -5798,6 +5847,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5798
5847
  orientation: exports.Orientation.VERTICAL,
5799
5848
  isExpanded: !!options.isExpanded,
5800
5849
  disableDnd: !!this.options.disableDnd,
5850
+ accessor: this,
5801
5851
  });
5802
5852
  this.doAddPanel(view);
5803
5853
  const size = typeof options.size === 'number' ? options.size : exports.Sizing.Distribute;
@@ -5892,6 +5942,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
5892
5942
  orientation: exports.Orientation.VERTICAL,
5893
5943
  isExpanded: !!view.expanded,
5894
5944
  disableDnd: !!this.options.disableDnd,
5945
+ accessor: this,
5895
5946
  });
5896
5947
  this.doAddPanel(panel);
5897
5948
  queue.push(() => {
@@ -6091,15 +6142,21 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6091
6142
  this.component = component;
6092
6143
  this.parameters = parameters;
6093
6144
  this.context = context;
6145
+ this._initialProps = {};
6094
6146
  this.disposed = false;
6095
6147
  this.createPortal();
6096
6148
  }
6097
6149
  update(props) {
6098
- var _a;
6099
6150
  if (this.disposed) {
6100
6151
  throw new Error('invalid operation: resource is already disposed');
6101
6152
  }
6102
- (_a = this.componentInstance) === null || _a === void 0 ? void 0 : _a.update(props);
6153
+ if (!this.componentInstance) {
6154
+ // if the component is yet to be mounted store the props
6155
+ this._initialProps = Object.assign(Object.assign({}, this._initialProps), props);
6156
+ }
6157
+ else {
6158
+ this.componentInstance.update(props);
6159
+ }
6103
6160
  }
6104
6161
  createPortal() {
6105
6162
  if (this.disposed) {
@@ -6119,6 +6176,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6119
6176
  componentProps: this.parameters,
6120
6177
  ref: (element) => {
6121
6178
  this.componentInstance = element;
6179
+ if (Object.keys(this._initialProps).length > 0) {
6180
+ this.componentInstance.update(this._initialProps);
6181
+ this._initialProps = {}; // don't keep a reference to the users object once no longer required
6182
+ }
6122
6183
  },
6123
6184
  });
6124
6185
  const node = this.context
@@ -6175,30 +6236,19 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6175
6236
  this.onDidBlur = this._onDidBlur.event;
6176
6237
  this._element = document.createElement('div');
6177
6238
  this._element.className = 'dockview-react-part';
6178
- this._actionsElement = document.createElement('div');
6179
- this._actionsElement.className = 'dockview-react-part';
6180
6239
  }
6181
6240
  get element() {
6182
6241
  return this._element;
6183
6242
  }
6184
- get actions() {
6185
- return this._actionsElement;
6186
- }
6187
6243
  focus() {
6188
6244
  // TODO
6189
6245
  }
6190
6246
  init(parameters) {
6191
- const context = {
6192
- api: parameters.api,
6193
- containerApi: parameters.containerApi,
6194
- actionsPortalElement: this._actionsElement,
6195
- tabPortalElement: parameters.tab,
6196
- };
6197
6247
  this.part = new ReactPart(this.element, this.reactPortalStore, this.component, {
6198
6248
  params: parameters.params,
6199
6249
  api: parameters.api,
6200
6250
  containerApi: parameters.containerApi,
6201
- }, context);
6251
+ });
6202
6252
  }
6203
6253
  toJSON() {
6204
6254
  return {
@@ -6216,11 +6266,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6216
6266
  // noop
6217
6267
  }
6218
6268
  dispose() {
6219
- var _a, _b;
6269
+ var _a;
6220
6270
  this._onDidFocus.dispose();
6221
6271
  this._onDidBlur.dispose();
6222
6272
  (_a = this.part) === null || _a === void 0 ? void 0 : _a.dispose();
6223
- (_b = this.actionsPart) === null || _b === void 0 ? void 0 : _b.dispose();
6224
6273
  }
6225
6274
  }
6226
6275
 
@@ -6250,6 +6299,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6250
6299
  (_a = this.part) === null || _a === void 0 ? void 0 : _a.update(event.params);
6251
6300
  }
6252
6301
  toJSON() {
6302
+ if (this.id === DEFAULT_TAB_IDENTIFIER) {
6303
+ return {};
6304
+ }
6253
6305
  return {
6254
6306
  id: this.id,
6255
6307
  };
@@ -6271,17 +6323,25 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6271
6323
  this.layout = layout;
6272
6324
  }
6273
6325
  fromJSON(panelData, group) {
6274
- var _a, _b, _c;
6326
+ var _a, _b, _c, _d;
6275
6327
  const panelId = panelData.id;
6276
6328
  const params = panelData.params;
6277
6329
  const title = panelData.title;
6278
6330
  const suppressClosable = panelData.suppressClosable;
6279
6331
  const viewData = panelData.view;
6332
+ let tab;
6333
+ if ((_a = viewData.tab) === null || _a === void 0 ? void 0 : _a.id) {
6334
+ tab = createComponent(viewData.tab.id, viewData.tab.id, this.layout.options.tabComponents, this.layout.options.frameworkTabComponents, (_b = this.layout.options.frameworkComponentFactory) === null || _b === void 0 ? void 0 : _b.tab, () => new DefaultTab());
6335
+ }
6336
+ else if (this.layout.options.defaultTabComponent) {
6337
+ tab = createComponent(this.layout.options.defaultTabComponent, this.layout.options.defaultTabComponent, this.layout.options.tabComponents, this.layout.options.frameworkTabComponents, (_c = this.layout.options.frameworkComponentFactory) === null || _c === void 0 ? void 0 : _c.tab, () => new DefaultTab());
6338
+ }
6339
+ else {
6340
+ tab = new DefaultTab();
6341
+ }
6280
6342
  const view = new DefaultGroupPanelView({
6281
- content: createComponent(viewData.content.id, viewData.content.id, this.layout.options.components, this.layout.options.frameworkComponents, (_a = this.layout.options.frameworkComponentFactory) === null || _a === void 0 ? void 0 : _a.content),
6282
- tab: ((_b = viewData.tab) === null || _b === void 0 ? void 0 : _b.id)
6283
- ? createComponent(viewData.tab.id, viewData.tab.id, this.layout.options.tabComponents, this.layout.options.frameworkTabComponents, (_c = this.layout.options.frameworkComponentFactory) === null || _c === void 0 ? void 0 : _c.tab)
6284
- : new DefaultTab(),
6343
+ content: createComponent(viewData.content.id, viewData.content.id, this.layout.options.components, this.layout.options.frameworkComponents, (_d = this.layout.options.frameworkComponentFactory) === null || _d === void 0 ? void 0 : _d.content),
6344
+ tab,
6285
6345
  });
6286
6346
  const panel = new DockviewGroupPanel(panelId, this.layout, new DockviewApi(this.layout), group);
6287
6347
  panel.init({
@@ -6349,6 +6409,80 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6349
6409
  }
6350
6410
  }
6351
6411
 
6412
+ class ReactGroupControlsRendererPart {
6413
+ constructor(component, reactPortalStore, _group) {
6414
+ this.component = component;
6415
+ this.reactPortalStore = reactPortalStore;
6416
+ this._group = _group;
6417
+ this.mutableDisposable = new MutableDisposable();
6418
+ this._element = document.createElement('div');
6419
+ this._element.className = 'dockview-react-part';
6420
+ }
6421
+ get element() {
6422
+ return this._element;
6423
+ }
6424
+ get part() {
6425
+ return this._part;
6426
+ }
6427
+ get group() {
6428
+ return this._group;
6429
+ }
6430
+ focus() {
6431
+ // TODO
6432
+ }
6433
+ init(parameters) {
6434
+ this.mutableDisposable.value = new CompositeDisposable(this._group.model.onDidAddPanel(() => {
6435
+ this.updatePanels();
6436
+ }), this._group.model.onDidRemovePanel(() => {
6437
+ this.updatePanels();
6438
+ }), this._group.model.onDidActivePanelChange(() => {
6439
+ this.updateActivePanel();
6440
+ }), parameters.api.onDidActiveChange(() => {
6441
+ this.updateGroupActive();
6442
+ }));
6443
+ this._part = new ReactPart(this.element, this.reactPortalStore, this.component, {
6444
+ api: parameters.api,
6445
+ containerApi: parameters.containerApi,
6446
+ panels: this._group.model.panels,
6447
+ activePanel: this._group.model.activePanel,
6448
+ isGroupActive: this._group.api.isActive,
6449
+ });
6450
+ }
6451
+ update(event) {
6452
+ var _a;
6453
+ (_a = this._part) === null || _a === void 0 ? void 0 : _a.update(event.params);
6454
+ }
6455
+ dispose() {
6456
+ var _a;
6457
+ this.mutableDisposable.dispose();
6458
+ (_a = this._part) === null || _a === void 0 ? void 0 : _a.dispose();
6459
+ }
6460
+ updatePanels() {
6461
+ this.update({ params: { panels: this._group.model.panels } });
6462
+ }
6463
+ updateActivePanel() {
6464
+ this.update({
6465
+ params: {
6466
+ activePanel: this._group.model.activePanel,
6467
+ },
6468
+ });
6469
+ }
6470
+ updateGroupActive() {
6471
+ this.update({
6472
+ params: {
6473
+ isGroupActive: this._group.api.isActive,
6474
+ },
6475
+ });
6476
+ }
6477
+ }
6478
+
6479
+ function createGroupControlElement(component, store) {
6480
+ return component
6481
+ ? (groupPanel) => {
6482
+ return new ReactGroupControlsRendererPart(component, store, groupPanel);
6483
+ }
6484
+ : undefined;
6485
+ }
6352
6486
  const DockviewReact = React__namespace.forwardRef((props, ref) => {
6353
6487
  const domRef = React__namespace.useRef(null);
6354
6488
  const dockviewRef = React__namespace.useRef();
@@ -6398,12 +6532,15 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6398
6532
  const dockview = new DockviewComponent(element, {
6399
6533
  frameworkComponentFactory: factory,
6400
6534
  frameworkComponents: props.components,
6401
- frameworkTabComponents: props.tabComponents,
6535
+ frameworkTabComponents: Object.assign(Object.assign({}, (props.tabComponents || {})), { [DEFAULT_TAB_IDENTIFIER]: props.defaultTabComponent }),
6402
6536
  tabHeight: props.tabHeight,
6403
6537
  watermarkFrameworkComponent: props.watermarkComponent,
6538
+ defaultTabComponent: DEFAULT_TAB_IDENTIFIER,
6404
6539
  styles: props.hideBorders
6405
6540
  ? { separatorBorder: 'transparent' }
6406
6541
  : undefined,
6542
+ showDndOverlay: props.showDndOverlay,
6543
+ createGroupControlElement: createGroupControlElement(props.groupControlComponent, { addPortal }),
6407
6544
  });
6408
6545
  (_a = domRef.current) === null || _a === void 0 ? void 0 : _a.appendChild(dockview.element);
6409
6546
  dockview.deserializer = new ReactPanelDeserialzier(dockview);
@@ -6480,10 +6617,79 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6480
6617
  disposable.dispose();
6481
6618
  };
6482
6619
  }, [props.onTabContextMenu]);
6620
+ React__namespace.useEffect(() => {
6621
+ if (!dockviewRef.current) {
6622
+ return;
6623
+ }
6624
+ dockviewRef.current.updateOptions({
6625
+ defaultTabComponent: DEFAULT_TAB_IDENTIFIER,
6626
+ frameworkTabComponents: Object.assign(Object.assign({}, (props.tabComponents || {})), { [DEFAULT_TAB_IDENTIFIER]: props.defaultTabComponent }),
6627
+ });
6628
+ }, [props.defaultTabComponent]);
6629
+ React__namespace.useEffect(() => {
6630
+ if (!dockviewRef.current) {
6631
+ return;
6632
+ }
6633
+ dockviewRef.current.updateOptions({
6634
+ createGroupControlElement: createGroupControlElement(props.groupControlComponent, { addPortal }),
6635
+ });
6636
+ }, [props.groupControlComponent]);
6483
6637
  return (React__namespace.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
6484
6638
  });
6485
6639
  DockviewReact.displayName = 'DockviewComponent';
6486
6640
 
6641
+ /******************************************************************************
6642
+ Copyright (c) Microsoft Corporation.
6643
+
6644
+ Permission to use, copy, modify, and/or distribute this software for any
6645
+ purpose with or without fee is hereby granted.
6646
+
6647
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
6648
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
6649
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
6650
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
6651
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
6652
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
6653
+ PERFORMANCE OF THIS SOFTWARE.
6654
+ ***************************************************************************** */
6655
+
6656
+ function __rest(s, e) {
6657
+ var t = {};
6658
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
6659
+ t[p] = s[p];
6660
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6661
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
6662
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
6663
+ t[p[i]] = s[p[i]];
6664
+ }
6665
+ return t;
6666
+ }
6667
+
6668
+ const CloseButton = () => (React__namespace.createElement("svg", { height: "11", width: "11", viewBox: "0 0 28 28", "aria-hidden": 'false', focusable: false, className: "dockview-svg" },
6669
+ React__namespace.createElement("path", { d: "M2.1 27.3L0 25.2L11.55 13.65L0 2.1L2.1 0L13.65 11.55L25.2 0L27.3 2.1L15.75 13.65L27.3 25.2L25.2 27.3L13.65 15.75L2.1 27.3Z" })));
6670
+
6671
+ const DockviewDefaultTab = (_a) => {
6672
+ var { api, containerApi: _containerApi, params: _params } = _a, rest = __rest(_a, ["api", "containerApi", "params"]);
6673
+ const onClose = React__namespace.useCallback((event) => {
6674
+ event.stopPropagation();
6675
+ api.close();
6676
+ }, [api]);
6677
+ const onClick = React__namespace.useCallback((event) => {
6678
+ api.setActive();
6679
+ if (rest.onClick) {
6680
+ rest.onClick(event);
6681
+ }
6682
+ }, [api, rest.onClick]);
6683
+ const iconClassname = React__namespace.useMemo(() => {
6684
+ const cn = ['dockview-react-tab-action'];
6685
+ return cn.join(',');
6686
+ }, [api.suppressClosable]);
6687
+ return (React__namespace.createElement("div", Object.assign({}, rest, { onClick: onClick, className: "dockview-react-tab" }),
6688
+ React__namespace.createElement("span", { className: "dockview-react-tab-title" }, api.title),
6689
+ React__namespace.createElement("div", { className: iconClassname, onClick: onClose },
6690
+ React__namespace.createElement(CloseButton, null))));
6691
+ };
6692
+
6487
6693
  class ReactPanelView extends SplitviewPanel {
6488
6694
  constructor(id, component, reactComponent, reactPortalStore) {
6489
6695
  super(id, component);
@@ -6713,6 +6919,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6713
6919
  createComponent,
6714
6920
  },
6715
6921
  },
6922
+ showDndOverlay: props.showDndOverlay,
6716
6923
  });
6717
6924
  const api = new PaneviewApi(paneview);
6718
6925
  const { clientWidth, clientHeight } = domRef.current;
@@ -6757,6 +6964,14 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6757
6964
  disposable.dispose();
6758
6965
  };
6759
6966
  }, [props.onDidDrop]);
6967
+ React__namespace.useEffect(() => {
6968
+ if (!paneviewRef.current) {
6969
+ return;
6970
+ }
6971
+ paneviewRef.current.updateOptions({
6972
+ showDndOverlay: props.showDndOverlay,
6973
+ });
6974
+ }, [props.showDndOverlay]);
6760
6975
  return (React__namespace.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
6761
6976
  });
6762
6977
  PaneviewReact.displayName = 'PaneviewComponent';
@@ -6765,6 +6980,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6765
6980
  exports.ContentContainer = ContentContainer;
6766
6981
  exports.DockviewApi = DockviewApi;
6767
6982
  exports.DockviewComponent = DockviewComponent;
6983
+ exports.DockviewDefaultTab = DockviewDefaultTab;
6768
6984
  exports.DockviewReact = DockviewReact;
6769
6985
  exports.Gridview = Gridview;
6770
6986
  exports.GridviewApi = GridviewApi;
@@ -6781,8 +6997,6 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
6781
6997
  exports.PaneviewComponent = PaneviewComponent;
6782
6998
  exports.PaneviewPanel = PaneviewPanel;
6783
6999
  exports.PaneviewReact = PaneviewReact;
6784
- exports.ReactPanelContentPart = ReactPanelContentPart;
6785
- exports.ReactPanelHeaderPart = ReactPanelHeaderPart;
6786
7000
  exports.ReactPart = ReactPart;
6787
7001
  exports.ReactPartContext = ReactPartContext;
6788
7002
  exports.Splitview = Splitview;