@1771technologies/lytenyte-pro 1.0.10 → 1.0.12-dev.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.
@@ -117,7 +117,8 @@ export function CellSelectionDriver() {
117
117
  const pointerDown = (event) => {
118
118
  if (!isNormalClick(event)) {
119
119
  document.removeEventListener("pointermove", pointerMove);
120
- event.preventDefault();
120
+ // Prevent the default for the context menu, otherwise the cell right clicked will be focused,
121
+ // resulting in the cell selection changing. if (event.button == 2) event.preventDefault();
121
122
  return;
122
123
  }
123
124
  isAdditive = isMultiRange && (event.ctrlKey || event.metaKey);
@@ -164,6 +165,9 @@ export function CellSelectionDriver() {
164
165
  // We need to prevent the default otherwise the cell to go to will be
165
166
  // focused. This leads to awkward behavior around the cell selection pivot
166
167
  event.preventDefault();
168
+ document.addEventListener("mousemove", pointerMove);
169
+ document.addEventListener("contextmenu", pointerUp);
170
+ document.addEventListener("pointerup", pointerUp);
167
171
  return;
168
172
  }
169
173
  // We need to prevent the default for multi
@@ -376,6 +376,11 @@ export function makeLyteNyte(p) {
376
376
  const yPositions = computed(() => {
377
377
  if (!viewport())
378
378
  return EMPTY_POSITION_ARRAY;
379
+ // These can change the positions
380
+ sortModel();
381
+ filterModel();
382
+ rowGroupModel();
383
+ columnPivotModel();
379
384
  const rowCount = rowDataStore.rowCount.$();
380
385
  const innerHeight = viewportHeightInner();
381
386
  const detailExpansions = rowDetailExpansions();
@@ -386,12 +391,13 @@ export function makeLyteNyte(p) {
386
391
  .filter((x) => x != null)
387
392
  .map((x) => [x, api.rowByIndex(x)]));
388
393
  const headerHeight = headerHeightTotal();
389
- return computeRowPositions(rowCount, rowHeight(), rowAutoHeightGuess(), internal_rowAutoHeightCache(), (i) => {
394
+ const x = computeRowPositions(rowCount, rowHeight(), rowAutoHeightGuess(), internal_rowAutoHeightCache(), (i) => {
390
395
  const row = rows[i];
391
396
  if (!row || !api.rowDetailIsExpanded(row))
392
397
  return 0;
393
398
  return api.rowDetailRenderedHeight(row);
394
399
  }, innerHeight - headerHeight);
400
+ return x;
395
401
  });
396
402
  const heightTotal = computed(() => yPositions().at(-1));
397
403
  const hasSpans = computed(() => {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@1771technologies/lytenyte-pro",
3
3
  "description": "Blazingly fast headless React data grid with 100s of features.",
4
- "version": "1.0.10",
4
+ "version": "1.0.12-dev.0",
5
5
  "type": "module",
6
6
  "license": "COMMERCIAL",
7
7
  "files": [
@@ -49,12 +49,12 @@
49
49
  },
50
50
  "dependencies": {
51
51
  "@1771technologies/atom": "^1.0.2",
52
- "@1771technologies/lytenyte-shared": "1.0.10",
53
- "@1771technologies/lytenyte-core": "1.0.10",
54
- "@1771technologies/lytenyte-js-utils": "1.0.10",
55
- "@1771technologies/lytenyte-react-hooks": "1.0.10",
56
- "@1771technologies/lytenyte-dom-utils": "1.0.10",
57
- "@1771technologies/lytenyte-dragon": "1.0.10"
52
+ "@1771technologies/lytenyte-dom-utils": "1.0.12-dev.0",
53
+ "@1771technologies/lytenyte-core": "1.0.12-dev.0",
54
+ "@1771technologies/lytenyte-js-utils": "1.0.12-dev.0",
55
+ "@1771technologies/lytenyte-dragon": "1.0.12-dev.0",
56
+ "@1771technologies/lytenyte-shared": "1.0.12-dev.0",
57
+ "@1771technologies/lytenyte-react-hooks": "1.0.12-dev.0"
58
58
  },
59
59
  "peerDependencies": {
60
60
  "react": "^18.0.0 || ^19.0.0",