omnigateway 0.12.0 → 0.12.1
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.
- package/bin/omni.js +1 -1
- package/gateway.js +17 -8
- package/package.json +1 -1
package/bin/omni.js
CHANGED
|
@@ -37474,7 +37474,7 @@ function createServiceDeps(input2) {
|
|
|
37474
37474
|
}
|
|
37475
37475
|
|
|
37476
37476
|
// apps/cli/src/version.ts
|
|
37477
|
-
var VERSION = "0.12.
|
|
37477
|
+
var VERSION = "0.12.1";
|
|
37478
37478
|
|
|
37479
37479
|
// apps/cli/src/commands/service.ts
|
|
37480
37480
|
function gatewayArgv(root) {
|
package/gateway.js
CHANGED
|
@@ -56081,8 +56081,16 @@ function readCookie(request2, name) {
|
|
|
56081
56081
|
}
|
|
56082
56082
|
return null;
|
|
56083
56083
|
}
|
|
56084
|
-
function
|
|
56085
|
-
const
|
|
56084
|
+
function forwardedProto(request2) {
|
|
56085
|
+
const header = request2.headers.get("x-forwarded-proto");
|
|
56086
|
+
if (header === null)
|
|
56087
|
+
return null;
|
|
56088
|
+
return header.split(",")[0]?.trim().toLowerCase() ?? null;
|
|
56089
|
+
}
|
|
56090
|
+
function sessionCookie(request2, baseUrl, token, maxAge) {
|
|
56091
|
+
const configured2 = URL.canParse(baseUrl) ? new URL(baseUrl).protocol === "https:" : false;
|
|
56092
|
+
const https = configured2 || forwardedProto(request2) === "https" || new URL(request2.url).protocol === "https:";
|
|
56093
|
+
const secure = https ? ["Secure"] : [];
|
|
56086
56094
|
return [
|
|
56087
56095
|
`${ADMIN_COOKIE}=${token}`,
|
|
56088
56096
|
"Path=/",
|
|
@@ -56409,7 +56417,7 @@ function adminRoutes(deps) {
|
|
|
56409
56417
|
if (token === null)
|
|
56410
56418
|
throw new GatewayError("INTERNAL", "could not create admin session");
|
|
56411
56419
|
logger2.info("admin setup completed");
|
|
56412
|
-
set2.headers["set-cookie"] = sessionCookie(request2, token, Math.floor(deps.sessionTtlMs / 1000));
|
|
56420
|
+
set2.headers["set-cookie"] = sessionCookie(request2, deps.baseUrl, token, Math.floor(deps.sessionTtlMs / 1000));
|
|
56413
56421
|
return { ok: true };
|
|
56414
56422
|
}).post("/api/login", async ({ request: request2, set: set2 }) => {
|
|
56415
56423
|
const body2 = await readJsonRecord(request2);
|
|
@@ -56421,13 +56429,13 @@ function adminRoutes(deps) {
|
|
|
56421
56429
|
throw new GatewayError("AUTH", "invalid password");
|
|
56422
56430
|
}
|
|
56423
56431
|
logger2.info("admin login succeeded");
|
|
56424
|
-
set2.headers["set-cookie"] = sessionCookie(request2, token, Math.floor(deps.sessionTtlMs / 1000));
|
|
56432
|
+
set2.headers["set-cookie"] = sessionCookie(request2, deps.baseUrl, token, Math.floor(deps.sessionTtlMs / 1000));
|
|
56425
56433
|
return { ok: true };
|
|
56426
56434
|
}).post("/api/logout", async ({ request: request2, set: set2 }) => {
|
|
56427
56435
|
const token = readCookie(request2, ADMIN_COOKIE);
|
|
56428
56436
|
if (token !== null)
|
|
56429
56437
|
await deps.admin.logout(token);
|
|
56430
|
-
set2.headers["set-cookie"] = sessionCookie(request2, "", 0);
|
|
56438
|
+
set2.headers["set-cookie"] = sessionCookie(request2, deps.baseUrl, "", 0);
|
|
56431
56439
|
return { ok: true };
|
|
56432
56440
|
}).get("/api/credentials", async ({ request: request2 }) => {
|
|
56433
56441
|
await requireReader(request2, deps.admin);
|
|
@@ -56692,13 +56700,13 @@ function clientRoutes(deps) {
|
|
|
56692
56700
|
throw new GatewayError("AUTH", "invalid api key");
|
|
56693
56701
|
}
|
|
56694
56702
|
logger2.info("client login succeeded");
|
|
56695
|
-
set2.headers["set-cookie"] = sessionCookie(request2, token, Math.floor(deps.sessionTtlMs / 1000));
|
|
56703
|
+
set2.headers["set-cookie"] = sessionCookie(request2, deps.baseUrl, token, Math.floor(deps.sessionTtlMs / 1000));
|
|
56696
56704
|
return { ok: true };
|
|
56697
56705
|
}).post("/api/client/logout", async ({ request: request2, set: set2 }) => {
|
|
56698
56706
|
const token = readCookie(request2, ADMIN_COOKIE);
|
|
56699
56707
|
if (token !== null)
|
|
56700
56708
|
await deps.admin.logout(token);
|
|
56701
|
-
set2.headers["set-cookie"] = sessionCookie(request2, "", 0);
|
|
56709
|
+
set2.headers["set-cookie"] = sessionCookie(request2, deps.baseUrl, "", 0);
|
|
56702
56710
|
return { ok: true };
|
|
56703
56711
|
}).get("/api/client/summary", async ({ request: request2 }) => {
|
|
56704
56712
|
const apiKeyId = await requireClient(request2, deps.admin);
|
|
@@ -62294,7 +62302,7 @@ function createRing(limits = DEFAULT_RING_LIMITS) {
|
|
|
62294
62302
|
}
|
|
62295
62303
|
|
|
62296
62304
|
// apps/gateway/src/version.ts
|
|
62297
|
-
var VERSION = "0.12.
|
|
62305
|
+
var VERSION = "0.12.1";
|
|
62298
62306
|
|
|
62299
62307
|
// apps/gateway/src/app.ts
|
|
62300
62308
|
var ADMIN_SESSION_TTL_MS = 12 * 60 * 60 * 1000;
|
|
@@ -62458,6 +62466,7 @@ function createApp(deps) {
|
|
|
62458
62466
|
store: deps.store,
|
|
62459
62467
|
admin,
|
|
62460
62468
|
sessionTtlMs: ADMIN_SESSION_TTL_MS,
|
|
62469
|
+
baseUrl: deps.baseUrl,
|
|
62461
62470
|
...deps.dayOffsetMinutes === undefined ? {} : { dayOffsetMinutes: deps.dayOffsetMinutes },
|
|
62462
62471
|
now,
|
|
62463
62472
|
logger: logger2
|
package/package.json
CHANGED