gridstack 12.4.2 → 12.6.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.
- package/dist/angular/esm2020/lib/base-widget.mjs +2 -2
- package/dist/angular/esm2020/lib/gridstack-item.component.mjs +2 -2
- package/dist/angular/esm2020/lib/gridstack.component.mjs +2 -2
- package/dist/angular/esm2020/lib/gridstack.module.mjs +2 -2
- package/dist/angular/esm2020/lib/types.mjs +2 -2
- package/dist/angular/fesm2015/gridstack-angular.mjs +4 -4
- package/dist/angular/fesm2015/gridstack-angular.mjs.map +1 -1
- package/dist/angular/fesm2020/gridstack-angular.mjs +5 -5
- package/dist/angular/fesm2020/gridstack-angular.mjs.map +1 -1
- package/dist/angular/lib/gridstack-item.component.d.ts +1 -1
- package/dist/angular/lib/gridstack.component.d.ts +1 -1
- package/dist/angular/lib/types.d.ts +1 -1
- package/dist/angular/package.json +1 -1
- package/dist/angular/src/base-widget.ts +1 -1
- package/dist/angular/src/gridstack-item.component.ts +1 -1
- package/dist/angular/src/gridstack.component.ts +1 -1
- package/dist/angular/src/gridstack.module.ts +1 -1
- package/dist/angular/src/types.ts +1 -1
- package/dist/dd-base-impl.d.ts +1 -1
- package/dist/dd-base-impl.js +1 -1
- package/dist/dd-base-impl.js.map +1 -1
- package/dist/dd-draggable.d.ts +5 -1
- package/dist/dd-draggable.js +110 -15
- package/dist/dd-draggable.js.map +1 -1
- package/dist/dd-droppable.d.ts +1 -1
- package/dist/dd-droppable.js +7 -3
- package/dist/dd-droppable.js.map +1 -1
- package/dist/dd-element.d.ts +1 -1
- package/dist/dd-element.js +1 -1
- package/dist/dd-element.js.map +1 -1
- package/dist/dd-gridstack.d.ts +2 -1
- package/dist/dd-gridstack.js +6 -3
- package/dist/dd-gridstack.js.map +1 -1
- package/dist/dd-manager.d.ts +1 -1
- package/dist/dd-manager.js +1 -1
- package/dist/dd-manager.js.map +1 -1
- package/dist/dd-resizable-handle.d.ts +1 -1
- package/dist/dd-resizable-handle.js +1 -1
- package/dist/dd-resizable-handle.js.map +1 -1
- package/dist/dd-resizable.d.ts +2 -1
- package/dist/dd-resizable.js +46 -14
- package/dist/dd-resizable.js.map +1 -1
- package/dist/dd-touch.d.ts +1 -1
- package/dist/dd-touch.js +1 -1
- package/dist/dd-touch.js.map +1 -1
- package/dist/gridstack-all.js +1 -1
- package/dist/gridstack-all.js.LICENSE.txt +1 -1
- package/dist/gridstack-all.js.map +1 -1
- package/dist/gridstack-engine.d.ts +1 -1
- package/dist/gridstack-engine.js +1 -1
- package/dist/gridstack-engine.js.map +1 -1
- package/dist/gridstack.css +17 -6
- package/dist/gridstack.d.ts +1 -1
- package/dist/gridstack.js +29 -18
- package/dist/gridstack.js.map +1 -1
- package/dist/gridstack.min.css +1 -1
- package/dist/types.d.ts +12 -1
- package/dist/types.js +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.js +4 -36
- package/dist/utils.js.map +1 -1
- package/doc/API.md +428 -390
- package/package.json +1 -1
package/dist/gridstack.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* GridStack 12.
|
|
2
|
+
* GridStack 12.6.0
|
|
3
3
|
* https://gridstackjs.com/
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2021-2025 Alain Dumesny
|
|
@@ -619,8 +619,7 @@ class GridStack {
|
|
|
619
619
|
* @see {@link http://gridstackjs.com/demo/serialization.html} for complete example
|
|
620
620
|
*/
|
|
621
621
|
load(items, addRemove = GridStack.addRemoveCB || true) {
|
|
622
|
-
items = Utils.cloneDeep(items); //
|
|
623
|
-
const column = this.getColumn();
|
|
622
|
+
// items = Utils.cloneDeep(items); // TODO: let callee decide by using directly instead of copy we can modify ?
|
|
624
623
|
// make sure size 1x1 (default) is present as it may need to override current sizes
|
|
625
624
|
items.forEach(n => { n.w = n.w || n.minW || 1; n.h = n.h || n.minH || 1; });
|
|
626
625
|
// sort items. those without coord will be appended last
|
|
@@ -632,6 +631,7 @@ class GridStack {
|
|
|
632
631
|
items.forEach(n => { maxColumn = Math.max(maxColumn, (n.x || 0) + n.w); });
|
|
633
632
|
if (maxColumn > this.engine.defaultColumn)
|
|
634
633
|
this.engine.defaultColumn = maxColumn;
|
|
634
|
+
const column = this.getColumn();
|
|
635
635
|
if (maxColumn > column) {
|
|
636
636
|
// if we're loading (from empty) into a smaller column, check for special responsive layout
|
|
637
637
|
if (this.engine.nodes.length === 0 && this.responseLayout) {
|
|
@@ -1345,10 +1345,13 @@ class GridStack {
|
|
|
1345
1345
|
}
|
|
1346
1346
|
// responsive column take over actual count (keep what we have now)
|
|
1347
1347
|
if (o.columnOpts) {
|
|
1348
|
+
const hadColumnOpts = !!this.opts.columnOpts;
|
|
1348
1349
|
this.opts.columnOpts = o.columnOpts;
|
|
1350
|
+
if (hadColumnOpts !== !!this.opts.columnOpts)
|
|
1351
|
+
this._updateResizeEvent();
|
|
1349
1352
|
this.checkDynamicColumn();
|
|
1350
1353
|
}
|
|
1351
|
-
else if (o.columnOpts === null && this.opts.columnOpts) {
|
|
1354
|
+
else if (o.columnOpts === null && this.opts.columnOpts) { // delete update cmd
|
|
1352
1355
|
delete this.opts.columnOpts;
|
|
1353
1356
|
this._updateResizeEvent();
|
|
1354
1357
|
}
|
|
@@ -1374,7 +1377,7 @@ class GridStack {
|
|
|
1374
1377
|
this._updateContainerHeight();
|
|
1375
1378
|
}
|
|
1376
1379
|
if (o.maxRow !== undefined)
|
|
1377
|
-
opts.maxRow = o.maxRow;
|
|
1380
|
+
opts.maxRow = this.engine.maxRow = o.maxRow;
|
|
1378
1381
|
}
|
|
1379
1382
|
if (o.lazyLoad !== undefined)
|
|
1380
1383
|
opts.lazyLoad = o.lazyLoad;
|
|
@@ -1785,9 +1788,10 @@ class GridStack {
|
|
|
1785
1788
|
_writePosAttr(el, n) {
|
|
1786
1789
|
// Avoid overwriting the inline style of the element during drag/resize, but always update the placeholder
|
|
1787
1790
|
if ((!n._moving && !n._resizing) || this._placeholder === el) {
|
|
1791
|
+
const xProp = this.opts.rtl ? 'right' : 'left';
|
|
1788
1792
|
// width/height:1 x/y:0 is set by default in the main CSS, so no need to set inlined vars
|
|
1789
1793
|
el.style.top = n.y ? (n.y === 1 ? `var(--gs-cell-height)` : `calc(${n.y} * var(--gs-cell-height))`) : null;
|
|
1790
|
-
el.style
|
|
1794
|
+
el.style[xProp] = n.x ? (n.x === 1 ? `var(--gs-column-width)` : `calc(${n.x} * var(--gs-column-width))`) : null;
|
|
1791
1795
|
el.style.width = n.w > 1 ? `calc(${n.w} * var(--gs-column-width))` : null;
|
|
1792
1796
|
el.style.height = n.h > 1 ? `calc(${n.h} * var(--gs-cell-height))` : null;
|
|
1793
1797
|
}
|
|
@@ -2574,10 +2578,10 @@ class GridStack {
|
|
|
2574
2578
|
this._removeDD(el); // nukes everything instead of just disable, will add some styles back next
|
|
2575
2579
|
delete node._initDD;
|
|
2576
2580
|
}
|
|
2577
|
-
if (disable)
|
|
2581
|
+
if (disable) {
|
|
2578
2582
|
el.classList.add('ui-draggable-disabled', 'ui-resizable-disabled'); // add styles one might depend on #1435
|
|
2579
|
-
if (!force)
|
|
2580
2583
|
return this;
|
|
2584
|
+
}
|
|
2581
2585
|
}
|
|
2582
2586
|
if (!node._initDD) {
|
|
2583
2587
|
// variables used/cashed between the 3 start/move/end methods, in addition to node passed above
|
|
@@ -2644,11 +2648,13 @@ class GridStack {
|
|
|
2644
2648
|
dd.draggable(el, {
|
|
2645
2649
|
start: onStartMoving,
|
|
2646
2650
|
stop: onEndMoving,
|
|
2647
|
-
drag: dragOrResize
|
|
2651
|
+
drag: dragOrResize,
|
|
2652
|
+
rtl: this.opts.rtl,
|
|
2648
2653
|
}).resizable(el, {
|
|
2649
2654
|
start: onStartMoving,
|
|
2650
2655
|
stop: onEndMoving,
|
|
2651
|
-
resize: dragOrResize
|
|
2656
|
+
resize: dragOrResize,
|
|
2657
|
+
rtl: this.opts.rtl,
|
|
2652
2658
|
});
|
|
2653
2659
|
node._initDD = true; // we've set DD support now
|
|
2654
2660
|
}
|
|
@@ -2724,10 +2730,9 @@ class GridStack {
|
|
|
2724
2730
|
if (event.type === 'drag') {
|
|
2725
2731
|
if (node._temporaryRemoved)
|
|
2726
2732
|
return; // handled by dropover
|
|
2727
|
-
const distance = ui.position.top - node._prevYPix;
|
|
2728
2733
|
node._prevYPix = ui.position.top;
|
|
2729
2734
|
if (this.opts.draggable.scroll !== false) {
|
|
2730
|
-
|
|
2735
|
+
DDManager.dragElement?.updateScrollPosition(this.el);
|
|
2731
2736
|
}
|
|
2732
2737
|
// get new position taking into account the margin in the direction we are moving! (need to pass mid point by margin)
|
|
2733
2738
|
const left = ui.position.left + (ui.position.left > node._lastUiPosition.left ? -mRight : mLeft);
|
|
@@ -2765,11 +2770,17 @@ class GridStack {
|
|
|
2765
2770
|
return;
|
|
2766
2771
|
if (node._lastTried && node._lastTried.w === p.w && node._lastTried.h === p.h)
|
|
2767
2772
|
return; // skip one we tried (but failed)
|
|
2768
|
-
//
|
|
2769
|
-
|
|
2770
|
-
|
|
2771
|
-
|
|
2772
|
-
|
|
2773
|
+
// only recalculate position for handles that move the top-left corner (N/W).
|
|
2774
|
+
// for SE/S/E handles the top-left is anchored — recalculating from pixels causes
|
|
2775
|
+
// rounding drift on fine grids where cellWidth/cellHeight are only a few pixels. #385 #1356
|
|
2776
|
+
if (event.hasMovedX) {
|
|
2777
|
+
const left = ui.position.left + mLeft;
|
|
2778
|
+
p.x = Math.round(left / cellWidth);
|
|
2779
|
+
}
|
|
2780
|
+
if (event.hasMovedY) {
|
|
2781
|
+
const top = ui.position.top + mTop;
|
|
2782
|
+
p.y = Math.round(top / cellHeight);
|
|
2783
|
+
}
|
|
2773
2784
|
resizing = true;
|
|
2774
2785
|
}
|
|
2775
2786
|
node._event = event;
|
|
@@ -2858,6 +2869,6 @@ GridStack.Utils = Utils;
|
|
|
2858
2869
|
/** scoping so users can call new GridStack.Engine(12) for example */
|
|
2859
2870
|
GridStack.Engine = GridStackEngine;
|
|
2860
2871
|
/** @internal current version compiled in code */
|
|
2861
|
-
GridStack.GDRev = '12.
|
|
2872
|
+
GridStack.GDRev = '12.6.0';
|
|
2862
2873
|
export { GridStack };
|
|
2863
2874
|
//# sourceMappingURL=gridstack.js.map
|