Skip to content

Commit 4288e56

Browse files
tdeekensPalumbo
authored andcommitted
Migrate from Rollup to preconstruct for bundling (#1933)
* chore: update gitignore * fix: remove yarnrc * efactor: replace lerna and yarn with pnpm and manypkg * chore: lockfile * fix: being to stupid to type * refactor: add integration tests as workspace * fix: testing ci * fix: enable manypkg * refactor: swap out rollup for preconstruct deps * refactor: preconstruct setup in root * refactor: basic preconstruct setup * fix: to be able to build with preconstruct * refactor: remove last references from rollup * fix: typings, umd and error import * fix: testing
1 parent f103b0b commit 4288e56

File tree

19 files changed

+398
-689
lines changed

19 files changed

+398
-689
lines changed

babel.config.js

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,6 @@ const getPresets = () => {
55
targets: { node: 'current' },
66
modules: 'commonjs',
77
}
8-
case 'rollup':
9-
return {
10-
targets: {
11-
browsers: ['last 2 versions'],
12-
node: 'current',
13-
},
14-
modules: false,
15-
}
168
case 'production':
179
return {
1810
targets: {

package.json

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,8 @@
1010
"postinstall": "./scripts/postinstall.sh",
1111
"clean": "rm -rf coverage; manypkg exec rimraf lib dist node_modules; rm -rf node_modules",
1212
"commit": "git-cz",
13-
"build": "pnpm --recursive run build",
13+
"build": "pnpm preconstruct build",
1414
"check-gh-auth-token": "if [[ -z \"${GITHUB_AUTH}\" ]]; then echo \"Need to set GITHUB_AUTH\" && exit 1; fi",
15-
"build:typings": "NODE_ENV=production pnpm --recursive run build:typings",
1615
"lint": "jest --projects jest.eslint.config.js jest.flow.config.js",
1716
"lint:js": "jest --config jest.eslint.config.js",
1817
"test": "cross-env NODE_ENV=development jest --config jest.test.config.js",
@@ -74,7 +73,7 @@
7473
"@commitlint/cli": "19.7.1",
7574
"@commitlint/config-conventional": "12.1.4",
7675
"@manypkg/cli": "0.23.0",
77-
"@rollup/plugin-alias": "5.1.1",
76+
"@preconstruct/cli": "2.8.11",
7877
"@types/jest": "26.0.24",
7978
"@types/node": "10.17.60",
8079
"@types/node-fetch": "2.5.12",
@@ -119,19 +118,24 @@
119118
"prettier": "2.4.1",
120119
"resolve": "1.22.10",
121120
"rimraf": "3.0.2",
122-
"rollup": "4.34.9",
123-
"rollup-plugin-babel": "4.4.0",
124-
"rollup-plugin-commonjs": "10.1.0",
125-
"rollup-plugin-includepaths": "0.2.4",
126-
"rollup-plugin-json": "4.0.0",
127-
"rollup-plugin-node-globals": "1.4.0",
128-
"rollup-plugin-node-resolve": "5.2.0",
129-
"rollup-plugin-replace": "2.2.0",
130-
"rollup-plugin-uglify": "6.0.4",
131-
"rollup-watch": "4.3.1",
132121
"streamtest": "2.0.0",
133122
"ts-jest": "26.5.6",
134123
"tsconfig-replace-paths": "0.0.14",
135124
"typescript": "4.5.2"
125+
},
126+
"preconstruct": {
127+
"packages": [
128+
"packages/api-request-builder",
129+
"packages/http-user-agent",
130+
"packages/sdk-auth",
131+
"packages/sdk-client",
132+
"packages/sdk-middleware-auth",
133+
"packages/sdk-middleware-correlation-id",
134+
"packages/sdk-middleware-http",
135+
"packages/sdk-middleware-logger",
136+
"packages/sdk-middleware-queue",
137+
"packages/sdk-middleware-user-agent",
138+
"packages/sync-actions"
139+
]
136140
}
137141
}

packages/api-request-builder/package.json

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,15 @@
1919
"bugs": "https://github.com/commercetools/nodejs/issues",
2020
"license": "MIT",
2121
"author": "Nicola Molinari <[email protected]> (https://github.com/emmenko)",
22-
"main": "dist/api-request-builder.cjs.js",
23-
"module": "dist/api-request-builder.es.js",
24-
"browser": "dist/api-request-builder.umd.js",
22+
"main": "dist/commercetools-api-request-builder.cjs.js",
23+
"module": "dist/commercetools-api-request-builder.esm.js",
24+
"umd:main": "dist/commercetools-api-request-builder.umd.min.js",
25+
"preconstruct": {
26+
"entrypoints": [
27+
"./index.js"
28+
],
29+
"umdName": "commercetoolsApiRequestBuilder"
30+
},
2531
"repository": {
2632
"type": "git",
2733
"url": "https://github.com/commercetools/nodejs.git"
@@ -30,7 +36,6 @@
3036
"dist"
3137
],
3238
"scripts": {
33-
"build": "pnpm build:bundles",
34-
"build:bundles": "cross-env NODE_ENV=production rollup -c ../../rollup.config.js -n CommercetoolsApiRequestBuilder -i ./src/index.js"
39+
"build": "exit 0;"
3540
}
3641
}

