dockview-react 3.0.0 → 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.0
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,7 +2803,7 @@
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
2808
  super(document.createElement('div'), options.disableAutoResizing);
2809
2809
  this._id = nextLayoutId$1.next();
@@ -2824,7 +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
- parentElement.appendChild(this.element);
2827
+ // the container is owned by the third-party, do not modify/delete it
2828
+ container.appendChild(this.element);
2828
2829
  this.gridview = new Gridview(!!options.proportionalLayout, options.styles, options.orientation, options.locked, options.margin);
2829
2830
  this.gridview.locked = !!options.locked;
2830
2831
  this.element.appendChild(this.gridview.element);
@@ -7521,9 +7522,9 @@
7521
7522
  get floatingGroups() {
7522
7523
  return this._floatingGroups;
7523
7524
  }
7524
- constructor(parentElement, options) {
7525
+ constructor(container, options) {
7525
7526
  var _a;
7526
- super(parentElement, {
7527
+ super(container, {
7527
7528
  proportionalLayout: true,
7528
7529
  orientation: exports.Orientation.HORIZONTAL,
7529
7530
  styles: options.hideBorders
@@ -7879,6 +7880,16 @@
7879
7880
  group.model.renderContainer =
7880
7881
  this.overlayRenderContainer;
7881
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
+ }
7882
7893
  if (floatingBox) {
7883
7894
  this.addFloatingGroup(group, {
7884
7895
  height: floatingBox.height,
@@ -9055,9 +9066,9 @@
9055
9066
  set deserializer(value) {
9056
9067
  this._deserializer = value;
9057
9068
  }
9058
- constructor(parentElement, options) {
9069
+ constructor(container, options) {
9059
9070
  var _a;
9060
- super(parentElement, {
9071
+ super(container, {
9061
9072
  proportionalLayout: (_a = options.proportionalLayout) !== null && _a !== void 0 ? _a : true,
9062
9073
  orientation: options.orientation,
9063
9074
  styles: options.hideBorders
@@ -9346,9 +9357,9 @@
9346
9357
  ? this.splitview.size
9347
9358
  : this.splitview.orthogonalSize;
9348
9359
  }
9349
- constructor(parentElement, options) {
9360
+ constructor(container, options) {
9350
9361
  var _a;
9351
- super(parentElement, options.disableAutoResizing);
9362
+ super(document.createElement('div'), options.disableAutoResizing);
9352
9363
  this._splitviewChangeDisposable = new MutableDisposable();
9353
9364
  this._panels = new Map();
9354
9365
  this._onDidLayoutfromJSON = new Emitter();
@@ -9359,8 +9370,12 @@
9359
9370
  this.onDidRemoveView = this._onDidRemoveView.event;
9360
9371
  this._onDidLayoutChange = new Emitter();
9361
9372
  this.onDidLayoutChange = this._onDidLayoutChange.event;
9373
+ this.element.style.height = '100%';
9374
+ this.element.style.width = '100%';
9362
9375
  this._classNames = new Classnames(this.element);
9363
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);
9364
9379
  this._options = options;
9365
9380
  this.splitview = new Splitview(this.element, options);
9366
9381
  this.addDisposables(this._onDidAddView, this._onDidLayoutfromJSON, this._onDidRemoveView, this._onDidLayoutChange);
@@ -9670,9 +9685,9 @@
9670
9685
  get options() {
9671
9686
  return this._options;
9672
9687
  }
9673
- constructor(parentElement, options) {
9688
+ constructor(container, options) {
9674
9689
  var _a;
9675
- super(parentElement, options.disableAutoResizing);
9690
+ super(document.createElement('div'), options.disableAutoResizing);
9676
9691
  this._id = nextLayoutId.next();
9677
9692
  this._disposable = new MutableDisposable();
9678
9693
  this._viewDisposables = new Map();
@@ -9688,9 +9703,13 @@
9688
9703
  this.onDidRemoveView = this._onDidRemoveView.event;
9689
9704
  this._onUnhandledDragOverEvent = new Emitter();
9690
9705
  this.onUnhandledDragOverEvent = this._onUnhandledDragOverEvent.event;
9706
+ this.element.style.height = '100%';
9707
+ this.element.style.width = '100%';
9691
9708
  this.addDisposables(this._onDidLayoutChange, this._onDidLayoutfromJSON, this._onDidDrop, this._onDidAddView, this._onDidRemoveView, this._onUnhandledDragOverEvent);
9692
9709
  this._classNames = new Classnames(this.element);
9693
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);
9694
9713
  this._options = options;
9695
9714
  this.paneview = new Paneview(this.element, {
9696
9715
  // only allow paneview in the vertical orientation for now
@@ -10510,7 +10529,7 @@
10510
10529
  createPrefixHeaderActionComponent: createGroupControlElement(props.prefixHeaderActionsComponent, { addPortal }),
10511
10530
  });
10512
10531
  }, [props.prefixHeaderActionsComponent]);
10513
- 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));
10514
10533
  });
10515
10534
  DockviewReact.displayName = 'DockviewComponent';
10516
10535
 
@@ -10647,7 +10666,7 @@
10647
10666
  },
10648
10667
  });
10649
10668
  }, [props.components]);
10650
- 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));
10651
10670
  });
10652
10671
  SplitviewReact.displayName = 'SplitviewComponent';
10653
10672
 
@@ -10730,7 +10749,7 @@
10730
10749
  },
10731
10750
  });
10732
10751
  }, [props.components]);
10733
- 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));
10734
10753
  });
10735
10754
  GridviewReact.displayName = 'GridviewComponent';
10736
10755
 
@@ -10862,7 +10881,7 @@
10862
10881
  disposable.dispose();
10863
10882
  };
10864
10883
  }, [props.onDidDrop]);
10865
- 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));
10866
10885
  });
10867
10886
  PaneviewReact.displayName = 'PaneviewComponent';
10868
10887