@teambit/webpack 0.0.700 → 0.0.703
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/webpack.bundler.d.ts +2 -2
- package/dist/webpack.bundler.js +3 -1
- package/dist/webpack.bundler.js.map +1 -1
- package/dist/webpack.main.runtime.d.ts +1 -1
- package/dist/webpack.main.runtime.js +2 -2
- package/dist/webpack.main.runtime.js.map +1 -1
- package/package-tar/teambit-webpack-0.0.703.tgz +0 -0
- package/package.json +8 -8
- package/{preview-1649066106369.js → preview-1649301819971.js} +2 -2
- package/tsconfig.json +4 -3
- package/package-tar/teambit-webpack-0.0.700.tgz +0 -0
|
@@ -12,7 +12,7 @@ export declare class WebpackBundler implements Bundler {
|
|
|
12
12
|
private configs;
|
|
13
13
|
private logger;
|
|
14
14
|
private webpack;
|
|
15
|
-
private metaData
|
|
15
|
+
private metaData?;
|
|
16
16
|
constructor(
|
|
17
17
|
/**
|
|
18
18
|
* targets to bundle.
|
|
@@ -21,7 +21,7 @@ export declare class WebpackBundler implements Bundler {
|
|
|
21
21
|
/**
|
|
22
22
|
* webpack configuration.
|
|
23
23
|
*/
|
|
24
|
-
configs: Configuration[], logger: Logger, webpack: any, metaData
|
|
24
|
+
configs: Configuration[], logger: Logger, webpack: any, metaData?: BundlerContextMetaData | undefined);
|
|
25
25
|
run(): Promise<BundlerResult[]>;
|
|
26
26
|
private getErrors;
|
|
27
27
|
private getAssets;
|
package/dist/webpack.bundler.js
CHANGED
|
@@ -104,7 +104,9 @@ class WebpackBundler {
|
|
|
104
104
|
entrypoints: true,
|
|
105
105
|
warnings: true,
|
|
106
106
|
errors: true,
|
|
107
|
-
assets: true
|
|
107
|
+
assets: true,
|
|
108
|
+
chunkGroupAuxiliary: true,
|
|
109
|
+
relatedAssets: true
|
|
108
110
|
});
|
|
109
111
|
const assetsMap = this.getAssets(info);
|
|
110
112
|
const entriesAssetsMap = this.getEntriesAssetsMap(info, assetsMap);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["webpack.bundler.ts"],"names":["WebpackBundler","constructor","targets","configs","logger","webpack","metaData","run","startTime","Date","now","compilers","map","config","initiator","envId","initiatorMessage","envIdMessage","longProcessLogger","createLongProcessLogger","length","componentOutput","compiler","components","getComponents","outputPath","componentsLengthMessage","fullMessage","ids","component","id","toString","join","logProgress","debug","Promise","resolve","err","stats","error","errors","stack","BitError","info","toJson","all","entrypoints","warnings","assets","assetsMap","getAssets","entriesAssetsMap","getEntriesAssetsMap","Object","values","assetsByChunkName","getErrors","compilation","outputOptions","path","endTime","end","fieldsToShow","webpackError","lines","fieldName","undefined","errorMessage","reduce","acc","asset","name","size","compressedSize","getCompressedSize","entriesMap","keys","entries","forEach","entryVal","compressedAssetsSize","compressedAuxiliaryAssetsSize","auxiliaryAssets","related","gzipped","find","relatedAsset","type","substring","lastIndexOf","sep","target","targetCandidate","Error"],"mappings":"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","sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport type { Bundler, BundlerResult, Asset, Target, EntriesAssetsMap, BundlerContextMetaData } from '@teambit/bundler';\nimport type { Logger } from '@teambit/logger';\nimport { compact, isEmpty } from 'lodash';\nimport mapSeries from 'p-map-series';\nimport type { Compiler, Configuration, StatsCompilation, StatsAsset } from 'webpack';\nimport { sep } from 'path';\n\ntype AssetsMap = { [assetId: string]: Asset };\nexport class WebpackBundler implements Bundler {\n constructor(\n /**\n * targets to bundle.\n */\n private targets: Target[],\n\n /**\n * webpack configuration.\n */\n private configs: Configuration[],\n\n private logger: Logger,\n\n private webpack,\n\n private metaData: BundlerContextMetaData | undefined\n ) {}\n\n async run(): Promise<BundlerResult[]> {\n const startTime = Date.now();\n const compilers = this.configs.map((config: any) => this.webpack(config));\n const initiator = this.metaData?.initiator;\n const envId = this.metaData?.envId;\n const initiatorMessage = initiator ? `process initiated by: ${initiator}.` : '';\n const envIdMessage = envId ? `config created by env: ${envId}.` : '';\n\n const longProcessLogger = this.logger.createLongProcessLogger('running Webpack bundler', compilers.length);\n const componentOutput = await mapSeries(compilers, (compiler: Compiler) => {\n const components = this.getComponents(compiler.outputPath);\n const componentsLengthMessage = `running on ${components.length} components`;\n const fullMessage = `${initiatorMessage} ${envIdMessage} ${componentsLengthMessage}`;\n const ids = components.map((component) => component.id.toString()).join(', ');\n longProcessLogger.logProgress(`${fullMessage}`);\n this.logger.debug(`${fullMessage}\\ncomponents ids: ${ids}`);\n return new Promise((resolve) => {\n // TODO: split to multiple processes to reduce time and configure concurrent builds.\n // @see https://github.com/trivago/parallel-webpack\n return compiler.run((err, stats) => {\n if (err) {\n this.logger.error('get error from webpack compiler, full error:', err);\n\n return resolve({\n errors: [`${err.toString()}\\n${err.stack}`],\n components,\n });\n }\n if (!stats) throw new BitError('unknown build error');\n // const info = stats.toJson();\n\n const info = stats.toJson({ all: false, entrypoints: true, warnings: true, errors: true, assets: true });\n const assetsMap = this.getAssets(info);\n const entriesAssetsMap = this.getEntriesAssetsMap(info, assetsMap);\n\n return resolve({\n assets: Object.values(assetsMap),\n assetsByChunkName: info.assetsByChunkName,\n entriesAssetsMap,\n errors: this.getErrors(info),\n outputPath: stats.compilation.outputOptions.path,\n components,\n warnings: info.warnings,\n startTime,\n endTime: Date.now(),\n });\n });\n });\n });\n longProcessLogger.end();\n return componentOutput as BundlerResult[];\n }\n\n private getErrors(stats: StatsCompilation): Error[] {\n if (!stats.errors) return [];\n const fieldsToShow = ['message', 'moduleId', 'moduleName', 'moduleIdentifier', 'loc'];\n return stats.errors.map((webpackError) => {\n const lines = fieldsToShow.map((fieldName) => {\n if (webpackError[fieldName]) {\n return `${fieldName}: ${webpackError[fieldName]}`;\n }\n return undefined;\n });\n const errorMessage = compact(lines).join('\\n');\n return new BitError(errorMessage);\n });\n }\n\n private getAssets(stats: StatsCompilation): AssetsMap {\n if (!stats.assets) return {};\n return stats.assets.reduce((acc, asset) => {\n acc[asset.name] = {\n name: asset.name,\n size: asset.size,\n compressedSize: this.getCompressedSize(asset),\n };\n return acc;\n }, {});\n }\n\n private getEntriesAssetsMap(stats: StatsCompilation, assetsMap: AssetsMap): EntriesAssetsMap {\n const entriesMap = stats.entrypoints;\n if (!entriesMap || !Object.keys(assetsMap).length) return {};\n Object.entries(entriesMap).forEach(([, entryVal]) => {\n let compressedAssetsSize = 0;\n let compressedAuxiliaryAssetsSize = 0;\n entryVal.assets?.forEach((asset) => {\n const compressedSize = assetsMap[asset.name]?.compressedSize;\n if (compressedSize) {\n // @ts-ignore\n asset.compressedSize = compressedSize;\n compressedAssetsSize += compressedSize;\n }\n });\n entryVal.auxiliaryAssets?.forEach((asset) => {\n const compressedSize = assetsMap[asset.name]?.compressedSize;\n if (compressedSize) {\n // @ts-ignore\n asset.compressedSize = compressedSize;\n compressedAuxiliaryAssetsSize += compressedSize;\n }\n });\n entryVal.compressedAssetsSize = compressedAssetsSize;\n entryVal.compressedAuxiliaryAssetsSize = compressedAuxiliaryAssetsSize;\n });\n return entriesMap as any as EntriesAssetsMap;\n }\n\n private getCompressedSize(asset: StatsAsset): number | undefined {\n if (!asset.related || isEmpty(asset.related)) return undefined;\n const gzipped = asset.related.find((relatedAsset) => {\n return relatedAsset.type === 'gzipped';\n });\n if (!gzipped) return undefined;\n return gzipped.size;\n }\n\n private getComponents(outputPath: string) {\n const path = outputPath.substring(0, outputPath.lastIndexOf(sep));\n const target = this.targets.find((targetCandidate) => path === targetCandidate.outputPath);\n\n if (!target) throw new Error(`Could not find component id for path \"${path}\"`);\n return target.components;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["webpack.bundler.ts"],"names":["WebpackBundler","constructor","targets","configs","logger","webpack","metaData","run","startTime","Date","now","compilers","map","config","initiator","envId","initiatorMessage","envIdMessage","longProcessLogger","createLongProcessLogger","length","componentOutput","compiler","components","getComponents","outputPath","componentsLengthMessage","fullMessage","ids","component","id","toString","join","logProgress","debug","Promise","resolve","err","stats","error","errors","stack","BitError","info","toJson","all","entrypoints","warnings","assets","chunkGroupAuxiliary","relatedAssets","assetsMap","getAssets","entriesAssetsMap","getEntriesAssetsMap","Object","values","assetsByChunkName","getErrors","compilation","outputOptions","path","endTime","end","fieldsToShow","webpackError","lines","fieldName","undefined","errorMessage","reduce","acc","asset","name","size","compressedSize","getCompressedSize","entriesMap","keys","entries","forEach","entryVal","compressedAssetsSize","compressedAuxiliaryAssetsSize","auxiliaryAssets","related","gzipped","find","relatedAsset","type","substring","lastIndexOf","sep","target","targetCandidate","Error"],"mappings":";;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAGA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAGO,MAAMA,cAAN,CAAwC;AAC7CC,EAAAA,WAAW;AACT;AACJ;AACA;AACYC,EAAAA,OAJC;AAMT;AACJ;AACA;AACYC,EAAAA,OATC,EAWDC,MAXC,EAaDC,OAbC,EAeDC,QAfC,EAgBT;AAAA,SAZQJ,OAYR,GAZQA,OAYR;AAAA,SAPQC,OAOR,GAPQA,OAOR;AAAA,SALQC,MAKR,GALQA,MAKR;AAAA,SAHQC,OAGR,GAHQA,OAGR;AAAA,SADQC,QACR,GADQA,QACR;AAAE;;AAEK,QAAHC,GAAG,GAA6B;AAAA;;AACpC,UAAMC,SAAS,GAAGC,IAAI,CAACC,GAAL,EAAlB;AACA,UAAMC,SAAS,GAAG,KAAKR,OAAL,CAAaS,GAAb,CAAkBC,MAAD,IAAiB,KAAKR,OAAL,CAAaQ,MAAb,CAAlC,CAAlB;AACA,UAAMC,SAAS,qBAAG,KAAKR,QAAR,mDAAG,eAAeQ,SAAjC;AACA,UAAMC,KAAK,sBAAG,KAAKT,QAAR,oDAAG,gBAAeS,KAA7B;AACA,UAAMC,gBAAgB,GAAGF,SAAS,GAAI,yBAAwBA,SAAU,GAAtC,GAA2C,EAA7E;AACA,UAAMG,YAAY,GAAGF,KAAK,GAAI,0BAAyBA,KAAM,GAAnC,GAAwC,EAAlE;AAEA,UAAMG,iBAAiB,GAAG,KAAKd,MAAL,CAAYe,uBAAZ,CAAoC,yBAApC,EAA+DR,SAAS,CAACS,MAAzE,CAA1B;AACA,UAAMC,eAAe,GAAG,MAAM,2BAAUV,SAAV,EAAsBW,QAAD,IAAwB;AACzE,YAAMC,UAAU,GAAG,KAAKC,aAAL,CAAmBF,QAAQ,CAACG,UAA5B,CAAnB;AACA,YAAMC,uBAAuB,GAAI,cAAaH,UAAU,CAACH,MAAO,aAAhE;AACA,YAAMO,WAAW,GAAI,GAAEX,gBAAiB,IAAGC,YAAa,IAAGS,uBAAwB,EAAnF;AACA,YAAME,GAAG,GAAGL,UAAU,CAACX,GAAX,CAAgBiB,SAAD,IAAeA,SAAS,CAACC,EAAV,CAAaC,QAAb,EAA9B,EAAuDC,IAAvD,CAA4D,IAA5D,CAAZ;AACAd,MAAAA,iBAAiB,CAACe,WAAlB,CAA+B,GAAEN,WAAY,EAA7C;AACA,WAAKvB,MAAL,CAAY8B,KAAZ,CAAmB,GAAEP,WAAY,qBAAoBC,GAAI,EAAzD;AACA,aAAO,IAAIO,OAAJ,CAAaC,OAAD,IAAa;AAC9B;AACA;AACA,eAAOd,QAAQ,CAACf,GAAT,CAAa,CAAC8B,GAAD,EAAMC,KAAN,KAAgB;AAClC,cAAID,GAAJ,EAAS;AACP,iBAAKjC,MAAL,CAAYmC,KAAZ,CAAkB,8CAAlB,EAAkEF,GAAlE;AAEA,mBAAOD,OAAO,CAAC;AACbI,cAAAA,MAAM,EAAE,CAAE,GAAEH,GAAG,CAACN,QAAJ,EAAe,KAAIM,GAAG,CAACI,KAAM,EAAjC,CADK;AAEblB,cAAAA;AAFa,aAAD,CAAd;AAID;;AACD,cAAI,CAACe,KAAL,EAAY,MAAM,KAAII,oBAAJ,EAAa,qBAAb,CAAN,CATsB,CAUlC;;AAEA,gBAAMC,IAAI,GAAGL,KAAK,CAACM,MAAN,CAAa;AACxBC,YAAAA,GAAG,EAAE,KADmB;AAExBC,YAAAA,WAAW,EAAE,IAFW;AAGxBC,YAAAA,QAAQ,EAAE,IAHc;AAIxBP,YAAAA,MAAM,EAAE,IAJgB;AAKxBQ,YAAAA,MAAM,EAAE,IALgB;AAMxBC,YAAAA,mBAAmB,EAAE,IANG;AAOxBC,YAAAA,aAAa,EAAE;AAPS,WAAb,CAAb;AASA,gBAAMC,SAAS,GAAG,KAAKC,SAAL,CAAeT,IAAf,CAAlB;AACA,gBAAMU,gBAAgB,GAAG,KAAKC,mBAAL,CAAyBX,IAAzB,EAA+BQ,SAA/B,CAAzB;AAEA,iBAAOf,OAAO,CAAC;AACbY,YAAAA,MAAM,EAAEO,MAAM,CAACC,MAAP,CAAcL,SAAd,CADK;AAEbM,YAAAA,iBAAiB,EAAEd,IAAI,CAACc,iBAFX;AAGbJ,YAAAA,gBAHa;AAIbb,YAAAA,MAAM,EAAE,KAAKkB,SAAL,CAAef,IAAf,CAJK;AAKblB,YAAAA,UAAU,EAAEa,KAAK,CAACqB,WAAN,CAAkBC,aAAlB,CAAgCC,IAL/B;AAMbtC,YAAAA,UANa;AAObwB,YAAAA,QAAQ,EAAEJ,IAAI,CAACI,QAPF;AAQbvC,YAAAA,SARa;AASbsD,YAAAA,OAAO,EAAErD,IAAI,CAACC,GAAL;AATI,WAAD,CAAd;AAWD,SAnCM,CAAP;AAoCD,OAvCM,CAAP;AAwCD,KA/C6B,CAA9B;AAgDAQ,IAAAA,iBAAiB,CAAC6C,GAAlB;AACA,WAAO1C,eAAP;AACD;;AAEOqC,EAAAA,SAAS,CAACpB,KAAD,EAAmC;AAClD,QAAI,CAACA,KAAK,CAACE,MAAX,EAAmB,OAAO,EAAP;AACnB,UAAMwB,YAAY,GAAG,CAAC,SAAD,EAAY,UAAZ,EAAwB,YAAxB,EAAsC,kBAAtC,EAA0D,KAA1D,CAArB;AACA,WAAO1B,KAAK,CAACE,MAAN,CAAa5B,GAAb,CAAkBqD,YAAD,IAAkB;AACxC,YAAMC,KAAK,GAAGF,YAAY,CAACpD,GAAb,CAAkBuD,SAAD,IAAe;AAC5C,YAAIF,YAAY,CAACE,SAAD,CAAhB,EAA6B;AAC3B,iBAAQ,GAAEA,SAAU,KAAIF,YAAY,CAACE,SAAD,CAAY,EAAhD;AACD;;AACD,eAAOC,SAAP;AACD,OALa,CAAd;AAMA,YAAMC,YAAY,GAAG,uBAAQH,KAAR,EAAelC,IAAf,CAAoB,IAApB,CAArB;AACA,aAAO,KAAIU,oBAAJ,EAAa2B,YAAb,CAAP;AACD,KATM,CAAP;AAUD;;AAEOjB,EAAAA,SAAS,CAACd,KAAD,EAAqC;AACpD,QAAI,CAACA,KAAK,CAACU,MAAX,EAAmB,OAAO,EAAP;AACnB,WAAOV,KAAK,CAACU,MAAN,CAAasB,MAAb,CAAoB,CAACC,GAAD,EAAMC,KAAN,KAAgB;AACzCD,MAAAA,GAAG,CAACC,KAAK,CAACC,IAAP,CAAH,GAAkB;AAChBA,QAAAA,IAAI,EAAED,KAAK,CAACC,IADI;AAEhBC,QAAAA,IAAI,EAAEF,KAAK,CAACE,IAFI;AAGhBC,QAAAA,cAAc,EAAE,KAAKC,iBAAL,CAAuBJ,KAAvB;AAHA,OAAlB;AAKA,aAAOD,GAAP;AACD,KAPM,EAOJ,EAPI,CAAP;AAQD;;AAEOjB,EAAAA,mBAAmB,CAAChB,KAAD,EAA0Ba,SAA1B,EAAkE;AAC3F,UAAM0B,UAAU,GAAGvC,KAAK,CAACQ,WAAzB;AACA,QAAI,CAAC+B,UAAD,IAAe,CAACtB,MAAM,CAACuB,IAAP,CAAY3B,SAAZ,EAAuB/B,MAA3C,EAAmD,OAAO,EAAP;AACnDmC,IAAAA,MAAM,CAACwB,OAAP,CAAeF,UAAf,EAA2BG,OAA3B,CAAmC,CAAC,GAAGC,QAAH,CAAD,KAAkB;AAAA;;AACnD,UAAIC,oBAAoB,GAAG,CAA3B;AACA,UAAIC,6BAA6B,GAAG,CAApC;AACA,0BAAAF,QAAQ,CAACjC,MAAT,sEAAiBgC,OAAjB,CAA0BR,KAAD,IAAW;AAAA;;AAClC,cAAMG,cAAc,4BAAGxB,SAAS,CAACqB,KAAK,CAACC,IAAP,CAAZ,0DAAG,sBAAuBE,cAA9C;;AACA,YAAIA,cAAJ,EAAoB;AAClB;AACAH,UAAAA,KAAK,CAACG,cAAN,GAAuBA,cAAvB;AACAO,UAAAA,oBAAoB,IAAIP,cAAxB;AACD;AACF,OAPD;AAQA,+BAAAM,QAAQ,CAACG,eAAT,gFAA0BJ,OAA1B,CAAmCR,KAAD,IAAW;AAAA;;AAC3C,cAAMG,cAAc,6BAAGxB,SAAS,CAACqB,KAAK,CAACC,IAAP,CAAZ,2DAAG,uBAAuBE,cAA9C;;AACA,YAAIA,cAAJ,EAAoB;AAClB;AACAH,UAAAA,KAAK,CAACG,cAAN,GAAuBA,cAAvB;AACAQ,UAAAA,6BAA6B,IAAIR,cAAjC;AACD;AACF,OAPD;AAQAM,MAAAA,QAAQ,CAACC,oBAAT,GAAgCA,oBAAhC;AACAD,MAAAA,QAAQ,CAACE,6BAAT,GAAyCA,6BAAzC;AACD,KArBD;AAsBA,WAAON,UAAP;AACD;;AAEOD,EAAAA,iBAAiB,CAACJ,KAAD,EAAwC;AAC/D,QAAI,CAACA,KAAK,CAACa,OAAP,IAAkB,uBAAQb,KAAK,CAACa,OAAd,CAAtB,EAA8C,OAAOjB,SAAP;AAC9C,UAAMkB,OAAO,GAAGd,KAAK,CAACa,OAAN,CAAcE,IAAd,CAAoBC,YAAD,IAAkB;AACnD,aAAOA,YAAY,CAACC,IAAb,KAAsB,SAA7B;AACD,KAFe,CAAhB;AAGA,QAAI,CAACH,OAAL,EAAc,OAAOlB,SAAP;AACd,WAAOkB,OAAO,CAACZ,IAAf;AACD;;AAEOlD,EAAAA,aAAa,CAACC,UAAD,EAAqB;AACxC,UAAMoC,IAAI,GAAGpC,UAAU,CAACiE,SAAX,CAAqB,CAArB,EAAwBjE,UAAU,CAACkE,WAAX,CAAuBC,WAAvB,CAAxB,CAAb;AACA,UAAMC,MAAM,GAAG,KAAK3F,OAAL,CAAaqF,IAAb,CAAmBO,eAAD,IAAqBjC,IAAI,KAAKiC,eAAe,CAACrE,UAAhE,CAAf;AAEA,QAAI,CAACoE,MAAL,EAAa,MAAM,IAAIE,KAAJ,CAAW,yCAAwClC,IAAK,GAAxD,CAAN;AACb,WAAOgC,MAAM,CAACtE,UAAd;AACD;;AAtJ4C","sourcesContent":["import { BitError } from '@teambit/bit-error';\nimport type { Bundler, BundlerResult, Asset, Target, EntriesAssetsMap, BundlerContextMetaData } from '@teambit/bundler';\nimport type { Logger } from '@teambit/logger';\nimport { compact, isEmpty } from 'lodash';\nimport mapSeries from 'p-map-series';\nimport type { Compiler, Configuration, StatsCompilation, StatsAsset } from 'webpack';\nimport { sep } from 'path';\n\ntype AssetsMap = { [assetId: string]: Asset };\nexport class WebpackBundler implements Bundler {\n constructor(\n /**\n * targets to bundle.\n */\n private targets: Target[],\n\n /**\n * webpack configuration.\n */\n private configs: Configuration[],\n\n private logger: Logger,\n\n private webpack,\n\n private metaData?: BundlerContextMetaData | undefined\n ) {}\n\n async run(): Promise<BundlerResult[]> {\n const startTime = Date.now();\n const compilers = this.configs.map((config: any) => this.webpack(config));\n const initiator = this.metaData?.initiator;\n const envId = this.metaData?.envId;\n const initiatorMessage = initiator ? `process initiated by: ${initiator}.` : '';\n const envIdMessage = envId ? `config created by env: ${envId}.` : '';\n\n const longProcessLogger = this.logger.createLongProcessLogger('running Webpack bundler', compilers.length);\n const componentOutput = await mapSeries(compilers, (compiler: Compiler) => {\n const components = this.getComponents(compiler.outputPath);\n const componentsLengthMessage = `running on ${components.length} components`;\n const fullMessage = `${initiatorMessage} ${envIdMessage} ${componentsLengthMessage}`;\n const ids = components.map((component) => component.id.toString()).join(', ');\n longProcessLogger.logProgress(`${fullMessage}`);\n this.logger.debug(`${fullMessage}\\ncomponents ids: ${ids}`);\n return new Promise((resolve) => {\n // TODO: split to multiple processes to reduce time and configure concurrent builds.\n // @see https://github.com/trivago/parallel-webpack\n return compiler.run((err, stats) => {\n if (err) {\n this.logger.error('get error from webpack compiler, full error:', err);\n\n return resolve({\n errors: [`${err.toString()}\\n${err.stack}`],\n components,\n });\n }\n if (!stats) throw new BitError('unknown build error');\n // const info = stats.toJson();\n\n const info = stats.toJson({\n all: false,\n entrypoints: true,\n warnings: true,\n errors: true,\n assets: true,\n chunkGroupAuxiliary: true,\n relatedAssets: true,\n });\n const assetsMap = this.getAssets(info);\n const entriesAssetsMap = this.getEntriesAssetsMap(info, assetsMap);\n\n return resolve({\n assets: Object.values(assetsMap),\n assetsByChunkName: info.assetsByChunkName,\n entriesAssetsMap,\n errors: this.getErrors(info),\n outputPath: stats.compilation.outputOptions.path,\n components,\n warnings: info.warnings,\n startTime,\n endTime: Date.now(),\n });\n });\n });\n });\n longProcessLogger.end();\n return componentOutput as BundlerResult[];\n }\n\n private getErrors(stats: StatsCompilation): Error[] {\n if (!stats.errors) return [];\n const fieldsToShow = ['message', 'moduleId', 'moduleName', 'moduleIdentifier', 'loc'];\n return stats.errors.map((webpackError) => {\n const lines = fieldsToShow.map((fieldName) => {\n if (webpackError[fieldName]) {\n return `${fieldName}: ${webpackError[fieldName]}`;\n }\n return undefined;\n });\n const errorMessage = compact(lines).join('\\n');\n return new BitError(errorMessage);\n });\n }\n\n private getAssets(stats: StatsCompilation): AssetsMap {\n if (!stats.assets) return {};\n return stats.assets.reduce((acc, asset) => {\n acc[asset.name] = {\n name: asset.name,\n size: asset.size,\n compressedSize: this.getCompressedSize(asset),\n };\n return acc;\n }, {});\n }\n\n private getEntriesAssetsMap(stats: StatsCompilation, assetsMap: AssetsMap): EntriesAssetsMap {\n const entriesMap = stats.entrypoints;\n if (!entriesMap || !Object.keys(assetsMap).length) return {};\n Object.entries(entriesMap).forEach(([, entryVal]) => {\n let compressedAssetsSize = 0;\n let compressedAuxiliaryAssetsSize = 0;\n entryVal.assets?.forEach((asset) => {\n const compressedSize = assetsMap[asset.name]?.compressedSize;\n if (compressedSize) {\n // @ts-ignore\n asset.compressedSize = compressedSize;\n compressedAssetsSize += compressedSize;\n }\n });\n entryVal.auxiliaryAssets?.forEach((asset) => {\n const compressedSize = assetsMap[asset.name]?.compressedSize;\n if (compressedSize) {\n // @ts-ignore\n asset.compressedSize = compressedSize;\n compressedAuxiliaryAssetsSize += compressedSize;\n }\n });\n entryVal.compressedAssetsSize = compressedAssetsSize;\n entryVal.compressedAuxiliaryAssetsSize = compressedAuxiliaryAssetsSize;\n });\n return entriesMap as any as EntriesAssetsMap;\n }\n\n private getCompressedSize(asset: StatsAsset): number | undefined {\n if (!asset.related || isEmpty(asset.related)) return undefined;\n const gzipped = asset.related.find((relatedAsset) => {\n return relatedAsset.type === 'gzipped';\n });\n if (!gzipped) return undefined;\n return gzipped.size;\n }\n\n private getComponents(outputPath: string) {\n const path = outputPath.substring(0, outputPath.lastIndexOf(sep));\n const target = this.targets.find((targetCandidate) => path === targetCandidate.outputPath);\n\n if (!target) throw new Error(`Could not find component id for path \"${path}\"`);\n return target.components;\n }\n}\n"]}
|
|
@@ -53,7 +53,7 @@ export declare class WebpackMain {
|
|
|
53
53
|
*/
|
|
54
54
|
createDevServer(context: DevServerContext, transformers?: WebpackConfigTransformer[]): DevServer;
|
|
55
55
|
mergeConfig(target: any, source: any): any;
|
|
56
|
-
createBundler(context: BundlerContext, transformers?: WebpackConfigTransformer[], initialConfigs?: webpack.Configuration[]): WebpackBundler;
|
|
56
|
+
createBundler(context: BundlerContext, transformers?: WebpackConfigTransformer[], initialConfigs?: webpack.Configuration[], webpackInstance?: any): WebpackBundler;
|
|
57
57
|
private createConfigs;
|
|
58
58
|
private createDevServerConfig;
|
|
59
59
|
static slots: never[];
|
|
@@ -205,13 +205,13 @@ class WebpackMain {
|
|
|
205
205
|
return (0, _webpackMerge().merge)(target, source);
|
|
206
206
|
}
|
|
207
207
|
|
|
208
|
-
createBundler(context, transformers = [], initialConfigs) {
|
|
208
|
+
createBundler(context, transformers = [], initialConfigs, webpackInstance) {
|
|
209
209
|
const transformerContext = {
|
|
210
210
|
mode: 'prod'
|
|
211
211
|
}; // eslint-disable-next-line max-len
|
|
212
212
|
|
|
213
213
|
const configs = initialConfigs || this.createConfigs(context.targets, _webpack2().configFactory, transformers, transformerContext, context);
|
|
214
|
-
return new (_webpack4().WebpackBundler)(context.targets, configs, this.logger, _webpack().default, context.metaData);
|
|
214
|
+
return new (_webpack4().WebpackBundler)(context.targets, configs, this.logger, webpackInstance || _webpack().default, context.metaData);
|
|
215
215
|
}
|
|
216
216
|
|
|
217
217
|
createConfigs(targets, factory, transformers = [], transformerContext, bundlerContext) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["webpack.main.runtime.ts"],"names":["WebpackMain","constructor","pubsub","workspace","bundler","logger","createDevServer","context","transformers","config","createDevServerConfig","entry","path","id","rootPath","publicPath","title","configMutator","WebpackConfigMutator","transformerContext","mode","afterMutation","runTransformersWithContext","clone","WebpackDevServer","raw","webpack","WsDevServer","mergeConfig","target","source","createBundler","initialConfigs","configs","createConfigs","targets","baseConfigFactory","WebpackBundler","metaData","factory","bundlerContext","map","baseConfig","Object","assign","devServerID","publicRoot","provider","logPublisher","createLogger","WebpackAspect","MainRuntime","PubsubAspect","WorkspaceAspect","BundlerAspect","LoggerAspect","addRuntime","Array","isArray","newConfig","reduce","acc","transformer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AASA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAEA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AACA;AAAA;;AAAA;AAAA;AAAA;;AAAA;AAAA;;AAsBO,MAAMA,WAAN,CAAkB;AACvBC,EAAAA,WAAW;AACT;AACJ;AACA;AACWC,EAAAA,MAJE;AAMT;AACJ;AACA;AACYC,EAAAA,SATC;AAWT;AACJ;AACA;AACYC,EAAAA,OAdC;AAgBT;AACJ;AACA;AACWC,EAAAA,MAnBE,EAoBT;AAAA,SAhBOH,MAgBP,GAhBOA,MAgBP;AAAA,SAXQC,SAWR,GAXQA,SAWR;AAAA,SANQC,OAMR,GANQA,OAMR;AAAA,SADOC,MACP,GADOA,MACP;AAAE;AAEJ;AACF;AACA;;;AACEC,EAAAA,eAAe,CAACC,OAAD,EAA4BC,YAAwC,GAAG,EAAvE,EAAsF;AACnG,UAAMC,MAAM,GAAG,KAAKC,qBAAL,CACbH,OAAO,CAACI,KADK,EAEb,KAAKR,SAAL,CAAeS,IAFF,EAGbL,OAAO,CAACM,EAHK,EAIbN,OAAO,CAACO,QAJK,EAKbP,OAAO,CAACQ,UALK,EAMbR,OAAO,CAACS,KANK,CAAf;AAQA,UAAMC,aAAa,GAAG,KAAIC,sCAAJ,EAAyBT,MAAzB,CAAtB;AACA,UAAMU,kBAAuD,GAAG;AAAEC,MAAAA,IAAI,EAAE;AAAR,KAAhE;AACA,UAAMC,aAAa,GAAGC,0BAA0B,CAACL,aAAa,CAACM,KAAd,EAAD,EAAwBf,YAAxB,EAAsCW,kBAAtC,CAAhD,CAXmG,CAYnG;;AACA,WAAO,KAAIK,4BAAJ,EAAqBH,aAAa,CAACI,GAAnC,EAAwCC,kBAAxC,EAAiDC,2BAAjD,CAAP;AACD;;AAEDC,EAAAA,WAAW,CAACC,MAAD,EAAcC,MAAd,EAAgC;AACzC,WAAO,2BAAMD,MAAN,EAAcC,MAAd,CAAP;AACD;;AAEDC,EAAAA,aAAa,CACXxB,OADW,EAEXC,YAAwC,GAAG,EAFhC,EAGXwB,cAHW,
|
|
1
|
+
{"version":3,"sources":["webpack.main.runtime.ts"],"names":["WebpackMain","constructor","pubsub","workspace","bundler","logger","createDevServer","context","transformers","config","createDevServerConfig","entry","path","id","rootPath","publicPath","title","configMutator","WebpackConfigMutator","transformerContext","mode","afterMutation","runTransformersWithContext","clone","WebpackDevServer","raw","webpack","WsDevServer","mergeConfig","target","source","createBundler","initialConfigs","webpackInstance","configs","createConfigs","targets","baseConfigFactory","WebpackBundler","metaData","factory","bundlerContext","map","baseConfig","Object","assign","devServerID","publicRoot","provider","logPublisher","createLogger","WebpackAspect","MainRuntime","PubsubAspect","WorkspaceAspect","BundlerAspect","LoggerAspect","addRuntime","Array","isArray","newConfig","reduce","acc","transformer"],"mappings":"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","sourcesContent":["import webpack, { Configuration } from 'webpack';\nimport PubsubAspect, { PubsubMain } from '@teambit/pubsub';\nimport {\n BundlerAspect,\n BundlerContext,\n BundlerMain,\n DevServer,\n DevServerContext,\n BundlerMode,\n Target,\n} from '@teambit/bundler';\nimport { MainRuntime } from '@teambit/cli';\nimport { Logger, LoggerAspect, LoggerMain } from '@teambit/logger';\nimport { Workspace, WorkspaceAspect } from '@teambit/workspace';\nimport { merge } from 'webpack-merge';\nimport WsDevServer from 'webpack-dev-server';\nimport { WebpackConfigMutator } from '@teambit/webpack.modules.config-mutator';\n\nimport { configFactory as devServerConfigFactory } from './config/webpack.dev.config';\nimport { configFactory as baseConfigFactory } from './config/webpack.config';\n\nimport { WebpackAspect } from './webpack.aspect';\nimport { WebpackBundler } from './webpack.bundler';\nimport { WebpackDevServer } from './webpack.dev-server';\n\nexport type WebpackConfigTransformContext = GlobalWebpackConfigTransformContext & {\n target: Target;\n};\n\nexport type WebpackConfigDevServerTransformContext = GlobalWebpackConfigTransformContext;\n\nexport type GlobalWebpackConfigTransformContext = {\n mode: BundlerMode;\n};\n\nexport type WebpackConfigTransformer = (\n config: WebpackConfigMutator,\n context: WebpackConfigTransformContext\n) => WebpackConfigMutator;\n\nexport type WebpackConfigDevServerTransformer = (\n config: WebpackConfigMutator,\n context: WebpackConfigDevServerTransformContext\n) => WebpackConfigMutator;\n\nexport class WebpackMain {\n constructor(\n /**\n * Pubsub extension.\n */\n public pubsub: PubsubMain,\n\n /**\n * workspace extension.\n */\n private workspace: Workspace,\n\n /**\n * bundler extension.\n */\n private bundler: BundlerMain,\n\n /**\n * Logger extension\n */\n public logger: Logger\n ) {}\n\n /**\n * create an instance of bit-compliant webpack dev server for a set of components\n */\n createDevServer(context: DevServerContext, transformers: WebpackConfigTransformer[] = []): DevServer {\n const config = this.createDevServerConfig(\n context.entry,\n this.workspace.path,\n context.id,\n context.rootPath,\n context.publicPath,\n context.title\n ) as any;\n const configMutator = new WebpackConfigMutator(config);\n const transformerContext: GlobalWebpackConfigTransformContext = { mode: 'dev' };\n const afterMutation = runTransformersWithContext(configMutator.clone(), transformers, transformerContext);\n // @ts-ignore - fix this\n return new WebpackDevServer(afterMutation.raw, webpack, WsDevServer);\n }\n\n mergeConfig(target: any, source: any): any {\n return merge(target, source);\n }\n\n createBundler(\n context: BundlerContext,\n transformers: WebpackConfigTransformer[] = [],\n initialConfigs?: webpack.Configuration[],\n webpackInstance?: any\n ) {\n const transformerContext: GlobalWebpackConfigTransformContext = { mode: 'prod' };\n // eslint-disable-next-line max-len\n const configs =\n initialConfigs ||\n this.createConfigs(context.targets, baseConfigFactory, transformers, transformerContext, context);\n return new WebpackBundler(context.targets, configs, this.logger, webpackInstance || webpack, context.metaData);\n }\n\n private createConfigs(\n targets: Target[],\n factory: (target: Target, context: BundlerContext) => Configuration,\n transformers: WebpackConfigTransformer[] = [],\n transformerContext: GlobalWebpackConfigTransformContext,\n bundlerContext: BundlerContext\n ) {\n return targets.map((target) => {\n const baseConfig = factory(target, bundlerContext);\n const configMutator = new WebpackConfigMutator(baseConfig);\n const context = Object.assign({}, transformerContext, { target });\n const afterMutation = runTransformersWithContext(configMutator.clone(), transformers, context);\n return afterMutation.raw;\n });\n }\n\n private createDevServerConfig(\n entry: string[],\n rootPath: string,\n devServerID: string,\n publicRoot: string,\n publicPath: string,\n title?: string\n ) {\n return devServerConfigFactory(devServerID, rootPath, entry, publicRoot, publicPath, this.pubsub, title);\n }\n\n static slots = [];\n\n static runtime = MainRuntime;\n static dependencies = [PubsubAspect, WorkspaceAspect, BundlerAspect, LoggerAspect];\n\n static async provider([pubsub, workspace, bundler, logger]: [PubsubMain, Workspace, BundlerMain, LoggerMain]) {\n const logPublisher = logger.createLogger(WebpackAspect.id);\n return new WebpackMain(pubsub, workspace, bundler, logPublisher);\n }\n}\n\nWebpackAspect.addRuntime(WebpackMain);\n\nexport function runTransformersWithContext(\n config: WebpackConfigMutator,\n transformers: Array<WebpackConfigTransformer | WebpackConfigDevServerTransformer> = [],\n context: WebpackConfigTransformContext | WebpackConfigDevServerTransformContext\n): WebpackConfigMutator {\n if (!Array.isArray(transformers)) return config;\n const newConfig = transformers.reduce((acc, transformer) => {\n // @ts-ignore\n return transformer(acc, context);\n }, config);\n return newConfig;\n}\n"]}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/webpack",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.703",
|
|
4
4
|
"homepage": "https://bit.dev/teambit/webpack/webpack",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.webpack",
|
|
8
8
|
"name": "webpack",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.703"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"webpack": "5.51.1",
|
|
@@ -45,11 +45,11 @@
|
|
|
45
45
|
"core-js": "^3.0.0",
|
|
46
46
|
"@teambit/webpack.modules.config-mutator": "0.0.137",
|
|
47
47
|
"@teambit/bit-error": "0.0.394",
|
|
48
|
-
"@teambit/bundler": "0.0.
|
|
49
|
-
"@teambit/logger": "0.0.
|
|
50
|
-
"@teambit/cli": "0.0.
|
|
51
|
-
"@teambit/pubsub": "0.0.
|
|
52
|
-
"@teambit/workspace": "0.0.
|
|
48
|
+
"@teambit/bundler": "0.0.703",
|
|
49
|
+
"@teambit/logger": "0.0.559",
|
|
50
|
+
"@teambit/cli": "0.0.467",
|
|
51
|
+
"@teambit/pubsub": "0.0.703",
|
|
52
|
+
"@teambit/workspace": "0.0.703",
|
|
53
53
|
"@teambit/webpack.modules.generate-externals": "0.0.3"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
@@ -64,7 +64,7 @@
|
|
|
64
64
|
"@types/node": "12.20.4"
|
|
65
65
|
},
|
|
66
66
|
"peerDependencies": {
|
|
67
|
-
"@teambit/legacy": "1.0.
|
|
67
|
+
"@teambit/legacy": "1.0.245",
|
|
68
68
|
"react-dom": "^16.8.0 || ^17.0.0",
|
|
69
69
|
"react": "^16.8.0 || ^17.0.0"
|
|
70
70
|
},
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.webpack_webpack@0.0.
|
|
2
|
-
export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.webpack_webpack@0.0.
|
|
1
|
+
export const compositions = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.webpack_webpack@0.0.703/dist/webpack.composition.js')]
|
|
2
|
+
export const overview = [require('/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.webpack_webpack@0.0.703/dist/webpack.docs.mdx')]
|
package/tsconfig.json
CHANGED
|
@@ -10,22 +10,23 @@
|
|
|
10
10
|
"target": "es2015",
|
|
11
11
|
"module": "commonjs",
|
|
12
12
|
"jsx": "react",
|
|
13
|
+
"allowJs": true,
|
|
14
|
+
"composite": true,
|
|
13
15
|
"declaration": true,
|
|
14
16
|
"sourceMap": true,
|
|
15
17
|
"skipLibCheck": true,
|
|
18
|
+
"outDir": "dist",
|
|
16
19
|
"moduleResolution": "node",
|
|
17
20
|
"esModuleInterop": true,
|
|
21
|
+
"rootDir": ".",
|
|
18
22
|
"resolveJsonModule": true,
|
|
19
|
-
"composite": true,
|
|
20
23
|
"emitDeclarationOnly": true,
|
|
21
|
-
"outDir": "dist",
|
|
22
24
|
"experimentalDecorators": true,
|
|
23
25
|
"emitDecoratorMetadata": true,
|
|
24
26
|
"allowSyntheticDefaultImports": true,
|
|
25
27
|
"strictPropertyInitialization": false,
|
|
26
28
|
"strict": true,
|
|
27
29
|
"noImplicitAny": false,
|
|
28
|
-
"rootDir": ".",
|
|
29
30
|
"preserveConstEnums": true
|
|
30
31
|
},
|
|
31
32
|
"exclude": [
|
|
Binary file
|