@revolist/revogrid 3.2.5 → 3.2.8
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/custom-element/index.js +34 -23
- package/dist/cjs/index-cb904e00.js +22 -1
- package/dist/cjs/revo-grid_11.cjs.entry.js +34 -23
- package/dist/collection/components/revo-grid/revo-grid.js +1 -2
- package/dist/collection/plugins/autoSizeColumn.js +1 -1
- package/dist/collection/plugins/moveColumn/columnDragPlugin.js +27 -17
- package/dist/collection/plugins/moveColumn/columnOrderHandler.js +4 -4
- package/dist/collection/services/resizable.directive.js +2 -0
- package/dist/esm/index-6f753b3c.js +22 -1
- package/dist/esm/revo-grid_11.entry.js +34 -23
- package/dist/esm-es5/index-6f753b3c.js +1 -2
- package/dist/esm-es5/revo-grid_11.entry.js +1 -1
- package/dist/revo-grid/revo-grid_11.entry.js +1 -1
- package/dist/revo-grid/revo-grid_11.system.entry.js +1 -1
- package/dist/types/components/revo-grid/revo-grid.d.ts +0 -1
- package/dist/types/components.d.ts +2 -2
- package/dist/types/plugins/moveColumn/columnDragPlugin.d.ts +2 -14
- package/dist/types/plugins/moveColumn/columnOrderHandler.d.ts +5 -2
- package/package.json +2 -2
package/custom-element/index.js
CHANGED
|
@@ -5211,7 +5211,7 @@ class AutoSizeColumn extends BasePlugin {
|
|
|
5211
5211
|
const sizes = {};
|
|
5212
5212
|
each(autoSize[type], rgCol => {
|
|
5213
5213
|
// calculate size
|
|
5214
|
-
rgCol.size = sizes[rgCol.index] = source.reduce((prev, rgRow) => Math.max(prev, this.getLength(rgRow[rgCol.prop])),
|
|
5214
|
+
rgCol.size = sizes[rgCol.index] = source.reduce((prev, rgRow) => Math.max(prev, this.getLength(rgRow[rgCol.prop])), this.getLength(rgCol.name || ''));
|
|
5215
5215
|
});
|
|
5216
5216
|
this.providers.dimensionProvider.setDimensionSize(type, sizes);
|
|
5217
5217
|
});
|
|
@@ -25207,21 +25207,21 @@ class ColumnOrderHandler {
|
|
|
25207
25207
|
inline: 'nearest',
|
|
25208
25208
|
});
|
|
25209
25209
|
}
|
|
25210
|
-
start(e, {
|
|
25211
|
-
const scrollContainerRect =
|
|
25210
|
+
start(e, { dataEl, gridRect, scrollEl }, dir = 'left') {
|
|
25211
|
+
const scrollContainerRect = scrollEl.getBoundingClientRect();
|
|
25212
25212
|
if (scrollContainerRect) {
|
|
25213
25213
|
this.offset = scrollContainerRect[dir] - gridRect[dir];
|
|
25214
25214
|
}
|
|
25215
|
-
this.renderAutoscroll(e,
|
|
25215
|
+
this.renderAutoscroll(e, dataEl);
|
|
25216
25216
|
}
|
|
25217
25217
|
stop() {
|
|
25218
25218
|
var _a;
|
|
25219
25219
|
if (this.element) {
|
|
25220
25220
|
this.element.hidden = true;
|
|
25221
25221
|
}
|
|
25222
|
+
this.offset = 0;
|
|
25222
25223
|
(_a = this.autoscrollEl) === null || _a === void 0 ? void 0 : _a.remove();
|
|
25223
25224
|
this.autoscrollEl = undefined;
|
|
25224
|
-
this.offset = 0;
|
|
25225
25225
|
}
|
|
25226
25226
|
showHandler(pos, size, direction = 'translateX') {
|
|
25227
25227
|
if (!this.element) {
|
|
@@ -25290,6 +25290,9 @@ class ColumnPlugin extends BasePlugin {
|
|
|
25290
25290
|
this.addEventListener(COLUMN_CLICK, ({ detail }) => this.dragStart(detail));
|
|
25291
25291
|
}
|
|
25292
25292
|
dragStart({ event, data }) {
|
|
25293
|
+
if (event.defaultPrevented) {
|
|
25294
|
+
return;
|
|
25295
|
+
}
|
|
25293
25296
|
const { defaultPrevented } = dispatch(this.revogrid, DRAG_START, data);
|
|
25294
25297
|
// check if allowed to drag particulat column
|
|
25295
25298
|
if (defaultPrevented) {
|
|
@@ -25304,16 +25307,22 @@ class ColumnPlugin extends BasePlugin {
|
|
|
25304
25307
|
if (!dataEl || !scrollEl) {
|
|
25305
25308
|
return;
|
|
25306
25309
|
}
|
|
25310
|
+
const cols = this.getDimension('rgCol');
|
|
25311
|
+
const gridRect = this.revogrid.getBoundingClientRect();
|
|
25312
|
+
const elRect = dataEl.getBoundingClientRect();
|
|
25313
|
+
const startItem = getItemByPosition(cols, getLeftRelative(event.x, gridRect.left, elRect.left - gridRect.left));
|
|
25307
25314
|
this.staticDragData = {
|
|
25308
25315
|
startPos: event.x,
|
|
25316
|
+
startItem,
|
|
25309
25317
|
data,
|
|
25310
25318
|
dataEl,
|
|
25311
25319
|
scrollEl,
|
|
25312
25320
|
gridEl: this.revogrid,
|
|
25321
|
+
cols,
|
|
25313
25322
|
};
|
|
25314
25323
|
this.dragData = this.getData(this.staticDragData);
|
|
25315
25324
|
mousemove.target.addEventListener('mousemove', mousemove.callback);
|
|
25316
|
-
this.orderUi.start(event, this.dragData);
|
|
25325
|
+
this.orderUi.start(event, Object.assign(Object.assign({}, this.dragData), this.staticDragData));
|
|
25317
25326
|
}
|
|
25318
25327
|
doMove(e) {
|
|
25319
25328
|
if (!this.staticDragData) {
|
|
@@ -25325,10 +25334,10 @@ class ColumnPlugin extends BasePlugin {
|
|
|
25325
25334
|
}
|
|
25326
25335
|
const start = this.staticDragData.startPos;
|
|
25327
25336
|
if (Math.abs(start - e.x) > 10) {
|
|
25328
|
-
const x = getLeftRelative(e.x, dragData);
|
|
25329
|
-
const rgCol = getItemByPosition(
|
|
25337
|
+
const x = getLeftRelative(e.x, this.dragData.gridRect.left, this.dragData.scrollOffset);
|
|
25338
|
+
const rgCol = getItemByPosition(this.staticDragData.cols, x);
|
|
25330
25339
|
this.orderUi.autoscroll(x, dragData.elRect.width);
|
|
25331
|
-
this.orderUi.showHandler(rgCol.end + dragData.
|
|
25340
|
+
this.orderUi.showHandler(rgCol.end + dragData.scrollOffset, dragData.gridRect.width);
|
|
25332
25341
|
}
|
|
25333
25342
|
}
|
|
25334
25343
|
move(e) {
|
|
@@ -25342,14 +25351,17 @@ class ColumnPlugin extends BasePlugin {
|
|
|
25342
25351
|
onMouseUp(e) {
|
|
25343
25352
|
// apply new positions
|
|
25344
25353
|
if (this.dragData) {
|
|
25345
|
-
|
|
25346
|
-
|
|
25354
|
+
let relativePos = getLeftRelative(e.x, this.dragData.gridRect.left, this.dragData.scrollOffset);
|
|
25355
|
+
if (relativePos < 0) {
|
|
25356
|
+
relativePos = 0;
|
|
25357
|
+
}
|
|
25358
|
+
const newItem = getItemByPosition(this.staticDragData.cols, relativePos);
|
|
25347
25359
|
// prevent position change if needed
|
|
25348
|
-
const { defaultPrevented: stopDrag } = dispatch(this.revogrid, BEFORE_DRAG_END, Object.assign(Object.assign({}, this.staticDragData), { startPosition: startItem, newPosition: newItem }));
|
|
25360
|
+
const { defaultPrevented: stopDrag } = dispatch(this.revogrid, BEFORE_DRAG_END, Object.assign(Object.assign({}, this.staticDragData), { startPosition: this.staticDragData.startItem, newPosition: newItem }));
|
|
25349
25361
|
if (!stopDrag) {
|
|
25350
25362
|
const store = this.providers.column.stores[this.dragData.type].store;
|
|
25351
25363
|
const items = [...store.get('items')];
|
|
25352
|
-
const toMove = items.splice(startItem.itemIndex, 1);
|
|
25364
|
+
const toMove = items.splice(this.staticDragData.startItem.itemIndex, 1);
|
|
25353
25365
|
items.splice(newItem.itemIndex, 0, ...toMove);
|
|
25354
25366
|
store.set('items', items);
|
|
25355
25367
|
}
|
|
@@ -25361,6 +25373,8 @@ class ColumnPlugin extends BasePlugin {
|
|
|
25361
25373
|
each(this.localSubscriptions, ({ target, callback }, key) => target.removeEventListener(key, callback));
|
|
25362
25374
|
}
|
|
25363
25375
|
clearOrder() {
|
|
25376
|
+
this.staticDragData = null;
|
|
25377
|
+
this.dragData = null;
|
|
25364
25378
|
this.clearLocalSubscriptions();
|
|
25365
25379
|
this.orderUi.stop();
|
|
25366
25380
|
}
|
|
@@ -25371,27 +25385,23 @@ class ColumnPlugin extends BasePlugin {
|
|
|
25371
25385
|
super.clearSubscriptions();
|
|
25372
25386
|
this.clearLocalSubscriptions();
|
|
25373
25387
|
}
|
|
25374
|
-
getData({ gridEl, dataEl,
|
|
25388
|
+
getData({ gridEl, dataEl, data, }) {
|
|
25375
25389
|
const gridRect = gridEl.getBoundingClientRect();
|
|
25376
25390
|
const elRect = dataEl.getBoundingClientRect();
|
|
25391
|
+
const scrollOffset = elRect.left - gridRect.left;
|
|
25377
25392
|
return {
|
|
25378
|
-
el: dataEl,
|
|
25379
|
-
elScroll: scrollEl,
|
|
25380
25393
|
elRect,
|
|
25381
25394
|
gridRect,
|
|
25382
|
-
data,
|
|
25383
25395
|
type: data.pin || 'rgCol',
|
|
25384
|
-
|
|
25385
|
-
rows: this.getDimension('rgRow'),
|
|
25386
|
-
cols: this.getDimension('rgCol'),
|
|
25396
|
+
scrollOffset,
|
|
25387
25397
|
};
|
|
25388
25398
|
}
|
|
25389
25399
|
getDimension(type) {
|
|
25390
25400
|
return this.providers.dimension.stores[type].getCurrentState();
|
|
25391
25401
|
}
|
|
25392
25402
|
}
|
|
25393
|
-
function getLeftRelative(absoluteX,
|
|
25394
|
-
return absoluteX -
|
|
25403
|
+
function getLeftRelative(absoluteX, gridPos, offset) {
|
|
25404
|
+
return absoluteX - gridPos - offset;
|
|
25395
25405
|
}
|
|
25396
25406
|
|
|
25397
25407
|
const revoGridStyleCss = ".revo-drag-icon{-webkit-mask-image:url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg viewBox='0 0 438 383' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%3E%3Cpath d='M421.875,70.40625 C426.432292,70.40625 430.175781,68.9414062 433.105469,66.0117188 C436.035156,63.0820312 437.5,59.3385417 437.5,54.78125 L437.5,54.78125 L437.5,15.71875 C437.5,11.1614583 436.035156,7.41796875 433.105469,4.48828125 C430.175781,1.55859375 426.432292,0.09375 421.875,0.09375 L421.875,0.09375 L15.625,0.09375 C11.0677083,0.09375 7.32421875,1.55859375 4.39453125,4.48828125 C1.46484375,7.41796875 0,11.1614583 0,15.71875 L0,15.71875 L0,54.78125 C0,59.3385417 1.46484375,63.0820312 4.39453125,66.0117188 C7.32421875,68.9414062 11.0677083,70.40625 15.625,70.40625 L15.625,70.40625 L421.875,70.40625 Z M421.875,226.65625 C426.432292,226.65625 430.175781,225.191406 433.105469,222.261719 C436.035156,219.332031 437.5,215.588542 437.5,211.03125 L437.5,211.03125 L437.5,171.96875 C437.5,167.411458 436.035156,163.667969 433.105469,160.738281 C430.175781,157.808594 426.432292,156.34375 421.875,156.34375 L421.875,156.34375 L15.625,156.34375 C11.0677083,156.34375 7.32421875,157.808594 4.39453125,160.738281 C1.46484375,163.667969 0,167.411458 0,171.96875 L0,171.96875 L0,211.03125 C0,215.588542 1.46484375,219.332031 4.39453125,222.261719 C7.32421875,225.191406 11.0677083,226.65625 15.625,226.65625 L15.625,226.65625 L421.875,226.65625 Z M421.875,382.90625 C426.432292,382.90625 430.175781,381.441406 433.105469,378.511719 C436.035156,375.582031 437.5,371.838542 437.5,367.28125 L437.5,367.28125 L437.5,328.21875 C437.5,323.661458 436.035156,319.917969 433.105469,316.988281 C430.175781,314.058594 426.432292,312.59375 421.875,312.59375 L421.875,312.59375 L15.625,312.59375 C11.0677083,312.59375 7.32421875,314.058594 4.39453125,316.988281 C1.46484375,319.917969 0,323.661458 0,328.21875 L0,328.21875 L0,367.28125 C0,371.838542 1.46484375,375.582031 4.39453125,378.511719 C7.32421875,381.441406 11.0677083,382.90625 15.625,382.90625 L15.625,382.90625 L421.875,382.90625 Z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg viewBox='0 0 438 383' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%3E%3Cpath d='M421.875,70.40625 C426.432292,70.40625 430.175781,68.9414062 433.105469,66.0117188 C436.035156,63.0820312 437.5,59.3385417 437.5,54.78125 L437.5,54.78125 L437.5,15.71875 C437.5,11.1614583 436.035156,7.41796875 433.105469,4.48828125 C430.175781,1.55859375 426.432292,0.09375 421.875,0.09375 L421.875,0.09375 L15.625,0.09375 C11.0677083,0.09375 7.32421875,1.55859375 4.39453125,4.48828125 C1.46484375,7.41796875 0,11.1614583 0,15.71875 L0,15.71875 L0,54.78125 C0,59.3385417 1.46484375,63.0820312 4.39453125,66.0117188 C7.32421875,68.9414062 11.0677083,70.40625 15.625,70.40625 L15.625,70.40625 L421.875,70.40625 Z M421.875,226.65625 C426.432292,226.65625 430.175781,225.191406 433.105469,222.261719 C436.035156,219.332031 437.5,215.588542 437.5,211.03125 L437.5,211.03125 L437.5,171.96875 C437.5,167.411458 436.035156,163.667969 433.105469,160.738281 C430.175781,157.808594 426.432292,156.34375 421.875,156.34375 L421.875,156.34375 L15.625,156.34375 C11.0677083,156.34375 7.32421875,157.808594 4.39453125,160.738281 C1.46484375,163.667969 0,167.411458 0,171.96875 L0,171.96875 L0,211.03125 C0,215.588542 1.46484375,219.332031 4.39453125,222.261719 C7.32421875,225.191406 11.0677083,226.65625 15.625,226.65625 L15.625,226.65625 L421.875,226.65625 Z M421.875,382.90625 C426.432292,382.90625 430.175781,381.441406 433.105469,378.511719 C436.035156,375.582031 437.5,371.838542 437.5,367.28125 L437.5,367.28125 L437.5,328.21875 C437.5,323.661458 436.035156,319.917969 433.105469,316.988281 C430.175781,314.058594 426.432292,312.59375 421.875,312.59375 L421.875,312.59375 L15.625,312.59375 C11.0677083,312.59375 7.32421875,314.058594 4.39453125,316.988281 C1.46484375,319.917969 0,323.661458 0,328.21875 L0,328.21875 L0,367.28125 C0,371.838542 1.46484375,375.582031 4.39453125,378.511719 C7.32421875,381.441406 11.0677083,382.90625 15.625,382.90625 L15.625,382.90625 L421.875,382.90625 Z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\");width:11px;height:7px;background-size:cover;background-repeat:no-repeat}.revo-alt-icon{-webkit-mask-image:url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg viewBox='0 0 384 383' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%3E%3Cpath d='M192.4375,383 C197.424479,383 201.663411,381.254557 205.154297,377.763672 L205.154297,377.763672 L264.25,318.667969 C270.234375,312.683594 271.605794,306.075846 268.364258,298.844727 C265.122721,291.613607 259.51237,287.998047 251.533203,287.998047 L251.533203,287.998047 L213.382812,287.998047 L213.382812,212.445312 L288.935547,212.445312 L288.935547,250.595703 C288.935547,258.57487 292.551107,264.185221 299.782227,267.426758 C307.013346,270.668294 313.621094,269.296875 319.605469,263.3125 L319.605469,263.3125 L378.701172,204.216797 C382.192057,200.725911 383.9375,196.486979 383.9375,191.5 C383.9375,186.513021 382.192057,182.274089 378.701172,178.783203 L378.701172,178.783203 L319.605469,119.6875 C313.621094,114.201823 307.013346,112.955078 299.782227,115.947266 C292.551107,118.939453 288.935547,124.42513 288.935547,132.404297 L288.935547,132.404297 L288.935547,170.554688 L213.382812,170.554688 L213.382812,95.0019531 L251.533203,95.0019531 C259.51237,95.0019531 264.998047,91.3863932 267.990234,84.1552734 C270.982422,76.9241536 269.735677,70.3164062 264.25,64.3320312 L264.25,64.3320312 L205.154297,5.23632812 C201.663411,1.74544271 197.424479,0 192.4375,0 C187.450521,0 183.211589,1.74544271 179.720703,5.23632812 L179.720703,5.23632812 L120.625,64.3320312 C114.640625,70.3164062 113.269206,76.9241536 116.510742,84.1552734 C119.752279,91.3863932 125.36263,95.0019531 133.341797,95.0019531 L133.341797,95.0019531 L171.492188,95.0019531 L171.492188,170.554688 L95.9394531,170.554688 L95.9394531,132.404297 C95.9394531,124.42513 92.3238932,118.814779 85.0927734,115.573242 C77.8616536,112.331706 71.2539062,113.703125 65.2695312,119.6875 L65.2695312,119.6875 L6.17382812,178.783203 C2.68294271,182.274089 0.9375,186.513021 0.9375,191.5 C0.9375,196.486979 2.68294271,200.725911 6.17382812,204.216797 L6.17382812,204.216797 L65.2695312,263.3125 C71.2539062,268.798177 77.8616536,270.044922 85.0927734,267.052734 C92.3238932,264.060547 95.9394531,258.57487 95.9394531,250.595703 L95.9394531,250.595703 L95.9394531,212.445312 L171.492188,212.445312 L171.492188,287.998047 L133.341797,287.998047 C125.36263,287.998047 119.876953,291.613607 116.884766,298.844727 C113.892578,306.075846 115.139323,312.683594 120.625,318.667969 L120.625,318.667969 L179.720703,377.763672 C183.211589,381.254557 187.450521,383 192.4375,383 Z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg viewBox='0 0 384 383' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%3E%3Cpath d='M192.4375,383 C197.424479,383 201.663411,381.254557 205.154297,377.763672 L205.154297,377.763672 L264.25,318.667969 C270.234375,312.683594 271.605794,306.075846 268.364258,298.844727 C265.122721,291.613607 259.51237,287.998047 251.533203,287.998047 L251.533203,287.998047 L213.382812,287.998047 L213.382812,212.445312 L288.935547,212.445312 L288.935547,250.595703 C288.935547,258.57487 292.551107,264.185221 299.782227,267.426758 C307.013346,270.668294 313.621094,269.296875 319.605469,263.3125 L319.605469,263.3125 L378.701172,204.216797 C382.192057,200.725911 383.9375,196.486979 383.9375,191.5 C383.9375,186.513021 382.192057,182.274089 378.701172,178.783203 L378.701172,178.783203 L319.605469,119.6875 C313.621094,114.201823 307.013346,112.955078 299.782227,115.947266 C292.551107,118.939453 288.935547,124.42513 288.935547,132.404297 L288.935547,132.404297 L288.935547,170.554688 L213.382812,170.554688 L213.382812,95.0019531 L251.533203,95.0019531 C259.51237,95.0019531 264.998047,91.3863932 267.990234,84.1552734 C270.982422,76.9241536 269.735677,70.3164062 264.25,64.3320312 L264.25,64.3320312 L205.154297,5.23632812 C201.663411,1.74544271 197.424479,0 192.4375,0 C187.450521,0 183.211589,1.74544271 179.720703,5.23632812 L179.720703,5.23632812 L120.625,64.3320312 C114.640625,70.3164062 113.269206,76.9241536 116.510742,84.1552734 C119.752279,91.3863932 125.36263,95.0019531 133.341797,95.0019531 L133.341797,95.0019531 L171.492188,95.0019531 L171.492188,170.554688 L95.9394531,170.554688 L95.9394531,132.404297 C95.9394531,124.42513 92.3238932,118.814779 85.0927734,115.573242 C77.8616536,112.331706 71.2539062,113.703125 65.2695312,119.6875 L65.2695312,119.6875 L6.17382812,178.783203 C2.68294271,182.274089 0.9375,186.513021 0.9375,191.5 C0.9375,196.486979 2.68294271,200.725911 6.17382812,204.216797 L6.17382812,204.216797 L65.2695312,263.3125 C71.2539062,268.798177 77.8616536,270.044922 85.0927734,267.052734 C92.3238932,264.060547 95.9394531,258.57487 95.9394531,250.595703 L95.9394531,250.595703 L95.9394531,212.445312 L171.492188,212.445312 L171.492188,287.998047 L133.341797,287.998047 C125.36263,287.998047 119.876953,291.613607 116.884766,298.844727 C113.892578,306.075846 115.139323,312.683594 120.625,318.667969 L120.625,318.667969 L179.720703,377.763672 C183.211589,381.254557 187.450521,383 192.4375,383 Z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\");width:11px;height:11px;background-size:cover;background-repeat:no-repeat}.arrow-down{position:absolute;right:5px;top:0}.arrow-down svg{width:8px;margin-top:5px;margin-left:5px;opacity:0.4}.cell-value-wrapper{margin-right:10px;overflow:hidden;text-overflow:ellipsis}.revo-button{position:relative;overflow:hidden;color:#fff;background-color:#6200ee;height:34px;line-height:34px;padding:0 15px;outline:0;border:0;border-radius:7px;box-sizing:border-box;cursor:pointer}.revo-button.green{background-color:#2ee072;border:1px solid #20d565}.revo-button.red{background-color:#E0662E;border:1px solid #d55920}.revo-button:disabled,.revo-button[disabled]{cursor:not-allowed !important;filter:opacity(0.35) !important}.revo-button.light{border:2px solid #cedefa;line-height:32px;background:none;color:#4876ca;box-shadow:none}revo-grid[theme=default]{font-size:12px}revo-grid[theme=default] revogr-header{text-align:center;line-height:30px;background-color:#f8f9fa}revo-grid[theme=default] revogr-header .group-rgRow{box-shadow:none}revo-grid[theme=default] revogr-header .header-rgRow,revo-grid[theme=default] revogr-header .group-rgRow{text-transform:uppercase;font-size:12px;color:#61656a}revo-grid[theme=default] revogr-header .header-rgRow{height:30px;box-shadow:0 -1px 0 0 #c0c0c0 inset}revo-grid[theme=default] revogr-header .rgHeaderCell{box-shadow:-1px 0 0 0 #c0c0c0, -1px 0 0 0 #c0c0c0 inset, 0 -1px 0 0 #c0c0c0, 0 -1px 0 0 #c0c0c0 inset}revo-grid[theme=default] revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=default] .rowHeaders{background-color:#f8f9fa}revo-grid[theme=default] .rowHeaders revogr-data .rgCell{color:#61656a;box-shadow:0 -1px 0 0 #c0c0c0 inset, -1px 0 0 0 #c0c0c0 inset}revo-grid[theme=default] .rowHeaders revogr-header{box-shadow:0 -1px 0 0 #c0c0c0 inset, -1px 0 0 0 #c0c0c0 inset}revo-grid[theme=default] revogr-viewport-scroll.colPinStart revogr-data .rgRow .rgCell:last-child{box-shadow:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #c0c0c0 inset}revo-grid[theme=default] revogr-viewport-scroll.colPinStart .footer-wrapper revogr-data .rgRow:first-child .rgCell{box-shadow:0 1px 0 0 #c0c0c0 inset, -1px 0 0 0 #c0c0c0 inset}revo-grid[theme=default] revogr-viewport-scroll.colPinEnd,revo-grid[theme=default] revogr-viewport-scroll.colPinEnd revogr-header{box-shadow:1px 0 0 #c0c0c0 inset}revo-grid[theme=default] .footer-wrapper revogr-data .rgRow:first-child .rgCell{box-shadow:0 1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset, 0 -1px 0 0 #e2e3e3 inset}revo-grid[theme=default] revogr-data{text-align:center}revo-grid[theme=default] revogr-data .rgRow{line-height:27px;box-shadow:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset}revo-grid[theme=default] revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=default] revogr-data .rgCell{box-shadow:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset}revo-grid[theme=default] revogr-data .rgCell.disabled{background-color:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset}revo-grid[theme=material]{font-family:Nunito, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}revo-grid[theme=material] revogr-header{line-height:50px;font-weight:600;text-align:left}revo-grid[theme=material] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=material] revogr-header .header-rgRow{height:50px}revo-grid[theme=material] revogr-data{text-align:left}revo-grid[theme=material] revogr-data .rgRow{line-height:42px}revo-grid[theme=material] revogr-data .rgCell{padding:0 15px}revo-grid[theme=material] .viewports{width:100%}revo-grid[theme=material] .rowHeaders{background-color:#f7faff}revo-grid[theme=material] .rowHeaders revogr-data .rgCell{color:#757a82}revo-grid[theme=material] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #f1f1f1, 0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-header .rgHeaderCell.sortable:hover{background-color:#f1f1f1}revo-grid[theme=material] revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=material] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #f1f1f1}revo-grid[theme=material] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #f1f1f1}revo-grid[theme=material] revogr-data .rgRow{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=material] revogr-data .rgCell{color:rgba(0, 0, 0, 0.87)}revo-grid[theme=material] revogr-data .rgCell.disabled{background-color:#f7f7f7}revo-grid[theme=material] revogr-data .revo-draggable>.revo-drag-icon{background-color:#d4d4d4}revo-grid[theme=material] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:black}revo-grid[theme=darkMaterial]{font-family:Nunito, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#d8d8d8}revo-grid[theme=darkMaterial] revogr-header{line-height:50px;font-weight:600;text-align:left}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=darkMaterial] revogr-header .header-rgRow{height:50px}revo-grid[theme=darkMaterial] revogr-data{text-align:left}revo-grid[theme=darkMaterial] revogr-data .rgRow{line-height:42px}revo-grid[theme=darkMaterial] revogr-data .rgCell{padding:0 15px}revo-grid[theme=darkMaterial] .viewports{width:100%}revo-grid[theme=darkMaterial] .rowHeaders{background-color:rgba(40, 39, 43, 0.8)}revo-grid[theme=darkMaterial] .rowHeaders revogr-data .rgCell{color:rgba(216, 216, 216, 0.8)}revo-grid[theme=darkMaterial] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #404040, 0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell.sortable:hover{background-color:rgba(64, 64, 64, 0.5)}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell.focused-cell{background:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkMaterial] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #404040}revo-grid[theme=darkMaterial] revogr-data .rgCell{color:rgba(216, 216, 216, 0.9)}revo-grid[theme=darkMaterial] revogr-data .rgRow{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-data .rgRow.focused-rgRow{background-color:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkMaterial] revogr-data .revo-draggable>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.5)}revo-grid[theme=darkMaterial] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.7)}revo-grid[theme=darkMaterial] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #404040}revo-grid[theme=darkCompact]{font-family:Nunito, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#d8d8d8}revo-grid[theme=darkCompact] revogr-header{line-height:45px;font-weight:600;text-align:left}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=darkCompact] revogr-header .header-rgRow{height:45px}revo-grid[theme=darkCompact] revogr-data{text-align:left}revo-grid[theme=darkCompact] revogr-data .rgRow{line-height:32px}revo-grid[theme=darkCompact] revogr-data .rgCell{padding:0 15px}revo-grid[theme=darkCompact] .viewports{width:100%}revo-grid[theme=darkCompact] .rowHeaders{background-color:rgba(40, 39, 43, 0.8)}revo-grid[theme=darkCompact] .rowHeaders revogr-data .rgCell{color:rgba(216, 216, 216, 0.8)}revo-grid[theme=darkCompact] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #404040, 0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell.sortable:hover{background-color:rgba(64, 64, 64, 0.5)}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell.focused-cell{background:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkCompact] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #404040}revo-grid[theme=darkCompact] revogr-data .rgCell{color:rgba(216, 216, 216, 0.9)}revo-grid[theme=darkCompact] revogr-data .rgRow{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-data .rgRow.focused-rgRow{background-color:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkCompact] revogr-data .revo-draggable>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.5)}revo-grid[theme=darkCompact] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.7)}revo-grid[theme=darkCompact] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #404040}revo-grid[theme=compact]{font-family:Nunito, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}revo-grid[theme=compact] revogr-header{line-height:45px;font-weight:600;text-align:left}revo-grid[theme=compact] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=compact] revogr-header .header-rgRow{height:45px}revo-grid[theme=compact] revogr-data{text-align:left}revo-grid[theme=compact] revogr-data .rgRow{line-height:32px}revo-grid[theme=compact] revogr-data .rgCell{padding:0 15px}revo-grid[theme=compact] .viewports{width:100%}revo-grid[theme=compact] .rowHeaders{background-color:#f7faff}revo-grid[theme=compact] .rowHeaders revogr-data .rgCell{color:#757a82}revo-grid[theme=compact] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #f1f1f1, 0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-header .rgHeaderCell.sortable:hover{background-color:#f1f1f1}revo-grid[theme=compact] revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=compact] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #f1f1f1}revo-grid[theme=compact] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #f1f1f1}revo-grid[theme=compact] revogr-data .rgRow{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=compact] revogr-data .rgCell{color:rgba(0, 0, 0, 0.87)}revo-grid[theme=compact] revogr-data .rgCell.disabled{background-color:#f7f7f7}revo-grid[theme=compact] revogr-data .revo-draggable>.revo-drag-icon{background-color:#d4d4d4}revo-grid[theme=compact] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:black}revo-grid[theme=compact] revo-dropdown .rv-dr-root{padding:0px 9px}revo-grid{display:block;height:100%;font-family:Helvetica, Arial, Sans-Serif, serif;font-size:14px;position:relative;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;width:100%;height:100%}revo-grid .footer-wrapper,revo-grid .header-wrapper{width:100%}revo-grid .footer-wrapper revogr-data,revo-grid .header-wrapper revogr-data{z-index:3}revo-grid revo-dropdown{width:100%}revo-grid revo-dropdown .rv-dr-root{max-height:100%}revo-grid revo-dropdown.shrink label{opacity:0}revo-grid .viewports{max-height:100%;display:flex;flex-direction:row;align-items:flex-start;max-width:100%}revo-grid .main-viewport{flex-grow:1;height:0;display:flex;flex-direction:row}revo-grid .draggable{position:fixed;height:30px;line-height:30px;background:#fff;border-radius:3px;display:block;z-index:100;margin-top:5px;margin-right:-20px;box-shadow:0 4px 20px 0 rgba(0, 0, 0, 0.15);padding-left:20px;padding-right:5px}revo-grid .draggable.hidden{display:none}revo-grid .draggable .revo-alt-icon{background-color:black;position:absolute;left:5px;top:10px}revo-grid .draggable-wrapper.hidden{display:none}revo-grid .drag-position{position:absolute;left:0;right:0;height:1px;z-index:2;background:gray}revo-grid .drag-position-y{position:absolute;top:0;left:0;bottom:0;width:1px;z-index:2;background:gray}revo-grid .drag-auto-scroll-y{pointer-events:none;position:absolute;left:0;top:0;height:50px;width:1px}revo-grid .clipboard{position:absolute;left:0;top:0}revo-grid revogr-scroll-virtual{position:relative}revo-grid revogr-scroll-virtual.vertical,revo-grid revogr-scroll-virtual.horizontal{z-index:3}";
|
|
@@ -25495,7 +25505,6 @@ const RevoGridComponent = class extends HTMLElement {
|
|
|
25495
25505
|
/**
|
|
25496
25506
|
* Enables column move plugin
|
|
25497
25507
|
* Can be boolean
|
|
25498
|
-
* Can be filter collection
|
|
25499
25508
|
*/
|
|
25500
25509
|
this.canMoveColumns = false;
|
|
25501
25510
|
/**
|
|
@@ -27427,6 +27436,8 @@ class ResizeDirective {
|
|
|
27427
27436
|
if (event.defaultPrevented) {
|
|
27428
27437
|
return;
|
|
27429
27438
|
}
|
|
27439
|
+
// stop other events if resize in progress
|
|
27440
|
+
event.preventDefault();
|
|
27430
27441
|
this.dropInitial();
|
|
27431
27442
|
for (let elClass in RESIZE_MASK) {
|
|
27432
27443
|
const target = event.target;
|
|
@@ -1758,7 +1758,28 @@ const loadModule = (cmpMeta, hostRef, hmrVersionId) => {
|
|
|
1758
1758
|
if (module) {
|
|
1759
1759
|
return module[exportName];
|
|
1760
1760
|
}
|
|
1761
|
-
|
|
1761
|
+
|
|
1762
|
+
if (!hmrVersionId || !BUILD.hotModuleReplacement) {
|
|
1763
|
+
const processMod = importedModule => {
|
|
1764
|
+
cmpModules.set(bundleId, importedModule);
|
|
1765
|
+
return importedModule[exportName];
|
|
1766
|
+
}
|
|
1767
|
+
switch(bundleId) {
|
|
1768
|
+
|
|
1769
|
+
case 'revo-grid_11.cjs':
|
|
1770
|
+
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
1771
|
+
/* webpackMode: "lazy" */
|
|
1772
|
+
'./revo-grid_11.cjs.entry.js')); }).then(processMod, consoleError);
|
|
1773
|
+
case 'revogr-clipboard.cjs':
|
|
1774
|
+
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
1775
|
+
/* webpackMode: "lazy" */
|
|
1776
|
+
'./revogr-clipboard.cjs.entry.js')); }).then(processMod, consoleError);
|
|
1777
|
+
case 'revogr-filter-panel.cjs':
|
|
1778
|
+
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
1779
|
+
/* webpackMode: "lazy" */
|
|
1780
|
+
'./revogr-filter-panel.cjs.entry.js')); }).then(processMod, consoleError);
|
|
1781
|
+
}
|
|
1782
|
+
}
|
|
1762
1783
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
1763
1784
|
/* @vite-ignore */
|
|
1764
1785
|
/* webpackInclude: /\.entry\.js$/ */
|
|
@@ -4888,7 +4888,7 @@ class AutoSizeColumn extends BasePlugin {
|
|
|
4888
4888
|
const sizes = {};
|
|
4889
4889
|
each(autoSize[type], rgCol => {
|
|
4890
4890
|
// calculate size
|
|
4891
|
-
rgCol.size = sizes[rgCol.index] = source.reduce((prev, rgRow) => Math.max(prev, this.getLength(rgRow[rgCol.prop])),
|
|
4891
|
+
rgCol.size = sizes[rgCol.index] = source.reduce((prev, rgRow) => Math.max(prev, this.getLength(rgRow[rgCol.prop])), this.getLength(rgCol.name || ''));
|
|
4892
4892
|
});
|
|
4893
4893
|
this.providers.dimensionProvider.setDimensionSize(type, sizes);
|
|
4894
4894
|
});
|
|
@@ -24644,21 +24644,21 @@ class ColumnOrderHandler {
|
|
|
24644
24644
|
inline: 'nearest',
|
|
24645
24645
|
});
|
|
24646
24646
|
}
|
|
24647
|
-
start(e, {
|
|
24648
|
-
const scrollContainerRect =
|
|
24647
|
+
start(e, { dataEl, gridRect, scrollEl }, dir = 'left') {
|
|
24648
|
+
const scrollContainerRect = scrollEl.getBoundingClientRect();
|
|
24649
24649
|
if (scrollContainerRect) {
|
|
24650
24650
|
this.offset = scrollContainerRect[dir] - gridRect[dir];
|
|
24651
24651
|
}
|
|
24652
|
-
this.renderAutoscroll(e,
|
|
24652
|
+
this.renderAutoscroll(e, dataEl);
|
|
24653
24653
|
}
|
|
24654
24654
|
stop() {
|
|
24655
24655
|
var _a;
|
|
24656
24656
|
if (this.element) {
|
|
24657
24657
|
this.element.hidden = true;
|
|
24658
24658
|
}
|
|
24659
|
+
this.offset = 0;
|
|
24659
24660
|
(_a = this.autoscrollEl) === null || _a === void 0 ? void 0 : _a.remove();
|
|
24660
24661
|
this.autoscrollEl = undefined;
|
|
24661
|
-
this.offset = 0;
|
|
24662
24662
|
}
|
|
24663
24663
|
showHandler(pos, size, direction = 'translateX') {
|
|
24664
24664
|
if (!this.element) {
|
|
@@ -24727,6 +24727,9 @@ class ColumnPlugin extends BasePlugin {
|
|
|
24727
24727
|
this.addEventListener(COLUMN_CLICK, ({ detail }) => this.dragStart(detail));
|
|
24728
24728
|
}
|
|
24729
24729
|
dragStart({ event, data }) {
|
|
24730
|
+
if (event.defaultPrevented) {
|
|
24731
|
+
return;
|
|
24732
|
+
}
|
|
24730
24733
|
const { defaultPrevented } = dispatch(this.revogrid, DRAG_START, data);
|
|
24731
24734
|
// check if allowed to drag particulat column
|
|
24732
24735
|
if (defaultPrevented) {
|
|
@@ -24741,16 +24744,22 @@ class ColumnPlugin extends BasePlugin {
|
|
|
24741
24744
|
if (!dataEl || !scrollEl) {
|
|
24742
24745
|
return;
|
|
24743
24746
|
}
|
|
24747
|
+
const cols = this.getDimension('rgCol');
|
|
24748
|
+
const gridRect = this.revogrid.getBoundingClientRect();
|
|
24749
|
+
const elRect = dataEl.getBoundingClientRect();
|
|
24750
|
+
const startItem = getItemByPosition(cols, getLeftRelative(event.x, gridRect.left, elRect.left - gridRect.left));
|
|
24744
24751
|
this.staticDragData = {
|
|
24745
24752
|
startPos: event.x,
|
|
24753
|
+
startItem,
|
|
24746
24754
|
data,
|
|
24747
24755
|
dataEl,
|
|
24748
24756
|
scrollEl,
|
|
24749
24757
|
gridEl: this.revogrid,
|
|
24758
|
+
cols,
|
|
24750
24759
|
};
|
|
24751
24760
|
this.dragData = this.getData(this.staticDragData);
|
|
24752
24761
|
mousemove.target.addEventListener('mousemove', mousemove.callback);
|
|
24753
|
-
this.orderUi.start(event, this.dragData);
|
|
24762
|
+
this.orderUi.start(event, Object.assign(Object.assign({}, this.dragData), this.staticDragData));
|
|
24754
24763
|
}
|
|
24755
24764
|
doMove(e) {
|
|
24756
24765
|
if (!this.staticDragData) {
|
|
@@ -24762,10 +24771,10 @@ class ColumnPlugin extends BasePlugin {
|
|
|
24762
24771
|
}
|
|
24763
24772
|
const start = this.staticDragData.startPos;
|
|
24764
24773
|
if (Math.abs(start - e.x) > 10) {
|
|
24765
|
-
const x = getLeftRelative(e.x, dragData);
|
|
24766
|
-
const rgCol = getItemByPosition(
|
|
24774
|
+
const x = getLeftRelative(e.x, this.dragData.gridRect.left, this.dragData.scrollOffset);
|
|
24775
|
+
const rgCol = getItemByPosition(this.staticDragData.cols, x);
|
|
24767
24776
|
this.orderUi.autoscroll(x, dragData.elRect.width);
|
|
24768
|
-
this.orderUi.showHandler(rgCol.end + dragData.
|
|
24777
|
+
this.orderUi.showHandler(rgCol.end + dragData.scrollOffset, dragData.gridRect.width);
|
|
24769
24778
|
}
|
|
24770
24779
|
}
|
|
24771
24780
|
move(e) {
|
|
@@ -24779,14 +24788,17 @@ class ColumnPlugin extends BasePlugin {
|
|
|
24779
24788
|
onMouseUp(e) {
|
|
24780
24789
|
// apply new positions
|
|
24781
24790
|
if (this.dragData) {
|
|
24782
|
-
|
|
24783
|
-
|
|
24791
|
+
let relativePos = getLeftRelative(e.x, this.dragData.gridRect.left, this.dragData.scrollOffset);
|
|
24792
|
+
if (relativePos < 0) {
|
|
24793
|
+
relativePos = 0;
|
|
24794
|
+
}
|
|
24795
|
+
const newItem = getItemByPosition(this.staticDragData.cols, relativePos);
|
|
24784
24796
|
// prevent position change if needed
|
|
24785
|
-
const { defaultPrevented: stopDrag } = dispatch(this.revogrid, BEFORE_DRAG_END, Object.assign(Object.assign({}, this.staticDragData), { startPosition: startItem, newPosition: newItem }));
|
|
24797
|
+
const { defaultPrevented: stopDrag } = dispatch(this.revogrid, BEFORE_DRAG_END, Object.assign(Object.assign({}, this.staticDragData), { startPosition: this.staticDragData.startItem, newPosition: newItem }));
|
|
24786
24798
|
if (!stopDrag) {
|
|
24787
24799
|
const store = this.providers.column.stores[this.dragData.type].store;
|
|
24788
24800
|
const items = [...store.get('items')];
|
|
24789
|
-
const toMove = items.splice(startItem.itemIndex, 1);
|
|
24801
|
+
const toMove = items.splice(this.staticDragData.startItem.itemIndex, 1);
|
|
24790
24802
|
items.splice(newItem.itemIndex, 0, ...toMove);
|
|
24791
24803
|
store.set('items', items);
|
|
24792
24804
|
}
|
|
@@ -24798,6 +24810,8 @@ class ColumnPlugin extends BasePlugin {
|
|
|
24798
24810
|
each(this.localSubscriptions, ({ target, callback }, key) => target.removeEventListener(key, callback));
|
|
24799
24811
|
}
|
|
24800
24812
|
clearOrder() {
|
|
24813
|
+
this.staticDragData = null;
|
|
24814
|
+
this.dragData = null;
|
|
24801
24815
|
this.clearLocalSubscriptions();
|
|
24802
24816
|
this.orderUi.stop();
|
|
24803
24817
|
}
|
|
@@ -24808,27 +24822,23 @@ class ColumnPlugin extends BasePlugin {
|
|
|
24808
24822
|
super.clearSubscriptions();
|
|
24809
24823
|
this.clearLocalSubscriptions();
|
|
24810
24824
|
}
|
|
24811
|
-
getData({ gridEl, dataEl,
|
|
24825
|
+
getData({ gridEl, dataEl, data, }) {
|
|
24812
24826
|
const gridRect = gridEl.getBoundingClientRect();
|
|
24813
24827
|
const elRect = dataEl.getBoundingClientRect();
|
|
24828
|
+
const scrollOffset = elRect.left - gridRect.left;
|
|
24814
24829
|
return {
|
|
24815
|
-
el: dataEl,
|
|
24816
|
-
elScroll: scrollEl,
|
|
24817
24830
|
elRect,
|
|
24818
24831
|
gridRect,
|
|
24819
|
-
data,
|
|
24820
24832
|
type: data.pin || 'rgCol',
|
|
24821
|
-
|
|
24822
|
-
rows: this.getDimension('rgRow'),
|
|
24823
|
-
cols: this.getDimension('rgCol'),
|
|
24833
|
+
scrollOffset,
|
|
24824
24834
|
};
|
|
24825
24835
|
}
|
|
24826
24836
|
getDimension(type) {
|
|
24827
24837
|
return this.providers.dimension.stores[type].getCurrentState();
|
|
24828
24838
|
}
|
|
24829
24839
|
}
|
|
24830
|
-
function getLeftRelative(absoluteX,
|
|
24831
|
-
return absoluteX -
|
|
24840
|
+
function getLeftRelative(absoluteX, gridPos, offset) {
|
|
24841
|
+
return absoluteX - gridPos - offset;
|
|
24832
24842
|
}
|
|
24833
24843
|
|
|
24834
24844
|
const revoGridStyleCss = ".revo-drag-icon{-webkit-mask-image:url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg viewBox='0 0 438 383' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%3E%3Cpath d='M421.875,70.40625 C426.432292,70.40625 430.175781,68.9414062 433.105469,66.0117188 C436.035156,63.0820312 437.5,59.3385417 437.5,54.78125 L437.5,54.78125 L437.5,15.71875 C437.5,11.1614583 436.035156,7.41796875 433.105469,4.48828125 C430.175781,1.55859375 426.432292,0.09375 421.875,0.09375 L421.875,0.09375 L15.625,0.09375 C11.0677083,0.09375 7.32421875,1.55859375 4.39453125,4.48828125 C1.46484375,7.41796875 0,11.1614583 0,15.71875 L0,15.71875 L0,54.78125 C0,59.3385417 1.46484375,63.0820312 4.39453125,66.0117188 C7.32421875,68.9414062 11.0677083,70.40625 15.625,70.40625 L15.625,70.40625 L421.875,70.40625 Z M421.875,226.65625 C426.432292,226.65625 430.175781,225.191406 433.105469,222.261719 C436.035156,219.332031 437.5,215.588542 437.5,211.03125 L437.5,211.03125 L437.5,171.96875 C437.5,167.411458 436.035156,163.667969 433.105469,160.738281 C430.175781,157.808594 426.432292,156.34375 421.875,156.34375 L421.875,156.34375 L15.625,156.34375 C11.0677083,156.34375 7.32421875,157.808594 4.39453125,160.738281 C1.46484375,163.667969 0,167.411458 0,171.96875 L0,171.96875 L0,211.03125 C0,215.588542 1.46484375,219.332031 4.39453125,222.261719 C7.32421875,225.191406 11.0677083,226.65625 15.625,226.65625 L15.625,226.65625 L421.875,226.65625 Z M421.875,382.90625 C426.432292,382.90625 430.175781,381.441406 433.105469,378.511719 C436.035156,375.582031 437.5,371.838542 437.5,367.28125 L437.5,367.28125 L437.5,328.21875 C437.5,323.661458 436.035156,319.917969 433.105469,316.988281 C430.175781,314.058594 426.432292,312.59375 421.875,312.59375 L421.875,312.59375 L15.625,312.59375 C11.0677083,312.59375 7.32421875,314.058594 4.39453125,316.988281 C1.46484375,319.917969 0,323.661458 0,328.21875 L0,328.21875 L0,367.28125 C0,371.838542 1.46484375,375.582031 4.39453125,378.511719 C7.32421875,381.441406 11.0677083,382.90625 15.625,382.90625 L15.625,382.90625 L421.875,382.90625 Z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg viewBox='0 0 438 383' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%3E%3Cpath d='M421.875,70.40625 C426.432292,70.40625 430.175781,68.9414062 433.105469,66.0117188 C436.035156,63.0820312 437.5,59.3385417 437.5,54.78125 L437.5,54.78125 L437.5,15.71875 C437.5,11.1614583 436.035156,7.41796875 433.105469,4.48828125 C430.175781,1.55859375 426.432292,0.09375 421.875,0.09375 L421.875,0.09375 L15.625,0.09375 C11.0677083,0.09375 7.32421875,1.55859375 4.39453125,4.48828125 C1.46484375,7.41796875 0,11.1614583 0,15.71875 L0,15.71875 L0,54.78125 C0,59.3385417 1.46484375,63.0820312 4.39453125,66.0117188 C7.32421875,68.9414062 11.0677083,70.40625 15.625,70.40625 L15.625,70.40625 L421.875,70.40625 Z M421.875,226.65625 C426.432292,226.65625 430.175781,225.191406 433.105469,222.261719 C436.035156,219.332031 437.5,215.588542 437.5,211.03125 L437.5,211.03125 L437.5,171.96875 C437.5,167.411458 436.035156,163.667969 433.105469,160.738281 C430.175781,157.808594 426.432292,156.34375 421.875,156.34375 L421.875,156.34375 L15.625,156.34375 C11.0677083,156.34375 7.32421875,157.808594 4.39453125,160.738281 C1.46484375,163.667969 0,167.411458 0,171.96875 L0,171.96875 L0,211.03125 C0,215.588542 1.46484375,219.332031 4.39453125,222.261719 C7.32421875,225.191406 11.0677083,226.65625 15.625,226.65625 L15.625,226.65625 L421.875,226.65625 Z M421.875,382.90625 C426.432292,382.90625 430.175781,381.441406 433.105469,378.511719 C436.035156,375.582031 437.5,371.838542 437.5,367.28125 L437.5,367.28125 L437.5,328.21875 C437.5,323.661458 436.035156,319.917969 433.105469,316.988281 C430.175781,314.058594 426.432292,312.59375 421.875,312.59375 L421.875,312.59375 L15.625,312.59375 C11.0677083,312.59375 7.32421875,314.058594 4.39453125,316.988281 C1.46484375,319.917969 0,323.661458 0,328.21875 L0,328.21875 L0,367.28125 C0,371.838542 1.46484375,375.582031 4.39453125,378.511719 C7.32421875,381.441406 11.0677083,382.90625 15.625,382.90625 L15.625,382.90625 L421.875,382.90625 Z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\");width:11px;height:7px;background-size:cover;background-repeat:no-repeat}.revo-alt-icon{-webkit-mask-image:url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg viewBox='0 0 384 383' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%3E%3Cpath d='M192.4375,383 C197.424479,383 201.663411,381.254557 205.154297,377.763672 L205.154297,377.763672 L264.25,318.667969 C270.234375,312.683594 271.605794,306.075846 268.364258,298.844727 C265.122721,291.613607 259.51237,287.998047 251.533203,287.998047 L251.533203,287.998047 L213.382812,287.998047 L213.382812,212.445312 L288.935547,212.445312 L288.935547,250.595703 C288.935547,258.57487 292.551107,264.185221 299.782227,267.426758 C307.013346,270.668294 313.621094,269.296875 319.605469,263.3125 L319.605469,263.3125 L378.701172,204.216797 C382.192057,200.725911 383.9375,196.486979 383.9375,191.5 C383.9375,186.513021 382.192057,182.274089 378.701172,178.783203 L378.701172,178.783203 L319.605469,119.6875 C313.621094,114.201823 307.013346,112.955078 299.782227,115.947266 C292.551107,118.939453 288.935547,124.42513 288.935547,132.404297 L288.935547,132.404297 L288.935547,170.554688 L213.382812,170.554688 L213.382812,95.0019531 L251.533203,95.0019531 C259.51237,95.0019531 264.998047,91.3863932 267.990234,84.1552734 C270.982422,76.9241536 269.735677,70.3164062 264.25,64.3320312 L264.25,64.3320312 L205.154297,5.23632812 C201.663411,1.74544271 197.424479,0 192.4375,0 C187.450521,0 183.211589,1.74544271 179.720703,5.23632812 L179.720703,5.23632812 L120.625,64.3320312 C114.640625,70.3164062 113.269206,76.9241536 116.510742,84.1552734 C119.752279,91.3863932 125.36263,95.0019531 133.341797,95.0019531 L133.341797,95.0019531 L171.492188,95.0019531 L171.492188,170.554688 L95.9394531,170.554688 L95.9394531,132.404297 C95.9394531,124.42513 92.3238932,118.814779 85.0927734,115.573242 C77.8616536,112.331706 71.2539062,113.703125 65.2695312,119.6875 L65.2695312,119.6875 L6.17382812,178.783203 C2.68294271,182.274089 0.9375,186.513021 0.9375,191.5 C0.9375,196.486979 2.68294271,200.725911 6.17382812,204.216797 L6.17382812,204.216797 L65.2695312,263.3125 C71.2539062,268.798177 77.8616536,270.044922 85.0927734,267.052734 C92.3238932,264.060547 95.9394531,258.57487 95.9394531,250.595703 L95.9394531,250.595703 L95.9394531,212.445312 L171.492188,212.445312 L171.492188,287.998047 L133.341797,287.998047 C125.36263,287.998047 119.876953,291.613607 116.884766,298.844727 C113.892578,306.075846 115.139323,312.683594 120.625,318.667969 L120.625,318.667969 L179.720703,377.763672 C183.211589,381.254557 187.450521,383 192.4375,383 Z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg viewBox='0 0 384 383' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg%3E%3Cpath d='M192.4375,383 C197.424479,383 201.663411,381.254557 205.154297,377.763672 L205.154297,377.763672 L264.25,318.667969 C270.234375,312.683594 271.605794,306.075846 268.364258,298.844727 C265.122721,291.613607 259.51237,287.998047 251.533203,287.998047 L251.533203,287.998047 L213.382812,287.998047 L213.382812,212.445312 L288.935547,212.445312 L288.935547,250.595703 C288.935547,258.57487 292.551107,264.185221 299.782227,267.426758 C307.013346,270.668294 313.621094,269.296875 319.605469,263.3125 L319.605469,263.3125 L378.701172,204.216797 C382.192057,200.725911 383.9375,196.486979 383.9375,191.5 C383.9375,186.513021 382.192057,182.274089 378.701172,178.783203 L378.701172,178.783203 L319.605469,119.6875 C313.621094,114.201823 307.013346,112.955078 299.782227,115.947266 C292.551107,118.939453 288.935547,124.42513 288.935547,132.404297 L288.935547,132.404297 L288.935547,170.554688 L213.382812,170.554688 L213.382812,95.0019531 L251.533203,95.0019531 C259.51237,95.0019531 264.998047,91.3863932 267.990234,84.1552734 C270.982422,76.9241536 269.735677,70.3164062 264.25,64.3320312 L264.25,64.3320312 L205.154297,5.23632812 C201.663411,1.74544271 197.424479,0 192.4375,0 C187.450521,0 183.211589,1.74544271 179.720703,5.23632812 L179.720703,5.23632812 L120.625,64.3320312 C114.640625,70.3164062 113.269206,76.9241536 116.510742,84.1552734 C119.752279,91.3863932 125.36263,95.0019531 133.341797,95.0019531 L133.341797,95.0019531 L171.492188,95.0019531 L171.492188,170.554688 L95.9394531,170.554688 L95.9394531,132.404297 C95.9394531,124.42513 92.3238932,118.814779 85.0927734,115.573242 C77.8616536,112.331706 71.2539062,113.703125 65.2695312,119.6875 L65.2695312,119.6875 L6.17382812,178.783203 C2.68294271,182.274089 0.9375,186.513021 0.9375,191.5 C0.9375,196.486979 2.68294271,200.725911 6.17382812,204.216797 L6.17382812,204.216797 L65.2695312,263.3125 C71.2539062,268.798177 77.8616536,270.044922 85.0927734,267.052734 C92.3238932,264.060547 95.9394531,258.57487 95.9394531,250.595703 L95.9394531,250.595703 L95.9394531,212.445312 L171.492188,212.445312 L171.492188,287.998047 L133.341797,287.998047 C125.36263,287.998047 119.876953,291.613607 116.884766,298.844727 C113.892578,306.075846 115.139323,312.683594 120.625,318.667969 L120.625,318.667969 L179.720703,377.763672 C183.211589,381.254557 187.450521,383 192.4375,383 Z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\");width:11px;height:11px;background-size:cover;background-repeat:no-repeat}.arrow-down{position:absolute;right:5px;top:0}.arrow-down svg{width:8px;margin-top:5px;margin-left:5px;opacity:0.4}.cell-value-wrapper{margin-right:10px;overflow:hidden;text-overflow:ellipsis}.revo-button{position:relative;overflow:hidden;color:#fff;background-color:#6200ee;height:34px;line-height:34px;padding:0 15px;outline:0;border:0;border-radius:7px;box-sizing:border-box;cursor:pointer}.revo-button.green{background-color:#2ee072;border:1px solid #20d565}.revo-button.red{background-color:#E0662E;border:1px solid #d55920}.revo-button:disabled,.revo-button[disabled]{cursor:not-allowed !important;filter:opacity(0.35) !important}.revo-button.light{border:2px solid #cedefa;line-height:32px;background:none;color:#4876ca;box-shadow:none}revo-grid[theme=default]{font-size:12px}revo-grid[theme=default] revogr-header{text-align:center;line-height:30px;background-color:#f8f9fa}revo-grid[theme=default] revogr-header .group-rgRow{box-shadow:none}revo-grid[theme=default] revogr-header .header-rgRow,revo-grid[theme=default] revogr-header .group-rgRow{text-transform:uppercase;font-size:12px;color:#61656a}revo-grid[theme=default] revogr-header .header-rgRow{height:30px;box-shadow:0 -1px 0 0 #c0c0c0 inset}revo-grid[theme=default] revogr-header .rgHeaderCell{box-shadow:-1px 0 0 0 #c0c0c0, -1px 0 0 0 #c0c0c0 inset, 0 -1px 0 0 #c0c0c0, 0 -1px 0 0 #c0c0c0 inset}revo-grid[theme=default] revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=default] .rowHeaders{background-color:#f8f9fa}revo-grid[theme=default] .rowHeaders revogr-data .rgCell{color:#61656a;box-shadow:0 -1px 0 0 #c0c0c0 inset, -1px 0 0 0 #c0c0c0 inset}revo-grid[theme=default] .rowHeaders revogr-header{box-shadow:0 -1px 0 0 #c0c0c0 inset, -1px 0 0 0 #c0c0c0 inset}revo-grid[theme=default] revogr-viewport-scroll.colPinStart revogr-data .rgRow .rgCell:last-child{box-shadow:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #c0c0c0 inset}revo-grid[theme=default] revogr-viewport-scroll.colPinStart .footer-wrapper revogr-data .rgRow:first-child .rgCell{box-shadow:0 1px 0 0 #c0c0c0 inset, -1px 0 0 0 #c0c0c0 inset}revo-grid[theme=default] revogr-viewport-scroll.colPinEnd,revo-grid[theme=default] revogr-viewport-scroll.colPinEnd revogr-header{box-shadow:1px 0 0 #c0c0c0 inset}revo-grid[theme=default] .footer-wrapper revogr-data .rgRow:first-child .rgCell{box-shadow:0 1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset, 0 -1px 0 0 #e2e3e3 inset}revo-grid[theme=default] revogr-data{text-align:center}revo-grid[theme=default] revogr-data .rgRow{line-height:27px;box-shadow:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset}revo-grid[theme=default] revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=default] revogr-data .rgCell{box-shadow:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset}revo-grid[theme=default] revogr-data .rgCell.disabled{background-color:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset}revo-grid[theme=material]{font-family:Nunito, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}revo-grid[theme=material] revogr-header{line-height:50px;font-weight:600;text-align:left}revo-grid[theme=material] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=material] revogr-header .header-rgRow{height:50px}revo-grid[theme=material] revogr-data{text-align:left}revo-grid[theme=material] revogr-data .rgRow{line-height:42px}revo-grid[theme=material] revogr-data .rgCell{padding:0 15px}revo-grid[theme=material] .viewports{width:100%}revo-grid[theme=material] .rowHeaders{background-color:#f7faff}revo-grid[theme=material] .rowHeaders revogr-data .rgCell{color:#757a82}revo-grid[theme=material] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #f1f1f1, 0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-header .rgHeaderCell.sortable:hover{background-color:#f1f1f1}revo-grid[theme=material] revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=material] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #f1f1f1}revo-grid[theme=material] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #f1f1f1}revo-grid[theme=material] revogr-data .rgRow{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=material] revogr-data .rgCell{color:rgba(0, 0, 0, 0.87)}revo-grid[theme=material] revogr-data .rgCell.disabled{background-color:#f7f7f7}revo-grid[theme=material] revogr-data .revo-draggable>.revo-drag-icon{background-color:#d4d4d4}revo-grid[theme=material] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:black}revo-grid[theme=darkMaterial]{font-family:Nunito, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#d8d8d8}revo-grid[theme=darkMaterial] revogr-header{line-height:50px;font-weight:600;text-align:left}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=darkMaterial] revogr-header .header-rgRow{height:50px}revo-grid[theme=darkMaterial] revogr-data{text-align:left}revo-grid[theme=darkMaterial] revogr-data .rgRow{line-height:42px}revo-grid[theme=darkMaterial] revogr-data .rgCell{padding:0 15px}revo-grid[theme=darkMaterial] .viewports{width:100%}revo-grid[theme=darkMaterial] .rowHeaders{background-color:rgba(40, 39, 43, 0.8)}revo-grid[theme=darkMaterial] .rowHeaders revogr-data .rgCell{color:rgba(216, 216, 216, 0.8)}revo-grid[theme=darkMaterial] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #404040, 0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell.sortable:hover{background-color:rgba(64, 64, 64, 0.5)}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell.focused-cell{background:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkMaterial] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #404040}revo-grid[theme=darkMaterial] revogr-data .rgCell{color:rgba(216, 216, 216, 0.9)}revo-grid[theme=darkMaterial] revogr-data .rgRow{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-data .rgRow.focused-rgRow{background-color:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkMaterial] revogr-data .revo-draggable>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.5)}revo-grid[theme=darkMaterial] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.7)}revo-grid[theme=darkMaterial] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #404040}revo-grid[theme=darkCompact]{font-family:Nunito, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\";color:#d8d8d8}revo-grid[theme=darkCompact] revogr-header{line-height:45px;font-weight:600;text-align:left}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=darkCompact] revogr-header .header-rgRow{height:45px}revo-grid[theme=darkCompact] revogr-data{text-align:left}revo-grid[theme=darkCompact] revogr-data .rgRow{line-height:32px}revo-grid[theme=darkCompact] revogr-data .rgCell{padding:0 15px}revo-grid[theme=darkCompact] .viewports{width:100%}revo-grid[theme=darkCompact] .rowHeaders{background-color:rgba(40, 39, 43, 0.8)}revo-grid[theme=darkCompact] .rowHeaders revogr-data .rgCell{color:rgba(216, 216, 216, 0.8)}revo-grid[theme=darkCompact] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #404040, 0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell.sortable:hover{background-color:rgba(64, 64, 64, 0.5)}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell.focused-cell{background:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkCompact] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #404040}revo-grid[theme=darkCompact] revogr-data .rgCell{color:rgba(216, 216, 216, 0.9)}revo-grid[theme=darkCompact] revogr-data .rgRow{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-data .rgRow.focused-rgRow{background-color:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkCompact] revogr-data .revo-draggable>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.5)}revo-grid[theme=darkCompact] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.7)}revo-grid[theme=darkCompact] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #404040}revo-grid[theme=compact]{font-family:Nunito, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"}revo-grid[theme=compact] revogr-header{line-height:45px;font-weight:600;text-align:left}revo-grid[theme=compact] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=compact] revogr-header .header-rgRow{height:45px}revo-grid[theme=compact] revogr-data{text-align:left}revo-grid[theme=compact] revogr-data .rgRow{line-height:32px}revo-grid[theme=compact] revogr-data .rgCell{padding:0 15px}revo-grid[theme=compact] .viewports{width:100%}revo-grid[theme=compact] .rowHeaders{background-color:#f7faff}revo-grid[theme=compact] .rowHeaders revogr-data .rgCell{color:#757a82}revo-grid[theme=compact] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #f1f1f1, 0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-header .rgHeaderCell.sortable:hover{background-color:#f1f1f1}revo-grid[theme=compact] revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=compact] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #f1f1f1}revo-grid[theme=compact] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #f1f1f1}revo-grid[theme=compact] revogr-data .rgRow{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=compact] revogr-data .rgCell{color:rgba(0, 0, 0, 0.87)}revo-grid[theme=compact] revogr-data .rgCell.disabled{background-color:#f7f7f7}revo-grid[theme=compact] revogr-data .revo-draggable>.revo-drag-icon{background-color:#d4d4d4}revo-grid[theme=compact] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:black}revo-grid[theme=compact] revo-dropdown .rv-dr-root{padding:0px 9px}revo-grid{display:block;height:100%;font-family:Helvetica, Arial, Sans-Serif, serif;font-size:14px;position:relative;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;width:100%;height:100%}revo-grid .footer-wrapper,revo-grid .header-wrapper{width:100%}revo-grid .footer-wrapper revogr-data,revo-grid .header-wrapper revogr-data{z-index:3}revo-grid revo-dropdown{width:100%}revo-grid revo-dropdown .rv-dr-root{max-height:100%}revo-grid revo-dropdown.shrink label{opacity:0}revo-grid .viewports{max-height:100%;display:flex;flex-direction:row;align-items:flex-start;max-width:100%}revo-grid .main-viewport{flex-grow:1;height:0;display:flex;flex-direction:row}revo-grid .draggable{position:fixed;height:30px;line-height:30px;background:#fff;border-radius:3px;display:block;z-index:100;margin-top:5px;margin-right:-20px;box-shadow:0 4px 20px 0 rgba(0, 0, 0, 0.15);padding-left:20px;padding-right:5px}revo-grid .draggable.hidden{display:none}revo-grid .draggable .revo-alt-icon{background-color:black;position:absolute;left:5px;top:10px}revo-grid .draggable-wrapper.hidden{display:none}revo-grid .drag-position{position:absolute;left:0;right:0;height:1px;z-index:2;background:gray}revo-grid .drag-position-y{position:absolute;top:0;left:0;bottom:0;width:1px;z-index:2;background:gray}revo-grid .drag-auto-scroll-y{pointer-events:none;position:absolute;left:0;top:0;height:50px;width:1px}revo-grid .clipboard{position:absolute;left:0;top:0}revo-grid revogr-scroll-virtual{position:relative}revo-grid revogr-scroll-virtual.vertical,revo-grid revogr-scroll-virtual.horizontal{z-index:3}";
|
|
@@ -24931,7 +24941,6 @@ const RevoGridComponent = class {
|
|
|
24931
24941
|
/**
|
|
24932
24942
|
* Enables column move plugin
|
|
24933
24943
|
* Can be boolean
|
|
24934
|
-
* Can be filter collection
|
|
24935
24944
|
*/
|
|
24936
24945
|
this.canMoveColumns = false;
|
|
24937
24946
|
/**
|
|
@@ -26545,6 +26554,8 @@ class ResizeDirective {
|
|
|
26545
26554
|
if (event.defaultPrevented) {
|
|
26546
26555
|
return;
|
|
26547
26556
|
}
|
|
26557
|
+
// stop other events if resize in progress
|
|
26558
|
+
event.preventDefault();
|
|
26548
26559
|
this.dropInitial();
|
|
26549
26560
|
for (let elClass in RESIZE_MASK) {
|
|
26550
26561
|
const target = event.target;
|
|
@@ -96,7 +96,6 @@ export class RevoGridComponent {
|
|
|
96
96
|
/**
|
|
97
97
|
* Enables column move plugin
|
|
98
98
|
* Can be boolean
|
|
99
|
-
* Can be filter collection
|
|
100
99
|
*/
|
|
101
100
|
this.canMoveColumns = false;
|
|
102
101
|
/**
|
|
@@ -1025,7 +1024,7 @@ export class RevoGridComponent {
|
|
|
1025
1024
|
"optional": false,
|
|
1026
1025
|
"docs": {
|
|
1027
1026
|
"tags": [],
|
|
1028
|
-
"text": "Enables column move plugin\nCan be boolean
|
|
1027
|
+
"text": "Enables column move plugin\nCan be boolean"
|
|
1029
1028
|
},
|
|
1030
1029
|
"attribute": "can-move-columns",
|
|
1031
1030
|
"reflect": false,
|
|
@@ -96,7 +96,7 @@ export default class AutoSizeColumn extends BasePlugin {
|
|
|
96
96
|
const sizes = {};
|
|
97
97
|
each(autoSize[type], rgCol => {
|
|
98
98
|
// calculate size
|
|
99
|
-
rgCol.size = sizes[rgCol.index] = source.reduce((prev, rgRow) => Math.max(prev, this.getLength(rgRow[rgCol.prop])),
|
|
99
|
+
rgCol.size = sizes[rgCol.index] = source.reduce((prev, rgRow) => Math.max(prev, this.getLength(rgRow[rgCol.prop])), this.getLength(rgCol.name || ''));
|
|
100
100
|
});
|
|
101
101
|
this.providers.dimensionProvider.setDimensionSize(type, sizes);
|
|
102
102
|
});
|
|
@@ -43,6 +43,9 @@ export default class ColumnPlugin extends BasePlugin {
|
|
|
43
43
|
this.addEventListener(COLUMN_CLICK, ({ detail }) => this.dragStart(detail));
|
|
44
44
|
}
|
|
45
45
|
dragStart({ event, data }) {
|
|
46
|
+
if (event.defaultPrevented) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
46
49
|
const { defaultPrevented } = dispatch(this.revogrid, DRAG_START, data);
|
|
47
50
|
// check if allowed to drag particulat column
|
|
48
51
|
if (defaultPrevented) {
|
|
@@ -57,16 +60,22 @@ export default class ColumnPlugin extends BasePlugin {
|
|
|
57
60
|
if (!dataEl || !scrollEl) {
|
|
58
61
|
return;
|
|
59
62
|
}
|
|
63
|
+
const cols = this.getDimension('rgCol');
|
|
64
|
+
const gridRect = this.revogrid.getBoundingClientRect();
|
|
65
|
+
const elRect = dataEl.getBoundingClientRect();
|
|
66
|
+
const startItem = getItemByPosition(cols, getLeftRelative(event.x, gridRect.left, elRect.left - gridRect.left));
|
|
60
67
|
this.staticDragData = {
|
|
61
68
|
startPos: event.x,
|
|
69
|
+
startItem,
|
|
62
70
|
data,
|
|
63
71
|
dataEl,
|
|
64
72
|
scrollEl,
|
|
65
73
|
gridEl: this.revogrid,
|
|
74
|
+
cols,
|
|
66
75
|
};
|
|
67
76
|
this.dragData = this.getData(this.staticDragData);
|
|
68
77
|
mousemove.target.addEventListener('mousemove', mousemove.callback);
|
|
69
|
-
this.orderUi.start(event, this.dragData);
|
|
78
|
+
this.orderUi.start(event, Object.assign(Object.assign({}, this.dragData), this.staticDragData));
|
|
70
79
|
}
|
|
71
80
|
doMove(e) {
|
|
72
81
|
if (!this.staticDragData) {
|
|
@@ -78,10 +87,10 @@ export default class ColumnPlugin extends BasePlugin {
|
|
|
78
87
|
}
|
|
79
88
|
const start = this.staticDragData.startPos;
|
|
80
89
|
if (Math.abs(start - e.x) > 10) {
|
|
81
|
-
const x = getLeftRelative(e.x, dragData);
|
|
82
|
-
const rgCol = getItemByPosition(
|
|
90
|
+
const x = getLeftRelative(e.x, this.dragData.gridRect.left, this.dragData.scrollOffset);
|
|
91
|
+
const rgCol = getItemByPosition(this.staticDragData.cols, x);
|
|
83
92
|
this.orderUi.autoscroll(x, dragData.elRect.width);
|
|
84
|
-
this.orderUi.showHandler(rgCol.end + dragData.
|
|
93
|
+
this.orderUi.showHandler(rgCol.end + dragData.scrollOffset, dragData.gridRect.width);
|
|
85
94
|
}
|
|
86
95
|
}
|
|
87
96
|
move(e) {
|
|
@@ -95,14 +104,17 @@ export default class ColumnPlugin extends BasePlugin {
|
|
|
95
104
|
onMouseUp(e) {
|
|
96
105
|
// apply new positions
|
|
97
106
|
if (this.dragData) {
|
|
98
|
-
|
|
99
|
-
|
|
107
|
+
let relativePos = getLeftRelative(e.x, this.dragData.gridRect.left, this.dragData.scrollOffset);
|
|
108
|
+
if (relativePos < 0) {
|
|
109
|
+
relativePos = 0;
|
|
110
|
+
}
|
|
111
|
+
const newItem = getItemByPosition(this.staticDragData.cols, relativePos);
|
|
100
112
|
// prevent position change if needed
|
|
101
|
-
const { defaultPrevented: stopDrag } = dispatch(this.revogrid, BEFORE_DRAG_END, Object.assign(Object.assign({}, this.staticDragData), { startPosition: startItem, newPosition: newItem }));
|
|
113
|
+
const { defaultPrevented: stopDrag } = dispatch(this.revogrid, BEFORE_DRAG_END, Object.assign(Object.assign({}, this.staticDragData), { startPosition: this.staticDragData.startItem, newPosition: newItem }));
|
|
102
114
|
if (!stopDrag) {
|
|
103
115
|
const store = this.providers.column.stores[this.dragData.type].store;
|
|
104
116
|
const items = [...store.get('items')];
|
|
105
|
-
const toMove = items.splice(startItem.itemIndex, 1);
|
|
117
|
+
const toMove = items.splice(this.staticDragData.startItem.itemIndex, 1);
|
|
106
118
|
items.splice(newItem.itemIndex, 0, ...toMove);
|
|
107
119
|
store.set('items', items);
|
|
108
120
|
}
|
|
@@ -114,6 +126,8 @@ export default class ColumnPlugin extends BasePlugin {
|
|
|
114
126
|
each(this.localSubscriptions, ({ target, callback }, key) => target.removeEventListener(key, callback));
|
|
115
127
|
}
|
|
116
128
|
clearOrder() {
|
|
129
|
+
this.staticDragData = null;
|
|
130
|
+
this.dragData = null;
|
|
117
131
|
this.clearLocalSubscriptions();
|
|
118
132
|
this.orderUi.stop();
|
|
119
133
|
}
|
|
@@ -124,25 +138,21 @@ export default class ColumnPlugin extends BasePlugin {
|
|
|
124
138
|
super.clearSubscriptions();
|
|
125
139
|
this.clearLocalSubscriptions();
|
|
126
140
|
}
|
|
127
|
-
getData({ gridEl, dataEl,
|
|
141
|
+
getData({ gridEl, dataEl, data, }) {
|
|
128
142
|
const gridRect = gridEl.getBoundingClientRect();
|
|
129
143
|
const elRect = dataEl.getBoundingClientRect();
|
|
144
|
+
const scrollOffset = elRect.left - gridRect.left;
|
|
130
145
|
return {
|
|
131
|
-
el: dataEl,
|
|
132
|
-
elScroll: scrollEl,
|
|
133
146
|
elRect,
|
|
134
147
|
gridRect,
|
|
135
|
-
data,
|
|
136
148
|
type: data.pin || 'rgCol',
|
|
137
|
-
|
|
138
|
-
rows: this.getDimension('rgRow'),
|
|
139
|
-
cols: this.getDimension('rgCol'),
|
|
149
|
+
scrollOffset,
|
|
140
150
|
};
|
|
141
151
|
}
|
|
142
152
|
getDimension(type) {
|
|
143
153
|
return this.providers.dimension.stores[type].getCurrentState();
|
|
144
154
|
}
|
|
145
155
|
}
|
|
146
|
-
export function getLeftRelative(absoluteX,
|
|
147
|
-
return absoluteX -
|
|
156
|
+
export function getLeftRelative(absoluteX, gridPos, offset) {
|
|
157
|
+
return absoluteX - gridPos - offset;
|
|
148
158
|
}
|
|
@@ -28,21 +28,21 @@ export class ColumnOrderHandler {
|
|
|
28
28
|
inline: 'nearest',
|
|
29
29
|
});
|
|
30
30
|
}
|
|
31
|
-
start(e, {
|
|
32
|
-
const scrollContainerRect =
|
|
31
|
+
start(e, { dataEl, gridRect, scrollEl }, dir = 'left') {
|
|
32
|
+
const scrollContainerRect = scrollEl.getBoundingClientRect();
|
|
33
33
|
if (scrollContainerRect) {
|
|
34
34
|
this.offset = scrollContainerRect[dir] - gridRect[dir];
|
|
35
35
|
}
|
|
36
|
-
this.renderAutoscroll(e,
|
|
36
|
+
this.renderAutoscroll(e, dataEl);
|
|
37
37
|
}
|
|
38
38
|
stop() {
|
|
39
39
|
var _a;
|
|
40
40
|
if (this.element) {
|
|
41
41
|
this.element.hidden = true;
|
|
42
42
|
}
|
|
43
|
+
this.offset = 0;
|
|
43
44
|
(_a = this.autoscrollEl) === null || _a === void 0 ? void 0 : _a.remove();
|
|
44
45
|
this.autoscrollEl = undefined;
|
|
45
|
-
this.offset = 0;
|
|
46
46
|
}
|
|
47
47
|
showHandler(pos, size, direction = 'translateX') {
|
|
48
48
|
if (!this.element) {
|
|
@@ -134,6 +134,8 @@ export class ResizeDirective {
|
|
|
134
134
|
if (event.defaultPrevented) {
|
|
135
135
|
return;
|
|
136
136
|
}
|
|
137
|
+
// stop other events if resize in progress
|
|
138
|
+
event.preventDefault();
|
|
137
139
|
this.dropInitial();
|
|
138
140
|
for (let elClass in RESIZE_MASK) {
|
|
139
141
|
const target = event.target;
|