Skip to content
Open
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 0 additions & 39 deletions .eslintrc.js

This file was deleted.

6 changes: 3 additions & 3 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ jobs:

- name: Run linting and tests
run: |
yarn install --frozen-lockfile
yarn lint
yarn test
pnpm install --frozen-lockfile
pnpm lint
pnpm test
Comment on lines -17 to +29
Copy link

Copilot AI Mar 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CI now runs pnpm ... but the workflow does not install/activate pnpm (e.g., via corepack enable / corepack prepare pnpm@... --activate or pnpm/action-setup). On GitHub runners pnpm is not guaranteed to be available, so this job may fail.

Copilot uses AI. Check for mistakes.
env:
CI: true
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@ styleguide
coverage
doc/build
styleguide-build
pnpm-workspace.yaml
2 changes: 1 addition & 1 deletion .husky/commit-msg
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
#!/usr/bin/env sh

yarn commitlint --edit $1
pnpm commitlint --edit $1
2 changes: 1 addition & 1 deletion .husky/post-checkout
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/sh
[ -n "$CI" ] && exit 0

yarn install --frozen-lockfile
pnpm install --frozen-lockfile
2 changes: 1 addition & 1 deletion .husky/post-merge
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
#!/bin/sh

yarn install --frozen-lockfile
pnpm install --frozen-lockfile
2 changes: 1 addition & 1 deletion .husky/post-rebase
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
#!/bin/sh

