{"version":3,"file":"dev.js","names":[],"sources":["esm/cli/dev.js"],"sourcesContent":["import * as path from \"node:path\";\nimport colors from \"picocolors\";\nimport { setServerGlobals } from \"../server/setServerGlobals\";\nimport { virtualEntryIdNative } from \"../vite/plugins/virtualEntryConstants\";\nimport { checkNodeVersion } from \"./checkNodeVersion\";\nimport {\n  formatErrorSafely,\n  installPrepareStackTraceGuard\n} from \"./install-error-handlers\";\nimport { labelProcess } from \"./label-process\";\ninstallPrepareStackTraceGuard();\nconst DAEMON_PORT = 8081;\nasync function dev(args) {\n  labelProcess(\"dev\");\n  checkNodeVersion();\n  setServerGlobals();\n  const root = process.cwd();\n  let daemonServerId;\n  let useDaemon = false;\n  const forcePort = process.env.ONE_FORCE_PORT ? +process.env.ONE_FORCE_PORT : void 0;\n  const envPort = process.env.ONE_PORT ? +process.env.ONE_PORT : void 0;\n  let effectivePort = forcePort ?? (args.port ? +args.port : void 0) ?? envPort;\n  const {\n    isDaemonRunning,\n    registerWithDaemon,\n    unregisterFromDaemon,\n    writeServerFile,\n    removeServerFile\n  } = await import(\"../daemon/ipc\");\n  const { getBundleIdFromConfig, getAvailablePort } = await import(\"../daemon/utils\");\n  const daemonRunning = await isDaemonRunning();\n  const bundleId = getBundleIdFromConfig(root) || path.basename(root);\n  if (daemonRunning) {\n    if (!effectivePort || effectivePort === DAEMON_PORT) {\n      effectivePort = await getAvailablePort(8082, DAEMON_PORT);\n      console.log(colors.cyan(`[daemon] Detected running daemon on :${DAEMON_PORT}`));\n      console.log(colors.cyan(`[daemon] Using port :${effectivePort} for this server`));\n      useDaemon = true;\n    }\n  }\n  const { dev: dev2 } = await import(\"vxrn/dev\");\n  const { start, stop } = await dev2({\n    mode: args.mode,\n    clean: args.clean,\n    root,\n    debugBundle: args.debugBundle,\n    debug: args.debug,\n    extraConfig: args.extraConfig,\n    server: {\n      host: args.host,\n      port: effectivePort\n    },\n    entries: {\n      native: virtualEntryIdNative\n    }\n  });\n  const { closePromise } = await start();\n  if (useDaemon && bundleId) {\n    try {\n      daemonServerId = await registerWithDaemon({\n        port: effectivePort,\n        bundleId,\n        root\n      });\n      console.log(\n        colors.green(\n          `[daemon] Registered as ${bundleId} (${daemonServerId}) \\u2192 accessible via :${DAEMON_PORT}`\n        )\n      );\n      writeServerFile({ port: effectivePort, bundleId, root, pid: process.pid });\n    } catch (err) {\n      console.log(colors.yellow(`[daemon] Failed to register: ${err}`));\n    }\n  }\n  const cleanup = async () => {\n    if (daemonServerId) {\n      try {\n        await unregisterFromDaemon(daemonServerId);\n        removeServerFile(root);\n      } catch {\n      }\n    }\n    await stop();\n  };\n  process.on(\"beforeExit\", () => {\n    cleanup();\n  });\n  process.on(\"SIGINT\", async () => {\n    try {\n      await cleanup();\n    } finally {\n      process.exit(2);\n    }\n  });\n  process.on(\"SIGTERM\", async () => {\n    try {\n      await cleanup();\n    } finally {\n      process.exit(0);\n    }\n  });\n  process.on(\"uncaughtException\", (err) => {\n    try {\n      process.stderr.write(`[one dev] uncaught exception\n${formatErrorSafely(err)}\n`);\n    } catch {\n    }\n  });\n  process.on(\"unhandledRejection\", (err) => {\n    try {\n      process.stderr.write(`[one dev] unhandled rejection\n${formatErrorSafely(err)}\n`);\n    } catch {\n    }\n  });\n  await closePromise;\n}\nexport {\n  dev\n};\n//# sourceMappingURL=dev.js.map\n"],"mappings":";;;;;;;;;AAUA,8BAA8B;AAC9B,MAAM,cAAc;AACpB,eAAe,IAAI,MAAM;CACvB,aAAa,KAAK;CAClB,iBAAiB;CACjB,iBAAiB;CACjB,MAAM,OAAO,QAAQ,IAAI;CACzB,IAAI;CACJ,IAAI,YAAY;CAChB,MAAM,YAAY,QAAQ,IAAI,iBAAiB,CAAC,QAAQ,IAAI,iBAAiB,KAAK;CAClF,MAAM,UAAU,QAAQ,IAAI,WAAW,CAAC,QAAQ,IAAI,WAAW,KAAK;CACpE,IAAI,gBAAgB,cAAc,KAAK,OAAO,CAAC,KAAK,OAAO,KAAK,MAAM;CACtE,MAAM,EACJ,iBACA,oBACA,sBACA,iBACA,qBACE,MAAM,OAAO;CACjB,MAAM,EAAE,uBAAuB,qBAAqB,MAAM,OAAO;CACjE,MAAM,gBAAgB,MAAM,gBAAgB;CAC5C,MAAM,WAAW,sBAAsB,IAAI,KAAK,KAAK,SAAS,IAAI;CAClE,IAAI,eAAe;EACjB,IAAI,CAAC,iBAAiB,kBAAkB,aAAa;GACnD,gBAAgB,MAAM,iBAAiB,MAAM,WAAW;GACxD,QAAQ,IAAI,OAAO,KAAK,wCAAwC,aAAa,CAAC;GAC9E,QAAQ,IAAI,OAAO,KAAK,wBAAwB,cAAc,iBAAiB,CAAC;GAChF,YAAY;EACd;CACF;CACA,MAAM,EAAE,KAAK,SAAS,MAAM,OAAO;CACnC,MAAM,EAAE,OAAO,SAAS,MAAM,KAAK;EACjC,MAAM,KAAK;EACX,OAAO,KAAK;EACZ;EACA,aAAa,KAAK;EAClB,OAAO,KAAK;EACZ,aAAa,KAAK;EAClB,QAAQ;GACN,MAAM,KAAK;GACX,MAAM;EACR;EACA,SAAS,EACP,QAAQ,qBACV;CACF,CAAC;CACD,MAAM,EAAE,iBAAiB,MAAM,MAAM;CACrC,IAAI,aAAa,UAAU;EACzB,IAAI;GACF,iBAAiB,MAAM,mBAAmB;IACxC,MAAM;IACN;IACA;GACF,CAAC;GACD,QAAQ,IACN,OAAO,MACL,0BAA0B,SAAS,IAAI,eAAe,2BAA2B,aACnF,CACF;GACA,gBAAgB;IAAE,MAAM;IAAe;IAAU;IAAM,KAAK,QAAQ;GAAI,CAAC;EAC3E,SAAS,KAAK;GACZ,QAAQ,IAAI,OAAO,OAAO,gCAAgC,KAAK,CAAC;EAClE;CACF;CACA,MAAM,UAAU,YAAY;EAC1B,IAAI,gBAAgB;GAClB,IAAI;IACF,MAAM,qBAAqB,cAAc;IACzC,iBAAiB,IAAI;GACvB,QAAQ,CACR;EACF;EACA,MAAM,KAAK;CACb;CACA,QAAQ,GAAG,oBAAoB;EAC7B,QAAQ;CACV,CAAC;CACD,QAAQ,GAAG,UAAU,YAAY;EAC/B,IAAI;GACF,MAAM,QAAQ;EAChB,UAAU;GACR,QAAQ,KAAK,CAAC;EAChB;CACF,CAAC;CACD,QAAQ,GAAG,WAAW,YAAY;EAChC,IAAI;GACF,MAAM,QAAQ;EAChB,UAAU;GACR,QAAQ,KAAK,CAAC;EAChB;CACF,CAAC;CACD,QAAQ,GAAG,sBAAsB,QAAQ;EACvC,IAAI;GACF,QAAQ,OAAO,MAAM;EACzB,kBAAkB,GAAG,EAAE;CACxB;EACG,QAAQ,CACR;CACF,CAAC;CACD,QAAQ,GAAG,uBAAuB,QAAQ;EACxC,IAAI;GACF,QAAQ,OAAO,MAAM;EACzB,kBAAkB,GAAG,EAAE;CACxB;EACG,QAAQ,CACR;CACF,CAAC;CACD,MAAM;AACR"}