dockview-react 3.0.1 → 3.0.2

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.
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * dockview-react
3
- * @version 3.0.1
3
+ * @version 3.0.2
4
4
  * @link https://github.com/mathuo/dockview
5
5
  * @license MIT
6
6
  */
@@ -884,7 +884,7 @@
884
884
  this._margin = value;
885
885
  }
886
886
  constructor(container, options) {
887
- var _a;
887
+ var _a, _b;
888
888
  this.container = container;
889
889
  this.viewItems = [];
890
890
  this.sashes = [];
@@ -982,9 +982,9 @@
982
982
  //
983
983
  return delta;
984
984
  };
985
- this._orientation = options.orientation;
985
+ this._orientation = (_a = options.orientation) !== null && _a !== void 0 ? _a : exports.Orientation.VERTICAL;
986
986
  this.element = this.createContainer();
987
- this.margin = (_a = options.margin) !== null && _a !== void 0 ? _a : 0;
987
+ this.margin = (_b = options.margin) !== null && _b !== void 0 ? _b : 0;
988
988
  this.proportionalLayout =
989
989
  options.proportionalLayout === undefined
990
990
  ? true
@@ -2803,9 +2803,9 @@
2803
2803
  set locked(value) {
2804
2804
  this.gridview.locked = value;
2805
2805
  }
