{"version":3,"file":"install-app-deps.js","sourceRoot":"","sources":["../../src/cli/install-app-deps.ts"],"names":[],"mappings":"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","sourcesContent":["#! /usr/bin/env node\n\nimport { getElectronVersion } from \"app-builder-lib/out/electron/electronVersion\"\nimport { computeDefaultAppDirectory, getConfig } from \"app-builder-lib/out/util/config/config\"\nimport { orNullIfFileNotExist } from \"app-builder-lib/out/util/config/load\"\nimport { createLazyProductionDeps } from \"app-builder-lib/out/util/packageDependencies\"\nimport { installOrRebuild } from \"app-builder-lib/out/util/yarn\"\nimport { PACKAGE_VERSION } from \"app-builder-lib/out/version\"\nimport { determinePackageManagerEnv } from \"app-builder-lib/out/node-module-collector\"\nimport { getArchCliNames, log, printErrorAndExit } from \"builder-util\"\nimport { readJson } from \"fs-extra\"\nimport { Lazy } from \"lazy-val\"\nimport * as path from \"path\"\nimport * as yargs from \"yargs\"\n\n/** @internal */\nexport function configureInstallAppDepsCommand(yargs: yargs.Argv): yargs.Argv {\n  // https://github.com/yargs/yargs/issues/760\n  // demandOption is required to be set\n  return yargs\n    .parserConfiguration({\n      \"camel-case-expansion\": false,\n    })\n    .option(\"platform\", {\n      choices: [\"linux\", \"darwin\", \"win32\"],\n      default: process.platform,\n      description: \"The target platform\",\n    })\n    .option(\"arch\", {\n      choices: getArchCliNames().concat(\"all\"),\n      default: process.arch === \"arm\" ? \"armv7l\" : process.arch,\n      description: \"The target arch\",\n    })\n}\n\n/** @internal */\nexport async function installAppDeps(args: any) {\n  try {\n    log.info({ version: PACKAGE_VERSION }, \"electron-builder\")\n  } catch (e: any) {\n    // error in dev mode without babel\n    if (!(e instanceof ReferenceError)) {\n      throw e\n    }\n  }\n\n  const projectDir = process.cwd()\n  const packageMetadata = new Lazy(() => orNullIfFileNotExist(readJson(path.join(projectDir, \"package.json\"))))\n  const config = await getConfig(projectDir, null, null, packageMetadata)\n  const [appDir, version] = await Promise.all<string>([computeDefaultAppDirectory(projectDir, config.directories?.app), getElectronVersion(projectDir, config)])\n\n  const packageManagerEnv = determinePackageManagerEnv({ projectDir, appDir, workspaceRoot: undefined })\n\n  // if two package.json — force full install (user wants to install/update app deps in addition to dev)\n  await installOrRebuild(\n    config,\n    {\n      appDir,\n      projectDir,\n      workspaceRoot: await (await packageManagerEnv.value).workspaceRoot,\n    },\n    {\n      frameworkInfo: { version, useCustomDist: true },\n      platform: args.platform,\n      arch: args.arch,\n      productionDeps: createLazyProductionDeps(appDir, null, false),\n    },\n    appDir !== projectDir,\n    {}\n  )\n}\n\nfunction main() {\n  return installAppDeps(configureInstallAppDepsCommand(yargs).argv)\n}\n\nif (require.main === module) {\n  log.warn(\"please use as subcommand: electron-builder install-app-deps\")\n  main().catch(printErrorAndExit)\n}\n"]}