packages/http-user-agent/package.json

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,20 @@
1717
"bugs": "https://github.com/commercetools/nodejs/issues",
1818
"license": "MIT",
1919
"author": "Nicola Molinari <[email protected]> (https://github.com/emmenko)",
20-
"main": "dist/http-user-agent.cjs.js",
21-
"module": "dist/http-user-agent.es.js",
22-
"browser": "dist/http-user-agent.umd.js",
23-
"typings": "./dist/typings/index.d.ts",
24-
"types": "./dist/typings/index.d.ts",
20+
"main": "dist/commercetools-http-user-agent.cjs.js",
21+
"module": "dist/commercetools-http-user-agent.esm.js",
22+
"browser": {
23+
"./dist/commercetools-http-user-agent.cjs.js": "./dist/commercetools-http-user-agent.browser.cjs.js",
24+
"./dist/commercetools-http-user-agent.esm.js": "./dist/commercetools-http-user-agent.browser.esm.js"
25+
},
26+
"typings": "./dist/commercetools-http-user-agent.cjs.d.ts",
27+
"types": "./dist/commercetools-http-user-agent.cjs.d.ts",
28+
"preconstruct": {
29+
"entrypoints": [
30+
"./index.ts"
31+
],
32+
"umdName": "commercetoolsHttpUserAgent"
33+
},
2534
"repository": {
2635
"type": "git",
2736
"url": "https://github.com/commercetools/nodejs.git"
@@ -31,8 +40,6 @@
3140
],
3241
"scripts": {
3342
"prebuild": "rimraf dist/**",
34-
"build": "pnpm build:bundles && pnpm build:typings",
35-
"build:bundles": "cross-env NODE_ENV=production rollup -c ../../rollup.config.js -n CommercetoolsHttpUserAgent -i ./src/index.ts",
36-
"build:typings": "tsc -p tsconfig.declarations.json --emitDeclarationOnly --declarationDir dist/typings"
43+
"build": "exit 0;"
3744
}
3845
}

packages/http-user-agent/src/create-user-agent.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
type HttpUserAgentOptions = {
2-
name: string
3-
version?: string
4-
libraryName?: string
5-
libraryVersion?: string
6-
contactUrl?: string
7-
contactEmail?: string
2+
name: string;
3+
version?: string;
4+
libraryName?: string;
5+
libraryVersion?: string;
6+
contactUrl?: string;
7+
contactEmail?: string;
88
}
99

