From d9049ca984a118a869f289287e40e98a641f8f00 Mon Sep 17 00:00:00 2001 From: Karl-Aksel Puulmann Date: Thu, 26 Nov 2020 23:24:03 +0200 Subject: [PATCH 1/4] Bundle module.js to es2015 --- package.json | 3 ++- rollup.config.js | 10 ++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 2c60243bc..1ec30b2a3 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "start": "parcel watch src/loader-globals.js --out-file dist/array.js", "serve": "parcel serve src/loader-globals.js --port 3001 --out-file dist/array.js", "build": "parcel build src/loader-globals.js --out-file dist/array.js --no-source-maps", - "build-module": "./node_modules/.bin/rollup -i src/loader-module.js -f cjs -o dist/module.js -c rollup.config.js", + "build-module": "npx rollup -i src/loader-module.js -f cjs -o dist/module.js -c rollup.config.js", "process-types": "mkdir -p dist; eslint src --ext .ts -c .eslintrc.ts.js --fix && tsc && cp -f src/*.d.ts dist/", "lint": "eslint src --fix", "prepublishOnly": "yarn lint && yarn test && yarn build && yarn build-module && yarn process-types", @@ -25,6 +25,7 @@ "devDependencies": { "@babel/core": "^7.0.0", "@babel/preset-env": "^7.0.0", + "@rollup/plugin-babel": "^5.2.1", "@rollup/plugin-json": "^4.1.0", "@rollup/plugin-node-resolve": "^8.1.0", "@typescript-eslint/eslint-plugin": "^3.5.0", diff --git a/rollup.config.js b/rollup.config.js index 2cd24b350..1c2123524 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -1,13 +1,11 @@ -import resolve from '@rollup/plugin-node-resolve' +import babel from '@rollup/plugin-babel' import json from '@rollup/plugin-json' +import resolve from '@rollup/plugin-node-resolve' export default { plugins: [ json(), - resolve({ - browser: true, - main: true, - jsnext: true, - }), + resolve({ browser: true, modulesOnly: true }), + babel({ babelHelpers: 'bundled', presets: ['@babel/preset-env'] }), ], } From 2befb36ca3437b414a43cfef55ee2a16d0819aab Mon Sep 17 00:00:00 2001 From: Karl-Aksel Puulmann Date: Thu, 26 Nov 2020 23:27:42 +0200 Subject: [PATCH 2/4] Validate our package is valid ES5 --- .github/workflows/{ssr.yml => ssr-es-check.yml} | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) rename .github/workflows/{ssr.yml => ssr-es-check.yml} (56%) diff --git a/.github/workflows/ssr.yml b/.github/workflows/ssr-es-check.yml similarity index 56% rename from .github/workflows/ssr.yml rename to .github/workflows/ssr-es-check.yml index 33ab1e710..242f87b51 100644 --- a/.github/workflows/ssr.yml +++ b/.github/workflows/ssr-es-check.yml @@ -1,4 +1,4 @@ -name: Requiring module in SSR +name: Server-side rendering and ES5 on: - pull_request @@ -13,7 +13,10 @@ jobs: with: node-version: 14 - - run: yarn install && yarn build-module + - run: yarn install && yarn build-module && yarn build + + - name: Run es-check to check if our bundle is ES5 compatible + run: yarn add es-check; npx es-check es5 dist/*.js - name: Require module via node run: cd dist; node -e "require('./module')" From 80d256acb046e50ee630538694761f9e76f1c625 Mon Sep 17 00:00:00 2001 From: Marius Andra Date: Fri, 27 Nov 2020 09:52:55 +0100 Subject: [PATCH 3/4] remove npx --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 1ec30b2a3..03fcae060 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "start": "parcel watch src/loader-globals.js --out-file dist/array.js", "serve": "parcel serve src/loader-globals.js --port 3001 --out-file dist/array.js", "build": "parcel build src/loader-globals.js --out-file dist/array.js --no-source-maps", - "build-module": "npx rollup -i src/loader-module.js -f cjs -o dist/module.js -c rollup.config.js", + "build-module": "rollup -i src/loader-module.js -f cjs -o dist/module.js -c rollup.config.js", "process-types": "mkdir -p dist; eslint src --ext .ts -c .eslintrc.ts.js --fix && tsc && cp -f src/*.d.ts dist/", "lint": "eslint src --fix", "prepublishOnly": "yarn lint && yarn test && yarn build && yarn build-module && yarn process-types", From 25e5ec65c3fece603d1e4593833c686407493a91 Mon Sep 17 00:00:00 2001 From: Marius Andra Date: Fri, 27 Nov 2020 09:53:44 +0100 Subject: [PATCH 4/4] import version directly (prevents the entire package.json from being included in the module) --- src/config.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/config.js b/src/config.js index 4a0eefbb9..7494459a6 100644 --- a/src/config.js +++ b/src/config.js @@ -1,8 +1,8 @@ -import pkg from '../package.json' +import { version } from '../package.json' var Config = { DEBUG: false, - LIB_VERSION: pkg.version, + LIB_VERSION: version, } export default Config