@jakuta-inc/worker-proxy 6.0.0 → 6.1.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.
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type { AllowedHosts, Backend, PathRewrite, Route, HealthProbeResult, ProxyHealthCheck, ProxyHandlerConfig, ProxyOutcome, ProxyHandler, ProxyError } from "./same-origin-proxy.js";
2
- export { createProxyHandler, createAdminAuthRoute } from "./same-origin-proxy.js";
1
+ export type { AllowedHosts, Backend, PathRewrite, ProxyRoute, HealthProbeResult, ProxyHealthCheck, ProxyHandlerConfig, ProxyOutcome, ProxyHandler, ProxyError } from "./same-origin-proxy.js";
2
+ export { createProxyHandler, createAdminAuthRoute, createAdminApiAuthRoute } from "./same-origin-proxy.js";
3
3
  export { VENTURE_API_PREFIX, createVentureApiRoute } from "./venture_api_route.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzL,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC9L,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC"}
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
- export { createProxyHandler, createAdminAuthRoute } from "./same-origin-proxy.js";
1
+ export { createProxyHandler, createAdminAuthRoute, createAdminApiAuthRoute } from "./same-origin-proxy.js";
2
2
  export { VENTURE_API_PREFIX, createVentureApiRoute } from "./venture_api_route.js";
