UNPKG

1.46 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const tslib_1 = require("tslib");
4const path_1 = tslib_1.__importDefault(require("path"));
5const stream_1 = tslib_1.__importDefault(require("stream"));
6const vinyl_1 = tslib_1.__importDefault(require("vinyl"));
7const pathUtils_1 = require("./pathUtils");
8function collectComponentSourceMaps() {
9 const emitter = new stream_1.default.PassThrough({ objectMode: true });
10 const collector = (componentType, componentPlatform) => new stream_1.default.Transform({
11 objectMode: true,
12 transform(file, _, next) {
13 if (file.sourceMap) {
14 const componentMapKey = [componentType];
15 if (componentPlatform)
16 componentMapKey.push(componentPlatform);
17 componentMapKey.push(pathUtils_1.normalizeToPOSIX(file.relative));
18 const mapPath = ['sourceMaps', ...componentMapKey].join('/') + '.map';
19 emitter.push(new vinyl_1.default({
20 componentMapKey,
21 contents: Buffer.from(JSON.stringify(file.sourceMap, undefined, 2), 'utf8'),
22 base: process.cwd(),
23 path: path_1.default.resolve(process.cwd(), mapPath),
24 }));
25 }
26 next(undefined, file);
27 },
28 });
29 return {
30 collector,
31 emitter,
32 };
33}
34exports.default = collectComponentSourceMaps;