UNPKG

9.67 kBSource Map (JSON)View Raw
1{"version":3,"file":"plugins.js","sourceRoot":"","sources":["../../plugins.ts"],"names":[],"mappings":"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","sourcesContent":["import DuplicateCheckerPlugin from \"duplicate-package-checker-webpack-plugin\";\r\nimport FriendlyErrorsPlugin from \"friendly-errors-webpack-plugin\";\r\nimport LodashPlugin from \"lodash-webpack-plugin\";\r\nimport MomentLocalesPlugin from \"moment-locales-webpack-plugin\";\r\nimport MomentTimezoneDataPlugin from \"moment-timezone-data-webpack-plugin\";\r\nimport { join } from \"path\";\r\nimport SpeedMeasurePlugin from \"speed-measure-webpack-plugin\";\r\nimport webpack from \"webpack\";\r\n\r\nimport { IConfiguration } from \".\";\r\nimport { ModulePaths } from \"./modulePaths\";\r\nimport { progressPlugin } from \"./progressPlugin\";\r\nimport { SizePlugin } from \"./sizePlugin\";\r\n\r\nexport function createPlugins(\r\n configuration: IConfiguration,\r\n dev: boolean,\r\n modulePaths: ModulePaths\r\n) {\r\n const importOptimizations = [\r\n configuration.bundleOptions.includeBusboyEncodings !== true\r\n ? new webpack.NormalModuleReplacementPlugin(\r\n /encoding-indexes/,\r\n (resource: { context: string; request: string }) => {\r\n if (/busboy/.test(resource.context)) {\r\n resource.request = require.resolve(\"./replacements/busboy/encoding-indexes\", {\r\n paths: [__dirname]\r\n });\r\n }\r\n }\r\n )\r\n : null,\r\n new webpack.NormalModuleReplacementPlugin(\r\n /iconv-lite[\\/\\\\]encodings[\\/\\\\]/,\r\n (resource: { context: string; request: string }) => {\r\n if (/iconv-lite/.test(resource.context)) {\r\n if (/iconv-lite[\\/\\\\]encodings[\\/\\\\]index/.test(resource.request)) {\r\n resource.request = require.resolve(\"./replacements/iconv-lite/encodings\", {\r\n paths: [__dirname]\r\n });\r\n } else if (/iconv-lite[\\/\\\\]encodings[\\/\\\\]/.test(resource.request)) {\r\n const [, request] = /iconv-lite[\\/\\\\]encodings[\\/\\\\](.*)/.exec(\r\n resource.request\r\n ) as RegExpExecArray;\r\n\r\n if (\r\n !(\r\n /internal\\.js/.test(request) ||\r\n (configuration.bundleOptions.allowedIconvLiteEncodings != null\r\n ? configuration.bundleOptions.allowedIconvLiteEncodings.some(re =>\r\n new RegExp(re).test(request)\r\n )\r\n : false)\r\n )\r\n ) {\r\n resource.request = require.resolve(\"./replacements/iconv-lite/noop\", {\r\n paths: [__dirname]\r\n });\r\n }\r\n }\r\n }\r\n }\r\n ),\r\n new LodashPlugin(),\r\n new MomentLocalesPlugin({\r\n localesToKeep: configuration.bundleOptions.momentLocales || []\r\n }),\r\n configuration.bundleOptions.momentTimezones != null\r\n ? new MomentTimezoneDataPlugin({\r\n startYear: configuration.bundleOptions.momentTimezones.startYear,\r\n endYear: configuration.bundleOptions.momentTimezones.endYear,\r\n matchZones: configuration.bundleOptions.momentTimezones.matchZones\r\n })\r\n : null,\r\n process.env.WEBPACK_ANALYZE === \"true\"\r\n ? new DuplicateCheckerPlugin({\r\n verbose: true,\r\n showHelp: true,\r\n strict: true\r\n })\r\n : null\r\n ];\r\n\r\n const profiling = [\r\n process.env.WEBPACK_PROFILE === \"true\"\r\n ? new SpeedMeasurePlugin({\r\n outputFormat: \"humanVerbose\"\r\n })\r\n : null,\r\n process.env.WEBPACK_PROFILE === \"true\"\r\n ? new webpack.debug.ProfilingPlugin({\r\n outputPath: join(configuration.outputDir, \"./profile.json\")\r\n })\r\n : null,\r\n process.env.WEBPACK_BUNDLE_ANALYZE === \"true\" ? new SizePlugin() : null,\r\n progressPlugin()\r\n ];\r\n\r\n const loadVersion = (versionDir: string | null) => {\r\n if (versionDir != null) {\r\n try {\r\n return require(join(versionDir, \"./package.json\")).version;\r\n } catch (err) {\r\n return false;\r\n }\r\n }\r\n return false;\r\n };\r\n const versions = {\r\n \"@excitare/cli\": loadVersion(modulePaths.cliPath),\r\n \"@excitare/entry-next\": loadVersion(modulePaths.entryNextDir),\r\n \"@excitare/entry-service\": loadVersion(modulePaths.entryServiceDir),\r\n \"@excitare/client-next\": loadVersion(modulePaths.clientDir),\r\n \"@excitare/routes\": loadVersion(modulePaths.routesDir),\r\n \"next-server\": loadVersion(modulePaths.nextServerPath),\r\n next: loadVersion(modulePaths.nextPath),\r\n react: loadVersion(modulePaths.reactDir),\r\n \"react-dom\": loadVersion(modulePaths.reactDomDir)\r\n };\r\n\r\n return [\r\n ...importOptimizations,\r\n ...(!dev ? profiling : []),\r\n new FriendlyErrorsPlugin({\r\n compilationSuccessInfo: {\r\n // messages: [\"You application is running here http://localhost:3000\"],\r\n // notes: [\"Some additional notes to be displayed upon successful compilation\"]\r\n },\r\n clearConsole: false,\r\n additionalFormatters: [],\r\n additionalTransformers: []\r\n }),\r\n new webpack.DefinePlugin({\r\n \"process.env.NODE_ENV\": JSON.stringify(dev ? \"development\" : \"production\"),\r\n \"process.env.excitareVersions\": JSON.stringify(JSON.stringify(versions)),\r\n \"process.iconOptions\": configuration.iconOptions\r\n ? JSON.stringify(configuration.iconOptions)\r\n : JSON.stringify(\"null\")\r\n })\r\n ];\r\n}\r\n"]}
\No newline at end of file