dockview-core 4.2.4 → 4.3.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 (39) hide show
  1. package/dist/cjs/api/component.api.d.ts +1 -1
  2. package/dist/cjs/dnd/droptarget.js +4 -4
  3. package/dist/cjs/dnd/ghost.js +2 -0
  4. package/dist/cjs/dockview/components/titlebar/voidContainer.d.ts +1 -1
  5. package/dist/cjs/dockview/components/titlebar/voidContainer.js +4 -4
  6. package/dist/cjs/dockview/dockviewComponent.d.ts +1 -0
  7. package/dist/cjs/dockview/dockviewComponent.js +25 -24
  8. package/dist/cjs/dom.js +5 -7
  9. package/dist/dockview-core.amd.js +26 -25
  10. package/dist/dockview-core.amd.js.map +1 -1
  11. package/dist/dockview-core.amd.min.js +2 -2
  12. package/dist/dockview-core.amd.min.js.map +1 -1
  13. package/dist/dockview-core.amd.min.noStyle.js +2 -2
  14. package/dist/dockview-core.amd.min.noStyle.js.map +1 -1
  15. package/dist/dockview-core.amd.noStyle.js +26 -25
  16. package/dist/dockview-core.amd.noStyle.js.map +1 -1
  17. package/dist/dockview-core.cjs.js +26 -25
  18. package/dist/dockview-core.cjs.js.map +1 -1
  19. package/dist/dockview-core.esm.js +26 -25
  20. package/dist/dockview-core.esm.js.map +1 -1
  21. package/dist/dockview-core.esm.min.js +2 -2
  22. package/dist/dockview-core.esm.min.js.map +1 -1
  23. package/dist/dockview-core.js +26 -25
  24. package/dist/dockview-core.js.map +1 -1
  25. package/dist/dockview-core.min.js +2 -2
  26. package/dist/dockview-core.min.js.map +1 -1
  27. package/dist/dockview-core.min.noStyle.js +2 -2
  28. package/dist/dockview-core.min.noStyle.js.map +1 -1
  29. package/dist/dockview-core.noStyle.js +26 -25
  30. package/dist/dockview-core.noStyle.js.map +1 -1
  31. package/dist/esm/api/component.api.d.ts +1 -1
  32. package/dist/esm/dnd/droptarget.js +4 -4
  33. package/dist/esm/dnd/ghost.js +2 -0
  34. package/dist/esm/dockview/components/titlebar/voidContainer.d.ts +1 -1
  35. package/dist/esm/dockview/components/titlebar/voidContainer.js +4 -4
  36. package/dist/esm/dockview/dockviewComponent.d.ts +1 -0
  37. package/dist/esm/dockview/dockviewComponent.js +10 -9
  38. package/dist/esm/dom.js +5 -7
  39. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * dockview-core
3
- * @version 4.2.4
3
+ * @version 4.3.0
4
4
  * @link https://github.com/mathuo/dockview
5
5
  * @license MIT
6
6
  */