2806
- constructor(parentElement, options) {
2806
+ constructor(container, options) {
2807
2807
  var _a;
2808
- super(parentElement, options.disableAutoResizing);
2808
+ super(document.createElement('div'), options.disableAutoResizing);
2809
2809
  this._id = nextLayoutId$1.next();
2810
2810
  this._groups = new Map();
2811
2811
  this._onDidRemove = new Emitter();
@@ -2824,6 +2824,8 @@
2824
2824
  this.element.style.width = '100%';
2825
2825
  this._classNames = new Classnames(this.element);
2826
2826
  this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
2827
+ // the container is owned by the third-party, do not modify/delete it
2828
+ container.appendChild(this.element);
2827
2829
  this.gridview = new Gridview(!!options.proportionalLayout, options.styles, options.orientation, options.locked, options.margin);
2828
2830
  this.gridview.locked = !!options.locked;
2829
2831
  this.element.appendChild(this.gridview.element);
@@ -7520,9 +7522,9 @@
7520
7522
  get floatingGroups() {
7521
7523
  return this._floatingGroups;
7522
7524
  }
7523
- constructor(parentElement, options) {
7525
+ constructor(container, options) {
7524
7526
  var _a;
7525
- super(parentElement, {
7527
+ super(container, {
7526
7528
  proportionalLayout: true,
7527
7529
  orientation: exports.Orientation.HORIZONTAL,
7528
7530
  styles: options.hideBorders
@@ -7878,6 +7880,16 @@
7878
7880
  group.model.renderContainer =
7879
7881
  this.overlayRenderContainer;
7880
7882
  returnedGroup = group;
7883
+ const alreadyRemoved = !this._popoutGroups.find((p) => p.popoutGroup === group);
7884
+ if (alreadyRemoved) {
7885
+ /**
7886
+ * If this popout group was explicitly removed then we shouldn't run the additional
7887
+ * steps. To tell if the running of this disposable is the result of this popout group
7888
+ * being explicitly removed we can check if this popout group is still referenced in
7889
+ * the `this._popoutGroups` list.
7890
+ */
7891
+ return;
7892
+ }
7881
7893
  if (floatingBox) {
7882
7894
  this.addFloatingGroup(group, {
7883
7895
  height: floatingBox.height,
@@ -9054,9 +9066,9 @@
9054
9066
  set deserializer(value) {
9055
9067
  this._deserializer = value;
9056
9068
  }
9057
- constructor(parentElement, options) {
9069
+ constructor(container, options) {
9058
9070
  var _a;
9059
- super(parentElement, {
9071
+ super(container, {
9060
9072
  proportionalLayout: (_a = options.proportionalLayout) !== null && _a !== void 0 ? _a : true,
9061
9073
  orientation: options.orientation,
9062
9074
  styles: options.hideBorders
@@ -9345,9 +9357,9 @@
9345
9357
  ? this.splitview.size
9346
9358
  : this.splitview.orthogonalSize;
9347
9359
  }
9348
- constructor(parentElement, options) {
9360
+ constructor(container, options) {
9349
9361
  var _a;
9350
- super(parentElement, options.disableAutoResizing);
9362
+ super(document.createElement('div'), options.disableAutoResizing);
9351
9363
  this._splitviewChangeDisposable = new MutableDisposable();
9352
9364
  this._panels = new Map();
9353
9365
  this._onDidLayoutfromJSON = new Emitter();
@@ -9358,8 +9370,12 @@
9358
9370
  this.onDidRemoveView = this._onDidRemoveView.event;
9359
9371
  this._onDidLayoutChange = new Emitter();
9360
9372
  this.onDidLayoutChange = this._onDidLayoutChange.event;
9373
+ this.element.style.height = '100%';
9374
+ this.element.style.width = '100%';
9361
9375
  this._classNames = new Classnames(this.element);
9362
9376
  this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9377
+ // the container is owned by the third-party, do not modify/delete it
9378
+ container.appendChild(this.element);
9363
9379
  this._options = options;
9364
9380
  this.splitview = new Splitview(this.element, options);
9365
9381
  this.addDisposables(this._onDidAddView, this._onDidLayoutfromJSON, this._onDidRemoveView, this._onDidLayoutChange);
@@ -9669,9 +9685,9 @@
9669
9685
  get options() {
9670
9686
  return this._options;
9671
9687
  }
9672
- constructor(parentElement, options) {
9688
+ constructor(container, options) {
9673
9689
  var _a;
9674
- super(parentElement, options.disableAutoResizing);
9690
+ super(document.createElement('div'), options.disableAutoResizing);
9675
9691
  this._id = nextLayoutId.next();
9676
9692
  this._disposable = new MutableDisposable();
9677
9693
  this._viewDisposables = new Map();
@@ -9687,9 +9703,13 @@
9687
9703
  this.onDidRemoveView = this._onDidRemoveView.event;
9688
9704
  this._onUnhandledDragOverEvent = new Emitter();
9689
9705
  this.onUnhandledDragOverEvent = this._onUnhandledDragOverEvent.event;
9706
+ this.element.style.height = '100%';
9707
+ this.element.style.width = '100%';
9690
9708
  this.addDisposables(this._onDidLayoutChange, this._onDidLayoutfromJSON, this._onDidDrop, this._onDidAddView, this._onDidRemoveView, this._onUnhandledDragOverEvent);
9691
9709
  this._classNames = new Classnames(this.element);
9692
9710
  this._classNames.setClassNames((_a = options.className) !== null && _a !== void 0 ? _a : '');
9711
+ // the container is owned by the third-party, do not modify/delete it
9712
+ container.appendChild(this.element);
9693
9713
  this._options = options;
9694
9714
  this.paneview = new Paneview(this.element, {
9695
9715
  // only allow paneview in the vertical orientation for now
@@ -10509,7 +10529,7 @@
10509
10529
  createPrefixHeaderActionComponent: createGroupControlElement(props.prefixHeaderActionsComponent, { addPortal }),
10510
10530
  });
10511
10531
  }, [props.prefixHeaderActionsComponent]);
10512
- return (React.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
10532
+ return (React.createElement("div", { style: { height: '100%', width: '100%' }, ref: domRef }, portals));
10513
10533
  });
10514
10534
  DockviewReact.displayName = 'DockviewComponent';
10515
10535
 
@@ -10646,7 +10666,7 @@
10646
10666
  },
10647
10667
  });
10648
10668
  }, [props.components]);
10649
- return (React.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
10669
+ return (React.createElement("div", { style: { height: '100%', width: '100%' }, ref: domRef }, portals));
10650
10670
  });
10651
10671
  SplitviewReact.displayName = 'SplitviewComponent';
10652
10672
 
@@ -10729,7 +10749,7 @@
10729
10749
  },
10730
10750
  });
10731
10751
  }, [props.components]);
10732
- return (React.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
10752
+ return (React.createElement("div", { style: { height: '100%', width: '100%' }, ref: domRef }, portals));
10733
10753
  });
10734
10754
  GridviewReact.displayName = 'GridviewComponent';
10735
10755
 
@@ -10861,7 +10881,7 @@
10861
10881
  disposable.dispose();
10862
10882
  };
10863
10883
  }, [props.onDidDrop]);
10864
- return (React.createElement("div", { className: props.className, style: { height: '100%', width: '100%' }, ref: domRef }, portals));
10884
+ return (React.createElement("div", { style: { height: '100%', width: '100%' }, ref: domRef }, portals));
10865
10885
  });
10866
10886
  PaneviewReact.displayName = 'PaneviewComponent';
10867
10887