INNER CODE UNIT · TypeScript

run

akirarika/milkio · packages/cookbook/src/index.ts:239

export async function run(params: Params, options: { path?: string; script?: () => Promise<any>; description?: "npm-script" | "built-in"; pkgMgr?: string }) {
  let packageManager: any;
  if (options.description === "npm-script") {
    if (!options.pkgMgr) {
      const config: any = Bun.TOML.parse(await Bun.file(join(cwd(), "cookbook.toml")).text());
      if (!config.general.packageManager) {
        consola.error('You need to specify which package manager to use to run this command, modify your cookbook.toml file, and [general] bar to packageManager = "npm" or any custom package manager you like.');
        exit(1);
      }
      packageManager = config.general.packageManager;
    } else {
      packageManager = options.pkgMgr;
    }

    try {
      if (packageManager === "bun") {
        await execScriptOrFail(`bun run ${[options.path!, ...params.raw].join(" ")}`, { cwd: cwd() });
      } else if (packageManager === "npm") {

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…