diff --git a/.changeset/lovely-hats-cough.md b/.changeset/lovely-hats-cough.md new file mode 100644 index 0000000000..83b0bc96c5 --- /dev/null +++ b/.changeset/lovely-hats-cough.md @@ -0,0 +1,5 @@ +--- +"@medusajs/medusa-js": patch +--- + +Changes build process from using `tsc` to `rollup`. This change ensures that the package works with modern build tools such as Vite@4 and esbuild. diff --git a/packages/medusa-js/package.json b/packages/medusa-js/package.json index e89532d9ed..0b37d7ad3b 100644 --- a/packages/medusa-js/package.json +++ b/packages/medusa-js/package.json @@ -2,20 +2,21 @@ "name": "@medusajs/medusa-js", "version": "1.3.5", "description": "Client for Medusa Commerce Rest API", - "main": "./dist/index.js", - "types": "./dist/index.d.ts", + "main": "dist/index.js", + "module": "dist/index.esm.js", "files": [ "dist/**/*" ], + "types": "dist/index.d.ts", "scripts": { - "build": "tsc --build", + "build": "rollup -c --bundleConfigAsCjs", "prepare": "cross-env NODE_ENV=production yarn run build", "test": "jest --passWithNoTests" }, "author": "Oliver Juhl", "license": "MIT", "dependencies": { - "axios": "^0.24.0", + "axios": "0.26.1", "form-data": "^4.0.0", "qs": "^6.10.3", "retry-axios": "^2.6.0" @@ -33,9 +34,14 @@ }, "devDependencies": { "@medusajs/medusa": "^1.7.1", + "@rollup/plugin-commonjs": "^24.0.0", + "@rollup/plugin-node-resolve": "^15.0.1", "@types/jest": "^26.0.19", "cross-env": "^7.0.3", "jest": "^26.6.3", + "rollup": "^3.9.1", + "rollup-plugin-terser": "^7.0.2", + "rollup-plugin-typescript2": "^0.34.1", "typescript": "^4.1.3" }, "gitHead": "cd1f5afa5aa8c0b15ea957008ee19f1d695cbd2e", diff --git a/packages/medusa-js/rollup.config.js b/packages/medusa-js/rollup.config.js new file mode 100644 index 0000000000..6eac2240ab --- /dev/null +++ b/packages/medusa-js/rollup.config.js @@ -0,0 +1,34 @@ +import commonjs from "@rollup/plugin-commonjs" +import resolve from "@rollup/plugin-node-resolve" +import { defineConfig } from "rollup" +import { terser } from "rollup-plugin-terser" +import typescript from "rollup-plugin-typescript2" + +const packageJson = require("./package.json") + +export default defineConfig({ + input: "src/index.ts", + external: ["@medusajs/medusa"], + output: [ + { + file: packageJson.main, + format: "cjs", + sourcemap: true, + }, + { + file: packageJson.module, + format: "esm", + sourcemap: true, + }, + ], + plugins: [ + terser(), + resolve({ + browser: true, + }), + commonjs(), + typescript({ + useTsconfigDeclarationDir: true, + }), + ], +}) diff --git a/packages/medusa-js/src/resources/admin/sales-channels.ts b/packages/medusa-js/src/resources/admin/sales-channels.ts index f01deea02d..68d7f5783e 100644 --- a/packages/medusa-js/src/resources/admin/sales-channels.ts +++ b/packages/medusa-js/src/resources/admin/sales-channels.ts @@ -1,18 +1,18 @@ import { + AdminDeleteSalesChannelsChannelProductsBatchReq, + AdminDeleteSalesChannelsChannelStockLocationsReq, AdminGetSalesChannelsParams, + AdminPostSalesChannelsChannelProductsBatchReq, + AdminPostSalesChannelsChannelStockLocationsReq, AdminPostSalesChannelsReq, - AdminSalesChannelsRes, AdminPostSalesChannelsSalesChannelReq, AdminSalesChannelsDeleteRes, AdminSalesChannelsListRes, - AdminDeleteSalesChannelsChannelProductsBatchReq, - AdminPostSalesChannelsChannelProductsBatchReq, - AdminPostSalesChannelsChannelStockLocationsReq, - AdminDeleteSalesChannelsChannelStockLocationsReq, + AdminSalesChannelsRes, } from "@medusajs/medusa" +import qs from "qs" import { ResponsePromise } from "../../typings" import BaseResource from "../base" -import qs from "qs" class AdminSalesChannelsResource extends BaseResource { /** retrieve a sales channel diff --git a/packages/medusa-js/tsconfig.json b/packages/medusa-js/tsconfig.json index 2ec248e0f4..4a45df0293 100644 --- a/packages/medusa-js/tsconfig.json +++ b/packages/medusa-js/tsconfig.json @@ -1,11 +1,13 @@ { "compilerOptions": { - "lib": ["es5", "es6"], + "rootDir": "src", + "module": "esnext", "target": "es5", + "lib": ["es6", "dom", "es2016", "es2017"], "outDir": "./dist", + "declarationDir": "./dist", "esModuleInterop": true, "declaration": true, - "module": "commonjs", "moduleResolution": "node", "emitDecoratorMetadata": true, "experimentalDecorators": true, @@ -17,6 +19,6 @@ "allowJs": true, "skipLibCheck": true }, - "include": ["src"], + "include": ["src/**/*"], "exclude": ["node_modules", " **/tests/*"] } diff --git a/yarn.lock b/yarn.lock index 29806309cb..e037de2214 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4141,7 +4141,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.10": +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.13": version: 1.4.14 resolution: "@jridgewell/sourcemap-codec@npm:1.4.14" checksum: 3fbaff1387c1338b097eeb6ff92890d7838f7de0dde259e4983763b44540bfd5ca6a1f7644dc8ad003a57f7e80670d5b96a8402f1386ba9aee074743ae9bad51 @@ -4382,13 +4382,18 @@ __metadata: resolution: "@medusajs/medusa-js@workspace:packages/medusa-js" dependencies: "@medusajs/medusa": ^1.7.1 + "@rollup/plugin-commonjs": ^24.0.0 + "@rollup/plugin-node-resolve": ^15.0.1 "@types/jest": ^26.0.19 - axios: ^0.24.0 + axios: 0.26.1 cross-env: ^7.0.3 form-data: ^4.0.0 jest: ^26.6.3 qs: ^6.10.3 retry-axios: ^2.6.0 + rollup: ^3.9.1 + rollup-plugin-terser: ^7.0.2 + rollup-plugin-typescript2: ^0.34.1 typescript: ^4.1.3 peerDependencies: "@medusajs/medusa": ^1.7.1 @@ -5560,6 +5565,25 @@ __metadata: languageName: node linkType: hard +"@rollup/plugin-commonjs@npm:^24.0.0": + version: 24.0.0 + resolution: "@rollup/plugin-commonjs@npm:24.0.0" + dependencies: + "@rollup/pluginutils": ^5.0.1 + commondir: ^1.0.1 + estree-walker: ^2.0.2 + glob: ^8.0.3 + is-reference: 1.2.1 + magic-string: ^0.27.0 + peerDependencies: + rollup: ^2.68.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + checksum: ae2ed1d49722fad55f7ef7629baad5fb31bc389e6042912fb5cb9623c2c9c0def27c66bbd1aea72f1fcd65caa1410a9de80a0377f85d8cd8068f97c0adeaf3da + languageName: node + linkType: hard + "@rollup/plugin-json@npm:^4.1.0": version: 4.1.0 resolution: "@rollup/plugin-json@npm:4.1.0" @@ -5603,6 +5627,25 @@ __metadata: languageName: node linkType: hard +"@rollup/plugin-node-resolve@npm:^15.0.1": + version: 15.0.1 + resolution: "@rollup/plugin-node-resolve@npm:15.0.1" + dependencies: + "@rollup/pluginutils": ^5.0.1 + "@types/resolve": 1.20.2 + deepmerge: ^4.2.2 + is-builtin-module: ^3.2.0 + is-module: ^1.0.0 + resolve: ^1.22.1 + peerDependencies: + rollup: ^2.78.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + checksum: 82af7876281e9459ea86cedf571816b61883055f98d3ecd9306e869674b344b5e38d57d589f409d255fe22021dd81f4a65702e9e8c859eded45bebccb8644e1b + languageName: node + linkType: hard + "@rollup/plugin-replace@npm:^3.1.0": version: 3.1.0 resolution: "@rollup/plugin-replace@npm:3.1.0" @@ -5638,6 +5681,22 @@ __metadata: languageName: node linkType: hard +"@rollup/pluginutils@npm:^5.0.1": + version: 5.0.2 + resolution: "@rollup/pluginutils@npm:5.0.2" + dependencies: + "@types/estree": ^1.0.0 + estree-walker: ^2.0.2 + picomatch: ^2.3.1 + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0 + peerDependenciesMeta: + rollup: + optional: true + checksum: b06f73c15bb59418aa6fbfead5675bab2d6922e15663525ffc2eb8429530bc5add516600adb251cfbf9b60f3d12fb821cde155cb5103415154a476bd0f163432 + languageName: node + linkType: hard + "@segment/loosely-validate-event@npm:^2.0.0": version: 2.0.0 resolution: "@segment/loosely-validate-event@npm:2.0.0" @@ -7679,6 +7738,13 @@ __metadata: languageName: node linkType: hard +"@types/estree@npm:^1.0.0": + version: 1.0.0 + resolution: "@types/estree@npm:1.0.0" + checksum: 4e73ff606bf7c7ccdaa66092de650c410a4ad2ecc388fdbed8242cac9dbcad72407e1ceff041b7da691babb02ff74ab885d6231fb09368fdd1eabbf1b5253d49 + languageName: node + linkType: hard + "@types/express-serve-static-core@npm:^4.17.18": version: 4.17.29 resolution: "@types/express-serve-static-core@npm:4.17.29" @@ -8200,6 +8266,13 @@ __metadata: languageName: node linkType: hard +"@types/resolve@npm:1.20.2": + version: 1.20.2 + resolution: "@types/resolve@npm:1.20.2" + checksum: c5b7e1770feb5ccfb6802f6ad82a7b0d50874c99331e0c9b259e415e55a38d7a86ad0901c57665d93f75938be2a6a0bc9aa06c9749192cadb2e4512800bbc6e6 + languageName: node + linkType: hard + "@types/responselike@npm:*, @types/responselike@npm:^1.0.0": version: 1.0.0 resolution: "@types/responselike@npm:1.0.0" @@ -10352,6 +10425,15 @@ __metadata: languageName: node linkType: hard +"axios@npm:0.26.1, axios@npm:^0.26.0, axios@npm:^0.26.1": + version: 0.26.1 + resolution: "axios@npm:0.26.1" + dependencies: + follow-redirects: ^1.14.8 + checksum: 77ad7f1e6ca04fcd3fa8af1795b09d8b7c005b71a31f28d99ba40cda0bdcc12a4627801d7fac5efa62b9f667a8402bd54c669039694373bc8d44f6be611f785c + languageName: node + linkType: hard + "axios@npm:^0.19.0, axios@npm:^0.19.2": version: 0.19.2 resolution: "axios@npm:0.19.2" @@ -10388,15 +10470,6 @@ __metadata: languageName: node linkType: hard -"axios@npm:^0.26.0, axios@npm:^0.26.1": - version: 0.26.1 - resolution: "axios@npm:0.26.1" - dependencies: - follow-redirects: ^1.14.8 - checksum: 77ad7f1e6ca04fcd3fa8af1795b09d8b7c005b71a31f28d99ba40cda0bdcc12a4627801d7fac5efa62b9f667a8402bd54c669039694373bc8d44f6be611f785c - languageName: node - linkType: hard - "axobject-query@npm:^2.2.0": version: 2.2.0 resolution: "axobject-query@npm:2.2.0" @@ -11512,7 +11585,7 @@ __metadata: languageName: node linkType: hard -"builtin-modules@npm:^3.0.0, builtin-modules@npm:^3.1.0": +"builtin-modules@npm:^3.0.0, builtin-modules@npm:^3.1.0, builtin-modules@npm:^3.3.0": version: 3.3.0 resolution: "builtin-modules@npm:3.3.0" checksum: 2cb3448b4f7306dc853632a4fcddc95e8d4e4b9868c139400027b71938fc6806d4ff44007deffb362ac85724bd40c2c6452fb6a0aa4531650eeddb98d8e5ee8a @@ -15846,7 +15919,7 @@ __metadata: languageName: node linkType: hard -"estree-walker@npm:^2.0.1": +"estree-walker@npm:^2.0.1, estree-walker@npm:^2.0.2": version: 2.0.2 resolution: "estree-walker@npm:2.0.2" checksum: 53a6c54e2019b8c914dc395890153ffdc2322781acf4bd7d1a32d7aedc1710807bdcd866ac133903d5629ec601fbb50abe8c2e5553c7f5a0afdd9b6af6c945af @@ -18101,7 +18174,7 @@ __metadata: languageName: node linkType: hard -"glob@npm:^8.0.1": +"glob@npm:^8.0.1, glob@npm:^8.0.3": version: 8.0.3 resolution: "glob@npm:8.0.3" dependencies: @@ -19764,6 +19837,15 @@ __metadata: languageName: node linkType: hard +"is-builtin-module@npm:^3.2.0": + version: 3.2.0 + resolution: "is-builtin-module@npm:3.2.0" + dependencies: + builtin-modules: ^3.3.0 + checksum: dd911ba5b5e9615d4da19fad3bbd839bcce8f279b28e094ff0883147a70e36fa4fd2d2aebc85886585106f8fc11d45ca60234afc4e3fa261ad58f013a26d3f1a + languageName: node + linkType: hard + "is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.4": version: 1.2.4 resolution: "is-callable@npm:1.2.4" @@ -20197,7 +20279,7 @@ __metadata: languageName: node linkType: hard -"is-reference@npm:^1.2.1": +"is-reference@npm:1.2.1, is-reference@npm:^1.2.1": version: 1.2.1 resolution: "is-reference@npm:1.2.1" dependencies: @@ -23497,6 +23579,15 @@ __metadata: languageName: node linkType: hard +"magic-string@npm:^0.27.0": + version: 0.27.0 + resolution: "magic-string@npm:0.27.0" + dependencies: + "@jridgewell/sourcemap-codec": ^1.4.13 + checksum: cddacfea14441ca57ae8a307bc3cf90bac69efaa4138dd9a80804cffc2759bf06f32da3a293fb13eaa96334b7d45b7768a34f1d226afae25d2f05b05a3bb37d8 + languageName: node + linkType: hard + "mailchimp-api-v3@npm:^1.14.0": version: 1.15.0 resolution: "mailchimp-api-v3@npm:1.15.0" @@ -30048,7 +30139,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^1.1.6, resolve@npm:^1.10.0, resolve@npm:^1.12.0, resolve@npm:^1.14.2, resolve@npm:^1.17.0, resolve@npm:^1.18.1, resolve@npm:^1.19.0, resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.3.2": +"resolve@npm:^1.1.6, resolve@npm:^1.10.0, resolve@npm:^1.12.0, resolve@npm:^1.14.2, resolve@npm:^1.17.0, resolve@npm:^1.18.1, resolve@npm:^1.19.0, resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1, resolve@npm:^1.3.2": version: 1.22.1 resolution: "resolve@npm:1.22.1" dependencies: @@ -30090,7 +30181,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@^1.1.6#~builtin, resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.12.0#~builtin, resolve@patch:resolve@^1.14.2#~builtin, resolve@patch:resolve@^1.17.0#~builtin, resolve@patch:resolve@^1.18.1#~builtin, resolve@patch:resolve@^1.19.0#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.3.2#~builtin": +"resolve@patch:resolve@^1.1.6#~builtin, resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.12.0#~builtin, resolve@patch:resolve@^1.14.2#~builtin, resolve@patch:resolve@^1.17.0#~builtin, resolve@patch:resolve@^1.18.1#~builtin, resolve@patch:resolve@^1.19.0#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin, resolve@patch:resolve@^1.3.2#~builtin": version: 1.22.1 resolution: "resolve@patch:resolve@npm%3A1.22.1#~builtin::version=1.22.1&hash=07638b" dependencies: @@ -30365,6 +30456,22 @@ __metadata: languageName: node linkType: hard +"rollup-plugin-typescript2@npm:^0.34.1": + version: 0.34.1 + resolution: "rollup-plugin-typescript2@npm:0.34.1" + dependencies: + "@rollup/pluginutils": ^4.1.2 + find-cache-dir: ^3.3.2 + fs-extra: ^10.0.0 + semver: ^7.3.7 + tslib: ^2.4.0 + peerDependencies: + rollup: ">=1.26.3" + typescript: ">=2.4.0" + checksum: 957171f167e6bbefab68bd05ed2796aafd14c8d47bf544b92532bcea056b5a63fe300816a428c49361736160b2ffc7e8b1109bf4fa9de95e54a9fdd161e0bf62 + languageName: node + linkType: hard + "rollup-pluginutils@npm:^2.8.2": version: 2.8.2 resolution: "rollup-pluginutils@npm:2.8.2" @@ -30388,6 +30495,20 @@ __metadata: languageName: node linkType: hard +"rollup@npm:^3.9.1": + version: 3.9.1 + resolution: "rollup@npm:3.9.1" + dependencies: + fsevents: ~2.3.2 + dependenciesMeta: + fsevents: + optional: true + bin: + rollup: dist/bin/rollup + checksum: 48875f9414b17dda1f3a8eea3a2cfffbe847451f986e0c4f6363f06cde05d508730f29486d3f25f27db28dc76bb411a23959b826b1054d3848bab0d84a471fdd + languageName: node + linkType: hard + "root@workspace:.": version: 0.0.0-use.local resolution: "root@workspace:."