3
3
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -28,11 +28,11 @@ interface BackendBase {
28
28
  * - `"venture"` — a venture backend must never see the raw `admin_session`
29
29
  * cookie. The proxy deletes the `Cookie` header and, if an `admin_session`
30
30
  * was present, injects `X-Admin-Session: <session_id>` carrying the raw
31
- * session id for `admin-client`'s `extract_session_from_handoff_header`.
31
+ * session id for `admin-shared`'s `extract_session_from_handoff_header`.
32
32
  * Any inbound `X-Admin-Session` header is stripped first (forgery defense).
33
33
  *
34
34
  * Cookie-transform semantics are an attribute of the Backend, not of the
35
- * Route. There is no per-route override. Any caller that could point a route
35
+ * ProxyRoute. There is no per-route override. Any caller that could point a route
36
36
  * at the admin backend while running the venture cookie-stripping transform
37
37
  * would break web session restore on admin-api; attaching the transform to
38
38
  * backend identity makes that state unrepresentable.
@@ -46,7 +46,7 @@ export type Backend = (BackendBase & {
46
46
  * A path-rewrite policy applied to the incoming pathname before forwarding.
47
47
  * Either an identity passthrough or an explicit transform function. Encoded
48
48
  * as a discriminated union so `createProxyHandler` callers cannot omit the
49
- * decision — every Route states its rewrite policy explicitly.
49
+ * decision — every ProxyRoute states its rewrite policy explicitly.
50
50
  */
51
51
  export type PathRewrite = {
52
52
  readonly kind: "identity";
@@ -63,19 +63,19 @@ export type PathRewrite = {
63
63
  * @field target - Backend to forward matched requests to
64
64
  * @field rewrite - Path rewrite policy applied before forwarding
65
65
  */
66
- export interface Route {
66
+ export interface ProxyRoute {
67
67
  readonly pathPrefix: string;
68
68
  readonly target: Backend;
69
69
  readonly rewrite: PathRewrite;
70
70
  }
71
71
  /**
72
- * Result of probing a backend's `/health` endpoint.
72
+ * Result of probing a backend's Jakuta `/status` endpoint.
73
73
  *
74
- * @field status - `"ok"` if the backend responded with a 2xx, `"error"` on non-2xx or network failure
74
+ * @field healthStatus - `"ok"` if the backend responded with a 2xx, `"error"` on non-2xx or network failure
75
75
  * @field probeUrl - The full URL that was probed, useful for error reporting
76
76
  */
77
77
  export interface HealthProbeResult {
78
- readonly status: "ok" | "error";
78
+ readonly healthStatus: "ok" | "error";
79
79
  readonly probeUrl: string;
80
80
  }
81
81
  /**
@@ -96,9 +96,9 @@ export type ProxyHealthCheck = {
96
96
  readonly kind: "disabled";
97
97
  } | {
98
98
  readonly kind: "enabled";
99
- readonly path: string;
99
+ readonly healthPath: string;
100
100
  readonly probeTargets: readonly Backend[];
101
- readonly buildHealthResponse: (results: Record<string, HealthProbeResult>) => Response;
101
+ readonly buildHealthResponse: (healthResults: Record<string, HealthProbeResult>) => Response;
102
102
  };
103
103
  /**
104
104
  * Declarative configuration for `createProxyHandler`.
@@ -109,7 +109,7 @@ export type ProxyHealthCheck = {
109
109
  */
110
110
  export interface ProxyHandlerConfig {
111
111
  readonly allowedHosts: AllowedHosts;
112
- readonly routes: readonly Route[];
112
+ readonly routes: readonly ProxyRoute[];
113
113
  readonly healthCheck: ProxyHealthCheck;
114
114
  }
115
115
  /**
@@ -145,7 +145,7 @@ export interface ProxyHandler {
145
145
  handleRequest(workerRequest: Request): Promise<ProxyOutcome>;
146
146
  }
147
147
  /**
148
- * Build a `Route` that proxies `/auth/*` to the admin backend's `/api/auth/*`
148
+ * Build a `ProxyRoute` that proxies `/auth/*` to the admin backend's `/api/auth/*`
149
149
  * surface with cookies preserved. Every frontend that renders admin-shell's
150
150
  * login UI needs this route, because admin-shell's `AdminRoute.*` constants
151
151
  * (`/auth/login`, `/auth/logout`, `/auth/session`) are the single source of
@@ -155,16 +155,31 @@ export interface ProxyHandler {
155
155
  * Spread the result into your `routes` array; do not hand-maintain the
156
156
  * rewrite.
157
157
  *
158
- * @why Bridges the browser-facing /auth/* path family that admin-shell expects to the admin API's /api/auth/* surface, so every Worker proxy that mounts admin login uses the identical rewrite.
158
+ * @why Prevents each Worker from hand-writing the admin login rewrite because admin-shell's browser paths and admin-api's server paths intentionally differ.
159
159
  * @param adminBaseUrl - Origin of the jakuta-admin API (scheme + host, no path)
160
- * @returns A Route that matches `/auth` / `/auth/*` and forwards to `adminBaseUrl/api/auth/*`
160
+ * @returns A ProxyRoute that matches `/auth` / `/auth/*` and forwards to `adminBaseUrl/api/auth/*`
161
161
  */
162
- export declare function createAdminAuthRoute(adminBaseUrl: string): Route;
162
+ export declare function createAdminAuthRoute(adminBaseUrl: string): ProxyRoute;
163
+ /**
164
+ * Build a `ProxyRoute` that proxies generated admin-shell `/api/auth/*` requests
165
+ * to the Central Admin backend with cookies preserved.
166
+ *
167
+ * Mount this before the venture `/api/*` route. The generated admin-shell
168
+ * auth client now uses the same `/api/auth/*` route templates as the Central
169
+ * Admin backend, so the worker should forward those paths without rewriting
170
+ * them or applying venture cookie-to-header handoff.
171
+ *
172
+ * @why Preserves generated admin auth paths because venture workers must route
173
+ * Central Admin session requests before the general venture API proxy.
174
+ * @param adminBaseUrl - Origin of the jakuta-admin API (scheme + host, no path)
175
+ * @returns A ProxyRoute that matches `/api/auth` / `/api/auth/*` and forwards to Central Admin unchanged.
176
+ */
177
+ export declare function createAdminApiAuthRoute(adminBaseUrl: string): ProxyRoute;
163
178
  /**
164
179
  * Build a `ProxyHandler` from a declarative `ProxyHandlerConfig`. This is the
165
180
  * single handler constructor — there is no separate venture or central-admin
166
181
  * handler. Consumers express their routing topology as a list of
167
- * `Route`s pointing at `Backend`s, and the handler dispatches by first-match.
182
+ * `ProxyRoute`s pointing at `Backend`s, and the handler dispatches by first-match.
168
183
  *
169
184
  * Every config must declare its `allowedHosts` — the non-empty list of
170
185
  * hostnames this worker accepts. A request for any other hostname is
@@ -177,7 +192,7 @@ export declare function createAdminAuthRoute(adminBaseUrl: string): Route;
177
192
  * handoff). There is no per-route override. See the `Backend` doc comment for
178
193
  * why this is unrepresentable state, not a missing feature.
179
194
  *
180
- * @why Single constructor for every Worker proxy in the admin family — the only place that reads {@link AllowedHosts}, normalizes backend URLs, and wires the cookie-transform / route-dispatch invariants together so individual workers cannot accidentally diverge.
195
+ * @why Centralizes host allowlisting, backend URL normalization, and cookie-transform routing because individual worker entries must not diverge on those security rules.
181
196
  * @param config - Declarative host allowlist, route list, and health-check hook
182
197
  * @returns A ProxyHandler whose `handleRequest` dispatches the inbound request
183
198
  */
@@ -1 +1 @@
1
- {"version":3,"file":"same-origin-proxy.d.ts","sourceRoot":"","sources":["../src/same-origin-proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;AAE1D,UAAU,WAAW;IACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,OAAO,GACf,CAAC,WAAW,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,GAC1C,CAAC,WAAW,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACnB;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,MAAM,CAAA;CAAE,CAAC;AAErF;;;;;;;;GAQG;AACH,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;CAC/B;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAC7B;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,YAAY,EAAE,SAAS,OAAO,EAAE,CAAC;IAC1C,QAAQ,CAAC,mBAAmB,EAAE,CAC5B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,KACvC,QAAQ,CAAC;CACf,CAAC;AAEN;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAC;IAClC,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;CACxC;AAED;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAA;CAAE,GAC9D;IAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAA;CAAE,CAAC;AAEhC;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CACvC;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,aAAa,CAAC,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC9D;AA4OD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,KAAK,CAShE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,GAAG,YAAY,CA+D3E"}
1
+ {"version":3,"file":"same-origin-proxy.d.ts","sourceRoot":"","sources":["../src/same-origin-proxy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;AAE1D,UAAU,WAAW;IACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,OAAO,GACf,CAAC,WAAW,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,GAC1C,CAAC,WAAW,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACnB;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAC7B;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,MAAM,CAAA;CAAE,CAAC;AAErF;;;;;;;;GAQG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;CAC/B;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,YAAY,EAAE,IAAI,GAAG,OAAO,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAC7B;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,SAAS,OAAO,EAAE,CAAC;IAC1C,QAAQ,CAAC,mBAAmB,EAAE,CAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,KAC7C,QAAQ,CAAC;CACf,CAAC;AAEN;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC;CACxC;AAED;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GACpB;IAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAA;CAAE,GAC9D;IAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAA;CAAE,CAAC;AAEhC;;;;;;GAMG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,qBAAqB,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CACvC;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,aAAa,CAAC,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC9D;AAiPD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,UAAU,CASrE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,UAAU,CAMxE;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,GAAG,YAAY,CA+D3E"}
@@ -1,6 +1,9 @@
1
1
  const HEALTH_TIMEOUT_MS = 5000;
2
2
  function stripTrailingSlash(originUrl) {
3
- return originUrl.endsWith("/") ? originUrl.slice(0, -1) : originUrl;
3
+ if (originUrl.endsWith("/")) {
4
+ return originUrl.slice(0, -1);
5
+ }
6
+ return originUrl;
4
7
  }
5
8
  function jsonErrorResponse(errorInput) {
6
9
  return new Response(JSON.stringify(errorInput.errorBody), {
@@ -9,15 +12,18 @@ function jsonErrorResponse(errorInput) {
9
12
  });
10
13
  }
11
14
  async function probeHealth(probedBaseUrl) {
12
- const probeUrl = new URL("/health", probedBaseUrl).toString();
15
+ const probeUrl = new URL("/status", probedBaseUrl).toString();
13
16
  try {
14
17
  const healthResponse = await fetch(probeUrl, {
15
18
  signal: AbortSignal.timeout(HEALTH_TIMEOUT_MS),
16
19
  });
17
- return { status: healthResponse.ok ? "ok" : "error", probeUrl };
20
+ if (healthResponse.ok) {
21
+ return { healthStatus: "ok", probeUrl };
22
+ }
23
+ return { healthStatus: "error", probeUrl };
18
24
  }
19
25
  catch {
20
- return { status: "error", probeUrl };
26
+ return { healthStatus: "error", probeUrl };
21
27
  }
22
28
  }
23
29
  const ADMIN_SESSION_COOKIE_NAME = "admin_session";
@@ -33,11 +39,11 @@ function findAdminSessionCookieValue(cookieHeader) {
33
39
  return { kind: "absent" };
34
40
  }
35
41
  function readCookieHeader(headers) {
36
- const value = headers.get("cookie");
37
- if (value === null) {
42
+ const cookieHeaderValue = headers.get("cookie");
43
+ if (cookieHeaderValue === null) {
38
44
  return { kind: "absent" };
39
45
  }
40
- return { kind: "present", value };
46
+ return { kind: "present", cookieHeaderValue };
41
47
  }
42
48
  function buildVentureForwardedHeaders(originalHeaders) {
43
49
  const forwarded = new Headers(originalHeaders);
@@ -45,7 +51,7 @@ function buildVentureForwardedHeaders(originalHeaders) {
45
51
  const cookieLookup = readCookieHeader(forwarded);
46
52
  forwarded.delete("cookie");
47
53
  if (cookieLookup.kind === "present") {
48
- const sessionLookup = findAdminSessionCookieValue(cookieLookup.value);
54
+ const sessionLookup = findAdminSessionCookieValue(cookieLookup.cookieHeaderValue);
49
55
  if (sessionLookup.kind === "found") {
50
56
  forwarded.set(ADMIN_SESSION_HANDOFF_HEADER, sessionLookup.sessionValue);
51
57
  }
@@ -57,17 +63,25 @@ function stripInboundHandoffHeader(originalHeaders) {
57
63
  stripped.delete(ADMIN_SESSION_HANDOFF_HEADER);
58
64
  return stripped;
59
65
  }
60
- async function forwardToBackend(forwardInput) {
61
- const target = forwardInput.target;
62
- const targetUrl = new URL(forwardInput.targetPath + forwardInput.originalUrl.search, target.baseUrl);
63
- const forwardedHeaders = target.kind === "venture"
64
- ? buildVentureForwardedHeaders(forwardInput.originalRequest.headers)
65
- : stripInboundHandoffHeader(forwardInput.originalRequest.headers);
66
+ async function forwardToBackend({ originalRequest, originalUrl, target, targetPath, }) {
67
+ const targetUrl = new URL(targetPath + originalUrl.search, target.baseUrl);
68
+ let forwardedHeaders;
69
+ switch (target.kind) {
70
+ case "venture":
71
+ forwardedHeaders = buildVentureForwardedHeaders(originalRequest.headers);
72
+ break;
73
+ case "admin":
74
+ forwardedHeaders = stripInboundHandoffHeader(originalRequest.headers);
75
+ break;
76
+ default:
77
+ forwardedHeaders = target;
78
+ break;
79
+ }
66
80
  try {
67
81
  return await fetch(new Request(targetUrl, {
68
- method: forwardInput.originalRequest.method,
82
+ method: originalRequest.method,
69
83
  headers: forwardedHeaders,
70
- body: forwardInput.originalRequest.body,
84
+ body: originalRequest.body,
71
85
  redirect: "manual",
72
86
  }));
73
87
  }
@@ -88,26 +102,23 @@ async function forwardToBackend(forwardInput) {
88
102
  });
89
103
  }
90
104
  }
91
- function matchPathPrefix(params) {
92
- if (params.pathname === params.prefix) {
105
+ function matchPathPrefix(pathPrefixMatchInput) {
106
+ if (pathPrefixMatchInput.pathname === pathPrefixMatchInput.prefix) {
93
107
  return { kind: "match" };
94
108
  }
95
- if (params.pathname.startsWith(params.prefix + "/")) {
109
+ if (pathPrefixMatchInput.pathname.startsWith(pathPrefixMatchInput.prefix + "/")) {
96
110
  return { kind: "match" };
97
111
  }
98
112
  return { kind: "no_match" };
99
113
  }
100
- function assertNeverPathRewrite(rewrite) {
101
- throw new Error(`unreachable PathRewrite variant: ${JSON.stringify(rewrite)}`);
102
- }
103
- function applyPathRewrite(params) {
104
- switch (params.rewrite.kind) {
114
+ function applyPathRewrite(pathRewriteInput) {
115
+ switch (pathRewriteInput.rewrite.kind) {
105
116
  case "identity":
106
- return params.incomingPath;
117
+ return pathRewriteInput.incomingPath;
107
118
  case "transform":
108
- return params.rewrite.apply(params.incomingPath);
119
+ return pathRewriteInput.rewrite.apply(pathRewriteInput.incomingPath);
109
120
  default:
110
- return assertNeverPathRewrite(params.rewrite);
121
+ return pathRewriteInput.rewrite;
111
122
  }
112
123
  }
113
124
  function matchAllowedHost(matchParams) {
@@ -134,16 +145,13 @@ function buildHostRejectionResponse(rejectionInput) {
134
145
  function normalizeBackend(backend) {
135
146
  return { kind: backend.kind, baseUrl: stripTrailingSlash(backend.baseUrl) };
136
147
  }
137
- function normalizeRoute(route) {
148
+ function normalizeRoute(proxyRoute) {
138
149
  return {
139
- pathPrefix: route.pathPrefix,
140
- target: normalizeBackend(route.target),
141
- rewrite: route.rewrite,
150
+ pathPrefix: proxyRoute.pathPrefix,
151
+ target: normalizeBackend(proxyRoute.target),
152
+ rewrite: proxyRoute.rewrite,
142
153
  };
143
154
  }
144
- function assertNeverHealthCheck(healthCheck) {
145
- throw new Error(`unreachable ProxyHealthCheck variant: ${JSON.stringify(healthCheck)}`);
146
- }
147
155
  function normalizeHealthCheck(healthCheck) {
148
156
  switch (healthCheck.kind) {
149
157
  case "disabled":
@@ -151,16 +159,16 @@ function normalizeHealthCheck(healthCheck) {
151
159
  case "enabled":
152
160
  return {
153
161
  kind: "enabled",
154
- path: healthCheck.path,
162
+ healthPath: healthCheck.healthPath,
155
163
  probeTargets: healthCheck.probeTargets.map(normalizeBackend),
156
164
  buildHealthResponse: healthCheck.buildHealthResponse,
157
165
  };
158
166
  default:
159
- return assertNeverHealthCheck(healthCheck);
167
+ return healthCheck;
160
168
  }
161
169
  }
162
170
  /**
163
- * Build a `Route` that proxies `/auth/*` to the admin backend's `/api/auth/*`
171
+ * Build a `ProxyRoute` that proxies `/auth/*` to the admin backend's `/api/auth/*`
164
172
  * surface with cookies preserved. Every frontend that renders admin-shell's
165
173
  * login UI needs this route, because admin-shell's `AdminRoute.*` constants
166
174
  * (`/auth/login`, `/auth/logout`, `/auth/session`) are the single source of
@@ -170,9 +178,9 @@ function normalizeHealthCheck(healthCheck) {
170
178
  * Spread the result into your `routes` array; do not hand-maintain the
171
179
  * rewrite.
172
180
  *
173
- * @why Bridges the browser-facing /auth/* path family that admin-shell expects to the admin API's /api/auth/* surface, so every Worker proxy that mounts admin login uses the identical rewrite.
181
+ * @why Prevents each Worker from hand-writing the admin login rewrite because admin-shell's browser paths and admin-api's server paths intentionally differ.
174
182
  * @param adminBaseUrl - Origin of the jakuta-admin API (scheme + host, no path)
175
- * @returns A Route that matches `/auth` / `/auth/*` and forwards to `adminBaseUrl/api/auth/*`
183
+ * @returns A ProxyRoute that matches `/auth` / `/auth/*` and forwards to `adminBaseUrl/api/auth/*`
176
184
  */
177
185
  export function createAdminAuthRoute(adminBaseUrl) {
178
186
  return {
@@ -184,11 +192,32 @@ export function createAdminAuthRoute(adminBaseUrl) {
184
192
  },
185
193
  };
186
194
  }
195
+ /**
196
+ * Build a `ProxyRoute` that proxies generated admin-shell `/api/auth/*` requests
197
+ * to the Central Admin backend with cookies preserved.
198
+ *
199
+ * Mount this before the venture `/api/*` route. The generated admin-shell
200
+ * auth client now uses the same `/api/auth/*` route templates as the Central
201
+ * Admin backend, so the worker should forward those paths without rewriting
202
+ * them or applying venture cookie-to-header handoff.
203
+ *
204
+ * @why Preserves generated admin auth paths because venture workers must route
205
+ * Central Admin session requests before the general venture API proxy.
206
+ * @param adminBaseUrl - Origin of the jakuta-admin API (scheme + host, no path)
207
+ * @returns A ProxyRoute that matches `/api/auth` / `/api/auth/*` and forwards to Central Admin unchanged.
208
+ */
209
+ export function createAdminApiAuthRoute(adminBaseUrl) {
210
+ return {
211
+ pathPrefix: "/api/auth",
212
+ target: { kind: "admin", baseUrl: stripTrailingSlash(adminBaseUrl) },
213
+ rewrite: { kind: "identity" },
214
+ };
215
+ }
187
216
  /**
188
217
  * Build a `ProxyHandler` from a declarative `ProxyHandlerConfig`. This is the
189
218
  * single handler constructor — there is no separate venture or central-admin
190
219
  * handler. Consumers express their routing topology as a list of
191
- * `Route`s pointing at `Backend`s, and the handler dispatches by first-match.
220
+ * `ProxyRoute`s pointing at `Backend`s, and the handler dispatches by first-match.
192
221
  *
193
222
  * Every config must declare its `allowedHosts` — the non-empty list of
194
223
  * hostnames this worker accepts. A request for any other hostname is
@@ -201,7 +230,7 @@ export function createAdminAuthRoute(adminBaseUrl) {
201
230
  * handoff). There is no per-route override. See the `Backend` doc comment for
202
231
  * why this is unrepresentable state, not a missing feature.
203
232
  *
204
- * @why Single constructor for every Worker proxy in the admin family — the only place that reads {@link AllowedHosts}, normalizes backend URLs, and wires the cookie-transform / route-dispatch invariants together so individual workers cannot accidentally diverge.
233
+ * @why Centralizes host allowlisting, backend URL normalization, and cookie-transform routing because individual worker entries must not diverge on those security rules.
205
234
  * @param config - Declarative host allowlist, route list, and health-check hook
206
235
  * @returns A ProxyHandler whose `handleRequest` dispatches the inbound request
207
236
  */
@@ -227,7 +256,7 @@ export function createProxyHandler(config) {
227
256
  }
228
257
  const pathname = requestUrl.pathname;
229
258
  if (normalizedHealthCheck.kind === "enabled" &&
230
- pathname === normalizedHealthCheck.path) {
259
+ pathname === normalizedHealthCheck.healthPath) {
231
260
  const probeResults = await Promise.all(normalizedHealthCheck.probeTargets.map(async (backend) => {
232
261
  const probeResult = await probeHealth(backend.baseUrl);
233
262
  return [backend.kind, probeResult];
@@ -239,17 +268,17 @@ export function createProxyHandler(config) {
239
268
  const proxiedResponse = normalizedHealthCheck.buildHealthResponse(resultsByKind);
240
269
  return { proxied: true, proxiedResponse };
241
270
  }
242
- for (const route of normalizedRoutes) {
243
- const match = matchPathPrefix({ pathname, prefix: route.pathPrefix });
271
+ for (const proxyRoute of normalizedRoutes) {
272
+ const match = matchPathPrefix({ pathname, prefix: proxyRoute.pathPrefix });
244
273
  if (match.kind === "match") {
245
274
  const rewrittenPath = applyPathRewrite({
246
- rewrite: route.rewrite,
275
+ rewrite: proxyRoute.rewrite,
247
276
  incomingPath: pathname,
248
277
  });
249
278
  const proxiedResponse = await forwardToBackend({
250
279
  originalRequest: workerRequest,
251
280
  originalUrl: requestUrl,
252
- target: route.target,
281
+ target: proxyRoute.target,
253
282
  targetPath: rewrittenPath,
254
283
  });
255
284
  return { proxied: true, proxiedResponse };
@@ -1 +1 @@
1
- {"version":3,"file":"same-origin-proxy.js","sourceRoot":"","sources":["../src/same-origin-proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"same-origin-proxy.js","sourceRoot":"","sources":["../src/same-origin-proxy.ts"],"names":[],"mappings":"AAuJA,MAAM,iBAAiB,GAAG,IAAI,CAAC;AAE/B,SAAS,kBAAkB,CAAC,SAAiB;IAC3C,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAOD,SAAS,iBAAiB,CAAC,UAAkC;IAC3D,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QACxD,MAAM,EAAE,UAAU,CAAC,UAAU;QAC7B,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;KAChD,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,aAAqB;IAC9C,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC9D,IAAI,CAAC;QACH,MAAM,cAAc,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;YAC3C,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC;SAC/C,CAAC,CAAC;QACH,IAAI,cAAc,CAAC,EAAE,EAAE,CAAC;YACtB,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAC1C,CAAC;QACD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAC7C,CAAC;AACH,CAAC;AAED,MAAM,yBAAyB,GAAG,eAAe,CAAC;AAClD,MAAM,4BAA4B,GAAG,iBAAiB,CAAC;AAMvD,SAAS,2BAA2B,CAAC,YAAoB;IACvD,MAAM,MAAM,GAAG,yBAAyB,GAAG,GAAG,CAAC;IAC/C,KAAK,MAAM,aAAa,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACpD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC;QACrC,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACvE,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5B,CAAC;AAMD,SAAS,gBAAgB,CAAC,OAAgB;IACxC,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,iBAAiB,KAAK,IAAI,EAAE,CAAC;QAC/B,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC5B,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,4BAA4B,CAAC,eAAwB;IAC5D,MAAM,SAAS,GAAG,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC;IAC/C,SAAS,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACjD,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC3B,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QACpC,MAAM,aAAa,GAAG,2BAA2B,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;QAClF,IAAI,aAAa,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACnC,SAAS,CAAC,GAAG,CAAC,4BAA4B,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,yBAAyB,CAAC,eAAwB;IACzD,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC;IAC9C,QAAQ,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAC9C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,EAC9B,eAAe,EACf,WAAW,EACX,MAAM,EACN,UAAU,GAMX;IACC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,UAAU,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAE3E,IAAI,gBAAyB,CAAC;IAC9B,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,SAAS;YACZ,gBAAgB,GAAG,4BAA4B,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YACzE,MAAM;QACR,KAAK,OAAO;YACV,gBAAgB,GAAG,yBAAyB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YACtE,MAAM;QACR;YACE,gBAAgB,GAAG,MAAM,CAAC;YAC1B,MAAM;IACV,CAAC;IAED,IAAI,CAAC;QACH,OAAO,MAAM,KAAK,CAChB,IAAI,OAAO,CAAC,SAAS,EAAE;YACrB,MAAM,EAAE,eAAe,CAAC,MAAM;YAC9B,OAAO,EAAE,gBAAgB;YACzB,IAAI,EAAE,eAAe,CAAC,IAAI;YAC1B,QAAQ,EAAE,QAAQ;SACnB,CAAC,CACH,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,UAAU,GAAe;YAC7B,IAAI,EAAE,qBAAqB;YAC3B,MAAM,EAAE,SAAS,CAAC,QAAQ,EAAE;YAC5B,WAAW,EAAE,MAAM,CAAC,IAAI;SACzB,CAAC;QACF,OAAO,iBAAiB,CAAC;YACvB,UAAU,EAAE,GAAG;YACf,SAAS,EAAE;gBACT,KAAK,EAAE,UAAU,CAAC,IAAI;gBACtB,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,OAAO,EAAE,UAAU,CAAC,WAAW;gBAC/B,OAAO,EAAE,4BAA4B,UAAU,CAAC,WAAW,eAAe,UAAU,CAAC,MAAM,wEAAwE;aACpK;SACF,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAWD,SAAS,eAAe,CAAC,oBAA0C;IACjE,IAAI,oBAAoB,CAAC,QAAQ,KAAK,oBAAoB,CAAC,MAAM,EAAE,CAAC;QAClE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC3B,CAAC;IACD,IAAI,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,oBAAoB,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC;QAChF,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC3B,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAC9B,CAAC;AAOD,SAAS,gBAAgB,CAAC,gBAAwC;IAChE,QAAQ,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACtC,KAAK,UAAU;YACb,OAAO,gBAAgB,CAAC,YAAY,CAAC;QACvC,KAAK,WAAW;YACd,OAAO,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;QACvE;YACE,OAAO,gBAAgB,CAAC,OAAO,CAAC;IACpC,CAAC;AACH,CAAC;AAWD,SAAS,gBAAgB,CAAC,WAAmC;IAC3D,MAAM,qBAAqB,GAAG,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IAC5E,KAAK,MAAM,WAAW,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;QACnD,IAAI,qBAAqB,KAAK,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC;YACxD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,WAAW,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;AACjF,CAAC;AAOD,SAAS,0BAA0B,CAAC,cAAuC;IACzE,MAAM,cAAc,GAAG,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9D,OAAO,iBAAiB,CAAC;QACvB,UAAU,EAAE,GAAG;QACf,SAAS,EAAE;YACT,KAAK,EAAE,qBAAqB;YAC5B,IAAI,EAAE,cAAc,CAAC,gBAAgB;YACrC,UAAU,EAAE,cAAc;YAC1B,OAAO,EAAE,4CAA4C,cAAc,CAAC,gBAAgB,sCAAsC,cAAc,+GAA+G;SACxP;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAgB;IACxC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;AAC9E,CAAC;AAED,SAAS,cAAc,CAAC,UAAsB;IAC5C,OAAO;QACL,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,MAAM,EAAE,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC;QAC3C,OAAO,EAAE,UAAU,CAAC,OAAO;KAC5B,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,WAA6B;IACzD,QAAQ,WAAW,CAAC,IAAI,EAAE,CAAC;QACzB,KAAK,UAAU;YACb,OAAO,WAAW,CAAC;QACrB,KAAK,SAAS;YACZ,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE,WAAW,CAAC,UAAU;gBAClC,YAAY,EAAE,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC;gBAC5D,mBAAmB,EAAE,WAAW,CAAC,mBAAmB;aACrD,CAAC;QACJ;YACE,OAAO,WAAW,CAAC;IACvB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,oBAAoB,CAAC,YAAoB;IACvD,OAAO;QACL,UAAU,EAAE,OAAO;QACnB,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,CAAC,YAAY,CAAC,EAAE;QACpE,OAAO,EAAE;YACP,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,MAAM,GAAG,YAAY;SAC/C;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,YAAoB;IAC1D,OAAO;QACL,UAAU,EAAE,WAAW;QACvB,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,CAAC,YAAY,CAAC,EAAE;QACpE,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;KAC9B,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAA0B;IAC3D,MAAM,sBAAsB,GAAG,MAAM,CAAC,YAAY,CAAC;IACnD,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC3D,MAAM,qBAAqB,GAAG,oBAAoB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAEvE,OAAO;QACL,KAAK,CAAC,aAAa,CAAC,aAAsB;YACxC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;YAE9C,MAAM,SAAS,GAAG,gBAAgB,CAAC;gBACjC,UAAU;gBACV,YAAY,EAAE,sBAAsB;aACrC,CAAC,CAAC;YACH,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAClC,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,eAAe,EAAE,0BAA0B,CAAC;wBAC1C,gBAAgB,EAAE,SAAS,CAAC,gBAAgB;wBAC5C,YAAY,EAAE,sBAAsB;qBACrC,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;YAErC,IACE,qBAAqB,CAAC,IAAI,KAAK,SAAS;gBACxC,QAAQ,KAAK,qBAAqB,CAAC,UAAU,EAC7C,CAAC;gBACD,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CACpC,qBAAqB,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;oBACvD,MAAM,WAAW,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBACvD,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAU,CAAC;gBAC9C,CAAC,CAAC,CACH,CAAC;gBACF,MAAM,aAAa,GAAsC,EAAE,CAAC;gBAC5D,KAAK,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,YAAY,EAAE,CAAC;oBAC/C,aAAa,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC;gBACpC,CAAC;gBACD,MAAM,eAAe,GAAG,qBAAqB,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;gBACjF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;YAC5C,CAAC;YAED,KAAK,MAAM,UAAU,IAAI,gBAAgB,EAAE,CAAC;gBAC1C,MAAM,KAAK,GAAG,eAAe,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC3E,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC3B,MAAM,aAAa,GAAG,gBAAgB,CAAC;wBACrC,OAAO,EAAE,UAAU,CAAC,OAAO;wBAC3B,YAAY,EAAE,QAAQ;qBACvB,CAAC,CAAC;oBACH,MAAM,eAAe,GAAG,MAAM,gBAAgB,CAAC;wBAC7C,eAAe,EAAE,aAAa;wBAC9B,WAAW,EAAE,UAAU;wBACvB,MAAM,EAAE,UAAU,CAAC,MAAM;wBACzB,UAAU,EAAE,aAAa;qBAC1B,CAAC,CAAC;oBACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;gBAC5C,CAAC;YACH,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,13 +1,11 @@
1
- import type { Route } from "./same-origin-proxy.js";
1
+ import type { ProxyRoute } from "./same-origin-proxy.js";
2
2
  export declare const VENTURE_API_PREFIX = "/api";
3
3
  /**
4
- * @why Builds the canonical venture-api route from a venture origin so
5
- * every venture Worker proxy mounts `/api/*` the same way, keeping the
6
- * Worker-side path contract aligned with the Rust `VENTURE_API_PREFIX`
7
- * constant.
4
+ * @why Preserves the shared venture API prefix contract because worker proxy
5
+ * routes and Rust venture routing must agree on one mounted path.
8
6
  *
9
7
  * @param ventureBaseUrl - Origin of the venture backend (scheme + host, no path).
10
- * @returns A Route that matches `/api` / `/api/*` and forwards to `ventureBaseUrl`.
8
+ * @returns A ProxyRoute that matches `/api` / `/api/*` and forwards to `ventureBaseUrl`.
11
9
  */
12
- export declare function createVentureApiRoute(ventureBaseUrl: string): Route;
10
+ export declare function createVentureApiRoute(ventureBaseUrl: string): ProxyRoute;
13
11
  //# sourceMappingURL=venture_api_route.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"venture_api_route.d.ts","sourceRoot":"","sources":["../src/venture_api_route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAKpD,eAAO,MAAM,kBAAkB,SAAS,CAAC;AAEzC;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,KAAK,CAMnE"}
1
+ {"version":3,"file":"venture_api_route.d.ts","sourceRoot":"","sources":["../src/venture_api_route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAKzD,eAAO,MAAM,kBAAkB,SAAS,CAAC;AAEzC;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,UAAU,CAMxE"}
@@ -3,13 +3,11 @@
3
3
  // and venture Worker proxies all agree on where the admin surface is nested.
4
4
  export const VENTURE_API_PREFIX = "/api";
5
5
  /**
6
- * @why Builds the canonical venture-api route from a venture origin so
7
- * every venture Worker proxy mounts `/api/*` the same way, keeping the
8
- * Worker-side path contract aligned with the Rust `VENTURE_API_PREFIX`
9
- * constant.
6
+ * @why Preserves the shared venture API prefix contract because worker proxy
7
+ * routes and Rust venture routing must agree on one mounted path.
10
8
  *
11
9
  * @param ventureBaseUrl - Origin of the venture backend (scheme + host, no path).
12
- * @returns A Route that matches `/api` / `/api/*` and forwards to `ventureBaseUrl`.
10
+ * @returns A ProxyRoute that matches `/api` / `/api/*` and forwards to `ventureBaseUrl`.
13
11
  */
14
12
  export function createVentureApiRoute(ventureBaseUrl) {
15
13
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"venture_api_route.js","sourceRoot":"","sources":["../src/venture_api_route.ts"],"names":[],"mappings":"AAEA,yEAAyE;AACzE,2EAA2E;AAC3E,6EAA6E;AAC7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,cAAsB;IACxD,OAAO;QACH,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE;QACpD,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;KAChC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"venture_api_route.js","sourceRoot":"","sources":["../src/venture_api_route.ts"],"names":[],"mappings":"AAEA,yEAAyE;AACzE,2EAA2E;AAC3E,6EAA6E;AAC7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAEzC;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,cAAsB;IACxD,OAAO;QACH,UAAU,EAAE,kBAAkB;QAC9B,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE;QACpD,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;KAChC,CAAC;AACN,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jakuta-inc/worker-proxy",
3
- "version": "6.0.0",
3
+ "version": "6.1.0",
4
4
  "description": "Same-origin reverse proxy for Jakuta admin panel Cloudflare Workers",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",