dockview 2.1.3 → 3.0.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.
Files changed (49) hide show
  1. package/dist/cjs/dockview/dockview.d.ts +0 -1
  2. package/dist/cjs/dockview/dockview.js +3 -3
  3. package/dist/cjs/dockview/headerActionsRenderer.js +1 -1
  4. package/dist/cjs/dockview/reactContentPart.js +1 -1
  5. package/dist/cjs/dockview/reactHeaderPart.js +1 -1
  6. package/dist/cjs/dockview/reactWatermarkPart.js +1 -1
  7. package/dist/cjs/gridview/gridview.d.ts +2 -7
  8. package/dist/cjs/gridview/gridview.js +47 -20
  9. package/dist/cjs/paneview/paneview.d.ts +2 -6
  10. package/dist/cjs/paneview/paneview.js +54 -36
  11. package/dist/cjs/paneview/view.d.ts +2 -2
  12. package/dist/cjs/splitview/splitview.d.ts +2 -7
  13. package/dist/cjs/splitview/splitview.js +52 -20
  14. package/dist/dockview.amd.js +295 -251
  15. package/dist/dockview.amd.js.map +1 -1
  16. package/dist/dockview.amd.min.js +2 -2
  17. package/dist/dockview.amd.min.js.map +1 -1
  18. package/dist/dockview.amd.min.noStyle.js +2 -2
  19. package/dist/dockview.amd.min.noStyle.js.map +1 -1
  20. package/dist/dockview.amd.noStyle.js +295 -251
  21. package/dist/dockview.amd.noStyle.js.map +1 -1
  22. package/dist/dockview.cjs.js +295 -251
  23. package/dist/dockview.cjs.js.map +1 -1
  24. package/dist/dockview.esm.js +291 -251
  25. package/dist/dockview.esm.js.map +1 -1
  26. package/dist/dockview.esm.min.js +2 -2
  27. package/dist/dockview.esm.min.js.map +1 -1
  28. package/dist/dockview.js +295 -251
  29. package/dist/dockview.js.map +1 -1
  30. package/dist/dockview.min.js +2 -2
  31. package/dist/dockview.min.js.map +1 -1
  32. package/dist/dockview.min.noStyle.js +2 -2
  33. package/dist/dockview.min.noStyle.js.map +1 -1
  34. package/dist/dockview.noStyle.js +295 -251
  35. package/dist/dockview.noStyle.js.map +1 -1
  36. package/dist/esm/dockview/dockview.d.ts +0 -1
  37. package/dist/esm/dockview/dockview.js +4 -4
  38. package/dist/esm/dockview/headerActionsRenderer.js +1 -1
  39. package/dist/esm/dockview/reactContentPart.js +1 -1
  40. package/dist/esm/dockview/reactHeaderPart.js +1 -1
  41. package/dist/esm/dockview/reactWatermarkPart.js +1 -1
  42. package/dist/esm/gridview/gridview.d.ts +2 -7
  43. package/dist/esm/gridview/gridview.js +36 -20
  44. package/dist/esm/paneview/paneview.d.ts +2 -6
  45. package/dist/esm/paneview/paneview.js +53 -33
  46. package/dist/esm/paneview/view.d.ts +2 -2
  47. package/dist/esm/splitview/splitview.d.ts +2 -7
  48. package/dist/esm/splitview/splitview.js +41 -20
  49. package/package.json +2 -2
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * dockview
3
- * @version 2.1.3
3
+ * @version 3.0.0
4
4
  * @link https://github.com/mathuo/dockview
5
5
  * @license MIT
6
6
  */
@@ -130,6 +130,17 @@ class DockviewEvent {
130
130
  this._defaultPrevented = true;
131
131
  }
132
132
  }
