From f0eaaa38c5a2fe15e071dc24e9d328cbcefa8f06 Mon Sep 17 00:00:00 2001 From: Xavier Gillmann Date: Wed, 13 May 2020 11:20:05 +0200 Subject: [PATCH 1/2] updated babel, rollup, react,... --- .babelrc | 11 ++++--- package.json | 85 ++++++++---------------------------------------- rollup.config.js | 42 ++++++++++-------------- 3 files changed, 39 insertions(+), 99 deletions(-) diff --git a/.babelrc b/.babelrc index 723ea64..20c1db0 100644 --- a/.babelrc +++ b/.babelrc @@ -1,9 +1,12 @@ { "presets": [ - ["env", { + ["@babel/preset-env", { "modules": false }], - "stage-0", - "react" + ["@babel/preset-react"] + ], + "plugins": [ + "@babel/plugin-transform-runtime", + "@babel/plugin-proposal-class-properties" ] -} +} \ No newline at end of file diff --git a/package.json b/package.json index 7fb95a7..ee87d89 100644 --- a/package.json +++ b/package.json @@ -6,85 +6,28 @@ "repository": "openimis/openimis-fe-claim_batch_js", "main": "dist/index.js", "module": "dist/index.es.js", - "jsnext:main": "dist/index.es.js", "engines": { "node": ">=8", "npm": ">=5" }, "scripts": { - "test": "cross-env CI=1 react-scripts test --env=jsdom", - "test:watch": "react-scripts test --env=jsdom", "build": "rollup -c", - "start": "rollup -c -w", - "prepare": "yarn run build", - "predeploy": "cd example && yarn install && yarn run build", - "deploy": "gh-pages -d example/build" - }, - "peerDependencies": { - "@material-ui/core": "^4.3.3", - "@material-ui/icons": "^4.2.1", - "@material-ui/pickers": "^3.2.2", - "@openimis/fe-core": ">=1.1.0", - "react-autosuggest": "^9.4.3", - "history": "^4.9.0", - "lodash": "^4.17.15", - "lodash-uuid": "^0.0.3", - "prop-types": "^15.5.4", - "react": "^16.8.6", - "react-dom": "^16.8.6", - "react-intl": "^2.9.0", - "react-redux": "^7.0.3", - "react-router": "^5.0.0", - "react-router-dom": "^5.0.0", - "redux": "^4.0.1", - "redux-api-middleware": "^3.0.1", - "redux-thunk": "^2.3.0" + "start": "rollup -c -w" }, "devDependencies": { - "@material-ui/core": "^4.3.3", - "@material-ui/icons": "^4.2.1", - "@material-ui/pickers": "^3.2.2", - "@openimis/fe-core": ">=1.1.0", - "react-autosuggest": "^9.4.3", - "@svgr/rollup": "^2.4.1", - "babel-core": "^6.26.3", - "babel-eslint": "^8.2.5", - "babel-plugin-external-helpers": "^6.22.0", - "babel-preset-env": "^1.7.0", - "babel-preset-react": "^6.24.1", - "babel-preset-stage-0": "^6.24.1", - "cross-env": "^5.1.4", - "eslint": "^6.5.1", - "eslint-config-standard": "^14.1.0", - "eslint-config-standard-react": "^9.2.0", - "eslint-plugin-import": "^2.13.0", - "eslint-plugin-node": "^10.0.0", - "eslint-plugin-promise": "^4.2.1", - "eslint-plugin-react": "^7.15.0", - "eslint-plugin-standard": "^4.0.1", - "gh-pages": "^1.2.0", - "history": "^4.9.0", - "lodash": "^4.17.15", - "lodash-uuid": "^0.0.3", - "prop-types": "^15.5.4", - "react": "^16.8.6", - "react-dom": "^16.8.6", - "react-intl": "^2.9.0", - "react-redux": "^7.0.3", - "react-router": "^5.0.0", - "react-router-dom": "^5.0.0", - "react-scripts": "^1.1.4", - "redux": "^4.0.1", - "redux-api-middleware": "^3.0.1", - "redux-thunk": "^2.3.0", - "rollup": "^0.64.1", - "rollup-plugin-babel": "^3.0.7", - "rollup-plugin-commonjs": "^9.1.3", - "rollup-plugin-json": "^4.0.0", - "rollup-plugin-node-resolve": "^3.3.0", - "rollup-plugin-peer-deps-external": "^2.2.0", - "rollup-plugin-postcss": "^1.6.2", - "rollup-plugin-url": "^1.4.0" + "@babel/cli": "^7.8.4", + "@babel/core": "^7.9.6", + "@babel/plugin-proposal-class-properties": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.9.6", + "@babel/preset-env": "^7.9.6", + "@babel/preset-react": "^7.9.4", + "@babel/runtime": "^7.9.6", + "@rollup/plugin-babel": "^5.0.0", + "@rollup/plugin-commonjs": "^11.1.0", + "@rollup/plugin-json": "^4.0.3", + "@rollup/plugin-node-resolve": "^7.1.3", + "@rollup/plugin-url": "^5.0.0", + "rollup": "^2.10.0" }, "files": [ "dist" diff --git a/rollup.config.js b/rollup.config.js index bf0733e..b7ffa8d 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -1,41 +1,35 @@ -import babel from 'rollup-plugin-babel' -import commonjs from 'rollup-plugin-commonjs' -import external from 'rollup-plugin-peer-deps-external' -import postcss from 'rollup-plugin-postcss' -import resolve from 'rollup-plugin-node-resolve' -import url from 'rollup-plugin-url' -import json from 'rollup-plugin-json' -import svgr from '@svgr/rollup' - +import babel from '@rollup/plugin-babel' +import json from '@rollup/plugin-json' import pkg from './package.json' export default { input: 'src/index.js', output: [ - { - file: pkg.main, - format: 'cjs', - sourcemap: true - }, { file: pkg.module, format: 'es', sourcemap: true } ], + external: [ + /^@babel.*/, + /^@date-io\/.*/, + /^@material-ui\/.*/, + /^@openimis.*/, + "classnames", + "clsx", + "history", + /^lodash.*/, + "moment", + "prop-types", + /^react.*/, + /^redux.*/ + ], plugins: [ json(), - external(), - postcss({ - modules: true - }), - url(), - svgr(), babel({ exclude: 'node_modules/**', - plugins: [ 'external-helpers' ] + babelHelpers: 'runtime' }), - resolve(), - commonjs() ] -} +} \ No newline at end of file From bd27a7e452a53c0caf8b89def01aae71a10a99fe Mon Sep 17 00:00:00 2001 From: Xavier Gillmann Date: Wed, 20 May 2020 16:27:29 +0200 Subject: [PATCH 2/2] tech upgrade & git workflow --- .github/workflows/npmpublish.yml | 50 ++++++++++++++++++++++++++++++++ package.json | 2 +- rollup.config.js | 5 ++++ 3 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/npmpublish.yml diff --git a/.github/workflows/npmpublish.yml b/.github/workflows/npmpublish.yml new file mode 100644 index 0000000..2336d08 --- /dev/null +++ b/.github/workflows/npmpublish.yml @@ -0,0 +1,50 @@ +# This workflow will run tests using node and then publish a package to GitHub Packages when a release is created +# For more information see: https://help.github.com/actions/language-and-framework-guides/publishing-nodejs-packages + +name: Node.js Package + +on: + release: + types: [created] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v1 + with: + node-version: 12 + - run: yarn install + - run: yarn build + + publish-npm: + needs: build + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v1 + with: + node-version: 12 + registry-url: https://registry.npmjs.org/ + scope: openimis + - run: yarn install + - run: yarn build + - run: npm publish --access public + env: + NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} + + publish-gpr: + needs: build + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v1 + with: + node-version: 12 + registry-url: https://npm.pkg.github.com/ + - run: yarn install + - run: yarn build + - run: npm publish + env: + NODE_AUTH_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/package.json b/package.json index ee87d89..fbc6c5a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@openimis/fe-claim_batch", - "version": "1.1.0", + "version": "1.2.0-rc1", "description": "openIMIS Frontend Claim Batch reference module", "license": "AGPL-3.0-only", "repository": "openimis/openimis-fe-claim_batch_js", diff --git a/rollup.config.js b/rollup.config.js index b7ffa8d..e9c148c 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -9,6 +9,11 @@ export default { file: pkg.module, format: 'es', sourcemap: true + }, + { + file: 'dist/index.js', + format: 'cjs', + sourcemap: true } ], external: [