dockview-core 1.16.0 → 1.17.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 +6 -4
- package/dist/cjs/dnd/groupDragHandler.js +1 -1
- package/dist/cjs/dockview/components/tab/defaultTab.js +2 -2
- package/dist/cjs/dockview/components/tab/tab.js +1 -1
- package/dist/cjs/dockview/components/titlebar/tabsContainer.js +2 -2
- package/dist/cjs/dockview/components/watermark/watermark.d.ts +0 -7
- package/dist/cjs/dockview/components/watermark/watermark.js +3 -18
- package/dist/cjs/dockview/deserializer.js +4 -0
- package/dist/cjs/dockview/dockviewComponent.d.ts +2 -0
- package/dist/cjs/dockview/dockviewComponent.js +77 -58
- package/dist/cjs/dockview/dockviewGroupPanel.d.ts +4 -0
- package/dist/cjs/dockview/dockviewGroupPanel.js +49 -2
- package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +4 -0
- package/dist/cjs/dockview/dockviewGroupPanelModel.js +0 -1
- package/dist/cjs/dockview/dockviewPanel.d.ts +14 -1
- package/dist/cjs/dockview/dockviewPanel.js +36 -0
- package/dist/cjs/dockview/options.d.ts +16 -9
- package/dist/cjs/dockview/types.d.ts +5 -2
- package/dist/cjs/dom.d.ts +7 -0
- package/dist/cjs/dom.js +63 -1
- package/dist/cjs/gridview/baseComponentGridview.d.ts +3 -2
- package/dist/cjs/gridview/baseComponentGridview.js +30 -5
- package/dist/cjs/gridview/gridviewComponent.d.ts +2 -3
- package/dist/cjs/gridview/gridviewComponent.js +2 -2
- package/dist/cjs/gridview/gridviewPanel.d.ts +6 -0
- package/dist/cjs/overlay/overlay.js +6 -6
- package/dist/cjs/paneview/paneviewComponent.d.ts +1 -0
- package/dist/cjs/paneview/paneviewComponent.js +11 -3
- package/dist/cjs/splitview/splitviewComponent.d.ts +4 -4
- package/dist/cjs/splitview/splitviewComponent.js +13 -7
- package/dist/dockview-core.amd.js +231 -103
- 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 +230 -102
- package/dist/dockview-core.amd.noStyle.js.map +1 -1
- package/dist/dockview-core.cjs.js +231 -103
- package/dist/dockview-core.cjs.js.map +1 -1
- package/dist/dockview-core.esm.js +231 -103
- 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 +231 -103
- 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 +230 -102
- package/dist/dockview-core.noStyle.js.map +1 -1
- package/dist/esm/api/component.api.d.ts +6 -4
- package/dist/esm/dnd/groupDragHandler.js +1 -1
- package/dist/esm/dockview/components/tab/defaultTab.js +2 -2
- package/dist/esm/dockview/components/tab/tab.js +1 -1
- package/dist/esm/dockview/components/titlebar/tabsContainer.js +2 -2
- package/dist/esm/dockview/components/watermark/watermark.d.ts +0 -7
- package/dist/esm/dockview/components/watermark/watermark.js +3 -18
- package/dist/esm/dockview/deserializer.js +4 -0
- package/dist/esm/dockview/dockviewComponent.d.ts +2 -0
- package/dist/esm/dockview/dockviewComponent.js +76 -54
- package/dist/esm/dockview/dockviewGroupPanel.d.ts +4 -0
- package/dist/esm/dockview/dockviewGroupPanel.js +33 -2
- package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +4 -0
- package/dist/esm/dockview/dockviewGroupPanelModel.js +0 -1
- package/dist/esm/dockview/dockviewPanel.d.ts +14 -1
- package/dist/esm/dockview/dockviewPanel.js +20 -0
- package/dist/esm/dockview/options.d.ts +16 -9
- package/dist/esm/dockview/types.d.ts +5 -2
- package/dist/esm/dom.d.ts +7 -0
- package/dist/esm/dom.js +36 -0
- package/dist/esm/gridview/baseComponentGridview.d.ts +3 -2
- package/dist/esm/gridview/baseComponentGridview.js +30 -5
- package/dist/esm/gridview/gridviewComponent.d.ts +2 -3
- package/dist/esm/gridview/gridviewComponent.js +2 -2
- package/dist/esm/gridview/gridviewPanel.d.ts +6 -0
- package/dist/esm/overlay/overlay.js +6 -6
- package/dist/esm/paneview/paneviewComponent.d.ts +1 -0
- package/dist/esm/paneview/paneviewComponent.js +11 -3
- package/dist/esm/splitview/splitviewComponent.d.ts +4 -4
- package/dist/esm/splitview/splitviewComponent.js +13 -7
- package/dist/styles/dockview.css +1 -1
- package/package.json +1 -1
|
@@ -12,6 +12,7 @@ import { IDockviewPanel } from './dockviewPanel';
|
|
|
12
12
|
import { DockviewPanelRenderer } from '../overlay/overlayRenderContainer';
|
|
13
13
|
import { IGroupHeaderProps } from './framework';
|
|
14
14
|
import { FloatingGroupOptions } from './dockviewComponent';
|
|
15
|
+
import { Contraints } from '../gridview/gridviewPanel';
|
|
15
16
|
export interface IHeaderActionsRenderer extends IDisposable {
|
|
16
17
|
readonly element: HTMLElement;
|
|
17
18
|
init(params: IGroupHeaderProps): void;
|
|
@@ -71,19 +72,23 @@ export declare class DockviewUnhandledDragOverEvent implements DockviewDndOverla
|
|
|
71
72
|
accept(): void;
|
|
72
73
|
}
|
|
73
74
|
export declare const PROPERTY_KEYS: (keyof DockviewOptions)[];
|
|
75
|
+
export interface CreateComponentOptions {
|
|
76
|
+
/**
|
|
77
|
+
* The unqiue identifer of the component
|
|
78
|
+
*/
|
|
79
|
+
id: string;
|
|
80
|
+
/**
|
|
81
|
+
* The component name, this should determine what is rendered.
|
|
82
|
+
*/
|
|
83
|
+
name: string;
|
|
84
|
+
}
|
|
74
85
|
export interface DockviewFrameworkOptions {
|
|
75
86
|
defaultTabComponent?: string;
|
|
76
87
|
createRightHeaderActionComponent?: (group: DockviewGroupPanel) => IHeaderActionsRenderer;
|
|
77
88
|
createLeftHeaderActionComponent?: (group: DockviewGroupPanel) => IHeaderActionsRenderer;
|
|
78
89
|
createPrefixHeaderActionComponent?: (group: DockviewGroupPanel) => IHeaderActionsRenderer;
|
|
79
|
-
createTabComponent?: (options:
|
|
80
|
-
|
|
81
|
-
name: string;
|
|
82
|
-
}) => ITabRenderer | undefined;
|
|
83
|
-
createComponent: (options: {
|
|
84
|
-
id: string;
|
|
85
|
-
name: string;
|
|
86
|
-
}) => IContentRenderer;
|
|
90
|
+
createTabComponent?: (options: CreateComponentOptions) => ITabRenderer | undefined;
|
|
91
|
+
createComponent: (options: CreateComponentOptions) => IContentRenderer;
|
|
87
92
|
createWatermarkComponent?: () => IWatermarkRenderer;
|
|
88
93
|
}
|
|
89
94
|
export type DockviewComponentOptions = DockviewOptions & DockviewFrameworkOptions;
|
|
@@ -149,7 +154,9 @@ export type AddPanelOptions<P extends object = Parameters> = {
|
|
|
149
154
|
* Defaults to `false` which forces newly added panels to become active.
|
|
150
155
|
*/
|
|
151
156
|
inactive?: boolean;
|
|
152
|
-
|
|
157
|
+
initialWidth?: number;
|
|
158
|
+
initialHeight?: number;
|
|
159
|
+
} & Partial<AddPanelOptionsUnion> & Partial<Contraints>;
|
|
153
160
|
type AddGroupOptionsWithPanel = {
|
|
154
161
|
referencePanel: string | IDockviewPanel;
|
|
155
162
|
direction?: Omit<Direction, 'within'>;
|
|
@@ -2,7 +2,7 @@ import { DockviewPanelApi } from '../api/dockviewPanelApi';
|
|
|
2
2
|
import { PanelInitParameters, IPanel } from '../panel/types';
|
|
3
3
|
import { DockviewApi } from '../api/component.api';
|
|
4
4
|
import { Optional } from '../types';
|
|
5
|
-
import {
|
|
5
|
+
import { IDockviewGroupPanel } from './dockviewGroupPanel';
|
|
6
6
|
import { DockviewPanelRenderer } from '../overlay/overlayRenderContainer';
|
|
7
7
|
export interface HeaderPartInitParameters {
|
|
8
8
|
title: string;
|
|
@@ -19,7 +19,6 @@ type RendererMethodOptionalList = 'dispose' | 'update' | 'layout' | 'toJSON' | '
|
|
|
19
19
|
export interface IWatermarkRenderer extends Optional<Omit<IPanel, 'id' | 'init'>, RendererMethodOptionalList> {
|
|
20
20
|
readonly element: HTMLElement;
|
|
21
21
|
init: (params: WatermarkRendererInitParameters) => void;
|
|
22
|
-
updateParentGroup(group: DockviewGroupPanel, visible: boolean): void;
|
|
23
22
|
}
|
|
24
23
|
export interface ITabRenderer extends Optional<Omit<IPanel, 'id'>, RendererMethodOptionalList> {
|
|
25
24
|
readonly element: HTMLElement;
|
|
@@ -40,5 +39,9 @@ export interface GroupviewPanelState {
|
|
|
40
39
|
params?: {
|
|
41
40
|
[key: string]: any;
|
|
42
41
|
};
|
|
42
|
+
minimumWidth?: number;
|
|
43
|
+
minimumHeight?: number;
|
|
44
|
+
maximumWidth?: number;
|
|
45
|
+
maximumHeight?: number;
|
|
43
46
|
}
|
|
44
47
|
export {};
|
package/dist/cjs/dom.d.ts
CHANGED
|
@@ -30,3 +30,10 @@ export declare function addTestId(element: HTMLElement, id: string): void;
|
|
|
30
30
|
export declare function disableIframePointEvents(): {
|
|
31
31
|
release: () => void;
|
|
32
32
|
};
|
|
33
|
+
export declare function getDockviewTheme(element: HTMLElement): string | undefined;
|
|
34
|
+
export declare class Classnames {
|
|
35
|
+
private readonly element;
|
|
36
|
+
private _classNames;
|
|
37
|
+
constructor(element: HTMLElement);
|
|
38
|
+
setClassNames(classNames: string): void;
|
|
39
|
+
}
|
package/dist/cjs/dom.js
CHANGED
|
@@ -51,7 +51,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
51
51
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
52
52
|
};
|
|
53
53
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
|
-
exports.disableIframePointEvents = exports.addTestId = exports.isInDocument = exports.getDomNodePagePosition = exports.addStyles = exports.quasiDefaultPrevented = exports.quasiPreventDefault = exports.trackFocus = exports.getElementsByTagName = exports.isAncestor = exports.toggleClass = exports.addClasses = exports.removeClasses = exports.watchElementResize = void 0;
|
|
54
|
+
exports.Classnames = exports.getDockviewTheme = exports.disableIframePointEvents = exports.addTestId = exports.isInDocument = exports.getDomNodePagePosition = exports.addStyles = exports.quasiDefaultPrevented = exports.quasiPreventDefault = exports.trackFocus = exports.getElementsByTagName = exports.isAncestor = exports.toggleClass = exports.addClasses = exports.removeClasses = exports.watchElementResize = void 0;
|
|
55
55
|
var events_1 = require("./events");
|
|
56
56
|
var lifecycle_1 = require("./lifecycle");
|
|
57
57
|
function watchElementResize(element, cb) {
|
|
@@ -343,3 +343,65 @@ function disableIframePointEvents() {
|
|
|
343
343
|
};
|
|
344
344
|
}
|
|
345
345
|
exports.disableIframePointEvents = disableIframePointEvents;
|
|
346
|
+
function getDockviewTheme(element) {
|
|
347
|
+
function toClassList(element) {
|
|
348
|
+
var list = [];
|
|
349
|
+
for (var i = 0; i < element.classList.length; i++) {
|
|
350
|
+
list.push(element.classList.item(i));
|
|
351
|
+
}
|
|
352
|
+
return list;
|
|
353
|
+
}
|
|
354
|
+
var theme = undefined;
|
|
355
|
+
var parent = element;
|
|
356
|
+
while (parent !== null) {
|
|
357
|
+
theme = toClassList(parent).find(function (cls) {
|
|
358
|
+
return cls.startsWith('dockview-theme-');
|
|
359
|
+
});
|
|
360
|
+
if (typeof theme === 'string') {
|
|
361
|
+
break;
|
|
362
|
+
}
|
|
363
|
+
parent = parent.parentElement;
|
|
364
|
+
}
|
|
365
|
+
return theme;
|
|
366
|
+
}
|
|
367
|
+
exports.getDockviewTheme = getDockviewTheme;
|
|
368
|
+
var Classnames = /** @class */ (function () {
|
|
369
|
+
function Classnames(element) {
|
|
370
|
+
this.element = element;
|
|
371
|
+
this._classNames = [];
|
|
372
|
+
}
|
|
373
|
+
Classnames.prototype.setClassNames = function (classNames) {
|
|
374
|
+
var e_7, _a, e_8, _b;
|
|
375
|
+
try {
|
|
376
|
+
for (var _c = __values(this._classNames), _d = _c.next(); !_d.done; _d = _c.next()) {
|
|
377
|
+
var className = _d.value;
|
|
378
|
+
(0, exports.toggleClass)(this.element, className, false);
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
catch (e_7_1) { e_7 = { error: e_7_1 }; }
|
|
382
|
+
finally {
|
|
383
|
+
try {
|
|
384
|
+
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
|
|
385
|
+
}
|
|
386
|
+
finally { if (e_7) throw e_7.error; }
|
|
387
|
+
}
|
|
388
|
+
this._classNames = classNames
|
|
389
|
+
.split(' ')
|
|
390
|
+
.filter(function (v) { return v.trim().length > 0; });
|
|
391
|
+
try {
|
|
392
|
+
for (var _e = __values(this._classNames), _f = _e.next(); !_f.done; _f = _e.next()) {
|
|
393
|
+
var className = _f.value;
|
|
394
|
+
(0, exports.toggleClass)(this.element, className, true);
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
catch (e_8_1) { e_8 = { error: e_8_1 }; }
|
|
398
|
+
finally {
|
|
399
|
+
try {
|
|
400
|
+
if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
|
|
401
|
+
}
|
|
402
|
+
finally { if (e_8) throw e_8.error; }
|
|
403
|
+
}
|
|
404
|
+
};
|
|
405
|
+
return Classnames;
|
|
406
|
+
}());
|
|
407
|
+
exports.Classnames = Classnames;
|
|
@@ -12,7 +12,6 @@ export interface BaseGridOptions {
|
|
|
12
12
|
readonly proportionalLayout: boolean;
|
|
13
13
|
readonly orientation: Orientation;
|
|
14
14
|
readonly styles?: ISplitviewStyles;
|
|
15
|
-
readonly parentElement: HTMLElement;
|
|
16
15
|
readonly disableAutoResizing?: boolean;
|
|
17
16
|
readonly locked?: boolean;
|
|
18
17
|
readonly margin?: number;
|
|
@@ -63,6 +62,7 @@ export declare abstract class BaseGrid<T extends IGridPanelView> extends Resizab
|
|
|
63
62
|
readonly onDidLayoutChange: Event<void>;
|
|
64
63
|
private readonly _onDidViewVisibilityChangeMicroTaskQueue;
|
|
65
64
|
readonly onDidViewVisibilityChangeMicroTaskQueue: Event<void>;
|
|
65
|
+
private readonly _classNames;
|
|
66
66
|
get id(): string;
|
|
67
67
|
get size(): number;
|
|
68
68
|
get groups(): T[];
|
|
@@ -75,12 +75,13 @@ export declare abstract class BaseGrid<T extends IGridPanelView> extends Resizab
|
|
|
75
75
|
get activeGroup(): T | undefined;
|
|
76
76
|
get locked(): boolean;
|
|
77
77
|
set locked(value: boolean);
|
|
78
|
-
constructor(options: BaseGridOptions);
|
|
78
|
+
constructor(parentElement: HTMLElement, options: BaseGridOptions);
|
|
79
79
|
abstract toJSON(): object;
|
|
80
80
|
abstract fromJSON(data: any): void;
|
|
81
81
|
abstract clear(): void;
|
|
82
82
|
setVisible(panel: T, visible: boolean): void;
|
|
83
83
|
isVisible(panel: T): boolean;
|
|
84
|
+
updateOptions(options: Partial<BaseGridOptions>): void;
|
|
84
85
|
maximizeGroup(panel: T): void;
|
|
85
86
|
isMaximizedGroup(panel: T): boolean;
|
|
86
87
|
exitMaximizedGroup(): void;
|
|
@@ -33,6 +33,7 @@ var lifecycle_1 = require("../lifecycle");
|
|
|
33
33
|
var math_1 = require("../math");
|
|
34
34
|
var splitview_1 = require("../splitview/splitview");
|
|
35
35
|
var resizable_1 = require("../resizable");
|
|
36
|
+
var dom_1 = require("../dom");
|
|
36
37
|
var nextLayoutId = (0, math_1.sequentialNumberGenerator)();
|
|
37
38
|
function toTarget(direction) {
|
|
38
39
|
switch (direction) {
|
|
@@ -52,7 +53,8 @@ function toTarget(direction) {
|
|
|
52
53
|
exports.toTarget = toTarget;
|
|
53
54
|
var BaseGrid = /** @class */ (function (_super) {
|
|
54
55
|
__extends(BaseGrid, _super);
|
|
55
|
-
function BaseGrid(options) {
|
|
56
|
+
function BaseGrid(parentElement, options) {
|
|
57
|
+
var _a;
|
|
56
58
|
var _this = _super.call(this, document.createElement('div'), options.disableAutoResizing) || this;
|
|
57
59
|
_this._id = nextLayoutId.next();
|
|
58
60
|
_this._groups = new Map();
|
|
@@ -68,10 +70,9 @@ var BaseGrid = /** @class */ (function (_super) {
|
|
|
68
70
|
_this.onDidViewVisibilityChangeMicroTaskQueue = _this._onDidViewVisibilityChangeMicroTaskQueue.onEvent;
|
|
69
71
|
_this.element.style.height = '100%';
|
|
70
72
|
_this.element.style.width = '100%';
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
options.parentElement.appendChild(_this.element);
|
|
73
|
+
_this._classNames = new dom_1.Classnames(_this.element);
|
|
74
|
+
_this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
|
|
75
|
+
parentElement.appendChild(_this.element);
|
|
75
76
|
_this.gridview = new gridview_1.Gridview(!!options.proportionalLayout, options.styles, options.orientation, options.locked, options.margin);
|
|
76
77
|
_this.gridview.locked = !!options.locked;
|
|
77
78
|
_this.element.appendChild(_this.gridview.element);
|
|
@@ -177,6 +178,30 @@ var BaseGrid = /** @class */ (function (_super) {
|
|
|
177
178
|
BaseGrid.prototype.isVisible = function (panel) {
|
|
178
179
|
return this.gridview.isViewVisible((0, gridview_1.getGridLocation)(panel.element));
|
|
179
180
|
};
|
|
181
|
+
BaseGrid.prototype.updateOptions = function (options) {
|
|
182
|
+
var _a, _b, _c, _d;
|
|
183
|
+
if (typeof options.proportionalLayout === 'boolean') {
|
|
184
|
+
// this.gridview.proportionalLayout = options.proportionalLayout; // not supported
|
|
185
|
+
}
|
|
186
|
+
if (options.orientation) {
|
|
187
|
+
this.gridview.orientation = options.orientation;
|
|
188
|
+
}
|
|
189
|
+
if ('styles' in options) {
|
|
190
|
+
// this.gridview.styles = options.styles; // not supported
|
|
191
|
+
}
|
|
192
|
+
if ('disableResizing' in options) {
|
|
193
|
+
this.disableResizing = (_a = options.disableAutoResizing) !== null && _a !== void 0 ? _a : false;
|
|
194
|
+
}
|
|
195
|
+
if ('locked' in options) {
|
|
196
|
+
this.locked = (_b = options.locked) !== null && _b !== void 0 ? _b : false;
|
|
197
|
+
}
|
|
198
|
+
if ('margin' in options) {
|
|
199
|
+
this.gridview.margin = (_c = options.margin) !== null && _c !== void 0 ? _c : 0;
|
|
200
|
+
}
|
|
201
|
+
if ('className' in options) {
|
|
202
|
+
this._classNames.setClassNames((_d = options.className) !== null && _d !== void 0 ? _d : '');
|
|
203
|
+
}
|
|
204
|
+
};
|
|
180
205
|
BaseGrid.prototype.maximizeGroup = function (panel) {
|
|
181
206
|
this.gridview.maximizeView(panel);
|
|
182
207
|
this.doSetGroupActive(panel);
|
|
@@ -25,11 +25,10 @@ export interface AddComponentOptions<T extends object = Parameters> extends Base
|
|
|
25
25
|
export interface IGridPanelComponentView extends IGridPanelView {
|
|
26
26
|
init: (params: GridviewInitParameters) => void;
|
|
27
27
|
}
|
|
28
|
-
export type GridviewComponentUpdateOptions = Pick<GridviewComponentOptions, 'orientation' | 'components' | 'frameworkComponents'>;
|
|
29
28
|
export interface IGridviewComponent extends IBaseGrid<GridviewPanel> {
|
|
30
29
|
readonly orientation: Orientation;
|
|
31
30
|
readonly onDidLayoutFromJSON: Event<void>;
|
|
32
|
-
updateOptions(options: Partial<
|
|
31
|
+
updateOptions(options: Partial<GridviewComponentOptions>): void;
|
|
33
32
|
addPanel<T extends object = Parameters>(options: AddComponentOptions<T>): IGridviewPanel;
|
|
34
33
|
removePanel(panel: IGridviewPanel, sizing?: Sizing): void;
|
|
35
34
|
focus(): void;
|
|
@@ -63,7 +62,7 @@ export declare class GridviewComponent extends BaseGrid<GridviewPanel> implement
|
|
|
63
62
|
get deserializer(): IPanelDeserializer | undefined;
|
|
64
63
|
set deserializer(value: IPanelDeserializer | undefined);
|
|
65
64
|
constructor(parentElement: HTMLElement, options: GridviewComponentOptions);
|
|
66
|
-
updateOptions(options: Partial<
|
|
65
|
+
updateOptions(options: Partial<GridviewComponentOptions>): void;
|
|
67
66
|
removePanel(panel: GridviewPanel): void;
|
|
68
67
|
/**
|
|
69
68
|
* Serialize the current state of the layout
|
|
@@ -63,8 +63,7 @@ var events_1 = require("../events");
|
|
|
63
63
|
var GridviewComponent = /** @class */ (function (_super) {
|
|
64
64
|
__extends(GridviewComponent, _super);
|
|
65
65
|
function GridviewComponent(parentElement, options) {
|
|
66
|
-
var _this = _super.call(this, {
|
|
67
|
-
parentElement: parentElement,
|
|
66
|
+
var _this = _super.call(this, parentElement, {
|
|
68
67
|
proportionalLayout: options.proportionalLayout,
|
|
69
68
|
orientation: options.orientation,
|
|
70
69
|
styles: options.styles,
|
|
@@ -123,6 +122,7 @@ var GridviewComponent = /** @class */ (function (_super) {
|
|
|
123
122
|
configurable: true
|
|
124
123
|
});
|
|
125
124
|
GridviewComponent.prototype.updateOptions = function (options) {
|
|
125
|
+
_super.prototype.updateOptions.call(this, options);
|
|
126
126
|
var hasOrientationChanged = typeof options.orientation === 'string' &&
|
|
127
127
|
this.gridview.orientation !== options.orientation;
|
|
128
128
|
this._options = __assign(__assign({}, this.options), options);
|
|
@@ -6,6 +6,12 @@ import { LayoutPriority } from '../splitview/splitview';
|
|
|
6
6
|
import { Event } from '../events';
|
|
7
7
|
import { IViewSize } from './gridview';
|
|
8
8
|
import { BaseGrid, IGridPanelView } from './baseComponentGridview';
|
|
9
|
+
export interface Contraints {
|
|
10
|
+
minimumWidth?: number;
|
|
11
|
+
maximumWidth?: number;
|
|
12
|
+
minimumHeight?: number;
|
|
13
|
+
maximumHeight?: number;
|
|
14
|
+
}
|
|
9
15
|
export interface GridviewInitParameters extends PanelInitParameters {
|
|
10
16
|
minimumWidth?: number;
|
|
11
17
|
maximumWidth?: number;
|
|
@@ -225,7 +225,7 @@ var Overlay = /** @class */ (function (_super) {
|
|
|
225
225
|
dispose: function () {
|
|
226
226
|
iframes.release();
|
|
227
227
|
},
|
|
228
|
-
}, (0, events_1.addDisposableWindowListener)(window, '
|
|
228
|
+
}, (0, events_1.addDisposableWindowListener)(window, 'pointermove', function (e) {
|
|
229
229
|
var containerRect = _this.options.container.getBoundingClientRect();
|
|
230
230
|
var x = e.clientX - containerRect.left;
|
|
231
231
|
var y = e.clientY - containerRect.top;
|
|
@@ -268,7 +268,7 @@ var Overlay = /** @class */ (function (_super) {
|
|
|
268
268
|
_this._onDidChangeEnd.fire();
|
|
269
269
|
}));
|
|
270
270
|
};
|
|
271
|
-
this.addDisposables(move, (0, events_1.addDisposableListener)(dragTarget, '
|
|
271
|
+
this.addDisposables(move, (0, events_1.addDisposableListener)(dragTarget, 'pointerdown', function (event) {
|
|
272
272
|
if (event.defaultPrevented) {
|
|
273
273
|
event.preventDefault();
|
|
274
274
|
return;
|
|
@@ -279,7 +279,7 @@ var Overlay = /** @class */ (function (_super) {
|
|
|
279
279
|
return;
|
|
280
280
|
}
|
|
281
281
|
track();
|
|
282
|
-
}), (0, events_1.addDisposableListener)(this.options.content, '
|
|
282
|
+
}), (0, events_1.addDisposableListener)(this.options.content, 'pointerdown', function (event) {
|
|
283
283
|
if (event.defaultPrevented) {
|
|
284
284
|
return;
|
|
285
285
|
}
|
|
@@ -291,7 +291,7 @@ var Overlay = /** @class */ (function (_super) {
|
|
|
291
291
|
if (event.shiftKey) {
|
|
292
292
|
track();
|
|
293
293
|
}
|
|
294
|
-
}), (0, events_1.addDisposableListener)(this.options.content, '
|
|
294
|
+
}), (0, events_1.addDisposableListener)(this.options.content, 'pointerdown', function () {
|
|
295
295
|
arialLevelTracker.push(_this._element);
|
|
296
296
|
}, true));
|
|
297
297
|
if (options.inDragMode) {
|
|
@@ -304,11 +304,11 @@ var Overlay = /** @class */ (function (_super) {
|
|
|
304
304
|
resizeHandleElement.className = "dv-resize-handle-".concat(direction);
|
|
305
305
|
this._element.appendChild(resizeHandleElement);
|
|
306
306
|
var move = new lifecycle_1.MutableDisposable();
|
|
307
|
-
this.addDisposables(move, (0, events_1.addDisposableListener)(resizeHandleElement, '
|
|
307
|
+
this.addDisposables(move, (0, events_1.addDisposableListener)(resizeHandleElement, 'pointerdown', function (e) {
|
|
308
308
|
e.preventDefault();
|
|
309
309
|
var startPosition = null;
|
|
310
310
|
var iframes = (0, dom_1.disableIframePointEvents)();
|
|
311
|
-
move.value = new lifecycle_1.CompositeDisposable((0, events_1.addDisposableWindowListener)(window, '
|
|
311
|
+
move.value = new lifecycle_1.CompositeDisposable((0, events_1.addDisposableWindowListener)(window, 'pointermove', function (e) {
|
|
312
312
|
var containerRect = _this.options.container.getBoundingClientRect();
|
|
313
313
|
var overlayRect = _this._element.getBoundingClientRect();
|
|
314
314
|
var y = e.clientY - containerRect.top;
|
|
@@ -103,6 +103,7 @@ export declare class PaneviewComponent extends Resizable implements IPaneviewCom
|
|
|
103
103
|
readonly onDidAddView: Event<PaneviewPanel>;
|
|
104
104
|
private readonly _onDidRemoveView;
|
|
105
105
|
readonly onDidRemoveView: Event<PaneviewPanel>;
|
|
106
|
+
private readonly _classNames;
|
|
106
107
|
get id(): string;
|
|
107
108
|
get panels(): PaneviewPanel[];
|
|
108
109
|
set paneview(value: Paneview);
|
|
@@ -64,6 +64,7 @@ var draggablePaneviewPanel_1 = require("./draggablePaneviewPanel");
|
|
|
64
64
|
var defaultPaneviewHeader_1 = require("./defaultPaneviewHeader");
|
|
65
65
|
var math_1 = require("../math");
|
|
66
66
|
var resizable_1 = require("../resizable");
|
|
67
|
+
var dom_1 = require("../dom");
|
|
67
68
|
var nextLayoutId = (0, math_1.sequentialNumberGenerator)();
|
|
68
69
|
var PaneFramework = /** @class */ (function (_super) {
|
|
69
70
|
__extends(PaneFramework, _super);
|
|
@@ -84,6 +85,7 @@ exports.PaneFramework = PaneFramework;
|
|
|
84
85
|
var PaneviewComponent = /** @class */ (function (_super) {
|
|
85
86
|
__extends(PaneviewComponent, _super);
|
|
86
87
|
function PaneviewComponent(parentElement, options) {
|
|
88
|
+
var _a;
|
|
87
89
|
var _this = _super.call(this, parentElement, options.disableAutoResizing) || this;
|
|
88
90
|
_this._id = nextLayoutId.next();
|
|
89
91
|
_this._disposable = new lifecycle_1.MutableDisposable();
|
|
@@ -98,10 +100,9 @@ var PaneviewComponent = /** @class */ (function (_super) {
|
|
|
98
100
|
_this.onDidAddView = _this._onDidAddView.event;
|
|
99
101
|
_this._onDidRemoveView = new events_1.Emitter();
|
|
100
102
|
_this.onDidRemoveView = _this._onDidRemoveView.event;
|
|
101
|
-
if (typeof options.className === 'string') {
|
|
102
|
-
_this.element.classList.add(options.className);
|
|
103
|
-
}
|
|
104
103
|
_this.addDisposables(_this._onDidLayoutChange, _this._onDidLayoutfromJSON, _this._onDidDrop, _this._onDidAddView, _this._onDidRemoveView);
|
|
104
|
+
_this._classNames = new dom_1.Classnames(_this.element);
|
|
105
|
+
_this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
|
|
105
106
|
_this._options = options;
|
|
106
107
|
if (!options.components) {
|
|
107
108
|
options.components = {};
|
|
@@ -191,6 +192,13 @@ var PaneviewComponent = /** @class */ (function (_super) {
|
|
|
191
192
|
//noop
|
|
192
193
|
};
|
|
193
194
|
PaneviewComponent.prototype.updateOptions = function (options) {
|
|
195
|
+
var _a, _b;
|
|
196
|
+
if ('className' in options) {
|
|
197
|
+
this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
|
|
198
|
+
}
|
|
199
|
+
if ('disableResizing' in options) {
|
|
200
|
+
this.disableResizing = (_b = options.disableAutoResizing) !== null && _b !== void 0 ? _b : false;
|
|
201
|
+
}
|
|
194
202
|
this._options = __assign(__assign({}, this.options), options);
|
|
195
203
|
};
|
|
196
204
|
PaneviewComponent.prototype.addPanel = function (options) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IDisposable } from '../lifecycle';
|
|
2
|
-
import { IView, LayoutPriority, Orientation, Sizing, Splitview } from './splitview';
|
|
2
|
+
import { IView, LayoutPriority, Orientation, Sizing, Splitview, SplitViewOptions } from './splitview';
|
|
3
3
|
import { SplitviewComponentOptions } from './options';
|
|
4
4
|
import { BaseComponentOptions, Parameters } from '../panel/types';
|
|
5
5
|
import { Event } from '../events';
|
|
@@ -31,7 +31,6 @@ export interface AddSplitviewComponentOptions<T extends Parameters = Parameters>
|
|
|
31
31
|
minimumSize?: number;
|
|
32
32
|
maximumSize?: number;
|
|
33
33
|
}
|
|
34
|
-
export type SplitviewComponentUpdateOptions = Pick<SplitviewComponentOptions, 'orientation' | 'components' | 'frameworkComponents'>;
|
|
35
34
|
export interface ISplitviewComponent extends IDisposable {
|
|
36
35
|
readonly minimumSize: number;
|
|
37
36
|
readonly maximumSize: number;
|
|
@@ -43,7 +42,7 @@ export interface ISplitviewComponent extends IDisposable {
|
|
|
43
42
|
readonly onDidRemoveView: Event<IView>;
|
|
44
43
|
readonly onDidLayoutFromJSON: Event<void>;
|
|
45
44
|
readonly panels: SplitviewPanel[];
|
|
46
|
-
updateOptions(options: Partial<
|
|
45
|
+
updateOptions(options: Partial<SplitViewOptions>): void;
|
|
47
46
|
addPanel<T extends object = Parameters>(options: AddSplitviewComponentOptions<T>): ISplitviewPanel;
|
|
48
47
|
layout(width: number, height: number): void;
|
|
49
48
|
onDidLayoutChange: Event<void>;
|
|
@@ -73,6 +72,7 @@ export declare class SplitviewComponent extends Resizable implements ISplitviewC
|
|
|
73
72
|
readonly onDidRemoveView: Event<IView>;
|
|
74
73
|
private readonly _onDidLayoutChange;
|
|
75
74
|
readonly onDidLayoutChange: Event<void>;
|
|
75
|
+
private readonly _classNames;
|
|
76
76
|
get panels(): SplitviewPanel[];
|
|
77
77
|
get options(): SplitviewComponentOptions;
|
|
78
78
|
get length(): number;
|
|
@@ -84,7 +84,7 @@ export declare class SplitviewComponent extends Resizable implements ISplitviewC
|
|
|
84
84
|
get height(): number;
|
|
85
85
|
get width(): number;
|
|
86
86
|
constructor(parentElement: HTMLElement, options: SplitviewComponentOptions);
|
|
87
|
-
updateOptions(options: Partial<
|
|
87
|
+
updateOptions(options: Partial<SplitviewComponentOptions>): void;
|
|
88
88
|
focus(): void;
|
|
89
89
|
movePanel(from: number, to: number): void;
|
|
90
90
|
setVisible(panel: SplitviewPanel, visible: boolean): void;
|
|
@@ -59,12 +59,14 @@ var splitview_1 = require("./splitview");
|
|
|
59
59
|
var events_1 = require("../events");
|
|
60
60
|
var componentFactory_1 = require("../panel/componentFactory");
|
|
61
61
|
var resizable_1 = require("../resizable");
|
|
62
|
+
var dom_1 = require("../dom");
|
|
62
63
|
/**
|
|
63
64
|
* A high-level implementation of splitview that works using 'panels'
|
|
64
65
|
*/
|
|
65
66
|
var SplitviewComponent = /** @class */ (function (_super) {
|
|
66
67
|
__extends(SplitviewComponent, _super);
|
|
67
68
|
function SplitviewComponent(parentElement, options) {
|
|
69
|
+
var _a;
|
|
68
70
|
var _this = _super.call(this, parentElement, options.disableAutoResizing) || this;
|
|
69
71
|
_this._splitviewChangeDisposable = new lifecycle_1.MutableDisposable();
|
|
70
72
|
_this._panels = new Map();
|
|
@@ -76,9 +78,8 @@ var SplitviewComponent = /** @class */ (function (_super) {
|
|
|
76
78
|
_this.onDidRemoveView = _this._onDidRemoveView.event;
|
|
77
79
|
_this._onDidLayoutChange = new events_1.Emitter();
|
|
78
80
|
_this.onDidLayoutChange = _this._onDidLayoutChange.event;
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
}
|
|
81
|
+
_this._classNames = new dom_1.Classnames(_this.element);
|
|
82
|
+
_this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
|
|
82
83
|
_this._options = options;
|
|
83
84
|
if (!options.components) {
|
|
84
85
|
options.components = {};
|
|
@@ -167,12 +168,17 @@ var SplitviewComponent = /** @class */ (function (_super) {
|
|
|
167
168
|
configurable: true
|
|
168
169
|
});
|
|
169
170
|
SplitviewComponent.prototype.updateOptions = function (options) {
|
|
170
|
-
var
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
171
|
+
var _a, _b;
|
|
172
|
+
if ('className' in options) {
|
|
173
|
+
this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
|
|
174
|
+
}
|
|
175
|
+
if ('disableResizing' in options) {
|
|
176
|
+
this.disableResizing = (_b = options.disableAutoResizing) !== null && _b !== void 0 ? _b : false;
|
|
177
|
+
}
|
|
178
|
+
if (typeof options.orientation === 'string') {
|
|
174
179
|
this.splitview.orientation = options.orientation;
|
|
175
180
|
}
|
|
181
|
+
this._options = __assign(__assign({}, this.options), options);
|
|
176
182
|
this.splitview.layout(this.splitview.size, this.splitview.orthogonalSize);
|
|
177
183
|
};
|
|
178
184
|
SplitviewComponent.prototype.focus = function () {
|