133
+ class AcceptableEvent {
134
+ constructor() {
135
+ this._isAccepted = false;
136
+ }
137
+ get isAccepted() {
138
+ return this._isAccepted;
139
+ }
140
+ accept() {
141
+ this._isAccepted = true;
142
+ }
143
+ }
133
144
  class LeakageMonitor {
134
145
  constructor() {
135
146
  this.events = new Map();
@@ -1521,6 +1532,23 @@ class Splitview {
1521
1532
  }
1522
1533
  }
1523
1534
 
1535
+ const PROPERTY_KEYS_SPLITVIEW = (() => {
1536
+ /**
1537
+ * by readong the keys from an empty value object TypeScript will error
1538
+ * when we add or remove new properties to `DockviewOptions`
1539
+ */
1540
+ const properties = {
1541
+ orientation: undefined,
1542
+ descriptor: undefined,
1543
+ proportionalLayout: undefined,
1544
+ styles: undefined,
1545
+ margin: undefined,
1546
+ disableAutoResizing: undefined,
1547
+ className: undefined,
1548
+ };
1549
+ return Object.keys(properties);
1550
+ })();
1551
+
1524
1552
  class Paneview extends CompositeDisposable {
1525
1553
  get onDidAddView() {
1526
1554
  return this.splitview.onDidAddView;
@@ -2650,6 +2678,21 @@ class Gridview {
2650
2678
  }
2651
2679
  }
2652
2680
 
2681
+ const PROPERTY_KEYS_GRIDVIEW = (() => {
2682
+ /**
2683
+ * by readong the keys from an empty value object TypeScript will error
2684
+ * when we add or remove new properties to `DockviewOptions`
2685
+ */
2686
+ const properties = {
2687
+ disableAutoResizing: undefined,
2688
+ proportionalLayout: undefined,
2689
+ orientation: undefined,
2690
+ hideBorders: undefined,
2691
+ className: undefined,
2692
+ };
2693
+ return Object.keys(properties);
2694
+ })();
2695
+
2653
2696
  class Resizable extends CompositeDisposable {
2654
2697
  get element() {
2655
2698
  return this._element;
@@ -3127,15 +3170,10 @@ class PaneviewApi {
3127
3170
  * Invoked when a Drag'n'Drop event occurs that the component was unable to handle. Exposed for custom Drag'n'Drop functionality.
3128
3171
  */
3129
3172
  get onDidDrop() {
3130
- const emitter = new Emitter();
3131
- const disposable = this.component.onDidDrop((e) => {
3132
- emitter.fire(Object.assign(Object.assign({}, e), { api: this }));
3133
- });
3134
- emitter.dispose = () => {
3135
- disposable.dispose();
3136
- emitter.dispose();
3137
- };
3138
- return emitter.event;
3173
+ return this.component.onDidDrop;
3174
+ }
3175
+ get onUnhandledDragOverEvent() {
3176
+ return this.component.onUnhandledDragOverEvent;
3139
3177
  }
3140
3178
  constructor(component) {
3141
3179
  this.component = component;
@@ -4062,6 +4100,28 @@ function calculateQuadrantAsPixels(overlayType, x, y, width, height, threshold)
4062
4100
  return 'center';
4063
4101
  }
4064
4102
 
4103
+ const PROPERTY_KEYS_PANEVIEW = (() => {
4104
+ /**
4105
+ * by readong the keys from an empty value object TypeScript will error
4106
+ * when we add or remove new properties to `DockviewOptions`
4107
+ */
4108
+ const properties = {
4109
+ disableAutoResizing: undefined,
4110
+ disableDnd: undefined,
4111
+ className: undefined,
4112
+ };
4113
+ return Object.keys(properties);
4114
+ })();
4115
+ class PaneviewUnhandledDragOverEvent extends AcceptableEvent {
4116
+ constructor(nativeEvent, position, getData, panel) {
4117
+ super();
4118
+ this.nativeEvent = nativeEvent;
4119
+ this.position = position;
4120
+ this.getData = getData;
4121
+ this.panel = panel;
4122
+ }
4123
+ }
4124
+
4065
4125
  class WillFocusEvent extends DockviewEvent {
4066
4126
  constructor() {
4067
4127
  super();
@@ -4485,6 +4545,9 @@ class DraggablePaneviewPanel extends PaneviewPanel {
4485
4545
  this.accessor = accessor;
4486
4546
  this._onDidDrop = new Emitter();
4487
4547
  this.onDidDrop = this._onDidDrop.event;
4548
+ this._onUnhandledDragOverEvent = new Emitter();
4549
+ this.onUnhandledDragOverEvent = this._onUnhandledDragOverEvent.event;
4550
+ this.addDisposables(this._onDidDrop, this._onUnhandledDragOverEvent);
4488
4551
  if (!disableDnd) {
4489
4552
  this.initDragFeatures();
4490
4553
  }
@@ -4511,7 +4574,7 @@ class DraggablePaneviewPanel extends PaneviewPanel {
4511
4574
  overlayModel: {
4512
4575
  activationSize: { type: 'percentage', value: 50 },
4513
4576
  },
4514
- canDisplayOverlay: (event) => {
4577
+ canDisplayOverlay: (event, position) => {
4515
4578
  const data = getPaneData();
4516
4579
  if (data) {
4517
4580
  if (data.paneId !== this.id &&
@@ -4519,14 +4582,9 @@ class DraggablePaneviewPanel extends PaneviewPanel {
4519
4582
  return true;
4520
4583
  }
4521
4584
  }
4522
- if (this.accessor.options.showDndOverlay) {
4523
- return this.accessor.options.showDndOverlay({
4524
- nativeEvent: event,
4525
- getData: getPaneData,
4526
- panel: this,
4527
- });
4528
- }
4529
- return false;
4585
+ const firedEvent = new PaneviewUnhandledDragOverEvent(event, position, getPaneData, this);
4586
+ this._onUnhandledDragOverEvent.fire(firedEvent);
4587
+ return firedEvent.isAccepted;
4530
4588
  },
4531
4589
  });
4532
4590
  this.addDisposables(this._onDidDrop, this.handler, this.target, this.target.onDrop((event) => {
@@ -4981,15 +5039,7 @@ class TabsContainer extends CompositeDisposable {
4981
5039
  this._element.appendChild(this.leftActionsContainer);
4982
5040
  this._element.appendChild(this.voidContainer.element);
4983
5041
  this._element.appendChild(this.rightActionsContainer);
4984
- this.addDisposables(this.accessor.onDidAddPanel((e) => {
4985
- if (e.api.group === this.group) {
4986
- toggleClass(this._element, 'dv-single-tab', this.size === 1);
4987
- }
4988
- }), this.accessor.onDidRemovePanel((e) => {
4989
- if (e.api.group === this.group) {
4990
- toggleClass(this._element, 'dv-single-tab', this.size === 1);
4991
- }
4992
- }), this._onWillShowOverlay, this._onDrop, this._onTabDragStart, this._onGroupDragStart, this.voidContainer, this.voidContainer.onDragStart((event) => {
5042
+ this.addDisposables(this._onWillShowOverlay, this._onDrop, this._onTabDragStart, this._onGroupDragStart, this.voidContainer, this.voidContainer.onDragStart((event) => {
4993
5043
  this._onGroupDragStart.fire({
4994
5044
  nativeEvent: event,
4995
5045
  group: this.group,
@@ -5034,20 +5084,6 @@ class TabsContainer extends CompositeDisposable {
5034
5084
  setActive(_isGroupActive) {
5035
5085
  // noop
5036
5086
  }
5037
- addTab(tab, index = this.tabs.length) {
5038
- if (index < 0 || index > this.tabs.length) {
5039
- throw new Error('invalid location');
5040
- }
5041
- this.tabContainer.insertBefore(tab.value.element, this.tabContainer.children[index]);
5042
- this.tabs = [
5043
- ...this.tabs.slice(0, index),
5044
- tab,
5045
- ...this.tabs.slice(index),
5046
- ];
5047
- if (this.selectedIndex < 0) {
5048
- this.selectedIndex = index;
5049
- }
5050
- }
5051
5087
  delete(id) {
5052
5088
  const index = this.tabs.findIndex((tab) => tab.value.panel.id === id);
5053
5089
  const tabToRemove = this.tabs.splice(index, 1)[0];
@@ -5055,6 +5091,7 @@ class TabsContainer extends CompositeDisposable {
5055
5091
  disposable.dispose();
5056
5092
  value.dispose();
5057
5093
  value.element.remove();
5094
+ this.updateClassnames();
5058
5095
  }
5059
5096
  setActivePanel(panel) {
5060
5097
  this.tabs.forEach((tab) => {
@@ -5123,25 +5160,37 @@ class TabsContainer extends CompositeDisposable {
5123
5160
  }
5124
5161
  this.tabs = [];
5125
5162
  }
5163
+ addTab(tab, index = this.tabs.length) {
5164
+ if (index < 0 || index > this.tabs.length) {
5165
+ throw new Error('invalid location');
5166
+ }
5167
+ this.tabContainer.insertBefore(tab.value.element, this.tabContainer.children[index]);
5168
+ this.tabs = [
5169
+ ...this.tabs.slice(0, index),
5170
+ tab,
5171
+ ...this.tabs.slice(index),
5172
+ ];
5173
+ if (this.selectedIndex < 0) {
5174
+ this.selectedIndex = index;
5175
+ }
5176
+ this.updateClassnames();
5177
+ }
5178
+ updateClassnames() {
5179
+ toggleClass(this._element, 'dv-single-tab', this.size === 1);
5180
+ }
5126
5181
  }
5127
5182
 
5128
- class DockviewUnhandledDragOverEvent {
5129
- get isAccepted() {
5130
- return this._isAccepted;
5131
- }
5183
+ class DockviewUnhandledDragOverEvent extends AcceptableEvent {
5132
5184
  constructor(nativeEvent, target, position, getData, group) {
5185
+ super();
5133
5186
  this.nativeEvent = nativeEvent;
5134
5187
  this.target = target;
5135
5188
  this.position = position;
5136
5189
  this.getData = getData;
5137
5190
  this.group = group;
5138
- this._isAccepted = false;
5139
- }
5140
- accept() {
5141
- this._isAccepted = true;
5142
5191
  }
5143
5192
  }
5144
- const PROPERTY_KEYS = (() => {
5193
+ const PROPERTY_KEYS_DOCKVIEW = (() => {
5145
5194
  /**
5146
5195
  * by readong the keys from an empty value object TypeScript will error
5147
5196
  * when we add or remove new properties to `DockviewOptions`
@@ -7641,10 +7690,6 @@ class DockviewComponent extends BaseGrid {
7641
7690
  this._api = new DockviewApi(this);
7642
7691
  this.updateWatermark();
7643
7692
  }
7644
- dispose() {
7645
- this.clear(); // explicitly clear the layout before cleaning up
7646
- super.dispose();
7647
- }
7648
7693
  setVisible(panel, visible) {
7649
7694
  switch (panel.api.location.type) {
7650
7695
  case 'grid':
@@ -7828,30 +7873,29 @@ class DockviewComponent extends BaseGrid {
7828
7873
  }
7829
7874
  }
7830
7875
  else if (this.getPanel(group.id)) {
7831
- const removedGroup = group;
7876
+ group.model.renderContainer =
7877
+ this.overlayRenderContainer;
7878
+ returnedGroup = group;
7832
7879
  if (floatingBox) {
7833
- this.addFloatingGroup(removedGroup, {
7880
+ this.addFloatingGroup(group, {
7834
7881
  height: floatingBox.height,
7835
7882
  width: floatingBox.width,
7836
7883
  position: floatingBox,
7837
7884
  });
7838
7885
  }
7839
7886
  else {
7840
- this.doRemoveGroup(removedGroup, {
7887
+ this.doRemoveGroup(group, {
7841
7888
  skipDispose: true,
7842
7889
  skipActive: true,
7843
7890
  skipPopoutReturn: true,
7844
7891
  });
7845
- removedGroup.model.renderContainer =
7846
- this.overlayRenderContainer;
7847
- removedGroup.model.location = { type: 'grid' };
7848
- returnedGroup = removedGroup;
7892
+ group.model.location = { type: 'grid' };
7849
7893
  this.movingLock(() => {
7850
7894
  // suppress group add events since the group already exists
7851
- this.doAddGroup(removedGroup, [0]);
7895
+ this.doAddGroup(group, [0]);
7852
7896
  });
7853
7897
  }
7854
- this.doSetGroupAndPanelActive(removedGroup);
7898
+ this.doSetGroupAndPanelActive(group);
7855
7899
  }
7856
7900
  }));
7857
7901
  this._popoutGroups.push(value);
@@ -8992,31 +9036,6 @@ class DockviewComponent extends BaseGrid {
8992
9036
  }
8993
9037
  }
8994
9038
 
8995
- function createComponent(id, componentName, components = {}, frameworkComponents = {}, createFrameworkComponent, fallback) {
8996
- const Component = typeof componentName === 'string'
8997
- ? components[componentName]
8998
- : undefined;
8999
- const FrameworkComponent = typeof componentName === 'string'
9000
- ? frameworkComponents[componentName]
9001
- : undefined;
9002
- if (Component && FrameworkComponent) {
9003
- throw new Error(`Cannot create '${id}'. component '${componentName}' registered as both a component and frameworkComponent`);
9004
- }
9005
- if (FrameworkComponent) {
9006
- if (!createFrameworkComponent) {
9007
- throw new Error(`Cannot create '${id}' for framework component '${componentName}'. you must register a frameworkPanelWrapper to use framework components`);
9008
- }
9009
- return createFrameworkComponent.createComponent(id, componentName, FrameworkComponent);
9010
- }
9011
- if (!Component) {
9012
- if (fallback) {
9013
- return fallback();
9014
- }
9015
- throw new Error(`Cannot create '${id}', no component '${componentName}' provided`);
9016
- }
9017
- return new Component(id, componentName);
9018
- }
9019
-
9020
9039
  class GridviewComponent extends BaseGrid {
9021
9040
  get orientation() {
9022
9041
  return this.gridview.orientation;
@@ -9034,10 +9053,13 @@ class GridviewComponent extends BaseGrid {
9034
9053
  this._deserializer = value;
9035
9054
  }
9036
9055
  constructor(parentElement, options) {
9056
+ var _a;
9037
9057
  super(parentElement, {
9038
- proportionalLayout: options.proportionalLayout,
9058
+ proportionalLayout: (_a = options.proportionalLayout) !== null && _a !== void 0 ? _a : true,
9039
9059
  orientation: options.orientation,
9040
- styles: options.styles,
9060
+ styles: options.hideBorders
9061
+ ? { separatorBorder: 'transparent' }
9062
+ : undefined,
9041
9063
  disableAutoResizing: options.disableAutoResizing,
9042
9064
  className: options.className,
9043
9065
  });
@@ -9057,12 +9079,6 @@ class GridviewComponent extends BaseGrid {
9057
9079
  }), this.onDidActiveChange((event) => {
9058
9080
  this._onDidActiveGroupChange.fire(event);
9059
9081
  }));
9060
- if (!this.options.components) {
9061
- this.options.components = {};
9062
- }
9063
- if (!this.options.frameworkComponents) {
9064
- this.options.frameworkComponents = {};
9065
- }
9066
9082
  }
9067
9083
  updateOptions(options) {
9068
9084
  super.updateOptions(options);
@@ -9112,14 +9128,11 @@ class GridviewComponent extends BaseGrid {
9112
9128
  const height = this.height;
9113
9129
  this.gridview.deserialize(grid, {
9114
9130
  fromJSON: (node) => {
9115
- var _a, _b;
9116
9131
  const { data } = node;
9117
- const view = createComponent(data.id, data.component, (_a = this.options.components) !== null && _a !== void 0 ? _a : {}, (_b = this.options.frameworkComponents) !== null && _b !== void 0 ? _b : {}, this.options.frameworkComponentFactory
9118
- ? {
9119
- createComponent: this.options.frameworkComponentFactory
9120
- .createComponent,
9121
- }
9122
- : undefined);
9132
+ const view = this.options.createComponent({
9133
+ id: data.id,
9134
+ name: data.component,
9135
+ });
9123
9136
  queue.push(() => view.init({
9124
9137
  params: data.params,
9125
9138
  minimumWidth: data.minimumWidth,
@@ -9197,7 +9210,7 @@ class GridviewComponent extends BaseGrid {
9197
9210
  this.doAddGroup(removedPanel, relativeLocation, options.size);
9198
9211
  }
9199
9212
  addPanel(options) {
9200
- var _a, _b, _c, _d, _e, _f;
9213
+ var _a, _b, _c, _d;
9201
9214
  let relativeLocation = (_a = options.location) !== null && _a !== void 0 ? _a : [0];
9202
9215
  if ((_b = options.position) === null || _b === void 0 ? void 0 : _b.referencePanel) {
9203
9216
  const referenceGroup = (_c = this._groups.get(options.position.referencePanel)) === null || _c === void 0 ? void 0 : _c.value;
@@ -9213,14 +9226,12 @@ class GridviewComponent extends BaseGrid {
9213
9226
  relativeLocation = getRelativeLocation(this.gridview.orientation, location, target);
9214
9227
  }
9215
9228
  }
9216
- const view = createComponent(options.id, options.component, (_d = this.options.components) !== null && _d !== void 0 ? _d : {}, (_e = this.options.frameworkComponents) !== null && _e !== void 0 ? _e : {}, this.options.frameworkComponentFactory
9217
- ? {
9218
- createComponent: this.options.frameworkComponentFactory
9219
- .createComponent,
9220
- }
9221
- : undefined);
9229
+ const view = this.options.createComponent({
9230
+ id: options.id,
9231
+ name: options.component,
9232
+ });
9222
9233
  view.init({
9223
- params: (_f = options.params) !== null && _f !== void 0 ? _f : {},
9234
+ params: (_d = options.params) !== null && _d !== void 0 ? _d : {},
9224
9235
  minimumWidth: options.minimumWidth,
9225
9236
  maximumWidth: options.maximumWidth,
9226
9237
  minimumHeight: options.minimumHeight,
@@ -9348,12 +9359,6 @@ class SplitviewComponent extends Resizable {
9348
9359
  this._classNames = new Classnames(this.element);
9349
9360
  this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9350
9361
  this._options = options;
9351
- if (!options.components) {
9352
- options.components = {};
9353
- }
9354
- if (!options.frameworkComponents) {
9355
- options.frameworkComponents = {};
9356
- }
9357
9362
  this.splitview = new Splitview(this.element, options);
9358
9363
  this.addDisposables(this._onDidAddView, this._onDidLayoutfromJSON, this._onDidRemoveView, this._onDidLayoutChange);
9359
9364
  }
@@ -9416,18 +9421,17 @@ class SplitviewComponent extends Resizable {
9416
9421
  return this.panels.find((view) => view.id === id);
9417
9422
  }
9418
9423
  addPanel(options) {
9419
- var _a, _b, _c;
9424
+ var _a;
9420
9425
  if (this._panels.has(options.id)) {
9421
9426
  throw new Error(`panel ${options.id} already exists`);
9422
9427
  }
9423
- const view = createComponent(options.id, options.component, (_a = this.options.components) !== null && _a !== void 0 ? _a : {}, (_b = this.options.frameworkComponents) !== null && _b !== void 0 ? _b : {}, this.options.frameworkWrapper
9424
- ? {
9425
- createComponent: this.options.frameworkWrapper.createComponent,
9426
- }
9427
- : undefined);
9428
+ const view = this.options.createComponent({
9429
+ id: options.id,
9430
+ name: options.component,
9431
+ });
9428
9432
  view.orientation = this.splitview.orientation;
9429
9433
  view.init({
9430
- params: (_c = options.params) !== null && _c !== void 0 ? _c : {},
9434
+ params: (_a = options.params) !== null && _a !== void 0 ? _a : {},
9431
9435
  minimumSize: options.minimumSize,
9432
9436
  maximumSize: options.maximumSize,
9433
9437
  snap: options.snap,
@@ -9489,17 +9493,14 @@ class SplitviewComponent extends Resizable {
9489
9493
  descriptor: {
9490
9494
  size,
9491
9495
  views: views.map((view) => {
9492
- var _a, _b;
9493
9496
  const data = view.data;
9494
9497
  if (this._panels.has(data.id)) {
9495
9498
  throw new Error(`panel ${data.id} already exists`);
9496
9499
  }
9497
- const panel = createComponent(data.id, data.component, (_a = this.options.components) !== null && _a !== void 0 ? _a : {}, (_b = this.options.frameworkComponents) !== null && _b !== void 0 ? _b : {}, this.options.frameworkWrapper
9498
- ? {
9499
- createComponent: this.options.frameworkWrapper
9500
- .createComponent,
9501
- }
9502
- : undefined);
9500
+ const panel = this.options.createComponent({
9501
+ id: data.id,
9502
+ name: data.component,
9503
+ });
9503
9504
  queue.push(() => {
9504
9505
  var _a;
9505
9506
  panel.init({
@@ -9682,16 +9683,12 @@ class PaneviewComponent extends Resizable {
9682
9683
  this.onDidAddView = this._onDidAddView.event;
9683
9684
  this._onDidRemoveView = new Emitter();
9684
9685
  this.onDidRemoveView = this._onDidRemoveView.event;
9685
- this.addDisposables(this._onDidLayoutChange, this._onDidLayoutfromJSON, this._onDidDrop, this._onDidAddView, this._onDidRemoveView);
9686
+ this._onUnhandledDragOverEvent = new Emitter();
9687
+ this.onUnhandledDragOverEvent = this._onUnhandledDragOverEvent.event;
9688
+ this.addDisposables(this._onDidLayoutChange, this._onDidLayoutfromJSON, this._onDidDrop, this._onDidAddView, this._onDidRemoveView, this._onUnhandledDragOverEvent);
9686
9689
  this._classNames = new Classnames(this.element);
9687
9690
  this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9688
9691
  this._options = options;
9689
- if (!options.components) {
9690
- options.components = {};
9691
- }
9692
- if (!options.frameworkComponents) {
9693
- options.frameworkComponents = {};
9694
- }
9695
9692
  this.paneview = new Paneview(this.element, {
9696
9693
  // only allow paneview in the vertical orientation for now
9697
9694
  orientation: Orientation.VERTICAL,
@@ -9716,22 +9713,19 @@ class PaneviewComponent extends Resizable {
9716
9713
  this._options = Object.assign(Object.assign({}, this.options), options);
9717
9714
  }
9718
9715
  addPanel(options) {
9719
- var _a, _b, _c, _d;
9720
- const body = createComponent(options.id, options.component, (_a = this.options.components) !== null && _a !== void 0 ? _a : {}, (_b = this.options.frameworkComponents) !== null && _b !== void 0 ? _b : {}, this.options.frameworkWrapper
9721
- ? {
9722
- createComponent: this.options.frameworkWrapper.body.createComponent,
9723
- }
9724
- : undefined);
9716
+ var _a;
9717
+ const body = this.options.createComponent({
9718
+ id: options.id,
9719
+ name: options.component,
9720
+ });
9725
9721
  let header;
9726
- if (options.headerComponent) {
9727
- header = createComponent(options.id, options.headerComponent, (_c = this.options.headerComponents) !== null && _c !== void 0 ? _c : {}, this.options.headerframeworkComponents, this.options.frameworkWrapper
9728
- ? {
9729
- createComponent: this.options.frameworkWrapper.header
9730
- .createComponent,
9731
- }
9732
- : undefined);
9722
+ if (options.headerComponent && this.options.createHeaderComponent) {
9723
+ header = this.options.createHeaderComponent({
9724
+ id: options.id,
9725
+ name: options.headerComponent,
9726
+ });
9733
9727
  }
9734
- else {
9728
+ if (!header) {
9735
9729
  header = new DefaultHeader();
9736
9730
  }
9737
9731
  const view = new PaneFramework({
@@ -9749,7 +9743,7 @@ class PaneviewComponent extends Resizable {
9749
9743
  const size = typeof options.size === 'number' ? options.size : Sizing.Distribute;
9750
9744
  const index = typeof options.index === 'number' ? options.index : undefined;
9751
9745
  view.init({
9752
- params: (_d = options.params) !== null && _d !== void 0 ? _d : {},
9746
+ params: (_a = options.params) !== null && _a !== void 0 ? _a : {},
9753
9747
  minimumBodySize: options.minimumBodySize,
9754
9748
  maximumBodySize: options.maximumBodySize,
9755
9749
  isExpanded: options.isExpanded,
@@ -9814,24 +9808,20 @@ class PaneviewComponent extends Resizable {
9814
9808
  descriptor: {
9815
9809
  size,
9816
9810
  views: views.map((view) => {
9817
- var _a, _b, _c, _d;
9818
9811
  const data = view.data;
9819
- const body = createComponent(data.id, data.component, (_a = this.options.components) !== null && _a !== void 0 ? _a : {}, (_b = this.options.frameworkComponents) !== null && _b !== void 0 ? _b : {}, this.options.frameworkWrapper
9820
- ? {
9821
- createComponent: this.options.frameworkWrapper.body
9822
- .createComponent,
9823
- }
9824
- : undefined);
9812
+ const body = this.options.createComponent({
9813
+ id: data.id,
9814
+ name: data.component,
9815
+ });
9825
9816
  let header;
9826
- if (data.headerComponent) {
9827
- header = createComponent(data.id, data.headerComponent, (_c = this.options.headerComponents) !== null && _c !== void 0 ? _c : {}, (_d = this.options.headerframeworkComponents) !== null && _d !== void 0 ? _d : {}, this.options.frameworkWrapper
9828
- ? {
9829
- createComponent: this.options.frameworkWrapper.header
9830
- .createComponent,
9831
- }
9832
- : undefined);
9817
+ if (data.headerComponent &&
9818
+ this.options.createHeaderComponent) {
9819
+ header = this.options.createHeaderComponent({
9820
+ id: data.id,
9821
+ name: data.headerComponent,
9822
+ });
9833
9823
  }
9834
- else {
9824
+ if (!header) {
9835
9825
  header = new DefaultHeader();
9836
9826
  }
9837
9827
  const panel = new PaneFramework({
@@ -9879,9 +9869,11 @@ class PaneviewComponent extends Resizable {
9879
9869
  this.paneview.dispose();
9880
9870
  }
9881
9871
  doAddPanel(panel) {
9882
- const disposable = panel.onDidDrop((event) => {
9872
+ const disposable = new CompositeDisposable(panel.onDidDrop((event) => {
9883
9873
  this._onDidDrop.fire(event);
9884
- });
9874
+ }), panel.onUnhandledDragOverEvent((event) => {
9875
+ this._onUnhandledDragOverEvent.fire(event);
9876
+ }));
9885
9877
  this._viewDisposables.set(panel.id, disposable);
9886
9878
  }
9887
9879
  doRemovePanel(panel) {
@@ -10164,7 +10156,7 @@ class ReactPanelContentPart {
10164
10156
  this._onDidBlur = new Emitter();
10165
10157
  this.onDidBlur = this._onDidBlur.event;
10166
10158
  this._element = document.createElement('div');
10167
- this._element.className = 'dockview-react-part';
10159
+ this._element.className = 'dv-react-part';
10168
10160
  this._element.style.height = '100%';
10169
10161
  this._element.style.width = '100%';
10170
10162
  }
@@ -10202,7 +10194,7 @@ class ReactPanelHeaderPart {
10202
10194
  this.component = component;
10203
10195
  this.reactPortalStore = reactPortalStore;
10204
10196
  this._element = document.createElement('div');
10205
- this._element.className = 'dockview-react-part';
10197
+ this._element.className = 'dv-react-part';
10206
10198
  this._element.style.height = '100%';
10207
10199
  this._element.style.width = '100%';
10208
10200
  }
@@ -10238,7 +10230,7 @@ class ReactWatermarkPart {
10238
10230
  this.component = component;
10239
10231
  this.reactPortalStore = reactPortalStore;
10240
10232
  this._element = document.createElement('div');
10241
- this._element.className = 'dockview-react-part';
10233
+ this._element.className = 'dv-react-part';
10242
10234
  this._element.style.height = '100%';
10243
10235
  this._element.style.width = '100%';
10244
10236
  }
@@ -10280,7 +10272,7 @@ class ReactHeaderActionsRendererPart {
10280
10272
  this._group = _group;
10281
10273
  this.mutableDisposable = new MutableDisposable();
10282
10274
  this._element = document.createElement('div');
10283
- this._element.className = 'dockview-react-part';
10275
+ this._element.className = 'dv-react-part';
10284
10276
  this._element.style.height = '100%';
10285
10277
  this._element.style.width = '100%';
10286
10278
  }
@@ -10339,8 +10331,8 @@ function createGroupControlElement(component, store) {
10339
10331
  : undefined;
10340
10332
  }
10341
10333
  const DEFAULT_REACT_TAB = 'props.defaultTabComponent';
10342
- function extractCoreOptions(props) {
10343
- const coreOptions = PROPERTY_KEYS.reduce((obj, key) => {
10334
+ function extractCoreOptions$3(props) {
10335
+ const coreOptions = PROPERTY_KEYS_DOCKVIEW.reduce((obj, key) => {
10344
10336
  if (key in props) {
10345
10337
  obj[key] = props[key];
10346
10338
  }
@@ -10356,7 +10348,7 @@ const DockviewReact = React.forwardRef((props, ref) => {
10356
10348
  const prevProps = React.useRef({});
10357
10349
  React.useEffect(() => {
10358
10350
  const changes = {};
10359
- PROPERTY_KEYS.forEach((propKey) => {
10351
+ PROPERTY_KEYS_DOCKVIEW.forEach((propKey) => {
10360
10352
  const key = propKey;
10361
10353
  const propValue = props[key];
10362
10354
  if (key in props && propValue !== prevProps.current[key]) {
@@ -10367,7 +10359,7 @@ const DockviewReact = React.forwardRef((props, ref) => {
10367
10359
  dockviewRef.current.updateOptions(changes);
10368
10360
  }
10369
10361
  prevProps.current = props;
10370
- }, PROPERTY_KEYS.map((key) => props[key]));
10362
+ }, PROPERTY_KEYS_DOCKVIEW.map((key) => props[key]));
10371
10363
  React.useEffect(() => {
10372
10364
  var _a;
10373
10365
  if (!domRef.current) {
@@ -10403,7 +10395,7 @@ const DockviewReact = React.forwardRef((props, ref) => {
10403
10395
  ? DEFAULT_REACT_TAB
10404
10396
  : undefined,
10405
10397
  };
10406
- const api = createDockview(domRef.current, Object.assign(Object.assign({}, extractCoreOptions(props)), frameworkOptions));
10398
+ const api = createDockview(domRef.current, Object.assign(Object.assign({}, extractCoreOptions$3(props)), frameworkOptions));
10407
10399
  const { clientWidth, clientHeight } = domRef.current;
10408
10400
  api.layout(clientWidth, clientHeight);
10409
10401
  if (props.onReady) {
@@ -10614,31 +10606,47 @@ class ReactPanelView extends SplitviewPanel {
10614
10606
  }
10615
10607
  }
10616
10608
 
10609
+ function extractCoreOptions$2(props) {
10610
+ const coreOptions = PROPERTY_KEYS_SPLITVIEW.reduce((obj, key) => {
10611
+ if (key in props) {
10612
+ obj[key] = props[key];
10613
+ }
10614
+ return obj;
10615
+ }, {});
10616
+ return coreOptions;
10617
+ }
10617
10618
  const SplitviewReact = React.forwardRef((props, ref) => {
10618
10619
  const domRef = React.useRef(null);
10619
10620
  const splitviewRef = React.useRef();
10620
10621
  const [portals, addPortal] = usePortalsLifecycle();
10621
10622
  React.useImperativeHandle(ref, () => domRef.current, []);
10623
+ const prevProps = React.useRef({});
10622
10624
  React.useEffect(() => {
10623
- var _a;
10624
- const api = createSplitview(domRef.current, {
10625
- disableAutoResizing: props.disableAutoResizing,
10626
- orientation: (_a = props.orientation) !== null && _a !== void 0 ? _a : Orientation.HORIZONTAL,
10627
- frameworkComponents: props.components,
10628
- frameworkWrapper: {
10629
- createComponent: (id, componentId, component) => {
10630
- return new ReactPanelView(id, componentId, component, {
10631
- addPortal,
10632
- });
10633
- },
10634
- },
10635
- proportionalLayout: typeof props.proportionalLayout === 'boolean'
10636
- ? props.proportionalLayout
10637
- : true,
10638
- styles: props.hideBorders
10639
- ? { separatorBorder: 'transparent' }
10640
- : undefined,
10625
+ const changes = {};
10626
+ PROPERTY_KEYS_SPLITVIEW.forEach((propKey) => {
10627
+ const key = propKey;
10628
+ const propValue = props[key];
10629
+ if (key in props && propValue !== prevProps.current[key]) {
10630
+ changes[key] = propValue;
10631
+ }
10641
10632
  });
10633
+ if (splitviewRef.current) {
10634
+ splitviewRef.current.updateOptions(changes);
10635
+ }
10636
+ prevProps.current = props;
10637
+ }, PROPERTY_KEYS_SPLITVIEW.map((key) => props[key]));
10638
+ React.useEffect(() => {
10639
+ if (!domRef.current) {
10640
+ return () => {
10641
+ // noop
10642
+ };
10643
+ }
10644
+ const frameworkOptions = {
10645
+ createComponent: (options) => {
10646
+ return new ReactPanelView(options.id, options.name, props.components[options.name], { addPortal });
10647
+ },
10648
+ };
10649
+ const api = createSplitview(domRef.current, Object.assign(Object.assign({}, extractCoreOptions$2(props)), frameworkOptions));
10642
10650
  const { clientWidth, clientHeight } = domRef.current;
10643
10651
  api.layout(clientWidth, clientHeight);
10644
10652
  if (props.onReady) {
@@ -10654,7 +10662,9 @@ const SplitviewReact = React.forwardRef((props, ref) => {
10654
10662
  return;
10655
10663
  }
10656
10664
  splitviewRef.current.updateOptions({
10657
- frameworkComponents: props.components,
10665
+ createComponent: (options) => {
10666
+ return new ReactPanelView(options.id, options.name, props.components[options.name], { addPortal });
10667
+ },
10658
10668
  });
10659
10669
  }, [props.components]);
10660
10670
  return (React.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
@@ -10679,36 +10689,47 @@ class ReactGridPanelView extends GridviewPanel {
10679
10689
  }
10680
10690
  }
10681
10691
 
10692
+ function extractCoreOptions$1(props) {
10693
+ const coreOptions = PROPERTY_KEYS_GRIDVIEW.reduce((obj, key) => {
10694
+ if (key in props) {
10695
+ obj[key] = props[key];
10696
+ }
10697
+ return obj;
10698
+ }, {});
10699
+ return coreOptions;
10700
+ }
10682
10701
  const GridviewReact = React.forwardRef((props, ref) => {
10683
10702
  const domRef = React.useRef(null);
10684
10703
  const gridviewRef = React.useRef();
10685
10704
  const [portals, addPortal] = usePortalsLifecycle();
10686
10705
  React.useImperativeHandle(ref, () => domRef.current, []);
10706
+ const prevProps = React.useRef({});
10707
+ React.useEffect(() => {
10708
+ const changes = {};
10709
+ PROPERTY_KEYS_GRIDVIEW.forEach((propKey) => {
10710
+ const key = propKey;
10711
+ const propValue = props[key];
10712
+ if (key in props && propValue !== prevProps.current[key]) {
10713
+ changes[key] = propValue;
10714
+ }
10715
+ });
10716
+ if (gridviewRef.current) {
10717
+ gridviewRef.current.updateOptions(changes);
10718
+ }
10719
+ prevProps.current = props;
10720
+ }, PROPERTY_KEYS_GRIDVIEW.map((key) => props[key]));
10687
10721
  React.useEffect(() => {
10688
- var _a;
10689
10722
  if (!domRef.current) {
10690
10723
  return () => {
10691
10724
  // noop
10692
10725
  };
10693
10726
  }
10694
- const api = createGridview(domRef.current, {
10695
- disableAutoResizing: props.disableAutoResizing,
10696
- proportionalLayout: typeof props.proportionalLayout === 'boolean'
10697
- ? props.proportionalLayout
10698
- : true,
10699
- orientation: (_a = props.orientation) !== null && _a !== void 0 ? _a : Orientation.HORIZONTAL,
10700
- frameworkComponents: props.components,
10701
- frameworkComponentFactory: {
10702
- createComponent: (id, componentId, component) => {
10703
- return new ReactGridPanelView(id, componentId, component, {
10704
- addPortal,
10705
- });
10706
- },
10727
+ const frameworkOptions = {
10728
+ createComponent: (options) => {
10729
+ return new ReactGridPanelView(options.id, options.name, props.components[options.name], { addPortal });
10707
10730
  },
10708
- styles: props.hideBorders
10709
- ? { separatorBorder: 'transparent' }
10710
- : undefined,
10711
- });
10731
+ };
10732
+ const api = createGridview(domRef.current, Object.assign(Object.assign({}, extractCoreOptions$1(props)), frameworkOptions));
10712
10733
  const { clientWidth, clientHeight } = domRef.current;
10713
10734
  api.layout(clientWidth, clientHeight);
10714
10735
  if (props.onReady) {
@@ -10724,7 +10745,9 @@ const GridviewReact = React.forwardRef((props, ref) => {
10724
10745
  return;
10725
10746
  }
10726
10747
  gridviewRef.current.updateOptions({
10727
- frameworkComponents: props.components,
10748
+ createComponent: (options) => {
10749
+ return new ReactGridPanelView(options.id, options.name, props.components[options.name], { addPortal });
10750
+ },
10728
10751
  });
10729
10752
  }, [props.components]);
10730
10753
  return (React.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
@@ -10766,32 +10789,52 @@ class PanePanelSection {
10766
10789
  }
10767
10790
  }
10768
10791
 
10792
+ function extractCoreOptions(props) {
10793
+ const coreOptions = PROPERTY_KEYS_PANEVIEW.reduce((obj, key) => {
10794
+ if (key in props) {
10795
+ obj[key] = props[key];
10796
+ }
10797
+ return obj;
10798
+ }, {});
10799
+ return coreOptions;
10800
+ }
10769
10801
  const PaneviewReact = React.forwardRef((props, ref) => {
10770
10802
  const domRef = React.useRef(null);
10771
10803
  const paneviewRef = React.useRef();
10772
10804
  const [portals, addPortal] = usePortalsLifecycle();
10773
10805
  React.useImperativeHandle(ref, () => domRef.current, []);
10806
+ const prevProps = React.useRef({});
10774
10807
  React.useEffect(() => {
10775
- const createComponent = (id, _componentId, component) => new PanePanelSection(id, component, {
10776
- addPortal,
10808
+ const changes = {};
10809
+ PROPERTY_KEYS_PANEVIEW.forEach((propKey) => {
10810
+ const key = propKey;
10811
+ const propValue = props[key];
10812
+ if (key in props && propValue !== prevProps.current[key]) {
10813
+ changes[key] = propValue;
10814
+ }
10777
10815
  });
10778
- const api = createPaneview(domRef.current, {
10779
- disableAutoResizing: props.disableAutoResizing,
10780
- frameworkComponents: props.components,
10781
- components: {},
10782
- headerComponents: {},
10783
- disableDnd: props.disableDnd,
10784
- headerframeworkComponents: props.headerComponents,
10785
- frameworkWrapper: {
10786
- header: {
10787
- createComponent,
10788
- },
10789
- body: {
10790
- createComponent,
10791
- },
10816
+ if (paneviewRef.current) {
10817
+ paneviewRef.current.updateOptions(changes);
10818
+ }
10819
+ prevProps.current = props;
10820
+ }, PROPERTY_KEYS_PANEVIEW.map((key) => props[key]));
10821
+ React.useEffect(() => {
10822
+ var _a;
10823
+ if (!domRef.current) {
10824
+ return () => {
10825
+ // noop
10826
+ };
10827
+ }
10828
+ const headerComponents = (_a = props.headerComponents) !== null && _a !== void 0 ? _a : {};
10829
+ const frameworkOptions = {
10830
+ createComponent: (options) => {
10831
+ return new PanePanelSection(options.id, props.components[options.name], { addPortal });
10792
10832
  },
10793
- showDndOverlay: props.showDndOverlay,
10794
- });
10833
+ createHeaderComponent: (options) => {
10834
+ return new PanePanelSection(options.id, headerComponents[options.name], { addPortal });
10835
+ },
10836
+ };
10837
+ const api = createPaneview(domRef.current, Object.assign(Object.assign({}, extractCoreOptions(props)), frameworkOptions));
10795
10838
  const { clientWidth, clientHeight } = domRef.current;
10796
10839
  api.layout(clientWidth, clientHeight);
10797
10840
  if (props.onReady) {
@@ -10807,44 +10850,41 @@ const PaneviewReact = React.forwardRef((props, ref) => {
10807
10850
  return;
10808
10851
  }
10809
10852
  paneviewRef.current.updateOptions({
10810
- frameworkComponents: props.components,
10853
+ createComponent: (options) => {
10854
+ return new PanePanelSection(options.id, props.components[options.name], { addPortal });
10855
+ },
10811
10856
  });
10812
10857
  }, [props.components]);
10813
10858
  React.useEffect(() => {
10859
+ var _a;
10814
10860
  if (!paneviewRef.current) {
10815
10861
  return;
10816
10862
  }
10863
+ const headerComponents = (_a = props.headerComponents) !== null && _a !== void 0 ? _a : {};
10817
10864
  paneviewRef.current.updateOptions({
10818
- headerframeworkComponents: props.headerComponents,
10865
+ createHeaderComponent: (options) => {
10866
+ return new PanePanelSection(options.id, headerComponents[options.name], { addPortal });
10867
+ },
10819
10868
  });
10820
10869
  }, [props.headerComponents]);
10821
10870
  React.useEffect(() => {
10822
10871
  if (!paneviewRef.current) {
10823
10872
  return () => {
10824
- //
10873
+ // noop
10825
10874
  };
10826
10875
  }
10827
- const api = paneviewRef.current;
10828
- const disposable = api.onDidDrop((event) => {
10876
+ const disposable = paneviewRef.current.onDidDrop((event) => {
10829
10877
  if (props.onDidDrop) {
10830
- props.onDidDrop(Object.assign(Object.assign({}, event), { api }));
10878
+ props.onDidDrop(event);
10831
10879
  }
10832
10880
  });
10833
10881
  return () => {
10834
10882
  disposable.dispose();
10835
10883
  };
10836
10884
  }, [props.onDidDrop]);
10837
- React.useEffect(() => {
10838
- if (!paneviewRef.current) {
10839
- return;
10840
- }
10841
- paneviewRef.current.updateOptions({
10842
- showDndOverlay: props.showDndOverlay,
10843
- });
10844
- }, [props.showDndOverlay]);
10845
10885
  return (React.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
10846
10886
  });
10847
10887
  PaneviewReact.displayName = 'PaneviewComponent';
10848
10888
 
10849
- export { BaseGrid, ContentContainer, DefaultDockviewDeserialzier, DefaultTab, DockviewApi, DockviewComponent, CompositeDisposable as DockviewCompositeDisposable, DockviewDefaultTab, DockviewDidDropEvent, Disposable as DockviewDisposable, Emitter as DockviewEmitter, Event as DockviewEvent, DockviewGroupPanel, DockviewGroupPanelModel, MutableDisposable as DockviewMutableDisposable, DockviewPanel, DockviewReact, DockviewUnhandledDragOverEvent, DockviewWillDropEvent, DraggablePaneviewPanel, Gridview, GridviewApi, GridviewComponent, GridviewPanel, GridviewReact, LayoutPriority, Orientation, PROPERTY_KEYS, PaneFramework, PaneTransfer, PanelTransfer, Paneview, PaneviewApi, PaneviewComponent, PaneviewPanel, PaneviewReact, ReactPart, ReactPartContext, SashState, Sizing, Splitview, SplitviewApi, SplitviewComponent, SplitviewPanel, SplitviewReact, Tab, WillShowOverlayLocationEvent, createDockview, createGridview, createPaneview, createSplitview, directionToPosition, getDirectionOrientation, getGridLocation, getLocationOrientation, getPaneData, getPanelData, getRelativeLocation, indexInParent, isGridBranchNode, isGroupOptionsWithGroup, isGroupOptionsWithPanel, isPanelOptionsWithGroup, isPanelOptionsWithPanel, isReactComponent, orthogonal, positionToDirection, toTarget, usePortalsLifecycle };
10889
+ export { BaseGrid, ContentContainer, DefaultDockviewDeserialzier, DefaultTab, DockviewApi, DockviewComponent, CompositeDisposable as DockviewCompositeDisposable, DockviewDefaultTab, DockviewDidDropEvent, Disposable as DockviewDisposable, Emitter as DockviewEmitter, Event as DockviewEvent, DockviewGroupPanel, DockviewGroupPanelModel, MutableDisposable as DockviewMutableDisposable, DockviewPanel, DockviewReact, DockviewUnhandledDragOverEvent, DockviewWillDropEvent, DraggablePaneviewPanel, Gridview, GridviewApi, GridviewComponent, GridviewPanel, GridviewReact, LayoutPriority, Orientation, PROPERTY_KEYS_DOCKVIEW, PROPERTY_KEYS_GRIDVIEW, PROPERTY_KEYS_PANEVIEW, PROPERTY_KEYS_SPLITVIEW, PaneFramework, PaneTransfer, PanelTransfer, Paneview, PaneviewApi, PaneviewComponent, PaneviewPanel, PaneviewReact, PaneviewUnhandledDragOverEvent, ReactPart, ReactPartContext, SashState, Sizing, Splitview, SplitviewApi, SplitviewComponent, SplitviewPanel, SplitviewReact, Tab, WillShowOverlayLocationEvent, createDockview, createGridview, createPaneview, createSplitview, directionToPosition, getDirectionOrientation, getGridLocation, getLocationOrientation, getPaneData, getPanelData, getRelativeLocation, indexInParent, isGridBranchNode, isGroupOptionsWithGroup, isGroupOptionsWithPanel, isPanelOptionsWithGroup, isPanelOptionsWithPanel, isReactComponent, orthogonal, positionToDirection, toTarget, usePortalsLifecycle };
10850
10890
  //# sourceMappingURL=dockview.esm.js.map