dockview-core 1.8.5 → 1.9.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/README.md +18 -11
- package/dist/cjs/api/component.api.d.ts +12 -0
- package/dist/cjs/api/component.api.d.ts.map +1 -1
- package/dist/cjs/api/component.api.js +22 -0
- package/dist/cjs/api/component.api.js.map +1 -1
- package/dist/cjs/api/dockviewGroupPanelApi.d.ts +15 -8
- package/dist/cjs/api/dockviewGroupPanelApi.d.ts.map +1 -1
- package/dist/cjs/api/dockviewGroupPanelApi.js +39 -9
- package/dist/cjs/api/dockviewGroupPanelApi.js.map +1 -1
- package/dist/cjs/api/dockviewPanelApi.d.ts +19 -2
- package/dist/cjs/api/dockviewPanelApi.d.ts.map +1 -1
- package/dist/cjs/api/dockviewPanelApi.js +23 -3
- package/dist/cjs/api/dockviewPanelApi.js.map +1 -1
- package/dist/cjs/api/gridviewPanelApi.js.map +1 -1
- package/dist/cjs/api/panelApi.js.map +1 -1
- package/dist/cjs/api/paneviewPanelApi.js.map +1 -1
- package/dist/cjs/api/splitviewPanelApi.js.map +1 -1
- package/dist/cjs/array.js.map +1 -1
- package/dist/cjs/constants.d.ts +6 -0
- package/dist/cjs/constants.d.ts.map +1 -0
- package/dist/cjs/constants.js +6 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/dnd/abstractDragHandler.js.map +1 -1
- package/dist/cjs/dnd/dataTransfer.js.map +1 -1
- package/dist/cjs/dnd/dnd.d.ts +5 -0
- package/dist/cjs/dnd/dnd.d.ts.map +1 -1
- package/dist/cjs/dnd/dnd.js +28 -13
- package/dist/cjs/dnd/dnd.js.map +1 -1
- package/dist/cjs/dnd/droptarget.d.ts +2 -0
- package/dist/cjs/dnd/droptarget.d.ts.map +1 -1
- package/dist/cjs/dnd/droptarget.js +3 -2
- package/dist/cjs/dnd/droptarget.js.map +1 -1
- package/dist/cjs/dnd/groupDragHandler.js +1 -1
- package/dist/cjs/dnd/groupDragHandler.js.map +1 -1
- package/dist/cjs/dnd/overlay.d.ts +4 -17
- package/dist/cjs/dnd/overlay.d.ts.map +1 -1
- package/dist/cjs/dnd/overlay.js.map +1 -1
- package/dist/cjs/dockview/components/panel/content.d.ts +14 -1
- package/dist/cjs/dockview/components/panel/content.d.ts.map +1 -1
- package/dist/cjs/dockview/components/panel/content.js +85 -26
- package/dist/cjs/dockview/components/panel/content.js.map +1 -1
- package/dist/cjs/dockview/components/tab/defaultTab.js.map +1 -1
- package/dist/cjs/dockview/components/tab/tab.js.map +1 -1
- package/dist/cjs/dockview/components/titlebar/tabsContainer.js +2 -2
- package/dist/cjs/dockview/components/titlebar/tabsContainer.js.map +1 -1
- package/dist/cjs/dockview/components/titlebar/voidContainer.js.map +1 -1
- package/dist/cjs/dockview/components/watermark/watermark.js.map +1 -1
- package/dist/cjs/dockview/deserializer.d.ts +2 -2
- package/dist/cjs/dockview/deserializer.d.ts.map +1 -1
- package/dist/cjs/dockview/deserializer.js +6 -4
- package/dist/cjs/dockview/deserializer.js.map +1 -1
- package/dist/cjs/dockview/dockviewComponent.d.ts +21 -9
- package/dist/cjs/dockview/dockviewComponent.d.ts.map +1 -1
- package/dist/cjs/dockview/dockviewComponent.js +287 -103
- package/dist/cjs/dockview/dockviewComponent.js.map +1 -1
- package/dist/cjs/dockview/dockviewFloatingGroupPanel.js.map +1 -1
- package/dist/cjs/dockview/dockviewGroupPanel.d.ts.map +1 -1
- package/dist/cjs/dockview/dockviewGroupPanel.js +4 -2
- package/dist/cjs/dockview/dockviewGroupPanel.js.map +1 -1
- package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +5 -4
- package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts.map +1 -1
- package/dist/cjs/dockview/dockviewGroupPanelModel.js +37 -43
- package/dist/cjs/dockview/dockviewGroupPanelModel.js.map +1 -1
- package/dist/cjs/dockview/dockviewPanel.d.ts +8 -1
- package/dist/cjs/dockview/dockviewPanel.d.ts.map +1 -1
- package/dist/cjs/dockview/dockviewPanel.js +23 -1
- package/dist/cjs/dockview/dockviewPanel.js.map +1 -1
- package/dist/cjs/dockview/dockviewPanelModel.js.map +1 -1
- package/dist/cjs/dockview/dockviewPopoutGroupPanel.d.ts +16 -0
- package/dist/cjs/dockview/dockviewPopoutGroupPanel.d.ts.map +1 -0
- package/dist/cjs/dockview/dockviewPopoutGroupPanel.js +50 -0
- package/dist/cjs/dockview/dockviewPopoutGroupPanel.js.map +1 -0
- package/dist/cjs/dockview/options.d.ts +5 -0
- package/dist/cjs/dockview/options.d.ts.map +1 -1
- package/dist/cjs/dockview/options.js.map +1 -1
- package/dist/cjs/dockview/types.d.ts +2 -0
- package/dist/cjs/dockview/types.d.ts.map +1 -1
- package/dist/cjs/dockview/types.js.map +1 -1
- package/dist/cjs/dom.d.ts +12 -0
- package/dist/cjs/dom.d.ts.map +1 -1
- package/dist/cjs/dom.js +80 -1
- package/dist/cjs/dom.js.map +1 -1
- package/dist/cjs/events.js.map +1 -1
- package/dist/cjs/gridview/baseComponentGridview.d.ts +10 -0
- package/dist/cjs/gridview/baseComponentGridview.d.ts.map +1 -1
- package/dist/cjs/gridview/baseComponentGridview.js +19 -0
- package/dist/cjs/gridview/baseComponentGridview.js.map +1 -1
- package/dist/cjs/gridview/basePanelView.js.map +1 -1
- package/dist/cjs/gridview/branchNode.d.ts +2 -0
- package/dist/cjs/gridview/branchNode.d.ts.map +1 -1
- package/dist/cjs/gridview/branchNode.js +37 -10
- package/dist/cjs/gridview/branchNode.js.map +1 -1
- package/dist/cjs/gridview/gridview.d.ts +10 -3
- package/dist/cjs/gridview/gridview.d.ts.map +1 -1
- package/dist/cjs/gridview/gridview.js +80 -0
- package/dist/cjs/gridview/gridview.js.map +1 -1
- package/dist/cjs/gridview/gridviewComponent.js.map +1 -1
- package/dist/cjs/gridview/gridviewPanel.js.map +1 -1
- package/dist/cjs/gridview/leafNode.d.ts.map +1 -1
- package/dist/cjs/gridview/leafNode.js +1 -2
- package/dist/cjs/gridview/leafNode.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lifecycle.d.ts +1 -0
- package/dist/cjs/lifecycle.d.ts.map +1 -1
- package/dist/cjs/lifecycle.js +8 -0
- package/dist/cjs/lifecycle.js.map +1 -1
- package/dist/cjs/math.js.map +1 -1
- package/dist/cjs/overlayRenderContainer.d.ts +19 -0
- package/dist/cjs/overlayRenderContainer.d.ts.map +1 -0
- package/dist/cjs/overlayRenderContainer.js +170 -0
- package/dist/cjs/overlayRenderContainer.js.map +1 -0
- package/dist/cjs/panel/componentFactory.js.map +1 -1
- package/dist/cjs/paneview/defaultPaneviewHeader.js.map +1 -1
- package/dist/cjs/paneview/draggablePaneviewPanel.js.map +1 -1
- package/dist/cjs/paneview/paneview.js.map +1 -1
- package/dist/cjs/paneview/paneviewComponent.js.map +1 -1
- package/dist/cjs/paneview/paneviewPanel.js.map +1 -1
- package/dist/cjs/popoutWindow.d.ts +18 -0
- package/dist/cjs/popoutWindow.d.ts.map +1 -0
- package/dist/cjs/popoutWindow.js +130 -0
- package/dist/cjs/popoutWindow.js.map +1 -0
- package/dist/cjs/resizable.js +1 -1
- package/dist/cjs/resizable.js.map +1 -1
- package/dist/cjs/splitview/splitview.d.ts +5 -4
- package/dist/cjs/splitview/splitview.d.ts.map +1 -1
- package/dist/cjs/splitview/splitview.js +31 -8
- package/dist/cjs/splitview/splitview.js.map +1 -1
- package/dist/cjs/splitview/splitviewComponent.js.map +1 -1
- package/dist/cjs/splitview/splitviewPanel.js.map +1 -1
- package/dist/cjs/splitview/viewItem.js.map +1 -1
- package/dist/cjs/types.d.ts +6 -0
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/dockview-core.amd.js +896 -170
- package/dist/dockview-core.amd.js.map +1 -1
- package/dist/dockview-core.amd.min.js +2 -2
- package/dist/dockview-core.amd.min.js.map +1 -1
- package/dist/dockview-core.amd.min.noStyle.js +2 -2
- package/dist/dockview-core.amd.min.noStyle.js.map +1 -1
- package/dist/dockview-core.amd.noStyle.js +895 -169
- package/dist/dockview-core.amd.noStyle.js.map +1 -1
- package/dist/dockview-core.cjs.js +896 -170
- package/dist/dockview-core.cjs.js.map +1 -1
- package/dist/dockview-core.esm.js +896 -170
- package/dist/dockview-core.esm.js.map +1 -1
- package/dist/dockview-core.esm.min.js +2 -2
- package/dist/dockview-core.esm.min.js.map +1 -1
- package/dist/dockview-core.js +896 -170
- package/dist/dockview-core.js.map +1 -1
- package/dist/dockview-core.min.js +2 -2
- package/dist/dockview-core.min.js.map +1 -1
- package/dist/dockview-core.min.noStyle.js +2 -2
- package/dist/dockview-core.min.noStyle.js.map +1 -1
- package/dist/dockview-core.noStyle.js +895 -169
- package/dist/dockview-core.noStyle.js.map +1 -1
- package/dist/esm/api/component.api.d.ts +12 -0
- package/dist/esm/api/component.api.d.ts.map +1 -1
- package/dist/esm/api/component.api.js +18 -0
- package/dist/esm/api/component.api.js.map +1 -1
- package/dist/esm/api/dockviewGroupPanelApi.d.ts +15 -8
- package/dist/esm/api/dockviewGroupPanelApi.d.ts.map +1 -1
- package/dist/esm/api/dockviewGroupPanelApi.js +39 -9
- package/dist/esm/api/dockviewGroupPanelApi.js.map +1 -1
- package/dist/esm/api/dockviewPanelApi.d.ts +19 -2
- package/dist/esm/api/dockviewPanelApi.d.ts.map +1 -1
- package/dist/esm/api/dockviewPanelApi.js +19 -3
- package/dist/esm/api/dockviewPanelApi.js.map +1 -1
- package/dist/esm/api/gridviewPanelApi.js.map +1 -1
- package/dist/esm/array.js.map +1 -1
- package/dist/esm/constants.d.ts +6 -0
- package/dist/esm/constants.d.ts.map +1 -0
- package/dist/esm/constants.js +3 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/dnd/abstractDragHandler.js.map +1 -1
- package/dist/esm/dnd/dataTransfer.js.map +1 -1
- package/dist/esm/dnd/dnd.d.ts +5 -0
- package/dist/esm/dnd/dnd.d.ts.map +1 -1
- package/dist/esm/dnd/dnd.js +28 -13
- package/dist/esm/dnd/dnd.js.map +1 -1
- package/dist/esm/dnd/droptarget.d.ts +2 -0
- package/dist/esm/dnd/droptarget.d.ts.map +1 -1
- package/dist/esm/dnd/droptarget.js +3 -2
- package/dist/esm/dnd/droptarget.js.map +1 -1
- package/dist/esm/dnd/groupDragHandler.js +1 -1
- package/dist/esm/dnd/groupDragHandler.js.map +1 -1
- package/dist/esm/dnd/overlay.d.ts +4 -17
- package/dist/esm/dnd/overlay.d.ts.map +1 -1
- package/dist/esm/dnd/overlay.js.map +1 -1
- package/dist/esm/dockview/components/panel/content.d.ts +14 -1
- package/dist/esm/dockview/components/panel/content.d.ts.map +1 -1
- package/dist/esm/dockview/components/panel/content.js +84 -26
- package/dist/esm/dockview/components/panel/content.js.map +1 -1
- package/dist/esm/dockview/components/tab/defaultTab.js.map +1 -1
- package/dist/esm/dockview/components/tab/tab.js.map +1 -1
- package/dist/esm/dockview/components/titlebar/tabsContainer.js +2 -2
- package/dist/esm/dockview/components/titlebar/tabsContainer.js.map +1 -1
- package/dist/esm/dockview/components/titlebar/voidContainer.js.map +1 -1
- package/dist/esm/dockview/components/watermark/watermark.js.map +1 -1
- package/dist/esm/dockview/deserializer.d.ts +2 -2
- package/dist/esm/dockview/deserializer.d.ts.map +1 -1
- package/dist/esm/dockview/deserializer.js +6 -4
- package/dist/esm/dockview/deserializer.js.map +1 -1
- package/dist/esm/dockview/dockviewComponent.d.ts +21 -9
- package/dist/esm/dockview/dockviewComponent.d.ts.map +1 -1
- package/dist/esm/dockview/dockviewComponent.js +188 -42
- package/dist/esm/dockview/dockviewComponent.js.map +1 -1
- package/dist/esm/dockview/dockviewGroupPanel.d.ts.map +1 -1
- package/dist/esm/dockview/dockviewGroupPanel.js +4 -2
- package/dist/esm/dockview/dockviewGroupPanel.js.map +1 -1
- package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +5 -4
- package/dist/esm/dockview/dockviewGroupPanelModel.d.ts.map +1 -1
- package/dist/esm/dockview/dockviewGroupPanelModel.js +39 -45
- package/dist/esm/dockview/dockviewGroupPanelModel.js.map +1 -1
- package/dist/esm/dockview/dockviewPanel.d.ts +8 -1
- package/dist/esm/dockview/dockviewPanel.d.ts.map +1 -1
- package/dist/esm/dockview/dockviewPanel.js +19 -1
- package/dist/esm/dockview/dockviewPanel.js.map +1 -1
- package/dist/esm/dockview/dockviewPanelModel.js.map +1 -1
- package/dist/esm/dockview/dockviewPopoutGroupPanel.d.ts +16 -0
- package/dist/esm/dockview/dockviewPopoutGroupPanel.d.ts.map +1 -0
- package/dist/esm/dockview/dockviewPopoutGroupPanel.js +28 -0
- package/dist/esm/dockview/dockviewPopoutGroupPanel.js.map +1 -0
- package/dist/esm/dockview/options.d.ts +5 -0
- package/dist/esm/dockview/options.d.ts.map +1 -1
- package/dist/esm/dockview/options.js.map +1 -1
- package/dist/esm/dockview/types.d.ts +2 -0
- package/dist/esm/dockview/types.d.ts.map +1 -1
- package/dist/esm/dockview/types.js.map +1 -1
- package/dist/esm/dom.d.ts +12 -0
- package/dist/esm/dom.d.ts.map +1 -1
- package/dist/esm/dom.js +55 -0
- package/dist/esm/dom.js.map +1 -1
- package/dist/esm/events.js.map +1 -1
- package/dist/esm/gridview/baseComponentGridview.d.ts +10 -0
- package/dist/esm/gridview/baseComponentGridview.d.ts.map +1 -1
- package/dist/esm/gridview/baseComponentGridview.js +15 -0
- package/dist/esm/gridview/baseComponentGridview.js.map +1 -1
- package/dist/esm/gridview/basePanelView.js.map +1 -1
- package/dist/esm/gridview/branchNode.d.ts +2 -0
- package/dist/esm/gridview/branchNode.d.ts.map +1 -1
- package/dist/esm/gridview/branchNode.js +26 -5
- package/dist/esm/gridview/branchNode.js.map +1 -1
- package/dist/esm/gridview/gridview.d.ts +10 -3
- package/dist/esm/gridview/gridview.d.ts.map +1 -1
- package/dist/esm/gridview/gridview.js +80 -0
- package/dist/esm/gridview/gridview.js.map +1 -1
- package/dist/esm/gridview/gridviewComponent.js.map +1 -1
- package/dist/esm/gridview/gridviewPanel.js.map +1 -1
- package/dist/esm/gridview/leafNode.d.ts.map +1 -1
- package/dist/esm/gridview/leafNode.js +0 -1
- package/dist/esm/gridview/leafNode.js.map +1 -1
- package/dist/esm/index.d.ts +2 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lifecycle.d.ts +1 -0
- package/dist/esm/lifecycle.d.ts.map +1 -1
- package/dist/esm/lifecycle.js +8 -0
- package/dist/esm/lifecycle.js.map +1 -1
- package/dist/esm/math.js.map +1 -1
- package/dist/esm/overlayRenderContainer.d.ts +19 -0
- package/dist/esm/overlayRenderContainer.d.ts.map +1 -0
- package/dist/esm/overlayRenderContainer.js +125 -0
- package/dist/esm/overlayRenderContainer.js.map +1 -0
- package/dist/esm/panel/componentFactory.js.map +1 -1
- package/dist/esm/paneview/defaultPaneviewHeader.js.map +1 -1
- package/dist/esm/paneview/draggablePaneviewPanel.js.map +1 -1
- package/dist/esm/paneview/paneview.js.map +1 -1
- package/dist/esm/paneview/paneviewComponent.js.map +1 -1
- package/dist/esm/paneview/paneviewPanel.js.map +1 -1
- package/dist/esm/popoutWindow.d.ts +18 -0
- package/dist/esm/popoutWindow.d.ts.map +1 -0
- package/dist/esm/popoutWindow.js +88 -0
- package/dist/esm/popoutWindow.js.map +1 -0
- package/dist/esm/resizable.js +2 -2
- package/dist/esm/resizable.js.map +1 -1
- package/dist/esm/splitview/splitview.d.ts +5 -4
- package/dist/esm/splitview/splitview.d.ts.map +1 -1
- package/dist/esm/splitview/splitview.js +25 -8
- package/dist/esm/splitview/splitview.js.map +1 -1
- package/dist/esm/splitview/splitviewComponent.js.map +1 -1
- package/dist/esm/splitview/splitviewPanel.js.map +1 -1
- package/dist/esm/splitview/viewItem.js.map +1 -1
- package/dist/esm/types.d.ts +6 -0
- package/dist/esm/types.d.ts.map +1 -1
- package/dist/styles/dockview.css +33 -2
- package/package.json +1 -1
|
@@ -25,17 +25,6 @@ var __assign = (this && this.__assign) || function () {
|
|
|
25
25
|
};
|
|
26
26
|
return __assign.apply(this, arguments);
|
|
27
27
|
};
|
|
28
|
-
var __values = (this && this.__values) || function(o) {
|
|
29
|
-
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
30
|
-
if (m) return m.call(o);
|
|
31
|
-
if (o && typeof o.length === "number") return {
|
|
32
|
-
next: function () {
|
|
33
|
-
if (o && i >= o.length) o = void 0;
|
|
34
|
-
return { value: o && o[i++], done: !o };
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
38
|
-
};
|
|
39
28
|
var __read = (this && this.__read) || function (o, n) {
|
|
40
29
|
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
41
30
|
if (!m) return o;
|
|
@@ -61,6 +50,17 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
61
50
|
}
|
|
62
51
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
63
52
|
};
|
|
53
|
+
var __values = (this && this.__values) || function(o) {
|
|
54
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
55
|
+
if (m) return m.call(o);
|
|
56
|
+
if (o && typeof o.length === "number") return {
|
|
57
|
+
next: function () {
|
|
58
|
+
if (o && i >= o.length) o = void 0;
|
|
59
|
+
return { value: o && o[i++], done: !o };
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
63
|
+
};
|
|
64
64
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
65
65
|
exports.DockviewComponent = void 0;
|
|
66
66
|
var gridview_1 = require("../gridview/gridview");
|
|
@@ -84,7 +84,30 @@ var dataTransfer_1 = require("../dnd/dataTransfer");
|
|
|
84
84
|
var overlay_1 = require("../dnd/overlay");
|
|
85
85
|
var dom_1 = require("../dom");
|
|
86
86
|
var dockviewFloatingGroupPanel_1 = require("./dockviewFloatingGroupPanel");
|
|
87
|
-
var
|
|
87
|
+
var dockviewPopoutGroupPanel_1 = require("./dockviewPopoutGroupPanel");
|
|
88
|
+
var constants_1 = require("../constants");
|
|
89
|
+
var overlayRenderContainer_1 = require("../overlayRenderContainer");
|
|
90
|
+
function getTheme(element) {
|
|
91
|
+
function toClassList(element) {
|
|
92
|
+
var list = [];
|
|
93
|
+
for (var i = 0; i < element.classList.length; i++) {
|
|
94
|
+
list.push(element.classList.item(i));
|
|
95
|
+
}
|
|
96
|
+
return list;
|
|
97
|
+
}
|
|
98
|
+
var theme = undefined;
|
|
99
|
+
var parent = element;
|
|
100
|
+
while (parent !== null) {
|
|
101
|
+
theme = toClassList(parent).find(function (cls) {
|
|
102
|
+
return cls.startsWith('dockview-theme-');
|
|
103
|
+
});
|
|
104
|
+
if (typeof theme === 'string') {
|
|
105
|
+
break;
|
|
106
|
+
}
|
|
107
|
+
parent = parent.parentElement;
|
|
108
|
+
}
|
|
109
|
+
return theme;
|
|
110
|
+
}
|
|
88
111
|
function typeValidate3(data, path) {
|
|
89
112
|
if (typeof data.id !== 'string') {
|
|
90
113
|
throw new Error("".concat(path, ".id must be a string"));
|
|
@@ -173,12 +196,48 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
173
196
|
_this.onDidLayoutFromJSON = _this._onDidLayoutFromJSON.event;
|
|
174
197
|
_this._onDidActivePanelChange = new events_1.Emitter();
|
|
175
198
|
_this.onDidActivePanelChange = _this._onDidActivePanelChange.event;
|
|
176
|
-
_this.
|
|
199
|
+
_this._floatingGroups = [];
|
|
200
|
+
_this._popoutGroups = [];
|
|
201
|
+
var gready = document.createElement('div');
|
|
202
|
+
gready.className = 'dv-overlay-render-container';
|
|
203
|
+
_this.gridview.element.appendChild(gready);
|
|
204
|
+
_this.overlayRenderContainer = new overlayRenderContainer_1.OverlayRenderContainer(gready);
|
|
177
205
|
(0, dom_1.toggleClass)(_this.gridview.element, 'dv-dockview', true);
|
|
178
|
-
|
|
206
|
+
(0, dom_1.toggleClass)(_this.element, 'dv-debug', !!options.debug);
|
|
207
|
+
_this.addDisposables(_this.overlayRenderContainer, _this._onWillDragPanel, _this._onWillDragGroup, _this._onDidActivePanelChange, _this._onDidAddPanel, _this._onDidRemovePanel, _this._onDidLayoutFromJSON, _this._onDidDrop, events_1.Event.any(_this.onDidAddGroup, _this.onDidRemoveGroup)(function () {
|
|
179
208
|
_this.updateWatermark();
|
|
180
209
|
}), events_1.Event.any(_this.onDidAddPanel, _this.onDidRemovePanel, _this.onDidActivePanelChange)(function () {
|
|
181
210
|
_this._bufferOnDidLayoutChange.fire();
|
|
211
|
+
}), lifecycle_1.Disposable.from(function () {
|
|
212
|
+
var e_1, _a, e_2, _b;
|
|
213
|
+
try {
|
|
214
|
+
// iterate over a copy of the array since .dispose() mutates the original array
|
|
215
|
+
for (var _c = __values(__spreadArray([], __read(_this._floatingGroups), false)), _d = _c.next(); !_d.done; _d = _c.next()) {
|
|
216
|
+
var group = _d.value;
|
|
217
|
+
group.dispose();
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
221
|
+
finally {
|
|
222
|
+
try {
|
|
223
|
+
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
|
|
224
|
+
}
|
|
225
|
+
finally { if (e_1) throw e_1.error; }
|
|
226
|
+
}
|
|
227
|
+
try {
|
|
228
|
+
// iterate over a copy of the array since .dispose() mutates the original array
|
|
229
|
+
for (var _e = __values(__spreadArray([], __read(_this._popoutGroups), false)), _f = _e.next(); !_f.done; _f = _e.next()) {
|
|
230
|
+
var group = _f.value;
|
|
231
|
+
group.dispose();
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
235
|
+
finally {
|
|
236
|
+
try {
|
|
237
|
+
if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
|
|
238
|
+
}
|
|
239
|
+
finally { if (e_2) throw e_2.error; }
|
|
240
|
+
}
|
|
182
241
|
}));
|
|
183
242
|
_this._options = options;
|
|
184
243
|
if (!_this.options.components) {
|
|
@@ -288,6 +347,64 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
288
347
|
enumerable: false,
|
|
289
348
|
configurable: true
|
|
290
349
|
});
|
|
350
|
+
Object.defineProperty(DockviewComponent.prototype, "renderer", {
|
|
351
|
+
get: function () {
|
|
352
|
+
var _a;
|
|
353
|
+
return (_a = this.options.defaultRenderer) !== null && _a !== void 0 ? _a : 'onlyWhenVisibile';
|
|
354
|
+
},
|
|
355
|
+
enumerable: false,
|
|
356
|
+
configurable: true
|
|
357
|
+
});
|
|
358
|
+
DockviewComponent.prototype.addPopoutGroup = function (item, options) {
|
|
359
|
+
var _this = this;
|
|
360
|
+
var _a;
|
|
361
|
+
var group;
|
|
362
|
+
var box = options === null || options === void 0 ? void 0 : options.position;
|
|
363
|
+
if (item instanceof dockviewPanel_1.DockviewPanel) {
|
|
364
|
+
group = this.createGroup();
|
|
365
|
+
this.removePanel(item, {
|
|
366
|
+
removeEmptyGroup: true,
|
|
367
|
+
skipDispose: true,
|
|
368
|
+
});
|
|
369
|
+
group.model.openPanel(item);
|
|
370
|
+
if (!box) {
|
|
371
|
+
box = this.element.getBoundingClientRect();
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
else {
|
|
375
|
+
group = item;
|
|
376
|
+
if (!box) {
|
|
377
|
+
box = group.element.getBoundingClientRect();
|
|
378
|
+
}
|
|
379
|
+
var skip = typeof (options === null || options === void 0 ? void 0 : options.skipRemoveGroup) === 'boolean' &&
|
|
380
|
+
options.skipRemoveGroup;
|
|
381
|
+
if (!skip) {
|
|
382
|
+
this.doRemoveGroup(item, { skipDispose: true });
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
var theme = getTheme(this.gridview.element);
|
|
386
|
+
var popoutWindow = new dockviewPopoutGroupPanel_1.DockviewPopoutGroupPanel("".concat(this.id, "-").concat(group.id), // globally unique within dockview
|
|
387
|
+
group, {
|
|
388
|
+
className: theme !== null && theme !== void 0 ? theme : '',
|
|
389
|
+
popoutUrl: (_a = options === null || options === void 0 ? void 0 : options.popoutUrl) !== null && _a !== void 0 ? _a : '/popout.html',
|
|
390
|
+
box: {
|
|
391
|
+
left: window.screenX + box.left,
|
|
392
|
+
top: window.screenY + box.top,
|
|
393
|
+
width: box.width,
|
|
394
|
+
height: box.height,
|
|
395
|
+
},
|
|
396
|
+
});
|
|
397
|
+
popoutWindow.addDisposables({
|
|
398
|
+
dispose: function () {
|
|
399
|
+
(0, array_1.remove)(_this._popoutGroups, popoutWindow);
|
|
400
|
+
_this.updateWatermark();
|
|
401
|
+
},
|
|
402
|
+
}, popoutWindow.window.onDidClose(function () {
|
|
403
|
+
_this.doAddGroup(group, [0]);
|
|
404
|
+
}));
|
|
405
|
+
this._popoutGroups.push(popoutWindow);
|
|
406
|
+
this.updateWatermark();
|
|
407
|
+
};
|
|
291
408
|
DockviewComponent.prototype.addFloatingGroup = function (item, coord, options) {
|
|
292
409
|
var _this = this;
|
|
293
410
|
var _a, _b, _c, _d, _e, _f;
|
|
@@ -308,9 +425,13 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
308
425
|
this.doRemoveGroup(item, { skipDispose: true });
|
|
309
426
|
}
|
|
310
427
|
}
|
|
311
|
-
group.model.
|
|
312
|
-
var overlayLeft = typeof (coord === null || coord === void 0 ? void 0 : coord.x) === 'number'
|
|
313
|
-
|
|
428
|
+
group.model.location = 'floating';
|
|
429
|
+
var overlayLeft = typeof (coord === null || coord === void 0 ? void 0 : coord.x) === 'number'
|
|
430
|
+
? Math.max(coord.x, 0)
|
|
431
|
+
: constants_1.DEFAULT_FLOATING_GROUP_POSITION.left;
|
|
432
|
+
var overlayTop = typeof (coord === null || coord === void 0 ? void 0 : coord.y) === 'number'
|
|
433
|
+
? Math.max(coord.y, 0)
|
|
434
|
+
: constants_1.DEFAULT_FLOATING_GROUP_POSITION.top;
|
|
314
435
|
var overlay = new overlay_1.Overlay({
|
|
315
436
|
container: this.gridview.element,
|
|
316
437
|
content: group.element,
|
|
@@ -320,10 +441,10 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
320
441
|
top: overlayTop,
|
|
321
442
|
minimumInViewportWidth: this.options.floatingGroupBounds === 'boundedWithinViewport'
|
|
322
443
|
? undefined
|
|
323
|
-
: (_d = (_c = this.options.floatingGroupBounds) === null || _c === void 0 ? void 0 : _c.minimumWidthWithinViewport) !== null && _d !== void 0 ? _d : DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE,
|
|
444
|
+
: (_d = (_c = this.options.floatingGroupBounds) === null || _c === void 0 ? void 0 : _c.minimumWidthWithinViewport) !== null && _d !== void 0 ? _d : constants_1.DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE,
|
|
324
445
|
minimumInViewportHeight: this.options.floatingGroupBounds === 'boundedWithinViewport'
|
|
325
446
|
? undefined
|
|
326
|
-
: (_f = (_e = this.options.floatingGroupBounds) === null || _e === void 0 ? void 0 : _e.minimumHeightWithinViewport) !== null && _f !== void 0 ? _f : DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE,
|
|
447
|
+
: (_f = (_e = this.options.floatingGroupBounds) === null || _e === void 0 ? void 0 : _e.minimumHeightWithinViewport) !== null && _f !== void 0 ? _f : constants_1.DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE,
|
|
327
448
|
});
|
|
328
449
|
var el = group.element.querySelector('.void-container');
|
|
329
450
|
if (!el) {
|
|
@@ -354,12 +475,12 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
354
475
|
}), {
|
|
355
476
|
dispose: function () {
|
|
356
477
|
disposable.dispose();
|
|
357
|
-
group.model.
|
|
358
|
-
(0, array_1.remove)(_this.
|
|
478
|
+
group.model.location = 'grid';
|
|
479
|
+
(0, array_1.remove)(_this._floatingGroups, floatingGroupPanel);
|
|
359
480
|
_this.updateWatermark();
|
|
360
481
|
},
|
|
361
482
|
});
|
|
362
|
-
this.
|
|
483
|
+
this._floatingGroups.push(floatingGroupPanel);
|
|
363
484
|
this.updateWatermark();
|
|
364
485
|
};
|
|
365
486
|
DockviewComponent.prototype.orthogonalize = function (position) {
|
|
@@ -396,7 +517,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
396
517
|
}
|
|
397
518
|
};
|
|
398
519
|
DockviewComponent.prototype.updateOptions = function (options) {
|
|
399
|
-
var
|
|
520
|
+
var e_3, _a;
|
|
400
521
|
var _b, _c;
|
|
401
522
|
var hasOrientationChanged = typeof options.orientation === 'string' &&
|
|
402
523
|
this.gridview.orientation !== options.orientation;
|
|
@@ -408,7 +529,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
408
529
|
}
|
|
409
530
|
if (hasFloatingGroupOptionsChanged) {
|
|
410
531
|
try {
|
|
411
|
-
for (var _d = __values(this.
|
|
532
|
+
for (var _d = __values(this._floatingGroups), _e = _d.next(); !_e.done; _e = _d.next()) {
|
|
412
533
|
var group = _e.value;
|
|
413
534
|
switch (this.options.floatingGroupBounds) {
|
|
414
535
|
case 'boundedWithinViewport':
|
|
@@ -417,9 +538,9 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
417
538
|
break;
|
|
418
539
|
case undefined:
|
|
419
540
|
group.overlay.minimumInViewportHeight =
|
|
420
|
-
DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE;
|
|
541
|
+
constants_1.DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE;
|
|
421
542
|
group.overlay.minimumInViewportWidth =
|
|
422
|
-
DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE;
|
|
543
|
+
constants_1.DEFAULT_FLOATING_GROUP_OVERFLOW_SIZE;
|
|
423
544
|
break;
|
|
424
545
|
default:
|
|
425
546
|
group.overlay.minimumInViewportHeight =
|
|
@@ -430,33 +551,33 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
430
551
|
group.overlay.setBounds({});
|
|
431
552
|
}
|
|
432
553
|
}
|
|
433
|
-
catch (
|
|
554
|
+
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
434
555
|
finally {
|
|
435
556
|
try {
|
|
436
557
|
if (_e && !_e.done && (_a = _d.return)) _a.call(_d);
|
|
437
558
|
}
|
|
438
|
-
finally { if (
|
|
559
|
+
finally { if (e_3) throw e_3.error; }
|
|
439
560
|
}
|
|
440
561
|
}
|
|
441
562
|
this.layout(this.gridview.width, this.gridview.height, true);
|
|
442
563
|
};
|
|
443
564
|
DockviewComponent.prototype.layout = function (width, height, forceResize) {
|
|
444
|
-
var
|
|
565
|
+
var e_4, _a;
|
|
445
566
|
_super.prototype.layout.call(this, width, height, forceResize);
|
|
446
|
-
if (this.
|
|
567
|
+
if (this._floatingGroups) {
|
|
447
568
|
try {
|
|
448
|
-
for (var _b = __values(this.
|
|
569
|
+
for (var _b = __values(this._floatingGroups), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
449
570
|
var floating = _c.value;
|
|
450
571
|
// ensure floting groups stay within visible boundaries
|
|
451
572
|
floating.overlay.setBounds();
|
|
452
573
|
}
|
|
453
574
|
}
|
|
454
|
-
catch (
|
|
575
|
+
catch (e_4_1) { e_4 = { error: e_4_1 }; }
|
|
455
576
|
finally {
|
|
456
577
|
try {
|
|
457
578
|
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
458
579
|
}
|
|
459
|
-
finally { if (
|
|
580
|
+
finally { if (e_4) throw e_4.error; }
|
|
460
581
|
}
|
|
461
582
|
}
|
|
462
583
|
};
|
|
@@ -524,10 +645,16 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
524
645
|
collection[panel.id] = panel.toJSON();
|
|
525
646
|
return collection;
|
|
526
647
|
}, {});
|
|
527
|
-
var floats = this.
|
|
648
|
+
var floats = this._floatingGroups.map(function (group) {
|
|
528
649
|
return {
|
|
529
|
-
data:
|
|
530
|
-
position:
|
|
650
|
+
data: group.group.toJSON(),
|
|
651
|
+
position: group.overlay.toJSON(),
|
|
652
|
+
};
|
|
653
|
+
});
|
|
654
|
+
var popoutGroups = this._popoutGroups.map(function (group) {
|
|
655
|
+
return {
|
|
656
|
+
data: group.group.toJSON(),
|
|
657
|
+
position: group.window.dimensions(),
|
|
531
658
|
};
|
|
532
659
|
});
|
|
533
660
|
var result = {
|
|
@@ -538,12 +665,15 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
538
665
|
if (floats.length > 0) {
|
|
539
666
|
result.floatingGroups = floats;
|
|
540
667
|
}
|
|
668
|
+
if (popoutGroups.length > 0) {
|
|
669
|
+
result.popoutGroups = popoutGroups;
|
|
670
|
+
}
|
|
541
671
|
return result;
|
|
542
672
|
};
|
|
543
673
|
DockviewComponent.prototype.fromJSON = function (data) {
|
|
544
|
-
var
|
|
674
|
+
var e_5, _a, e_6, _b, e_7, _c, e_8, _d, e_9, _e, e_10, _f, e_11, _g;
|
|
545
675
|
var _this = this;
|
|
546
|
-
var
|
|
676
|
+
var _h, _j;
|
|
547
677
|
this.clear();
|
|
548
678
|
if (typeof data !== 'object' || data === null) {
|
|
549
679
|
throw new Error('serialized layout must be a non-null object');
|
|
@@ -557,7 +687,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
557
687
|
var width = this.width;
|
|
558
688
|
var height = this.height;
|
|
559
689
|
var createGroupFromSerializedState_1 = function (data) {
|
|
560
|
-
var
|
|
690
|
+
var e_12, _a;
|
|
561
691
|
var id = data.id, locked = data.locked, hideHeader = data.hideHeader, views = data.views, activeView = data.activeView;
|
|
562
692
|
if (typeof id !== 'string') {
|
|
563
693
|
throw new Error('group id must be of type string');
|
|
@@ -580,12 +710,12 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
580
710
|
createdPanels.push(panel);
|
|
581
711
|
}
|
|
582
712
|
}
|
|
583
|
-
catch (
|
|
713
|
+
catch (e_12_1) { e_12 = { error: e_12_1 }; }
|
|
584
714
|
finally {
|
|
585
715
|
try {
|
|
586
716
|
if (views_1_1 && !views_1_1.done && (_a = views_1.return)) _a.call(views_1);
|
|
587
717
|
}
|
|
588
|
-
finally { if (
|
|
718
|
+
finally { if (e_12) throw e_12.error; }
|
|
589
719
|
}
|
|
590
720
|
_this._onDidAddGroup.fire(group);
|
|
591
721
|
for (var i = 0; i < views.length; i++) {
|
|
@@ -610,7 +740,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
610
740
|
},
|
|
611
741
|
});
|
|
612
742
|
this.layout(width, height, true);
|
|
613
|
-
var serializedFloatingGroups = (
|
|
743
|
+
var serializedFloatingGroups = (_h = data.floatingGroups) !== null && _h !== void 0 ? _h : [];
|
|
614
744
|
try {
|
|
615
745
|
for (var serializedFloatingGroups_1 = __values(serializedFloatingGroups), serializedFloatingGroups_1_1 = serializedFloatingGroups_1.next(); !serializedFloatingGroups_1_1.done; serializedFloatingGroups_1_1 = serializedFloatingGroups_1.next()) {
|
|
616
746
|
var serializedFloatingGroup = serializedFloatingGroups_1_1.value;
|
|
@@ -624,25 +754,44 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
624
754
|
}, { skipRemoveGroup: true, inDragMode: false });
|
|
625
755
|
}
|
|
626
756
|
}
|
|
627
|
-
catch (
|
|
757
|
+
catch (e_5_1) { e_5 = { error: e_5_1 }; }
|
|
628
758
|
finally {
|
|
629
759
|
try {
|
|
630
760
|
if (serializedFloatingGroups_1_1 && !serializedFloatingGroups_1_1.done && (_a = serializedFloatingGroups_1.return)) _a.call(serializedFloatingGroups_1);
|
|
631
761
|
}
|
|
632
|
-
finally { if (
|
|
762
|
+
finally { if (e_5) throw e_5.error; }
|
|
763
|
+
}
|
|
764
|
+
var serializedPopoutGroups = (_j = data.popoutGroups) !== null && _j !== void 0 ? _j : [];
|
|
765
|
+
try {
|
|
766
|
+
for (var serializedPopoutGroups_1 = __values(serializedPopoutGroups), serializedPopoutGroups_1_1 = serializedPopoutGroups_1.next(); !serializedPopoutGroups_1_1.done; serializedPopoutGroups_1_1 = serializedPopoutGroups_1.next()) {
|
|
767
|
+
var serializedPopoutGroup = serializedPopoutGroups_1_1.value;
|
|
768
|
+
var data_2 = serializedPopoutGroup.data, position = serializedPopoutGroup.position;
|
|
769
|
+
var group = createGroupFromSerializedState_1(data_2);
|
|
770
|
+
this.addPopoutGroup(group, {
|
|
771
|
+
skipRemoveGroup: true,
|
|
772
|
+
position: position !== null && position !== void 0 ? position : undefined,
|
|
773
|
+
});
|
|
774
|
+
}
|
|
775
|
+
}
|
|
776
|
+
catch (e_6_1) { e_6 = { error: e_6_1 }; }
|
|
777
|
+
finally {
|
|
778
|
+
try {
|
|
779
|
+
if (serializedPopoutGroups_1_1 && !serializedPopoutGroups_1_1.done && (_b = serializedPopoutGroups_1.return)) _b.call(serializedPopoutGroups_1);
|
|
780
|
+
}
|
|
781
|
+
finally { if (e_6) throw e_6.error; }
|
|
633
782
|
}
|
|
634
783
|
try {
|
|
635
|
-
for (var
|
|
636
|
-
var floatingGroup =
|
|
784
|
+
for (var _k = __values(this._floatingGroups), _l = _k.next(); !_l.done; _l = _k.next()) {
|
|
785
|
+
var floatingGroup = _l.value;
|
|
637
786
|
floatingGroup.overlay.setBounds();
|
|
638
787
|
}
|
|
639
788
|
}
|
|
640
|
-
catch (
|
|
789
|
+
catch (e_7_1) { e_7 = { error: e_7_1 }; }
|
|
641
790
|
finally {
|
|
642
791
|
try {
|
|
643
|
-
if (
|
|
792
|
+
if (_l && !_l.done && (_c = _k.return)) _c.call(_k);
|
|
644
793
|
}
|
|
645
|
-
finally { if (
|
|
794
|
+
finally { if (e_7) throw e_7.error; }
|
|
646
795
|
}
|
|
647
796
|
if (typeof activeGroup === 'string') {
|
|
648
797
|
var panel = this.getPanel(activeGroup);
|
|
@@ -656,65 +805,65 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
656
805
|
/**
|
|
657
806
|
* Takes all the successfully created groups and remove all of their panels.
|
|
658
807
|
*/
|
|
659
|
-
for (var
|
|
660
|
-
var group =
|
|
808
|
+
for (var _m = __values(this.groups), _o = _m.next(); !_o.done; _o = _m.next()) {
|
|
809
|
+
var group = _o.value;
|
|
661
810
|
try {
|
|
662
|
-
for (var
|
|
663
|
-
var panel =
|
|
811
|
+
for (var _p = (e_9 = void 0, __values(group.panels)), _q = _p.next(); !_q.done; _q = _p.next()) {
|
|
812
|
+
var panel = _q.value;
|
|
664
813
|
this.removePanel(panel, {
|
|
665
814
|
removeEmptyGroup: false,
|
|
666
815
|
skipDispose: false,
|
|
667
816
|
});
|
|
668
817
|
}
|
|
669
818
|
}
|
|
670
|
-
catch (
|
|
819
|
+
catch (e_9_1) { e_9 = { error: e_9_1 }; }
|
|
671
820
|
finally {
|
|
672
821
|
try {
|
|
673
|
-
if (
|
|
822
|
+
if (_q && !_q.done && (_e = _p.return)) _e.call(_p);
|
|
674
823
|
}
|
|
675
|
-
finally { if (
|
|
824
|
+
finally { if (e_9) throw e_9.error; }
|
|
676
825
|
}
|
|
677
826
|
}
|
|
678
827
|
}
|
|
679
|
-
catch (
|
|
828
|
+
catch (e_8_1) { e_8 = { error: e_8_1 }; }
|
|
680
829
|
finally {
|
|
681
830
|
try {
|
|
682
|
-
if (
|
|
831
|
+
if (_o && !_o.done && (_d = _m.return)) _d.call(_m);
|
|
683
832
|
}
|
|
684
|
-
finally { if (
|
|
833
|
+
finally { if (e_8) throw e_8.error; }
|
|
685
834
|
}
|
|
686
835
|
try {
|
|
687
836
|
/**
|
|
688
837
|
* To remove a group we cannot call this.removeGroup(...) since this makes assumptions about
|
|
689
838
|
* the underlying HTMLElement existing in the Gridview.
|
|
690
839
|
*/
|
|
691
|
-
for (var
|
|
692
|
-
var group =
|
|
840
|
+
for (var _r = __values(this.groups), _s = _r.next(); !_s.done; _s = _r.next()) {
|
|
841
|
+
var group = _s.value;
|
|
693
842
|
group.dispose();
|
|
694
843
|
this._groups.delete(group.id);
|
|
695
844
|
this._onDidRemoveGroup.fire(group);
|
|
696
845
|
}
|
|
697
846
|
}
|
|
698
|
-
catch (
|
|
847
|
+
catch (e_10_1) { e_10 = { error: e_10_1 }; }
|
|
699
848
|
finally {
|
|
700
849
|
try {
|
|
701
|
-
if (
|
|
850
|
+
if (_s && !_s.done && (_f = _r.return)) _f.call(_r);
|
|
702
851
|
}
|
|
703
|
-
finally { if (
|
|
852
|
+
finally { if (e_10) throw e_10.error; }
|
|
704
853
|
}
|
|
705
854
|
try {
|
|
706
855
|
// iterate over a reassigned array since original array will be modified
|
|
707
|
-
for (var
|
|
708
|
-
var floatingGroup =
|
|
856
|
+
for (var _t = __values(__spreadArray([], __read(this._floatingGroups), false)), _u = _t.next(); !_u.done; _u = _t.next()) {
|
|
857
|
+
var floatingGroup = _u.value;
|
|
709
858
|
floatingGroup.dispose();
|
|
710
859
|
}
|
|
711
860
|
}
|
|
712
|
-
catch (
|
|
861
|
+
catch (e_11_1) { e_11 = { error: e_11_1 }; }
|
|
713
862
|
finally {
|
|
714
863
|
try {
|
|
715
|
-
if (
|
|
864
|
+
if (_u && !_u.done && (_g = _t.return)) _g.call(_t);
|
|
716
865
|
}
|
|
717
|
-
finally { if (
|
|
866
|
+
finally { if (e_11) throw e_11.error; }
|
|
718
867
|
}
|
|
719
868
|
// fires clean-up events and clears the underlying HTML gridview.
|
|
720
869
|
this.clear();
|
|
@@ -728,7 +877,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
728
877
|
this._onDidLayoutFromJSON.fire();
|
|
729
878
|
};
|
|
730
879
|
DockviewComponent.prototype.clear = function () {
|
|
731
|
-
var
|
|
880
|
+
var e_13, _a;
|
|
732
881
|
var groups = Array.from(this._groups.values()).map(function (_) { return _.value; });
|
|
733
882
|
var hasActiveGroup = !!this.activeGroup;
|
|
734
883
|
var hasActivePanel = !!this.activePanel;
|
|
@@ -739,12 +888,12 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
739
888
|
this.removeGroup(group, { skipActive: true });
|
|
740
889
|
}
|
|
741
890
|
}
|
|
742
|
-
catch (
|
|
891
|
+
catch (e_13_1) { e_13 = { error: e_13_1 }; }
|
|
743
892
|
finally {
|
|
744
893
|
try {
|
|
745
894
|
if (groups_1_1 && !groups_1_1.done && (_a = groups_1.return)) _a.call(groups_1);
|
|
746
895
|
}
|
|
747
|
-
finally { if (
|
|
896
|
+
finally { if (e_13) throw e_13.error; }
|
|
748
897
|
}
|
|
749
898
|
if (hasActiveGroup) {
|
|
750
899
|
this.doSetGroupAndPanelActive(undefined);
|
|
@@ -755,7 +904,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
755
904
|
this.gridview.clear();
|
|
756
905
|
};
|
|
757
906
|
DockviewComponent.prototype.closeAllGroups = function () {
|
|
758
|
-
var
|
|
907
|
+
var e_14, _a;
|
|
759
908
|
try {
|
|
760
909
|
for (var _b = __values(this._groups.entries()), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
761
910
|
var entry = _c.value;
|
|
@@ -763,12 +912,12 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
763
912
|
group.value.model.closeAllPanels();
|
|
764
913
|
}
|
|
765
914
|
}
|
|
766
|
-
catch (
|
|
915
|
+
catch (e_14_1) { e_14 = { error: e_14_1 }; }
|
|
767
916
|
finally {
|
|
768
917
|
try {
|
|
769
918
|
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
770
919
|
}
|
|
771
|
-
finally { if (
|
|
920
|
+
finally { if (e_14) throw e_14.error; }
|
|
772
921
|
}
|
|
773
922
|
};
|
|
774
923
|
DockviewComponent.prototype.addPanel = function (options) {
|
|
@@ -827,7 +976,8 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
827
976
|
group.model.openPanel(panel);
|
|
828
977
|
this.doSetGroupAndPanelActive(group);
|
|
829
978
|
}
|
|
830
|
-
else if (referenceGroup.api.
|
|
979
|
+
else if (referenceGroup.api.location === 'floating' ||
|
|
980
|
+
target === 'center') {
|
|
831
981
|
panel = this.createPanel(options, referenceGroup);
|
|
832
982
|
referenceGroup.model.openPanel(panel);
|
|
833
983
|
}
|
|
@@ -872,6 +1022,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
872
1022
|
}
|
|
873
1023
|
group.model.removePanel(panel);
|
|
874
1024
|
if (!options.skipDispose) {
|
|
1025
|
+
this.overlayRenderContainer.detatch(panel);
|
|
875
1026
|
panel.dispose();
|
|
876
1027
|
}
|
|
877
1028
|
if (group.size === 0 && options.removeEmptyGroup) {
|
|
@@ -888,7 +1039,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
888
1039
|
};
|
|
889
1040
|
DockviewComponent.prototype.updateWatermark = function () {
|
|
890
1041
|
var _a, _b;
|
|
891
|
-
if (this.groups.filter(function (x) { return
|
|
1042
|
+
if (this.groups.filter(function (x) { return x.api.location === 'grid'; }).length === 0) {
|
|
892
1043
|
if (!this.watermark) {
|
|
893
1044
|
this.watermark = this.createWatermarkComponent();
|
|
894
1045
|
this.watermark.init({
|
|
@@ -948,7 +1099,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
948
1099
|
}
|
|
949
1100
|
};
|
|
950
1101
|
DockviewComponent.prototype.removeGroup = function (group, options) {
|
|
951
|
-
var
|
|
1102
|
+
var e_15, _a;
|
|
952
1103
|
var _b;
|
|
953
1104
|
var panels = __spreadArray([], __read(group.panels), false); // reassign since group panels will mutate
|
|
954
1105
|
try {
|
|
@@ -960,12 +1111,12 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
960
1111
|
});
|
|
961
1112
|
}
|
|
962
1113
|
}
|
|
963
|
-
catch (
|
|
1114
|
+
catch (e_15_1) { e_15 = { error: e_15_1 }; }
|
|
964
1115
|
finally {
|
|
965
1116
|
try {
|
|
966
1117
|
if (panels_1_1 && !panels_1_1.done && (_a = panels_1.return)) _a.call(panels_1);
|
|
967
1118
|
}
|
|
968
|
-
finally { if (
|
|
1119
|
+
finally { if (e_15) throw e_15.error; }
|
|
969
1120
|
}
|
|
970
1121
|
var activePanel = this.activePanel;
|
|
971
1122
|
this.doRemoveGroup(group, options);
|
|
@@ -974,19 +1125,40 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
974
1125
|
}
|
|
975
1126
|
};
|
|
976
1127
|
DockviewComponent.prototype.doRemoveGroup = function (group, options) {
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
if (
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
1128
|
+
if (group.api.location === 'floating') {
|
|
1129
|
+
var floatingGroup = this._floatingGroups.find(function (_) { return _.group === group; });
|
|
1130
|
+
if (floatingGroup) {
|
|
1131
|
+
if (!(options === null || options === void 0 ? void 0 : options.skipDispose)) {
|
|
1132
|
+
floatingGroup.group.dispose();
|
|
1133
|
+
this._groups.delete(group.id);
|
|
1134
|
+
this._onDidRemoveGroup.fire(group);
|
|
1135
|
+
}
|
|
1136
|
+
(0, array_1.remove)(this._floatingGroups, floatingGroup);
|
|
1137
|
+
floatingGroup.dispose();
|
|
1138
|
+
if (!(options === null || options === void 0 ? void 0 : options.skipActive) && this._activeGroup === group) {
|
|
1139
|
+
var groups = Array.from(this._groups.values());
|
|
1140
|
+
this.doSetGroupActive(groups.length > 0 ? groups[0].value : undefined);
|
|
1141
|
+
}
|
|
1142
|
+
return floatingGroup.group;
|
|
983
1143
|
}
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
1144
|
+
throw new Error('failed to find floating group');
|
|
1145
|
+
}
|
|
1146
|
+
if (group.api.location === 'popout') {
|
|
1147
|
+
var selectedGroup = this._popoutGroups.find(function (_) { return _.group === group; });
|
|
1148
|
+
if (selectedGroup) {
|
|
1149
|
+
if (!(options === null || options === void 0 ? void 0 : options.skipDispose)) {
|
|
1150
|
+
selectedGroup.group.dispose();
|
|
1151
|
+
this._groups.delete(group.id);
|
|
1152
|
+
this._onDidRemoveGroup.fire(group);
|
|
1153
|
+
}
|
|
1154
|
+
selectedGroup.dispose();
|
|
1155
|
+
if (!(options === null || options === void 0 ? void 0 : options.skipActive) && this._activeGroup === group) {
|
|
1156
|
+
var groups = Array.from(this._groups.values());
|
|
1157
|
+
this.doSetGroupActive(groups.length > 0 ? groups[0].value : undefined);
|
|
1158
|
+
}
|
|
1159
|
+
return selectedGroup.group;
|
|
988
1160
|
}
|
|
989
|
-
|
|
1161
|
+
throw new Error('failed to find popout group');
|
|
990
1162
|
}
|
|
991
1163
|
return _super.prototype.doRemoveGroup.call(this, group, options);
|
|
992
1164
|
};
|
|
@@ -1018,8 +1190,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
1018
1190
|
var targetLocation = (0, gridview_1.getRelativeLocation)(this.gridview.orientation, referenceLocation, destinationTarget);
|
|
1019
1191
|
if (sourceGroup && sourceGroup.size < 2) {
|
|
1020
1192
|
var _d = __read((0, array_1.tail)(targetLocation), 2), targetParentLocation = _d[0], to = _d[1];
|
|
1021
|
-
|
|
1022
|
-
if (!isFloating) {
|
|
1193
|
+
if (sourceGroup.api.location === 'grid') {
|
|
1023
1194
|
var sourceLocation = (0, gridview_1.getGridLocation)(sourceGroup.element);
|
|
1024
1195
|
var _e = __read((0, array_1.tail)(sourceLocation), 2), sourceParentLocation = _e[0], from = _e[1];
|
|
1025
1196
|
if ((0, array_1.sequenceEquals)(sourceParentLocation, targetParentLocation)) {
|
|
@@ -1051,7 +1222,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
1051
1222
|
}
|
|
1052
1223
|
};
|
|
1053
1224
|
DockviewComponent.prototype.moveGroup = function (sourceGroup, referenceGroup, target) {
|
|
1054
|
-
var
|
|
1225
|
+
var e_16, _a;
|
|
1055
1226
|
if (sourceGroup) {
|
|
1056
1227
|
if (!target || target === 'center') {
|
|
1057
1228
|
var activePanel = sourceGroup.activePanel;
|
|
@@ -1069,21 +1240,34 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
1069
1240
|
});
|
|
1070
1241
|
}
|
|
1071
1242
|
}
|
|
1072
|
-
catch (
|
|
1243
|
+
catch (e_16_1) { e_16 = { error: e_16_1 }; }
|
|
1073
1244
|
finally {
|
|
1074
1245
|
try {
|
|
1075
1246
|
if (panels_2_1 && !panels_2_1.done && (_a = panels_2.return)) _a.call(panels_2);
|
|
1076
1247
|
}
|
|
1077
|
-
finally { if (
|
|
1248
|
+
finally { if (e_16) throw e_16.error; }
|
|
1078
1249
|
}
|
|
1079
1250
|
}
|
|
1080
1251
|
else {
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1252
|
+
switch (sourceGroup.api.location) {
|
|
1253
|
+
case 'grid':
|
|
1254
|
+
this.gridview.removeView((0, gridview_1.getGridLocation)(sourceGroup.element));
|
|
1255
|
+
break;
|
|
1256
|
+
case 'floating': {
|
|
1257
|
+
var selectedFloatingGroup = this._floatingGroups.find(function (x) { return x.group === sourceGroup; });
|
|
1258
|
+
if (!selectedFloatingGroup) {
|
|
1259
|
+
throw new Error('failed to find floating group');
|
|
1260
|
+
}
|
|
1261
|
+
selectedFloatingGroup.dispose();
|
|
1262
|
+
break;
|
|
1263
|
+
}
|
|
1264
|
+
case 'popout': {
|
|
1265
|
+
var selectedPopoutGroup = this._popoutGroups.find(function (x) { return x.group === sourceGroup; });
|
|
1266
|
+
if (!selectedPopoutGroup) {
|
|
1267
|
+
throw new Error('failed to find popout group');
|
|
1268
|
+
}
|
|
1269
|
+
selectedPopoutGroup.dispose();
|
|
1270
|
+
}
|
|
1087
1271
|
}
|
|
1088
1272
|
var referenceLocation = (0, gridview_1.getGridLocation)(referenceGroup.element);
|
|
1089
1273
|
var dropLocation = (0, gridview_1.getRelativeLocation)(this.gridview.orientation, referenceLocation, target);
|
|
@@ -1146,7 +1330,7 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
1146
1330
|
var contentComponent = options.component;
|
|
1147
1331
|
var tabComponent = (_a = options.tabComponent) !== null && _a !== void 0 ? _a : this.options.defaultTabComponent;
|
|
1148
1332
|
var view = new dockviewPanelModel_1.DockviewPanelModel(this, options.id, contentComponent, tabComponent);
|
|
1149
|
-
var panel = new dockviewPanel_1.DockviewPanel(options.id, this, this._api, group, view);
|
|
1333
|
+
var panel = new dockviewPanel_1.DockviewPanel(options.id, this, this._api, group, view, { renderer: options.renderer });
|
|
1150
1334
|
panel.init({
|
|
1151
1335
|
title: (_b = options.title) !== null && _b !== void 0 ? _b : options.id,
|
|
1152
1336
|
params: (_c = options === null || options === void 0 ? void 0 : options.params) !== null && _c !== void 0 ? _c : {},
|