{"version":3,"file":"build.mjs","sources":["../../../../src/node/webpack/build.ts"],"sourcesContent":["import webpack from 'webpack';\n\nimport { mergeConfigWithUserConfig, resolveProductionConfig } from './config';\nimport { isError } from '../core/errors';\n\nimport type { BuildContext } from '../create-build-context';\n\nconst build = async (ctx: BuildContext) => {\n  const config = await resolveProductionConfig(ctx);\n  const finalConfig = await mergeConfigWithUserConfig(config, ctx);\n\n  ctx.logger.debug('Webpack config', finalConfig);\n\n  return new Promise((resolve, reject) => {\n    webpack(finalConfig, (err, stats) => {\n      if (stats) {\n        if (stats.hasErrors()) {\n          ctx.logger.error(\n            stats.toString({\n              chunks: false,\n              colors: true,\n            })\n          );\n\n          reject();\n        } else if (ctx.options.stats) {\n          ctx.logger.info(\n            stats.toString({\n              chunks: false,\n              colors: true,\n            })\n          );\n        }\n\n        resolve(true);\n      }\n\n      if (err && isError(err)) {\n        ctx.logger.error(err.message);\n        reject();\n      }\n    });\n  });\n};\n\nexport { build };\n"],"names":["build","ctx","config","resolveProductionConfig","finalConfig","mergeConfigWithUserConfig","logger","debug","Promise","resolve","reject","webpack","err","stats","hasErrors","error","toString","chunks","colors","options","info","isError","message"],"mappings":";;;;AAOA,MAAMA,QAAQ,OAAOC,GAAAA,GAAAA;IACnB,MAAMC,MAAAA,GAAS,MAAMC,uBAAAA,CAAwBF,GAAAA,CAAAA;IAC7C,MAAMG,WAAAA,GAAc,MAAMC,yBAAAA,CAA0BH,MAAAA,EAAQD,GAAAA,CAAAA;AAE5DA,IAAAA,GAAAA,CAAIK,MAAM,CAACC,KAAK,CAAC,gBAAA,EAAkBH,WAAAA,CAAAA;IAEnC,OAAO,IAAII,OAAAA,CAAQ,CAACC,OAAAA,EAASC,MAAAA,GAAAA;QAC3BC,OAAAA,CAAQP,WAAAA,EAAa,CAACQ,GAAAA,EAAKC,KAAAA,GAAAA;AACzB,YAAA,IAAIA,KAAAA,EAAO;gBACT,IAAIA,KAAAA,CAAMC,SAAS,EAAA,EAAI;AACrBb,oBAAAA,GAAAA,CAAIK,MAAM,CAACS,KAAK,CACdF,KAAAA,CAAMG,QAAQ,CAAC;wBACbC,MAAAA,EAAQ,KAAA;wBACRC,MAAAA,EAAQ;AACV,qBAAA,CAAA,CAAA;AAGFR,oBAAAA,MAAAA,EAAAA;AACF,gBAAA,CAAA,MAAO,IAAIT,GAAAA,CAAIkB,OAAO,CAACN,KAAK,EAAE;AAC5BZ,oBAAAA,GAAAA,CAAIK,MAAM,CAACc,IAAI,CACbP,KAAAA,CAAMG,QAAQ,CAAC;wBACbC,MAAAA,EAAQ,KAAA;wBACRC,MAAAA,EAAQ;AACV,qBAAA,CAAA,CAAA;AAEJ,gBAAA;gBAEAT,OAAAA,CAAQ,IAAA,CAAA;AACV,YAAA;YAEA,IAAIG,GAAAA,IAAOS,QAAQT,GAAAA,CAAAA,EAAM;AACvBX,gBAAAA,GAAAA,CAAIK,MAAM,CAACS,KAAK,CAACH,IAAIU,OAAO,CAAA;AAC5BZ,gBAAAA,MAAAA,EAAAA;AACF,YAAA;AACF,QAAA,CAAA,CAAA;AACF,IAAA,CAAA,CAAA;AACF;;;;"}