Skip to content

Commit d80b3f0

Browse files
committed
Stop bundling dependencies, UMD file
Allow users' package managers to satisfy our dependencies, instead of bundling them all in our compiled output. (this is like dynamic linking as opposed to static linking for JS)
1 parent 66ab9d1 commit d80b3f0

File tree

3 files changed

+19
-14
lines changed

3 files changed

+19
-14
lines changed

package-lock.json

Lines changed: 14 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,10 @@
77
"files": [
88
"dist"
99
],
10-
"main": "./dist/RosLib.umd.cjs",
1110
"module": "./dist/RosLib.js",
1211
"exports": {
1312
".": {
14-
"import": "./dist/RosLib.js",
15-
"require": "./dist/RosLib.umd.cjs"
13+
"import": "./dist/RosLib.js"
1614
}
1715
},
1816
"type": "module",
@@ -36,6 +34,7 @@
3634
"vite": "^7.0.0",
3735
"vite-plugin-checker": "^0.11.0",
3836
"vite-plugin-dts": "^4.0.2",
37+
"vite-plugin-externalize-deps": "^0.10.0",
3938
"vitest": "^4.0.3",
4039
"vitest-fail-on-console": "^0.10.1"
4140
},

vite.config.ts

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import { resolve } from "path";
22
import { defineConfig } from "vitest/config";
33
import dts from "vite-plugin-dts";
44
import checker from "vite-plugin-checker";
5+
import { externalizeDeps } from "vite-plugin-externalize-deps";
56

67
export default defineConfig({
78
plugins: [
@@ -20,6 +21,7 @@ export default defineConfig({
2021
useFlatConfig: true,
2122
},
2223
}),
24+
externalizeDeps(),
2325
],
2426
build: {
2527
lib: {
@@ -28,16 +30,7 @@ export default defineConfig({
2830
name: "ROSLIB",
2931
// the proper extensions will be added
3032
fileName: "RosLib",
31-
},
32-
rollupOptions: {
33-
/*
34-
* make sure to externalize deps that shouldn't be bundled
35-
* into your library
36-
*/
37-
external: ["eventemitter3", "ws", "src/util/decompressPng.js"],
38-
output: {
39-
globals: { eventemitter3: "EventEmitter3" },
40-
},
33+
formats: ["es"],
4134
},
4235
// Keep synchronized with minimum engine specified in CI & package.json
4336
target: "node18",

0 commit comments

Comments
 (0)