1010
/*

packages/sdk-auth/package.json

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,15 @@
1818
"bugs": "https://github.com/commercetools/nodejs/issues",
1919
"license": "MIT",
2020
"author": "Jan Juna <[email protected]> (https://github.com/junajan)",
21-
"main": "dist/sdk-auth.cjs.js",
22-
"module": "dist/sdk-auth.es.js",
23-
"browser": "dist/sdk-auth.umd.js",
21+
"main": "dist/commercetools-sdk-auth.cjs.js",
22+
"module": "dist/commercetools-sdk-auth.esm.js",
23+
"umd:min": "dist/commercetools-sdk-auth.umd.js",
24+
"preconstruct": {
25+
"entrypoints": [
26+
"./index.js"
27+
],
28+
"umdName": "commercetoolsSdkAuth"
29+
},
2430
"repository": {
2531
"type": "git",
2632
"url": "https://github.com/commercetools/nodejs.git"
@@ -30,8 +36,7 @@
3036
],
3137
"scripts": {
3238
"prebuild": "rimraf dist/**",
33-
"build": "pnpm build:bundles",
34-
"build:bundles": "cross-env NODE_ENV=production rollup -c ../../rollup.config.js -n CommercetoolsSdkAuth -i ./src/index.js"
39+
"build": "exit 0;"
3540
},
3641
"dependencies": {
3742
"@commercetools/sdk-middleware-http": "^8.0.0",

packages/sdk-client/package.json

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,15 @@
1818
"bugs": "https://github.com/commercetools/nodejs/issues",
1919
"license": "MIT",
2020
"author": "Nicola Molinari <[email protected]> (https://github.com/emmenko)",
21-
"main": "dist/sdk-client.cjs.js",
22-
"module": "dist/sdk-client.es.js",
23-
"browser": "dist/sdk-client.umd.js",
21+
"main": "dist/commercetools-sdk-client.cjs.js",
22+
"module": "dist/commercetools-sdk-client.esm.js",
23+
"umd:min": "dist/commercetools-sdk-client.umd.js",
24+
"preconstruct": {
25+
"entrypoints": [
26+
"./index.js"
27+
],
28+
"umdName": "commercetoolsSdkClient"
29+
},
2430
"repository": {
2531
"type": "git",
2632
"url": "https://github.com/commercetools/nodejs.git"
@@ -30,7 +36,6 @@
3036
],
3137
"scripts": {
3238
"prebuild": "rimraf dist/**",
33-
"build": "pnpm build:bundles",
34-
"build:bundles": "cross-env NODE_ENV=production rollup -c ../../rollup.config.js -n CommercetoolsSdkClient -i ./src/index.js"
39+
"build": "exit 0;"
3540
}
3641
}

packages/sdk-middleware-auth/package.json

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,15 @@
1919
"bugs": "https://github.com/commercetools/nodejs/issues",
2020
"license": "MIT",
2121
"author": "Nicola Molinari <[email protected]> (https://github.com/emmenko)",
22-
"main": "dist/sdk-middleware-auth.cjs.js",
23-
"module": "dist/sdk-middleware-auth.es.js",
24-
"browser": "dist/sdk-middleware-auth.umd.js",
22+
"main": "dist/commercetools-sdk-middleware-auth.cjs.js",
23+
"module": "dist/commercetools-sdk-middleware-auth.esm.js",
24+
"umd:min": "dist/commercetools-sdk-middleware-auth.umd.js",
25+
"preconstruct": {
26+
"entrypoints": [
27+
"./index.js"
28+
],
29+
"umdName": "commercetoolsSdkMiddlewareAuth"
30+
},
2531
"repository": {
2632
"type": "git",
2733
"url": "https://github.com/commercetools/nodejs.git"
@@ -31,10 +37,10 @@
3137
],
3238
"scripts": {
3339
"prebuild": "rimraf dist/**",
34-
"build": "pnpm build:bundles",
35-
"build:bundles": "cross-env NODE_ENV=production rollup -c ../../rollup.config.js -n CommercetoolsSdkMiddlewareAuth -i ./src/index.js"
40+
"build": "exit 0;"
3641
},
3742
"dependencies": {
43+
"@commercetools/sdk-middleware-http": "^8.0.0",
3844
"node-fetch": "^2.6.7"
3945
},
4046
"devDependencies": {

packages/sdk-middleware-auth/src/base-auth-flow.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import type {
99
AuthMiddlewareOptions,
1010
executeRequestOptions,
1111
} from 'types/sdk'
12-
import { NetworkError } from '../../sdk-middleware-http/src/errors'
12+
import { errors } from '@commercetools/sdk-middleware-http'
1313
import { buildRequestForRefreshTokenFlow } from './build-requests'
1414

1515
function mergeAuthHeader(
@@ -217,7 +217,7 @@ function executeRequest({
217217
typeof response.reject === 'function' &&
218218
error?.type === 'aborted'
219219
) {
220-
const _error = new NetworkError(error.message, {
220+
const _error = new errors.NetworkError(error.message, {
221221
type: error.type,
222222
request,
223223
})

packages/sdk-middleware-correlation-id/package.json

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,15 @@
1919
"bugs": "https://github.com/commercetools/nodejs/issues",
2020
"license": "MIT",
2121
"author": "Tobias Deekens <[email protected]> (https://github.com/tdeekens)",
22-
"main": "dist/sdk-middleware-correlation-id.cjs.js",
23-
"module": "dist/sdk-middleware-correlation-id.es.js",
24-
"browser": "dist/sdk-middleware-correlation-id.umd.js",
22+
"main": "dist/commercetools-sdk-middleware-correlation-id.cjs.js",
23+
"module": "dist/commercetools-sdk-middleware-correlation-id.esm.js",
24+
"umd:min": "dist/commercetools-sdk-middleware-correlation-id.umd.js",
25+
"preconstruct": {
26+
"entrypoints": [
27+
"./index.js"
28+
],
29+
"umdName": "commercetoolsSdkMiddlewareCorrelationId"
30+
},
2531
"repository": {
2632
"type": "git",
2733
"url": "https://github.com/commercetools/nodejs.git"
@@ -31,7 +37,6 @@
3137
],
3238
"scripts": {
3339
"prebuild": "rimraf dist/**",
34-
"build": "pnpm build:bundles",
35-
"build:bundles": "cross-env NODE_ENV=production rollup -c ../../rollup.config.js -n CommercetoolsSdkMiddlewareCorrelationId -i ./src/index.js"
40+
"build": "exit 0;"
3641
}
3742
}

0 commit comments

Comments
 (0)