Skip to content

Commit 0331ad6

Browse files
authored
fix: crash when running on node.js (#467)
* fix: crash when running on node.js * fix
1 parent fa7cad7 commit 0331ad6

File tree

7 files changed

+37
-30
lines changed

7 files changed

+37
-30
lines changed

packages/cheetah-grid/package-lock.json

Lines changed: 6 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/cheetah-grid/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "cheetah-grid",
3-
"version": "2.1.0",
3+
"version": "2.1.1",
44
"description": "Cheetah Grid is a high performance grid engine that works on canvas",
55
"keywords": [
66
"spreadsheet",
@@ -53,7 +53,7 @@
5353
"test:watch": "karma start --min",
5454
"test:ff": "karma start --browsers Firefox",
5555
"test:chrome": "karma start --browsers Chrome",
56-
"build": "npm run build:tsdown",
56+
"build": "npm run build:tsdown && npm run test:node",
5757
"build:tsdown": "tsdown",
5858
"eslint": "eslint . --ext .js,.ts",
5959
"eslint:fix": "eslint . --fix --ext .js,.ts",
@@ -76,7 +76,7 @@
7676
"@typescript-eslint/eslint-plugin": "^4.0.0",
7777
"@typescript-eslint/parser": "^4.0.0",
7878
"babel-loader": "^8.1.0",
79-
"cheetah-grid-icon-svg-loader": "^2.0.0",
79+
"cheetah-grid-icon-svg-loader": "^2.1.0",
8080
"cross-env": "^7.0.2",
8181
"css-loader": "^4.2.1",
8282
"cssnano": "^4.1.10",

packages/cheetah-grid/src/js/ListGrid.ts

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -891,18 +891,21 @@ const gridMap = new WeakMap<
891891
// eslint-disable-next-line @typescript-eslint/no-explicit-any -- Accept any type
892892
ListGrid<any>
893893
>();
894-
const resizeObserver = new ResizeObserver((entries) => {
895-
for (const entry of entries) {
896-
if (entry.contentBoxSize) {
897-
const grid = gridMap.get(entry.target);
898-
if (grid) {
899-
grid.updateSize();
900-
grid.updateScroll();
901-
grid.invalidate();
902-
}
903-
}
904-
}
905-
});
894+
const resizeObserver =
895+
typeof ResizeObserver === "undefined"
896+
? { observe: () => {}, unobserve: () => {} }
897+
: new ResizeObserver((entries) => {
898+
for (const entry of entries) {
899+
if (entry.contentBoxSize) {
900+
const grid = gridMap.get(entry.target);
901+
if (grid) {
902+
grid.updateSize();
903+
grid.updateScroll();
904+
grid.invalidate();
905+
}
906+
}
907+
}
908+
});
906909
/**
907910
* ListGrid
908911
* @classdesc cheetahGrid.ListGrid

packages/demo/package-lock.json

Lines changed: 8 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/demo/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
"style-loader": "^2.0.0",
5151
"url-loader": "^1.1.1",
5252
"vue": "^3.0.1",
53-
"vue-cheetah-grid": "^2.0.0",
53+
"vue-cheetah-grid": "^2.1.0",
5454
"vue-loader": "^16.0.0-beta.8",
5555
"vue-router": "^4.0.0-beta.13",
5656
"webpack": "^4.19.1",

packages/react-cheetah-grid/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"build:ci": "npm run build",
99
"postbuild": "tsc src/* --declaration --emitDeclarationOnly --jsx react-jsx --esModuleInterop --target es2020 --outDir dist --moduleResolution node",
1010
"serve": "vite preview",
11+
"pretest": "npx -y link ../cheetah-grid",
1112
"test": "jest"
1213
},
1314
"repository": {
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,5 @@
1+
const { execSync } = require('child_process')
2+
execSync('npx -y link ../../packages/cheetah-grid', { stdio: 'inherit' })
3+
14
require('./vetur')
25
require('./vue3-types')

0 commit comments

Comments
 (0)