dockview-core 1.17.2 → 2.1.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/component.api.d.ts +3 -3
- package/dist/cjs/api/dockviewGroupPanelApi.d.ts +10 -8
- package/dist/cjs/api/dockviewGroupPanelApi.js +1 -0
- package/dist/cjs/api/dockviewPanelApi.d.ts +6 -14
- package/dist/cjs/api/dockviewPanelApi.js +5 -3
- package/dist/cjs/dnd/abstractDragHandler.js +1 -1
- package/dist/cjs/dnd/dnd.d.ts +2 -2
- package/dist/cjs/dnd/droptarget.js +4 -4
- package/dist/cjs/dockview/components/panel/content.d.ts +2 -2
- package/dist/cjs/dockview/components/panel/content.js +3 -1
- package/dist/cjs/dockview/components/tab/defaultTab.d.ts +3 -3
- package/dist/cjs/dockview/components/tab/tab.js +4 -4
- package/dist/cjs/dockview/components/titlebar/tabsContainer.js +5 -9
- package/dist/cjs/dockview/components/titlebar/voidContainer.js +1 -2
- package/dist/cjs/dockview/components/watermark/watermark.d.ts +1 -4
- package/dist/cjs/dockview/components/watermark/watermark.js +2 -34
- package/dist/cjs/dockview/dockviewComponent.d.ts +33 -16
- package/dist/cjs/dockview/dockviewComponent.js +103 -38
- package/dist/cjs/dockview/dockviewGroupPanel.js +16 -12
- package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +4 -3
- package/dist/cjs/dockview/dockviewGroupPanelModel.js +10 -10
- package/dist/cjs/dockview/dockviewPanel.d.ts +4 -4
- package/dist/cjs/dockview/dockviewPanelModel.d.ts +1 -1
- package/dist/cjs/dockview/options.d.ts +12 -0
- package/dist/cjs/dockview/options.js +1 -0
- package/dist/cjs/dom.d.ts +11 -1
- package/dist/cjs/dom.js +19 -1
- package/dist/cjs/gridview/baseComponentGridview.d.ts +8 -3
- package/dist/cjs/gridview/baseComponentGridview.js +8 -8
- package/dist/cjs/gridview/basePanelView.d.ts +1 -1
- package/dist/cjs/gridview/branchNode.d.ts +1 -1
- package/dist/cjs/gridview/branchNode.js +1 -1
- package/dist/cjs/gridview/gridview.d.ts +9 -1
- package/dist/cjs/gridview/gridview.js +51 -7
- package/dist/cjs/gridview/gridviewPanel.d.ts +4 -0
- package/dist/cjs/gridview/gridviewPanel.js +60 -32
- package/dist/cjs/gridview/leafNode.d.ts +1 -1
- package/dist/cjs/index.d.ts +8 -9
- package/dist/cjs/index.js +14 -7
- package/dist/cjs/overlay/overlay.d.ts +6 -3
- package/dist/cjs/overlay/overlay.js +15 -0
- package/dist/cjs/paneview/defaultPaneviewHeader.d.ts +1 -1
- package/dist/cjs/paneview/defaultPaneviewHeader.js +5 -3
- package/dist/cjs/paneview/paneview.d.ts +3 -3
- package/dist/cjs/paneview/paneview.js +3 -3
- package/dist/cjs/paneview/paneviewComponent.d.ts +2 -2
- package/dist/cjs/paneview/paneviewPanel.d.ts +2 -2
- package/dist/cjs/paneview/paneviewPanel.js +3 -3
- package/dist/cjs/popoutWindow.js +23 -16
- package/dist/cjs/splitview/splitview.d.ts +6 -6
- package/dist/cjs/splitview/splitview.js +18 -17
- package/dist/cjs/splitview/splitviewComponent.d.ts +2 -2
- package/dist/cjs/splitview/viewItem.d.ts +1 -1
- package/dist/cjs/svg.js +1 -1
- package/dist/dockview-core.amd.js +346 -210
- 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 +345 -209
- package/dist/dockview-core.amd.noStyle.js.map +1 -1
- package/dist/dockview-core.cjs.js +346 -210
- package/dist/dockview-core.cjs.js.map +1 -1
- package/dist/dockview-core.esm.js +347 -209
- 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 +346 -210
- 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 +345 -209
- package/dist/dockview-core.noStyle.js.map +1 -1
- package/dist/esm/api/component.api.d.ts +3 -3
- package/dist/esm/api/dockviewGroupPanelApi.d.ts +10 -8
- package/dist/esm/api/dockviewGroupPanelApi.js +1 -0
- package/dist/esm/api/dockviewPanelApi.d.ts +6 -14
- package/dist/esm/api/dockviewPanelApi.js +5 -3
- package/dist/esm/dnd/abstractDragHandler.js +1 -1
- package/dist/esm/dnd/dnd.d.ts +2 -2
- package/dist/esm/dnd/droptarget.js +4 -4
- package/dist/esm/dockview/components/panel/content.d.ts +2 -2
- package/dist/esm/dockview/components/panel/content.js +4 -2
- package/dist/esm/dockview/components/tab/defaultTab.d.ts +3 -3
- package/dist/esm/dockview/components/tab/tab.js +4 -4
- package/dist/esm/dockview/components/titlebar/tabsContainer.js +5 -9
- package/dist/esm/dockview/components/titlebar/voidContainer.js +1 -2
- package/dist/esm/dockview/components/watermark/watermark.d.ts +1 -4
- package/dist/esm/dockview/components/watermark/watermark.js +2 -34
- package/dist/esm/dockview/dockviewComponent.d.ts +33 -16
- package/dist/esm/dockview/dockviewComponent.js +102 -37
- package/dist/esm/dockview/dockviewGroupPanel.js +16 -12
- package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +4 -3
- package/dist/esm/dockview/dockviewGroupPanelModel.js +10 -10
- package/dist/esm/dockview/dockviewPanel.d.ts +4 -4
- package/dist/esm/dockview/dockviewPanelModel.d.ts +1 -1
- package/dist/esm/dockview/options.d.ts +12 -0
- package/dist/esm/dockview/options.js +1 -0
- package/dist/esm/dom.d.ts +11 -1
- package/dist/esm/dom.js +14 -0
- package/dist/esm/gridview/baseComponentGridview.d.ts +8 -3
- package/dist/esm/gridview/baseComponentGridview.js +8 -4
- package/dist/esm/gridview/basePanelView.d.ts +1 -1
- package/dist/esm/gridview/branchNode.d.ts +1 -1
- package/dist/esm/gridview/branchNode.js +1 -1
- package/dist/esm/gridview/gridview.d.ts +9 -1
- package/dist/esm/gridview/gridview.js +51 -7
- package/dist/esm/gridview/gridviewPanel.d.ts +4 -0
- package/dist/esm/gridview/gridviewPanel.js +40 -12
- package/dist/esm/gridview/leafNode.d.ts +1 -1
- package/dist/esm/index.d.ts +8 -9
- package/dist/esm/index.js +5 -6
- package/dist/esm/overlay/overlay.d.ts +6 -3
- package/dist/esm/overlay/overlay.js +11 -0
- package/dist/esm/paneview/defaultPaneviewHeader.d.ts +1 -1
- package/dist/esm/paneview/defaultPaneviewHeader.js +5 -3
- package/dist/esm/paneview/paneview.d.ts +3 -3
- package/dist/esm/paneview/paneview.js +3 -3
- package/dist/esm/paneview/paneviewComponent.d.ts +2 -2
- package/dist/esm/paneview/paneviewPanel.d.ts +2 -2
- package/dist/esm/paneview/paneviewPanel.js +3 -3
- package/dist/esm/popoutWindow.js +24 -17
- package/dist/esm/splitview/splitview.d.ts +6 -6
- package/dist/esm/splitview/splitview.js +18 -17
- package/dist/esm/splitview/splitviewComponent.d.ts +2 -2
- package/dist/esm/splitview/viewItem.d.ts +1 -1
- package/dist/esm/svg.js +1 -1
- package/dist/styles/dockview.css +111 -151
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FloatingGroupOptions, IDockviewComponent, MovePanelEvent, SerializedDockview } from '../dockview/dockviewComponent';
|
|
1
|
+
import { DockviewMaximizedGroupChanged, FloatingGroupOptions, IDockviewComponent, MovePanelEvent, SerializedDockview } from '../dockview/dockviewComponent';
|
|
2
2
|
import { AddGroupOptions, AddPanelOptions, DockviewComponentOptions, DockviewDndOverlayEvent, MovementOptions } from '../dockview/options';
|
|
3
3
|
import { Parameters } from '../panel/types';
|
|
4
4
|
import { Direction } from '../gridview/baseComponentGridview';
|
|
@@ -497,7 +497,7 @@ export declare class DockviewApi implements CommonApi<SerializedDockview> {
|
|
|
497
497
|
maximizeGroup(panel: IDockviewPanel): void;
|
|
498
498
|
hasMaximizedGroup(): boolean;
|
|
499
499
|
exitMaximizedGroup(): void;
|
|
500
|
-
get onDidMaximizedGroupChange(): Event<
|
|
500
|
+
get onDidMaximizedGroupChange(): Event<DockviewMaximizedGroupChanged>;
|
|
501
501
|
/**
|
|
502
502
|
* Add a popout group in a new Window
|
|
503
503
|
*/
|
|
@@ -512,7 +512,7 @@ export declare class DockviewApi implements CommonApi<SerializedDockview> {
|
|
|
512
512
|
id: string;
|
|
513
513
|
window: Window;
|
|
514
514
|
}) => void;
|
|
515
|
-
}): Promise<
|
|
515
|
+
}): Promise<boolean>;
|
|
516
516
|
setGap(gap: number | undefined): void;
|
|
517
517
|
updateOptions(options: Partial<DockviewComponentOptions>): void;
|
|
518
518
|
/**
|
|
@@ -4,6 +4,14 @@ import { DockviewGroupPanel } from '../dockview/dockviewGroupPanel';
|
|
|
4
4
|
import { DockviewGroupChangeEvent, DockviewGroupLocation } from '../dockview/dockviewGroupPanelModel';
|
|
5
5
|
import { Emitter, Event } from '../events';
|
|
6
6
|
import { GridviewPanelApi, GridviewPanelApiImpl } from './gridviewPanelApi';
|
|
7
|
+
export interface DockviewGroupMoveParams {
|
|
8
|
+
group?: DockviewGroupPanel;
|
|
9
|
+
position?: Position;
|
|
10
|
+
/**
|
|
11
|
+
* The index to place the panel within a group, only applicable if the placement is within an existing group
|
|
12
|
+
*/
|
|
13
|
+
index?: number;
|
|
14
|
+
}
|
|
7
15
|
export interface DockviewGroupPanelApi extends GridviewPanelApi {
|
|
8
16
|
readonly onDidLocationChange: Event<DockviewGroupPanelFloatingChangeEvent>;
|
|
9
17
|
readonly onDidActivePanelChange: Event<DockviewGroupChangeEvent>;
|
|
@@ -12,10 +20,7 @@ export interface DockviewGroupPanelApi extends GridviewPanelApi {
|
|
|
12
20
|
* If you require the Window object
|
|
13
21
|
*/
|
|
14
22
|
getWindow(): Window;
|
|
15
|
-
moveTo(options:
|
|
16
|
-
group?: DockviewGroupPanel;
|
|
17
|
-
position?: Position;
|
|
18
|
-
}): void;
|
|
23
|
+
moveTo(options: DockviewGroupMoveParams): void;
|
|
19
24
|
maximize(): void;
|
|
20
25
|
isMaximized(): boolean;
|
|
21
26
|
exitMaximized(): void;
|
|
@@ -36,10 +41,7 @@ export declare class DockviewGroupPanelApiImpl extends GridviewPanelApiImpl {
|
|
|
36
41
|
constructor(id: string, accessor: DockviewComponent);
|
|
37
42
|
close(): void;
|
|
38
43
|
getWindow(): Window;
|
|
39
|
-
moveTo(options:
|
|
40
|
-
group?: DockviewGroupPanel;
|
|
41
|
-
position?: Position;
|
|
42
|
-
}): void;
|
|
44
|
+
moveTo(options: DockviewGroupMoveParams): void;
|
|
43
45
|
maximize(): void;
|
|
44
46
|
isMaximized(): boolean;
|
|
45
47
|
exitMaximized(): void;
|
|
@@ -3,9 +3,8 @@ import { GridviewPanelApiImpl, GridviewPanelApi } from './gridviewPanelApi';
|
|
|
3
3
|
import { DockviewGroupPanel } from '../dockview/dockviewGroupPanel';
|
|
4
4
|
import { DockviewPanel } from '../dockview/dockviewPanel';
|
|
5
5
|
import { DockviewComponent } from '../dockview/dockviewComponent';
|
|
6
|
-
import { Position } from '../dnd/droptarget';
|
|
7
6
|
import { DockviewPanelRenderer } from '../overlay/overlayRenderContainer';
|
|
8
|
-
import { DockviewGroupPanelFloatingChangeEvent } from './dockviewGroupPanelApi';
|
|
7
|
+
import { DockviewGroupMoveParams, DockviewGroupPanelFloatingChangeEvent } from './dockviewGroupPanelApi';
|
|
9
8
|
import { DockviewGroupLocation } from '../dockview/dockviewGroupPanelModel';
|
|
10
9
|
export interface TitleEvent {
|
|
11
10
|
readonly title: string;
|
|
@@ -18,6 +17,7 @@ export interface ActiveGroupEvent {
|
|
|
18
17
|
}
|
|
19
18
|
export interface GroupChangedEvent {
|
|
20
19
|
}
|
|
20
|
+
export type DockviewPanelMoveParams = DockviewGroupMoveParams;
|
|
21
21
|
export interface DockviewPanelApi extends Omit<GridviewPanelApi, 'setVisible' | 'onDidConstraintsChange' | 'setConstraints'> {
|
|
22
22
|
/**
|
|
23
23
|
* The id of the tab component renderer
|
|
@@ -38,11 +38,7 @@ export interface DockviewPanelApi extends Omit<GridviewPanelApi, 'setVisible' |
|
|
|
38
38
|
close(): void;
|
|
39
39
|
setTitle(title: string): void;
|
|
40
40
|
setRenderer(renderer: DockviewPanelRenderer): void;
|
|
41
|
-
moveTo(options:
|
|
42
|
-
group: DockviewGroupPanel;
|
|
43
|
-
position?: Position;
|
|
44
|
-
index?: number;
|
|
45
|
-
}): void;
|
|
41
|
+
moveTo(options: DockviewPanelMoveParams): void;
|
|
46
42
|
maximize(): void;
|
|
47
43
|
isMaximized(): boolean;
|
|
48
44
|
exitMaximized(): void;
|
|
@@ -52,10 +48,10 @@ export interface DockviewPanelApi extends Omit<GridviewPanelApi, 'setVisible' |
|
|
|
52
48
|
getWindow(): Window;
|
|
53
49
|
}
|
|
54
50
|
export declare class DockviewPanelApiImpl extends GridviewPanelApiImpl implements DockviewPanelApi {
|
|
55
|
-
private panel;
|
|
51
|
+
private readonly panel;
|
|
56
52
|
private readonly accessor;
|
|
57
53
|
private _group;
|
|
58
|
-
private _tabComponent;
|
|
54
|
+
private readonly _tabComponent;
|
|
59
55
|
readonly _onDidTitleChange: Emitter<TitleEvent>;
|
|
60
56
|
readonly onDidTitleChange: Event<TitleEvent>;
|
|
61
57
|
private readonly _onDidActiveGroupChange;
|
|
@@ -76,11 +72,7 @@ export declare class DockviewPanelApiImpl extends GridviewPanelApiImpl implement
|
|
|
76
72
|
get tabComponent(): string | undefined;
|
|
77
73
|
constructor(panel: DockviewPanel, group: DockviewGroupPanel, accessor: DockviewComponent, component: string, tabComponent?: string);
|
|
78
74
|
getWindow(): Window;
|
|
79
|
-
moveTo(options:
|
|
80
|
-
group: DockviewGroupPanel;
|
|
81
|
-
position?: Position;
|
|
82
|
-
index?: number;
|
|
83
|
-
}): void;
|
|
75
|
+
moveTo(options: DockviewPanelMoveParams): void;
|
|
84
76
|
setTitle(title: string): void;
|
|
85
77
|
setRenderer(renderer: DockviewPanelRenderer): void;
|
|
86
78
|
close(): void;
|
|
@@ -56,12 +56,14 @@ export class DockviewPanelApiImpl extends GridviewPanelApiImpl {
|
|
|
56
56
|
return this.group.api.getWindow();
|
|
57
57
|
}
|
|
58
58
|
moveTo(options) {
|
|
59
|
-
var _a;
|
|
59
|
+
var _a, _b;
|
|
60
60
|
this.accessor.moveGroupOrPanel({
|
|
61
61
|
from: { groupId: this._group.id, panelId: this.panel.id },
|
|
62
62
|
to: {
|
|
63
|
-
group: options.group,
|
|
64
|
-
position:
|
|
63
|
+
group: (_a = options.group) !== null && _a !== void 0 ? _a : this._group,
|
|
64
|
+
position: options.group
|
|
65
|
+
? (_b = options.position) !== null && _b !== void 0 ? _b : 'center'
|
|
66
|
+
: 'center',
|
|
65
67
|
index: options.index,
|
|
66
68
|
},
|
|
67
69
|
});
|
|
@@ -44,7 +44,7 @@ export class DragHandler extends CompositeDisposable {
|
|
|
44
44
|
* dnd logic. You can see the code at
|
|
45
45
|
* https://github.com/react-dnd/react-dnd/blob/main/packages/backend-html5/src/HTML5BackendImpl.ts#L542
|
|
46
46
|
*/
|
|
47
|
-
event.dataTransfer.setData('text/plain', '
|
|
47
|
+
event.dataTransfer.setData('text/plain', '');
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
}), addDisposableListener(this.el, 'dragend', () => {
|
package/dist/esm/dnd/dnd.d.ts
CHANGED
|
@@ -7,8 +7,8 @@ export interface IDragAndDropObserverCallbacks {
|
|
|
7
7
|
onDragOver?: (e: DragEvent) => void;
|
|
8
8
|
}
|
|
9
9
|
export declare class DragAndDropObserver extends CompositeDisposable {
|
|
10
|
-
private element;
|
|
11
|
-
private callbacks;
|
|
10
|
+
private readonly element;
|
|
11
|
+
private readonly callbacks;
|
|
12
12
|
private target;
|
|
13
13
|
constructor(element: HTMLElement, callbacks: IDragAndDropObserverCallbacks);
|
|
14
14
|
onDragEnter(e: DragEvent): void;
|
|
@@ -117,12 +117,12 @@ export class Droptarget extends CompositeDisposable {
|
|
|
117
117
|
this.markAsUsed(e);
|
|
118
118
|
if (!this.targetElement) {
|
|
119
119
|
this.targetElement = document.createElement('div');
|
|
120
|
-
this.targetElement.className = 'drop-target-dropzone';
|
|
120
|
+
this.targetElement.className = 'dv-drop-target-dropzone';
|
|
121
121
|
this.overlayElement = document.createElement('div');
|
|
122
|
-
this.overlayElement.className = 'drop-target-selection';
|
|
122
|
+
this.overlayElement.className = 'dv-drop-target-selection';
|
|
123
123
|
this._state = 'center';
|
|
124
124
|
this.targetElement.appendChild(this.overlayElement);
|
|
125
|
-
this.element.classList.add('drop-target');
|
|
125
|
+
this.element.classList.add('dv-drop-target');
|
|
126
126
|
this.element.append(this.targetElement);
|
|
127
127
|
}
|
|
128
128
|
this.toggleClasses(quadrant, width, height);
|
|
@@ -260,7 +260,7 @@ export class Droptarget extends CompositeDisposable {
|
|
|
260
260
|
this.element.removeChild(this.targetElement);
|
|
261
261
|
this.targetElement = undefined;
|
|
262
262
|
this.overlayElement = undefined;
|
|
263
|
-
this.element.classList.remove('drop-target');
|
|
263
|
+
this.element.classList.remove('dv-drop-target');
|
|
264
264
|
}
|
|
265
265
|
}
|
|
266
266
|
}
|
|
@@ -21,9 +21,9 @@ export interface IContentContainer extends IDisposable {
|
|
|
21
21
|
export declare class ContentContainer extends CompositeDisposable implements IContentContainer {
|
|
22
22
|
private readonly accessor;
|
|
23
23
|
private readonly group;
|
|
24
|
-
private _element;
|
|
24
|
+
private readonly _element;
|
|
25
25
|
private panel;
|
|
26
|
-
private disposable;
|
|
26
|
+
private readonly disposable;
|
|
27
27
|
private readonly _onDidFocus;
|
|
28
28
|
readonly onDidFocus: Event<void>;
|
|
29
29
|
private readonly _onDidBlur;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CompositeDisposable, MutableDisposable, } from '../../../lifecycle';
|
|
2
|
-
import { Emitter
|
|
2
|
+
import { Emitter } from '../../../events';
|
|
3
3
|
import { trackFocus } from '../../../dom';
|
|
4
4
|
import { Droptarget } from '../../../dnd/droptarget';
|
|
5
5
|
import { getPanelData } from '../../../dnd/dataTransfer';
|
|
@@ -17,7 +17,7 @@ export class ContentContainer extends CompositeDisposable {
|
|
|
17
17
|
this._onDidBlur = new Emitter();
|
|
18
18
|
this.onDidBlur = this._onDidBlur.event;
|
|
19
19
|
this._element = document.createElement('div');
|
|
20
|
-
this._element.className = 'content-container';
|
|
20
|
+
this._element.className = 'dv-content-container';
|
|
21
21
|
this._element.tabIndex = -1;
|
|
22
22
|
this.addDisposables(this._onDidFocus, this._onDidBlur);
|
|
23
23
|
this.dropTarget = new Droptarget(this.element, {
|
|
@@ -90,6 +90,8 @@ export class ContentContainer extends CompositeDisposable {
|
|
|
90
90
|
referenceContainer: this,
|
|
91
91
|
});
|
|
92
92
|
break;
|
|
93
|
+
default:
|
|
94
|
+
throw new Error(`dockview: invalid renderer type '${panel.api.renderer}'`);
|
|
93
95
|
}
|
|
94
96
|
if (doRender) {
|
|
95
97
|
const focusTracker = trackFocus(container);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { CompositeDisposable } from '../../../lifecycle';
|
|
2
2
|
import { ITabRenderer, GroupPanelPartInitParameters } from '../../types';
|
|
3
3
|
export declare class DefaultTab extends CompositeDisposable implements ITabRenderer {
|
|
4
|
-
private _element;
|
|
5
|
-
private _content;
|
|
6
|
-
private action;
|
|
4
|
+
private readonly _element;
|
|
5
|
+
private readonly _content;
|
|
6
|
+
private readonly action;
|
|
7
7
|
private _title;
|
|
8
8
|
get element(): HTMLElement;
|
|
9
9
|
constructor();
|
|
@@ -38,10 +38,10 @@ export class Tab extends CompositeDisposable {
|
|
|
38
38
|
this._onDragStart = new Emitter();
|
|
39
39
|
this.onDragStart = this._onDragStart.event;
|
|
40
40
|
this._element = document.createElement('div');
|
|
41
|
-
this._element.className = 'tab';
|
|
41
|
+
this._element.className = 'dv-tab';
|
|
42
42
|
this._element.tabIndex = 0;
|
|
43
43
|
this._element.draggable = true;
|
|
44
|
-
toggleClass(this.element, 'inactive-tab', true);
|
|
44
|
+
toggleClass(this.element, 'dv-inactive-tab', true);
|
|
45
45
|
const dragHandler = new TabDragHandler(this._element, this.accessor, this.group, this.panel);
|
|
46
46
|
this.dropTarget = new Droptarget(this._element, {
|
|
47
47
|
acceptedTargetZones: ['center'],
|
|
@@ -74,8 +74,8 @@ export class Tab extends CompositeDisposable {
|
|
|
74
74
|
}), this.dropTarget);
|
|
75
75
|
}
|
|
76
76
|
setActive(isActive) {
|
|
77
|
-
toggleClass(this.element, 'active-tab', isActive);
|
|
78
|
-
toggleClass(this.element, 'inactive-tab', !isActive);
|
|
77
|
+
toggleClass(this.element, 'dv-active-tab', isActive);
|
|
78
|
+
toggleClass(this.element, 'dv-inactive-tab', !isActive);
|
|
79
79
|
}
|
|
80
80
|
setContent(part) {
|
|
81
81
|
if (this.content) {
|
|
@@ -92,16 +92,16 @@ export class TabsContainer extends CompositeDisposable {
|
|
|
92
92
|
this._onWillShowOverlay = new Emitter();
|
|
93
93
|
this.onWillShowOverlay = this._onWillShowOverlay.event;
|
|
94
94
|
this._element = document.createElement('div');
|
|
95
|
-
this._element.className = 'tabs-and-actions-container';
|
|
95
|
+
this._element.className = 'dv-tabs-and-actions-container';
|
|
96
96
|
toggleClass(this._element, 'dv-full-width-single-tab', this.accessor.options.singleTabMode === 'fullwidth');
|
|
97
97
|
this.rightActionsContainer = document.createElement('div');
|
|
98
|
-
this.rightActionsContainer.className = 'right-actions-container';
|
|
98
|
+
this.rightActionsContainer.className = 'dv-right-actions-container';
|
|
99
99
|
this.leftActionsContainer = document.createElement('div');
|
|
100
|
-
this.leftActionsContainer.className = 'left-actions-container';
|
|
100
|
+
this.leftActionsContainer.className = 'dv-left-actions-container';
|
|
101
101
|
this.preActionsContainer = document.createElement('div');
|
|
102
|
-
this.preActionsContainer.className = 'pre-actions-container';
|
|
102
|
+
this.preActionsContainer.className = 'dv-pre-actions-container';
|
|
103
103
|
this.tabContainer = document.createElement('div');
|
|
104
|
-
this.tabContainer.className = 'tabs-container';
|
|
104
|
+
this.tabContainer.className = 'dv-tabs-container';
|
|
105
105
|
this.voidContainer = new VoidContainer(this.accessor, this.group);
|
|
106
106
|
this._element.appendChild(this.preActionsContainer);
|
|
107
107
|
this._element.appendChild(this.tabContainer);
|
|
@@ -190,14 +190,10 @@ export class TabsContainer extends CompositeDisposable {
|
|
|
190
190
|
});
|
|
191
191
|
}
|
|
192
192
|
openPanel(panel, index = this.tabs.length) {
|
|
193
|
-
var _a;
|
|
194
193
|
if (this.tabs.find((tab) => tab.value.panel.id === panel.id)) {
|
|
195
194
|
return;
|
|
196
195
|
}
|
|
197
196
|
const tab = new Tab(panel, this.accessor, this.group);
|
|
198
|
-
if (!((_a = panel.view) === null || _a === void 0 ? void 0 : _a.tab)) {
|
|
199
|
-
throw new Error('invalid header component');
|
|
200
|
-
}
|
|
201
197
|
tab.setContent(panel.view.tab);
|
|
202
198
|
const disposable = new CompositeDisposable(tab.onDragStart((event) => {
|
|
203
199
|
this._onTabDragStart.fire({ nativeEvent: event, panel });
|
|
@@ -17,8 +17,7 @@ export class VoidContainer extends CompositeDisposable {
|
|
|
17
17
|
this._onDragStart = new Emitter();
|
|
18
18
|
this.onDragStart = this._onDragStart.event;
|
|
19
19
|
this._element = document.createElement('div');
|
|
20
|
-
this._element.className = 'void-container';
|
|
21
|
-
this._element.tabIndex = 0;
|
|
20
|
+
this._element.className = 'dv-void-container';
|
|
22
21
|
this._element.draggable = true;
|
|
23
22
|
this.addDisposables(this._onDrop, this._onDragStart, addDisposableListener(this._element, 'pointerdown', () => {
|
|
24
23
|
this.accessor.doSetGroupActive(this.group);
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
import { IWatermarkRenderer, WatermarkRendererInitParameters } from '../../types';
|
|
2
2
|
import { CompositeDisposable } from '../../../lifecycle';
|
|
3
3
|
export declare class Watermark extends CompositeDisposable implements IWatermarkRenderer {
|
|
4
|
-
private _element;
|
|
5
|
-
private _group;
|
|
6
|
-
private _api;
|
|
4
|
+
private readonly _element;
|
|
7
5
|
get element(): HTMLElement;
|
|
8
6
|
constructor();
|
|
9
7
|
init(_params: WatermarkRendererInitParameters): void;
|
|
10
|
-
private render;
|
|
11
8
|
}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
import { addDisposableListener } from '../../../events';
|
|
2
|
-
import { toggleClass } from '../../../dom';
|
|
3
1
|
import { CompositeDisposable } from '../../../lifecycle';
|
|
4
|
-
import { createCloseButton } from '../../../svg';
|
|
5
2
|
export class Watermark extends CompositeDisposable {
|
|
6
3
|
get element() {
|
|
7
4
|
return this._element;
|
|
@@ -9,38 +6,9 @@ export class Watermark extends CompositeDisposable {
|
|
|
9
6
|
constructor() {
|
|
10
7
|
super();
|
|
11
8
|
this._element = document.createElement('div');
|
|
12
|
-
this._element.className = 'watermark';
|
|
13
|
-
const title = document.createElement('div');
|
|
14
|
-
title.className = 'watermark-title';
|
|
15
|
-
const emptySpace = document.createElement('span');
|
|
16
|
-
emptySpace.style.flexGrow = '1';
|
|
17
|
-
const content = document.createElement('div');
|
|
18
|
-
content.className = 'watermark-content';
|
|
19
|
-
this._element.appendChild(title);
|
|
20
|
-
this._element.appendChild(content);
|
|
21
|
-
const actionsContainer = document.createElement('div');
|
|
22
|
-
actionsContainer.className = 'actions-container';
|
|
23
|
-
const closeAnchor = document.createElement('div');
|
|
24
|
-
closeAnchor.className = 'close-action';
|
|
25
|
-
closeAnchor.appendChild(createCloseButton());
|
|
26
|
-
actionsContainer.appendChild(closeAnchor);
|
|
27
|
-
title.appendChild(emptySpace);
|
|
28
|
-
title.appendChild(actionsContainer);
|
|
29
|
-
this.addDisposables(addDisposableListener(closeAnchor, 'click', (event) => {
|
|
30
|
-
var _a;
|
|
31
|
-
event.preventDefault();
|
|
32
|
-
if (this._group) {
|
|
33
|
-
(_a = this._api) === null || _a === void 0 ? void 0 : _a.removeGroup(this._group);
|
|
34
|
-
}
|
|
35
|
-
}));
|
|
9
|
+
this._element.className = 'dv-watermark';
|
|
36
10
|
}
|
|
37
11
|
init(_params) {
|
|
38
|
-
|
|
39
|
-
this._group = _params.group;
|
|
40
|
-
this.render();
|
|
41
|
-
}
|
|
42
|
-
render() {
|
|
43
|
-
const isOneGroup = !!(this._api && this._api.size <= 1);
|
|
44
|
-
toggleClass(this.element, 'has-actions', isOneGroup);
|
|
12
|
+
// noop
|
|
45
13
|
}
|
|
46
14
|
}
|
|
@@ -14,6 +14,27 @@ import { DockviewFloatingGroupPanel } from './dockviewFloatingGroupPanel';
|
|
|
14
14
|
import { GroupDragEvent, TabDragEvent } from './components/titlebar/tabsContainer';
|
|
15
15
|
import { AnchoredBox, AnchorPosition, Box } from '../types';
|
|
16
16
|
import { DockviewPanelRenderer, OverlayRenderContainer } from '../overlay/overlayRenderContainer';
|
|
17
|
+
export interface DockviewPopoutGroupOptions {
|
|
18
|
+
/**
|
|
19
|
+
* The position of the popout group
|
|
20
|
+
*/
|
|
21
|
+
position?: Box;
|
|
22
|
+
/**
|
|
23
|
+
* The same-origin path at which the popout window will be created
|
|
24
|
+
*
|
|
25
|
+
* Defaults to `/popout.html` if not provided
|
|
26
|
+
*/
|
|
27
|
+
popoutUrl?: string;
|
|
28
|
+
onDidOpen?: (event: {
|
|
29
|
+
id: string;
|
|
30
|
+
window: Window;
|
|
31
|
+
}) => void;
|
|
32
|
+
onWillClose?: (event: {
|
|
33
|
+
id: string;
|
|
34
|
+
window: Window;
|
|
35
|
+
}) => void;
|
|
36
|
+
overridePopoutGroup?: DockviewGroupPanel;
|
|
37
|
+
}
|
|
17
38
|
export interface PanelReference {
|
|
18
39
|
update: (event: {
|
|
19
40
|
params: {
|
|
@@ -28,6 +49,7 @@ export interface SerializedFloatingGroup {
|
|
|
28
49
|
}
|
|
29
50
|
export interface SerializedPopoutGroup {
|
|
30
51
|
data: GroupPanelViewState;
|
|
52
|
+
url?: string;
|
|
31
53
|
gridReferenceGroup?: string;
|
|
32
54
|
position: Box | null;
|
|
33
55
|
}
|
|
@@ -79,6 +101,10 @@ export interface FloatingGroupOptionsInternal extends FloatingGroupOptions {
|
|
|
79
101
|
inDragMode?: boolean;
|
|
80
102
|
skipActiveGroup?: boolean;
|
|
81
103
|
}
|
|
104
|
+
export interface DockviewMaximizedGroupChanged {
|
|
105
|
+
group: DockviewGroupPanel;
|
|
106
|
+
isMaximized: boolean;
|
|
107
|
+
}
|
|
82
108
|
export interface IDockviewComponent extends IBaseGrid<DockviewGroupPanel> {
|
|
83
109
|
readonly activePanel: IDockviewPanel | undefined;
|
|
84
110
|
readonly totalPanels: number;
|
|
@@ -99,6 +125,7 @@ export interface IDockviewComponent extends IBaseGrid<DockviewGroupPanel> {
|
|
|
99
125
|
readonly onDidActiveGroupChange: Event<DockviewGroupPanel | undefined>;
|
|
100
126
|
readonly onUnhandledDragOverEvent: Event<DockviewDndOverlayEvent>;
|
|
101
127
|
readonly onDidMovePanel: Event<MovePanelEvent>;
|
|
128
|
+
readonly onDidMaximizedGroupChange: Event<DockviewMaximizedGroupChanged>;
|
|
102
129
|
readonly options: DockviewComponentOptions;
|
|
103
130
|
updateOptions(options: DockviewOptions): void;
|
|
104
131
|
moveGroupOrPanel(options: MoveGroupOrPanelOptions): void;
|
|
@@ -129,7 +156,7 @@ export interface IDockviewComponent extends IBaseGrid<DockviewGroupPanel> {
|
|
|
129
156
|
id: string;
|
|
130
157
|
window: Window;
|
|
131
158
|
}) => void;
|
|
132
|
-
}): Promise<
|
|
159
|
+
}): Promise<boolean>;
|
|
133
160
|
}
|
|
134
161
|
export declare class DockviewComponent extends BaseGrid<DockviewGroupPanel> implements IDockviewComponent {
|
|
135
162
|
private readonly nextGroupId;
|
|
@@ -160,6 +187,8 @@ export declare class DockviewComponent extends BaseGrid<DockviewGroupPanel> impl
|
|
|
160
187
|
readonly onDidActivePanelChange: Event<IDockviewPanel | undefined>;
|
|
161
188
|
private readonly _onDidMovePanel;
|
|
162
189
|
readonly onDidMovePanel: Event<MovePanelEvent>;
|
|
190
|
+
private readonly _onDidMaximizedGroupChange;
|
|
191
|
+
readonly onDidMaximizedGroupChange: Event<DockviewMaximizedGroupChanged>;
|
|
163
192
|
private readonly _floatingGroups;
|
|
164
193
|
private readonly _popoutGroups;
|
|
165
194
|
private readonly _rootDropTarget;
|
|
@@ -179,20 +208,8 @@ export declare class DockviewComponent extends BaseGrid<DockviewGroupPanel> impl
|
|
|
179
208
|
get gap(): number;
|
|
180
209
|
get floatingGroups(): DockviewFloatingGroupPanel[];
|
|
181
210
|
constructor(parentElement: HTMLElement, options: DockviewComponentOptions);
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
position?: Box;
|
|
185
|
-
popoutUrl?: string;
|
|
186
|
-
onDidOpen?: (event: {
|
|
187
|
-
id: string;
|
|
188
|
-
window: Window;
|
|
189
|
-
}) => void;
|
|
190
|
-
onWillClose?: (event: {
|
|
191
|
-
id: string;
|
|
192
|
-
window: Window;
|
|
193
|
-
}) => void;
|
|
194
|
-
overridePopoutGroup?: DockviewGroupPanel;
|
|
195
|
-
}): Promise<void>;
|
|
211
|
+
setVisible(panel: DockviewGroupPanel, visible: boolean): void;
|
|
212
|
+
addPopoutGroup(itemToPopout: DockviewPanel | DockviewGroupPanel, options?: DockviewPopoutGroupOptions): Promise<boolean>;
|
|
196
213
|
addFloatingGroup(item: DockviewPanel | DockviewGroupPanel, options?: FloatingGroupOptionsInternal): void;
|
|
197
214
|
private orthogonalize;
|
|
198
215
|
updateOptions(options: Partial<DockviewComponentOptions>): void;
|
|
@@ -214,7 +231,7 @@ export declare class DockviewComponent extends BaseGrid<DockviewGroupPanel> impl
|
|
|
214
231
|
addPanel<T extends object = Parameters>(options: AddPanelOptions<T>): DockviewPanel;
|
|
215
232
|
removePanel(panel: IDockviewPanel, options?: {
|
|
216
233
|
removeEmptyGroup: boolean;
|
|
217
|
-
skipDispose
|
|
234
|
+
skipDispose?: boolean;
|
|
218
235
|
skipSetActiveGroup?: boolean;
|
|
219
236
|
}): void;
|
|
220
237
|
createWatermarkComponent(): IWatermarkRenderer;
|