From 288e975b17eb9916f3f33f6bd18846651c3f2bf6 Mon Sep 17 00:00:00 2001 From: Nathan Bierema Date: Sat, 8 Jan 2022 23:00:50 -0500 Subject: [PATCH] Use rollup for react-dock --- packages/d3-state-visualizer/.babelrc | 7 +------ packages/d3tooltip/.babelrc | 7 +------ packages/map2tree/.babelrc | 7 +------ packages/react-base16-styling/.babelrc | 7 +------ packages/react-dock/.babelrc | 2 +- packages/react-dock/.eslintignore | 2 +- packages/react-dock/.eslintrc.js | 14 +++++++++----- packages/react-dock/package.json | 17 +++++++++++------ packages/react-dock/rollup.config.js | 24 ++++++++++++++++++++++++ packages/react-dock/src/index.ts | 3 +-- yarn.lock | 8 +++++++- 11 files changed, 58 insertions(+), 40 deletions(-) create mode 100644 packages/react-dock/rollup.config.js diff --git a/packages/d3-state-visualizer/.babelrc b/packages/d3-state-visualizer/.babelrc index 39557e14..f45b63d4 100644 --- a/packages/d3-state-visualizer/.babelrc +++ b/packages/d3-state-visualizer/.babelrc @@ -1,11 +1,6 @@ { "presets": [ - [ - "@babel/preset-env", - { - "targets": "defaults" - } - ], + ["@babel/preset-env", { "targets": "defaults" }], "@babel/preset-typescript" ] } diff --git a/packages/d3tooltip/.babelrc b/packages/d3tooltip/.babelrc index 39557e14..f45b63d4 100644 --- a/packages/d3tooltip/.babelrc +++ b/packages/d3tooltip/.babelrc @@ -1,11 +1,6 @@ { "presets": [ - [ - "@babel/preset-env", - { - "targets": "defaults" - } - ], + ["@babel/preset-env", { "targets": "defaults" }], "@babel/preset-typescript" ] } diff --git a/packages/map2tree/.babelrc b/packages/map2tree/.babelrc index 39557e14..f45b63d4 100755 --- a/packages/map2tree/.babelrc +++ b/packages/map2tree/.babelrc @@ -1,11 +1,6 @@ { "presets": [ - [ - "@babel/preset-env", - { - "targets": "defaults" - } - ], + ["@babel/preset-env", { "targets": "defaults" }], "@babel/preset-typescript" ] } diff --git a/packages/react-base16-styling/.babelrc b/packages/react-base16-styling/.babelrc index 39557e14..f45b63d4 100644 --- a/packages/react-base16-styling/.babelrc +++ b/packages/react-base16-styling/.babelrc @@ -1,11 +1,6 @@ { "presets": [ - [ - "@babel/preset-env", - { - "targets": "defaults" - } - ], + ["@babel/preset-env", { "targets": "defaults" }], "@babel/preset-typescript" ] } diff --git a/packages/react-dock/.babelrc b/packages/react-dock/.babelrc index 202d425a..47246cb3 100644 --- a/packages/react-dock/.babelrc +++ b/packages/react-dock/.babelrc @@ -1,6 +1,6 @@ { "presets": [ - "@babel/preset-env", + ["@babel/preset-env", { "targets": "defaults" }], "@babel/preset-react", "@babel/preset-typescript" ] diff --git a/packages/react-dock/.eslintignore b/packages/react-dock/.eslintignore index d3c23dcb..5df41e2c 100644 --- a/packages/react-dock/.eslintignore +++ b/packages/react-dock/.eslintignore @@ -1,2 +1,2 @@ demo -lib +dist diff --git a/packages/react-dock/.eslintrc.js b/packages/react-dock/.eslintrc.js index faaca940..5828f5b1 100644 --- a/packages/react-dock/.eslintrc.js +++ b/packages/react-dock/.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: ['test/**/*.ts', 'test/**/*.tsx'], extends: '../../eslintrc.ts.react.jest.base.json', diff --git a/packages/react-dock/package.json b/packages/react-dock/package.json index 4ac8152c..451b55e3 100644 --- a/packages/react-dock/package.json +++ b/packages/react-dock/package.json @@ -18,16 +18,15 @@ "lib", "src" ], - "main": "lib/index.js", - "types": "lib/index.d.ts", + "main": "dist/react-dock.cjs.js", + "module": "dist/react-dock.esm.js", + "types": "dist/index.d.ts", "repository": { "type": "git", "url": "https://github.com/reduxjs/redux-devtools.git" }, "scripts": { - "build": "yarn run build:types && yarn run build:js", - "build:types": "tsc --emitDeclarationOnly", - "build:js": "babel src --out-dir lib --extensions \".ts,.tsx\" --source-maps inline", + "build": "rollup -c", "clean": "rimraf lib", "test": "jest", "lint": "eslint . --ext .ts,.tsx", @@ -36,17 +35,20 @@ "prepublish": "yarn run type-check && yarn run lint && yarn run test" }, "dependencies": { + "@babel/runtime": "^7.16.7", "@types/lodash": "^4.14.178", "@types/prop-types": "^15.7.4", "lodash.debounce": "^4.0.8", "prop-types": "^15.8.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", "@types/jest": "^27.4.0", "@types/lodash.debounce": "^4.0.6", "@types/react": "^17.0.38", @@ -62,7 +64,10 @@ "react": "^17.0.2", "react-test-renderer": "^17.0.2", "rimraf": "^3.0.2", + "rollup": "^2.63.0", + "rollup-plugin-typescript2": "^0.31.1", "ts-jest": "^27.1.2", + "tslib": "^2.3.1", "typescript": "~4.5.4" }, "peerDependencies": { diff --git a/packages/react-dock/rollup.config.js b/packages/react-dock/rollup.config.js new file mode 100644 index 00000000..65bf79a1 --- /dev/null +++ b/packages/react-dock/rollup.config.js @@ -0,0 +1,24 @@ +import typescript from 'rollup-plugin-typescript2'; +import babel from '@rollup/plugin-babel'; + +const config = [ + { + input: 'src/index.ts', + output: [ + { file: 'dist/react-dock.cjs.js', format: 'cjs' }, + { file: 'dist/react-dock.esm.js', format: 'esm' }, + ], + plugins: [ + typescript(), + babel({ + exclude: 'node_modules/**', + babelHelpers: 'runtime', + extensions: ['.ts'], + plugins: ['@babel/plugin-transform-runtime'], + }), + ], + external: [/@babel\/runtime/, 'react', 'prop-types', 'lodash.debounce'], + }, +]; + +export default config; diff --git a/packages/react-dock/src/index.ts b/packages/react-dock/src/index.ts index 834bb37d..40652fcc 100644 --- a/packages/react-dock/src/index.ts +++ b/packages/react-dock/src/index.ts @@ -1,2 +1 @@ -import Dock from './Dock'; -export default Dock; +export { default as Dock } from './Dock'; diff --git a/yarn.lock b/yarn.lock index f87e8ad0..68b0d28e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -24044,11 +24044,14 @@ __metadata: version: 0.0.0-use.local resolution: "react-dock@workspace:packages/react-dock" 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 + "@rollup/plugin-babel": ^5.3.0 "@types/jest": ^27.4.0 "@types/lodash": ^4.14.178 "@types/lodash.debounce": ^4.0.6 @@ -24068,7 +24071,10 @@ __metadata: react: ^17.0.2 react-test-renderer: ^17.0.2 rimraf: ^3.0.2 + rollup: ^2.63.0 + rollup-plugin-typescript2: ^0.31.1 ts-jest: ^27.1.2 + tslib: ^2.3.1 typescript: ~4.5.4 peerDependencies: "@types/react": ^16.3.0 || ^17.0.0