mioku-service-webui 4.11.2 → 4.11.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/system.ts +23 -8
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mioku-service-webui",
3
- "version": "4.11.2",
3
+ "version": "4.11.3",
4
4
  "description": "Mioku WebUI 服务",
5
5
  "main": "index.ts",
6
6
  "type": "module",
package/system.ts CHANGED
@@ -333,6 +333,22 @@ function writeRootPackageJson(data: any): void {
333
333
  fs.writeFileSync(ROOT_PACKAGE_PATH, JSON.stringify(data, null, 2), "utf-8");
334
334
  }
335
335
 
336
+ function resolveWebUIHost(configured: unknown): string {
337
+ const fromEnv = process.env.MIOKU_WEBUI_HOST?.trim();
338
+ if (fromEnv) return fromEnv;
339
+ return typeof configured === "string" && configured.trim()
340
+ ? configured.trim()
341
+ : defaultWebUISettings.host;
342
+ }
343
+
344
+ function resolveWebUIPort(configured: unknown): number {
345
+ const fromEnv = Number(process.env.MIOKU_WEBUI_PORT);
346
+ if (Number.isFinite(fromEnv) && fromEnv > 0) return fromEnv;
347
+ return typeof configured === "number" && Number.isFinite(configured)
348
+ ? configured
349
+ : defaultWebUISettings.port;
350
+ }
351
+
336
352
  export function getWebUISettings(): WebUISettings {
337
353
  ensureDir(path.dirname(SETTINGS_PATH));
338
354
  const settings = readJsonFile<Record<string, unknown>>(
@@ -340,14 +356,8 @@ export function getWebUISettings(): WebUISettings {
340
356
  defaultWebUISettings as unknown as Record<string, unknown>,
341
357
  );
342
358
  const merged: WebUISettings = {
343
- port:
344
- typeof settings.port === "number" && Number.isFinite(settings.port)
345
- ? settings.port
346
- : defaultWebUISettings.port,
347
- host:
348
- typeof settings.host === "string" && settings.host.trim()
349
- ? settings.host
350
- : defaultWebUISettings.host,
359
+ port: resolveWebUIPort(settings.port),
360
+ host: resolveWebUIHost(settings.host),
351
361
  packageManager: "bun",
352
362
  };
353
363
  writeJsonFile(SETTINGS_PATH, merged);
@@ -369,6 +379,11 @@ export function updateWebUISettings(
369
379
  : current.host,
370
380
  packageManager: "bun",
371
381
  };
382
+ if (process.env.MIOKU_WEBUI_HOST?.trim() && input.host !== undefined) {
383
+ logger.warn(
384
+ `[webui] 监听地址由环境变量 MIOKU_WEBUI_HOST=${process.env.MIOKU_WEBUI_HOST} 决定,配置里的 ${next.host} 不会生效`,
385
+ );
386
+ }
372
387
  writeJsonFile(SETTINGS_PATH, next);
373
388
  return next;
374
389
  }