From 0107b97deafac72eeb4b8cf198e1ac97fac96b11 Mon Sep 17 00:00:00 2001 From: Nathan Bierema Date: Sun, 9 Jan 2022 16:33:44 -0500 Subject: [PATCH] Use rollup for redux-devtools-ui --- .../redux-devtools-chart-monitor/package.json | 2 +- .../redux-devtools-dock-monitor/package.json | 2 +- .../package.json | 2 +- .../package.json | 3 +- .../package.json | 2 +- .../redux-devtools-log-monitor/package.json | 2 +- packages/redux-devtools-remote/package.json | 4 +- .../package.json | 2 +- .../redux-devtools-serialize/package.json | 4 ++ .../package.json | 2 +- packages/redux-devtools-ui/.babelrc | 5 ++- packages/redux-devtools-ui/.eslintignore | 2 +- packages/redux-devtools-ui/.eslintrc.js | 14 +++--- packages/redux-devtools-ui/package.json | 25 +++++++---- packages/redux-devtools-ui/rollup.config.js | 43 +++++++++++++++++++ yarn.lock | 8 +++- 16 files changed, 94 insertions(+), 28 deletions(-) create mode 100644 packages/redux-devtools-ui/rollup.config.js diff --git a/packages/redux-devtools-chart-monitor/package.json b/packages/redux-devtools-chart-monitor/package.json index 98ff0bfe..4ebde0cc 100644 --- a/packages/redux-devtools-chart-monitor/package.json +++ b/packages/redux-devtools-chart-monitor/package.json @@ -16,7 +16,7 @@ "license": "MIT", "author": "romseguy", "files": [ - "lib", + "dist", "src" ], "main": "dist/redux-devtools-chart-monitor.cjs.js", diff --git a/packages/redux-devtools-dock-monitor/package.json b/packages/redux-devtools-dock-monitor/package.json index d996626f..dc71887d 100644 --- a/packages/redux-devtools-dock-monitor/package.json +++ b/packages/redux-devtools-dock-monitor/package.json @@ -18,7 +18,7 @@ "license": "MIT", "author": "Dan Abramov (http://github.com/gaearon)", "files": [ - "lib", + "dist", "src" ], "main": "dist/redux-devtools-dock-monitor.cjs.js", diff --git a/packages/redux-devtools-inspector-monitor-test-tab/package.json b/packages/redux-devtools-inspector-monitor-test-tab/package.json index bf402ee7..9c234902 100644 --- a/packages/redux-devtools-inspector-monitor-test-tab/package.json +++ b/packages/redux-devtools-inspector-monitor-test-tab/package.json @@ -19,7 +19,7 @@ "license": "MIT", "author": "Mihail Diordiev (https://github.com/zalmoxisus)", "files": [ - "lib", + "dist", "src" ], "main": "dist/redux-devtools-inspector-monitor-test-tab.cjs.js", diff --git a/packages/redux-devtools-inspector-monitor-trace-tab/package.json b/packages/redux-devtools-inspector-monitor-trace-tab/package.json index aa7c1a1a..7d701fca 100644 --- a/packages/redux-devtools-inspector-monitor-trace-tab/package.json +++ b/packages/redux-devtools-inspector-monitor-trace-tab/package.json @@ -9,7 +9,8 @@ "Mihail Diordiev (https://github.com/zalmoxisus)" ], "files": [ - "lib" + "dist", + "src" ], "main": "dist/redux-devtools-inspector-monitor-trace-tab.cjs.js", "module": "dist/redux-devtools-inspector-monitor-trace-tab.esm.js", diff --git a/packages/redux-devtools-inspector-monitor/package.json b/packages/redux-devtools-inspector-monitor/package.json index 9f4d15c6..a2a0467b 100644 --- a/packages/redux-devtools-inspector-monitor/package.json +++ b/packages/redux-devtools-inspector-monitor/package.json @@ -12,7 +12,7 @@ "Mihail Diordiev (https://github.com/zalmoxisus)" ], "files": [ - "lib", + "dist", "src" ], "main": "dist/redux-devtools-inspector-monitor.cjs.js", diff --git a/packages/redux-devtools-log-monitor/package.json b/packages/redux-devtools-log-monitor/package.json index 240fcea4..535f76d7 100644 --- a/packages/redux-devtools-log-monitor/package.json +++ b/packages/redux-devtools-log-monitor/package.json @@ -18,7 +18,7 @@ "license": "MIT", "author": "Dan Abramov (http://github.com/gaearon)", "files": [ - "lib", + "dist", "src" ], "main": "dist/redux-devtools-log-monitor.cjs.js", diff --git a/packages/redux-devtools-remote/package.json b/packages/redux-devtools-remote/package.json index 5b755413..8eeb78ad 100644 --- a/packages/redux-devtools-remote/package.json +++ b/packages/redux-devtools-remote/package.json @@ -18,8 +18,8 @@ "license": "MIT", "author": "Mihail Diordiev (https://github.com/zalmoxisus)", "files": [ - "src", - "lib" + "dist", + "src" ], "main": "dist/redux-devtools-remote.cjs.js", "module": "dist/redux-devtools-remote.esm.js", diff --git a/packages/redux-devtools-rtk-query-monitor/package.json b/packages/redux-devtools-rtk-query-monitor/package.json index b79b373f..5fc9cb5f 100644 --- a/packages/redux-devtools-rtk-query-monitor/package.json +++ b/packages/redux-devtools-rtk-query-monitor/package.json @@ -20,7 +20,7 @@ "url": "https://github.com/FaberVitale" }, "files": [ - "lib", + "dist", "src" ], "main": "dist/redux-devtools-rtk-query-monitor.cjs.js", diff --git a/packages/redux-devtools-serialize/package.json b/packages/redux-devtools-serialize/package.json index 0fcb6d15..3957d41a 100644 --- a/packages/redux-devtools-serialize/package.json +++ b/packages/redux-devtools-serialize/package.json @@ -12,6 +12,10 @@ }, "license": "MIT", "author": "Mihail Diordiev (https://github.com/zalmoxisus)", + "files": [ + "dist", + "src" + ], "main": "dist/redux-devtools-serialize.cjs.js", "module": "dist/redux-devtools-serialize.esm.js", "types": "dist/index.d.ts", diff --git a/packages/redux-devtools-slider-monitor/package.json b/packages/redux-devtools-slider-monitor/package.json index 772fd50f..695eff32 100644 --- a/packages/redux-devtools-slider-monitor/package.json +++ b/packages/redux-devtools-slider-monitor/package.json @@ -9,7 +9,7 @@ "license": "MIT", "author": "Cale Newman (http://github.com/calesce)", "files": [ - "lib", + "dist", "src" ], "main": "dist/redux-devtools-slider-monitor.cjs.js", diff --git a/packages/redux-devtools-ui/.babelrc b/packages/redux-devtools-ui/.babelrc index 202d425a..814fca2b 100644 --- a/packages/redux-devtools-ui/.babelrc +++ b/packages/redux-devtools-ui/.babelrc @@ -1,7 +1,8 @@ { "presets": [ - "@babel/preset-env", + ["@babel/preset-env", { "targets": "defaults" }], "@babel/preset-react", "@babel/preset-typescript" - ] + ], + "plugins": ["@babel/plugin-transform-runtime"] } diff --git a/packages/redux-devtools-ui/.eslintignore b/packages/redux-devtools-ui/.eslintignore index 232c27de..b448b494 100644 --- a/packages/redux-devtools-ui/.eslintignore +++ b/packages/redux-devtools-ui/.eslintignore @@ -1,2 +1,2 @@ -lib +dist storybook-static diff --git a/packages/redux-devtools-ui/.eslintrc.js b/packages/redux-devtools-ui/.eslintrc.js index 02be1a96..725b75e7 100644 --- a/packages/redux-devtools-ui/.eslintrc.js +++ b/packages/redux-devtools-ui/.eslintrc.js @@ -1,10 +1,14 @@ module.exports = { - extends: '../../eslintrc.ts.react.base.json', - parserOptions: { - tsconfigRootDir: __dirname, - project: ['./tsconfig.json'], - }, + extends: '../../eslintrc.js.base.json', overrides: [ + { + files: ['*.ts', '*.tsx'], + extends: '../../eslintrc.ts.react.base.json', + parserOptions: { + tsconfigRootDir: __dirname, + project: ['./tsconfig.json'], + }, + }, { files: ['tests/**/*.ts', 'tests/**/*.tsx'], extends: '../../eslintrc.ts.react.jest.base.json', diff --git a/packages/redux-devtools-ui/package.json b/packages/redux-devtools-ui/package.json index 26063453..9d4faa85 100644 --- a/packages/redux-devtools-ui/package.json +++ b/packages/redux-devtools-ui/package.json @@ -9,11 +9,13 @@ "license": "MIT", "author": "Mihail Diordiev (https://github.com/zalmoxisus)", "files": [ - "lib", - "fonts" + "dist", + "fonts", + "src" ], - "main": "lib/index.js", - "types": "lib/index.d.ts", + "main": "dist/redux-devtools-ui.cjs.js", + "module": "dist/redux-devtools-ui.esm.js", + "types": "dist/index.d.ts", "repository": { "type": "git", "url": "https://github.com/reduxjs/redux-devtools.git" @@ -22,10 +24,9 @@ "start": "yarn run storybook", "storybook": "start-storybook -p 6006 -s ./fonts", "build-storybook": "build-storybook -s ./fonts", - "build": "yarn run build:types && yarn run build:js && yarn run build-storybook", - "build:types": "tsc --emitDeclarationOnly", - "build:js": "babel src --out-dir lib --extensions \".ts,.tsx\" --source-maps inline", - "clean": "rimraf lib", + "build": "yarn run build:lib && yarn run build-storybook", + "build:lib": "rollup -c", + "clean": "rimraf dist storybook-static", "test": "jest", "lint": "eslint . --ext .ts,.tsx", "lint:css": "stylelint \"./src/**/*.js\"", @@ -34,6 +35,7 @@ "prepublish": "yarn run type-check && yarn run lint && yarn run test" }, "dependencies": { + "@babel/runtime": "^7.16.7", "@rjsf/core": "^3.2.1", "@types/base16": "^1.0.2", "@types/codemirror": "^5.60.5", @@ -51,11 +53,13 @@ "simple-element-resize-detector": "^1.3.0" }, "devDependencies": { - "@babel/cli": "^7.16.7", "@babel/core": "^7.16.7", + "@babel/eslint-parser": "^7.16.5", + "@babel/plugin-transform-runtime": "^7.16.7", "@babel/preset-env": "^7.16.7", "@babel/preset-react": "^7.16.7", "@babel/preset-typescript": "^7.16.7", + "@rollup/plugin-babel": "^5.3.0", "@storybook/addon-essentials": "^6.4.9", "@storybook/react": "^6.4.9", "@testing-library/dom": "^8.11.1", @@ -79,6 +83,8 @@ "react-dom": "^17.0.2", "react-is": "^17.0.2", "rimraf": "^3.0.2", + "rollup": "^2.63.0", + "rollup-plugin-typescript2": "^0.31.1", "styled-components": "^5.3.3", "stylelint": "^14.2.0", "stylelint-config-prettier": "^9.0.3", @@ -86,6 +92,7 @@ "stylelint-config-styled-components": "^0.1.1", "stylelint-processor-styled-components": "^1.10.0", "ts-jest": "^27.1.2", + "tslib": "^2.3.1", "typescript": "~4.5.4", "webpack": "^5.65.0" }, diff --git a/packages/redux-devtools-ui/rollup.config.js b/packages/redux-devtools-ui/rollup.config.js new file mode 100644 index 00000000..fb215be8 --- /dev/null +++ b/packages/redux-devtools-ui/rollup.config.js @@ -0,0 +1,43 @@ +import typescript from 'rollup-plugin-typescript2'; +import babel from '@rollup/plugin-babel'; + +const config = [ + { + input: 'src/index.ts', + output: [ + { + file: 'dist/redux-devtools-ui.cjs.js', + format: 'cjs', + }, + { + file: 'dist/redux-devtools-ui.esm.js', + format: 'esm', + }, + ], + plugins: [ + typescript(), + babel({ + babelHelpers: 'runtime', + extensions: ['.ts', '.tsx'], + plugins: ['@babel/plugin-transform-runtime'], + }), + ], + external: [ + /@babel\/runtime/, + /\.css/, + 'react', + 'prop-types', + 'styled-components', + 'color', + 'redux-devtools-themes', + 'base16', + '@rjsf/core', + /codemirror/, + 'react-select', + /react-icons/, + 'simple-element-resize-detector', + ], + }, +]; + +export default config; diff --git a/yarn.lock b/yarn.lock index bd67a208..e0caf24e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5233,12 +5233,15 @@ __metadata: version: 0.0.0-use.local resolution: "@redux-devtools/ui@workspace:packages/redux-devtools-ui" dependencies: - "@babel/cli": ^7.16.7 "@babel/core": ^7.16.7 + "@babel/eslint-parser": ^7.16.5 + "@babel/plugin-transform-runtime": ^7.16.7 "@babel/preset-env": ^7.16.7 "@babel/preset-react": ^7.16.7 "@babel/preset-typescript": ^7.16.7 + "@babel/runtime": ^7.16.7 "@rjsf/core": ^3.2.1 + "@rollup/plugin-babel": ^5.3.0 "@storybook/addon-essentials": ^6.4.9 "@storybook/react": ^6.4.9 "@testing-library/dom": ^8.11.1 @@ -5275,6 +5278,8 @@ __metadata: react-select: ^5.2.1 redux-devtools-themes: ^1.0.0 rimraf: ^3.0.2 + rollup: ^2.63.0 + rollup-plugin-typescript2: ^0.31.1 simple-element-resize-detector: ^1.3.0 styled-components: ^5.3.3 stylelint: ^14.2.0 @@ -5283,6 +5288,7 @@ __metadata: stylelint-config-styled-components: ^0.1.1 stylelint-processor-styled-components: ^1.10.0 ts-jest: ^27.1.2 + tslib: ^2.3.1 typescript: ~4.5.4 webpack: ^5.65.0 peerDependencies: