dockview-core 1.7.4 → 1.7.5

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 (36) hide show
  1. package/dist/cjs/dnd/abstractDragHandler.d.ts +2 -2
  2. package/dist/cjs/dnd/abstractDragHandler.d.ts.map +1 -1
  3. package/dist/cjs/dnd/abstractDragHandler.js +28 -24
  4. package/dist/cjs/dnd/abstractDragHandler.js.map +1 -1
  5. package/dist/cjs/events.js +2 -2
  6. package/dist/cjs/events.js.map +1 -1
  7. package/dist/cjs/gridview/gridview.d.ts.map +1 -1
  8. package/dist/cjs/gridview/gridview.js +11 -17
  9. package/dist/cjs/gridview/gridview.js.map +1 -1
  10. package/dist/cjs/splitview/splitview.d.ts.map +1 -1
  11. package/dist/cjs/splitview/splitview.js +0 -2
  12. package/dist/cjs/splitview/splitview.js.map +1 -1
  13. package/dist/dockview-core.amd.js +27 -31
  14. package/dist/dockview-core.amd.min.js +2 -2
  15. package/dist/dockview-core.amd.min.noStyle.js +2 -2
  16. package/dist/dockview-core.amd.noStyle.js +27 -31
  17. package/dist/dockview-core.cjs.js +27 -31
  18. package/dist/dockview-core.esm.js +27 -31
  19. package/dist/dockview-core.esm.min.js +2 -2
  20. package/dist/dockview-core.js +27 -31
  21. package/dist/dockview-core.min.js +2 -2
  22. package/dist/dockview-core.min.noStyle.js +2 -2
  23. package/dist/dockview-core.noStyle.js +27 -31
  24. package/dist/esm/dnd/abstractDragHandler.d.ts +2 -2
  25. package/dist/esm/dnd/abstractDragHandler.d.ts.map +1 -1
  26. package/dist/esm/dnd/abstractDragHandler.js +15 -11
  27. package/dist/esm/dnd/abstractDragHandler.js.map +1 -1
  28. package/dist/esm/events.js +2 -2
  29. package/dist/esm/events.js.map +1 -1
  30. package/dist/esm/gridview/gridview.d.ts.map +1 -1
  31. package/dist/esm/gridview/gridview.js +9 -15
  32. package/dist/esm/gridview/gridview.js.map +1 -1
  33. package/dist/esm/splitview/splitview.d.ts.map +1 -1
  34. package/dist/esm/splitview/splitview.js +0 -2
  35. package/dist/esm/splitview/splitview.js.map +1 -1
  36. package/package.json +2 -2
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * dockview-core
3
- * @version 1.7.4
3
+ * @version 1.7.5
4
4
  * @link https://github.com/mathuo/dockview
5
5
  * @license MIT
6
6
  */
@@ -231,7 +231,7 @@
231
231
  element.addEventListener(type, listener, options);
232
232
  return {
233
233
  dispose: () => {
234
- element.removeEventListener(type, listener);
234
+ element.removeEventListener(type, listener, options);
235
235
  },
236
236
  };
237
237
  }
@@ -239,7 +239,7 @@
239
239
  element.addEventListener(type, listener, options);
240
240
  return {
241
241
  dispose: () => {
242
- element.removeEventListener(type, listener);
242
+ element.removeEventListener(type, listener, options);
243
243
  },
244
244
  };
245
245
  }
@@ -1003,12 +1003,10 @@
1003
1003
  this.saveProportions();
1004
1004
  document.removeEventListener('mousemove', mousemove);
1005
1005
  document.removeEventListener('mouseup', end);
1006
- document.removeEventListener('mouseend', end);
1007
1006
  this._onDidSashEnd.fire(undefined);
1008
1007
  };
1009
1008
  document.addEventListener('mousemove', mousemove);
1010
1009
  document.addEventListener('mouseup', end);
1011
- document.addEventListener('mouseend', end);
1012
1010
  };
1013
1011
  sash.addEventListener('mousedown', onStart);
