Skip to content

Commit 88d43ec

Browse files
authored
Add CJS build for messaging/sw (#5884)
1 parent ff2f7d4 commit 88d43ec

File tree

4 files changed

+26
-1
lines changed

4 files changed

+26
-1
lines changed

.changeset/slow-bobcats-clap.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@firebase/messaging': patch
3+
---
4+
5+
Add a CJS bundle for messaging/sw. This enables some SSR frameworks to run their Node.js pipelines without erroring.

packages/messaging/package.json

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
"browser": "dist/esm/index.esm2017.js",
88
"module": "dist/esm/index.esm2017.js",
99
"sw": "dist/index.sw.esm2017.js",
10+
"sw-main": "dist/index.sw.cjs",
1011
"esm5": "dist/esm/index.esm.js",
1112
"exports": {
1213
".": {
@@ -15,7 +16,11 @@
1516
"esm5": "./dist/esm/index.esm.js",
1617
"default": "./dist/index.cjs.js"
1718
},
18-
"./sw": "./dist/index.sw.esm2017.js",
19+
"./sw": {
20+
"require": "./dist/index.sw.cjs",
21+
"import": "./dist/index.sw.esm2017.js",
22+
"default": "./dist/index.sw.esm2017.js"
23+
},
1924
"./package.json": "./package.json"
2025
},
2126
"typings": "dist/src/index.d.ts",

packages/messaging/rollup.config.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,20 @@ const cjsBuilds = [
8989
replace(generateBuildTargetReplaceConfig('cjs', 5))
9090
],
9191
external: id => deps.some(dep => id === dep || id.startsWith(`${dep}/`))
92+
},
93+
// sw build
94+
// TODO: This may no longer be necessary when we can provide ESM Node
95+
// builds (contingent on updating the `idb` dependency). When we add
96+
// ESM Node builds, test with Nuxt and other SSR frameworks to see if
97+
// this can then be removed.
98+
{
99+
input: 'src/index.sw.ts',
100+
output: { file: pkg['sw-main'], format: 'cjs', sourcemap: true },
101+
plugins: [
102+
...es5BuildPlugins,
103+
replace(generateBuildTargetReplaceConfig('cjs', 5))
104+
],
105+
external: id => deps.some(dep => id === dep || id.startsWith(`${dep}/`))
92106
}
93107
];
94108

packages/messaging/sw/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
"name": "@firebase/messaging-sw",
33
"description": "",
44
"author": "Firebase <[email protected]> (https://firebase.google.com/)",
5+
"main": "../dist/index.sw.cjs",
56
"module": "../dist/index.sw.esm2017.js",
67
"typings": "../dist/src/index.sw.d.ts"
78
}

0 commit comments

Comments
 (0)