@xemahq/identity-client 0.9.8 → 0.10.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/README.md +41 -0
- package/dist/client.d.ts +10 -1
- package/dist/client.js +13 -0
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/nestjs/identity-bootstrap.service.d.ts +4 -0
- package/dist/nestjs/identity-bootstrap.service.js +46 -1
- package/dist/nestjs/identity-bootstrap.service.js.map +1 -1
- package/dist/types.d.ts +28 -0
- package/dist/types.js +6 -1
- package/dist/types.js.map +1 -1
- package/dist/workload-context.d.ts +27 -0
- package/dist/workload-context.js +122 -0
- package/dist/workload-context.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -316,6 +316,47 @@ try {
|
|
|
316
316
|
}
|
|
317
317
|
```
|
|
318
318
|
|
|
319
|
+
## Workload mode (attested identity, no client secret)
|
|
320
|
+
|
|
321
|
+
A workload that holds a platform attestation — a Kubernetes projected
|
|
322
|
+
ServiceAccount token, a SPIFFE JWT-SVID, an OIDC federated credential — can
|
|
323
|
+
obtain its own short-lived principal context from the identity boundary
|
|
324
|
+
instead of holding any client credential:
|
|
325
|
+
|
|
326
|
+
```typescript
|
|
327
|
+
import { fileCredentialReader } from '@xemahq/identity-client';
|
|
328
|
+
|
|
329
|
+
IdentityBootstrapModule.forRootAsync({
|
|
330
|
+
inject: [ConfigService],
|
|
331
|
+
useFactory: (config: ConfigService) => ({
|
|
332
|
+
identityApiInternalToken: '',
|
|
333
|
+
serviceName: 'report-worker',
|
|
334
|
+
serviceDisplayName: 'Report worker',
|
|
335
|
+
workloadContext: {
|
|
336
|
+
identityApiUrl: config.getOrThrow('IDENTITY_API_URL'),
|
|
337
|
+
realm: config.getOrThrow('IDENTITY_REALM'),
|
|
338
|
+
audience: 'platform', // a trust domain the realm declares
|
|
339
|
+
readCredential: fileCredentialReader('/var/run/secrets/tokens/identity'),
|
|
340
|
+
},
|
|
341
|
+
}),
|
|
342
|
+
});
|
|
343
|
+
```
|
|
344
|
+
|
|
345
|
+
`getAccessToken()` then returns the context, refreshed before it expires; the
|
|
346
|
+
attestation file is re-read on every refresh because the platform rotates it.
|
|
347
|
+
Every failure throws `WorkloadContextError` — nothing falls back to another
|
|
348
|
+
credential — and the provider-credential features (`getAccessTokenForAudience`,
|
|
349
|
+
`getScopedAccessToken`, `getUserAccessToken`, `mintScopedClaimToken`) refuse
|
|
350
|
+
in this mode. `isMember` and `listOrgIds` present the workload context to
|
|
351
|
+
identity-api, which accepts it when the realm declares an `internalTrustDomain`
|
|
352
|
+
and refuses it (thrown as `IdentityApiError`) when it does not. The workload must be bound to a
|
|
353
|
+
service principal (`WorkloadIdentityBinding`) or the boundary refuses it.
|
|
354
|
+
|
|
355
|
+
`WorkloadContextSource` is also exported for use without NestJS.
|
|
356
|
+
|
|
357
|
+
The provider client-credentials mode below is a declared migration state: it is
|
|
358
|
+
retired once every receiver trusts only the identity boundary.
|
|
359
|
+
|
|
319
360
|
## Pre-configured Credentials
|
|
320
361
|
|
|
321
362
|
For production multi-replica deployments, you can skip auto-registration by providing credentials via environment variables. This avoids the secret regeneration race condition when multiple pods start simultaneously.
|
package/dist/client.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CreateOrganizationRequest, EnsureSystemOrgRequest, EnsureSystemOrgResult, IdentityApiClientOptions, DelegatedPrincipalTokenRequest, DelegatedPrincipalTokenResponse, OnBehalfOfTokenRequest, OnBehalfOfTokenResponse, OrganizationListParams, OrganizationListResponse, OrganizationMemberListParams, OrganizationMemberListResponse, OrganizationRecord, RegisterServiceRequest, RegisterServiceResponse, ScopedClaimGrantRequest, ScopedClaimGrantResponse, ScopedClaimTokenRequest, ScopedClaimTokenResponse, ServiceCredentials, SystemOrgRecord, UpdateOrganizationRequest, VerifyMembershipResponse } from './types';
|
|
1
|
+
import type { CreateOrganizationRequest, EnsureSystemOrgRequest, EnsureSystemOrgResult, IdentityApiClientOptions, DelegatedPrincipalTokenRequest, DelegatedPrincipalTokenResponse, OnBehalfOfTokenRequest, OnBehalfOfTokenResponse, OrganizationListParams, OrganizationListResponse, OrganizationMemberListParams, OrganizationMemberListResponse, OrganizationRecord, RegisterServiceRequest, RegisterServiceResponse, CreateDelegationRequest, DelegatedContextResponse, DelegationRecordResponse, ScopedClaimGrantRequest, ScopedClaimGrantResponse, ScopedClaimTokenRequest, ScopedClaimTokenResponse, ServiceCredentials, SystemOrgRecord, UpdateOrganizationRequest, VerifyMembershipResponse } from './types';
|
|
2
2
|
export declare class IdentityApiClient {
|
|
3
3
|
private readonly baseUrl;
|
|
4
4
|
private readonly internalToken;
|
|
@@ -16,6 +16,7 @@ export declare class IdentityApiClient {
|
|
|
16
16
|
getSystemOrg(name: string): Promise<SystemOrgRecord>;
|
|
17
17
|
listOrgIds(realm: string): Promise<string[]>;
|
|
18
18
|
listOrganizations(realm: string, params?: OrganizationListParams): Promise<OrganizationListResponse>;
|
|
19
|
+
listPrincipalOrganizations(principalId: string, realm?: string): Promise<OrganizationRecord[]>;
|
|
19
20
|
getOrganization(id: string, realm: string): Promise<OrganizationRecord>;
|
|
20
21
|
createOrganization(input: CreateOrganizationRequest): Promise<OrganizationRecord>;
|
|
21
22
|
updateOrganization(id: string, input: UpdateOrganizationRequest): Promise<OrganizationRecord>;
|
|
@@ -25,6 +26,14 @@ export declare class IdentityApiClient {
|
|
|
25
26
|
grantScopedClaim(request: ScopedClaimGrantRequest): Promise<ScopedClaimGrantResponse>;
|
|
26
27
|
revokeScopedClaim(request: ScopedClaimGrantRequest): Promise<void>;
|
|
27
28
|
mintScopedClaimToken(request: ScopedClaimTokenRequest): Promise<ScopedClaimTokenResponse>;
|
|
29
|
+
createDelegation(request: CreateDelegationRequest): Promise<DelegationRecordResponse>;
|
|
30
|
+
mintDelegatedContext(delegationId: string, audience: string, realm?: string): Promise<DelegatedContextResponse>;
|
|
31
|
+
revokeDelegation(delegationId: string, options?: {
|
|
32
|
+
subjectContext?: string;
|
|
33
|
+
realm?: string;
|
|
34
|
+
}): Promise<{
|
|
35
|
+
revoked: number;
|
|
36
|
+
}>;
|
|
28
37
|
private get;
|
|
29
38
|
private post;
|
|
30
39
|
private patch;
|
package/dist/client.js
CHANGED
|
@@ -112,6 +112,10 @@ class IdentityApiClient {
|
|
|
112
112
|
}
|
|
113
113
|
return this.getEnvelope(`/internal/organizations?${search.toString()}`);
|
|
114
114
|
}
|
|
115
|
+
async listPrincipalOrganizations(principalId, realm) {
|
|
116
|
+
const query = realm ? `?realm=${encodeURIComponent(realm)}` : '';
|
|
117
|
+
return this.get(`/internal/principals/${encodeURIComponent(principalId)}/organizations${query}`);
|
|
118
|
+
}
|
|
115
119
|
async getOrganization(id, realm) {
|
|
116
120
|
const search = new URLSearchParams({ realm });
|
|
117
121
|
return this.get(`/internal/organizations/${encodeURIComponent(id)}?${search.toString()}`);
|
|
@@ -141,6 +145,15 @@ class IdentityApiClient {
|
|
|
141
145
|
async mintScopedClaimToken(request) {
|
|
142
146
|
return this.post('/internal/scoped-claim-authority/tokens', request);
|
|
143
147
|
}
|
|
148
|
+
async createDelegation(request) {
|
|
149
|
+
return this.post('/internal/delegations', request);
|
|
150
|
+
}
|
|
151
|
+
async mintDelegatedContext(delegationId, audience, realm) {
|
|
152
|
+
return this.post(`/internal/delegations/${encodeURIComponent(delegationId)}/context`, { audience, ...(realm ? { realm } : {}) });
|
|
153
|
+
}
|
|
154
|
+
async revokeDelegation(delegationId, options = {}) {
|
|
155
|
+
return this.post(`/internal/delegations/${encodeURIComponent(delegationId)}/revoke`, options);
|
|
156
|
+
}
|
|
144
157
|
async get(path) {
|
|
145
158
|
const response = await this.request('GET', path);
|
|
146
159
|
const envelope = (await response.json());
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { PRINCIPAL_ID_CLAIM, CREDENTIAL_REVISION_CLAIM, } from './claims';
|
|
2
2
|
export { IdentityApiClient, IdentityApiError } from './client';
|
|
3
|
-
export {
|
|
4
|
-
export
|
|
3
|
+
export { WorkloadContextError, WorkloadContextSource, fileCredentialReader, type WorkloadContextConfig, } from './workload-context';
|
|
4
|
+
export { DelegationActorKind, InternalTokenScope, OrgRole, ORG_ADMIN_ROLES, SystemOrgEnsureOutcome, } from './types';
|
|
5
|
+
export type { ApiEnvelope, CreateDelegationRequest, CreateOrganizationRequest, DelegatedContextResponse, DelegationRecordResponse, DelegatedPrincipalTokenRequest, DelegatedPrincipalTokenResponse, EnsureSystemOrgRequest, EnsureSystemOrgResult, IdentityApiClientOptions, OrganizationListPagination, OrganizationListParams, OrganizationListResponse, OrganizationMemberListParams, OrganizationMemberListResponse, OrganizationDirectoryEntry, OrganizationRecord, OnBehalfOfTokenRequest, OnBehalfOfTokenResponse, RegisterServiceRequest, RegisterServiceResponse, ServiceCredentials, ServiceType, SystemOrgRecord, ScopedClaimGrantRequest, ScopedClaimGrantResponse, ScopedClaimTokenRequest, ScopedClaimTokenResponse, UpdateOrganizationRequest, VerifyMembershipParams, VerifyMembershipResponse, } from './types';
|
|
5
6
|
export { IdentityBootstrapModule, IdentityBootstrapModuleAsyncOptions, IdentityBootstrapService, IdentityBootstrapConfig, IDENTITY_BOOTSTRAP_CONFIG, type ScopedAccessToken, type TokenAcquisitionOptions, DEFAULT_TOKEN_REQUEST_TIMEOUT_MS, IdentityTokenOperation, IdentityTokenRequestTimeoutError, IdentityTokenWaitAbortedError, } from './nestjs';
|
|
6
7
|
export { OrgAuthModule, OrgAdminGuard, ORG_AUTH_CONFIG, type OrgAuthConfig, type OrgAuthModuleAsyncOptions, } from './nestjs';
|
package/dist/index.js
CHANGED
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ORG_AUTH_CONFIG = exports.OrgAdminGuard = exports.OrgAuthModule = exports.IdentityTokenWaitAbortedError = exports.IdentityTokenRequestTimeoutError = exports.IdentityTokenOperation = exports.DEFAULT_TOKEN_REQUEST_TIMEOUT_MS = exports.IDENTITY_BOOTSTRAP_CONFIG = exports.IdentityBootstrapService = exports.IdentityBootstrapModule = exports.SystemOrgEnsureOutcome = exports.ORG_ADMIN_ROLES = exports.OrgRole = exports.InternalTokenScope = exports.IdentityApiError = exports.IdentityApiClient = exports.CREDENTIAL_REVISION_CLAIM = exports.PRINCIPAL_ID_CLAIM = void 0;
|
|
3
|
+
exports.ORG_AUTH_CONFIG = exports.OrgAdminGuard = exports.OrgAuthModule = exports.IdentityTokenWaitAbortedError = exports.IdentityTokenRequestTimeoutError = exports.IdentityTokenOperation = exports.DEFAULT_TOKEN_REQUEST_TIMEOUT_MS = exports.IDENTITY_BOOTSTRAP_CONFIG = exports.IdentityBootstrapService = exports.IdentityBootstrapModule = exports.SystemOrgEnsureOutcome = exports.ORG_ADMIN_ROLES = exports.OrgRole = exports.InternalTokenScope = exports.DelegationActorKind = exports.fileCredentialReader = exports.WorkloadContextSource = exports.WorkloadContextError = exports.IdentityApiError = exports.IdentityApiClient = exports.CREDENTIAL_REVISION_CLAIM = exports.PRINCIPAL_ID_CLAIM = void 0;
|
|
4
4
|
var claims_1 = require("./claims");
|
|
5
5
|
Object.defineProperty(exports, "PRINCIPAL_ID_CLAIM", { enumerable: true, get: function () { return claims_1.PRINCIPAL_ID_CLAIM; } });
|
|
6
6
|
Object.defineProperty(exports, "CREDENTIAL_REVISION_CLAIM", { enumerable: true, get: function () { return claims_1.CREDENTIAL_REVISION_CLAIM; } });
|
|
7
7
|
var client_1 = require("./client");
|
|
8
8
|
Object.defineProperty(exports, "IdentityApiClient", { enumerable: true, get: function () { return client_1.IdentityApiClient; } });
|
|
9
9
|
Object.defineProperty(exports, "IdentityApiError", { enumerable: true, get: function () { return client_1.IdentityApiError; } });
|
|
10
|
+
var workload_context_1 = require("./workload-context");
|
|
11
|
+
Object.defineProperty(exports, "WorkloadContextError", { enumerable: true, get: function () { return workload_context_1.WorkloadContextError; } });
|
|
12
|
+
Object.defineProperty(exports, "WorkloadContextSource", { enumerable: true, get: function () { return workload_context_1.WorkloadContextSource; } });
|
|
13
|
+
Object.defineProperty(exports, "fileCredentialReader", { enumerable: true, get: function () { return workload_context_1.fileCredentialReader; } });
|
|
10
14
|
var types_1 = require("./types");
|
|
15
|
+
Object.defineProperty(exports, "DelegationActorKind", { enumerable: true, get: function () { return types_1.DelegationActorKind; } });
|
|
11
16
|
Object.defineProperty(exports, "InternalTokenScope", { enumerable: true, get: function () { return types_1.InternalTokenScope; } });
|
|
12
17
|
Object.defineProperty(exports, "OrgRole", { enumerable: true, get: function () { return types_1.OrgRole; } });
|
|
13
18
|
Object.defineProperty(exports, "ORG_ADMIN_ROLES", { enumerable: true, get: function () { return types_1.ORG_ADMIN_ROLES; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,mCAGkB;AAFhB,4GAAA,kBAAkB,OAAA;AAClB,mHAAA,yBAAyB,OAAA;AAE3B,mCAA+D;AAAtD,2GAAA,iBAAiB,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AAC5C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,mCAGkB;AAFhB,4GAAA,kBAAkB,OAAA;AAClB,mHAAA,yBAAyB,OAAA;AAE3B,mCAA+D;AAAtD,2GAAA,iBAAiB,OAAA;AAAE,0GAAA,gBAAgB,OAAA;AAC5C,uDAK4B;AAJ1B,wHAAA,oBAAoB,OAAA;AACpB,yHAAA,qBAAqB,OAAA;AACrB,wHAAA,oBAAoB,OAAA;AAGtB,iCAMiB;AALf,4GAAA,mBAAmB,OAAA;AACnB,2GAAA,kBAAkB,OAAA;AAClB,gGAAA,OAAO,OAAA;AACP,wGAAA,eAAe,OAAA;AACf,+GAAA,sBAAsB,OAAA;AAqCxB,mCAYkB;AAXhB,iHAAA,uBAAuB,OAAA;AAEvB,kHAAA,wBAAwB,OAAA;AAExB,mHAAA,yBAAyB,OAAA;AAGzB,0HAAA,gCAAgC,OAAA;AAChC,gHAAA,sBAAsB,OAAA;AACtB,0HAAA,gCAAgC,OAAA;AAChC,uHAAA,6BAA6B,OAAA;AAI/B,mCAMkB;AALhB,uGAAA,aAAa,OAAA;AACb,uGAAA,aAAa,OAAA;AACb,yGAAA,eAAe,OAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { OnModuleInit, OnModuleDestroy } from '@nestjs/common';
|
|
2
2
|
import { type ScopedClaimTokenRequest, type ScopedClaimTokenResponse } from '../types';
|
|
3
|
+
import { type WorkloadContextConfig } from '../workload-context';
|
|
3
4
|
export declare const IDENTITY_BOOTSTRAP_CONFIG: unique symbol;
|
|
4
5
|
export declare enum IdentityBringUpState {
|
|
5
6
|
NotStarted = "not_started",
|
|
@@ -9,6 +10,7 @@ export declare enum IdentityBringUpState {
|
|
|
9
10
|
Exhausted = "exhausted"
|
|
10
11
|
}
|
|
11
12
|
export interface IdentityBootstrapConfig {
|
|
13
|
+
workloadContext?: WorkloadContextConfig;
|
|
12
14
|
identityApiUrl?: string;
|
|
13
15
|
identityApiInternalToken: string;
|
|
14
16
|
serviceName: string;
|
|
@@ -37,6 +39,7 @@ export declare class IdentityBootstrapService implements OnModuleInit, OnModuleD
|
|
|
37
39
|
private readonly config;
|
|
38
40
|
private readonly logger;
|
|
39
41
|
private readonly client;
|
|
42
|
+
private readonly workload;
|
|
40
43
|
private clientId;
|
|
41
44
|
private clientSecret;
|
|
42
45
|
private tokenEndpoint;
|
|
@@ -113,6 +116,7 @@ export declare class IdentityBootstrapService implements OnModuleInit, OnModuleD
|
|
|
113
116
|
private requireIdentityApiUrl;
|
|
114
117
|
private checkCredentialRecoveryState;
|
|
115
118
|
private recordCredentialRecovery;
|
|
119
|
+
private refuseInWorkloadMode;
|
|
116
120
|
private markReady;
|
|
117
121
|
private markAttemptFailed;
|
|
118
122
|
private markExhausted;
|
|
@@ -17,6 +17,7 @@ exports.IdentityBootstrapService = exports.IdentityBringUpState = exports.IDENTI
|
|
|
17
17
|
const common_1 = require("@nestjs/common");
|
|
18
18
|
const client_1 = require("../client");
|
|
19
19
|
const types_1 = require("../types");
|
|
20
|
+
const workload_context_1 = require("../workload-context");
|
|
20
21
|
const token_acquisition_1 = require("./token-acquisition");
|
|
21
22
|
exports.IDENTITY_BOOTSTRAP_CONFIG = Symbol('IDENTITY_BOOTSTRAP_CONFIG');
|
|
22
23
|
var IdentityBringUpState;
|
|
@@ -63,6 +64,7 @@ let IdentityBootstrapService = class IdentityBootstrapService {
|
|
|
63
64
|
config;
|
|
64
65
|
logger = new common_1.Logger(IdentityBootstrapService_1.name);
|
|
65
66
|
client;
|
|
67
|
+
workload;
|
|
66
68
|
clientId = null;
|
|
67
69
|
clientSecret = null;
|
|
68
70
|
tokenEndpoint = null;
|
|
@@ -98,8 +100,12 @@ let IdentityBootstrapService = class IdentityBootstrapService {
|
|
|
98
100
|
constructor(config) {
|
|
99
101
|
this.config = config;
|
|
100
102
|
this.assertConfig();
|
|
103
|
+
this.workload =
|
|
104
|
+
config.workloadContext !== undefined
|
|
105
|
+
? new workload_context_1.WorkloadContextSource(config.workloadContext)
|
|
106
|
+
: null;
|
|
101
107
|
this.client = new client_1.IdentityApiClient({
|
|
102
|
-
baseUrl: config.identityApiUrl,
|
|
108
|
+
baseUrl: config.identityApiUrl ?? config.workloadContext?.identityApiUrl,
|
|
103
109
|
internalToken: config.identityApiInternalToken,
|
|
104
110
|
serviceTokenProvider: async () => this.isReady ? await this.getAccessToken() : null,
|
|
105
111
|
});
|
|
@@ -122,6 +128,15 @@ let IdentityBootstrapService = class IdentityBootstrapService {
|
|
|
122
128
|
}
|
|
123
129
|
};
|
|
124
130
|
requireString('serviceName', this.config.serviceName);
|
|
131
|
+
if (this.config.workloadContext !== undefined) {
|
|
132
|
+
const conflicting = ['clientId', 'clientSecret', 'tokenEndpoint', 'agentWorkerClientSecret'].filter((field) => this.config[field] !== undefined);
|
|
133
|
+
if (conflicting.length > 0) {
|
|
134
|
+
throw new Error(`[IdentityBootstrapService] Invalid IdentityBootstrapConfig: ` +
|
|
135
|
+
`workloadContext is set together with ${conflicting.join(', ')}. ` +
|
|
136
|
+
`A workload-mode service holds no provider credential; remove them.`);
|
|
137
|
+
}
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
125
140
|
const hasPreconfiguredCredentials = Boolean(this.config.clientId && this.config.clientSecret && this.config.tokenEndpoint);
|
|
126
141
|
if (!hasPreconfiguredCredentials) {
|
|
127
142
|
requireString('identityApiUrl', this.config.identityApiUrl);
|
|
@@ -164,6 +179,22 @@ let IdentityBootstrapService = class IdentityBootstrapService {
|
|
|
164
179
|
return attempt;
|
|
165
180
|
}
|
|
166
181
|
async performBringUp() {
|
|
182
|
+
if (this.workload !== null) {
|
|
183
|
+
try {
|
|
184
|
+
await this.workload.getContext();
|
|
185
|
+
const realm = this.config.workloadContext.realm;
|
|
186
|
+
this.allowedRealms = [realm];
|
|
187
|
+
this.primaryRealm = realm;
|
|
188
|
+
this.registrationTokenScope = types_1.InternalTokenScope.SINGLE_REALM;
|
|
189
|
+
this.logger.log('Workload principal context obtained from the identity boundary');
|
|
190
|
+
this.markReady();
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
catch (error) {
|
|
194
|
+
this.markAttemptFailed();
|
|
195
|
+
throw error;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
167
198
|
if (this.config.clientId &&
|
|
168
199
|
this.config.clientSecret &&
|
|
169
200
|
this.config.tokenEndpoint) {
|
|
@@ -202,6 +233,9 @@ let IdentityBootstrapService = class IdentityBootstrapService {
|
|
|
202
233
|
const { signal } = options;
|
|
203
234
|
const operation = token_acquisition_1.IdentityTokenOperation.ServiceTokenRefresh;
|
|
204
235
|
await (0, token_acquisition_1.awaitWithCallerSignal)(Promise.resolve(), operation, signal);
|
|
236
|
+
if (this.workload !== null) {
|
|
237
|
+
return (0, token_acquisition_1.awaitWithCallerSignal)(this.workload.getContext(), operation, signal);
|
|
238
|
+
}
|
|
205
239
|
if (this.accessToken && Date.now() < this.tokenExpiresAt - 30_000) {
|
|
206
240
|
return this.accessToken;
|
|
207
241
|
}
|
|
@@ -227,6 +261,7 @@ let IdentityBootstrapService = class IdentityBootstrapService {
|
|
|
227
261
|
return (0, token_acquisition_1.awaitWithCallerSignal)(refresh, operation, signal);
|
|
228
262
|
}
|
|
229
263
|
async getAccessTokenForAudience(audience) {
|
|
264
|
+
this.refuseInWorkloadMode('getAccessTokenForAudience');
|
|
230
265
|
const normalizedAudience = audience.trim();
|
|
231
266
|
if (!normalizedAudience) {
|
|
232
267
|
throw new Error('An exact non-empty audience is required');
|
|
@@ -303,6 +338,7 @@ let IdentityBootstrapService = class IdentityBootstrapService {
|
|
|
303
338
|
return promise;
|
|
304
339
|
}
|
|
305
340
|
async mintUserAccessToken(params, cacheKey, realm) {
|
|
341
|
+
this.refuseInWorkloadMode('getUserAccessToken');
|
|
306
342
|
if (!this.isReady) {
|
|
307
343
|
const ready = await this.waitForReady(30_000);
|
|
308
344
|
if (!ready) {
|
|
@@ -327,6 +363,7 @@ let IdentityBootstrapService = class IdentityBootstrapService {
|
|
|
327
363
|
return response.accessToken;
|
|
328
364
|
}
|
|
329
365
|
async mintScopedClaimToken(params) {
|
|
366
|
+
this.refuseInWorkloadMode('mintScopedClaimToken');
|
|
330
367
|
if (!this.isReady) {
|
|
331
368
|
const ready = await this.waitForReady(30_000);
|
|
332
369
|
if (!ready) {
|
|
@@ -337,6 +374,7 @@ let IdentityBootstrapService = class IdentityBootstrapService {
|
|
|
337
374
|
}
|
|
338
375
|
async getScopedAccessToken(params, options = {}) {
|
|
339
376
|
const { signal } = options;
|
|
377
|
+
this.refuseInWorkloadMode('getScopedAccessToken');
|
|
340
378
|
const operation = token_acquisition_1.IdentityTokenOperation.ScopedTokenMint;
|
|
341
379
|
await (0, token_acquisition_1.awaitWithCallerSignal)(Promise.resolve(), operation, signal);
|
|
342
380
|
const clientId = this.config.agentWorkerClientId ?? DEFAULT_AGENT_WORKER_CLIENT_ID;
|
|
@@ -796,6 +834,13 @@ let IdentityBootstrapService = class IdentityBootstrapService {
|
|
|
796
834
|
});
|
|
797
835
|
}
|
|
798
836
|
}
|
|
837
|
+
refuseInWorkloadMode(operation) {
|
|
838
|
+
if (this.workload !== null) {
|
|
839
|
+
throw new Error(`[IdentityBootstrapService] ${operation} is not available in workload ` +
|
|
840
|
+
`mode: it requires an upstream-provider client credential, which a ` +
|
|
841
|
+
`workload-mode service does not hold.`);
|
|
842
|
+
}
|
|
843
|
+
}
|
|
799
844
|
markReady() {
|
|
800
845
|
this.bringUpState = IdentityBringUpState.Ready;
|
|
801
846
|
this.settleWaiters(true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"identity-bootstrap.service.js","sourceRoot":"","sources":["../../src/nestjs/identity-bootstrap.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAMwB;AAExB,sCAAgE;AAChE,oCAIkB;AAClB,2DAM6B;AAIhB,QAAA,yBAAyB,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAuB7E,IAAY,oBAMX;AAND,WAAY,oBAAoB;IAC9B,kDAA0B,CAAA;IAC1B,kDAA0B,CAAA;IAC1B,uCAAe,CAAA;IACf,yCAAiB,CAAA;IACjB,+CAAuB,CAAA;AACzB,CAAC,EANW,oBAAoB,oCAApB,oBAAoB,QAM/B;AA+HD,MAAM,8BAA8B,GAAG,uBAAuB,CAAC;AAe/D,MAAM,2BAA2B,GAAG,WAAW,CAAC;AAgBhD,SAAS,YAAY,CACnB,QAA4B,EAC5B,iBAAyB;IAEzB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACxC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAChC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACxB,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;AAC3B,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CACxB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAClC,CAAC;QACvB,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,CAAC;QACD,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CACf,CAAC,IAAI,EAAkB,EAAE,CACvB,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CACrD;YACD,CAAC,CAAC,OAAO,CAAC,GAAG;YACb,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAcM,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;;IA0FhB;IAzFF,MAAM,GAAG,IAAI,eAAM,CAAC,0BAAwB,CAAC,IAAI,CAAC,CAAC;IACnD,MAAM,CAAoB;IAGnC,QAAQ,GAAkB,IAAI,CAAC;IAC/B,YAAY,GAAkB,IAAI,CAAC;IACnC,aAAa,GAAkB,IAAI,CAAC;IAGpC,eAAe,GAAkB,IAAI,CAAC;IACtC,aAAa,GAAa,EAAE,CAAC;IAC7B,YAAY,GAAkB,IAAI,CAAC;IACnC,sBAAsB,GAC5B,0BAAkB,CAAC,oBAAoB,CAAC;IAGlC,WAAW,GAAkB,IAAI,CAAC;IAClC,cAAc,GAAG,CAAC,CAAC;IACnB,mBAAmB,GAA2B,IAAI,CAAC;IAC1C,uBAAuB,GAAG,IAAI,GAAG,EAG/C,CAAC;IACa,0BAA0B,GAAG,IAAI,GAAG,EAGlD,CAAC;IAOI,qBAAqB,GAAG,CAAC,CAAC;IAC1B,MAAM,CAAU,oBAAoB,GAAG,MAAM,CAAC;IAC9C,MAAM,CAAU,gCAAgC,GAAG,MAAM,CAAC;IAMjD,cAAc,GAAG,IAAI,GAAG,EAGtC,CAAC;IACa,iBAAiB,GAAG,IAAI,GAAG,EAA2B,CAAC;IASvD,gBAAgB,GAAG,IAAI,GAAG,EAGxC,CAAC;IACa,mBAAmB,GAAG,IAAI,GAAG,EAG3C,CAAC;IAGI,oBAAoB,GAAG,CAAC,CAAC;IACzB,iBAAiB,GAAyC,IAAI,CAAC;IACtD,uBAAuB,CAAS;IAChC,cAAc,CAAS;IACvB,aAAa,CAAS;IACtB,qBAAqB,CAAS;IAGvC,YAAY,GAAsC,IAAI,CAAC;IACvD,YAAY,CAAmB;IAC/B,YAAY,GAAyB,oBAAoB,CAAC,UAAU,CAAC;IAMrE,eAAe,GAAyB,IAAI,CAAC;IAGrD,IAAY,OAAO;QACjB,OAAO,IAAI,CAAC,YAAY,KAAK,oBAAoB,CAAC,KAAK,CAAC;IAC1D,CAAC;IAED,YAEmB,MAA+B;QAA/B,WAAM,GAAN,MAAM,CAAyB;QAMhD,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,IAAI,CAAC,MAAM,GAAG,IAAI,0BAAiB,CAAC;YAClC,OAAO,EAAE,MAAM,CAAC,cAAc;YAC9B,aAAa,EAAE,MAAM,CAAC,wBAAwB;YAU9C,oBAAoB,EAAE,KAAK,IAAI,EAAE,CAC/B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI;SACpD,CAAC,CAAC;QAEH,IAAI,CAAC,uBAAuB,GAAG,MAAM,CAAC,uBAAuB,IAAI,QAAQ,CAAC;QAC1E,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC;QACpD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,OAAO,CAAC;QACrD,IAAI,CAAC,qBAAqB,GAAG,IAAA,gDAA4B,EACvD,MAAM,CAAC,qBAAqB,CAC7B,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE;YACnD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC;IAsBO,YAAY;QAClB,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,KAAc,EAAQ,EAAE;YAC5D,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3D,MAAM,IAAI,KAAK,CACb,8DAA8D;oBAC5D,IAAI,KAAK,oCAAoC;oBAC7C,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI;oBAChE,kEAAkE;oBAClE,qEAAqE,CACxE,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;QAEF,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAEtD,MAAM,2BAA2B,GAAG,OAAO,CACzC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,CAC9E,CAAC;QACF,IAAI,CAAC,2BAA2B,EAAE,CAAC;YACjC,aAAa,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;YAC5D,aAAa,CACX,0BAA0B,EAC1B,IAAI,CAAC,MAAM,CAAC,wBAAwB,CACrC,CAAC;YACF,aAAa,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAaD,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;IACjC,CAAC;IAID,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;IAC/B,CAAC;IAwBO,eAAe;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC;QACtC,IAAI,QAAQ,EAAE,CAAC;YAGb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,QAAQ,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1B,KAAK,oBAAoB,CAAC,KAAK;gBAG7B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,KAAK,oBAAoB,CAAC,UAAU;gBAKlC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,KAAK,oBAAoB,CAAC,SAAS;gBAGjC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YAC3B,KAAK,oBAAoB,CAAC,UAAU,CAAC;YACrC,KAAK,oBAAoB,CAAC,MAAM;gBAC9B,MAAM;QACV,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC,UAAU,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACtC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;QAI/B,KAAK,OAAO;aACT,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;aACtB,OAAO,CAAC,GAAG,EAAE;YACZ,IAAI,IAAI,CAAC,eAAe,KAAK,OAAO,EAAE,CAAC;gBACrC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC9B,CAAC;QACH,CAAC,CAAC,CAAC;QAEL,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,cAAc;QAE1B,IACE,IAAI,CAAC,MAAM,CAAC,QAAQ;YACpB,IAAI,CAAC,MAAM,CAAC,YAAY;YACxB,IAAI,CAAC,MAAM,CAAC,aAAa,EACzB,CAAC;YACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;YACrC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;YAC7C,IAAI,CAAC,6BAA6B,GAAG,KAAK,CAAC;YAC3C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;YAC/C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC;YACvD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa;gBAC5C,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;gBAC7B,CAAC,CAAC,EAAE,CAAC;YACP,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,IAAI,CAAC;YACtD,IAAI,CAAC,sBAAsB,GAAG,0BAAkB,CAAC,YAAY,CAAC;YAE9D,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,6DAA6D,CAC9D,CAAC;gBACF,IAAI,CAAC,SAAS,EAAE,CAAC;gBACjB,OAAO;YACT,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAKf,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzB,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACnE,MAAM,IAAI,KAAK,CACb,2DAA2D,GAAG,IAAI;oBAChE,8DAA8D,CACjE,CAAC;YACJ,CAAC;QACH,CAAC;QAGD,IAAI,CAAC,2BAA2B,EAAE,CAAC;IACrC,CAAC;IAED,eAAe;QACb,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACrC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAChC,CAAC;IACH,CAAC;IAqBD,KAAK,CAAC,cAAc,CAAC,UAAmC,EAAE;QACxD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAC3B,MAAM,SAAS,GAAG,0CAAsB,CAAC,mBAAmB,CAAC;QAG7D,MAAM,IAAA,yCAAqB,EAAC,OAAO,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAGlE,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,GAAG,MAAM,EAAE,CAAC;YAClE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAEhE,MAAM,KAAK,GAAG,MAAM,IAAA,yCAAqB,EACvC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EACzB,SAAS,EACT,MAAM,CACP,CAAC;YACF,IACE,CAAC,KAAK;gBACN,CAAC,IAAI,CAAC,QAAQ;gBACd,CAAC,IAAI,CAAC,YAAY;gBAClB,CAAC,IAAI,CAAC,aAAa,EACnB,CAAC;gBACD,MAAM,IAAI,KAAK,CACb,uFAAuF,CACxF,CAAC;YACJ,CAAC;QACH,CAAC;QAKD,IAAI,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACvC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,OAAO,GAAoB,IAAI,CAAC,YAAY,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;gBAChE,IAAI,IAAI,CAAC,mBAAmB,KAAK,OAAO,EAAE,CAAC;oBACzC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;gBAClC,CAAC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC;YACnC,OAAO,GAAG,OAAO,CAAC;QACpB,CAAC;QACD,OAAO,IAAA,yCAAqB,EAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC;IAWD,KAAK,CAAC,yBAAyB,CAAC,QAAgB;QAC9C,MAAM,kBAAkB,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC3C,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACpE,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,EAAE,CAAC;YACrD,OAAO,MAAM,CAAC,KAAK,CAAC;QACtB,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACzE,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC,OAAO,CACrE,GAAG,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,kBAAkB,CAAC,CACjE,CAAC;QACF,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QACjE,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,QAAgB;QAOnD,MAAM,aAAa,GAAG,IAAI,CAAC,aAAc,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,mBAAmB,CACzC,0CAAsB,CAAC,sBAAsB,EAC7C,aAAa,EACb,KAAK,EAAE,MAAM,EAAE,EAAE;YACf,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,aAAa,EAAE;gBAC1C,MAAM,EAAE,MAAM;gBACd,MAAM;gBACN,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE;gBAChE,IAAI,EAAE,IAAI,eAAe,CAAC;oBACxB,UAAU,EAAE,oBAAoB;oBAChC,SAAS,EAAE,IAAI,CAAC,QAAS;oBACzB,aAAa,EAAE,IAAI,CAAC,YAAa;oBACjC,KAAK,EAAE,GAAG,2BAA2B,GAAG,QAAQ,EAAE;iBACnD,CAAC,CAAC,QAAQ,EAAE;aACd,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;gBACnD,MAAM,IAAI,KAAK,CACb,6CAA6C,QAAQ,CAAC,MAAM,GAAG;oBAC7D,GAAG,QAAQ,CAAC,UAAU,cAAc,QAAQ,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAC1E,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB,CAAC;QAClD,CAAC,CACF,CAAC;QACF,MAAM,cAAc,GAAG,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7D,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CACb,0EAA0E;gBACxE,cAAc,QAAQ,cAAc,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,GAAG,CAC9E,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;QACzE,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,QAAQ,EAAE;YACzC,KAAK,EAAE,IAAI,CAAC,YAAY;YACxB,SAAS;SACV,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAwBD,KAAK,CAAC,kBAAkB,CAAC,MAWxB;QACC,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAGvD,MAAM,QAAQ,GAAG,GAAG,KAAK,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;QAE7G,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,EAAE,CAAC;YACrD,OAAO,MAAM,CAAC,KAAK,CAAC;QACtB,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,OAAO,CACvE,GAAG,EAAE;YACH,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC,CACF,CAAC;QACF,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9C,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,MAMC,EACD,QAAgB,EAChB,KAAa;QAKb,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAMT;YACF,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,KAAK;SAC7B,CAAC;QACF,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAClC,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QACrC,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAGhE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,GAAG,GAAG,EAAE,MAAM,CAAC,CAAC;QAC/D,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE;YAChC,KAAK,EAAE,QAAQ,CAAC,WAAW;YAC3B,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW;SACpC,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,WAAW,CAAC;IAC9B,CAAC;IAOD,KAAK,CAAC,oBAAoB,CACxB,MAA+B;QAE/B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CACb,2EAA2E,CAC5E,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IAgCD,KAAK,CAAC,oBAAoB,CACxB,MAGC,EACD,UAAmC,EAAE;QAErC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAC3B,MAAM,SAAS,GAAG,0CAAsB,CAAC,eAAe,CAAC;QACzD,MAAM,IAAA,yCAAqB,EAAC,OAAO,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAClE,MAAM,QAAQ,GACZ,IAAI,CAAC,MAAM,CAAC,mBAAmB,IAAI,8BAA8B,CAAC;QACpE,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC;QACzD,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACb,sEAAsE;gBACpE,uEAAuE;gBACvE,iCAAiC,CACpC,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CACb,oEAAoE;gBAClE,oEAAoE;gBACpE,mBAAmB,CACtB,CAAC;QACJ,CAAC;QAID,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,KAAK,GAAG,MAAM,IAAA,yCAAqB,EACvC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EACzB,SAAS,EACT,MAAM,CACP,CAAC;YACF,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,eAAe,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC3E,MAAM,QAAQ,GAAG,GAAG,KAAK,IAAI,QAAQ,IAAI,eAAe,EAAE,CAAC;QAE3D,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;YAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;QACxE,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,IAAA,yCAAqB,EAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,OAAO,GAA+B,IAAI,CAAC,qBAAqB,CACpE,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,EACpE,QAAQ,CACT,CAAC,OAAO,CAAC,GAAG,EAAE;YACb,IAAI,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,OAAO,EAAE,CAAC;gBACvD,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAChD,OAAO,IAAA,yCAAqB,EAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,IAKC,EACD,QAAgB;QAEhB,MAAM,aAAa,GAAG,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE/D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,mBAAmB,CACzC,0CAAsB,CAAC,eAAe,EACtC,aAAa,EACb,KAAK,EAAE,MAAM,EAAE,EAAE;YACf,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,aAAa,EAAE;gBAC1C,MAAM,EAAE,MAAM;gBACd,MAAM;gBACN,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE;gBAChE,IAAI,EAAE,IAAI,eAAe,CAAC;oBACxB,UAAU,EAAE,oBAAoB;oBAChC,SAAS,EAAE,IAAI,CAAC,QAAQ;oBACxB,aAAa,EAAE,IAAI,CAAC,YAAY;oBAIhC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC;iBACjD,CAAC,CAAC,QAAQ,EAAE;aACd,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;gBACnD,MAAM,IAAI,KAAK,CACb,qCAAqC,QAAQ,CAAC,MAAM,GAAG;oBACrD,GAAG,QAAQ,CAAC,UAAU,YAAY,IAAI,CAAC,QAAQ,WAAW,IAAI,CAAC,KAAK,OAAO,IAAI,EAAE,CACpF,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB,CAAC;QAClD,CAAC,CACF,CAAC;QACF,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACnD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC;QAG7C,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,GAAG,EAAE,MAAM,CAAC,CAAC;QACtE,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE;YAClC,KAAK,EAAE,IAAI,CAAC,YAAY;YACxB,WAAW;YACX,YAAY;SACb,CAAC,CAAC;QACH,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,WAAW,EAAE,CAAC;IACzD,CAAC;IAQO,uBAAuB,CAAC,KAAa;QAC3C,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,qEAAqE;gBACnE,kDAAkD,CACrD,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACtD,OAAO,GAAG,IAAI,WAAW,kBAAkB,CAAC,KAAK,CAAC,gCAAgC,CAAC;IACrF,CAAC;IAGO,wBAAwB,CAAC,MAA8B;QAC7D,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;aACvB,IAAI,EAAE;aACN,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;aAC/B,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IAOD,KAAK,CAAC,YAAY,CAAC,SAAS,GAAG,MAAM;QACnC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC;QACd,CAAC;QAOD,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC;QAElC,IACE,IAAI,CAAC,YAAY,KAAK,oBAAoB,CAAC,UAAU;YACrD,IAAI,CAAC,YAAY,KAAK,oBAAoB,CAAC,MAAM,EACjD,CAAC;YAiBD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACd,OAAO,EACL,IAAI,CAAC,YAAY,KAAK,oBAAoB,CAAC,UAAU;oBACnD,CAAC,CAAC,oEAAoE;oBACtE,CAAC,CAAC,mDAAmD;gBACzD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;aACrC,CAAC,CAAC;YAIH,KAAK,IAAI,CAAC,eAAe,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBAEnD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;oBAChB,OAAO,EAAE,0BAA0B;oBACnC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;oBACpC,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC9D,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,OAAO,CAAC,IAAI,CAAC;YAClB,OAAO;YACP,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE,CAC/B,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAC5C;SACF,CAAC,CAAC;IACL,CAAC;IAKD,cAAc;QACZ,OAAO,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC;IAC9E,CAAC;IAKD,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAMD,kBAAkB;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAMD,gBAAgB;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAoBD,KAAK,CAAC,QAAQ,CACZ,KAAa,EACb,MAAc,EACd,KAAc;QAEd,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;QACD,MAAM,aAAa,GAAG,KAAK,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC5D,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CACjD,MAAM,EACN,KAAK,EACL,aAAa,CACd,CAAC;QACF,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC3B,CAAC;IASD,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CACb,oEAAoE,CACrE,CAAC;QACJ,CAAC;QAGD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;QACjC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAChD,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;gBACrB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACjB,CAAC;QACH,CAAC;QACD,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;IACrB,CAAC;IAUO,2BAA2B;QACjC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACd,OAAO,EAAE,+CAA+C;YACxD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;SACrC,CAAC,CAAC;QACH,KAAK,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAClC,CAAC;IAEO,KAAK,CAAC,mBAAmB;QAC/B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC;gBACrD,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;gBAC3C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;gBAC3C,WAAW,EAAE,SAAS;gBACtB,gBAAgB,EAAE,KAAK;gBACvB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa;oBAC3B,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;oBACtC,CAAC,CAAC,EAAE,CAAC;aACR,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAC;YAC5B,MAAM,oBAAoB,GAAG,IAAI,CAAC,2BAA2B,CAC3D,QAAQ,CAAC,eAAe,EACxB,QAAQ,CAAC,aAAa,EACtB,QAAQ,CAAC,YAAY,EACrB,QAAQ,CAAC,kBAAkB,CAC5B,CAAC;YAMF,IAAI,CAAC,eAAe;gBAClB,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,oBAAoB,CAAC,eAAe,CAAC;YAClE,IAAI,CAAC,aAAa,GAAG,oBAAoB,CAAC,aAAa,CAAC;YACxD,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC,YAAY,CAAC;YACtD,IAAI,CAAC,sBAAsB,GAAG,oBAAoB,CAAC,kBAAkB,CAAC;YAMtE,IAAI,CAAC,aAAa,GAAG,YAAY,CAC/B,QAAQ,CAAC,aAAa,EACtB,IAAI,CAAC,eAAe,CACrB,CAAC;YAOF,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CACb,mEAAmE;oBACjE,mBAAmB,QAAQ,CAAC,cAAc,qBAAqB;oBAC/D,mEAAmE,CACtE,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;YAC1C,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC;YAG1C,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAE1B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACd,OAAO,EAAE,sCAAsC;gBAC/C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;gBACpC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,IAAI,CAAC,oBAAoB,GAAG,CAAC;aACxC,CAAC,CAAC;YAEH,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;YAC9B,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACxC,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAEO,2BAA2B,CACjC,eAAmC,EACnC,aAAmC,EACnC,YAAuC,EACvC,kBAAkD;QAOlD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,4EAA4E,CAC7E,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO;YACL,eAAe;YACf,aAAa;YACb,YAAY,EAAE,YAAY,IAAI,IAAI;YAClC,kBAAkB,EAChB,kBAAkB,IAAI,0BAAkB,CAAC,oBAAoB;SAChE,CAAC;IACJ,CAAC;IAEO,qBAAqB,CAAC,aAAsB;QAClD,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,IAAI,IAAI,CAAC,sBAAsB,KAAK,0BAAkB,CAAC,YAAY,EAAE,CAAC;YACpE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CACb,sFAAsF,CACvF,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;QAED,MAAM,IAAI,KAAK,CACb,qEAAqE,IAAI,CAAC,sBAAsB,EAAE,CACnG,CAAC;IACJ,CAAC;IAEO,aAAa,CAAC,KAAc;QAClC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAE5B,MAAM,YAAY,GAChB,KAAK,YAAY,yBAAgB;YAC/B,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,aAAa,KAAK,CAAC,UAAU,GAAG;YAClD,CAAC,CAAC,KAAK,YAAY,KAAK;gBACtB,CAAC,CAAC,KAAK,CAAC,OAAO;gBACf,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEtB,IAAI,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAChB,OAAO,EAAE,yDAAyD;gBAClE,QAAQ,EAAE,IAAI,CAAC,oBAAoB;gBACnC,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YACH,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC,EAChE,IAAI,CAAC,aAAa,CACnB,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACf,OAAO,EAAE,8CAA8C;YACvD,OAAO,EAAE,IAAI,CAAC,oBAAoB;YAClC,kBAAkB,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC;YAC5C,KAAK,EAAE,YAAY;SACpB,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,GAAG,EAAE;YACvC,KAAK,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAClC,CAAC,EAAE,KAAK,CAAC,CAAC;IACZ,CAAC;IAUO,6BAA6B,GAAG,KAAK,CAAC;IAQtC,KAAK,CAAC,mBAAmB,CAC/B,SAAiC,EACjC,QAAgB,EAChB,IAAyC;QAEzC,IAAI,CAAC;YACH,OAAO,MAAM,IAAA,4CAAwB,EACnC,SAAS,EACT,QAAQ,EACR,IAAI,CAAC,qBAAqB,EAC1B,IAAI,CACL,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,oDAAgC,EAAE,CAAC;gBACtD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACf,OAAO,EAAE,iDAAiD;oBAC1D,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;oBACpC,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,SAAS,EAAE,KAAK,CAAC,SAAS;iBAC3B,CAAC,CAAC;YACL,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY;QACxB,OAAO,IAAI,CAAC,wBAAwB,CAAwB,KAAK,CAAC,CAAC;IACrE,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,iBAA0B;QAE1B,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QAMD,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC5C,0CAAsB,CAAC,mBAAmB,EAC1C,aAAa,EACb,KAAK,EAAE,MAAM,EAAiC,EAAE;YAC9C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,aAAa,EAAE;gBAC1C,MAAM,EAAE,MAAM;gBACd,MAAM;gBACN,OAAO,EAAE,EAAE,cAAc,EAAE,mCAAmC,EAAE;gBAChE,IAAI,EAAE,IAAI,eAAe,CAAC;oBACxB,UAAU,EAAE,oBAAoB;oBAChC,SAAS,EAAE,QAAQ;oBACnB,aAAa,EAAE,YAAY;iBAC5B,CAAC,CAAC,QAAQ,EAAE;aACd,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAChB,OAAO;oBACL,EAAE,EAAE,IAAI;oBACR,IAAI,EAAE,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB;iBAC/C,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,IAAI,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;aAC5C,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,IACE,CAAC,OAAO,CAAC,EAAE;YACX,OAAO,CAAC,MAAM,KAAK,GAAG;YACtB,CAAC,iBAAiB;YAClB,IAAI,CAAC,6BAA6B,EAClC,CAAC;YAmBD,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;YAGrC,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,qBAAqB,CAAC;YACpE,IAAI,mBAAmB,GAAG,0BAAwB,CAAC,oBAAoB,EAAE,CAAC;gBACxE,MAAM,IAAI,KAAK,CACb,6BAA6B,UAAU,iBAAiB;oBACtD,uBAAuB,mBAAmB,4BAA4B;oBACtE,iCAAiC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CACxD,CAAC;YACJ,CAAC;YAGD,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAC;gBAC9D,IAAI,WAAW,IAAI,WAAW,CAAC,kBAAkB,EAAE,CAAC;oBAClD,MAAM,IAAI,KAAK,CACb,6BAA6B,UAAU,qBAAqB;wBAC1D,uBAAuB,WAAW,CAAC,qBAAqB,UAAU;wBAClE,eAAe,WAAW,CAAC,UAAU,sBAAsB;wBAC3D,oBAAoB,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAC3C,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,eAAe,EAAE,CAAC;gBAEzB,IACE,eAAe,YAAY,KAAK;oBAChC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAC/C,CAAC;oBACD,MAAM,eAAe,CAAC;gBACxB,CAAC;gBAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACf,OAAO,EACL,gFAAgF;oBAClF,KAAK,EACH,eAAe,YAAY,KAAK;wBAC9B,CAAC,CAAC,eAAe,CAAC,OAAO;wBACzB,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC;iBAC9B,CAAC,CAAC;YACL,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,OAAO,EACL,kEAAkE;oBAClE,wDAAwD;gBAC1D,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;aACjC,CAAC,CAAC;YACH,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;YACxB,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,wBAAwB,CAAwB,IAAI,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACb,yBAAyB,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,UAAU,MAAM,OAAO,CAAC,IAAI,EAAE,CAClF,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QAMrC,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;QACxC,MAAM,cAAc,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC;QAClD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,GAAG,IAAI,GAAG,cAAc,CAAC;QAErE,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAWO,KAAK,CAAC,uBAAuB;QACnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC;YACrD,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YAC7B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;YAC3C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;YAC3C,WAAW,EAAE,SAAS;YACtB,gBAAgB,EAAE,KAAK;YACvB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa;gBAC3B,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;gBACtC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,qEAAqE;gBACnE,qEAAqE,CACxE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,2BAA2B,CAC/C,QAAQ,CAAC,eAAe,EACxB,QAAQ,CAAC,aAAa,EACtB,QAAQ,CAAC,YAAY,EACrB,QAAQ,CAAC,kBAAkB,CAC5B,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC;QAChD,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;QAC5C,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC;QAC1C,IAAI,CAAC,sBAAsB,GAAG,QAAQ,CAAC,kBAAkB,CAAC;QAC1D,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAGxC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,OAAO,EAAE,2DAA2D;gBACpE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;QAEL,CAAC;IACH,CAAC;IAcO,qBAAqB;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QACvC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CACb,wEAAwE;gBACtE,uEAAuE;gBACvE,oDAAoD,CACvD,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,KAAK,CAAC,4BAA4B;QAQxC,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACpD,MAAM,GAAG,GAAG,GAAG,cAAc,qCAAqC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QAChH,IAAI,CAAC;YAIH,OAAO,MAAM,IAAI,CAAC,mBAAmB,CACnC,0CAAsB,CAAC,8BAA8B,EACrD,GAAG,EACH,KAAK,EAAE,MAAM,EAAE,EAAE;gBACf,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;oBAChC,MAAM,EAAE,KAAK;oBACb,MAAM;oBACN,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,wBAAwB,EAAE;qBAChE;iBACF,CAAC,CAAC;gBAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBAGjB,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAI5B,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAChB,OAAO,EAAE,4DAA4D;gBACrE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAMO,KAAK,CAAC,wBAAwB;QACpC,MAAM,cAAc,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACpD,MAAM,GAAG,GAAG,GAAG,cAAc,sCAAsC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QACjH,IAAI,CAAC;YAGH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAC7C,0CAAsB,CAAC,8BAA8B,EACrD,GAAG,EACH,CAAC,MAAM,EAAE,EAAE,CACT,KAAK,CAAC,GAAG,EAAE;gBACT,MAAM,EAAE,MAAM;gBACd,MAAM;gBACN,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,wBAAwB,EAAE;oBAC/D,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;aACzB,CAAC,CACL,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBACf,OAAO,EAAE,gDAAgD;oBACzD,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;iBAChC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAChB,OAAO,EAAE,sDAAsD;gBAC/D,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC9D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAKO,SAAS;QACf,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC;QAC/C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAcO,iBAAiB;QACvB,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC,MAAM,CAAC;QAChD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;IAOO,aAAa;QACnB,IAAI,CAAC,YAAY,GAAG,oBAAoB,CAAC,SAAS,CAAC;QACnD,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9C,CAAC;IAEO,aAAa,CACnB,KAAc,EACd,EAAE,KAAK,KAAyB,EAAE,KAAK,EAAE,KAAK,EAAE;QAEhD,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC;QAGlC,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,YAAY,GAAG,IAAI,OAAO,CAAU,CAAC,IAAI,EAAE,EAAE;gBAChD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YAC3B,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;;AA1/CU,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,mBAAU,GAAE;IA0FR,WAAA,IAAA,eAAM,EAAC,iCAAyB,CAAC,CAAA;;GAzFzB,wBAAwB,CA2/CpC"}
|
|
1
|
+
{"version":3,"file":"identity-bootstrap.service.js","sourceRoot":"","sources":["../../src/nestjs/identity-bootstrap.service.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -187,6 +187,34 @@ export interface ScopedClaimTokenResponse extends ScopedClaimTokenRequest {
|
|
|
187
187
|
expiresIn: number;
|
|
188
188
|
tokenType: 'Bearer';
|
|
189
189
|
}
|
|
190
|
+
export declare enum DelegationActorKind {
|
|
191
|
+
Agent = "agent",
|
|
192
|
+
Workload = "workload"
|
|
193
|
+
}
|
|
194
|
+
export interface CreateDelegationRequest {
|
|
195
|
+
subjectContext?: string;
|
|
196
|
+
parentId?: string;
|
|
197
|
+
actor: {
|
|
198
|
+
id: string;
|
|
199
|
+
kind: DelegationActorKind;
|
|
200
|
+
};
|
|
201
|
+
presenterPrincipalId: string;
|
|
202
|
+
organizationId?: string;
|
|
203
|
+
expiresAt: string;
|
|
204
|
+
realm?: string;
|
|
205
|
+
}
|
|
206
|
+
export interface DelegationRecordResponse {
|
|
207
|
+
id: string;
|
|
208
|
+
subjectPrincipalId: string;
|
|
209
|
+
organizationId: string | null;
|
|
210
|
+
expiresAt: string;
|
|
211
|
+
parentId: string | null;
|
|
212
|
+
}
|
|
213
|
+
export interface DelegatedContextResponse {
|
|
214
|
+
context: string;
|
|
215
|
+
expiresIn: number;
|
|
216
|
+
expiresAt: string;
|
|
217
|
+
}
|
|
190
218
|
export interface ApiEnvelope<T> {
|
|
191
219
|
data: T;
|
|
192
220
|
}
|
package/dist/types.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ORG_ADMIN_ROLES = exports.OrgRole = exports.SystemOrgEnsureOutcome = exports.InternalTokenScope = void 0;
|
|
3
|
+
exports.DelegationActorKind = exports.ORG_ADMIN_ROLES = exports.OrgRole = exports.SystemOrgEnsureOutcome = exports.InternalTokenScope = void 0;
|
|
4
4
|
var InternalTokenScope;
|
|
5
5
|
(function (InternalTokenScope) {
|
|
6
6
|
InternalTokenScope["SINGLE_REALM"] = "SINGLE_REALM";
|
|
@@ -23,4 +23,9 @@ exports.ORG_ADMIN_ROLES = new Set([
|
|
|
23
23
|
OrgRole.ORG_OWNER,
|
|
24
24
|
OrgRole.ORG_ADMIN,
|
|
25
25
|
]);
|
|
26
|
+
var DelegationActorKind;
|
|
27
|
+
(function (DelegationActorKind) {
|
|
28
|
+
DelegationActorKind["Agent"] = "agent";
|
|
29
|
+
DelegationActorKind["Workload"] = "workload";
|
|
30
|
+
})(DelegationActorKind || (exports.DelegationActorKind = DelegationActorKind = {}));
|
|
26
31
|
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAiBA,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,mDAA6B,CAAA;IAC7B,iDAA2B,CAAA;IAC3B,mEAA6C,CAAA;AAC/C,CAAC,EAJW,kBAAkB,kCAAlB,kBAAkB,QAI7B;AAqHD,IAAY,sBAOX;AAPD,WAAY,sBAAsB;IAEhC,6CAAmB,CAAA;IAEnB,4DAAkC,CAAA;IAElC,iDAAuB,CAAA;AACzB,CAAC,EAPW,sBAAsB,sCAAtB,sBAAsB,QAOjC;AA8HD,IAAY,OAIX;AAJD,WAAY,OAAO;IACjB,kCAAuB,CAAA;IACvB,kCAAuB,CAAA;IACvB,oCAAyB,CAAA;AAC3B,CAAC,EAJW,OAAO,uBAAP,OAAO,QAIlB;AAGY,QAAA,eAAe,GAAyB,IAAI,GAAG,CAAC;IAC3D,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,SAAS;CAClB,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAiBA,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,mDAA6B,CAAA;IAC7B,iDAA2B,CAAA;IAC3B,mEAA6C,CAAA;AAC/C,CAAC,EAJW,kBAAkB,kCAAlB,kBAAkB,QAI7B;AAqHD,IAAY,sBAOX;AAPD,WAAY,sBAAsB;IAEhC,6CAAmB,CAAA;IAEnB,4DAAkC,CAAA;IAElC,iDAAuB,CAAA;AACzB,CAAC,EAPW,sBAAsB,sCAAtB,sBAAsB,QAOjC;AA8HD,IAAY,OAIX;AAJD,WAAY,OAAO;IACjB,kCAAuB,CAAA;IACvB,kCAAuB,CAAA;IACvB,oCAAyB,CAAA;AAC3B,CAAC,EAJW,OAAO,uBAAP,OAAO,QAIlB;AAGY,QAAA,eAAe,GAAyB,IAAI,GAAG,CAAC;IAC3D,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,SAAS;CAClB,CAAC,CAAC;AA6KH,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,sCAAe,CAAA;IACf,4CAAqB,CAAA;AACvB,CAAC,EAHW,mBAAmB,mCAAnB,mBAAmB,QAG9B"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export interface WorkloadContextConfig {
|
|
2
|
+
readonly identityApiUrl: string;
|
|
3
|
+
readonly realm: string;
|
|
4
|
+
readonly audience: string;
|
|
5
|
+
readonly organizationId?: string;
|
|
6
|
+
readonly readCredential: () => Promise<string>;
|
|
7
|
+
readonly refreshBeforeExpirySeconds?: number;
|
|
8
|
+
readonly fetch?: typeof fetch;
|
|
9
|
+
readonly now?: () => number;
|
|
10
|
+
}
|
|
11
|
+
export declare class WorkloadContextError extends Error {
|
|
12
|
+
readonly code?: string | undefined;
|
|
13
|
+
readonly status?: number | undefined;
|
|
14
|
+
constructor(message: string, code?: string | undefined, status?: number | undefined);
|
|
15
|
+
}
|
|
16
|
+
export declare function fileCredentialReader(path: string, read?: (path: string) => Promise<string>): () => Promise<string>;
|
|
17
|
+
export declare class WorkloadContextSource {
|
|
18
|
+
private readonly config;
|
|
19
|
+
private cached;
|
|
20
|
+
private inflight;
|
|
21
|
+
private readonly refreshBeforeMs;
|
|
22
|
+
private readonly fetchImpl;
|
|
23
|
+
private readonly now;
|
|
24
|
+
constructor(config: WorkloadContextConfig);
|
|
25
|
+
getContext(): Promise<string>;
|
|
26
|
+
private fetchContext;
|
|
27
|
+
}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkloadContextSource = exports.WorkloadContextError = void 0;
|
|
4
|
+
exports.fileCredentialReader = fileCredentialReader;
|
|
5
|
+
const promises_1 = require("node:fs/promises");
|
|
6
|
+
class WorkloadContextError extends Error {
|
|
7
|
+
code;
|
|
8
|
+
status;
|
|
9
|
+
constructor(message, code, status) {
|
|
10
|
+
super(message);
|
|
11
|
+
this.code = code;
|
|
12
|
+
this.status = status;
|
|
13
|
+
this.name = 'WorkloadContextError';
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.WorkloadContextError = WorkloadContextError;
|
|
17
|
+
function fileCredentialReader(path, read = (p) => (0, promises_1.readFile)(p, 'utf8')) {
|
|
18
|
+
return async () => {
|
|
19
|
+
const content = (await read(path)).trim();
|
|
20
|
+
if (content === '') {
|
|
21
|
+
throw new WorkloadContextError(`The attestation file '${path}' is empty.`);
|
|
22
|
+
}
|
|
23
|
+
return content;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
const DEFAULT_REFRESH_BEFORE_EXPIRY_SECONDS = 60;
|
|
27
|
+
class WorkloadContextSource {
|
|
28
|
+
config;
|
|
29
|
+
cached = null;
|
|
30
|
+
inflight = null;
|
|
31
|
+
refreshBeforeMs;
|
|
32
|
+
fetchImpl;
|
|
33
|
+
now;
|
|
34
|
+
constructor(config) {
|
|
35
|
+
this.config = config;
|
|
36
|
+
for (const field of ['identityApiUrl', 'realm', 'audience']) {
|
|
37
|
+
const value = config[field];
|
|
38
|
+
if (typeof value !== 'string' || value.trim() === '') {
|
|
39
|
+
throw new WorkloadContextError(`WorkloadContextConfig.${field} must be a non-empty string.`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (typeof config.readCredential !== 'function') {
|
|
43
|
+
throw new WorkloadContextError('WorkloadContextConfig.readCredential must be a function.');
|
|
44
|
+
}
|
|
45
|
+
const refresh = config.refreshBeforeExpirySeconds ?? DEFAULT_REFRESH_BEFORE_EXPIRY_SECONDS;
|
|
46
|
+
if (!Number.isInteger(refresh) || refresh < 0) {
|
|
47
|
+
throw new WorkloadContextError('WorkloadContextConfig.refreshBeforeExpirySeconds must be a non-negative integer.');
|
|
48
|
+
}
|
|
49
|
+
this.refreshBeforeMs = refresh * 1000;
|
|
50
|
+
this.fetchImpl = config.fetch ?? fetch;
|
|
51
|
+
this.now = config.now ?? Date.now;
|
|
52
|
+
}
|
|
53
|
+
async getContext() {
|
|
54
|
+
if (this.cached !== null &&
|
|
55
|
+
this.now() < this.cached.expiresAtMs - this.refreshBeforeMs) {
|
|
56
|
+
return this.cached.context;
|
|
57
|
+
}
|
|
58
|
+
if (this.inflight === null) {
|
|
59
|
+
const started = this.fetchContext().finally(() => {
|
|
60
|
+
if (this.inflight === started) {
|
|
61
|
+
this.inflight = null;
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
this.inflight = started;
|
|
65
|
+
}
|
|
66
|
+
return this.inflight;
|
|
67
|
+
}
|
|
68
|
+
async fetchContext() {
|
|
69
|
+
let credential;
|
|
70
|
+
try {
|
|
71
|
+
credential = await this.config.readCredential();
|
|
72
|
+
}
|
|
73
|
+
catch (error) {
|
|
74
|
+
throw error instanceof WorkloadContextError
|
|
75
|
+
? error
|
|
76
|
+
: new WorkloadContextError(`The workload attestation could not be read: ${String(error)}`);
|
|
77
|
+
}
|
|
78
|
+
const url = `${this.config.identityApiUrl.replace(/\/+$/, '')}/internal/workload-context`;
|
|
79
|
+
let response;
|
|
80
|
+
try {
|
|
81
|
+
response = await this.fetchImpl(url, {
|
|
82
|
+
method: 'POST',
|
|
83
|
+
headers: { 'content-type': 'application/json' },
|
|
84
|
+
body: JSON.stringify({
|
|
85
|
+
credential,
|
|
86
|
+
audience: this.config.audience,
|
|
87
|
+
realm: this.config.realm,
|
|
88
|
+
...(this.config.organizationId !== undefined
|
|
89
|
+
? { organizationId: this.config.organizationId }
|
|
90
|
+
: {}),
|
|
91
|
+
}),
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
catch (error) {
|
|
95
|
+
throw new WorkloadContextError(`The identity boundary could not be reached: ${String(error)}`);
|
|
96
|
+
}
|
|
97
|
+
let body;
|
|
98
|
+
try {
|
|
99
|
+
body = await response.json();
|
|
100
|
+
}
|
|
101
|
+
catch {
|
|
102
|
+
body = undefined;
|
|
103
|
+
}
|
|
104
|
+
if (!response.ok) {
|
|
105
|
+
const refusal = body
|
|
106
|
+
?.error;
|
|
107
|
+
throw new WorkloadContextError(`The identity boundary refused the workload context (HTTP ${response.status})` +
|
|
108
|
+
(typeof refusal?.message === 'string' ? `: ${refusal.message}` : '.'), typeof refusal?.code === 'string' ? refusal.code : undefined, response.status);
|
|
109
|
+
}
|
|
110
|
+
const answer = body?.data;
|
|
111
|
+
const expiresAtMs = typeof answer?.expiresAt === 'string' ? Date.parse(answer.expiresAt) : NaN;
|
|
112
|
+
if (typeof answer?.context !== 'string' ||
|
|
113
|
+
answer.context === '' ||
|
|
114
|
+
Number.isNaN(expiresAtMs)) {
|
|
115
|
+
throw new WorkloadContextError('The identity boundary answered without a context and its expiry.');
|
|
116
|
+
}
|
|
117
|
+
this.cached = { context: answer.context, expiresAtMs };
|
|
118
|
+
return answer.context;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
exports.WorkloadContextSource = WorkloadContextSource;
|
|
122
|
+
//# sourceMappingURL=workload-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workload-context.js","sourceRoot":"","sources":["../src/workload-context.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xemahq/identity-client",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"description": "NestJS client library and standalone HTTP client for Identity API - service registration, credential management, and JWT token lifecycle",
|
|
5
5
|
"author": "Neuralchowder Inc. <developer@xema.dev> (https://xema.dev)",
|
|
6
6
|
"license": "LicenseRef-Xema-BSL-1.1",
|