1014
1012
  const sashItem = {
@@ -2111,36 +2109,30 @@
2111
2109
  if (!(node instanceof LeafNode)) {
2112
2110
  throw new Error('Invalid location');
2113
2111
  }
2114
- const view = node.view;
2115
- node.dispose(); // dispose of node
2116
- const child = parent.removeChild(index, sizing);
2117
- child.dispose();
2112
+ parent.removeChild(index, sizing);
2118
2113
  if (parent.children.length === 0) {
2119
- return view;
2114
+ return node.view;
2120
2115
  }
2121
2116
  if (parent.children.length > 1) {
2122
- return view;
2117
+ return node.view;
2123
2118
  }
2124
2119
  const sibling = parent.children[0];
2125
2120
  if (pathToParent.length === 0) {
2126
2121
  // parent is root
2127
2122
  if (sibling instanceof LeafNode) {
2128
- return view;
2123
+ return node.view;
2129
2124
  }
2130
2125
  // we must promote sibling to be the new root
2131
- const child = parent.removeChild(0, sizing);
2132
- child.dispose();
2126
+ parent.removeChild(0, sizing);
2133
2127
  this.root = sibling;
2134
- return view;
2128
+ return node.view;
2135
2129
  }
2136
2130
  const [grandParent, ..._] = [...pathToParent].reverse();
2137
2131
  const [parentIndex, ...__] = [...rest].reverse();
2138
2132
  const isSiblingVisible = parent.isChildVisible(0);
2139
- const childNode = parent.removeChild(0, sizing);
2140
- childNode.dispose();
2133
+ parent.removeChild(0, sizing);
2141
2134
  const sizes = grandParent.children.map((_size, i) => grandParent.getChildSize(i));
2142
- const parentNode = grandParent.removeChild(parentIndex, sizing);
2143
- parentNode.dispose();
2135
+ grandParent.removeChild(parentIndex, sizing);
2144
2136
  if (sibling instanceof BranchNode) {
2145
2137
  sizes.splice(parentIndex, 1, ...sibling.children.map((c) => c.size));
2146
2138
  for (let i = 0; i < sibling.children.length; i++) {
@@ -2158,7 +2150,7 @@
2158
2150
  for (let i = 0; i < sizes.length; i++) {
2159
2151
  grandParent.resizeChild(i, sizes[i]);
2160
2152
  }
2161
- return view;
2153
+ return node.view;
2162
2154
  }
2163
2155
  layout(width, height) {
2164
2156
  const [size, orthogonalSize] = this.root.orientation === exports.Orientation.HORIZONTAL
@@ -2871,25 +2863,32 @@
2871
2863
  constructor(el) {
2872
2864
  super();
2873
2865
  this.el = el;
2874
- this.disposable = new MutableDisposable();
2866
+ this.dataDisposable = new MutableDisposable();
2867
+ this.pointerEventsDisposable = new MutableDisposable();
2875
2868
  this._onDragStart = new Emitter();
2876
2869
  this.onDragStart = this._onDragStart.event;
2877
- this.iframes = [];
2878
- this.addDisposables(this._onDragStart);
2870
+ this.addDisposables(this._onDragStart, this.dataDisposable, this.pointerEventsDisposable);
2879
2871
  this.configure();
2880
2872
  }
2881
2873
  configure() {
2882
2874
  this.addDisposables(this._onDragStart, addDisposableListener(this.el, 'dragstart', (event) => {
2883
- this.iframes = [
2875
+ const iframes = [
2884
2876
  ...getElementsByTagName('iframe'),
2885
2877
  ...getElementsByTagName('webview'),
2886
2878
  ];
2887
- for (const iframe of this.iframes) {
2879
+ this.pointerEventsDisposable.value = {
2880
+ dispose: () => {
2881
+ for (const iframe of iframes) {
2882
+ iframe.style.pointerEvents = 'auto';
2883
+ }
2884
+ },
2885
+ };
2886
+ for (const iframe of iframes) {
2888
2887
  iframe.style.pointerEvents = 'none';
2889
2888
  }
2890
2889
  this.el.classList.add('dv-dragged');
2891
2890
  setTimeout(() => this.el.classList.remove('dv-dragged'), 0);
2892
- this.disposable.value = this.getData(event.dataTransfer);
2891
+ this.dataDisposable.value = this.getData(event.dataTransfer);
2893
2892
  if (event.dataTransfer) {
2894
2893
  event.dataTransfer.effectAllowed = 'move';
2895
2894
  /**
@@ -2904,11 +2903,8 @@
2904
2903
  event.dataTransfer.setData('text/plain', '__dockview_internal_drag_event__');
2905
2904
  }
2906
2905
  }), addDisposableListener(this.el, 'dragend', () => {
2907
- for (const iframe of this.iframes) {
2908
- iframe.style.pointerEvents = 'auto';
2909
- }
2910
- this.iframes = [];
2911
- this.disposable.dispose();
2906
+ this.pointerEventsDisposable.dispose();
2907
+ this.dataDisposable.dispose();
2912
2908
  }));
2913
2909
  }
2914
2910
  }