{
  "version": 3,
  "sources": ["../../src/commands/build.mts"],
  "sourcesContent": ["/*\n * Copyright (c) 2022 Kiyozz.\n *\n * All rights reserved.\n */\n\nimport path from 'node:path'\nimport { rimraf } from 'rimraf'\n\nimport { Cli, CliResult } from '../cli.mjs'\nimport { CONFIG_FILE_NAME } from '../config/constants.mjs'\nimport { Logger } from '../console.mjs'\nimport { Worker } from '../worker.mjs'\n\nconst _logger = new Logger('Commands/Build')\n\nasync function clean(): Promise<void> {\n  _logger.log('Cleaning')\n  await rimraf(path.resolve('dist'))\n}\n\nexport class Build extends Cli {\n  constructor(cli: CliResult) {\n    super(cli)\n  }\n\n  static async create(cli: CliResult): Promise<Build> {\n    return new Build(cli)\n  }\n\n  async init(): Promise<void> {\n    process.env.NODE_ENV = 'production'\n    _logger.debug('Start')\n\n    if (this.cli.flags.clean) {\n      await clean()\n    }\n\n    _logger.debug('Creating worker')\n\n    const worker = Worker.fromFile({\n      file: CONFIG_FILE_NAME,\n      env: 'production',\n    })\n\n    _logger.debug('Created worker')\n\n    const config = await worker.toConfigAsync()\n\n    _logger.debug('Parsed config')\n\n    const [main, renderer] = await config.toBuildersAsync()\n\n    _logger.debug('Created builders')\n    _logger.log('Creating production build...')\n\n    await Promise.all([\n      main.build(),\n      renderer?.build() ?? (await Promise.resolve()),\n    ])\n  }\n}\n"],
  "mappings": "AAMA,OAAO,UAAU;AACjB,SAAS,cAAc;AAEvB,SAAS,WAAsB;AAC/B,SAAS,wBAAwB;AACjC,SAAS,cAAc;AACvB,SAAS,cAAc;AAEvB,MAAM,UAAU,IAAI,OAAO,gBAAgB;AAE3C,eAAe,QAAuB;AACpC,UAAQ,IAAI,UAAU;AACtB,QAAM,OAAO,KAAK,QAAQ,MAAM,CAAC;AACnC;AAEO,MAAM,cAAc,IAAI;AAAA,EAC7B,YAAY,KAAgB;AAC1B,UAAM,GAAG;AAAA,EACX;AAAA,EAEA,aAAa,OAAO,KAAgC;AAClD,WAAO,IAAI,MAAM,GAAG;AAAA,EACtB;AAAA,EAEA,MAAM,OAAsB;AAC1B,YAAQ,IAAI,WAAW;AACvB,YAAQ,MAAM,OAAO;AAErB,QAAI,KAAK,IAAI,MAAM,OAAO;AACxB,YAAM,MAAM;AAAA,IACd;AAEA,YAAQ,MAAM,iBAAiB;AAE/B,UAAM,SAAS,OAAO,SAAS;AAAA,MAC7B,MAAM;AAAA,MACN,KAAK;AAAA,IACP,CAAC;AAED,YAAQ,MAAM,gBAAgB;AAE9B,UAAM,SAAS,MAAM,OAAO,cAAc;AAE1C,YAAQ,MAAM,eAAe;AAE7B,UAAM,CAAC,MAAM,QAAQ,IAAI,MAAM,OAAO,gBAAgB;AAEtD,YAAQ,MAAM,kBAAkB;AAChC,YAAQ,IAAI,8BAA8B;AAE1C,UAAM,QAAQ,IAAI;AAAA,MAChB,KAAK,MAAM;AAAA,MACX,UAAU,MAAM,KAAM,MAAM,QAAQ,QAAQ;AAAA,IAC9C,CAAC;AAAA,EACH;AACF;",
  "names": []
}
