dockview 1.10.1 → 1.11.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.
- package/dist/cjs/dockview/defaultTab.d.ts +1 -1
- package/dist/cjs/dockview/defaultTab.js +11 -31
- package/dist/cjs/dockview/dockview.d.ts +1 -1
- package/dist/cjs/dockview/dockview.js +27 -47
- package/dist/cjs/dockview/headerActionsRenderer.d.ts +1 -1
- package/dist/cjs/dockview/headerActionsRenderer.js +2 -0
- package/dist/cjs/dockview/reactContentPart.d.ts +1 -1
- package/dist/cjs/dockview/reactContentPart.js +2 -0
- package/dist/cjs/dockview/reactHeaderPart.d.ts +1 -1
- package/dist/cjs/dockview/reactHeaderPart.js +2 -0
- package/dist/cjs/dockview/reactWatermarkPart.d.ts +1 -1
- package/dist/cjs/dockview/reactWatermarkPart.js +2 -0
- package/dist/cjs/gridview/gridview.d.ts +1 -1
- package/dist/cjs/gridview/gridview.js +13 -33
- package/dist/cjs/paneview/paneview.d.ts +1 -1
- package/dist/cjs/paneview/paneview.js +16 -36
- package/dist/cjs/paneview/view.d.ts +1 -1
- package/dist/cjs/react.d.ts +1 -1
- package/dist/cjs/react.js +16 -36
- package/dist/cjs/splitview/splitview.d.ts +1 -1
- package/dist/cjs/splitview/splitview.js +13 -33
- package/dist/cjs/svg.d.ts +1 -1
- package/dist/cjs/svg.js +7 -27
- package/dist/dockview.amd.js +125 -123
- package/dist/dockview.amd.js.map +1 -1
- package/dist/dockview.amd.min.js +2 -2
- package/dist/dockview.amd.min.js.map +1 -1
- package/dist/dockview.amd.min.noStyle.js +2 -2
- package/dist/dockview.amd.min.noStyle.js.map +1 -1
- package/dist/dockview.amd.noStyle.js +124 -122
- package/dist/dockview.amd.noStyle.js.map +1 -1
- package/dist/dockview.cjs.js +125 -123
- package/dist/dockview.cjs.js.map +1 -1
- package/dist/dockview.esm.js +65 -43
- package/dist/dockview.esm.js.map +1 -1
- package/dist/dockview.esm.min.js +2 -2
- package/dist/dockview.esm.min.js.map +1 -1
- package/dist/dockview.js +125 -123
- package/dist/dockview.js.map +1 -1
- package/dist/dockview.min.js +2 -2
- package/dist/dockview.min.js.map +1 -1
- package/dist/dockview.min.noStyle.js +2 -2
- package/dist/dockview.min.noStyle.js.map +1 -1
- package/dist/dockview.noStyle.js +124 -122
- package/dist/dockview.noStyle.js.map +1 -1
- package/dist/esm/dockview/defaultTab.d.ts +1 -1
- package/dist/esm/dockview/defaultTab.js +4 -4
- package/dist/esm/dockview/dockview.d.ts +1 -1
- package/dist/esm/dockview/dockview.js +1 -1
- package/dist/esm/dockview/headerActionsRenderer.d.ts +1 -1
- package/dist/esm/dockview/headerActionsRenderer.js +2 -0
- package/dist/esm/dockview/reactContentPart.d.ts +1 -1
- package/dist/esm/dockview/reactContentPart.js +2 -0
- package/dist/esm/dockview/reactHeaderPart.d.ts +1 -1
- package/dist/esm/dockview/reactHeaderPart.js +2 -0
- package/dist/esm/dockview/reactWatermarkPart.d.ts +1 -1
- package/dist/esm/dockview/reactWatermarkPart.js +2 -0
- package/dist/esm/gridview/gridview.d.ts +1 -1
- package/dist/esm/gridview/gridview.js +1 -1
- package/dist/esm/paneview/paneview.d.ts +1 -1
- package/dist/esm/paneview/paneview.js +1 -1
- package/dist/esm/paneview/view.d.ts +1 -1
- package/dist/esm/react.d.ts +1 -1
- package/dist/esm/react.js +2 -2
- package/dist/esm/splitview/splitview.d.ts +1 -1
- package/dist/esm/splitview/splitview.js +1 -1
- package/dist/esm/svg.d.ts +1 -1
- package/dist/esm/svg.js +1 -1
- package/dist/styles/dockview.css +849 -8
- package/package.json +3 -3
package/dist/dockview.amd.js
CHANGED
|
@@ -1,31 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* dockview
|
|
3
|
-
* @version 1.
|
|
3
|
+
* @version 1.11.0
|
|
4
4
|
* @link https://github.com/mathuo/dockview
|
|
5
5
|
* @license MIT
|
|
6
6
|
*/
|
|
7
7
|
define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) { 'use strict';
|
|
8
8
|
|
|
9
|
-
function _interopNamespaceDefault(e) {
|
|
10
|
-
var n = Object.create(null);
|
|
11
|
-
if (e) {
|
|
12
|
-
Object.keys(e).forEach(function (k) {
|
|
13
|
-
if (k !== 'default') {
|
|
14
|
-
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
15
|
-
Object.defineProperty(n, k, d.get ? d : {
|
|
16
|
-
enumerable: true,
|
|
17
|
-
get: function () { return e[k]; }
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
n.default = e;
|
|
23
|
-
return Object.freeze(n);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
|
|
27
|
-
var ReactDOM__namespace = /*#__PURE__*/_interopNamespaceDefault(ReactDOM);
|
|
28
|
-
|
|
29
9
|
function styleInject(css, ref) {
|
|
30
10
|
if ( ref === void 0 ) ref = {};
|
|
31
11
|
var insertAt = ref.insertAt;
|
|
@@ -53,7 +33,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
53
33
|
}
|
|
54
34
|
}
|
|
55
35
|
|
|
56
|
-
var css_248z = "@import \"dockview-core/dist/styles/dockview.css\";\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 .dv-react-tab-close-btn {\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 .dv-react-tab-close-btn:hover {\n border-radius: 2px;\n background-color: var(--dv-icon-hover-background-color);\n}\n.tab.inactive-tab:not(:hover) .dv-react-tab-close-btn {\n visibility: hidden;\n}\n.dockview-react-part {\n height: 100%;\n width: 100%;\n}";
|
|
36
|
+
var css_248z = ".dv-render-overlay {\n position: absolute;\n z-index: 1;\n height: 100%;\n}\n.dv-render-overlay.dv-render-overlay-float {\n z-index: 999;\n}\n\n.dv-debug .dv-render-overlay {\n outline: 1px solid red;\n outline-offset: -1;\n}\n.dockview-svg {\n display: inline-block;\n fill: currentcolor;\n line-height: 1;\n stroke: currentcolor;\n stroke-width: 0;\n}\n.dockview-theme-dark {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #1e1e1e;\n --dv-tabs-and-actions-container-background-color: #252526;\n --dv-activegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-activegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-inactivegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-tab-divider-color: #1e1e1e;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: #969696;\n --dv-inactivegroup-visiblepanel-tab-color: #8f8f8f;\n --dv-inactivegroup-hiddenpanel-tab-color: #626262;\n --dv-separator-border: rgb(68, 68, 68);\n --dv-paneview-header-border-color: rgba(204, 204, 204, 0.2);\n}\n\n.dockview-theme-light {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: white;\n --dv-tabs-and-actions-container-background-color: #f3f3f3;\n --dv-activegroup-visiblepanel-tab-background-color: white;\n --dv-activegroup-hiddenpanel-tab-background-color: #ececec;\n --dv-inactivegroup-visiblepanel-tab-background-color: white;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #ececec;\n --dv-tab-divider-color: white;\n --dv-activegroup-visiblepanel-tab-color: rgb(51, 51, 51);\n --dv-activegroup-hiddenpanel-tab-color: rgba(51, 51, 51, 0.7);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(51, 51, 51, 0.7);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(51, 51, 51, 0.35);\n --dv-separator-border: rgba(128, 128, 128, 0.35);\n --dv-paneview-header-border-color: rgb(51, 51, 51);\n}\n\n.dockview-theme-vs {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #1e1e1e;\n --dv-tabs-and-actions-container-background-color: #252526;\n --dv-activegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-activegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-inactivegroup-visiblepanel-tab-background-color: #1e1e1e;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #2d2d2d;\n --dv-tab-divider-color: #1e1e1e;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: #969696;\n --dv-inactivegroup-visiblepanel-tab-color: #8f8f8f;\n --dv-inactivegroup-hiddenpanel-tab-color: #626262;\n --dv-separator-border: rgb(68, 68, 68);\n --dv-paneview-header-border-color: rgba(204, 204, 204, 0.2);\n --dv-tabs-and-actions-container-background-color: #2d2d30;\n --dv-tabs-and-actions-container-height: 20px;\n --dv-tabs-and-actions-container-font-size: 11px;\n --dv-activegroup-visiblepanel-tab-background-color: #007acc;\n --dv-inactivegroup-visiblepanel-tab-background-color: #3f3f46;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: white;\n --dv-inactivegroup-visiblepanel-tab-color: white;\n --dv-inactivegroup-hiddenpanel-tab-color: white;\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container {\n box-sizing: content-box;\n border-bottom: 2px solid var(--dv-activegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container .tab.active-tab {\n border-top: 2px solid var(--dv-activegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.active-group > .tabs-and-actions-container .tab.inactive-tab {\n border-top: 2px solid var(--dv-activegroup-hiddenpanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container {\n box-sizing: content-box;\n border-bottom: 2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container .tab.active-tab {\n border-top: 2px solid var(--dv-inactivegroup-visiblepanel-tab-background-color);\n}\n.dockview-theme-vs .groupview.inactive-group > .tabs-and-actions-container .tab.inactive-tab {\n border-top: 2px solid var(--dv-inactivegroup-hiddenpanel-tab-background-color);\n}\n\n.dockview-theme-abyss {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #000c18;\n --dv-tabs-and-actions-container-background-color: #1c1c2a;\n --dv-activegroup-visiblepanel-tab-background-color: #000c18;\n --dv-activegroup-hiddenpanel-tab-background-color: #10192c;\n --dv-inactivegroup-visiblepanel-tab-background-color: #000c18;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #10192c;\n --dv-tab-divider-color: #2b2b4a;\n --dv-activegroup-visiblepanel-tab-color: white;\n --dv-activegroup-hiddenpanel-tab-color: rgba(255, 255, 255, 0.5);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(255, 255, 255, 0.5);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(255, 255, 255, 0.25);\n --dv-separator-border: #2b2b4a;\n --dv-paneview-header-border-color: #2b2b4a;\n --dv-paneview-active-outline-color: #596f99;\n}\n\n.dockview-theme-dracula {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-view-background-color: #282a36;\n --dv-tabs-and-actions-container-background-color: #191a21;\n --dv-activegroup-visiblepanel-tab-background-color: #282a36;\n --dv-activegroup-hiddenpanel-tab-background-color: #21222c;\n --dv-inactivegroup-visiblepanel-tab-background-color: #282a36;\n --dv-inactivegroup-hiddenpanel-tab-background-color: #21222c;\n --dv-tab-divider-color: #191a21;\n --dv-activegroup-visiblepanel-tab-color: rgb(248, 248, 242);\n --dv-activegroup-hiddenpanel-tab-color: rgb(98, 114, 164);\n --dv-inactivegroup-visiblepanel-tab-color: rgba(248, 248, 242, 0.5);\n --dv-inactivegroup-hiddenpanel-tab-color: rgba(98, 114, 164, 0.5);\n --dv-separator-border: #bd93f9;\n --dv-paneview-header-border-color: #bd93f9;\n --dv-paneview-active-outline-color: #6272a4;\n}\n.dockview-theme-dracula .groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n position: relative;\n}\n.dockview-theme-dracula .groupview.active-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab::after {\n position: absolute;\n left: 0px;\n top: 0px;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: #94527e;\n z-index: 999;\n}\n.dockview-theme-dracula .groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab {\n position: relative;\n}\n.dockview-theme-dracula .groupview.inactive-group > .tabs-and-actions-container > .tabs-container > .tab.active-tab::after {\n position: absolute;\n left: 0px;\n bottom: 0px;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: #5e3d5a;\n z-index: 999;\n}\n\n.dockview-theme-replit {\n --dv-background-color: black;\n --dv-paneview-active-outline-color: dodgerblue;\n --dv-tabs-and-actions-container-font-size: 13px;\n --dv-tabs-and-actions-container-height: 35px;\n --dv-drag-over-background-color: rgba(83, 89, 93, 0.5);\n --dv-drag-over-border-color: white;\n --dv-tabs-container-scrollbar-color: #888;\n --dv-icon-hover-background-color: rgba(90, 93, 94, 0.31);\n --dv-floating-box-shadow: 8px 8px 8px 0px rgba(83, 89, 93, 0.5);\n --dv-group-gap-size: 3px;\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::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:hover::after {\n background-color: var(--dv-separator-handle-hover-background-color);\n}\n.dockview-theme-replit .horizontal > .sash-container > .sash::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: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-debug .dv-resize-container .dv-resize-handle-top {\n background-color: red;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-bottom {\n background-color: green;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-left {\n background-color: yellow;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-right {\n background-color: blue;\n}\n.dv-debug .dv-resize-container .dv-resize-handle-topleft,\n.dv-debug .dv-resize-container .dv-resize-handle-topright,\n.dv-debug .dv-resize-container .dv-resize-handle-bottomleft,\n.dv-debug .dv-resize-container .dv-resize-handle-bottomright {\n background-color: cyan;\n}\n\n.dv-resize-container {\n position: absolute;\n z-index: 997;\n border: 1px solid var(--dv-tab-divider-color);\n box-shadow: var(--dv-floating-box-shadow);\n}\n.dv-resize-container.dv-bring-to-front {\n z-index: 998;\n}\n.dv-resize-container.dv-resize-container-dragging {\n opacity: 0.5;\n}\n.dv-resize-container .dv-resize-handle-top {\n height: 4px;\n width: calc(100% - 8px);\n left: 4px;\n top: -2px;\n z-index: 999;\n position: absolute;\n cursor: ns-resize;\n}\n.dv-resize-container .dv-resize-handle-bottom {\n height: 4px;\n width: calc(100% - 8px);\n left: 4px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: ns-resize;\n}\n.dv-resize-container .dv-resize-handle-left {\n height: calc(100% - 8px);\n width: 4px;\n left: -2px;\n top: 4px;\n z-index: 999;\n position: absolute;\n cursor: ew-resize;\n}\n.dv-resize-container .dv-resize-handle-right {\n height: calc(100% - 8px);\n width: 4px;\n right: -2px;\n top: 4px;\n z-index: 999;\n position: absolute;\n cursor: ew-resize;\n}\n.dv-resize-container .dv-resize-handle-topleft {\n height: 4px;\n width: 4px;\n top: -2px;\n left: -2px;\n z-index: 999;\n position: absolute;\n cursor: nw-resize;\n}\n.dv-resize-container .dv-resize-handle-topright {\n height: 4px;\n width: 4px;\n right: -2px;\n top: -2px;\n z-index: 999;\n position: absolute;\n cursor: ne-resize;\n}\n.dv-resize-container .dv-resize-handle-bottomleft {\n height: 4px;\n width: 4px;\n left: -2px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: sw-resize;\n}\n.dv-resize-container .dv-resize-handle-bottomright {\n height: 4px;\n width: 4px;\n right: -2px;\n bottom: -2px;\n z-index: 999;\n position: absolute;\n cursor: se-resize;\n}\n.dv-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.dv-dockview .split-view-container.horizontal > .view-container > .view:not(:last-child) {\n border-right: var(--dv-group-gap-size) solid transparent;\n}\n.dv-dockview .split-view-container.horizontal > .view-container > .view:not(:first-child) {\n border-left: var(--dv-group-gap-size) solid transparent;\n}\n.dv-dockview .split-view-container.vertical > .view-container > .view:not(:last-child) {\n border-bottom: var(--dv-group-gap-size) solid transparent;\n}\n.dv-dockview .split-view-container.vertical > .view-container > .view:not(:first-child) {\n border-top: var(--dv-group-gap-size) solid transparent;\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.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: elipsis;\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}";
|
|
57
37
|
styleInject(css_248z);
|
|
58
38
|
|
|
59
39
|
class TransferObject {
|
|
@@ -4285,6 +4265,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4285
4265
|
this._width = 0;
|
|
4286
4266
|
this._height = 0;
|
|
4287
4267
|
this._panels = [];
|
|
4268
|
+
this._panelDisposables = new Map();
|
|
4288
4269
|
this._onMove = new Emitter();
|
|
4289
4270
|
this.onMove = this._onMove.event;
|
|
4290
4271
|
this._onDidDrop = new Emitter();
|
|
@@ -4299,6 +4280,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4299
4280
|
this.onGroupDragStart = this._onGroupDragStart.event;
|
|
4300
4281
|
this._onDidAddPanel = new Emitter();
|
|
4301
4282
|
this.onDidAddPanel = this._onDidAddPanel.event;
|
|
4283
|
+
this._onDidPanelTitleChange = new Emitter();
|
|
4284
|
+
this.onDidPanelTitleChange = this._onDidPanelTitleChange.event;
|
|
4285
|
+
this._onDidPanelParametersChange = new Emitter();
|
|
4286
|
+
this.onDidPanelParametersChange = this._onDidPanelParametersChange.event;
|
|
4302
4287
|
this._onDidRemovePanel = new Emitter();
|
|
4303
4288
|
this.onDidRemovePanel = this._onDidRemovePanel.event;
|
|
4304
4289
|
this._onDidActivePanelChange = new Emitter();
|
|
@@ -4587,6 +4572,11 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4587
4572
|
if (this.mostRecentlyUsed.includes(panel)) {
|
|
4588
4573
|
this.mostRecentlyUsed.splice(this.mostRecentlyUsed.indexOf(panel), 1);
|
|
4589
4574
|
}
|
|
4575
|
+
const disposable = this._panelDisposables.get(panel.id);
|
|
4576
|
+
if (disposable) {
|
|
4577
|
+
disposable.dispose();
|
|
4578
|
+
this._panelDisposables.delete(panel.id);
|
|
4579
|
+
}
|
|
4590
4580
|
this._onDidRemovePanel.fire({ panel });
|
|
4591
4581
|
}
|
|
4592
4582
|
doAddPanel(panel, index = this.panels.length, options = { skipSetActive: false }) {
|
|
@@ -4604,6 +4594,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
4604
4594
|
}
|
|
4605
4595
|
this.updateMru(panel);
|
|
4606
4596
|
this.panels.splice(index, 0, panel);
|
|
4597
|
+
this._panelDisposables.set(panel.id, new CompositeDisposable(panel.api.onDidTitleChange((event) => this._onDidPanelTitleChange.fire(event)), panel.api.onDidParametersChange((event) => this._onDidPanelParametersChange.fire(event))));
|
|
4607
4598
|
this._onDidAddPanel.fire({ panel });
|
|
4608
4599
|
}
|
|
4609
4600
|
doSetActivePanel(panel) {
|
|
@@ -5027,14 +5018,16 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5027
5018
|
get height() {
|
|
5028
5019
|
return this._height;
|
|
5029
5020
|
}
|
|
5030
|
-
constructor(id) {
|
|
5021
|
+
constructor(id, component) {
|
|
5031
5022
|
super();
|
|
5032
5023
|
this.id = id;
|
|
5024
|
+
this.component = component;
|
|
5033
5025
|
this._isFocused = false;
|
|
5034
5026
|
this._isActive = false;
|
|
5035
5027
|
this._isVisible = true;
|
|
5036
5028
|
this._width = 0;
|
|
5037
5029
|
this._height = 0;
|
|
5030
|
+
this._parameters = {};
|
|
5038
5031
|
this.panelUpdatesDisposable = new MutableDisposable();
|
|
5039
5032
|
this._onDidDimensionChange = new Emitter();
|
|
5040
5033
|
this.onDidDimensionsChange = this._onDidDimensionChange.event;
|
|
@@ -5052,8 +5045,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5052
5045
|
this.onDidActiveChange = this._onDidActiveChange.event;
|
|
5053
5046
|
this._onActiveChange = new Emitter();
|
|
5054
5047
|
this.onActiveChange = this._onActiveChange.event;
|
|
5055
|
-
this.
|
|
5056
|
-
this.
|
|
5048
|
+
this._onDidParametersChange = new Emitter();
|
|
5049
|
+
this.onDidParametersChange = this._onDidParametersChange.event;
|
|
5057
5050
|
this.addDisposables(this.onDidFocusChange((event) => {
|
|
5058
5051
|
this._isFocused = event.isFocused;
|
|
5059
5052
|
}), this.onDidActiveChange((event) => {
|
|
@@ -5063,10 +5056,14 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5063
5056
|
}), this.onDidDimensionsChange((event) => {
|
|
5064
5057
|
this._width = event.width;
|
|
5065
5058
|
this._height = event.height;
|
|
5066
|
-
}), this.panelUpdatesDisposable, this._onDidDimensionChange, this._onDidChangeFocus, this._onDidVisibilityChange, this._onDidActiveChange, this._onWillFocus, this._onActiveChange, this.
|
|
5059
|
+
}), this.panelUpdatesDisposable, this._onDidDimensionChange, this._onDidChangeFocus, this._onDidVisibilityChange, this._onDidActiveChange, this._onWillFocus, this._onActiveChange, this._onWillFocus, this._onWillVisibilityChange, this._onDidParametersChange);
|
|
5060
|
+
}
|
|
5061
|
+
getParameters() {
|
|
5062
|
+
return this._parameters;
|
|
5067
5063
|
}
|
|
5068
5064
|
initialize(panel) {
|
|
5069
|
-
this.panelUpdatesDisposable.value = this.
|
|
5065
|
+
this.panelUpdatesDisposable.value = this._onDidParametersChange.event((parameters) => {
|
|
5066
|
+
this._parameters = parameters;
|
|
5070
5067
|
panel.update({
|
|
5071
5068
|
params: parameters,
|
|
5072
5069
|
});
|
|
@@ -5079,14 +5076,14 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5079
5076
|
this._onActiveChange.fire();
|
|
5080
5077
|
}
|
|
5081
5078
|
updateParameters(parameters) {
|
|
5082
|
-
this.
|
|
5079
|
+
this._onDidParametersChange.fire(parameters);
|
|
5083
5080
|
}
|
|
5084
5081
|
}
|
|
5085
5082
|
|
|
5086
5083
|
class SplitviewPanelApiImpl extends PanelApiImpl {
|
|
5087
5084
|
//
|
|
5088
|
-
constructor(id) {
|
|
5089
|
-
super(id);
|
|
5085
|
+
constructor(id, component) {
|
|
5086
|
+
super(id, component);
|
|
5090
5087
|
this._onDidConstraintsChangeInternal = new Emitter();
|
|
5091
5088
|
this.onDidConstraintsChangeInternal = this._onDidConstraintsChangeInternal.event;
|
|
5092
5089
|
//
|
|
@@ -5111,8 +5108,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5111
5108
|
set pane(pane) {
|
|
5112
5109
|
this._pane = pane;
|
|
5113
5110
|
}
|
|
5114
|
-
constructor(id) {
|
|
5115
|
-
super(id);
|
|
5111
|
+
constructor(id, component) {
|
|
5112
|
+
super(id, component);
|
|
5116
5113
|
this._onDidExpansionChange = new Emitter({
|
|
5117
5114
|
replay: true,
|
|
5118
5115
|
});
|
|
@@ -5271,7 +5268,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5271
5268
|
this.header.style.display = value ? '' : 'none';
|
|
5272
5269
|
}
|
|
5273
5270
|
constructor(id, component, headerComponent, orientation, isExpanded, isHeaderVisible) {
|
|
5274
|
-
super(id, component, new PaneviewPanelApiImpl(id));
|
|
5271
|
+
super(id, component, new PaneviewPanelApiImpl(id, component));
|
|
5275
5272
|
this.headerComponent = headerComponent;
|
|
5276
5273
|
this._onDidChangeExpansionState = new Emitter({ replay: true });
|
|
5277
5274
|
this.onDidChangeExpansionState = this._onDidChangeExpansionState.event;
|
|
@@ -5502,8 +5499,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5502
5499
|
}
|
|
5503
5500
|
|
|
5504
5501
|
class GridviewPanelApiImpl extends PanelApiImpl {
|
|
5505
|
-
constructor(id, panel) {
|
|
5506
|
-
super(id);
|
|
5502
|
+
constructor(id, component, panel) {
|
|
5503
|
+
super(id, component);
|
|
5507
5504
|
this._onDidConstraintsChangeInternal = new Emitter();
|
|
5508
5505
|
this.onDidConstraintsChangeInternal = this._onDidConstraintsChangeInternal.event;
|
|
5509
5506
|
this._onDidConstraintsChange = new Emitter();
|
|
@@ -5574,7 +5571,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5574
5571
|
return this.api.isActive;
|
|
5575
5572
|
}
|
|
5576
5573
|
constructor(id, component, options, api) {
|
|
5577
|
-
super(id, component, api !== null && api !== void 0 ? api : new GridviewPanelApiImpl(id));
|
|
5574
|
+
super(id, component, api !== null && api !== void 0 ? api : new GridviewPanelApiImpl(id, component));
|
|
5578
5575
|
this._evaluatedMinimumWidth = 0;
|
|
5579
5576
|
this._evaluatedMaximumWidth = Number.MAX_SAFE_INTEGER;
|
|
5580
5577
|
this._evaluatedMinimumHeight = 0;
|
|
@@ -5682,7 +5679,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5682
5679
|
return this._group.model.location;
|
|
5683
5680
|
}
|
|
5684
5681
|
constructor(id, accessor) {
|
|
5685
|
-
super(id);
|
|
5682
|
+
super(id, '__dockviewgroup__');
|
|
5686
5683
|
this.accessor = accessor;
|
|
5687
5684
|
this._onDidLocationChange = new Emitter();
|
|
5688
5685
|
this.onDidLocationChange = this._onDidLocationChange.event;
|
|
@@ -5856,8 +5853,11 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5856
5853
|
get group() {
|
|
5857
5854
|
return this._group;
|
|
5858
5855
|
}
|
|
5859
|
-
|
|
5860
|
-
|
|
5856
|
+
get tabComponent() {
|
|
5857
|
+
return this._tabComponent;
|
|
5858
|
+
}
|
|
5859
|
+
constructor(panel, group, accessor, component, tabComponent) {
|
|
5860
|
+
super(panel.id, component);
|
|
5861
5861
|
this.panel = panel;
|
|
5862
5862
|
this.accessor = accessor;
|
|
5863
5863
|
this._onDidTitleChange = new Emitter();
|
|
@@ -5871,6 +5871,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5871
5871
|
this._onDidLocationChange = new Emitter();
|
|
5872
5872
|
this.onDidLocationChange = this._onDidLocationChange.event;
|
|
5873
5873
|
this.groupEventsDisposable = new MutableDisposable();
|
|
5874
|
+
this._tabComponent = tabComponent;
|
|
5874
5875
|
this.initialize(panel);
|
|
5875
5876
|
this._group = group;
|
|
5876
5877
|
this.setupGroupEventListeners();
|
|
@@ -5953,7 +5954,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5953
5954
|
var _a;
|
|
5954
5955
|
return (_a = this._renderer) !== null && _a !== void 0 ? _a : this.accessor.renderer;
|
|
5955
5956
|
}
|
|
5956
|
-
constructor(id, accessor, containerApi, group, view, options) {
|
|
5957
|
+
constructor(id, component, tabComponent, accessor, containerApi, group, view, options) {
|
|
5957
5958
|
super();
|
|
5958
5959
|
this.id = id;
|
|
5959
5960
|
this.accessor = accessor;
|
|
@@ -5961,7 +5962,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
5961
5962
|
this.view = view;
|
|
5962
5963
|
this._renderer = options.renderer;
|
|
5963
5964
|
this._group = group;
|
|
5964
|
-
this.api = new DockviewPanelApiImpl(this, this._group, accessor);
|
|
5965
|
+
this.api = new DockviewPanelApiImpl(this, this._group, accessor, component, tabComponent);
|
|
5965
5966
|
this.addDisposables(this.api.onActiveChange(() => {
|
|
5966
5967
|
accessor.setActivePanel(this);
|
|
5967
5968
|
}), this.api.onDidSizeChange((event) => {
|
|
@@ -6129,27 +6130,18 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6129
6130
|
//
|
|
6130
6131
|
this.params = {};
|
|
6131
6132
|
this._element = document.createElement('div');
|
|
6132
|
-
this._element.className = 'default-tab';
|
|
6133
|
+
this._element.className = 'dv-default-tab';
|
|
6133
6134
|
//
|
|
6134
6135
|
this._content = document.createElement('div');
|
|
6135
|
-
this._content.className = 'tab-content';
|
|
6136
|
-
//
|
|
6137
|
-
this._actionContainer = document.createElement('div');
|
|
6138
|
-
this._actionContainer.className = 'action-container';
|
|
6139
|
-
//
|
|
6140
|
-
this._list = document.createElement('ul');
|
|
6141
|
-
this._list.className = 'tab-list';
|
|
6142
|
-
//
|
|
6136
|
+
this._content.className = 'dv-default-tab-content';
|
|
6143
6137
|
this.action = document.createElement('div');
|
|
6144
|
-
this.action.className = 'tab-action';
|
|
6138
|
+
this.action.className = 'dv-default-tab-action';
|
|
6145
6139
|
this.action.appendChild(createCloseButton());
|
|
6146
6140
|
//
|
|
6147
6141
|
this._element.appendChild(this._content);
|
|
6148
|
-
this._element.appendChild(this.
|
|
6149
|
-
this._actionContainer.appendChild(this._list);
|
|
6150
|
-
this._list.appendChild(this.action);
|
|
6142
|
+
this._element.appendChild(this.action);
|
|
6151
6143
|
//
|
|
6152
|
-
this.addDisposables(addDisposableListener(this.
|
|
6144
|
+
this.addDisposables(addDisposableListener(this.action, 'mousedown', (ev) => {
|
|
6153
6145
|
ev.preventDefault();
|
|
6154
6146
|
}));
|
|
6155
6147
|
this.render();
|
|
@@ -6256,7 +6248,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
6256
6248
|
? (_b = viewData.tab) === null || _b === void 0 ? void 0 : _b.id
|
|
6257
6249
|
: panelData.tabComponent;
|
|
6258
6250
|
const view = new DockviewPanelModel(this.accessor, panelId, contentComponent, tabComponent);
|
|
6259
|
-
const panel = new DockviewPanel(panelId, this.accessor, new DockviewApi(this.accessor), group, view, {
|
|
6251
|
+
const panel = new DockviewPanel(panelId, contentComponent, tabComponent, this.accessor, new DockviewApi(this.accessor), group, view, {
|
|
6260
6252
|
renderer: panelData.renderer,
|
|
6261
6253
|
});
|
|
6262
6254
|
panel.init({
|
|
@@ -8243,6 +8235,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
8243
8235
|
if (this._onDidActivePanelChange.value !== event.panel) {
|
|
8244
8236
|
this._onDidActivePanelChange.fire(event.panel);
|
|
8245
8237
|
}
|
|
8238
|
+
}), exports.DockviewEvent.any(view.model.onDidPanelTitleChange, view.model.onDidPanelParametersChange)(() => {
|
|
8239
|
+
this._bufferOnDidLayoutChange.fire();
|
|
8246
8240
|
}));
|
|
8247
8241
|
this._groups.set(view.id, { value: view, disposable });
|
|
8248
8242
|
}
|
|
@@ -8255,7 +8249,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
8255
8249
|
const contentComponent = options.component;
|
|
8256
8250
|
const tabComponent = (_a = options.tabComponent) !== null && _a !== void 0 ? _a : this.options.defaultTabComponent;
|
|
8257
8251
|
const view = new DockviewPanelModel(this, options.id, contentComponent, tabComponent);
|
|
8258
|
-
const panel = new DockviewPanel(options.id, this, this._api, group, view, { renderer: options.renderer });
|
|
8252
|
+
const panel = new DockviewPanel(options.id, contentComponent, tabComponent, this, this._api, group, view, { renderer: options.renderer });
|
|
8259
8253
|
panel.init({
|
|
8260
8254
|
title: (_b = options.title) !== null && _b !== void 0 ? _b : options.id,
|
|
8261
8255
|
params: (_c = options === null || options === void 0 ? void 0 : options.params) !== null && _c !== void 0 ? _c : {},
|
|
@@ -9170,7 +9164,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9170
9164
|
return this._snap;
|
|
9171
9165
|
}
|
|
9172
9166
|
constructor(id, componentName) {
|
|
9173
|
-
super(id, componentName, new SplitviewPanelApiImpl(id));
|
|
9167
|
+
super(id, componentName, new SplitviewPanelApiImpl(id, componentName));
|
|
9174
9168
|
this._evaluatedMinimumSize = 0;
|
|
9175
9169
|
this._evaluatedMaximumSize = Number.POSITIVE_INFINITY;
|
|
9176
9170
|
this._minimumSize = 0;
|
|
@@ -9250,9 +9244,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9250
9244
|
* component
|
|
9251
9245
|
*/
|
|
9252
9246
|
const ReactComponentBridge = (props, ref) => {
|
|
9253
|
-
const [_, triggerRender] =
|
|
9254
|
-
const _props =
|
|
9255
|
-
|
|
9247
|
+
const [_, triggerRender] = React.useState();
|
|
9248
|
+
const _props = React.useRef(props.componentProps);
|
|
9249
|
+
React.useImperativeHandle(ref, () => ({
|
|
9256
9250
|
update: (componentProps) => {
|
|
9257
9251
|
_props.current = Object.assign(Object.assign({}, _props.current), componentProps);
|
|
9258
9252
|
/**
|
|
@@ -9264,7 +9258,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9264
9258
|
triggerRender(Date.now());
|
|
9265
9259
|
},
|
|
9266
9260
|
}), []);
|
|
9267
|
-
return
|
|
9261
|
+
return React.createElement(props.component, _props.current);
|
|
9268
9262
|
};
|
|
9269
9263
|
ReactComponentBridge.displayName = 'DockviewReactJsBridge';
|
|
9270
9264
|
/**
|
|
@@ -9276,7 +9270,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9276
9270
|
let value = 1;
|
|
9277
9271
|
return { next: () => `dockview_react_portal_key_${(value++).toString()}` };
|
|
9278
9272
|
})();
|
|
9279
|
-
const ReactPartContext =
|
|
9273
|
+
const ReactPartContext = React.createContext({});
|
|
9280
9274
|
class ReactPart {
|
|
9281
9275
|
constructor(parent, portalStore, component, parameters, context) {
|
|
9282
9276
|
this.parent = parent;
|
|
@@ -9312,7 +9306,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9312
9306
|
*/
|
|
9313
9307
|
throw new Error('Dockview: Only React.memo(...), React.ForwardRef(...) and functional components are accepted as components');
|
|
9314
9308
|
}
|
|
9315
|
-
const bridgeComponent =
|
|
9309
|
+
const bridgeComponent = React.createElement(React.forwardRef(ReactComponentBridge), {
|
|
9316
9310
|
component: this
|
|
9317
9311
|
.component,
|
|
9318
9312
|
componentProps: this.parameters,
|
|
@@ -9325,9 +9319,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9325
9319
|
},
|
|
9326
9320
|
});
|
|
9327
9321
|
const node = this.context
|
|
9328
|
-
?
|
|
9322
|
+
? React.createElement(ReactPartContext.Provider, { value: this.context }, bridgeComponent)
|
|
9329
9323
|
: bridgeComponent;
|
|
9330
|
-
const portal =
|
|
9324
|
+
const portal = ReactDOM.createPortal(node, this.parent, uniquePortalKeyGenerator.next());
|
|
9331
9325
|
this.ref = {
|
|
9332
9326
|
portal,
|
|
9333
9327
|
disposable: this.portalStore.addPortal(portal),
|
|
@@ -9345,9 +9339,9 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9345
9339
|
* portal array
|
|
9346
9340
|
*/
|
|
9347
9341
|
const usePortalsLifecycle = () => {
|
|
9348
|
-
const [portals, setPortals] =
|
|
9349
|
-
|
|
9350
|
-
const addPortal =
|
|
9342
|
+
const [portals, setPortals] = React.useState([]);
|
|
9343
|
+
React.useDebugValue(`Portal count: ${portals.length}`);
|
|
9344
|
+
const addPortal = React.useCallback((portal) => {
|
|
9351
9345
|
setPortals((existingPortals) => [...existingPortals, portal]);
|
|
9352
9346
|
let disposed = false;
|
|
9353
9347
|
return {
|
|
@@ -9385,6 +9379,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9385
9379
|
this.onDidBlur = this._onDidBlur.event;
|
|
9386
9380
|
this._element = document.createElement('div');
|
|
9387
9381
|
this._element.className = 'dockview-react-part';
|
|
9382
|
+
this._element.style.height = '100%';
|
|
9383
|
+
this._element.style.width = '100%';
|
|
9388
9384
|
}
|
|
9389
9385
|
focus() {
|
|
9390
9386
|
// TODO
|
|
@@ -9421,6 +9417,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9421
9417
|
this.reactPortalStore = reactPortalStore;
|
|
9422
9418
|
this._element = document.createElement('div');
|
|
9423
9419
|
this._element.className = 'dockview-react-part';
|
|
9420
|
+
this._element.style.height = '100%';
|
|
9421
|
+
this._element.style.width = '100%';
|
|
9424
9422
|
}
|
|
9425
9423
|
focus() {
|
|
9426
9424
|
//noop
|
|
@@ -9455,6 +9453,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9455
9453
|
this.reactPortalStore = reactPortalStore;
|
|
9456
9454
|
this._element = document.createElement('div');
|
|
9457
9455
|
this._element.className = 'dockview-react-part';
|
|
9456
|
+
this._element.style.height = '100%';
|
|
9457
|
+
this._element.style.width = '100%';
|
|
9458
9458
|
}
|
|
9459
9459
|
init(parameters) {
|
|
9460
9460
|
this.part = new ReactPart(this.element, this.reactPortalStore, this.component, {
|
|
@@ -9506,6 +9506,8 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9506
9506
|
this.mutableDisposable = new MutableDisposable();
|
|
9507
9507
|
this._element = document.createElement('div');
|
|
9508
9508
|
this._element.className = 'dockview-react-part';
|
|
9509
|
+
this._element.style.height = '100%';
|
|
9510
|
+
this._element.style.width = '100%';
|
|
9509
9511
|
}
|
|
9510
9512
|
focus() {
|
|
9511
9513
|
// TODO
|
|
@@ -9565,12 +9567,12 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9565
9567
|
: undefined;
|
|
9566
9568
|
}
|
|
9567
9569
|
const DEFAULT_REACT_TAB = 'props.defaultTabComponent';
|
|
9568
|
-
const DockviewReact =
|
|
9569
|
-
const domRef =
|
|
9570
|
-
const dockviewRef =
|
|
9570
|
+
const DockviewReact = React.forwardRef((props, ref) => {
|
|
9571
|
+
const domRef = React.useRef(null);
|
|
9572
|
+
const dockviewRef = React.useRef();
|
|
9571
9573
|
const [portals, addPortal] = usePortalsLifecycle();
|
|
9572
|
-
|
|
9573
|
-
|
|
9574
|
+
React.useImperativeHandle(ref, () => domRef.current, []);
|
|
9575
|
+
React.useEffect(() => {
|
|
9574
9576
|
var _a;
|
|
9575
9577
|
if (!domRef.current) {
|
|
9576
9578
|
return () => {
|
|
@@ -9641,13 +9643,13 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9641
9643
|
dockview.dispose();
|
|
9642
9644
|
};
|
|
9643
9645
|
}, []);
|
|
9644
|
-
|
|
9646
|
+
React.useEffect(() => {
|
|
9645
9647
|
if (!dockviewRef.current) {
|
|
9646
9648
|
return;
|
|
9647
9649
|
}
|
|
9648
9650
|
dockviewRef.current.locked = !!props.locked;
|
|
9649
9651
|
}, [props.locked]);
|
|
9650
|
-
|
|
9652
|
+
React.useEffect(() => {
|
|
9651
9653
|
if (!dockviewRef.current) {
|
|
9652
9654
|
return;
|
|
9653
9655
|
}
|
|
@@ -9655,7 +9657,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9655
9657
|
disableDnd: props.disableDnd,
|
|
9656
9658
|
});
|
|
9657
9659
|
}, [props.disableDnd]);
|
|
9658
|
-
|
|
9660
|
+
React.useEffect(() => {
|
|
9659
9661
|
if (!dockviewRef.current) {
|
|
9660
9662
|
return () => {
|
|
9661
9663
|
// noop
|
|
@@ -9670,7 +9672,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9670
9672
|
disposable.dispose();
|
|
9671
9673
|
};
|
|
9672
9674
|
}, [props.onDidDrop]);
|
|
9673
|
-
|
|
9675
|
+
React.useEffect(() => {
|
|
9674
9676
|
if (!dockviewRef.current) {
|
|
9675
9677
|
return () => {
|
|
9676
9678
|
// noop
|
|
@@ -9685,7 +9687,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9685
9687
|
disposable.dispose();
|
|
9686
9688
|
};
|
|
9687
9689
|
}, [props.onWillDrop]);
|
|
9688
|
-
|
|
9690
|
+
React.useEffect(() => {
|
|
9689
9691
|
if (!dockviewRef.current) {
|
|
9690
9692
|
return;
|
|
9691
9693
|
}
|
|
@@ -9693,7 +9695,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9693
9695
|
frameworkComponents: props.components,
|
|
9694
9696
|
});
|
|
9695
9697
|
}, [props.components]);
|
|
9696
|
-
|
|
9698
|
+
React.useEffect(() => {
|
|
9697
9699
|
if (!dockviewRef.current) {
|
|
9698
9700
|
return;
|
|
9699
9701
|
}
|
|
@@ -9701,7 +9703,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9701
9703
|
floatingGroupBounds: props.floatingGroupBounds,
|
|
9702
9704
|
});
|
|
9703
9705
|
}, [props.floatingGroupBounds]);
|
|
9704
|
-
|
|
9706
|
+
React.useEffect(() => {
|
|
9705
9707
|
if (!dockviewRef.current) {
|
|
9706
9708
|
return;
|
|
9707
9709
|
}
|
|
@@ -9709,7 +9711,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9709
9711
|
watermarkFrameworkComponent: props.watermarkComponent,
|
|
9710
9712
|
});
|
|
9711
9713
|
}, [props.watermarkComponent]);
|
|
9712
|
-
|
|
9714
|
+
React.useEffect(() => {
|
|
9713
9715
|
if (!dockviewRef.current) {
|
|
9714
9716
|
return;
|
|
9715
9717
|
}
|
|
@@ -9717,7 +9719,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9717
9719
|
showDndOverlay: props.showDndOverlay,
|
|
9718
9720
|
});
|
|
9719
9721
|
}, [props.showDndOverlay]);
|
|
9720
|
-
|
|
9722
|
+
React.useEffect(() => {
|
|
9721
9723
|
if (!dockviewRef.current) {
|
|
9722
9724
|
return;
|
|
9723
9725
|
}
|
|
@@ -9725,7 +9727,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9725
9727
|
frameworkTabComponents: props.tabComponents,
|
|
9726
9728
|
});
|
|
9727
9729
|
}, [props.tabComponents]);
|
|
9728
|
-
|
|
9730
|
+
React.useEffect(() => {
|
|
9729
9731
|
if (!dockviewRef.current) {
|
|
9730
9732
|
return;
|
|
9731
9733
|
}
|
|
@@ -9733,7 +9735,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9733
9735
|
disableFloatingGroups: props.disableFloatingGroups,
|
|
9734
9736
|
});
|
|
9735
9737
|
}, [props.disableFloatingGroups]);
|
|
9736
|
-
|
|
9738
|
+
React.useEffect(() => {
|
|
9737
9739
|
var _a;
|
|
9738
9740
|
if (!dockviewRef.current) {
|
|
9739
9741
|
return;
|
|
@@ -9750,7 +9752,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9750
9752
|
frameworkTabComponents,
|
|
9751
9753
|
});
|
|
9752
9754
|
}, [props.defaultTabComponent]);
|
|
9753
|
-
|
|
9755
|
+
React.useEffect(() => {
|
|
9754
9756
|
if (!dockviewRef.current) {
|
|
9755
9757
|
return;
|
|
9756
9758
|
}
|
|
@@ -9758,7 +9760,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9758
9760
|
createRightHeaderActionsElement: createGroupControlElement(props.rightHeaderActionsComponent, { addPortal }),
|
|
9759
9761
|
});
|
|
9760
9762
|
}, [props.rightHeaderActionsComponent]);
|
|
9761
|
-
|
|
9763
|
+
React.useEffect(() => {
|
|
9762
9764
|
if (!dockviewRef.current) {
|
|
9763
9765
|
return;
|
|
9764
9766
|
}
|
|
@@ -9766,7 +9768,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9766
9768
|
createLeftHeaderActionsElement: createGroupControlElement(props.leftHeaderActionsComponent, { addPortal }),
|
|
9767
9769
|
});
|
|
9768
9770
|
}, [props.leftHeaderActionsComponent]);
|
|
9769
|
-
|
|
9771
|
+
React.useEffect(() => {
|
|
9770
9772
|
if (!dockviewRef.current) {
|
|
9771
9773
|
return;
|
|
9772
9774
|
}
|
|
@@ -9774,7 +9776,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9774
9776
|
rootOverlayModel: props.rootOverlayModel,
|
|
9775
9777
|
});
|
|
9776
9778
|
}, [props.rootOverlayModel]);
|
|
9777
|
-
|
|
9779
|
+
React.useEffect(() => {
|
|
9778
9780
|
if (!dockviewRef.current) {
|
|
9779
9781
|
return;
|
|
9780
9782
|
}
|
|
@@ -9782,7 +9784,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9782
9784
|
createPrefixHeaderActionsElement: createGroupControlElement(props.prefixHeaderActionsComponent, { addPortal }),
|
|
9783
9785
|
});
|
|
9784
9786
|
}, [props.prefixHeaderActionsComponent]);
|
|
9785
|
-
return (
|
|
9787
|
+
return (React.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
|
|
9786
9788
|
});
|
|
9787
9789
|
DockviewReact.displayName = 'DockviewComponent';
|
|
9788
9790
|
|
|
@@ -9820,12 +9822,12 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9820
9822
|
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
9821
9823
|
};
|
|
9822
9824
|
|
|
9823
|
-
const CloseButton = () => (
|
|
9824
|
-
|
|
9825
|
+
const CloseButton = () => (React.createElement("svg", { height: "11", width: "11", viewBox: "0 0 28 28", "aria-hidden": 'false', focusable: false, className: "dockview-svg" },
|
|
9826
|
+
React.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" })));
|
|
9825
9827
|
|
|
9826
9828
|
const DockviewDefaultTab = (_a) => {
|
|
9827
9829
|
var { api, containerApi: _containerApi, params: _params, hideClose, closeActionOverride } = _a, rest = __rest(_a, ["api", "containerApi", "params", "hideClose", "closeActionOverride"]);
|
|
9828
|
-
const onClose =
|
|
9830
|
+
const onClose = React.useCallback((event) => {
|
|
9829
9831
|
event.preventDefault();
|
|
9830
9832
|
if (closeActionOverride) {
|
|
9831
9833
|
closeActionOverride();
|
|
@@ -9834,10 +9836,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9834
9836
|
api.close();
|
|
9835
9837
|
}
|
|
9836
9838
|
}, [api, closeActionOverride]);
|
|
9837
|
-
const onMouseDown =
|
|
9839
|
+
const onMouseDown = React.useCallback((e) => {
|
|
9838
9840
|
e.preventDefault();
|
|
9839
9841
|
}, []);
|
|
9840
|
-
const onClick =
|
|
9842
|
+
const onClick = React.useCallback((event) => {
|
|
9841
9843
|
if (event.defaultPrevented) {
|
|
9842
9844
|
return;
|
|
9843
9845
|
}
|
|
@@ -9846,10 +9848,10 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9846
9848
|
rest.onClick(event);
|
|
9847
9849
|
}
|
|
9848
9850
|
}, [api, rest.onClick]);
|
|
9849
|
-
return (
|
|
9850
|
-
|
|
9851
|
-
!hideClose && (
|
|
9852
|
-
|
|
9851
|
+
return (React.createElement("div", Object.assign({ "data-testid": "dockview-dv-default-tab" }, rest, { onClick: onClick, className: "dv-default-tab" }),
|
|
9852
|
+
React.createElement("span", { className: "dv-default-tab-content" }, api.title),
|
|
9853
|
+
!hideClose && (React.createElement("div", { className: "dv-default-tab-action", onMouseDown: onMouseDown, onClick: onClose },
|
|
9854
|
+
React.createElement(CloseButton, null)))));
|
|
9853
9855
|
};
|
|
9854
9856
|
|
|
9855
9857
|
class ReactPanelView extends SplitviewPanel {
|
|
@@ -9868,12 +9870,12 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9868
9870
|
}
|
|
9869
9871
|
}
|
|
9870
9872
|
|
|
9871
|
-
const SplitviewReact =
|
|
9872
|
-
const domRef =
|
|
9873
|
-
const splitviewRef =
|
|
9873
|
+
const SplitviewReact = React.forwardRef((props, ref) => {
|
|
9874
|
+
const domRef = React.useRef(null);
|
|
9875
|
+
const splitviewRef = React.useRef();
|
|
9874
9876
|
const [portals, addPortal] = usePortalsLifecycle();
|
|
9875
|
-
|
|
9876
|
-
|
|
9877
|
+
React.useImperativeHandle(ref, () => domRef.current, []);
|
|
9878
|
+
React.useEffect(() => {
|
|
9877
9879
|
var _a;
|
|
9878
9880
|
const splitview = new SplitviewComponent({
|
|
9879
9881
|
parentElement: domRef.current,
|
|
@@ -9904,7 +9906,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9904
9906
|
splitview.dispose();
|
|
9905
9907
|
};
|
|
9906
9908
|
}, []);
|
|
9907
|
-
|
|
9909
|
+
React.useEffect(() => {
|
|
9908
9910
|
if (!splitviewRef.current) {
|
|
9909
9911
|
return;
|
|
9910
9912
|
}
|
|
@@ -9912,7 +9914,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9912
9914
|
frameworkComponents: props.components,
|
|
9913
9915
|
});
|
|
9914
9916
|
}, [props.components]);
|
|
9915
|
-
return (
|
|
9917
|
+
return (React.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
|
|
9916
9918
|
});
|
|
9917
9919
|
SplitviewReact.displayName = 'SplitviewComponent';
|
|
9918
9920
|
|
|
@@ -9934,12 +9936,12 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9934
9936
|
}
|
|
9935
9937
|
}
|
|
9936
9938
|
|
|
9937
|
-
const GridviewReact =
|
|
9938
|
-
const domRef =
|
|
9939
|
-
const gridviewRef =
|
|
9939
|
+
const GridviewReact = React.forwardRef((props, ref) => {
|
|
9940
|
+
const domRef = React.useRef(null);
|
|
9941
|
+
const gridviewRef = React.useRef();
|
|
9940
9942
|
const [portals, addPortal] = usePortalsLifecycle();
|
|
9941
|
-
|
|
9942
|
-
|
|
9943
|
+
React.useImperativeHandle(ref, () => domRef.current, []);
|
|
9944
|
+
React.useEffect(() => {
|
|
9943
9945
|
var _a;
|
|
9944
9946
|
if (!domRef.current) {
|
|
9945
9947
|
return () => {
|
|
@@ -9975,7 +9977,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9975
9977
|
gridview.dispose();
|
|
9976
9978
|
};
|
|
9977
9979
|
}, []);
|
|
9978
|
-
|
|
9980
|
+
React.useEffect(() => {
|
|
9979
9981
|
if (!gridviewRef.current) {
|
|
9980
9982
|
return;
|
|
9981
9983
|
}
|
|
@@ -9983,7 +9985,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
9983
9985
|
frameworkComponents: props.components,
|
|
9984
9986
|
});
|
|
9985
9987
|
}, [props.components]);
|
|
9986
|
-
return (
|
|
9988
|
+
return (React.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
|
|
9987
9989
|
});
|
|
9988
9990
|
GridviewReact.displayName = 'GridviewComponent';
|
|
9989
9991
|
|
|
@@ -10022,12 +10024,12 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
10022
10024
|
}
|
|
10023
10025
|
}
|
|
10024
10026
|
|
|
10025
|
-
const PaneviewReact =
|
|
10026
|
-
const domRef =
|
|
10027
|
-
const paneviewRef =
|
|
10027
|
+
const PaneviewReact = React.forwardRef((props, ref) => {
|
|
10028
|
+
const domRef = React.useRef(null);
|
|
10029
|
+
const paneviewRef = React.useRef();
|
|
10028
10030
|
const [portals, addPortal] = usePortalsLifecycle();
|
|
10029
|
-
|
|
10030
|
-
|
|
10031
|
+
React.useImperativeHandle(ref, () => domRef.current, []);
|
|
10032
|
+
React.useEffect(() => {
|
|
10031
10033
|
const createComponent = (id, _componentId, component) => new PanePanelSection(id, component, {
|
|
10032
10034
|
addPortal,
|
|
10033
10035
|
});
|
|
@@ -10060,7 +10062,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
10060
10062
|
paneview.dispose();
|
|
10061
10063
|
};
|
|
10062
10064
|
}, []);
|
|
10063
|
-
|
|
10065
|
+
React.useEffect(() => {
|
|
10064
10066
|
if (!paneviewRef.current) {
|
|
10065
10067
|
return;
|
|
10066
10068
|
}
|
|
@@ -10068,7 +10070,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
10068
10070
|
frameworkComponents: props.components,
|
|
10069
10071
|
});
|
|
10070
10072
|
}, [props.components]);
|
|
10071
|
-
|
|
10073
|
+
React.useEffect(() => {
|
|
10072
10074
|
if (!paneviewRef.current) {
|
|
10073
10075
|
return;
|
|
10074
10076
|
}
|
|
@@ -10076,7 +10078,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
10076
10078
|
headerframeworkComponents: props.headerComponents,
|
|
10077
10079
|
});
|
|
10078
10080
|
}, [props.headerComponents]);
|
|
10079
|
-
|
|
10081
|
+
React.useEffect(() => {
|
|
10080
10082
|
if (!paneviewRef.current) {
|
|
10081
10083
|
return () => {
|
|
10082
10084
|
//
|
|
@@ -10092,7 +10094,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
10092
10094
|
disposable.dispose();
|
|
10093
10095
|
};
|
|
10094
10096
|
}, [props.onDidDrop]);
|
|
10095
|
-
|
|
10097
|
+
React.useEffect(() => {
|
|
10096
10098
|
if (!paneviewRef.current) {
|
|
10097
10099
|
return;
|
|
10098
10100
|
}
|
|
@@ -10100,7 +10102,7 @@ define(['exports', 'react', 'react-dom'], (function (exports, React, ReactDOM) {
|
|
|
10100
10102
|
showDndOverlay: props.showDndOverlay,
|
|
10101
10103
|
});
|
|
10102
10104
|
}, [props.showDndOverlay]);
|
|
10103
|
-
return (
|
|
10105
|
+
return (React.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
|
|
10104
10106
|
});
|
|
10105
10107
|
PaneviewReact.displayName = 'PaneviewComponent';
|
|
10106
10108
|
|