@mclean-capital/neura 2.3.0 → 2.4.0

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.
@@ -45670,7 +45670,7 @@ var require_view = __commonJS({
45670
45670
  var debug = require_src8()("express:view");
45671
45671
  var path2 = __require("path");
45672
45672
  var fs3 = __require("fs");
45673
- var dirname3 = path2.dirname;
45673
+ var dirname4 = path2.dirname;
45674
45674
  var basename3 = path2.basename;
45675
45675
  var extname = path2.extname;
45676
45676
  var join7 = path2.join;
@@ -45709,7 +45709,7 @@ var require_view = __commonJS({
45709
45709
  for (var i2 = 0; i2 < roots.length && !path3; i2++) {
45710
45710
  var root = roots[i2];
45711
45711
  var loc = resolve3(root, name);
45712
- var dir = dirname3(loc);
45712
+ var dir = dirname4(loc);
45713
45713
  var file = basename3(loc);
45714
45714
  path3 = this.resolve(dir, file);
45715
45715
  }
@@ -73818,7 +73818,8 @@ async function shutdown(services2, httpServer2, wss2) {
73818
73818
  // src/server/app.ts
73819
73819
  var import_express = __toESM(require_express2(), 1);
73820
73820
  import { existsSync as existsSync6 } from "fs";
73821
- import { join as join4 } from "path";
73821
+ import { dirname as dirname3, join as join4 } from "path";
73822
+ import { fileURLToPath as fileURLToPath2 } from "url";
73822
73823
 
73823
73824
  // src/server/auth.ts
73824
73825
  import { timingSafeEqual } from "crypto";
@@ -73863,9 +73864,22 @@ function createApp(services2, getPort) {
73863
73864
  }
73864
73865
  next();
73865
73866
  }
73866
- const uiDir = join4(services2.config.neuraHome, "ui");
73867
- const uiAvailable = existsSync6(join4(uiDir, "index.html"));
73868
- if (uiAvailable) {
73867
+ let uiDir = "";
73868
+ try {
73869
+ const bundleDir = dirname3(fileURLToPath2(import.meta.url));
73870
+ const bundledUiDir = join4(bundleDir, "..", "ui");
73871
+ if (existsSync6(join4(bundledUiDir, "index.html"))) {
73872
+ uiDir = bundledUiDir;
73873
+ }
73874
+ } catch {
73875
+ }
73876
+ if (!uiDir) {
73877
+ const homeUiDir = join4(services2.config.neuraHome, "ui");
73878
+ if (existsSync6(join4(homeUiDir, "index.html"))) {
73879
+ uiDir = homeUiDir;
73880
+ }
73881
+ }
73882
+ if (uiDir) {
73869
73883
  app2.use(import_express.default.static(uiDir));
73870
73884
  log20.info("web UI mounted", { path: uiDir });
73871
73885
  }
@@ -73884,7 +73898,7 @@ function createApp(services2, getPort) {
73884
73898
  void services2.backupService.restore().then((result) => res.json({ status: "ok", ...result })).catch((err) => res.status(500).json({ error: String(err) }));
73885
73899
  });
73886
73900
  app2.get("*", (_req, res) => {
73887
- if (uiAvailable) {
73901
+ if (uiDir) {
73888
73902
  res.sendFile(join4(uiDir, "index.html"));
73889
73903
  } else {
73890
73904
  res.json({