gridstack 9.1.1 → 9.2.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/angular/projects/lib/package.json +1 -1
- package/angular/projects/lib/src/lib/base-widget.ts +1 -1
- package/angular/projects/lib/src/lib/gridstack-item.component.ts +1 -1
- package/angular/projects/lib/src/lib/gridstack.component.ts +1 -1
- package/angular/projects/lib/src/lib/gridstack.module.ts +1 -1
- 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/fesm2015/gridstack-angular.mjs +4 -4
- package/dist/angular/fesm2015/gridstack-angular.mjs.map +1 -1
- package/dist/angular/fesm2020/gridstack-angular.mjs +4 -4
- 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/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/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 +1 -1
- package/dist/dd-draggable.js +1 -1
- package/dist/dd-draggable.js.map +1 -1
- package/dist/dd-droppable.d.ts +1 -1
- package/dist/dd-droppable.js +1 -1
- 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 +1 -1
- package/dist/dd-gridstack.js +1 -1
- 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 +1 -1
- package/dist/dd-resizable.js +1 -1
- 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/es5/dd-base-impl.d.ts +1 -1
- package/dist/es5/dd-base-impl.js +1 -1
- package/dist/es5/dd-base-impl.js.map +1 -1
- package/dist/es5/dd-draggable.d.ts +1 -1
- package/dist/es5/dd-draggable.js +1 -1
- package/dist/es5/dd-draggable.js.map +1 -1
- package/dist/es5/dd-droppable.d.ts +1 -1
- package/dist/es5/dd-droppable.js +1 -1
- package/dist/es5/dd-droppable.js.map +1 -1
- package/dist/es5/dd-element.d.ts +1 -1
- package/dist/es5/dd-element.js +1 -1
- package/dist/es5/dd-element.js.map +1 -1
- package/dist/es5/dd-gridstack.d.ts +1 -1
- package/dist/es5/dd-gridstack.js +1 -1
- package/dist/es5/dd-gridstack.js.map +1 -1
- package/dist/es5/dd-manager.d.ts +1 -1
- package/dist/es5/dd-manager.js +1 -1
- package/dist/es5/dd-manager.js.map +1 -1
- package/dist/es5/dd-resizable-handle.d.ts +1 -1
- package/dist/es5/dd-resizable-handle.js +1 -1
- package/dist/es5/dd-resizable-handle.js.map +1 -1
- package/dist/es5/dd-resizable.d.ts +1 -1
- package/dist/es5/dd-resizable.js +1 -1
- package/dist/es5/dd-resizable.js.map +1 -1
- package/dist/es5/dd-touch.d.ts +1 -1
- package/dist/es5/dd-touch.js +1 -1
- package/dist/es5/dd-touch.js.map +1 -1
- package/dist/es5/gridstack-all.js +1 -1
- package/dist/es5/gridstack-all.js.LICENSE.txt +1 -1
- package/dist/es5/gridstack-all.js.map +1 -1
- package/dist/es5/gridstack-engine.d.ts +1 -1
- package/dist/es5/gridstack-engine.js +4 -3
- package/dist/es5/gridstack-engine.js.map +1 -1
- package/dist/es5/gridstack-poly.js +1 -1
- package/dist/es5/gridstack.d.ts +6 -5
- package/dist/es5/gridstack.js +43 -26
- package/dist/es5/gridstack.js.map +1 -1
- package/dist/es5/types.d.ts +4 -4
- package/dist/es5/types.js +1 -1
- package/dist/es5/types.js.map +1 -1
- package/dist/es5/utils.d.ts +1 -1
- package/dist/es5/utils.js +1 -1
- package/dist/es5/utils.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 +4 -3
- package/dist/gridstack-engine.js.map +1 -1
- package/dist/gridstack.css +1 -1
- package/dist/gridstack.d.ts +6 -5
- package/dist/gridstack.js +43 -26
- package/dist/gridstack.js.map +1 -1
- package/dist/src/gridstack.scss +1 -1
- package/dist/types.d.ts +4 -4
- package/dist/types.js +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.js +1 -1
- package/dist/utils.js.map +1 -1
- package/doc/CHANGES.md +5 -0
- package/package.json +1 -1
package/dist/gridstack.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* GridStack 9.
|
|
2
|
+
* GridStack 9.2.0
|
|
3
3
|
* https://gridstackjs.com/
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2021-2022 Alain Dumesny
|
|
@@ -540,7 +540,7 @@ class GridStack {
|
|
|
540
540
|
*
|
|
541
541
|
* @example
|
|
542
542
|
* see http://gridstackjs.com/demo/serialization.html
|
|
543
|
-
|
|
543
|
+
*/
|
|
544
544
|
load(layout, addRemove = GridStack.addRemoveCB || true) {
|
|
545
545
|
// if passed list has coordinates, use them (insert from end to beginning for conflict resolution) else force widget same order
|
|
546
546
|
const haveCoord = layout.some(w => w.x !== undefined || w.y !== undefined);
|
|
@@ -696,7 +696,7 @@ class GridStack {
|
|
|
696
696
|
* 'compact' might re-order items to fill any empty space
|
|
697
697
|
*
|
|
698
698
|
* doSort - 'false' to let you do your own sorting ahead in case you need to control a different order. (default to sort)
|
|
699
|
-
|
|
699
|
+
*/
|
|
700
700
|
compact(layout = 'compact', doSort = true) {
|
|
701
701
|
this.engine.compact(layout, doSort);
|
|
702
702
|
this._triggerChangeEvent();
|
|
@@ -1118,7 +1118,7 @@ class GridStack {
|
|
|
1118
1118
|
* Updates widget height to match the content height to avoid v-scrollbar or dead space.
|
|
1119
1119
|
* Note: this assumes only 1 child under resizeToContentParent='.grid-stack-item-content' (sized to gridItem minus padding) that is at the entire content size wanted.
|
|
1120
1120
|
* useAttrSize set to true if GridStackNode.h should be used instead of actual container height when we don't need to wait for animation to finish to get actual DOM heights
|
|
1121
|
-
|
|
1121
|
+
*/
|
|
1122
1122
|
resizeToContent(el, useAttrSize = false) {
|
|
1123
1123
|
el?.classList.remove('size-to-content-max');
|
|
1124
1124
|
if (!el?.clientHeight)
|
|
@@ -1142,15 +1142,22 @@ class GridStack {
|
|
|
1142
1142
|
item = el.querySelector(GridStack.resizeToContentParent);
|
|
1143
1143
|
if (!item)
|
|
1144
1144
|
return;
|
|
1145
|
-
const child = item.firstElementChild;
|
|
1146
|
-
// NOTE: clientHeight & getBoundingClientRect() is undefined for text and other leaf nodes. use <div> container!
|
|
1147
|
-
if (!child) {
|
|
1148
|
-
console.log(`Error: resizeToContent() '${GridStack.resizeToContentParent}'.firstElementChild is null, make sure to have a div like container. Skipping sizing.`);
|
|
1149
|
-
return;
|
|
1150
|
-
}
|
|
1151
1145
|
const padding = el.clientHeight - item.clientHeight; // full - available height to our child (minus border, padding...)
|
|
1152
1146
|
const itemH = useAttrSize && n.h ? n.h * cell - padding : item.clientHeight; // calculated to what cellHeight is or will become (rather than actual to prevent waiting for animation to finish)
|
|
1153
|
-
|
|
1147
|
+
let wantedH;
|
|
1148
|
+
if (n.subGrid) {
|
|
1149
|
+
// sub-grid - use their actual row count * their cell height
|
|
1150
|
+
wantedH = n.subGrid.getRow() * n.subGrid.getCellHeight();
|
|
1151
|
+
}
|
|
1152
|
+
else {
|
|
1153
|
+
// NOTE: clientHeight & getBoundingClientRect() is undefined for text and other leaf nodes. use <div> container!
|
|
1154
|
+
const child = item.firstElementChild;
|
|
1155
|
+
if (!child) {
|
|
1156
|
+
console.log(`Error: resizeToContent() '${GridStack.resizeToContentParent}'.firstElementChild is null, make sure to have a div like container. Skipping sizing.`);
|
|
1157
|
+
return;
|
|
1158
|
+
}
|
|
1159
|
+
wantedH = child.getBoundingClientRect().height || itemH;
|
|
1160
|
+
}
|
|
1154
1161
|
if (itemH === wantedH)
|
|
1155
1162
|
return;
|
|
1156
1163
|
height += wantedH - itemH;
|
|
@@ -1349,13 +1356,18 @@ class GridStack {
|
|
|
1349
1356
|
this.el.setAttribute('gs-current-row', String(row));
|
|
1350
1357
|
if (row === 0) {
|
|
1351
1358
|
this.el.style.removeProperty('min-height');
|
|
1352
|
-
return this;
|
|
1353
1359
|
}
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1357
|
-
|
|
1358
|
-
|
|
1360
|
+
else {
|
|
1361
|
+
let cellHeight = this.opts.cellHeight;
|
|
1362
|
+
let unit = this.opts.cellHeightUnit;
|
|
1363
|
+
if (!cellHeight)
|
|
1364
|
+
return this;
|
|
1365
|
+
this.el.style.minHeight = row * cellHeight + unit;
|
|
1366
|
+
}
|
|
1367
|
+
// if we're a nested grid inside an sizeToContent item, tell it to resize itself too
|
|
1368
|
+
if (this.parentGridItem && !this.parentGridItem.grid.engine.batchMode && Utils.shouldSizeToContent(this.parentGridItem)) {
|
|
1369
|
+
this.parentGridItem.grid.resizeToContentCheck(this.parentGridItem.el);
|
|
1370
|
+
}
|
|
1359
1371
|
return this;
|
|
1360
1372
|
}
|
|
1361
1373
|
/** @internal */
|
|
@@ -1505,7 +1517,9 @@ class GridStack {
|
|
|
1505
1517
|
if (n.subGrid)
|
|
1506
1518
|
n.subGrid.onResize();
|
|
1507
1519
|
});
|
|
1508
|
-
this.
|
|
1520
|
+
if (!this._skipInitialResize)
|
|
1521
|
+
this.doContentResize(columnChanged); // wait for anim of column changed (DOM reflow before we can size correctly)
|
|
1522
|
+
delete this._skipInitialResize;
|
|
1509
1523
|
this.batchUpdate(false);
|
|
1510
1524
|
return this;
|
|
1511
1525
|
}
|
|
@@ -1517,7 +1531,7 @@ class GridStack {
|
|
|
1517
1531
|
if (Utils.shouldSizeToContent(n))
|
|
1518
1532
|
this.resizeToContentCheck(n.el, useAttr);
|
|
1519
1533
|
}
|
|
1520
|
-
else {
|
|
1534
|
+
else if (this.engine.nodes.some(n => Utils.shouldSizeToContent(n))) {
|
|
1521
1535
|
const nodes = [...this.engine.nodes]; // in case order changes while resizing one
|
|
1522
1536
|
this.batchUpdate();
|
|
1523
1537
|
nodes.forEach(n => {
|
|
@@ -1526,6 +1540,7 @@ class GridStack {
|
|
|
1526
1540
|
});
|
|
1527
1541
|
this.batchUpdate(false);
|
|
1528
1542
|
}
|
|
1543
|
+
// call this regardless of shouldSizeToContent because widget might need to stretch to take available space after a resize
|
|
1529
1544
|
if (this._gsEventHandler['resizecontent'])
|
|
1530
1545
|
this._gsEventHandler['resizecontent'](null, n ? [n] : this.engine.nodes);
|
|
1531
1546
|
}, delay ? 300 + 10 : 0);
|
|
@@ -1534,11 +1549,13 @@ class GridStack {
|
|
|
1534
1549
|
_updateResizeEvent(forceRemove = false) {
|
|
1535
1550
|
// only add event if we're not nested (parent will call us) and we're auto sizing cells or supporting oneColumn (i.e. doing work)
|
|
1536
1551
|
// or supporting new sizeToContent option.
|
|
1537
|
-
const trackSize = !this.parentGridItem && (this._isAutoCellHeight || this.opts.sizeToContent || !this.opts.disableOneColumnMode
|
|
1552
|
+
const trackSize = !this.parentGridItem && (this._isAutoCellHeight || this.opts.sizeToContent || !this.opts.disableOneColumnMode
|
|
1553
|
+
|| this.engine.nodes.find(n => n.sizeToContent));
|
|
1538
1554
|
if (!forceRemove && trackSize && !this.resizeObserver) {
|
|
1539
1555
|
this._sizeThrottle = Utils.throttle(() => this.onResize(), this.opts.cellHeightThrottle);
|
|
1540
1556
|
this.resizeObserver = new ResizeObserver(entries => this._sizeThrottle());
|
|
1541
1557
|
this.resizeObserver.observe(this.el);
|
|
1558
|
+
this._skipInitialResize = true; // makeWidget will originally have called on startup
|
|
1542
1559
|
}
|
|
1543
1560
|
else if ((forceRemove || !trackSize) && this.resizeObserver) {
|
|
1544
1561
|
this.resizeObserver.disconnect();
|
|
@@ -1634,7 +1651,7 @@ class GridStack {
|
|
|
1634
1651
|
* @param dragIn string selector (ex: '.sidebar .grid-stack-item') or list of dom elements
|
|
1635
1652
|
* @param dragInOptions options - see DDDragInOpt. (default: {handle: '.grid-stack-item-content', appendTo: 'body'}
|
|
1636
1653
|
* @param root optional root which defaults to document (for shadow dom pas the parent HTMLDocument)
|
|
1637
|
-
|
|
1654
|
+
*/
|
|
1638
1655
|
static setupDragIn(dragIn, dragInOptions, root = document) {
|
|
1639
1656
|
if (dragInOptions?.pause !== undefined) {
|
|
1640
1657
|
DDManager.pauseDrag = dragInOptions.pause;
|
|
@@ -2011,7 +2028,7 @@ class GridStack {
|
|
|
2011
2028
|
}
|
|
2012
2029
|
return this;
|
|
2013
2030
|
}
|
|
2014
|
-
/** @internal prepares the element for drag&drop
|
|
2031
|
+
/** @internal prepares the element for drag&drop */
|
|
2015
2032
|
_prepareDragDropByNode(node) {
|
|
2016
2033
|
let el = node.el;
|
|
2017
2034
|
const noMove = node.noMove || this.opts.disableDrag;
|
|
@@ -2105,7 +2122,7 @@ class GridStack {
|
|
|
2105
2122
|
.resizable(el, noResize ? 'disable' : 'enable');
|
|
2106
2123
|
return this;
|
|
2107
2124
|
}
|
|
2108
|
-
/** @internal handles actual drag/resize start
|
|
2125
|
+
/** @internal handles actual drag/resize start */
|
|
2109
2126
|
_onStartMoving(el, event, ui, node, cellWidth, cellHeight) {
|
|
2110
2127
|
this.engine.cleanNodes()
|
|
2111
2128
|
.beginUpdate(node);
|
|
@@ -2136,7 +2153,7 @@ class GridStack {
|
|
|
2136
2153
|
}
|
|
2137
2154
|
}
|
|
2138
2155
|
}
|
|
2139
|
-
/** @internal handles actual drag/resize
|
|
2156
|
+
/** @internal handles actual drag/resize */
|
|
2140
2157
|
_dragOrResize(el, event, ui, node, cellWidth, cellHeight) {
|
|
2141
2158
|
let p = { ...node._orig }; // could be undefined (_isExternal) which is ok (drag only set x,y and w,h will default to node value)
|
|
2142
2159
|
let resizing;
|
|
@@ -2224,7 +2241,7 @@ class GridStack {
|
|
|
2224
2241
|
/** @internal called when item leaving our area by either cursor dropout event
|
|
2225
2242
|
* or shape is outside our boundaries. remove it from us, and mark temporary if this was
|
|
2226
2243
|
* our item to start with else restore prev node values from prev grid it came from.
|
|
2227
|
-
|
|
2244
|
+
*/
|
|
2228
2245
|
_leave(el, helper) {
|
|
2229
2246
|
let node = el.gridstackNode;
|
|
2230
2247
|
if (!node)
|
|
@@ -2263,6 +2280,6 @@ GridStack.resizeToContentParent = '.grid-stack-item-content';
|
|
|
2263
2280
|
GridStack.Utils = Utils;
|
|
2264
2281
|
/** scoping so users can call new GridStack.Engine(12) for example */
|
|
2265
2282
|
GridStack.Engine = GridStackEngine;
|
|
2266
|
-
GridStack.GDRev = '9.
|
|
2283
|
+
GridStack.GDRev = '9.2.0';
|
|
2267
2284
|
export { GridStack };
|
|
2268
2285
|
//# sourceMappingURL=gridstack.js.map
|