yarn install --frozen-lockfile
pnpm install --frozen-lockfile
2 changes: 1 addition & 1 deletion .lintstagedrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ module.exports = {
"(src|__mocks__)/**/*.js": [
"eslint --fix",
"prettier --write",
"yarn test --bail --findRelatedTests --passWithNoTests",
"pnpm test --bail --findRelatedTests --passWithNoTests",
],
"package.json": ["fixpack"],
"src/**/*.{css,scss}": ["stylelint --fix"],
Expand Down
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
22
24
8 changes: 4 additions & 4 deletions DEVELOP.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,13 @@ Documentation and examples are available [here](https://react-spatial.geops.de/)
Build the doc:

```bash
yarn doc
pnpm doc
```

Run the doc on [`locahost:6060`](http://locahost:6060/):

```bash
yarn start
pnpm start
```

## Tests
Expand All @@ -32,15 +32,15 @@ We are using [jest]([https://react-styleguidist.js.org/](https://jestjs.io/docs/
Run the tests in watch mode:

```bash
yarn test --watch
pnpm test --watch
```

## Coverage

Run coverage:

```bash
yarn coverage
pnpm coverage
```

Then open the file `coverage/lcov-report/index.html` in your browser.
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Documentation and examples at https://react-spatial.geops.io.
Install the [react-spatial](https://www.npmjs.com/package/react-spatial) package:

```bash
yarn add maplibre-gl ol mobility-toolbox-js react-spatial
pnpm add maplibre-gl ol mobility-toolbox-js react-spatial
```

Your build pipeline needs to support ES6 modules and SASS.
Expand Down
2 changes: 1 addition & 1 deletion doc/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ the folder published by netlify is doc/build (netlify.toml).
## Commands

Styleguidist documentation is visible (with hot reload) with the cmd:
'yarn start'
'pnpm start'

## Configuration

Expand Down
39 changes: 39 additions & 0 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import flat from "@geops/eslint-config-react/flat";

// tailwind@4 only supported in beta channel
// import tailwind from "eslint-plugin-tailwindcss";

export default [
...flat,
// tailwind@4 only supported in beta channel
// ...tailwind.configs["flat/recommended"],
// {
// settings: {
// react: {
// version: "18.3.1",
// },
// },
// },
{
rules: {
"@typescript-eslint/no-empty-function": "off",
"@typescript-eslint/no-unsafe-call": "off",
"@typescript-eslint/no-unsafe-member-access": "off",
"@typescript-eslint/no-unsafe-assignment": "off",
"@typescript-eslint/no-unsafe-return": "off",
"@typescript-eslint/unbound-method": "off",
"@typescript-eslint/no-unsafe-argument": "off",
"mocha/no-setup-in-describe": "off",
"mocha/consistent-spacing-between-blocks": "off",
"@typescript-eslint/no-redundant-type-constituents": "off",
"mocha/no-pending-tests": "off",
"@typescript-eslint/prefer-nullish-coalescing": "off",
"react-compiler/react-compiler": "off",
"@typescript-eslint/prefer-for-of": "warn",
"@typescript-eslint/no-unused-vars": "warn",
"@typescript-eslint/no-floating-promises": "warn",
"@typescript-eslint/no-misused-promises": "warn",
"@typescript-eslint/prefer-optional-chain": "warn",
},
},
];
4 changes: 1 addition & 3 deletions jest.config.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
module.exports = {
moduleNameMapper: {
"@geoblocks/ol-maplibre-layer":
"<rootDir>/node_modules/@geoblocks/ol-maplibre-layer/lib/index.js",
"\\.(jpg|jpeg|png|gif|webp|scss)$": "identity-obj-proxy",
},
setupFilesAfterEnv: ["<rootDir>/src/setupTests.js"],
Expand All @@ -10,8 +8,8 @@ module.exports = {
testMatch: ["<rootDir>/src/**/?(*.)+(spec|test).[jt]s?(x)"],
testPathIgnorePatterns: ["<rootDir>/(build|coverage|public|doc|packages)"],
transform: {
".+\\.js$": "babel-jest",
".+\\.svg$": "jest-transformer-svg",
"^.+\\.(js|jsx|ts|tsx)$": "babel-jest",
},
transformIgnorePatterns: [],
};
110 changes: 50 additions & 60 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,114 +6,104 @@
"dependencies": {
"@emotion/react": "^11.14.0",
"@emotion/styled": "^11.14.1",
"@geops/geops-ui": "0.3.6-beta.0",
"@mui/icons-material": "^7.3.1",
"@mui/material": "^7.3.1",
"@geops/geops-ui": "1.0.1-beta.3",
"@mui/icons-material": "^7.3.9",
"@mui/material": "^7.3.9",
"re-resizable": "6.11.2",
"react-icons": "5.5.0",
"react-is": "18.3.1",
"react-icons": "5.6.0",
"resize-observer-polyfill": "1.5.1"
},
"peerDependencies": {
"maplibre-gl": "^4",
"mobility-toolbox-js": "^3.6",
"ol": "^10",
"react": "^18",
"react-dom": "^18"
"react": "^19",
"react-dom": "^19"
},
"devDependencies": {
"@babel/preset-env": "7.28.0",
"@babel/preset-react": "7.27.1",
"@commitlint/cli": "19.8.1",
"@commitlint/config-conventional": "19.8.1",
"@babel/preset-env": "7.29.0",
"@babel/preset-react": "7.28.5",
"@commitlint/cli": "20.4.3",
"@commitlint/config-conventional": "20.4.3",
"@geops/eslint-config-react": "^1.6.0",
"@svgr/plugin-jsx": "^8.1.0",
"@svgr/webpack": "8.1.0",
"@testing-library/dom": "^10.4.1",
"@testing-library/jest-dom": "6.6.4",
"@testing-library/react": "16.3.0",
"@testing-library/jest-dom": "6.9.1",
"@testing-library/react": "16.3.2",
"@testing-library/user-event": "14.6.1",
"babel-jest": "30.0.5",
"babel-loader": "10.0.0",
"canvas": "3.1.2",
"css-loader": "7.1.2",
"babel-jest": "30.3.0",
"babel-loader": "10.1.1",
"canvas": "3.2.1",
"css-loader": "7.1.4",
"enzyme": "3.11.0",
"esbuild": "^0.25.8",
"esbuild-loader": "^4.3.0",
"eslint": "8",
"eslint-config-airbnb": "19.0.4",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-import": "2.31.0",
"eslint-plugin-jsx-a11y": "^6.10.2",
"eslint-plugin-perfectionist": "^4.2.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-react": "7.37.2",
"eslint-plugin-react-hooks": "5.1.0",
"esbuild": "^0.27.3",
"esbuild-loader": "^4.4.2",
"eslint": "9",
"file-loader": "6.2.0",
"fixpack": "4.0.0",
"generact": "0.4.0",
"husky": "9.1.7",
"identity-obj-proxy": "^3.0.0",
"is-ci": "4.1.0",
"jest": "30.0.5",
"jest": "30.3.0",
"jest-canvas-mock": "2.5.2",
"jest-date-mock": "1.0.10",
"jest-environment-jsdom": "^30.0.5",
"jest-environment-jsdom": "^30.3.0",
"jest-fetch-mock": "3.0.3",
"jest-serializer-html": "7.1.0",
"jest-transform-file": "1.1.1",
"jest-transformer-svg": "^2.1.0",
"jsts": "2.12.1",
"lint-staged": "16.1.5",
"maplibre-gl": "5.16.0",
"mobility-toolbox-js": "3.6.4",
"ol": "10.6.1",
"postcss": "^8.5.6",
"prettier": "3.6.2",
"proj4": "2.19.10",
"lint-staged": "16.3.3",
"maplibre-gl": "5.19.0",
"mobility-toolbox-js": "3.6.11",
"ol": "10.8.0",
"postcss": "^8.5.8",
"prettier": "3.8.1",
"proj4": "2.20.4",
"prop-types": "15.8.1",
"react": "18.3.1",
"react-dom": "18.3.1",
"react": "19.2.4",
"react-dom": "19.2.4",
"react-styleguidist": "13.1.4",
"react-svg-loader": "3.0.3",
"sass": "1.90.0",
"sass-loader": "16.0.5",
"sass-migrator": "^2.4.2",
"sass": "1.97.3",
"sass-loader": "16.0.7",
"sass-migrator": "^2.5.7",
"standard-version": "9.5.0",
"stream-array": "1.1.2",
"style-loader": "4.0.0",
"stylelint": "16.23.1",
"stylelint-config-recommended-scss": "16.0.0",
"stylelint-config-standard": "39.0.0",
"stylelint-scss": "6.12.1",
"terser-webpack-plugin": "^5.3.14",
"stylelint": "17.4.0",
"stylelint-config-recommended-scss": "17.0.0",
"stylelint-config-standard": "40.0.0",
"stylelint-scss": "7.0.0",
"terser-webpack-plugin": "^5.3.17",
"typescript": "5",
"url-loader": "4.1.1",
"vinyl-fs": "4.0.2",
"webpack": "^5.101.0",
"webpack": "^5.105.4",
"xml-beautifier": "0.5.0"
},
"resolutions": {
"react-is": "18.3.1"
},
"scripts": {
"build": "yarn esbuild && find build -type f -name '*.test.*' -delete && rm -rf build/styleguidist && cp package.json README.md LICENSE build && cp -rf src/images build && cp -rf src/themes build",
"coverage": "yarn test --coverage --coverageDirectory=coverage",
"build": "pnpm esbuild && find build -type f -name '*.test.*' -delete && rm -rf build/styleguidist && cp package.json README.md LICENSE build && cp -rf src/images build && cp -rf src/themes build",
"coverage": "pnpm test --coverage --coverageDirectory=coverage",
"cp": "generact --root src/components",
"doc": "styleguidist build",
"esbuild": "esbuild src/*.js src/**/*.js src/**/**/*.js --target=chrome100 --outdir=build/ --loader:.js=jsx --sourcemap=external",
"format": "prettier --write 'src/**/*.js' && eslint 'src/**/*.js' --fix && stylelint 'src/**/*.css' 'src/**/*.scss' --fix",
"link2": "cmdToAdd=$(node ./scripts/read-pkg-json.js add) && $cmdToAdd && yarn build && cmdToRemove=$(node ./scripts/read-pkg-json.js remove) && $cmdToRemove && cd build && yarn link",
"link2": "cmdToAdd=$(node ./scripts/read-pkg-json.js add) && $cmdToAdd && pnpm build && cmdToRemove=$(node ./scripts/read-pkg-json.js remove) && $cmdToRemove && cd build && pnpm link",
"lint": "eslint 'src/**/*.js' && stylelint 'src/**/*.css' 'src/**/*.scss'",
"postbuild": "cp package.json build/ && cd src && find . -name '*.scss' | cpio -pdm ../build",
"prebuild": "rm -rf build/",
"prepare": "is-ci || husky",
"publish:beta": "yarn release -- --prerelease beta --skip.changelog && yarn run build && HUSKY=0 yarn publish build/ --tag beta && git push origin HEAD && git push --tags",
"publish:beta:dryrun": "yarn release -- --prerelease beta --dry-run --skip.changelog",
"publish:public": "yarn release && yarn build && HUSKY=0 yarn publish build/ && git push origin HEAD && git push --tags",
"publish:public:dryrun": "yarn release --dry-run",
"publish:beta": "pnpm release -- --prerelease beta --skip.changelog && pnpm run build && HUSKY=0 pnpm publish build/ --tag beta && git push origin HEAD && git push --tags",
"publish:beta:dryrun": "pnpm release -- --prerelease beta --dry-run --skip.changelog",
"publish:public": "pnpm release && pnpm build && HUSKY=0 pnpm publish build/ && git push origin HEAD && git push --tags",
"publish:public:dryrun": "pnpm release --dry-run",
"release": "standard-version",
"start": "styleguidist server",
"test": "jest",
"up": "yarn upgrade-interactive --latest"
"updeps": "pnpm up -i --latest"
},
"browserslist": [
">0.2%",
Expand All @@ -122,5 +112,5 @@
"not ie <= 11",
"not android < 5"
],
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
"packageManager": "pnpm@10.32.0+sha512.9b2634bb3fed5601c33633f2d92593f506270a3963b8c51d2b2d6a828da615ce4e9deebef9614ccebbc13ac8d3c0f9c9ccceb583c69c8578436fa477dbb20d70"
}
Loading
Loading