@@ -641,9 +641,7 @@ define(['exports'], (function (exports) { 'use strict';
641
641
  function shiftAbsoluteElementIntoView(element, root, options = { buffer: 10 }) {
642
642
  const buffer = options.buffer;
643
643
  const rect = element.getBoundingClientRect();
644
- const rootRect = element.getBoundingClientRect();
645
- const viewportWidth = root.clientWidth;
646
- const viewportHeight = root.clientHeight;
644
+ const rootRect = root.getBoundingClientRect();
647
645
  let translateX = 0;
648
646
  let translateY = 0;
649
647
  const left = rect.left - rootRect.left;
@@ -654,15 +652,15 @@ define(['exports'], (function (exports) { 'use strict';
654
652
  if (left < buffer) {
655
653
  translateX = buffer - left;
656
654
  }
657
- else if (right > viewportWidth - buffer) {
658
- translateX = viewportWidth - right - buffer;
655
+ else if (right > buffer) {
656
+ translateX = -buffer - right;
659
657
  }
660
658
  // Check vertical overflow
661
659
  if (top < buffer) {
662
660
  translateY = buffer - top;
663
661
  }
664
- else if (bottom > viewportHeight - buffer) {
665
- translateY = viewportHeight - bottom - buffer;
662
+ else if (bottom > buffer) {
663
+ translateY = -bottom - buffer;
666
664
  }
667
665
  // Apply the translation if needed
668
666
  if (translateX !== 0 || translateY !== 0) {
@@ -3955,9 +3953,9 @@ define(['exports'], (function (exports) { 'use strict';
3955
3953
  onDragOver: (e) => {
3956
3954
  var _a, _b, _c, _d, _e, _f, _g;
3957
3955
  Droptarget.ACTUAL_TARGET = this;
3958
- const overrideTraget = (_b = (_a = this.options).getOverrideTarget) === null || _b === void 0 ? void 0 : _b.call(_a);
3956
+ const overrideTarget = (_b = (_a = this.options).getOverrideTarget) === null || _b === void 0 ? void 0 : _b.call(_a);
3959
3957
  if (this._acceptedTargetZonesSet.size === 0) {
3960
- if (overrideTraget) {
3958
+ if (overrideTarget) {
3961
3959
  return;
3962
3960
  }
3963
3961
  this.removeDropTarget();
@@ -3984,7 +3982,7 @@ define(['exports'], (function (exports) { 'use strict';
3984
3982
  return;
3985
3983
  }
3986
3984
  if (!this.options.canDisplayOverlay(e, quadrant)) {
3987
- if (overrideTraget) {
3985
+ if (overrideTarget) {
3988
3986
  return;
3989
3987
  }
3990
3988
  this.removeDropTarget();
@@ -4004,7 +4002,7 @@ define(['exports'], (function (exports) { 'use strict';
4004
4002
  return;
4005
4003
  }
4006
4004
  this.markAsUsed(e);
4007
- if (overrideTraget) ;
4005
+ if (overrideTarget) ;
4008
4006
  else if (!this.targetElement) {
4009
4007
  this.targetElement = document.createElement('div');
4010
4008
  this.targetElement.className = 'dv-drop-target-dropzone';
@@ -4943,6 +4941,8 @@ define(['exports'], (function (exports) { 'use strict';
4943
4941
  var _a, _b;
4944
4942
  // class dockview provides to force ghost image to be drawn on a different layer and prevent weird rendering issues
4945
4943
  addClasses(ghostElement, 'dv-dragged');
4944
+ // move the element off-screen initially otherwise it may in some cases be rendered at (0,0) momentarily
4945
+ ghostElement.style.top = '-9999px';
4946
4946
  document.body.appendChild(ghostElement);
4947
4947
  dataTransfer.setDragImage(ghostElement, (_a = options === null || options === void 0 ? void 0 : options.x) !== null && _a !== void 0 ? _a : 0, (_b = options === null || options === void 0 ? void 0 : options.y) !== null && _b !== void 0 ? _b : 0);
4948
4948
  setTimeout(() => {
@@ -5111,7 +5111,7 @@ define(['exports'], (function (exports) { 'use strict';
5111
5111
  this.accessor.doSetGroupActive(this.group);
5112
5112
  }));
5113
5113
  const handler = new GroupDragHandler(this._element, accessor, group);
5114
- this.dropTraget = new Droptarget(this._element, {
5114
+ this.dropTarget = new Droptarget(this._element, {
5115
5115
  acceptedTargetZones: ['center'],
5116
5116
  canDisplayOverlay: (event, position) => {
5117
5117
  const data = getPanelData();
@@ -5122,12 +5122,12 @@ define(['exports'], (function (exports) { 'use strict';
5122
5122
  },
5123
5123
  getOverrideTarget: () => { var _a; return (_a = group.model.dropTargetContainer) === null || _a === void 0 ? void 0 : _a.model; },
5124
5124
  });
5125
- this.onWillShowOverlay = this.dropTraget.onWillShowOverlay;
5125
+ this.onWillShowOverlay = this.dropTarget.onWillShowOverlay;
5126
5126
  this.addDisposables(handler, handler.onDragStart((event) => {
5127
5127
  this._onDragStart.fire(event);
5128
- }), this.dropTraget.onDrop((event) => {
5128
+ }), this.dropTarget.onDrop((event) => {
5129
5129
  this._onDrop.fire(event);
5130
- }), this.dropTraget);
5130
+ }), this.dropTarget);
5131
5131
  }
5132
5132
  }
5133
5133
 
@@ -8438,9 +8438,11 @@ define(['exports'], (function (exports) { 'use strict';
8438
8438
  const gready = document.createElement('div');
8439
8439
  gready.className = 'dv-overlay-render-container';
8440
8440
  const overlayRenderContainer = new OverlayRenderContainer(gready, this);
8441
- const referenceGroup = itemToPopout instanceof DockviewPanel
8442
- ? itemToPopout.group
8443
- : itemToPopout;
8441
+ const referenceGroup = (options === null || options === void 0 ? void 0 : options.referenceGroup)
8442
+ ? options.referenceGroup
8443
+ : itemToPopout instanceof DockviewPanel
8444
+ ? itemToPopout.group
8445
+ : itemToPopout;
8444
8446
  const referenceLocation = itemToPopout.api.location.type;
8445
8447
  /**
8446
8448
  * The group that is being added doesn't already exist within the DOM, the most likely occurance
@@ -8928,7 +8930,7 @@ define(['exports'], (function (exports) { 'use strict';
8928
8930
  return result;
8929
8931
  }
8930
8932
  fromJSON(data) {
8931
- var _a, _b, _c;
8933
+ var _a, _b;
8932
8934
  this.clear();
8933
8935
  if (typeof data !== 'object' || data === null) {
8934
8936
  throw new Error('serialized layout must be a non-null object');
@@ -9000,12 +9002,11 @@ define(['exports'], (function (exports) { 'use strict';
9000
9002
  for (const serializedPopoutGroup of serializedPopoutGroups) {
9001
9003
  const { data, position, gridReferenceGroup, url } = serializedPopoutGroup;
9002
9004
  const group = createGroupFromSerializedState(data);
9003
- this.addPopoutGroup((_c = (gridReferenceGroup
9004
- ? this.getPanel(gridReferenceGroup)
9005
- : undefined)) !== null && _c !== void 0 ? _c : group, {
9005
+ this.addPopoutGroup(group, {
9006
9006
  position: position !== null && position !== void 0 ? position : undefined,
9007
- overridePopoutGroup: gridReferenceGroup
9008
- ? group
9007
+ overridePopoutGroup: gridReferenceGroup ? group : undefined,
9008
+ referenceGroup: gridReferenceGroup
9009
+ ? this.getPanel(gridReferenceGroup)
9009
9010
  : undefined,
9010
9011
  popoutUrl: url,
9011
9012
  });