dockview-core 1.11.0 → 1.12.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/api/dockviewPanelApi.d.ts +6 -0
- package/dist/cjs/api/panelApi.d.ts +4 -0
- package/dist/cjs/dockview/components/panel/content.js +2 -2
- package/dist/cjs/dockview/components/titlebar/tabsContainer.js +12 -1
- package/dist/cjs/dockview/dockviewComponent.d.ts +2 -0
- package/dist/cjs/dockview/dockviewComponent.js +12 -1
- package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +9 -1
- package/dist/cjs/dockview/dockviewGroupPanelModel.js +30 -2
- package/dist/cjs/overlayRenderContainer.d.ts +1 -1
- package/dist/dockview-core.amd.js +40 -7
- 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 +40 -7
- package/dist/dockview-core.amd.noStyle.js.map +1 -1
- package/dist/dockview-core.cjs.js +40 -7
- package/dist/dockview-core.cjs.js.map +1 -1
- package/dist/dockview-core.esm.js +40 -7
- 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 +40 -7
- 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 +40 -7
- package/dist/dockview-core.noStyle.js.map +1 -1
- package/dist/esm/api/dockviewPanelApi.d.ts +6 -0
- package/dist/esm/api/panelApi.d.ts +4 -0
- package/dist/esm/dockview/components/panel/content.js +2 -2
- package/dist/esm/dockview/components/titlebar/tabsContainer.js +12 -1
- package/dist/esm/dockview/dockviewComponent.d.ts +2 -0
- package/dist/esm/dockview/dockviewComponent.js +8 -1
- package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +9 -1
- package/dist/esm/dockview/dockviewGroupPanelModel.js +18 -2
- package/dist/esm/overlayRenderContainer.d.ts +1 -1
- package/package.json +1 -1
|
@@ -19,6 +19,12 @@ export interface ActiveGroupEvent {
|
|
|
19
19
|
export interface GroupChangedEvent {
|
|
20
20
|
}
|
|
21
21
|
export interface DockviewPanelApi extends Omit<GridviewPanelApi, 'setVisible' | 'onDidConstraintsChange' | 'setConstraints'> {
|
|
22
|
+
/**
|
|
23
|
+
* The id of the tab component renderer
|
|
24
|
+
*
|
|
25
|
+
* Undefined if no custom tab renderer is provided
|
|
26
|
+
*/
|
|
27
|
+
readonly tabComponent: string | undefined;
|
|
22
28
|
readonly group: DockviewGroupPanel;
|
|
23
29
|
readonly isGroupActive: boolean;
|
|
24
30
|
readonly renderer: DockviewPanelRenderer;
|
|
@@ -23,6 +23,10 @@ export interface PanelApi {
|
|
|
23
23
|
setActive(): void;
|
|
24
24
|
setVisible(isVisible: boolean): void;
|
|
25
25
|
updateParameters(parameters: Parameters): void;
|
|
26
|
+
/**
|
|
27
|
+
* The id of the component renderer
|
|
28
|
+
*/
|
|
29
|
+
readonly component: string;
|
|
26
30
|
/**
|
|
27
31
|
* The id of the panel that would have been assigned when the panel was created
|
|
28
32
|
*/
|
|
@@ -98,7 +98,7 @@ var ContentContainer = /** @class */ (function (_super) {
|
|
|
98
98
|
this.panel = panel;
|
|
99
99
|
var container;
|
|
100
100
|
switch (panel.api.renderer) {
|
|
101
|
-
case '
|
|
101
|
+
case 'onlyWhenVisible':
|
|
102
102
|
this.group.renderContainer.detatch(panel);
|
|
103
103
|
if (this.panel) {
|
|
104
104
|
if (doRender) {
|
|
@@ -144,7 +144,7 @@ var ContentContainer = /** @class */ (function (_super) {
|
|
|
144
144
|
ContentContainer.prototype.closePanel = function () {
|
|
145
145
|
var _a;
|
|
146
146
|
if (this.panel) {
|
|
147
|
-
if (this.panel.api.renderer === '
|
|
147
|
+
if (this.panel.api.renderer === 'onlyWhenVisible') {
|
|
148
148
|
(_a = this.panel.view.content.element.parentElement) === null || _a === void 0 ? void 0 : _a.removeChild(this.panel.view.content.element);
|
|
149
149
|
}
|
|
150
150
|
}
|
|
@@ -58,6 +58,7 @@ var tab_1 = require("../tab/tab");
|
|
|
58
58
|
var voidContainer_1 = require("./voidContainer");
|
|
59
59
|
var dom_1 = require("../../../dom");
|
|
60
60
|
var dockviewGroupPanelModel_1 = require("../../dockviewGroupPanelModel");
|
|
61
|
+
var dataTransfer_1 = require("../../../dnd/dataTransfer");
|
|
61
62
|
var TabsContainer = /** @class */ (function (_super) {
|
|
62
63
|
__extends(TabsContainer, _super);
|
|
63
64
|
function TabsContainer(accessor, group) {
|
|
@@ -113,6 +114,10 @@ var TabsContainer = /** @class */ (function (_super) {
|
|
|
113
114
|
}), _this.voidContainer.onWillShowOverlay(function (event) {
|
|
114
115
|
_this._onWillShowOverlay.fire(new dockviewGroupPanelModel_1.WillShowOverlayLocationEvent(event, {
|
|
115
116
|
kind: 'header_space',
|
|
117
|
+
panel: _this.group.activePanel,
|
|
118
|
+
api: _this.accessor.api,
|
|
119
|
+
group: _this.group,
|
|
120
|
+
getData: dataTransfer_1.getPanelData,
|
|
116
121
|
}));
|
|
117
122
|
}), (0, events_1.addDisposableListener)(_this.voidContainer.element, 'mousedown', function (event) {
|
|
118
123
|
var isFloatingGroupsEnabled = !_this.accessor.options.disableFloatingGroups;
|
|
@@ -298,7 +303,13 @@ var TabsContainer = /** @class */ (function (_super) {
|
|
|
298
303
|
index: _this.tabs.findIndex(function (x) { return x.value === tab; }),
|
|
299
304
|
});
|
|
300
305
|
}), tab.onWillShowOverlay(function (event) {
|
|
301
|
-
_this._onWillShowOverlay.fire(new dockviewGroupPanelModel_1.WillShowOverlayLocationEvent(event, {
|
|
306
|
+
_this._onWillShowOverlay.fire(new dockviewGroupPanelModel_1.WillShowOverlayLocationEvent(event, {
|
|
307
|
+
kind: 'tab',
|
|
308
|
+
panel: _this.group.activePanel,
|
|
309
|
+
api: _this.accessor.api,
|
|
310
|
+
group: _this.group,
|
|
311
|
+
getData: dataTransfer_1.getPanelData,
|
|
312
|
+
}));
|
|
302
313
|
}));
|
|
303
314
|
var value = { value: tab, disposable: disposable };
|
|
304
315
|
this.addTab(value, index);
|
|
@@ -5,6 +5,7 @@ import { Event, Emitter } from '../events';
|
|
|
5
5
|
import { IWatermarkRenderer, GroupviewPanelState } from './types';
|
|
6
6
|
import { AddGroupOptions, AddPanelOptions, DockviewComponentOptions, MovementOptions } from './options';
|
|
7
7
|
import { BaseGrid, IBaseGrid } from '../gridview/baseComponentGridview';
|
|
8
|
+
import { DockviewApi } from '../api/component.api';
|
|
8
9
|
import { Orientation } from '../splitview/splitview';
|
|
9
10
|
import { GroupOptions, GroupPanelViewState, DockviewDidDropEvent, DockviewWillDropEvent, WillShowOverlayLocationEvent } from './dockviewGroupPanelModel';
|
|
10
11
|
import { DockviewGroupPanel } from './dockviewGroupPanel';
|
|
@@ -156,6 +157,7 @@ export declare class DockviewComponent extends BaseGrid<DockviewGroupPanel> impl
|
|
|
156
157
|
get options(): DockviewComponentOptions;
|
|
157
158
|
get activePanel(): IDockviewPanel | undefined;
|
|
158
159
|
get renderer(): DockviewPanelRenderer;
|
|
160
|
+
get api(): DockviewApi;
|
|
159
161
|
constructor(options: DockviewComponentOptions);
|
|
160
162
|
addPopoutGroup(itemToPopout: DockviewPanel | DockviewGroupPanel, options?: {
|
|
161
163
|
skipRemoveGroup?: boolean;
|
|
@@ -342,6 +342,10 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
342
342
|
}
|
|
343
343
|
_this._onWillShowOverlay.fire(new dockviewGroupPanelModel_1.WillShowOverlayLocationEvent(event, {
|
|
344
344
|
kind: 'edge',
|
|
345
|
+
panel: undefined,
|
|
346
|
+
api: _this._api,
|
|
347
|
+
group: undefined,
|
|
348
|
+
getData: dataTransfer_1.getPanelData,
|
|
345
349
|
}));
|
|
346
350
|
}), _this._rootDropTarget.onDrop(function (event) {
|
|
347
351
|
var _a;
|
|
@@ -428,7 +432,14 @@ var DockviewComponent = /** @class */ (function (_super) {
|
|
|
428
432
|
Object.defineProperty(DockviewComponent.prototype, "renderer", {
|
|
429
433
|
get: function () {
|
|
430
434
|
var _a;
|
|
431
|
-
return (_a = this.options.defaultRenderer) !== null && _a !== void 0 ? _a : '
|
|
435
|
+
return (_a = this.options.defaultRenderer) !== null && _a !== void 0 ? _a : 'onlyWhenVisible';
|
|
436
|
+
},
|
|
437
|
+
enumerable: false,
|
|
438
|
+
configurable: true
|
|
439
|
+
});
|
|
440
|
+
Object.defineProperty(DockviewComponent.prototype, "api", {
|
|
441
|
+
get: function () {
|
|
442
|
+
return this._api;
|
|
432
443
|
},
|
|
433
444
|
enumerable: false,
|
|
434
445
|
configurable: true
|
|
@@ -118,14 +118,22 @@ export type DockviewGroupLocation = {
|
|
|
118
118
|
};
|
|
119
119
|
export declare class WillShowOverlayLocationEvent implements IDockviewEvent {
|
|
120
120
|
private readonly event;
|
|
121
|
-
private
|
|
121
|
+
private readonly options;
|
|
122
122
|
get kind(): DockviewGroupDropLocation;
|
|
123
123
|
get nativeEvent(): DragEvent;
|
|
124
124
|
get position(): Position;
|
|
125
125
|
get defaultPrevented(): boolean;
|
|
126
|
+
get panel(): IDockviewPanel | undefined;
|
|
127
|
+
get api(): DockviewApi;
|
|
128
|
+
get group(): DockviewGroupPanel | undefined;
|
|
126
129
|
preventDefault(): void;
|
|
130
|
+
getData(): PanelTransfer | undefined;
|
|
127
131
|
constructor(event: WillShowOverlayEvent, options: {
|
|
128
132
|
kind: DockviewGroupDropLocation;
|
|
133
|
+
panel: IDockviewPanel | undefined;
|
|
134
|
+
api: DockviewApi;
|
|
135
|
+
group: DockviewGroupPanel | undefined;
|
|
136
|
+
getData: () => PanelTransfer | undefined;
|
|
129
137
|
});
|
|
130
138
|
}
|
|
131
139
|
export declare class DockviewGroupPanelModel extends CompositeDisposable implements IDockviewGroupPanelModel {
|
|
@@ -127,11 +127,11 @@ exports.DockviewWillDropEvent = DockviewWillDropEvent;
|
|
|
127
127
|
var WillShowOverlayLocationEvent = /** @class */ (function () {
|
|
128
128
|
function WillShowOverlayLocationEvent(event, options) {
|
|
129
129
|
this.event = event;
|
|
130
|
-
this.
|
|
130
|
+
this.options = options;
|
|
131
131
|
}
|
|
132
132
|
Object.defineProperty(WillShowOverlayLocationEvent.prototype, "kind", {
|
|
133
133
|
get: function () {
|
|
134
|
-
return this.
|
|
134
|
+
return this.options.kind;
|
|
135
135
|
},
|
|
136
136
|
enumerable: false,
|
|
137
137
|
configurable: true
|
|
@@ -157,9 +157,33 @@ var WillShowOverlayLocationEvent = /** @class */ (function () {
|
|
|
157
157
|
enumerable: false,
|
|
158
158
|
configurable: true
|
|
159
159
|
});
|
|
160
|
+
Object.defineProperty(WillShowOverlayLocationEvent.prototype, "panel", {
|
|
161
|
+
get: function () {
|
|
162
|
+
return this.options.panel;
|
|
163
|
+
},
|
|
164
|
+
enumerable: false,
|
|
165
|
+
configurable: true
|
|
166
|
+
});
|
|
167
|
+
Object.defineProperty(WillShowOverlayLocationEvent.prototype, "api", {
|
|
168
|
+
get: function () {
|
|
169
|
+
return this.options.api;
|
|
170
|
+
},
|
|
171
|
+
enumerable: false,
|
|
172
|
+
configurable: true
|
|
173
|
+
});
|
|
174
|
+
Object.defineProperty(WillShowOverlayLocationEvent.prototype, "group", {
|
|
175
|
+
get: function () {
|
|
176
|
+
return this.options.group;
|
|
177
|
+
},
|
|
178
|
+
enumerable: false,
|
|
179
|
+
configurable: true
|
|
180
|
+
});
|
|
160
181
|
WillShowOverlayLocationEvent.prototype.preventDefault = function () {
|
|
161
182
|
this.event.preventDefault();
|
|
162
183
|
};
|
|
184
|
+
WillShowOverlayLocationEvent.prototype.getData = function () {
|
|
185
|
+
return this.options.getData();
|
|
186
|
+
};
|
|
163
187
|
return WillShowOverlayLocationEvent;
|
|
164
188
|
}());
|
|
165
189
|
exports.WillShowOverlayLocationEvent = WillShowOverlayLocationEvent;
|
|
@@ -230,6 +254,10 @@ var DockviewGroupPanelModel = /** @class */ (function (_super) {
|
|
|
230
254
|
}), _this.contentContainer.dropTarget.onWillShowOverlay(function (event) {
|
|
231
255
|
_this._onWillShowOverlay.fire(new WillShowOverlayLocationEvent(event, {
|
|
232
256
|
kind: 'content',
|
|
257
|
+
panel: _this.activePanel,
|
|
258
|
+
api: _this._api,
|
|
259
|
+
group: _this.groupPanel,
|
|
260
|
+
getData: dataTransfer_1.getPanelData,
|
|
233
261
|
}));
|
|
234
262
|
}), _this._onMove, _this._onDidChange, _this._onDidDrop, _this._onWillDrop, _this._onDidAddPanel, _this._onDidRemovePanel, _this._onDidActivePanelChange);
|
|
235
263
|
return _this;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Droptarget } from './dnd/droptarget';
|
|
2
2
|
import { CompositeDisposable } from './lifecycle';
|
|
3
3
|
import { IDockviewPanel } from './dockview/dockviewPanel';
|
|
4
|
-
export type DockviewPanelRenderer = '
|
|
4
|
+
export type DockviewPanelRenderer = 'onlyWhenVisible' | 'always';
|
|
5
5
|
export interface IRenderable {
|
|
6
6
|
readonly element: HTMLElement;
|
|
7
7
|
readonly dropTarget: Droptarget;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* dockview-core
|
|
3
|
-
* @version 1.
|
|
3
|
+
* @version 1.12.0
|
|
4
4
|
* @link https://github.com/mathuo/dockview
|
|
5
5
|
* @license MIT
|
|
6
6
|
*/
|
|
@@ -3573,7 +3573,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
3573
3573
|
this.panel = panel;
|
|
3574
3574
|
let container;
|
|
3575
3575
|
switch (panel.api.renderer) {
|
|
3576
|
-
case '
|
|
3576
|
+
case 'onlyWhenVisible':
|
|
3577
3577
|
this.group.renderContainer.detatch(panel);
|
|
3578
3578
|
if (this.panel) {
|
|
3579
3579
|
if (doRender) {
|
|
@@ -3619,7 +3619,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
3619
3619
|
closePanel() {
|
|
3620
3620
|
var _a;
|
|
3621
3621
|
if (this.panel) {
|
|
3622
|
-
if (this.panel.api.renderer === '
|
|
3622
|
+
if (this.panel.api.renderer === 'onlyWhenVisible') {
|
|
3623
3623
|
(_a = this.panel.view.content.element.parentElement) === null || _a === void 0 ? void 0 : _a.removeChild(this.panel.view.content.element);
|
|
3624
3624
|
}
|
|
3625
3625
|
}
|
|
@@ -4008,6 +4008,10 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
4008
4008
|
}), this.voidContainer.onWillShowOverlay((event) => {
|
|
4009
4009
|
this._onWillShowOverlay.fire(new WillShowOverlayLocationEvent(event, {
|
|
4010
4010
|
kind: 'header_space',
|
|
4011
|
+
panel: this.group.activePanel,
|
|
4012
|
+
api: this.accessor.api,
|
|
4013
|
+
group: this.group,
|
|
4014
|
+
getData: getPanelData,
|
|
4011
4015
|
}));
|
|
4012
4016
|
}), addDisposableListener(this.voidContainer.element, 'mousedown', (event) => {
|
|
4013
4017
|
const isFloatingGroupsEnabled = !this.accessor.options.disableFloatingGroups;
|
|
@@ -4105,7 +4109,13 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
4105
4109
|
index: this.tabs.findIndex((x) => x.value === tab),
|
|
4106
4110
|
});
|
|
4107
4111
|
}), tab.onWillShowOverlay((event) => {
|
|
4108
|
-
this._onWillShowOverlay.fire(new WillShowOverlayLocationEvent(event, {
|
|
4112
|
+
this._onWillShowOverlay.fire(new WillShowOverlayLocationEvent(event, {
|
|
4113
|
+
kind: 'tab',
|
|
4114
|
+
panel: this.group.activePanel,
|
|
4115
|
+
api: this.accessor.api,
|
|
4116
|
+
group: this.group,
|
|
4117
|
+
getData: getPanelData,
|
|
4118
|
+
}));
|
|
4109
4119
|
}));
|
|
4110
4120
|
const value = { value: tab, disposable };
|
|
4111
4121
|
this.addTab(value, index);
|
|
@@ -4158,7 +4168,7 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
4158
4168
|
}
|
|
4159
4169
|
class WillShowOverlayLocationEvent {
|
|
4160
4170
|
get kind() {
|
|
4161
|
-
return this.
|
|
4171
|
+
return this.options.kind;
|
|
4162
4172
|
}
|
|
4163
4173
|
get nativeEvent() {
|
|
4164
4174
|
return this.event.nativeEvent;
|
|
@@ -4169,12 +4179,24 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
4169
4179
|
get defaultPrevented() {
|
|
4170
4180
|
return this.event.defaultPrevented;
|
|
4171
4181
|
}
|
|
4182
|
+
get panel() {
|
|
4183
|
+
return this.options.panel;
|
|
4184
|
+
}
|
|
4185
|
+
get api() {
|
|
4186
|
+
return this.options.api;
|
|
4187
|
+
}
|
|
4188
|
+
get group() {
|
|
4189
|
+
return this.options.group;
|
|
4190
|
+
}
|
|
4172
4191
|
preventDefault() {
|
|
4173
4192
|
this.event.preventDefault();
|
|
4174
4193
|
}
|
|
4194
|
+
getData() {
|
|
4195
|
+
return this.options.getData();
|
|
4196
|
+
}
|
|
4175
4197
|
constructor(event, options) {
|
|
4176
4198
|
this.event = event;
|
|
4177
|
-
this.
|
|
4199
|
+
this.options = options;
|
|
4178
4200
|
}
|
|
4179
4201
|
}
|
|
4180
4202
|
class DockviewGroupPanelModel extends CompositeDisposable {
|
|
@@ -4313,6 +4335,10 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
4313
4335
|
}), this.contentContainer.dropTarget.onWillShowOverlay((event) => {
|
|
4314
4336
|
this._onWillShowOverlay.fire(new WillShowOverlayLocationEvent(event, {
|
|
4315
4337
|
kind: 'content',
|
|
4338
|
+
panel: this.activePanel,
|
|
4339
|
+
api: this._api,
|
|
4340
|
+
group: this.groupPanel,
|
|
4341
|
+
getData: getPanelData,
|
|
4316
4342
|
}));
|
|
4317
4343
|
}), this._onMove, this._onDidChange, this._onDidDrop, this._onWillDrop, this._onDidAddPanel, this._onDidRemovePanel, this._onDidActivePanelChange);
|
|
4318
4344
|
}
|
|
@@ -6981,7 +7007,10 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
6981
7007
|
}
|
|
6982
7008
|
get renderer() {
|
|
6983
7009
|
var _a;
|
|
6984
|
-
return (_a = this.options.defaultRenderer) !== null && _a !== void 0 ? _a : '
|
|
7010
|
+
return (_a = this.options.defaultRenderer) !== null && _a !== void 0 ? _a : 'onlyWhenVisible';
|
|
7011
|
+
}
|
|
7012
|
+
get api() {
|
|
7013
|
+
return this._api;
|
|
6985
7014
|
}
|
|
6986
7015
|
constructor(options) {
|
|
6987
7016
|
var _a, _b;
|
|
@@ -7116,6 +7145,10 @@ define(['exports'], (function (exports) { 'use strict';
|
|
|
7116
7145
|
}
|
|
7117
7146
|
this._onWillShowOverlay.fire(new WillShowOverlayLocationEvent(event, {
|
|
7118
7147
|
kind: 'edge',
|
|
7148
|
+
panel: undefined,
|
|
7149
|
+
api: this._api,
|
|
7150
|
+
group: undefined,
|
|
7151
|
+
getData: getPanelData,
|
|
7119
7152
|
}));
|
|
7120
7153
|
}), this._rootDropTarget.onDrop((event) => {
|
|
7121
7154
|
var _a;
|