UNPKG

13 kBSource Map (JSON)View Raw
1{"version":3,"file":"production.js","sourceRoot":"","sources":["../../production.ts"],"names":[],"mappings":"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","sourcesContent":["import { ServiceType } from \"@excitare/cli-types\";\r\nimport chalk from \"chalk\";\r\nimport CopyWebpackPlugin from \"copy-webpack-plugin\";\r\nimport path from \"path\";\r\nimport TerserPlugin from \"terser-webpack-plugin\";\r\nimport webpack from \"webpack\";\r\n\r\nimport { IConfiguration } from \".\";\r\nimport { logDebugOutput } from \"./debug\";\r\nimport { createAliases } from \"./fragments/aliases\";\r\nimport { createDevtoolTemplates } from \"./fragments/devtoolTemplate\";\r\nimport { createNodeOptions } from \"./fragments/nodeOptions\";\r\nimport { createResolveOptions } from \"./fragments/resolve\";\r\nimport { createResolveLoader } from \"./fragments/resolveLoader\";\r\nimport { createDeduplicationAliases } from \"./moduleDeduplication\";\r\nimport { resolveModulePaths } from \"./modulePaths\";\r\nimport { createLoaders } from \"./options/loaders\";\r\nimport { createPlugins } from \"./plugins\";\r\n\r\nexport function resolveModule(\r\n moduleStr: string,\r\n configuration: IConfiguration,\r\n extraPaths?: Array<string | null>,\r\n dev: boolean = true,\r\n printFound: boolean = false\r\n) {\r\n const paths = [\r\n configuration.rootDir,\r\n configuration.context,\r\n path.dirname(configuration.entry),\r\n ...(extraPaths || [])\r\n ].filter(el => el != null);\r\n try {\r\n if (dev) {\r\n console.log(\r\n `Resolving ${chalk.gray(moduleStr)} in:\\n${paths\r\n .filter((el): el is string => Boolean(el))\r\n .map(el => \" - \" + path.resolve(el))\r\n .join(\"\\n\")}`\r\n );\r\n }\r\n const resolved = path.resolve(\r\n require.resolve(moduleStr + \"/package.json\", {\r\n paths: paths.filter((el): el is string => Boolean(el))\r\n })\r\n );\r\n const { dir } = path.parse(resolved);\r\n\r\n if (printFound) {\r\n console.log(\r\n ` - ${chalk.gray(moduleStr)}: ${chalk.greenBright(\"found\")} in directory ${chalk.cyan(\r\n dir\r\n )}`\r\n );\r\n }\r\n return path.resolve(dir);\r\n } catch (err) {\r\n if (printFound) {\r\n console.log(` - ${chalk.gray(moduleStr)}: ${chalk.redBright(\"not found\")}`);\r\n }\r\n return null;\r\n }\r\n}\r\n\r\nexport function createProductionConfig(\r\n type: ServiceType,\r\n configuration: IConfiguration\r\n): webpack.Configuration {\r\n console.log(\" Module resolution\");\r\n\r\n const modulePaths = resolveModulePaths(type, configuration, false);\r\n const {\r\n entry,\r\n entryNextDir,\r\n entryGraphqlPath,\r\n entryServiceDir,\r\n cliPath,\r\n graphqlPath,\r\n nextServerPath\r\n } = modulePaths;\r\n\r\n const alias = {\r\n ...createDeduplicationAliases(\r\n configuration,\r\n [configuration.entry, entryNextDir, entryServiceDir, entryGraphqlPath],\r\n configuration.bundleOptions.deduplication\r\n ),\r\n ...createAliases(type, modulePaths, \"./production\")\r\n };\r\n\r\n logDebugOutput(\r\n modulePaths,\r\n type,\r\n configuration,\r\n alias,\r\n process.env.WEBPACK_BUNDLE_ANALYZE === \"true\"\r\n );\r\n\r\n const externals = [\"hiredis\"];\r\n\r\n const flags = {\r\n minify: true, // true,\r\n tiny: true\r\n };\r\n\r\n return {\r\n entry,\r\n devtool: \"source-map\",\r\n target: \"node\",\r\n mode: \"production\",\r\n resolve: createResolveOptions(alias),\r\n resolveLoader: createResolveLoader(\r\n modulePaths,\r\n configuration,\r\n process.env.WEBPACK_BUNDLE_ANALYZE === \"true\"\r\n ),\r\n output: {\r\n path: configuration.outputDir,\r\n filename: configuration.outputName,\r\n pathinfo: true,\r\n futureEmitAssets: true,\r\n ...createDevtoolTemplates(configuration)\r\n } as any,\r\n externals: [\r\n (context, request, callback: any) => {\r\n if (configuration.externals.includes(request) || externals.includes(request)) {\r\n return callback(null, \"commonjs \" + request);\r\n }\r\n\r\n if (/config$/.test(request)) {\r\n if (\r\n /next\\/config$/.test(request) ||\r\n /next-server\\/config$/.test(request) ||\r\n (/next-server/.test(context) && /\\/runtime-config$/.test(request))\r\n ) {\r\n return callback(null, \"commonjs \" + \"next-server/config\");\r\n }\r\n }\r\n if (/^react([\\\\//]|$)/.test(request)) {\r\n // console.log(\"Matched react: %s\", request);\r\n return callback(null, \"commonjs \" + request);\r\n }\r\n if (/^react-dom([\\\\//]|$)/.test(request)) {\r\n // console.log(\"Matched react-dom: %s\", request);\r\n return callback(null, \"commonjs \" + request);\r\n }\r\n callback();\r\n }\r\n ],\r\n node: createNodeOptions(type),\r\n module: {\r\n rules: createLoaders(cliPath, graphqlPath, configuration, true)\r\n },\r\n optimization: {\r\n concatenateModules: flags.tiny,\r\n namedModules: !flags.tiny,\r\n namedChunks: !flags.tiny,\r\n ...({\r\n moduleIds: \"hashed\"\r\n } as any),\r\n minimizer: flags.minify\r\n ? [\r\n new TerserPlugin({\r\n cache: JSON.parse(process.env.terserDir!),\r\n parallel: false,\r\n sourceMap: true,\r\n terserOptions: {\r\n ecma: 8,\r\n compress: {\r\n dead_code: true,\r\n defaults: false,\r\n unused: \"keep_assign\",\r\n side_effects: true,\r\n warnings: true\r\n },\r\n mangle: { ie8: false, keep_classnames: true, keep_fnames: true },\r\n toplevel: false,\r\n output: {\r\n comments: false,\r\n braces: true,\r\n preamble: \"// Code built by Excitare\"\r\n }\r\n }\r\n })\r\n ]\r\n : undefined,\r\n minimize: flags.minify,\r\n sideEffects: true,\r\n usedExports: true,\r\n providedExports: true,\r\n removeEmptyChunks: true,\r\n portableRecords: true\r\n },\r\n plugins: [\r\n // new WebpackDeepScopeAnalysisPlugin(),\r\n // new WebpackSourceMapSupport(),\r\n ...createPlugins(configuration, false, modulePaths),\r\n type === ServiceType.Frontend && nextServerPath != null\r\n ? new CopyWebpackPlugin([\r\n {\r\n // Used in normal deployments\r\n from: path.join(nextServerPath, \"./dist/lib/runtime-config.js\"),\r\n to: \"./node_modules/next-server/config.js\"\r\n },\r\n {\r\n // Used only in cloud deployments\r\n from: path.join(nextServerPath, \"./dist/lib/runtime-config.js\"),\r\n to: \"./next-server-config.js\"\r\n }\r\n ])\r\n : null,\r\n configuration.iconOptions != null\r\n ? new CopyWebpackPlugin([\r\n {\r\n from: \"**/*\",\r\n context: configuration.iconOptions.inputDir,\r\n to: configuration.iconOptions.outDir,\r\n toType: \"dir\"\r\n }\r\n ])\r\n : null\r\n ].filter(el => el != null)\r\n };\r\n}\r\n"]}
\No newline at end of file