@noodleseed/one 0.86.1 → 0.88.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/commands/deploy-status-ops.d.ts.map +1 -1
- package/dist/commands/deploy-status-ops.js +19 -3
- package/dist/commands/deploy-status-ops.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js +3 -3
- package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.d.ts.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.js +23 -0
- package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/skill-embedded-assistant-ref.d.ts.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/skill-embedded-assistant-ref.js +14 -3
- package/node_modules/@noodle-borg/agent-kit/dist/skill-embedded-assistant-ref.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
- package/node_modules/@noodle-borg/auth/dist/claims.d.ts +22 -0
- package/node_modules/@noodle-borg/auth/dist/claims.d.ts.map +1 -0
- package/node_modules/@noodle-borg/auth/dist/claims.js +70 -0
- package/node_modules/@noodle-borg/auth/dist/claims.js.map +1 -0
- package/node_modules/@noodle-borg/auth/dist/index.d.ts +1 -0
- package/node_modules/@noodle-borg/auth/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/auth/dist/index.js +1 -0
- package/node_modules/@noodle-borg/auth/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/auth/dist/jwt-issuer.d.ts +2 -0
- package/node_modules/@noodle-borg/auth/dist/jwt-issuer.d.ts.map +1 -1
- package/node_modules/@noodle-borg/auth/dist/jwt-issuer.js +1 -0
- package/node_modules/@noodle-borg/auth/dist/jwt-issuer.js.map +1 -1
- package/node_modules/@noodle-borg/auth/dist/metadata.d.ts +3 -0
- package/node_modules/@noodle-borg/auth/dist/metadata.d.ts.map +1 -1
- package/node_modules/@noodle-borg/auth/dist/metadata.js +3 -0
- package/node_modules/@noodle-borg/auth/dist/metadata.js.map +1 -1
- package/node_modules/@noodle-borg/auth/dist/verify.d.ts +7 -0
- package/node_modules/@noodle-borg/auth/dist/verify.d.ts.map +1 -1
- package/node_modules/@noodle-borg/auth/dist/verify.js +11 -13
- package/node_modules/@noodle-borg/auth/dist/verify.js.map +1 -1
- package/node_modules/@noodle-borg/authoring/dist/annotations.d.ts +45 -0
- package/node_modules/@noodle-borg/authoring/dist/annotations.d.ts.map +1 -0
- package/node_modules/@noodle-borg/authoring/dist/annotations.js +40 -0
- package/node_modules/@noodle-borg/authoring/dist/annotations.js.map +1 -0
- package/node_modules/@noodle-borg/authoring/dist/index.d.ts +1 -1
- package/node_modules/@noodle-borg/authoring/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/authoring/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/authoring/dist/server.d.ts +9 -45
- package/node_modules/@noodle-borg/authoring/dist/server.d.ts.map +1 -1
- package/node_modules/@noodle-borg/authoring/dist/server.js +13 -39
- package/node_modules/@noodle-borg/authoring/dist/server.js.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/artifact/types.d.ts +11 -1
- package/node_modules/@noodle-borg/compiler/dist/artifact/types.d.ts.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/artifact/types.js +4 -1
- package/node_modules/@noodle-borg/compiler/dist/artifact/types.js.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/compile.d.ts.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/compile.js +19 -0
- package/node_modules/@noodle-borg/compiler/dist/compile.js.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/index.d.ts +1 -1
- package/node_modules/@noodle-borg/compiler/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/manifest/schema.d.ts +9 -0
- package/node_modules/@noodle-borg/compiler/dist/manifest/schema.d.ts.map +1 -1
- package/node_modules/@noodle-borg/compiler/dist/manifest/schema.js +31 -0
- package/node_modules/@noodle-borg/compiler/dist/manifest/schema.js.map +1 -1
- package/node_modules/@noodle-borg/module/dist/contract.d.ts +4 -0
- package/node_modules/@noodle-borg/module/dist/contract.d.ts.map +1 -1
- package/node_modules/@noodle-borg/module/dist/contract.js.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/index.d.ts +1 -0
- package/node_modules/@noodle-borg/protocol/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/index.js +1 -0
- package/node_modules/@noodle-borg/protocol/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/mapping.d.ts +2 -1
- package/node_modules/@noodle-borg/protocol/dist/mapping.d.ts.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/mapping.js +3 -2
- package/node_modules/@noodle-borg/protocol/dist/mapping.js.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/sdk-server.d.ts.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/sdk-server.js +14 -1
- package/node_modules/@noodle-borg/protocol/dist/sdk-server.js.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/tool-authorization.d.ts +25 -0
- package/node_modules/@noodle-borg/protocol/dist/tool-authorization.d.ts.map +1 -0
- package/node_modules/@noodle-borg/protocol/dist/tool-authorization.js +51 -0
- package/node_modules/@noodle-borg/protocol/dist/tool-authorization.js.map +1 -0
- package/node_modules/@noodle-borg/runtime/dist/connector/types.d.ts +2 -0
- package/node_modules/@noodle-borg/runtime/dist/connector/types.d.ts.map +1 -1
- package/node_modules/@noodle-borg/runtime/dist/connector/types.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/assistant-interactive.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/assistant-interactive.js +8 -0
- package/node_modules/@noodle-borg/service/dist/assistant-interactive.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/customer-verifier.d.ts +2 -2
- package/node_modules/@noodle-borg/service/dist/customer-verifier.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/customer-verifier.js +37 -7
- package/node_modules/@noodle-borg/service/dist/customer-verifier.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/index.d.ts +1 -1
- package/node_modules/@noodle-borg/service/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/microsoft.d.ts +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/microsoft.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/microsoft.js +8 -1
- package/node_modules/@noodle-borg/service/dist/oauth/microsoft.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/provider.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/provider.js +60 -7
- package/node_modules/@noodle-borg/service/dist/oauth/provider.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/service-bootstrap.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/service-bootstrap.js +7 -1
- package/node_modules/@noodle-borg/service/dist/oauth/service-bootstrap.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/store-postgres-schema.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/store-postgres-schema.js +8 -0
- package/node_modules/@noodle-borg/service/dist/oauth/store-postgres-schema.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/store-postgres.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/store-postgres.js +34 -11
- package/node_modules/@noodle-borg/service/dist/oauth/store-postgres.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/store.d.ts +8 -0
- package/node_modules/@noodle-borg/service/dist/oauth/store.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/store.js +6 -0
- package/node_modules/@noodle-borg/service/dist/oauth/store.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/token-issuer.d.ts +4 -0
- package/node_modules/@noodle-borg/service/dist/oauth/token-issuer.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/token-issuer.js +30 -4
- package/node_modules/@noodle-borg/service/dist/oauth/token-issuer.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/registry-access.d.ts +14 -0
- package/node_modules/@noodle-borg/service/dist/registry-access.d.ts.map +1 -0
- package/node_modules/@noodle-borg/service/dist/registry-access.js +109 -0
- package/node_modules/@noodle-borg/service/dist/registry-access.js.map +1 -0
- package/node_modules/@noodle-borg/service/dist/registry-targets.d.ts +4 -0
- package/node_modules/@noodle-borg/service/dist/registry-targets.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/registry-targets.js +14 -3
- package/node_modules/@noodle-borg/service/dist/registry-targets.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/registry-types.d.ts +13 -1
- package/node_modules/@noodle-borg/service/dist/registry-types.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/registry.d.ts +3 -3
- package/node_modules/@noodle-borg/service/dist/registry.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/registry.js +2 -24
- package/node_modules/@noodle-borg/service/dist/registry.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/access.d.ts +7 -0
- package/node_modules/@noodle-borg/service/dist/routes/access.d.ts.map +1 -0
- package/node_modules/@noodle-borg/service/dist/routes/access.js +71 -0
- package/node_modules/@noodle-borg/service/dist/routes/access.js.map +1 -0
- package/node_modules/@noodle-borg/service/dist/routes/assistant-agent.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-agent.js +11 -5
- package/node_modules/@noodle-borg/service/dist/routes/assistant-agent.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant.js +26 -16
- package/node_modules/@noodle-borg/service/dist/routes/assistant.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/contracts.d.ts +11 -0
- package/node_modules/@noodle-borg/service/dist/routes/contracts.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/contracts.js +9 -3
- package/node_modules/@noodle-borg/service/dist/routes/contracts.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/control-plane.d.ts +0 -1
- package/node_modules/@noodle-borg/service/dist/routes/control-plane.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/control-plane.js +3 -45
- package/node_modules/@noodle-borg/service/dist/routes/control-plane.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/protected-resource-metadata.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/protected-resource-metadata.js +7 -5
- package/node_modules/@noodle-borg/service/dist/routes/protected-resource-metadata.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/service.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/service.js +3 -2
- package/node_modules/@noodle-borg/service/dist/service.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/in-memory.d.ts +3 -1
- package/node_modules/@noodle-borg/service/dist/store/in-memory.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/in-memory.js +5 -2
- package/node_modules/@noodle-borg/service/dist/store/in-memory.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/json-file.d.ts +3 -1
- package/node_modules/@noodle-borg/service/dist/store/json-file.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/json-file.js +5 -2
- package/node_modules/@noodle-borg/service/dist/store/json-file.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts +3 -1
- package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/postgres.js +14 -3
- package/node_modules/@noodle-borg/service/dist/store/postgres.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store.d.ts +7 -1
- package/node_modules/@noodle-borg/service/dist/store.d.ts.map +1 -1
- package/node_modules/@noodle-borg/transport-http/dist/handler.d.ts.map +1 -1
- package/node_modules/@noodle-borg/transport-http/dist/handler.js +19 -120
- package/node_modules/@noodle-borg/transport-http/dist/handler.js.map +1 -1
- package/node_modules/@noodle-borg/transport-http/dist/identity-authorization.d.ts +33 -0
- package/node_modules/@noodle-borg/transport-http/dist/identity-authorization.d.ts.map +1 -0
- package/node_modules/@noodle-borg/transport-http/dist/identity-authorization.js +133 -0
- package/node_modules/@noodle-borg/transport-http/dist/identity-authorization.js.map +1 -0
- package/node_modules/@noodle-borg/transport-http/dist/tool-authorization.d.ts +25 -0
- package/node_modules/@noodle-borg/transport-http/dist/tool-authorization.d.ts.map +1 -0
- package/node_modules/@noodle-borg/transport-http/dist/tool-authorization.js +64 -0
- package/node_modules/@noodle-borg/transport-http/dist/tool-authorization.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
export const MAX_AUTHORIZATION_CLAIM_VALUES = 128;
|
|
2
|
+
export const MAX_SCOPE_LENGTH = 512;
|
|
3
|
+
export const MAX_ROLE_LENGTH = 200;
|
|
4
|
+
/**
|
|
5
|
+
* Project one explicitly configured nested claim into a bounded canonical set. A malformed value fails
|
|
6
|
+
* closed as an empty set; mixed arrays are never partially accepted.
|
|
7
|
+
*/
|
|
8
|
+
export function projectMappedAuthorizationClaim(payload, path, kind) {
|
|
9
|
+
if (path === undefined)
|
|
10
|
+
return [];
|
|
11
|
+
return canonicalAuthorizationClaimValues(resolveClaimPath(payload, path), kind, kind === 'scope');
|
|
12
|
+
}
|
|
13
|
+
/** Project the Noodle-owned private role claim used by customer-auth bridge access tokens. */
|
|
14
|
+
export function projectNoodleRoles(payload) {
|
|
15
|
+
return canonicalAuthorizationClaimValues(payload.noodle_roles, 'role', false);
|
|
16
|
+
}
|
|
17
|
+
/** Project standard OAuth scope claims (`scope`, `scp`, then `scopes`) into one canonical set. */
|
|
18
|
+
export function projectStandardScopes(payload) {
|
|
19
|
+
const claims = payload;
|
|
20
|
+
return canonicalAuthorizationClaimValues(claims.scope ?? claims.scp ?? claims.scopes, 'scope', true);
|
|
21
|
+
}
|
|
22
|
+
/** Canonicalize an already selected claim value at a trusted non-JWT boundary. */
|
|
23
|
+
export function canonicalizeAuthorizationClaimValues(raw, kind) {
|
|
24
|
+
return canonicalAuthorizationClaimValues(raw, kind, false);
|
|
25
|
+
}
|
|
26
|
+
function resolveClaimPath(payload, path) {
|
|
27
|
+
const segments = path.split('.');
|
|
28
|
+
if (segments.some((segment) => segment.length === 0))
|
|
29
|
+
return undefined;
|
|
30
|
+
let value = payload;
|
|
31
|
+
for (const segment of segments) {
|
|
32
|
+
if (!isRecord(value) || !Object.hasOwn(value, segment))
|
|
33
|
+
return undefined;
|
|
34
|
+
value = value[segment];
|
|
35
|
+
}
|
|
36
|
+
return value;
|
|
37
|
+
}
|
|
38
|
+
function canonicalAuthorizationClaimValues(raw, kind, splitScopeString) {
|
|
39
|
+
const values = typeof raw === 'string'
|
|
40
|
+
? splitScopeString && kind === 'scope'
|
|
41
|
+
? raw.split(' ').filter((value) => value.length > 0)
|
|
42
|
+
: [raw]
|
|
43
|
+
: Array.isArray(raw) && raw.every((value) => typeof value === 'string')
|
|
44
|
+
? raw
|
|
45
|
+
: undefined;
|
|
46
|
+
if (values === undefined || values.length > MAX_AUTHORIZATION_CLAIM_VALUES)
|
|
47
|
+
return [];
|
|
48
|
+
const canonical = new Set();
|
|
49
|
+
for (const value of values) {
|
|
50
|
+
const normalized = value.trim();
|
|
51
|
+
if (!isValidAuthorizationClaim(normalized, kind))
|
|
52
|
+
return [];
|
|
53
|
+
canonical.add(normalized);
|
|
54
|
+
}
|
|
55
|
+
return [...canonical].sort();
|
|
56
|
+
}
|
|
57
|
+
function isValidAuthorizationClaim(value, kind) {
|
|
58
|
+
if (value.length === 0)
|
|
59
|
+
return false;
|
|
60
|
+
if (kind === 'scope') {
|
|
61
|
+
return (value.length <= MAX_SCOPE_LENGTH &&
|
|
62
|
+
// RFC 6749 scope-token = %x21 / %x23-5B / %x5D-7E.
|
|
63
|
+
/^[\x21\x23-\x5B\x5D-\x7E]+$/.test(value));
|
|
64
|
+
}
|
|
65
|
+
return value.length <= MAX_ROLE_LENGTH && !/\p{Cc}/u.test(value);
|
|
66
|
+
}
|
|
67
|
+
function isRecord(value) {
|
|
68
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=claims.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claims.js","sourceRoot":"","sources":["../src/claims.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAClD,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AACpC,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AASnC;;;GAGG;AACH,MAAM,UAAU,+BAA+B,CAC7C,OAA0C,EAC1C,IAAwB,EACxB,IAA4B;IAE5B,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IAClC,OAAO,iCAAiC,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC;AACpG,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,kBAAkB,CAAC,OAA0C;IAC3E,OAAO,iCAAiC,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAChF,CAAC;AAED,kGAAkG;AAClG,MAAM,UAAU,qBAAqB,CAAC,OAAmB;IACvD,MAAM,MAAM,GAAG,OAA4C,CAAC;IAC5D,OAAO,iCAAiC,CACtC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,MAAM,EAC3C,OAAO,EACP,IAAI,CACL,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,oCAAoC,CAClD,GAAY,EACZ,IAA4B;IAE5B,OAAO,iCAAiC,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,gBAAgB,CAAC,OAA0C,EAAE,IAAY;IAChF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACvE,IAAI,KAAK,GAAY,OAAO,CAAC;IAC7B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;YAAE,OAAO,SAAS,CAAC;QACzE,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,iCAAiC,CACxC,GAAY,EACZ,IAA4B,EAC5B,gBAAyB;IAEzB,MAAM,MAAM,GACV,OAAO,GAAG,KAAK,QAAQ;QACrB,CAAC,CAAC,gBAAgB,IAAI,IAAI,KAAK,OAAO;YACpC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC,GAAG,CAAC;QACT,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;YACtF,CAAC,CAAC,GAAG;YACL,CAAC,CAAC,SAAS,CAAC;IAClB,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,GAAG,8BAA8B;QAAE,OAAO,EAAE,CAAC;IAEtF,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QAC5D,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;IACD,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAa,EAAE,IAA4B;IAC5E,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,CACL,KAAK,CAAC,MAAM,IAAI,gBAAgB;YAChC,mDAAmD;YACnD,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,CAC1C,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,IAAI,eAAe,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* Express-typed `OAuthServerProvider` shell and Google-federation routes live in `packages/service` so this
|
|
8
8
|
* package stays Express-free.
|
|
9
9
|
*/
|
|
10
|
+
export { type AuthorizationClaimMap, canonicalizeAuthorizationClaimValues, MAX_AUTHORIZATION_CLAIM_VALUES, MAX_ROLE_LENGTH, MAX_SCOPE_LENGTH, projectMappedAuthorizationClaim, projectNoodleRoles, projectStandardScopes, } from './claims.js';
|
|
10
11
|
export { type DiscoveredIssuerMetadata, discoverIssuerMetadata, type IssuerMetadataCandidate, type IssuerMetadataKind, issuerMetadataCandidates, } from './discovery.js';
|
|
11
12
|
export { type AccessTokenClaims, mintAccessToken } from './jwt-issuer.js';
|
|
12
13
|
export { type ProtectedResourceMetadata, protectedResourceMetadata, protectedResourceMetadataUrl, } from './metadata.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,KAAK,wBAAwB,EAC7B,sBAAsB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,iBAAiB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EACL,KAAK,yBAAyB,EAC9B,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,8BAA8B,EAC9B,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,iBAAiB,EACjB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,gBAAgB,GACtB,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,KAAK,qBAAqB,EAC1B,oCAAoC,EACpC,8BAA8B,EAC9B,eAAe,EACf,gBAAgB,EAChB,+BAA+B,EAC/B,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,wBAAwB,EAC7B,sBAAsB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,iBAAiB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EACL,KAAK,yBAAyB,EAC9B,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,8BAA8B,EAC9B,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,iBAAiB,EACjB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,gBAAgB,GACtB,MAAM,aAAa,CAAC"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* Express-typed `OAuthServerProvider` shell and Google-federation routes live in `packages/service` so this
|
|
8
8
|
* package stays Express-free.
|
|
9
9
|
*/
|
|
10
|
+
export { canonicalizeAuthorizationClaimValues, MAX_AUTHORIZATION_CLAIM_VALUES, MAX_ROLE_LENGTH, MAX_SCOPE_LENGTH, projectMappedAuthorizationClaim, projectNoodleRoles, projectStandardScopes, } from './claims.js';
|
|
10
11
|
export { discoverIssuerMetadata, issuerMetadataCandidates, } from './discovery.js';
|
|
11
12
|
export { mintAccessToken } from './jwt-issuer.js';
|
|
12
13
|
export { protectedResourceMetadata, protectedResourceMetadataUrl, } from './metadata.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,sBAAsB,EAGtB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAA0B,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAEL,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,8BAA8B,GAI/B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,iBAAiB,GAIlB,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,oCAAoC,EACpC,8BAA8B,EAC9B,eAAe,EACf,gBAAgB,EAChB,+BAA+B,EAC/B,kBAAkB,EAClB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAEL,sBAAsB,EAGtB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAA0B,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAEL,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,8BAA8B,GAI/B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,iBAAiB,GAIlB,MAAM,aAAa,CAAC"}
|
|
@@ -14,6 +14,8 @@ export interface AccessTokenClaims {
|
|
|
14
14
|
readonly timeZone?: string;
|
|
15
15
|
/** Space-delimited scopes, when any. */
|
|
16
16
|
readonly scope?: string;
|
|
17
|
+
/** Canonical customer roles verified by a configured bridge claim mapping. */
|
|
18
|
+
readonly roles?: readonly string[];
|
|
17
19
|
/** Verified upstream authentication event time as a JWT NumericDate in integer seconds. */
|
|
18
20
|
readonly authTime?: number;
|
|
19
21
|
/** Boundary represented by the token. Absent means the normal Noodle platform identity boundary. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt-issuer.d.ts","sourceRoot":"","sources":["../src/jwt-issuer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,WAAW,iBAAiB;IAChC,0FAA0F;IAC1F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qGAAqG;IACrG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,sCAAsC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,2FAA2F;IAC3F,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,oGAAoG;IACpG,QAAQ,CAAC,YAAY,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IAChD,mGAAmG;IACnG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,gGAAgG;IAChG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,mDAAmD;IACnD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"jwt-issuer.d.ts","sourceRoot":"","sources":["../src/jwt-issuer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,WAAW,iBAAiB;IAChC,0FAA0F;IAC1F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qGAAqG;IACrG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,sCAAsC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,8EAA8E;IAC9E,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,2FAA2F;IAC3F,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,oGAAoG;IACpG,QAAQ,CAAC,YAAY,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IAChD,mGAAmG;IACnG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,gGAAgG;IAChG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,mDAAmD;IACnD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,kBAAkB,EAC5B,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAwBjB"}
|
|
@@ -13,6 +13,7 @@ export async function mintAccessToken(provider, claims, ttlSeconds) {
|
|
|
13
13
|
...(claims.locale !== undefined ? { locale: claims.locale } : {}),
|
|
14
14
|
...(claims.timeZone !== undefined ? { zoneinfo: claims.timeZone } : {}),
|
|
15
15
|
...(claims.scope !== undefined ? { scope: claims.scope } : {}),
|
|
16
|
+
...(claims.roles !== undefined ? { noodle_roles: [...claims.roles] } : {}),
|
|
16
17
|
...(claims.authTime !== undefined ? { auth_time: claims.authTime } : {}),
|
|
17
18
|
...(claims.identityKind !== undefined ? { noodle_identity: claims.identityKind } : {}),
|
|
18
19
|
...(claims.identityProvider !== undefined
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt-issuer.js","sourceRoot":"","sources":["../src/jwt-issuer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"jwt-issuer.js","sourceRoot":"","sources":["../src/jwt-issuer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAgC/B;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAA4B,EAC5B,MAAyB,EACzB,UAAkB;IAElB,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC;QACtB,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,GAAG,CAAC,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,GAAG,CAAC,MAAM,CAAC,gBAAgB,KAAK,SAAS;YACvC,CAAC,CAAC,EAAE,wBAAwB,EAAE,MAAM,CAAC,gBAAgB,EAAE;YACvD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnF,CAAC;SACC,kBAAkB,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;SACjE,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;SACxB,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;SAC1B,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;SAC5B,WAAW,EAAE;SACb,MAAM,CAAC,UAAU,EAAE,CAAC;SACpB,iBAAiB,CAAC,GAAG,UAAU,GAAG,CAAC,CAAC;IACvC,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAClC,CAAC"}
|
|
@@ -11,11 +11,14 @@ export interface ProtectedResourceMetadata {
|
|
|
11
11
|
readonly authorization_servers?: readonly string[];
|
|
12
12
|
/** How the bearer token may be presented. Noodle accepts the `Authorization` header only. */
|
|
13
13
|
readonly bearer_methods_supported?: readonly string[];
|
|
14
|
+
/** Deterministic union of OAuth scopes used by protected operations on this resource. */
|
|
15
|
+
readonly scopes_supported?: readonly string[];
|
|
14
16
|
}
|
|
15
17
|
/** Build the protected-resource-metadata document for one resource. */
|
|
16
18
|
export declare function protectedResourceMetadata(input: {
|
|
17
19
|
readonly resource: string;
|
|
18
20
|
readonly authorizationServers?: readonly string[];
|
|
21
|
+
readonly scopesSupported?: readonly string[];
|
|
19
22
|
}): ProtectedResourceMetadata;
|
|
20
23
|
/**
|
|
21
24
|
* Construct the RFC 9728 protected-resource-metadata URL for a resource URL: the well-known prefix is
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,yBAAyB;IACxC,uGAAuG;IACvG,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,uGAAuG;IACvG,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnD,6FAA6F;IAC7F,QAAQ,CAAC,wBAAwB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,yBAAyB;IACxC,uGAAuG;IACvG,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,uGAAuG;IACvG,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnD,6FAA6F;IAC7F,QAAQ,CAAC,wBAAwB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtD,yFAAyF;IACzF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC/C;AAED,uEAAuE;AACvE,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAC/C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClD,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9C,GAAG,yBAAyB,CAW5B;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,GAAG,GAAG,GAAG,MAAM,CAG3E"}
|
|
@@ -5,6 +5,9 @@ export function protectedResourceMetadata(input) {
|
|
|
5
5
|
...(input.authorizationServers && input.authorizationServers.length > 0
|
|
6
6
|
? { authorization_servers: input.authorizationServers }
|
|
7
7
|
: {}),
|
|
8
|
+
...(input.scopesSupported && input.scopesSupported.length > 0
|
|
9
|
+
? { scopes_supported: input.scopesSupported }
|
|
10
|
+
: {}),
|
|
8
11
|
bearer_methods_supported: ['header'],
|
|
9
12
|
};
|
|
10
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAiBA,uEAAuE;AACvE,MAAM,UAAU,yBAAyB,CAAC,KAIzC;IACC,OAAO;QACL,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,GAAG,CAAC,KAAK,CAAC,oBAAoB,IAAI,KAAK,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC;YACrE,CAAC,CAAC,EAAE,qBAAqB,EAAE,KAAK,CAAC,oBAAoB,EAAE;YACvD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC;YAC3D,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,eAAe,EAAE;YAC7C,CAAC,CAAC,EAAE,CAAC;QACP,wBAAwB,EAAE,CAAC,QAAQ,CAAC;KACrC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAAC,QAAsB;IACjE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC9B,OAAO,GAAG,GAAG,CAAC,MAAM,wCAAwC,GAAG,CAAC,QAAQ,EAAE,CAAC;AAC7E,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { JWTVerifyGetKey } from 'jose';
|
|
2
|
+
import { type AuthorizationClaimMap } from './claims.js';
|
|
2
3
|
/**
|
|
3
4
|
* A verified end-user identity, derived from a validated access token. This is **claims only** — the raw
|
|
4
5
|
* bearer token dies at the verifier and never crosses into execution (ADR 0005 / 0018). It is the minimum
|
|
@@ -9,6 +10,8 @@ export interface VerifiedIdentity {
|
|
|
9
10
|
readonly subject: string;
|
|
10
11
|
/** OAuth scopes carried by the token (empty when none). */
|
|
11
12
|
readonly scopes: readonly string[];
|
|
13
|
+
/** Trusted application roles carried by an explicitly mapped or Noodle-owned private claim. */
|
|
14
|
+
readonly roles: readonly string[];
|
|
12
15
|
/** The token's audience (RFC 8707 resource binding), when present. */
|
|
13
16
|
readonly audience?: string;
|
|
14
17
|
/** The end-user email, when the token carries one. */
|
|
@@ -40,6 +43,10 @@ export interface JwtVerifierConfig {
|
|
|
40
43
|
* a future static/KMS signer use to validate without a live JWKS endpoint.
|
|
41
44
|
*/
|
|
42
45
|
readonly keyResolver?: JWTVerifyGetKey;
|
|
46
|
+
/** Explicit customer-IdP claim paths. Generic role claims are never trusted without this mapping. */
|
|
47
|
+
readonly claims?: AuthorizationClaimMap;
|
|
48
|
+
/** Trust Noodle's private role claim. Disable for tokens signed by an external customer issuer. */
|
|
49
|
+
readonly trustNoodleRoles?: boolean;
|
|
43
50
|
}
|
|
44
51
|
/**
|
|
45
52
|
* Verify an access token and return its identity, or `null` if the token is missing/invalid/expired. When a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,eAAe,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,eAAe,EAAE,MAAM,MAAM,CAAC;AAExD,OAAO,EACL,KAAK,qBAAqB,EAI3B,MAAM,aAAa,CAAC;AAErB;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6FAA6F;IAC7F,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,+FAA+F;IAC/F,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,2FAA2F;IAC3F,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,oGAAoG;IACpG,QAAQ,CAAC,YAAY,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IAChD,mGAAmG;IACnG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,uEAAuE;IACvE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,0DAA0D;IAC1D,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAChC,kFAAkF;IAClF,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qGAAqG;IACrG,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,eAAe,CAAC;IACvC,qGAAqG;IACrG,QAAQ,CAAC,MAAM,CAAC,EAAE,qBAAqB,CAAC;IACxC,mGAAmG;IACnG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACrC;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;AAEnG;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,aAAa,CAc1E"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createRemoteJWKSet, jwtVerify } from 'jose';
|
|
2
|
+
import { projectMappedAuthorizationClaim, projectNoodleRoles, projectStandardScopes, } from './claims.js';
|
|
2
3
|
/**
|
|
3
4
|
* Build a {@link TokenVerifier} backed by `jose` (ADR 0023). Validates the signature (via JWKS or an injected
|
|
4
5
|
* resolver), the issuer, expiry, and — when a `resource` is given at call time — the audience. Any failure
|
|
@@ -12,7 +13,7 @@ export function createJwtVerifier(config) {
|
|
|
12
13
|
issuer: config.issuer,
|
|
13
14
|
...(resource !== undefined ? { audience: resource } : {}),
|
|
14
15
|
});
|
|
15
|
-
return toIdentity(payload);
|
|
16
|
+
return toIdentity(payload, config.claims, config.trustNoodleRoles !== false);
|
|
16
17
|
}
|
|
17
18
|
catch {
|
|
18
19
|
return null;
|
|
@@ -25,7 +26,7 @@ function requireJwksUri(config) {
|
|
|
25
26
|
}
|
|
26
27
|
return config.jwksUri;
|
|
27
28
|
}
|
|
28
|
-
function toIdentity(payload) {
|
|
29
|
+
function toIdentity(payload, claims, trustNoodleRoles) {
|
|
29
30
|
if (typeof payload.sub !== 'string' || payload.sub.length === 0)
|
|
30
31
|
return null;
|
|
31
32
|
const aud = Array.isArray(payload.aud) ? payload.aud[0] : payload.aud;
|
|
@@ -38,7 +39,14 @@ function toIdentity(payload) {
|
|
|
38
39
|
return null;
|
|
39
40
|
return {
|
|
40
41
|
subject: payload.sub,
|
|
41
|
-
scopes:
|
|
42
|
+
scopes: claims?.scopes === undefined
|
|
43
|
+
? projectStandardScopes(payload)
|
|
44
|
+
: projectMappedAuthorizationClaim(payload, claims.scopes, 'scope'),
|
|
45
|
+
roles: claims?.roles !== undefined
|
|
46
|
+
? projectMappedAuthorizationClaim(payload, claims.roles, 'role')
|
|
47
|
+
: trustNoodleRoles
|
|
48
|
+
? projectNoodleRoles(payload)
|
|
49
|
+
: [],
|
|
42
50
|
...(typeof aud === 'string' ? { audience: aud } : {}),
|
|
43
51
|
...(typeof payload.email === 'string' ? { email: payload.email } : {}),
|
|
44
52
|
...(locale !== undefined ? { locale } : {}),
|
|
@@ -95,14 +103,4 @@ function canonicalTimeZone(value) {
|
|
|
95
103
|
return undefined;
|
|
96
104
|
}
|
|
97
105
|
}
|
|
98
|
-
function parseScopes(payload) {
|
|
99
|
-
const raw = payload.scope ??
|
|
100
|
-
payload.scp ??
|
|
101
|
-
payload.scopes;
|
|
102
|
-
if (typeof raw === 'string')
|
|
103
|
-
return raw.split(' ').filter((s) => s.length > 0);
|
|
104
|
-
if (Array.isArray(raw))
|
|
105
|
-
return raw.filter((s) => typeof s === 'string');
|
|
106
|
-
return [];
|
|
107
|
-
}
|
|
108
106
|
//# sourceMappingURL=verify.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../src/verify.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
export declare const annotations: {
|
|
2
|
+
readonly readOnly: (options?: {
|
|
3
|
+
readonly openWorld?: boolean;
|
|
4
|
+
readonly idempotent?: boolean;
|
|
5
|
+
}) => {
|
|
6
|
+
readOnlyHint: boolean;
|
|
7
|
+
destructiveHint: boolean;
|
|
8
|
+
idempotentHint: boolean;
|
|
9
|
+
openWorldHint: boolean;
|
|
10
|
+
};
|
|
11
|
+
readonly action: (options?: {
|
|
12
|
+
readonly destructive?: boolean;
|
|
13
|
+
readonly openWorld?: boolean;
|
|
14
|
+
/** Suspend for runtime-enforced approval only when explicitly true. */
|
|
15
|
+
readonly confirm?: boolean;
|
|
16
|
+
}) => {
|
|
17
|
+
readOnlyHint: boolean;
|
|
18
|
+
destructiveHint: boolean;
|
|
19
|
+
openWorldHint: boolean;
|
|
20
|
+
confirm: boolean | undefined;
|
|
21
|
+
};
|
|
22
|
+
readonly localAction: (options?: {
|
|
23
|
+
readonly destructive?: boolean;
|
|
24
|
+
/** Suspend for runtime-enforced approval only when explicitly true. */
|
|
25
|
+
readonly confirm?: boolean;
|
|
26
|
+
}) => {
|
|
27
|
+
readOnlyHint: boolean;
|
|
28
|
+
destructiveHint: boolean;
|
|
29
|
+
idempotentHint: boolean;
|
|
30
|
+
openWorldHint: boolean;
|
|
31
|
+
confirm: boolean | undefined;
|
|
32
|
+
};
|
|
33
|
+
readonly openAction: (options?: {
|
|
34
|
+
readonly destructive?: boolean;
|
|
35
|
+
/** Suspend for runtime-enforced approval only when explicitly true. */
|
|
36
|
+
readonly confirm?: boolean;
|
|
37
|
+
}) => {
|
|
38
|
+
readOnlyHint: boolean;
|
|
39
|
+
destructiveHint: boolean;
|
|
40
|
+
idempotentHint: boolean;
|
|
41
|
+
openWorldHint: boolean;
|
|
42
|
+
confirm: boolean | undefined;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=annotations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../src/annotations.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;kCACJ;QAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE;;;;;;gCAStE;QACP,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAC7B,uEAAuE;QACvE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;KAC5B;;;;;;qCAUQ;QACP,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAC/B,uEAAuE;QACvE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;KAC5B;;;;;;;oCAWQ;QACP,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAC/B,uEAAuE;QACvE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;KAC5B;;;;;;;CAUK,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export const annotations = {
|
|
2
|
+
readOnly(options = {}) {
|
|
3
|
+
return compactAnnotations({
|
|
4
|
+
readOnlyHint: true,
|
|
5
|
+
destructiveHint: false,
|
|
6
|
+
idempotentHint: options.idempotent ?? true,
|
|
7
|
+
openWorldHint: options.openWorld ?? false,
|
|
8
|
+
});
|
|
9
|
+
},
|
|
10
|
+
action(options = {}) {
|
|
11
|
+
return compactAnnotations({
|
|
12
|
+
readOnlyHint: false,
|
|
13
|
+
destructiveHint: options.destructive ?? false,
|
|
14
|
+
openWorldHint: options.openWorld ?? true,
|
|
15
|
+
confirm: options.confirm,
|
|
16
|
+
});
|
|
17
|
+
},
|
|
18
|
+
localAction(options = {}) {
|
|
19
|
+
return compactAnnotations({
|
|
20
|
+
readOnlyHint: false,
|
|
21
|
+
destructiveHint: options.destructive ?? true,
|
|
22
|
+
idempotentHint: false,
|
|
23
|
+
openWorldHint: false,
|
|
24
|
+
confirm: options.confirm,
|
|
25
|
+
});
|
|
26
|
+
},
|
|
27
|
+
openAction(options = {}) {
|
|
28
|
+
return compactAnnotations({
|
|
29
|
+
readOnlyHint: false,
|
|
30
|
+
destructiveHint: options.destructive ?? false,
|
|
31
|
+
idempotentHint: false,
|
|
32
|
+
openWorldHint: true,
|
|
33
|
+
confirm: options.confirm,
|
|
34
|
+
});
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
function compactAnnotations(value) {
|
|
38
|
+
return Object.fromEntries(Object.entries(value).filter(([, item]) => item !== undefined));
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=annotations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"annotations.js","sourceRoot":"","sources":["../src/annotations.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,QAAQ,CAAC,UAA2E,EAAE;QACpF,OAAO,kBAAkB,CAAC;YACxB,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;YAC1C,aAAa,EAAE,OAAO,CAAC,SAAS,IAAI,KAAK;SAC1C,CAAC,CAAC;IACL,CAAC;IACD,MAAM,CACJ,UAKI,EAAE;QAEN,OAAO,kBAAkB,CAAC;YACxB,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,OAAO,CAAC,WAAW,IAAI,KAAK;YAC7C,aAAa,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;YACxC,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAC;IACL,CAAC;IACD,WAAW,CACT,UAII,EAAE;QAEN,OAAO,kBAAkB,CAAC;YACxB,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI;YAC5C,cAAc,EAAE,KAAK;YACrB,aAAa,EAAE,KAAK;YACpB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAC;IACL,CAAC;IACD,UAAU,CACR,UAII,EAAE;QAEN,OAAO,kBAAkB,CAAC;YACxB,YAAY,EAAE,KAAK;YACnB,eAAe,EAAE,OAAO,CAAC,WAAW,IAAI,KAAK;YAC7C,cAAc,EAAE,KAAK;YACrB,aAAa,EAAE,IAAI;YACnB,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAC;IACL,CAAC;CACO,CAAC;AAEX,SAAS,kBAAkB,CAAoC,KAAQ;IACrE,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,CAAC,CAAM,CAAC;AACjG,CAAC"}
|
|
@@ -11,7 +11,7 @@ export { gmailConnector } from './gmail.js';
|
|
|
11
11
|
export { type HandoffPurpose, type HandoffSession, type HandoffStateHandleLink, handoffSession, } from './handoff.js';
|
|
12
12
|
export { noodlePlatform, noodlePlatformCatalog } from './platform.js';
|
|
13
13
|
export { type Cond, type ConnectorClient, type Ref, type SymbolicScope, when, } from './recording.js';
|
|
14
|
-
export { annotations, asset, type BrandThemeTokens, type ElicitationOptions, isServerDefinition, type PromptArgument, type PromptOptions, prompt, type ResourceContext, type ResourceFulfilResult, type ResourceOptions, resource, type ServerComponent, type ServerDefinition, type ServerOptions, server, type ToolContext, type ToolOptions, type ToolViewOptions, tool, type WidgetCsp, type WidgetPermissionGrant, type WidgetPermissions, widgetResult, } from './server.js';
|
|
14
|
+
export { annotations, asset, type BrandThemeTokens, type ElicitationOptions, isServerDefinition, type PromptArgument, type PromptOptions, prompt, type ResourceContext, type ResourceFulfilResult, type ResourceOptions, resource, type ServerComponent, type ServerDefinition, type ServerOptions, server, type ToolAuthorizationOptions, type ToolContext, type ToolOptions, type ToolViewOptions, tool, type WidgetCsp, type WidgetPermissionGrant, type WidgetPermissions, widgetResult, } from './server.js';
|
|
15
15
|
export type { ConnectorFile, HttpConnectorDef };
|
|
16
16
|
export { z };
|
|
17
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,YAAY,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,iBAAiB,EACjB,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,MAAM,EACN,QAAQ,GACT,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,iBAAiB,EACtB,IAAI,EACJ,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,UAAU,EACV,gBAAgB,EAChB,KAAK,4BAA4B,EACjC,sBAAsB,EACtB,aAAa,GACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC5B,gBAAgB,EAChB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,YAAY,EACjB,SAAS,EACT,KAAK,oBAAoB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,YAAY,EACZ,KAAK,mBAAmB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EACL,KAAK,IAAI,EACT,KAAK,eAAe,EACpB,KAAK,GAAG,EACR,KAAK,aAAa,EAClB,IAAI,GACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,KAAK,EACL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,MAAM,EACN,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,IAAI,EACJ,KAAK,SAAS,EACd,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;AAChD,OAAO,EAAE,CAAC,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,YAAY,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,4BAA4B,EACjC,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,iBAAiB,EACjB,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,MAAM,EACN,QAAQ,GACT,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,iBAAiB,EACtB,IAAI,EACJ,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,iBAAiB,EACjB,UAAU,EACV,gBAAgB,EAChB,KAAK,4BAA4B,EACjC,sBAAsB,EACtB,aAAa,GACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC5B,gBAAgB,EAChB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,YAAY,EACjB,SAAS,EACT,KAAK,oBAAoB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,oBAAoB,EACzB,YAAY,EACZ,KAAK,mBAAmB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EACL,KAAK,IAAI,EACT,KAAK,eAAe,EACpB,KAAK,GAAG,EACR,KAAK,aAAa,EAClB,IAAI,GACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,KAAK,EACL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,MAAM,EACN,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,eAAe,EACpB,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,MAAM,EACN,KAAK,wBAAwB,EAC7B,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,IAAI,EACJ,KAAK,SAAS,EACd,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;AAChD,OAAO,EAAE,CAAC,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAUL,iBAAiB,EAGjB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAGL,MAAM,EACN,QAAQ,GACT,MAAM,aAAa,CAAC;AACrB,OAAO,EAEL,IAAI,EAIJ,iBAAiB,EACjB,UAAU,EACV,gBAAgB,EAEhB,sBAAsB,EACtB,aAAa,GACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAIL,gBAAgB,EAKhB,SAAS,GAEV,MAAM,iBAAiB,CAAC;AAMzB,OAAO,EAGL,YAAY,GAEb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAIL,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAKL,IAAI,GACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,KAAK,EAGL,kBAAkB,EAGlB,MAAM,EAIN,QAAQ,EAIR,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAUL,iBAAiB,EAGjB,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAGL,MAAM,EACN,QAAQ,GACT,MAAM,aAAa,CAAC;AACrB,OAAO,EAEL,IAAI,EAIJ,iBAAiB,EACjB,UAAU,EACV,gBAAgB,EAEhB,sBAAsB,EACtB,aAAa,GACd,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAIL,gBAAgB,EAKhB,SAAS,GAEV,MAAM,iBAAiB,CAAC;AAMzB,OAAO,EAGL,YAAY,GAEb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAIL,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAKL,IAAI,GACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,KAAK,EAGL,kBAAkB,EAGlB,MAAM,EAIN,QAAQ,EAIR,MAAM,EAKN,IAAI,EAIJ,YAAY,GACb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,CAAC,EAAE,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Manifest, PackagedAssetReference } from '@noodle-borg/compiler';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import type { EmbeddedAssistantConfig } from './assistant.js';
|
|
4
|
+
export { annotations } from './annotations.js';
|
|
4
5
|
import { type ConnectorCatalogDoc, type ConnectorRef } from './connectors.js';
|
|
5
6
|
import { type ServerContextOptions } from './context.js';
|
|
6
7
|
import type { CustomerAuth } from './customer-auth.js';
|
|
@@ -114,6 +115,8 @@ export interface ToolOptions {
|
|
|
114
115
|
/** Human-readable action name shown by MCP hosts and confirmation surfaces. */
|
|
115
116
|
readonly title?: string;
|
|
116
117
|
readonly description: string;
|
|
118
|
+
/** Verified caller claims required to discover and invoke this tool. */
|
|
119
|
+
readonly authorization?: ToolAuthorizationOptions;
|
|
117
120
|
/** Designate this ordinary zero-input MCP tool as the application context provider. */
|
|
118
121
|
readonly contextProvider?: true;
|
|
119
122
|
readonly input: JsonSchema | z.ZodType;
|
|
@@ -138,6 +141,12 @@ export interface ToolOptions {
|
|
|
138
141
|
readonly permissions?: WidgetPermissions;
|
|
139
142
|
readonly fulfil: (ctx: ToolContext) => unknown | Promise<unknown>;
|
|
140
143
|
}
|
|
144
|
+
export interface ToolAuthorizationOptions {
|
|
145
|
+
/** Every scope must be present on the verified caller. */
|
|
146
|
+
readonly requiredScopes?: readonly string[];
|
|
147
|
+
/** At least one role must be present on the verified caller. */
|
|
148
|
+
readonly allowedRoles?: readonly string[];
|
|
149
|
+
}
|
|
141
150
|
export interface ToolContext {
|
|
142
151
|
readonly input: SymbolicScope;
|
|
143
152
|
readonly user: SymbolicScope;
|
|
@@ -222,50 +231,6 @@ export type ToolViewOptions = {
|
|
|
222
231
|
readonly component?: never;
|
|
223
232
|
readonly entry?: never;
|
|
224
233
|
};
|
|
225
|
-
export declare const annotations: {
|
|
226
|
-
readonly readOnly: (options?: {
|
|
227
|
-
readonly openWorld?: boolean;
|
|
228
|
-
readonly idempotent?: boolean;
|
|
229
|
-
}) => {
|
|
230
|
-
readOnlyHint: boolean;
|
|
231
|
-
destructiveHint: boolean;
|
|
232
|
-
idempotentHint: boolean;
|
|
233
|
-
openWorldHint: boolean;
|
|
234
|
-
};
|
|
235
|
-
readonly action: (options?: {
|
|
236
|
-
readonly destructive?: boolean;
|
|
237
|
-
readonly openWorld?: boolean;
|
|
238
|
-
/** Suspend for runtime-enforced approval only when explicitly true. */
|
|
239
|
-
readonly confirm?: boolean;
|
|
240
|
-
}) => {
|
|
241
|
-
readOnlyHint: boolean;
|
|
242
|
-
destructiveHint: boolean;
|
|
243
|
-
openWorldHint: boolean;
|
|
244
|
-
confirm: boolean | undefined;
|
|
245
|
-
};
|
|
246
|
-
readonly localAction: (options?: {
|
|
247
|
-
readonly destructive?: boolean;
|
|
248
|
-
/** Suspend for runtime-enforced approval only when explicitly true. */
|
|
249
|
-
readonly confirm?: boolean;
|
|
250
|
-
}) => {
|
|
251
|
-
readOnlyHint: boolean;
|
|
252
|
-
destructiveHint: boolean;
|
|
253
|
-
idempotentHint: boolean;
|
|
254
|
-
openWorldHint: boolean;
|
|
255
|
-
confirm: boolean | undefined;
|
|
256
|
-
};
|
|
257
|
-
readonly openAction: (options?: {
|
|
258
|
-
readonly destructive?: boolean;
|
|
259
|
-
/** Suspend for runtime-enforced approval only when explicitly true. */
|
|
260
|
-
readonly confirm?: boolean;
|
|
261
|
-
}) => {
|
|
262
|
-
readOnlyHint: boolean;
|
|
263
|
-
destructiveHint: boolean;
|
|
264
|
-
idempotentHint: boolean;
|
|
265
|
-
openWorldHint: boolean;
|
|
266
|
-
confirm: boolean | undefined;
|
|
267
|
-
};
|
|
268
|
-
};
|
|
269
234
|
interface CanonicalToolDefinition {
|
|
270
235
|
readonly kind: 'tool';
|
|
271
236
|
readonly name: string;
|
|
@@ -309,5 +274,4 @@ export declare function widgetResult<T extends Record<string, unknown>>(options:
|
|
|
309
274
|
}): T & {
|
|
310
275
|
readonly __noodleResultMeta: Record<string, unknown>;
|
|
311
276
|
};
|
|
312
|
-
export {};
|
|
313
277
|
//# sourceMappingURL=server.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|