managed-deepagents 0.0.3-dev.46 → 0.0.3-dev.48
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/connectors/langsmith.d.ts +255 -4
- package/dist/connectors/langsmith.d.ts.map +1 -1
- package/dist/connectors/langsmith.js +167 -4
- package/dist/connectors/langsmith.js.map +1 -1
- package/dist/identity/index.d.ts +88 -0
- package/dist/identity/index.d.ts.map +1 -0
- package/dist/{identity.js → identity/index.js} +6 -125
- package/dist/identity/index.js.map +1 -0
- package/dist/identity/supabase.d.ts +48 -0
- package/dist/identity/supabase.d.ts.map +1 -0
- package/dist/identity/supabase.js +139 -0
- package/dist/identity/supabase.js.map +1 -0
- package/dist/{identity.d.ts → identity/types.d.ts} +4 -111
- package/dist/identity/types.d.ts.map +1 -0
- package/dist/identity/types.js +8 -0
- package/dist/identity/types.js.map +1 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/runtime/auth.d.ts +1 -1
- package/dist/runtime/auth.d.ts.map +1 -1
- package/dist/runtime/connector.d.ts +1 -1
- package/dist/runtime/connector.d.ts.map +1 -1
- package/dist/runtime/credentials.d.ts +1 -1
- package/dist/runtime/credentials.d.ts.map +1 -1
- package/dist/runtime/identity-http.d.ts +1 -1
- package/dist/runtime/identity-http.d.ts.map +1 -1
- package/dist/runtime/identity-runtime.d.ts +1 -1
- package/dist/runtime/identity-runtime.d.ts.map +1 -1
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +41 -67
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/langsmith-connector.d.ts +124 -12
- package/dist/runtime/langsmith-connector.d.ts.map +1 -1
- package/dist/runtime/langsmith-connector.js +497 -41
- package/dist/runtime/langsmith-connector.js.map +1 -1
- package/dist/runtime/managed-middleware.d.ts +1 -1
- package/dist/runtime/managed-middleware.d.ts.map +1 -1
- package/dist/runtime/managed-tools.d.ts +1 -1
- package/dist/runtime/managed-tools.d.ts.map +1 -1
- package/dist/runtime/sandbox-manager.d.ts +3 -2
- package/dist/runtime/sandbox-manager.d.ts.map +1 -1
- package/dist/runtime/sandbox-manager.js.map +1 -1
- package/dist/runtime/setup-script.d.ts +4 -7
- package/dist/runtime/setup-script.d.ts.map +1 -1
- package/dist/runtime/setup-script.js.map +1 -1
- package/dist/runtime/types.d.ts +1 -15
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/runtime/validated-token.d.ts +20 -3
- package/dist/runtime/validated-token.d.ts.map +1 -1
- package/dist/runtime/validated-token.js +71 -20
- package/dist/runtime/validated-token.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +7 -7
- package/dist/identity.d.ts.map +0 -1
- package/dist/identity.js.map +0 -1
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The managed `identity.ts` declaration primitive.
|
|
3
|
+
*
|
|
4
|
+
* A project's root `identity.ts` exports a named `identity` created with
|
|
5
|
+
* `defineIdentity(...)` (or `defineIdentity.preset(...)`). The compiler
|
|
6
|
+
* discovers it, generates the custom-auth handler, and wires thread/memory
|
|
7
|
+
* scoping and downstream credentials.
|
|
8
|
+
*
|
|
9
|
+
* This module is pure authoring-time config construction plus eager validation —
|
|
10
|
+
* it has no runtime dependency (the `providers.*` helpers return plain data).
|
|
11
|
+
*/
|
|
12
|
+
import { type SupabaseProviderOptions } from "./supabase.js";
|
|
13
|
+
import type { IdentityConfig, IdentityDefinition, IdentityPresetName, ValidatedTokenProvider } from "./types.js";
|
|
14
|
+
export type { CredentialResolver, CredentialResolverConfig, CredentialScope, CredentialTarget, HttpIngress, IdentityConfig, IdentityDefinition, IdentityPresetName, MemoryScope, ResolvedCredential, RuntimeIdentity, Tenancy, ThreadScope, ValidatedTokenIngress, ValidatedTokenProvider, } from "./types.js";
|
|
15
|
+
export type { SupabaseProviderOptions, SupabaseRegion } from "./supabase.js";
|
|
16
|
+
export { supabaseAuthV1Base } from "./supabase.js";
|
|
17
|
+
/** The signature of {@link defineIdentity}, including its `.preset` helper. */
|
|
18
|
+
export interface DefineIdentity {
|
|
19
|
+
(config: IdentityConfig): IdentityDefinition;
|
|
20
|
+
/**
|
|
21
|
+
* Start from a named archetype and optionally override any subset of it. The
|
|
22
|
+
* headline API for the common case.
|
|
23
|
+
*/
|
|
24
|
+
preset(name: IdentityPresetName, overrides?: DeepPartial<IdentityConfig>): IdentityDefinition;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Declare the identity contract for the deployment.
|
|
28
|
+
*
|
|
29
|
+
* Most developers call {@link defineIdentity.preset} instead. The three scoping
|
|
30
|
+
* axes are the power-user layer underneath.
|
|
31
|
+
*/
|
|
32
|
+
export declare const defineIdentity: DefineIdentity;
|
|
33
|
+
/**
|
|
34
|
+
* Provider integrations — authoring-time sugar over {@link ValidatedTokenProvider}.
|
|
35
|
+
* Each returns a plain provider object you can spread-and-override, so
|
|
36
|
+
* there is no new runtime surface.
|
|
37
|
+
*/
|
|
38
|
+
export declare const providers: {
|
|
39
|
+
auth0({ domain, audience, }: {
|
|
40
|
+
domain: string;
|
|
41
|
+
audience?: string;
|
|
42
|
+
}): ValidatedTokenProvider;
|
|
43
|
+
clerk({ domain }: {
|
|
44
|
+
domain: string;
|
|
45
|
+
}): ValidatedTokenProvider;
|
|
46
|
+
okta({ domain, audience, }: {
|
|
47
|
+
domain: string;
|
|
48
|
+
audience?: string;
|
|
49
|
+
}): ValidatedTokenProvider;
|
|
50
|
+
cognito({ userPoolId, region, }: {
|
|
51
|
+
userPoolId: string;
|
|
52
|
+
region: string;
|
|
53
|
+
}): ValidatedTokenProvider;
|
|
54
|
+
entra({ tenantId, audience, }: {
|
|
55
|
+
tenantId: string;
|
|
56
|
+
audience?: string;
|
|
57
|
+
}): ValidatedTokenProvider;
|
|
58
|
+
google({ audience }?: {
|
|
59
|
+
audience?: string;
|
|
60
|
+
}): ValidatedTokenProvider;
|
|
61
|
+
/** @see {@link supabaseProvider} */
|
|
62
|
+
supabase(options: SupabaseProviderOptions): ValidatedTokenProvider;
|
|
63
|
+
/** Universal fallback for any OIDC-compliant IdP via discovery. */
|
|
64
|
+
oidc({ issuer, audience, }: {
|
|
65
|
+
issuer: string;
|
|
66
|
+
audience?: string;
|
|
67
|
+
}): ValidatedTokenProvider;
|
|
68
|
+
/**
|
|
69
|
+
* GitHub OAuth access tokens (opaque bearer tokens, not JWTs). MDA verifies
|
|
70
|
+
* each request by calling `GET https://api.github.com/user` with the token.
|
|
71
|
+
*/
|
|
72
|
+
github(): ValidatedTokenProvider;
|
|
73
|
+
/** MDA-issued anonymous/guest tokens. */
|
|
74
|
+
guest({ ttl, actorPrefix, }?: {
|
|
75
|
+
ttl?: string;
|
|
76
|
+
actorPrefix?: string;
|
|
77
|
+
}): ValidatedTokenProvider;
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* Eagerly reject illegal identity configs at authoring time so misconfig never
|
|
81
|
+
* reaches the compiler or runtime.
|
|
82
|
+
*/
|
|
83
|
+
export declare function validateIdentity(config: IdentityConfig): void;
|
|
84
|
+
/** Recursively merge plain objects; arrays and primitives from `patch` win. */
|
|
85
|
+
type DeepPartial<T> = T extends object ? {
|
|
86
|
+
[K in keyof T]?: DeepPartial<T[K]>;
|
|
87
|
+
} : T;
|
|
88
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,KAAK,uBAAuB,EAAoB,MAAM,eAAe,CAAC;AAC/E,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAElB,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,kBAAkB,EAClB,wBAAwB,EACxB,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,OAAO,EACP,WAAW,EACX,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AA8BnD,+EAA+E;AAC/E,MAAM,WAAW,cAAc;IAC7B,CAAC,MAAM,EAAE,cAAc,GAAG,kBAAkB,CAAC;IAC7C;;;OAGG;IACH,MAAM,CACJ,IAAI,EAAE,kBAAkB,EACxB,SAAS,CAAC,EAAE,WAAW,CAAC,cAAc,CAAC,GACtC,kBAAkB,CAAC;CACvB;AAED;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,cAoB5B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,SAAS;iCAIjB;QACD,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,sBAAsB;sBAUR;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,sBAAsB;gCAY1D;QACD,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,sBAAsB;qCAavB;QACD,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,sBAAsB;mCAavB;QACD,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,sBAAsB;0BAUL;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAQ,sBAAsB;IAUxE,oCAAoC;sBAClB,uBAAuB,GAAG,sBAAsB;IAIlE,mEAAmE;gCAIhE;QACD,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,sBAAsB;IAU1B;;;OAGG;cACO,sBAAsB;IAehC,yCAAyC;kCAItC;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GAAQ,sBAAsB;CAWxE,CAAC;AAIF;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CA0E7D;AA2ED,+EAA+E;AAC/E,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAClC;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GACtC,CAAC,CAAC"}
|
|
@@ -9,6 +9,8 @@
|
|
|
9
9
|
* This module is pure authoring-time config construction plus eager validation —
|
|
10
10
|
* it has no runtime dependency (the `providers.*` helpers return plain data).
|
|
11
11
|
*/
|
|
12
|
+
import { supabaseProvider } from "./supabase.js";
|
|
13
|
+
export { supabaseAuthV1Base } from "./supabase.js";
|
|
12
14
|
const PRESETS = {
|
|
13
15
|
"private-assistant": {
|
|
14
16
|
ingress: { http: "trusted_backend" },
|
|
@@ -55,64 +57,6 @@ export const defineIdentity = Object.assign(function defineIdentity(config) {
|
|
|
55
57
|
return defineIdentity(deepMerge(base, overrides));
|
|
56
58
|
},
|
|
57
59
|
});
|
|
58
|
-
function supabaseBase(projectRef) {
|
|
59
|
-
return `https://${projectRef}.supabase.co/auth/v1`;
|
|
60
|
-
}
|
|
61
|
-
/** Normalize a Supabase project or custom-domain URL to the `…/auth/v1` root. */
|
|
62
|
-
export function supabaseAuthV1Base(url) {
|
|
63
|
-
let trimmed = url.replace(/\/$/, "");
|
|
64
|
-
if (trimmed.endsWith("/user")) {
|
|
65
|
-
trimmed = trimmed.slice(0, -"/user".length);
|
|
66
|
-
}
|
|
67
|
-
if (trimmed.endsWith("/auth/v1")) {
|
|
68
|
-
return trimmed;
|
|
69
|
-
}
|
|
70
|
-
return `${trimmed}/auth/v1`;
|
|
71
|
-
}
|
|
72
|
-
function supabaseRegionIssuers(regions) {
|
|
73
|
-
const issuers = [];
|
|
74
|
-
const seen = new Set();
|
|
75
|
-
for (const entry of Object.values(regions)) {
|
|
76
|
-
let issuer;
|
|
77
|
-
if (typeof entry === "string") {
|
|
78
|
-
issuer = supabaseAuthV1Base(entry);
|
|
79
|
-
}
|
|
80
|
-
else if (entry.projectRef) {
|
|
81
|
-
issuer = supabaseBase(entry.projectRef);
|
|
82
|
-
}
|
|
83
|
-
else if (entry.url) {
|
|
84
|
-
issuer = supabaseAuthV1Base(entry.url);
|
|
85
|
-
}
|
|
86
|
-
if (issuer && !seen.has(issuer)) {
|
|
87
|
-
seen.add(issuer);
|
|
88
|
-
issuers.push(issuer);
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
return issuers;
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Normalize authoring-time Supabase regions into the runtime `regions` shape. A
|
|
95
|
-
* bare string stays a URL (using the shared base `apikey`); an object resolves
|
|
96
|
-
* its `url` from `url`/`projectRef` and, when given, carries region-specific
|
|
97
|
-
* `headers`/`anonKey` that override the shared `apikey` at introspection time.
|
|
98
|
-
*/
|
|
99
|
-
function normalizeSupabaseRegions(regions) {
|
|
100
|
-
const out = {};
|
|
101
|
-
for (const [region, entry] of Object.entries(regions)) {
|
|
102
|
-
if (typeof entry === "string") {
|
|
103
|
-
out[region] = entry;
|
|
104
|
-
continue;
|
|
105
|
-
}
|
|
106
|
-
const url = entry.url ??
|
|
107
|
-
(entry.projectRef ? `${supabaseBase(entry.projectRef)}/user` : undefined);
|
|
108
|
-
if (!url) {
|
|
109
|
-
throw new Error(`providers.supabase(...) region "${region}" needs a \`projectRef\` or \`url\`.`);
|
|
110
|
-
}
|
|
111
|
-
const headers = entry.headers ?? (entry.anonKey ? { apikey: entry.anonKey } : undefined);
|
|
112
|
-
out[region] = headers ? { url, headers } : { url };
|
|
113
|
-
}
|
|
114
|
-
return out;
|
|
115
|
-
}
|
|
116
60
|
/**
|
|
117
61
|
* Provider integrations — authoring-time sugar over {@link ValidatedTokenProvider}.
|
|
118
62
|
* Each returns a plain provider object you can spread-and-override, so
|
|
@@ -172,72 +116,9 @@ export const providers = {
|
|
|
172
116
|
claims: { actor: "sub", email: "email" },
|
|
173
117
|
};
|
|
174
118
|
},
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
}
|
|
179
|
-
if (introspect) {
|
|
180
|
-
if (regions) {
|
|
181
|
-
const provider = {
|
|
182
|
-
id: "supabase",
|
|
183
|
-
introspect: {
|
|
184
|
-
regionHeader,
|
|
185
|
-
regions: normalizeSupabaseRegions(regions),
|
|
186
|
-
headers: { apikey: "${SUPABASE_ANON_KEY}" },
|
|
187
|
-
},
|
|
188
|
-
claims: { actor: "email" },
|
|
189
|
-
};
|
|
190
|
-
const issuers = supabaseRegionIssuers(regions);
|
|
191
|
-
if (issuers.length > 0) {
|
|
192
|
-
provider.issuers = issuers;
|
|
193
|
-
}
|
|
194
|
-
return provider;
|
|
195
|
-
}
|
|
196
|
-
if (url) {
|
|
197
|
-
const authBase = supabaseAuthV1Base(url);
|
|
198
|
-
return {
|
|
199
|
-
id: "supabase",
|
|
200
|
-
discoveryUrl: authBase,
|
|
201
|
-
introspect: {
|
|
202
|
-
url: `${authBase}/user`,
|
|
203
|
-
headers: { apikey: "${SUPABASE_ANON_KEY}" },
|
|
204
|
-
},
|
|
205
|
-
claims: { actor: "email" },
|
|
206
|
-
};
|
|
207
|
-
}
|
|
208
|
-
if (!projectRef) {
|
|
209
|
-
throw new Error("providers.supabase(...) requires `projectRef`, `url`, or `regions` when introspect is true.");
|
|
210
|
-
}
|
|
211
|
-
const base = supabaseBase(projectRef);
|
|
212
|
-
return {
|
|
213
|
-
id: "supabase",
|
|
214
|
-
issuer: base,
|
|
215
|
-
introspect: {
|
|
216
|
-
url: `${base}/user`,
|
|
217
|
-
headers: { apikey: "${SUPABASE_ANON_KEY}" },
|
|
218
|
-
},
|
|
219
|
-
claims: { actor: "email" },
|
|
220
|
-
};
|
|
221
|
-
}
|
|
222
|
-
if (url) {
|
|
223
|
-
return {
|
|
224
|
-
id: "supabase",
|
|
225
|
-
discoveryUrl: supabaseAuthV1Base(url),
|
|
226
|
-
algorithms: ["ES256", "RS256"],
|
|
227
|
-
claims: { actor: "email" },
|
|
228
|
-
};
|
|
229
|
-
}
|
|
230
|
-
if (!projectRef) {
|
|
231
|
-
throw new Error("providers.supabase(...) without `introspect` requires `projectRef` or `url`.");
|
|
232
|
-
}
|
|
233
|
-
const base = supabaseBase(projectRef);
|
|
234
|
-
return {
|
|
235
|
-
id: "supabase",
|
|
236
|
-
issuer: base,
|
|
237
|
-
jwks: `${base}/.well-known/jwks.json`,
|
|
238
|
-
algorithms: ["ES256", "RS256"],
|
|
239
|
-
claims: { actor: "email" },
|
|
240
|
-
};
|
|
119
|
+
/** @see {@link supabaseProvider} */
|
|
120
|
+
supabase(options) {
|
|
121
|
+
return supabaseProvider(options);
|
|
241
122
|
},
|
|
242
123
|
/** Universal fallback for any OIDC-compliant IdP via discovery. */
|
|
243
124
|
oidc({ issuer, audience, }) {
|
|
@@ -419,4 +300,4 @@ function structuredCloneConfig(value) {
|
|
|
419
300
|
}
|
|
420
301
|
return value;
|
|
421
302
|
}
|
|
422
|
-
//# sourceMappingURL=
|
|
303
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/identity/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAgC,gBAAgB,EAAE,MAAM,eAAe,CAAC;AA4B/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAEnD,MAAM,OAAO,GAA+C;IAC1D,mBAAmB,EAAE;QACnB,OAAO,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE;QACpC,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE;KACrE;IACD,mBAAmB,EAAE;QACnB,OAAO,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE;QACpC,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE;KACtE;IACD,YAAY,EAAE;QACZ,OAAO,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE;QACpC,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE;KACvE;IACD,eAAe,EAAE;QACf,OAAO,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE;QACpC,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE;KACrE;IACD,OAAO,EAAE;QACP,OAAO,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE;QACpC,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE;KACnD;CACF,CAAC;AAeF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAmB,MAAM,CAAC,MAAM,CACzD,SAAS,cAAc,CAAC,MAAsB;IAC5C,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzB,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACtC,CAAC,EACD;IACE,MAAM,CACJ,IAAwB,EACxB,SAAuC;QAEvC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,8CAA8C,MAAM,CAAC,IAAI,CAAC,KAAK;gBAC7D,kBAAkB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CACvD,CAAC;QACJ,CAAC;QACD,OAAO,cAAc,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IACpD,CAAC;CACF,CACF,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,KAAK,CAAC,EACJ,MAAM,EACN,QAAQ,GAIT;QACC,OAAO;YACL,MAAM,EAAE,WAAW,MAAM,GAAG;YAC5B,IAAI,EAAE,WAAW,MAAM,wBAAwB;YAC/C,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,UAAU,EAAE,CAAC,OAAO,CAAC;YACrB,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE;SAC3C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,EAAE,MAAM,EAAsB;QAClC,OAAO;YACL,MAAM,EAAE,WAAW,MAAM,EAAE;YAC3B,IAAI,EAAE,WAAW,MAAM,wBAAwB;YAC/C,UAAU,EAAE,CAAC,OAAO,CAAC;YACrB,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;SACzB,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,EACH,MAAM,EACN,QAAQ,GAIT;QACC,OAAO;YACL,MAAM,EAAE,WAAW,MAAM,EAAE;YAC3B,IAAI,EAAE,WAAW,MAAM,iBAAiB;YACxC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,UAAU,EAAE,CAAC,OAAO,CAAC;YACrB,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;SACzB,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,EACN,UAAU,EACV,MAAM,GAIP;QACC,MAAM,MAAM,GAAG,uBAAuB,MAAM,kBAAkB,UAAU,EAAE,CAAC;QAC3E,OAAO;YACL,MAAM;YACN,IAAI,EAAE,GAAG,MAAM,wBAAwB;YACvC,UAAU,EAAE,CAAC,OAAO,CAAC;YACrB,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;SACzB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,EACJ,QAAQ,EACR,QAAQ,GAIT;QACC,OAAO;YACL,MAAM,EAAE,qCAAqC,QAAQ,OAAO;YAC5D,IAAI,EAAE,qCAAqC,QAAQ,sBAAsB;YACzE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,UAAU,EAAE,CAAC,OAAO,CAAC;YACrB,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;SACzB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,EAAE,QAAQ,KAA4B,EAAE;QAC7C,OAAO;YACL,MAAM,EAAE,6BAA6B;YACrC,IAAI,EAAE,4CAA4C;YAClD,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,UAAU,EAAE,CAAC,OAAO,CAAC;YACrB,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE;SACzC,CAAC;IACJ,CAAC;IAED,oCAAoC;IACpC,QAAQ,CAAC,OAAgC;QACvC,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,mEAAmE;IACnE,IAAI,CAAC,EACH,MAAM,EACN,QAAQ,GAIT;QACC,OAAO;YACL,MAAM;YACN,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC,OAAO,CAAC;YACrB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;SACzB,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO;YACL,EAAE,EAAE,QAAQ;YACZ,UAAU,EAAE;gBACV,GAAG,EAAE,6BAA6B;gBAClC,OAAO,EAAE;oBACP,MAAM,EAAE,6BAA6B;oBACrC,sBAAsB,EAAE,YAAY;oBACpC,YAAY,EAAE,mCAAmC;iBAClD;aACF;YACD,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;SAC3C,CAAC;IACJ,CAAC;IAED,yCAAyC;IACzC,KAAK,CAAC,EACJ,GAAG,EACH,WAAW,MAC+B,EAAE;QAC5C,OAAO;YACL,EAAE,EAAE,OAAO;YACX,KAAK,EAAE;gBACL,KAAK,EAAE,IAAI;gBACX,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxC;YACD,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;SACzB,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAU,CAAC;AAErE;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAsB;IACrD,MAAM,QAAQ,GAAG,MAA4C,CAAC;IAE9D,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAyC,CAAC;IACnE,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,EAAE,CAAC;QAC5E,MAAM,IAAI,KAAK,CACb,uGAAuG,CACxG,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,OAEZ,CAAC;IACd,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CACb,+FAA+F,CAChG,CAAC;IACJ,CAAC;IAED,uDAAuD;IACvD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,UAAU,GAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,aAAa,CAAW,CAAC,MAAM,CACvE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,CACrC,CAAC;QACF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,kDAAkD,UAAU,CAAC,IAAI,CAC/D,IAAI,CACL,iDAAiD,CACnD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC;IACvD,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAC5C,IAAI,eAAe,KAAK,QAAQ,IAAI,CAAC,WAAW,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CACb,uGAAuG,CACxG,CAAC;IACJ,CAAC;IACD,IACE,WAAW;QACX,OAAO,eAAe,KAAK,QAAQ;QAClC,wBAA8C,CAAC,QAAQ,CAAC,eAAe,CAAC,EACzE,CAAC;QACD,MAAM,IAAI,KAAK,CACb,uFAAuF,eAAe,KAAK;YACzG,6DAA6D,CAChE,CAAC;IACJ,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,0BAA0B,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAED,+EAA+E;IAC/E,MAAM,IAAI,GAAI,OAA6B,CAAC,IAAI,CAAC;IACjD,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;SAAM,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CACb,yHAAyH,CAC1H,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAa;IACrC,OAAO,CACL,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACZ,IAA2B,CAAC,IAAI,KAAK,iBAAiB,CACxD,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,IAA2B;IACzD,MAAM,IAAI,GAAI,IAAgC,CAAC,SAAS,CAAC;IACzD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CACb,oFAAoF,CACrF,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IACjC,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,KAA+B,CAAC;QACjD,MAAM,KAAK,GAAG,QAAQ,EAAE,EAAE,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1C,IAAI,QAAQ,KAAK,IAAI,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CACb,gDAAgD,KAAK,qBAAqB,CAC3E,CAAC;QACJ,CAAC;QACD,IACE,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ;YACnC,QAAQ,CAAC,MAAM,KAAK,IAAI;YACxB,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,KAAK,QAAQ;YACzC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAClC,CAAC;YACD,MAAM,IAAI,KAAK,CACb,gDAAgD,KAAK,6BAA6B,CACnF,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CACb,sGAAsG,CACvG,CAAC;QACJ,CAAC;QACD,MAAM,WAAW,GACf,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ;YACjC,QAAQ,CAAC,QAAQ,KAAK,IAAI;YAC1B,OAAO,QAAQ,CAAC,YAAY,KAAK,QAAQ;YACzC,QAAQ,CAAC,UAAU,KAAK,SAAS;YACjC,QAAQ,CAAC,KAAK,KAAK,SAAS,CAAC;QAC/B,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,gDAAgD,KAAK,8FAA8F,CACpJ,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,0BAA0B,CAAC,WAAoB;IACtD,IAAI,WAAW,KAAK,IAAI,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CACb,uGAAuG,CACxG,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,GAAG,WAAwD,CAAC;IACrE,MAAM,YAAY,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,UAAU,CAAC;IACvD,MAAM,WAAW,GACf,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ;QAChC,GAAG,CAAC,QAAQ,KAAK,IAAI;QACrB,OAAQ,GAAG,CAAC,QAA8B,CAAC,GAAG,KAAK,QAAQ,CAAC;IAC9D,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CACb,yGAAyG,CAC1G,CAAC;IACJ,CAAC;AACH,CAAC;AAOD,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACrB,OAAO,KAAK,KAAK,UAAU,CAC5B,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAI,IAAO,EAAE,KAAiC;IAC9D,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAC5D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAClD,OAAO,KAAU,CAAC;IACpB,CAAC;IACD,MAAM,GAAG,GAA4B,EAAE,GAAG,IAAI,EAAE,CAAC;IACjD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QAClC,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,GAAG,CAAC,GAAG,CAAC;YACN,aAAa,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC;gBAC5C,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,KAAoC,CAAC;gBAC1D,CAAC,CAAC,KAAK,CAAC;IACd,CAAC;IACD,OAAO,GAAQ,CAAC;AAClB,CAAC;AAED,SAAS,qBAAqB,CAAI,KAAQ;IACxC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAiB,CAAC;IAC1E,CAAC;IACD,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,GAAG,GAA4B,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,GAAG,CAAC,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO,GAAQ,CAAC;IAClB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supabase validated-token provider helpers.
|
|
3
|
+
*
|
|
4
|
+
* Authoring-time sugar for {@link ValidatedTokenProvider} configs that talk to
|
|
5
|
+
* Supabase Auth (project refs, custom domains, multi-region introspection).
|
|
6
|
+
*/
|
|
7
|
+
import type { ValidatedTokenProvider } from "./types.js";
|
|
8
|
+
/**
|
|
9
|
+
* A single Supabase region for multi-region introspection. A bare string is the
|
|
10
|
+
* introspection URL (using the shared `${SUPABASE_ANON_KEY}`); an object pins a
|
|
11
|
+
* `projectRef` or explicit `url`, plus an optional region-specific `anonKey`
|
|
12
|
+
* (or raw `headers`) so each region uses its own project and anon key.
|
|
13
|
+
*/
|
|
14
|
+
export type SupabaseRegion = string | {
|
|
15
|
+
projectRef?: string;
|
|
16
|
+
url?: string;
|
|
17
|
+
anonKey?: string;
|
|
18
|
+
headers?: Record<string, string>;
|
|
19
|
+
};
|
|
20
|
+
/** Options for {@link supabaseProvider}. */
|
|
21
|
+
export interface SupabaseProviderOptions {
|
|
22
|
+
projectRef?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Project URL or custom auth domain (e.g. `https://auth.example.com`).
|
|
25
|
+
* Sets `discoveryUrl` so the runtime resolves the real JWT `iss` + JWKS
|
|
26
|
+
* via OIDC — vanity hosts are not the token issuer.
|
|
27
|
+
*/
|
|
28
|
+
url?: string;
|
|
29
|
+
introspect?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Multi-region introspection: map each region to its Supabase project. A
|
|
32
|
+
* string is a `projectRef`; an object can pin an explicit `url`/`anonKey` (so
|
|
33
|
+
* each region uses its own project + anon key). Only valid with `introspect`.
|
|
34
|
+
*/
|
|
35
|
+
regions?: Record<string, SupabaseRegion>;
|
|
36
|
+
/** Client header carrying the region (default `x-supabase-region`). */
|
|
37
|
+
regionHeader?: string;
|
|
38
|
+
}
|
|
39
|
+
/** Normalize a Supabase project or custom-domain URL to the `…/auth/v1` root. */
|
|
40
|
+
export declare function supabaseAuthV1Base(url: string): string;
|
|
41
|
+
/**
|
|
42
|
+
* Build a Supabase {@link ValidatedTokenProvider}.
|
|
43
|
+
*
|
|
44
|
+
* @param options - Project ref, custom domain URL, and/or multi-region introspect.
|
|
45
|
+
* @returns A plain provider object for `defineIdentity` / `validated_token`.
|
|
46
|
+
*/
|
|
47
|
+
export declare function supabaseProvider(options: SupabaseProviderOptions): ValidatedTokenProvider;
|
|
48
|
+
//# sourceMappingURL=supabase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supabase.d.ts","sourceRoot":"","sources":["../../src/identity/supabase.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GACtB,MAAM,GACN;IACE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC;AAEN,4CAA4C;AAC5C,MAAM,WAAW,uBAAuB;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACzC,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAMD,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAStD;AAyDD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,uBAAuB,GAC/B,sBAAsB,CAgFxB"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Supabase validated-token provider helpers.
|
|
3
|
+
*
|
|
4
|
+
* Authoring-time sugar for {@link ValidatedTokenProvider} configs that talk to
|
|
5
|
+
* Supabase Auth (project refs, custom domains, multi-region introspection).
|
|
6
|
+
*/
|
|
7
|
+
function supabaseBase(projectRef) {
|
|
8
|
+
return `https://${projectRef}.supabase.co/auth/v1`;
|
|
9
|
+
}
|
|
10
|
+
/** Normalize a Supabase project or custom-domain URL to the `…/auth/v1` root. */
|
|
11
|
+
export function supabaseAuthV1Base(url) {
|
|
12
|
+
let trimmed = url.replace(/\/$/, "");
|
|
13
|
+
if (trimmed.endsWith("/user")) {
|
|
14
|
+
trimmed = trimmed.slice(0, -"/user".length);
|
|
15
|
+
}
|
|
16
|
+
if (trimmed.endsWith("/auth/v1")) {
|
|
17
|
+
return trimmed;
|
|
18
|
+
}
|
|
19
|
+
return `${trimmed}/auth/v1`;
|
|
20
|
+
}
|
|
21
|
+
function supabaseRegionIssuers(regions) {
|
|
22
|
+
const issuers = [];
|
|
23
|
+
const seen = new Set();
|
|
24
|
+
for (const entry of Object.values(regions)) {
|
|
25
|
+
let issuer;
|
|
26
|
+
if (typeof entry === "string") {
|
|
27
|
+
issuer = supabaseAuthV1Base(entry);
|
|
28
|
+
}
|
|
29
|
+
else if (entry.projectRef) {
|
|
30
|
+
issuer = supabaseBase(entry.projectRef);
|
|
31
|
+
}
|
|
32
|
+
else if (entry.url) {
|
|
33
|
+
issuer = supabaseAuthV1Base(entry.url);
|
|
34
|
+
}
|
|
35
|
+
if (issuer && !seen.has(issuer)) {
|
|
36
|
+
seen.add(issuer);
|
|
37
|
+
issuers.push(issuer);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return issuers;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Normalize authoring-time Supabase regions into the runtime `regions` shape. A
|
|
44
|
+
* bare string stays a URL (using the shared base `apikey`); an object resolves
|
|
45
|
+
* its `url` from `url`/`projectRef` and, when given, carries region-specific
|
|
46
|
+
* `headers`/`anonKey` that override the shared `apikey` at introspection time.
|
|
47
|
+
*/
|
|
48
|
+
function normalizeSupabaseRegions(regions) {
|
|
49
|
+
const out = {};
|
|
50
|
+
for (const [region, entry] of Object.entries(regions)) {
|
|
51
|
+
if (typeof entry === "string") {
|
|
52
|
+
out[region] = entry;
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
const url = entry.url ??
|
|
56
|
+
(entry.projectRef ? `${supabaseBase(entry.projectRef)}/user` : undefined);
|
|
57
|
+
if (!url) {
|
|
58
|
+
throw new Error(`providers.supabase(...) region "${region}" needs a \`projectRef\` or \`url\`.`);
|
|
59
|
+
}
|
|
60
|
+
const headers = entry.headers ?? (entry.anonKey ? { apikey: entry.anonKey } : undefined);
|
|
61
|
+
out[region] = headers ? { url, headers } : { url };
|
|
62
|
+
}
|
|
63
|
+
return out;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Build a Supabase {@link ValidatedTokenProvider}.
|
|
67
|
+
*
|
|
68
|
+
* @param options - Project ref, custom domain URL, and/or multi-region introspect.
|
|
69
|
+
* @returns A plain provider object for `defineIdentity` / `validated_token`.
|
|
70
|
+
*/
|
|
71
|
+
export function supabaseProvider(options) {
|
|
72
|
+
const { projectRef, url, introspect, regions, regionHeader = "x-supabase-region", } = options;
|
|
73
|
+
if (projectRef && url) {
|
|
74
|
+
throw new Error("providers.supabase(...) accepts only one of `projectRef` or `url`.");
|
|
75
|
+
}
|
|
76
|
+
if (introspect) {
|
|
77
|
+
if (regions) {
|
|
78
|
+
const provider = {
|
|
79
|
+
id: "supabase",
|
|
80
|
+
introspect: {
|
|
81
|
+
regionHeader,
|
|
82
|
+
regions: normalizeSupabaseRegions(regions),
|
|
83
|
+
headers: { apikey: "${SUPABASE_ANON_KEY}" },
|
|
84
|
+
},
|
|
85
|
+
claims: { actor: "email" },
|
|
86
|
+
};
|
|
87
|
+
const issuers = supabaseRegionIssuers(regions);
|
|
88
|
+
if (issuers.length > 0) {
|
|
89
|
+
provider.issuers = issuers;
|
|
90
|
+
}
|
|
91
|
+
return provider;
|
|
92
|
+
}
|
|
93
|
+
if (url) {
|
|
94
|
+
const authBase = supabaseAuthV1Base(url);
|
|
95
|
+
return {
|
|
96
|
+
id: "supabase",
|
|
97
|
+
discoveryUrl: authBase,
|
|
98
|
+
introspect: {
|
|
99
|
+
url: `${authBase}/user`,
|
|
100
|
+
headers: { apikey: "${SUPABASE_ANON_KEY}" },
|
|
101
|
+
},
|
|
102
|
+
claims: { actor: "email" },
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
if (!projectRef) {
|
|
106
|
+
throw new Error("providers.supabase(...) requires `projectRef`, `url`, or `regions` when introspect is true.");
|
|
107
|
+
}
|
|
108
|
+
const base = supabaseBase(projectRef);
|
|
109
|
+
return {
|
|
110
|
+
id: "supabase",
|
|
111
|
+
issuer: base,
|
|
112
|
+
introspect: {
|
|
113
|
+
url: `${base}/user`,
|
|
114
|
+
headers: { apikey: "${SUPABASE_ANON_KEY}" },
|
|
115
|
+
},
|
|
116
|
+
claims: { actor: "email" },
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
if (url) {
|
|
120
|
+
return {
|
|
121
|
+
id: "supabase",
|
|
122
|
+
discoveryUrl: supabaseAuthV1Base(url),
|
|
123
|
+
algorithms: ["ES256", "RS256"],
|
|
124
|
+
claims: { actor: "email" },
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
if (!projectRef) {
|
|
128
|
+
throw new Error("providers.supabase(...) without `introspect` requires `projectRef` or `url`.");
|
|
129
|
+
}
|
|
130
|
+
const base = supabaseBase(projectRef);
|
|
131
|
+
return {
|
|
132
|
+
id: "supabase",
|
|
133
|
+
issuer: base,
|
|
134
|
+
jwks: `${base}/.well-known/jwks.json`,
|
|
135
|
+
algorithms: ["ES256", "RS256"],
|
|
136
|
+
claims: { actor: "email" },
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=supabase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"supabase.js","sourceRoot":"","sources":["../../src/identity/supabase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Shared identity authoring types.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* discovers it, generates the custom-auth handler, and wires thread/memory
|
|
7
|
-
* scoping and downstream credentials.
|
|
8
|
-
*
|
|
9
|
-
* This module is pure authoring-time config construction plus eager validation —
|
|
10
|
-
* it has no runtime dependency (the `providers.*` helpers return plain data).
|
|
4
|
+
* Kept separate from provider helpers so modules like `supabase.ts` can import
|
|
5
|
+
* types without circular dependencies on the public barrel.
|
|
11
6
|
*/
|
|
12
7
|
/** How MDA learns who is calling on the HTTP ingress path. */
|
|
13
8
|
export type HttpIngress = "trusted_backend" | ValidatedTokenIngress;
|
|
@@ -187,106 +182,4 @@ export interface IdentityDefinition {
|
|
|
187
182
|
}
|
|
188
183
|
/** The archetype presets that expand to a full {@link IdentityConfig}. */
|
|
189
184
|
export type IdentityPresetName = "private-assistant" | "multi-tenant-saas" | "shared-bot" | "internal-tool" | "service";
|
|
190
|
-
|
|
191
|
-
export interface DefineIdentity {
|
|
192
|
-
(config: IdentityConfig): IdentityDefinition;
|
|
193
|
-
/**
|
|
194
|
-
* Start from a named archetype and optionally override any subset of it. The
|
|
195
|
-
* headline API for the common case.
|
|
196
|
-
*/
|
|
197
|
-
preset(name: IdentityPresetName, overrides?: DeepPartial<IdentityConfig>): IdentityDefinition;
|
|
198
|
-
}
|
|
199
|
-
/**
|
|
200
|
-
* Declare the identity contract for the deployment.
|
|
201
|
-
*
|
|
202
|
-
* Most developers call {@link defineIdentity.preset} instead. The three scoping
|
|
203
|
-
* axes are the power-user layer underneath.
|
|
204
|
-
*/
|
|
205
|
-
export declare const defineIdentity: DefineIdentity;
|
|
206
|
-
/**
|
|
207
|
-
* A single Supabase region for multi-region introspection. A bare string is the
|
|
208
|
-
* introspection URL (using the shared `${SUPABASE_ANON_KEY}`); an object pins a
|
|
209
|
-
* `projectRef` or explicit `url`, plus an optional region-specific `anonKey`
|
|
210
|
-
* (or raw `headers`) so each region uses its own project and anon key.
|
|
211
|
-
*/
|
|
212
|
-
export type SupabaseRegion = string | {
|
|
213
|
-
projectRef?: string;
|
|
214
|
-
url?: string;
|
|
215
|
-
anonKey?: string;
|
|
216
|
-
headers?: Record<string, string>;
|
|
217
|
-
};
|
|
218
|
-
/** Normalize a Supabase project or custom-domain URL to the `…/auth/v1` root. */
|
|
219
|
-
export declare function supabaseAuthV1Base(url: string): string;
|
|
220
|
-
/**
|
|
221
|
-
* Provider integrations — authoring-time sugar over {@link ValidatedTokenProvider}.
|
|
222
|
-
* Each returns a plain provider object you can spread-and-override, so
|
|
223
|
-
* there is no new runtime surface.
|
|
224
|
-
*/
|
|
225
|
-
export declare const providers: {
|
|
226
|
-
auth0({ domain, audience, }: {
|
|
227
|
-
domain: string;
|
|
228
|
-
audience?: string;
|
|
229
|
-
}): ValidatedTokenProvider;
|
|
230
|
-
clerk({ domain }: {
|
|
231
|
-
domain: string;
|
|
232
|
-
}): ValidatedTokenProvider;
|
|
233
|
-
okta({ domain, audience, }: {
|
|
234
|
-
domain: string;
|
|
235
|
-
audience?: string;
|
|
236
|
-
}): ValidatedTokenProvider;
|
|
237
|
-
cognito({ userPoolId, region, }: {
|
|
238
|
-
userPoolId: string;
|
|
239
|
-
region: string;
|
|
240
|
-
}): ValidatedTokenProvider;
|
|
241
|
-
entra({ tenantId, audience, }: {
|
|
242
|
-
tenantId: string;
|
|
243
|
-
audience?: string;
|
|
244
|
-
}): ValidatedTokenProvider;
|
|
245
|
-
google({ audience }?: {
|
|
246
|
-
audience?: string;
|
|
247
|
-
}): ValidatedTokenProvider;
|
|
248
|
-
supabase({ projectRef, url, introspect, regions, regionHeader, }: {
|
|
249
|
-
projectRef?: string;
|
|
250
|
-
/**
|
|
251
|
-
* Project URL or custom auth domain (e.g. `https://auth.example.com`).
|
|
252
|
-
* Sets `discoveryUrl` so the runtime resolves the real JWT `iss` + JWKS
|
|
253
|
-
* via OIDC — vanity hosts are not the token issuer.
|
|
254
|
-
*/
|
|
255
|
-
url?: string;
|
|
256
|
-
introspect?: boolean;
|
|
257
|
-
/**
|
|
258
|
-
* Multi-region introspection: map each region to its Supabase project. A
|
|
259
|
-
* string is a `projectRef`; an object can pin an explicit `url`/`anonKey` (so
|
|
260
|
-
* each region uses its own project + anon key). Only valid with `introspect`.
|
|
261
|
-
*/
|
|
262
|
-
regions?: Record<string, SupabaseRegion>;
|
|
263
|
-
/** Client header carrying the region (default `x-supabase-region`). */
|
|
264
|
-
regionHeader?: string;
|
|
265
|
-
}): ValidatedTokenProvider;
|
|
266
|
-
/** Universal fallback for any OIDC-compliant IdP via discovery. */
|
|
267
|
-
oidc({ issuer, audience, }: {
|
|
268
|
-
issuer: string;
|
|
269
|
-
audience?: string;
|
|
270
|
-
}): ValidatedTokenProvider;
|
|
271
|
-
/**
|
|
272
|
-
* GitHub OAuth access tokens (opaque bearer tokens, not JWTs). MDA verifies
|
|
273
|
-
* each request by calling `GET https://api.github.com/user` with the token.
|
|
274
|
-
*/
|
|
275
|
-
github(): ValidatedTokenProvider;
|
|
276
|
-
/** MDA-issued anonymous/guest tokens. */
|
|
277
|
-
guest({ ttl, actorPrefix, }?: {
|
|
278
|
-
ttl?: string;
|
|
279
|
-
actorPrefix?: string;
|
|
280
|
-
}): ValidatedTokenProvider;
|
|
281
|
-
};
|
|
282
|
-
/**
|
|
283
|
-
* Eagerly reject illegal identity configs at authoring time so misconfig never
|
|
284
|
-
* reaches the compiler or runtime.
|
|
285
|
-
*/
|
|
286
|
-
export declare function validateIdentity(config: IdentityConfig): void;
|
|
287
|
-
/** Recursively merge plain objects; arrays and primitives from `patch` win. */
|
|
288
|
-
type DeepPartial<T> = T extends object ? {
|
|
289
|
-
[K in keyof T]?: DeepPartial<T[K]>;
|
|
290
|
-
} : T;
|
|
291
|
-
export {};
|
|
292
|
-
//# sourceMappingURL=identity.d.ts.map
|
|
185
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/identity/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/identity/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,8 +4,8 @@ export * as langsmith from "./connectors/langsmith.js";
|
|
|
4
4
|
export type { LangSmithCapability, LangSmithCallerSurface, LangSmithCapabilityScope, LangSmithConnector, LangSmithConnectorConfig, LangSmithResource, LangSmithResponseShape, } from "./connectors/langsmith.js";
|
|
5
5
|
export { defineSchedule } from "./schedules.js";
|
|
6
6
|
export { defineSandbox } from "./sandbox.js";
|
|
7
|
-
export { defineIdentity, providers, validateIdentity } from "./identity.js";
|
|
8
|
-
export type { CredentialResolver, CredentialResolverConfig, CredentialScope, CredentialTarget, DefineIdentity, HttpIngress, IdentityConfig, IdentityDefinition, IdentityPresetName, MemoryScope, ResolvedCredential, RuntimeIdentity, Tenancy, ThreadScope, ValidatedTokenIngress, ValidatedTokenProvider, } from "./identity.js";
|
|
7
|
+
export { defineIdentity, providers, validateIdentity, } from "./identity/index.js";
|
|
8
|
+
export type { CredentialResolver, CredentialResolverConfig, CredentialScope, CredentialTarget, DefineIdentity, HttpIngress, IdentityConfig, IdentityDefinition, IdentityPresetName, MemoryScope, ResolvedCredential, RuntimeIdentity, Tenancy, ThreadScope, ValidatedTokenIngress, ValidatedTokenProvider, } from "./identity/index.js";
|
|
9
9
|
export type { HttpMcpServerConfig, McpServersConfig, McpServersDefinition, McpToolSelectionConfig, RemoteMcpServerBaseConfig, RemoteMcpServerConfig, SseMcpServerConfig, } from "./connectors.js";
|
|
10
10
|
export type { ScheduleConfig, ScheduleDefinition, ScheduleDeliveryTarget, ScheduleThreadConfig, } from "./schedules.js";
|
|
11
11
|
export type { ChannelAttachment, ChannelDestination, ChannelEvent, ChannelMessage, ChannelPostOptions, DeepAgentDefinition, DefineDeepAgentConfig, ManagedDeepAgentKey, PostedChannelMessage, Runtime, RuntimeChannel, } from "./types.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,SAAS,MAAM,2BAA2B,CAAC;AACvD,YAAY,EACV,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,SAAS,MAAM,2BAA2B,CAAC;AACvD,YAAY,EACV,mBAAmB,EACnB,sBAAsB,EACtB,wBAAwB,EACxB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EACL,cAAc,EACd,SAAS,EACT,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,kBAAkB,EAClB,wBAAwB,EACxB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,WAAW,EACX,kBAAkB,EAClB,eAAe,EACf,OAAO,EACP,WAAW,EACX,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EACV,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,cAAc,EACd,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAExB,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,OAAO,EACP,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,4BAA4B,CAAC;AAEpC,YAAY,EACV,oBAAoB,EACpB,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,YAAY,GACb,MAAM,cAAc,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,5 +3,5 @@ export { defineMcpServers } from "./connectors.js";
|
|
|
3
3
|
export * as langsmith from "./connectors/langsmith.js";
|
|
4
4
|
export { defineSchedule } from "./schedules.js";
|
|
5
5
|
export { defineSandbox } from "./sandbox.js";
|
|
6
|
-
export { defineIdentity, providers, validateIdentity } from "./identity.js";
|
|
6
|
+
export { defineIdentity, providers, validateIdentity, } from "./identity/index.js";
|
|
7
7
|
//# 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":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,SAAS,MAAM,2BAA2B,CAAC;AAUvD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,SAAS,MAAM,2BAA2B,CAAC;AAUvD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EACL,cAAc,EACd,SAAS,EACT,gBAAgB,GACjB,MAAM,qBAAqB,CAAC"}
|