Skip to content

Commit 3fc5040

Browse files
graupmattcompiles
andauthored
vite/rollup: Return empty sourcemaps (#706)
Co-authored-by: mattcompiles <[email protected]>
1 parent 162b66f commit 3fc5040

File tree

5 files changed

+79
-7
lines changed

5 files changed

+79
-7
lines changed

.changeset/rich-bobcats-teach.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
'@vanilla-extract/rollup-plugin': patch
3+
'@vanilla-extract/vite-plugin': patch
4+
---
5+
6+
Suppress empty sourcemap warnings

packages/rollup-plugin/src/index.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,15 @@ export function vanillaExtractPlugin({
4242
this.addWatchFile(file);
4343
}
4444

45-
return processVanillaFile({
45+
const output = await processVanillaFile({
4646
source,
4747
filePath,
4848
identOption: identifiers ?? (isProduction ? 'short' : 'debug'),
4949
});
50+
return {
51+
code: output,
52+
map: { mappings: '' },
53+
};
5054
},
5155
async resolveId(id) {
5256
if (!virtualCssFileFilter.test(id)) {
@@ -81,14 +85,18 @@ export function vanillaExtractPlugin({
8185

8286
// ...replace import paths with relative paths to emitted css files
8387
const chunkPath = dirname(chunkInfo.fileName);
84-
return importsToReplace.reduce((codeResult, importPath) => {
88+
const output = importsToReplace.reduce((codeResult, importPath) => {
8589
const assetId = emittedFiles.get(importPath)!;
8690
const assetName = this.getFileName(assetId);
8791
const fixedImportPath = `./${normalize(
8892
relative(chunkPath, assetName),
8993
)}`;
9094
return codeResult.replace(importPath, fixedImportPath);
9195
}, code);
96+
return {
97+
code: output,
98+
map: chunkInfo.map ?? null,
99+
};
92100
},
93101
};
94102
}

packages/rollup-plugin/test/__snapshots__/rollup-plugin.test.ts.snap

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -494,6 +494,43 @@ export { altTheme, responsiveTheme, theme, vars };
494494
]
495495
`;
496496
497+
exports[`rollup-plugin should build with sourcemaps 1`] = `
498+
Array [
499+
Array [
500+
"assets/src/shared.css.ts.vanilla-31027048.css",
501+
"",
502+
],
503+
Array [
504+
"assets/src/styles.css.ts.vanilla-eb3ed277.css",
505+
"",
506+
],
507+
Array [
508+
"assets/src/themes.css.ts.vanilla-9cd4611f.css",
509+
"",
510+
],
511+
Array [
512+
"src/index.js",
513+
";;;;;;AAKA,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,EAAE;AAC3C,EAAE,MAAM,EAAE;AACV,IAAI,eAAe,EAAE,QAAQ;AAC7B,IAAI,IAAI,EAAE,OAAO;AACjB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,CAAC,EAAE,KAAK;AACZ,IAAI,CAAC,EAAE,KAAK;AACZ,IAAI,CAAC,EAAE,MAAM;AACb,GAAG;AACH,CAAC,CAAC,CAAC;AACH,SAAS,MAAM,GAAG;AAClB,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC;AAC7B,WAAW,EAAE,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC;AAC9C;AACA,aAAa,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,EAAE,SAAS,CAAC;AAC5D,kBAAkB,EAAE,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC;AAC3D,kBAAkB,EAAE,QAAQ,CAAC;AAC7B;AACA,iBAAiB,EAAE,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,SAAS,CAAC;AAC/D,sBAAsB,EAAE,SAAS,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;AAC9D,sBAAsB,EAAE,KAAK,CAAC;AAC9B;AACA,qBAAqB,EAAE,SAAS,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC;AAC1E,0BAA0B,EAAE,SAAS,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC;AACzE,wBAAwB,EAAE,WAAW,CAAC;AACtC;AACA,yBAAyB,EAAE,SAAS,CAAC,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC;AAC/E,8BAA8B,EAAE,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;AAChG;AACA;AACA,6BAA6B,EAAE,SAAS,CAAC,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC;AACnF,kCAAkC,EAAE,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC;AAClF,8BAA8B,EAAE,eAAe,CAAC;AAChD;AACA,yBAAyB,EAAE,SAAS,CAAC,wBAAwB,CAAC,SAAS,EAAE,SAAS,CAAC;AACnF,8BAA8B,EAAE,SAAS,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,CAAC;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC;AACF,EAAE,MAAM,oBAAoB,GAAG,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;AACvF,EAAE,IAAI,CAAC,oBAAoB,EAAE;AAC7B,IAAI,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;AACzD,GAAG;AACH,EAAE,cAAc,CAAC,oBAAoB,EAAE,IAAI,EAAE;AAC7C,IAAI,MAAM,EAAE;AACZ,MAAM,eAAe,EAAE,aAAa;AACpC,MAAM,IAAI,EAAE,YAAY;AACxB,KAAK;AACL,IAAI,KAAK,EAAE;AACX,MAAM,CAAC,EAAE,KAAK;AACd,MAAM,CAAC,EAAE,MAAM;AACf,MAAM,CAAC,EAAE,MAAM;AACf,KAAK;AACL,GAAG,CAAC,CAAC;AACL,EAAE,cAAc,CAAC,oBAAoB,EAAE;AACvC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,YAAY;AAC/C,GAAG,CAAC,CAAC;AACL,CAAC;AACD,MAAM,EAAE",
514+
],
515+
Array [
516+
"src/shared.css.js",
517+
";;;;;;",
518+
],
519+
Array [
520+
"src/styles.css.js",
521+
";;;;;;;;;;",
522+
],
523+
Array [
524+
"src/themes.css.js",
525+
";;;;;;;;;",
526+
],
527+
Array [
528+
"test-nodes.json.js",
529+
";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;",
530+
],
531+
]
532+
`;
533+
497534
exports[`rollup-plugin should build without preserveModules 1`] = `
498535
Array [
499536
Array [

packages/rollup-plugin/test/rollup-plugin.test.ts

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import path from 'path';
55

66
import { vanillaExtractPlugin } from '..';
77

8-
async function buildAndMatchSnapshot(outputOptions: OutputOptions) {
8+
async function build(outputOptions: OutputOptions) {
99
const bundle = await rollup({
1010
input: require.resolve('@fixtures/themed'),
1111
plugins: [
@@ -19,15 +19,17 @@ async function buildAndMatchSnapshot(outputOptions: OutputOptions) {
1919
});
2020
const { output } = await bundle.generate(outputOptions);
2121
output.sort((a, b) => a.fileName.localeCompare(b.fileName));
22+
return output;
23+
}
24+
25+
async function buildAndMatchSnapshot(outputOptions: OutputOptions) {
26+
const output = await build(outputOptions);
2227
expect(
2328
output.map((chunkOrAsset) => [
2429
chunkOrAsset.fileName,
2530
chunkOrAsset.type === 'asset' ? chunkOrAsset.source : chunkOrAsset.code,
2631
]),
2732
).toMatchSnapshot();
28-
if (bundle) {
29-
await bundle.close();
30-
}
3133
}
3234

3335
describe('rollup-plugin', () => {
@@ -57,4 +59,18 @@ describe('rollup-plugin', () => {
5759
},
5860
});
5961
});
62+
63+
it('should build with sourcemaps', async () => {
64+
const output = await build({
65+
format: 'esm',
66+
preserveModules: true,
67+
sourcemap: true,
68+
});
69+
expect(
70+
output.map((chunkOrAsset) => [
71+
chunkOrAsset.fileName,
72+
chunkOrAsset.type === 'asset' ? '' : chunkOrAsset.map?.mappings,
73+
]),
74+
).toMatchSnapshot();
75+
});
6076
});

packages/vite-plugin/src/index.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ export function vanillaExtractPlugin({ identifiers }: Options = {}): Plugin {
139139
}
140140
}
141141

142-
return processVanillaFile({
142+
const output = await processVanillaFile({
143143
source,
144144
filePath: validId,
145145
identOption:
@@ -182,6 +182,11 @@ export function vanillaExtractPlugin({ identifiers }: Options = {}): Plugin {
182182
return `import "${id}";`;
183183
},
184184
});
185+
186+
return {
187+
code: output,
188+
map: { mappings: '' },
189+
};
185190
},
186191
};
187192
}

0 commit comments

Comments
 (0)