From 1b18d9b63638cce498da36a08739ebec7132a673 Mon Sep 17 00:00:00 2001 From: Nathan Bierema Date: Sun, 7 Apr 2024 18:01:29 -0400 Subject: [PATCH] redux-devtools --- .../{.eslintrc.js => .eslintrc.cjs} | 0 packages/redux-devtools/babel.config.esm.json | 8 ----- packages/redux-devtools/babel.config.json | 8 ----- packages/redux-devtools/jest.config.cjs | 12 +++++++ packages/redux-devtools/jest.config.js | 6 ---- packages/redux-devtools/package.json | 28 +++++---------- packages/redux-devtools/src/index.ts | 4 +-- packages/redux-devtools/src/persistState.ts | 3 +- .../redux-devtools/test/persistState.spec.ts | 3 +- packages/redux-devtools/tsconfig.json | 4 +-- packages/redux-devtools/tsconfig.test.json | 2 +- pnpm-lock.yaml | 35 ++++--------------- 12 files changed, 36 insertions(+), 77 deletions(-) rename packages/redux-devtools/{.eslintrc.js => .eslintrc.cjs} (100%) delete mode 100644 packages/redux-devtools/babel.config.esm.json delete mode 100644 packages/redux-devtools/babel.config.json create mode 100644 packages/redux-devtools/jest.config.cjs delete mode 100644 packages/redux-devtools/jest.config.js diff --git a/packages/redux-devtools/.eslintrc.js b/packages/redux-devtools/.eslintrc.cjs similarity index 100% rename from packages/redux-devtools/.eslintrc.js rename to packages/redux-devtools/.eslintrc.cjs diff --git a/packages/redux-devtools/babel.config.esm.json b/packages/redux-devtools/babel.config.esm.json deleted file mode 100644 index d616aff2..00000000 --- a/packages/redux-devtools/babel.config.esm.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "presets": [ - ["@babel/preset-env", { "targets": "defaults", "modules": false }], - "@babel/preset-react", - "@babel/preset-typescript" - ], - "plugins": ["@babel/plugin-transform-runtime"] -} diff --git a/packages/redux-devtools/babel.config.json b/packages/redux-devtools/babel.config.json deleted file mode 100644 index 814fca2b..00000000 --- a/packages/redux-devtools/babel.config.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "presets": [ - ["@babel/preset-env", { "targets": "defaults" }], - "@babel/preset-react", - "@babel/preset-typescript" - ], - "plugins": ["@babel/plugin-transform-runtime"] -} diff --git a/packages/redux-devtools/jest.config.cjs b/packages/redux-devtools/jest.config.cjs new file mode 100644 index 00000000..7dd68539 --- /dev/null +++ b/packages/redux-devtools/jest.config.cjs @@ -0,0 +1,12 @@ +module.exports = { + extensionsToTreatAsEsm: ['.ts', '.tsx'], + moduleNameMapper: { + '^(\\.{1,2}/.*)\\.js$': '$1', + }, + transform: { + '^.+\\.tsx?$': [ + 'ts-jest', + { tsconfig: 'tsconfig.test.json', useESM: true }, + ], + }, +}; diff --git a/packages/redux-devtools/jest.config.js b/packages/redux-devtools/jest.config.js deleted file mode 100644 index f68efd05..00000000 --- a/packages/redux-devtools/jest.config.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - preset: 'ts-jest', - transform: { - '^.+\\.tsx?$': ['ts-jest', { tsconfig: 'tsconfig.test.json' }], - }, -}; diff --git a/packages/redux-devtools/package.json b/packages/redux-devtools/package.json index e4247295..3e2fafe1 100644 --- a/packages/redux-devtools/package.json +++ b/packages/redux-devtools/package.json @@ -20,41 +20,31 @@ "lib", "src" ], - "main": "lib/cjs/index.js", - "module": "lib/esm/index.js", - "types": "lib/types/index.d.ts", + "main": "lib/index.js", + "types": "lib/index.d.ts", + "type": "module", "sideEffects": false, "repository": { "type": "git", "url": "https://github.com/reduxjs/redux-devtools.git" }, "scripts": { - "build": "pnpm run build:cjs && pnpm run build:esm && pnpm run build:types", - "build:cjs": "babel src --extensions \".ts,.tsx\" --out-dir lib/cjs", - "build:esm": "babel src --config-file ./babel.config.esm.json --extensions \".ts,.tsx\" --out-dir lib/esm", - "build:types": "tsc --emitDeclarationOnly", + "build": "tsc", "clean": "rimraf lib", - "test": "jest", + "test": "node --experimental-vm-modules node_modules/jest/bin/jest.js", "lint": "eslint . --ext .ts,.tsx", "type-check": "tsc --noEmit", "prepack": "pnpm run clean && pnpm run build", - "prepublish": "pnpm run type-check && pnpm run lint && pnpm run test" + "prepublish": "pnpm run lint && pnpm run test" }, "dependencies": { - "@babel/runtime": "^7.24.1", "@redux-devtools/instrument": "^2.2.0", - "lodash": "^4.17.21" + "lodash-es": "^4.17.21" }, "devDependencies": { - "@babel/cli": "^7.24.1", - "@babel/core": "^7.24.3", - "@babel/eslint-parser": "^7.24.1", - "@babel/plugin-transform-runtime": "^7.24.3", - "@babel/preset-env": "^7.24.3", - "@babel/preset-react": "^7.24.1", - "@babel/preset-typescript": "^7.24.1", + "@jest/globals": "^29.7.0", "@types/jest": "^29.5.12", - "@types/lodash": "^4.17.0", + "@types/lodash-es": "^4.17.12", "@types/node": "^20.11.30", "@types/react": "^18.2.72", "@typescript-eslint/eslint-plugin": "^7.4.0", diff --git a/packages/redux-devtools/src/index.ts b/packages/redux-devtools/src/index.ts index d5d6674a..79787e09 100644 --- a/packages/redux-devtools/src/index.ts +++ b/packages/redux-devtools/src/index.ts @@ -6,5 +6,5 @@ export { type LiftedAction, type LiftedState, } from '@redux-devtools/instrument'; -export { default as persistState } from './persistState'; -export { default as createDevTools, type Monitor } from './createDevTools'; +export { default as persistState } from './persistState.js'; +export { default as createDevTools, type Monitor } from './createDevTools.js'; diff --git a/packages/redux-devtools/src/persistState.ts b/packages/redux-devtools/src/persistState.ts index 9551cc9e..ca18d7b4 100644 --- a/packages/redux-devtools/src/persistState.ts +++ b/packages/redux-devtools/src/persistState.ts @@ -1,5 +1,4 @@ -import mapValues from 'lodash/mapValues'; -import identity from 'lodash/identity'; +import { identity, mapValues } from 'lodash-es'; import { Action, PreloadedState, Reducer, StoreEnhancer } from 'redux'; import { LiftedState } from '@redux-devtools/instrument'; diff --git a/packages/redux-devtools/test/persistState.spec.ts b/packages/redux-devtools/test/persistState.spec.ts index 53686aba..4392e36e 100644 --- a/packages/redux-devtools/test/persistState.spec.ts +++ b/packages/redux-devtools/test/persistState.spec.ts @@ -1,5 +1,6 @@ -import { instrument, persistState } from '../src'; +import { jest } from '@jest/globals'; import { compose, createStore } from 'redux'; +import { instrument, persistState } from '../src/index.js'; describe('persistState', () => { const savedLocalStorage = global.localStorage; diff --git a/packages/redux-devtools/tsconfig.json b/packages/redux-devtools/tsconfig.json index 0aade49a..73069549 100644 --- a/packages/redux-devtools/tsconfig.json +++ b/packages/redux-devtools/tsconfig.json @@ -1,7 +1,7 @@ { - "extends": "../../tsconfig.react.base.json", + "extends": "../../tsconfig.esm.react.base.json", "compilerOptions": { - "outDir": "lib/types" + "outDir": "lib" }, "include": ["src"] } diff --git a/packages/redux-devtools/tsconfig.test.json b/packages/redux-devtools/tsconfig.test.json index d7931079..23c2424d 100644 --- a/packages/redux-devtools/tsconfig.test.json +++ b/packages/redux-devtools/tsconfig.test.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.react.base.json", + "extends": "../../tsconfig.esm.react.base.json", "compilerOptions": { "types": ["jest", "node"] }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 1f307eea..23687d4e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -752,43 +752,22 @@ importers: packages/redux-devtools: dependencies: - '@babel/runtime': - specifier: ^7.24.1 - version: 7.24.1 '@redux-devtools/instrument': specifier: ^2.2.0 version: link:../redux-devtools-instrument - lodash: + lodash-es: specifier: ^4.17.21 version: 4.17.21 devDependencies: - '@babel/cli': - specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.3) - '@babel/core': - specifier: ^7.24.3 - version: 7.24.3 - '@babel/eslint-parser': - specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.3)(eslint@8.57.0) - '@babel/plugin-transform-runtime': - specifier: ^7.24.3 - version: 7.24.3(@babel/core@7.24.3) - '@babel/preset-env': - specifier: ^7.24.3 - version: 7.24.3(@babel/core@7.24.3) - '@babel/preset-react': - specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.3) - '@babel/preset-typescript': - specifier: ^7.24.1 - version: 7.24.1(@babel/core@7.24.3) + '@jest/globals': + specifier: ^29.7.0 + version: 29.7.0 '@types/jest': specifier: ^29.5.12 version: 29.5.12 - '@types/lodash': - specifier: ^4.17.0 - version: 4.17.0 + '@types/lodash-es': + specifier: ^4.17.12 + version: 4.17.12 '@types/node': specifier: ^20.11.30 version: 20.11.30