@walde.ai/walde-sdk 0.1.7 → 0.1.8

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.
@@ -2,14 +2,16 @@ import { CredentialsProvider } from '../../sdk/domain/ports/out/credentials-prov
2
2
  import { Credentials } from '../../sdk/domain/entities/credentials';
3
3
  /**
4
4
  * Mock credentials provider for testing
5
+ * Generates valid JWT-formatted tokens with configurable expiry
5
6
  */
6
7
  export declare class MockCredentialsProvider implements CredentialsProvider {
7
- private readonly accessToken;
8
- private readonly refreshToken;
9
- private readonly idToken;
10
- constructor(accessToken?: string, refreshToken?: string, idToken?: string);
8
+ private readonly accessToken?;
9
+ private readonly refreshToken?;
10
+ private readonly idToken?;
11
+ private readonly tokenExpirySeconds;
12
+ constructor(accessToken?: string | undefined, refreshToken?: string | undefined, idToken?: string | undefined, tokenExpirySeconds?: number);
11
13
  /**
12
- * Retrieve mock credentials
14
+ * Retrieve mock credentials with valid JWT tokens
13
15
  */
14
16
  retrieve(): Promise<Credentials>;
15
17
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"mock-credentials-provider.d.ts","sourceRoot":"","sources":["../../../src/sdk/dev/mock-credentials-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAEhE;;GAEG;AACH,qBAAa,uBAAwB,YAAW,mBAAmB;IAE/D,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAFP,WAAW,GAAE,MAA4B,EACzC,YAAY,GAAE,MAA6B,EAC3C,OAAO,GAAE,MAAwB;IAGpD;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC;IAItC;;OAEG;IACG,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAGpD"}
1
+ {"version":3,"file":"mock-credentials-provider.d.ts","sourceRoot":"","sources":["../../../src/sdk/dev/mock-credentials-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AA+BhE;;;GAGG;AACH,qBAAa,uBAAwB,YAAW,mBAAmB;IAE/D,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;gBAHlB,WAAW,CAAC,EAAE,MAAM,YAAA,EACpB,YAAY,CAAC,EAAE,MAAM,YAAA,EACrB,OAAO,CAAC,EAAE,MAAM,YAAA,EAChB,kBAAkB,GAAE,MAAa;IAGpD;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC;IAQtC;;OAEG;IACG,IAAI,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;CAGpD"}
@@ -2,23 +2,51 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MockCredentialsProvider = void 0;
4
4
  const credentials_1 = require("../../sdk/domain/entities/credentials");
5
+ /**
6
+ * Create a mock JWT token with specified expiry
7
+ * @param expirySeconds Seconds from now until token expires (default: 1 hour)
8
+ * @returns Valid JWT-formatted mock token
9
+ */
10
+ function createMockJwt(expirySeconds = 3600) {
11
+ const header = { alg: 'HS256', typ: 'JWT' };
12
+ const payload = {
13
+ sub: 'mock-user-id',
14
+ name: 'Mock User',
15
+ iat: Math.floor(Date.now() / 1000),
16
+ exp: Math.floor(Date.now() / 1000) + expirySeconds
17
+ };
18
+ const base64UrlEncode = (obj) => {
19
+ return Buffer.from(JSON.stringify(obj))
20
+ .toString('base64')
21
+ .replace(/\+/g, '-')
22
+ .replace(/\//g, '_')
23
+ .replace(/=/g, '');
24
+ };
25
+ const encodedHeader = base64UrlEncode(header);
26
+ const encodedPayload = base64UrlEncode(payload);
27
+ const signature = 'mock-signature';
28
+ return `${encodedHeader}.${encodedPayload}.${signature}`;
29
+ }
5
30
  /**
6
31
  * Mock credentials provider for testing
32
+ * Generates valid JWT-formatted tokens with configurable expiry
7
33
  */
8
34
  class MockCredentialsProvider {
9
35
  accessToken;
10
36
  refreshToken;
11
37
  idToken;
12
- constructor(accessToken = 'mock-access-token', refreshToken = 'mock-refresh-token', idToken = 'mock-id-token') {
38
+ tokenExpirySeconds;
39
+ constructor(accessToken, refreshToken, idToken, tokenExpirySeconds = 3600) {
13
40
  this.accessToken = accessToken;
14
41
  this.refreshToken = refreshToken;
15
42
  this.idToken = idToken;
43
+ this.tokenExpirySeconds = tokenExpirySeconds;
16
44
  }
17
45
  /**
18
- * Retrieve mock credentials
46
+ * Retrieve mock credentials with valid JWT tokens
19
47
  */
20
48
  async retrieve() {
21
- return new credentials_1.Credentials(this.accessToken, this.refreshToken, this.idToken);
49
+ return new credentials_1.Credentials(this.accessToken || createMockJwt(this.tokenExpirySeconds), this.refreshToken || 'mock-refresh-token', this.idToken || createMockJwt(this.tokenExpirySeconds));
22
50
  }
23
51
  /**
24
52
  * Save credentials (no-op for mock)
@@ -1 +1 @@
1
- {"version":3,"file":"mock-credentials-provider.js","sourceRoot":"","sources":["../../../src/sdk/dev/mock-credentials-provider.ts"],"names":[],"mappings":";;;AACA,mEAAgE;AAEhE;;GAEG;AACH,MAAa,uBAAuB;IAEf;IACA;IACA;IAHnB,YACmB,cAAsB,mBAAmB,EACzC,eAAuB,oBAAoB,EAC3C,UAAkB,eAAe;QAFjC,gBAAW,GAAX,WAAW,CAA8B;QACzC,iBAAY,GAAZ,YAAY,CAA+B;QAC3C,YAAO,GAAP,OAAO,CAA0B;IACjD,CAAC;IAEJ;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,yBAAW,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,WAAwB;QACjC,gCAAgC;IAClC,CAAC;CACF;AApBD,0DAoBC"}
1
+ {"version":3,"file":"mock-credentials-provider.js","sourceRoot":"","sources":["../../../src/sdk/dev/mock-credentials-provider.ts"],"names":[],"mappings":";;;AACA,mEAAgE;AAEhE;;;;GAIG;AACH,SAAS,aAAa,CAAC,gBAAwB,IAAI;IACjD,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAG;QACd,GAAG,EAAE,cAAc;QACnB,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QAClC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,aAAa;KACnD,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,GAAQ,EAAU,EAAE;QAC3C,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;aACpC,QAAQ,CAAC,QAAQ,CAAC;aAClB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;aACnB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;aACnB,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACvB,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,gBAAgB,CAAC;IAEnC,OAAO,GAAG,aAAa,IAAI,cAAc,IAAI,SAAS,EAAE,CAAC;AAC3D,CAAC;AAED;;;GAGG;AACH,MAAa,uBAAuB;IAEf;IACA;IACA;IACA;IAJnB,YACmB,WAAoB,EACpB,YAAqB,EACrB,OAAgB,EAChB,qBAA6B,IAAI;QAHjC,gBAAW,GAAX,WAAW,CAAS;QACpB,iBAAY,GAAZ,YAAY,CAAS;QACrB,YAAO,GAAP,OAAO,CAAS;QAChB,uBAAkB,GAAlB,kBAAkB,CAAe;IACjD,CAAC;IAEJ;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,yBAAW,CACpB,IAAI,CAAC,WAAW,IAAI,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAC1D,IAAI,CAAC,YAAY,IAAI,oBAAoB,EACzC,IAAI,CAAC,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CACvD,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,WAAwB;QACjC,gCAAgC;IAClC,CAAC;CACF;AAzBD,0DAyBC"}
@@ -10,5 +10,10 @@ export declare class Credentials {
10
10
  * Check if credentials are complete (at least access token is present)
11
11
  */
12
12
  isComplete(): boolean;
13
+ /**
14
+ * Returns time in milliseconds until idToken expires.
15
+ * Returns 0 if expired or if expiry cannot be determined.
16
+ */
17
+ timeToExpirationMs(): number;
13
18
  }
14
19
  //# sourceMappingURL=credentials.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../../../src/sdk/domain/entities/credentials.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,WAAW;aAEJ,WAAW,EAAE,MAAM;aACnB,YAAY,EAAE,MAAM;aACpB,OAAO,EAAE,MAAM;gBAFf,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM;IAGjC;;OAEG;IACI,UAAU,IAAI,OAAO;CAG7B"}
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../../../src/sdk/domain/entities/credentials.ts"],"names":[],"mappings":"AAkCA;;GAEG;AACH,qBAAa,WAAW;aAEJ,WAAW,EAAE,MAAM;aACnB,YAAY,EAAE,MAAM;aACpB,OAAO,EAAE,MAAM;gBAFf,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM;IAGjC;;OAEG;IACI,UAAU,IAAI,OAAO;IAI5B;;;OAGG;IACI,kBAAkB,IAAI,MAAM;CAgBpC"}
@@ -1,6 +1,30 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Credentials = void 0;
4
+ /**
5
+ * Decode the payload of a JWT without verification
6
+ * NOTE: Uses Node.js Buffer API - this file is only used in Node.js context (admin SDK)
7
+ * @param token JWT token string
8
+ * @returns Decoded payload or null if invalid
9
+ */
10
+ function decodeJwtPayload(token) {
11
+ try {
12
+ const parts = token.split('.');
13
+ if (parts.length !== 3) {
14
+ return null;
15
+ }
16
+ // Decode base64url (replace URL-safe chars and add padding)
17
+ const base64 = parts[1].replace(/-/g, '+').replace(/_/g, '/');
18
+ const padding = '='.repeat((4 - base64.length % 4) % 4);
19
+ const base64WithPadding = base64 + padding;
20
+ // Decode base64 to string (Buffer is Node.js only - acceptable since credentials are admin-only)
21
+ const jsonPayload = Buffer.from(base64WithPadding, 'base64').toString('utf-8');
22
+ return JSON.parse(jsonPayload);
23
+ }
24
+ catch (error) {
25
+ return null;
26
+ }
27
+ }
4
28
  /**
5
29
  * User authentication credentials
6
30
  */
@@ -19,6 +43,23 @@ class Credentials {
19
43
  isComplete() {
20
44
  return !!this.accessToken;
21
45
  }
46
+ /**
47
+ * Returns time in milliseconds until idToken expires.
48
+ * Returns 0 if expired or if expiry cannot be determined.
49
+ */
50
+ timeToExpirationMs() {
51
+ if (!this.idToken) {
52
+ return 0;
53
+ }
54
+ const payload = decodeJwtPayload(this.idToken);
55
+ if (!payload || typeof payload.exp !== 'number') {
56
+ return 0;
57
+ }
58
+ const expiryTimeMs = payload.exp * 1000;
59
+ const nowMs = Date.now();
60
+ const timeToExpiry = expiryTimeMs - nowMs;
61
+ return timeToExpiry > 0 ? timeToExpiry : 0;
62
+ }
22
63
  }
23
64
  exports.Credentials = Credentials;
24
65
  //# sourceMappingURL=credentials.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../../../src/sdk/domain/entities/credentials.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,WAAW;IAEJ;IACA;IACA;IAHlB,YACkB,WAAmB,EACnB,YAAoB,EACpB,OAAe;QAFf,gBAAW,GAAX,WAAW,CAAQ;QACnB,iBAAY,GAAZ,YAAY,CAAQ;QACpB,YAAO,GAAP,OAAO,CAAQ;IAC9B,CAAC;IAEJ;;OAEG;IACI,UAAU;QACf,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;CACF;AAbD,kCAaC"}
1
+ {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../../../src/sdk/domain/entities/credentials.ts"],"names":[],"mappings":";;;AAQA;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,KAAa;IACrC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,4DAA4D;QAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACxD,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,CAAC;QAE3C,iGAAiG;QACjG,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC/E,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAa,WAAW;IAEJ;IACA;IACA;IAHlB,YACkB,WAAmB,EACnB,YAAoB,EACpB,OAAe;QAFf,gBAAW,GAAX,WAAW,CAAQ;QACnB,iBAAY,GAAZ,YAAY,CAAQ;QACpB,YAAO,GAAP,OAAO,CAAQ;IAC9B,CAAC;IAEJ;;OAEG;IACI,UAAU;QACf,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACI,kBAAkB;QACvB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAChD,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,YAAY,GAAG,YAAY,GAAG,KAAK,CAAC;QAE1C,OAAO,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;CACF;AAlCD,kCAkCC"}
@@ -2,12 +2,19 @@ import { TokenProvider } from '../../domain/ports/in/token-provider';
2
2
  import { CredentialsProvider } from '../../../sdk/domain/ports/out/credentials-provider';
3
3
  /**
4
4
  * Default implementation of TokenProvider using CredentialsProvider
5
+ * with automatic token refresh on expiry
5
6
  */
6
7
  export declare class DefaultTokenProvider implements TokenProvider {
7
8
  private readonly credentialsProvider;
8
- constructor(credentialsProvider: CredentialsProvider);
9
+ private readonly tokenRefreshProvider?;
10
+ private readonly refreshInteractor?;
11
+ constructor(credentialsProvider: CredentialsProvider, clientId?: string, region?: string);
9
12
  /**
10
13
  * Get the access token from stored credentials
14
+ * Automatically refreshes token if expired or expiring within 5 minutes
15
+ *
16
+ * Note: Despite the method name, this returns the idToken for Cognito authentication.
17
+ * AWS Cognito uses the idToken (not accessToken) for API Gateway authorization.
11
18
  */
12
19
  getAccessToken(): Promise<string>;
13
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"default-token-provider.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/default-token-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAGlF;;GAEG;AACH,qBAAa,oBAAqB,YAAW,aAAa;IAC5C,OAAO,CAAC,QAAQ,CAAC,mBAAmB;gBAAnB,mBAAmB,EAAE,mBAAmB;IAErE;;OAEG;IACU,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;CAQ/C"}
1
+ {"version":3,"file":"default-token-provider.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/default-token-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAWlF;;;GAGG;AACH,qBAAa,oBAAqB,YAAW,aAAa;IAKtD,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IAJtC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAuB;IAC7D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAqB;gBAGrC,mBAAmB,EAAE,mBAAmB,EACzD,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,MAAM;IAejB;;;;;;OAMG;IACU,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;CA+B/C"}
@@ -2,23 +2,56 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DefaultTokenProvider = void 0;
4
4
  const errors_1 = require("../../../sdk/domain/errors");
5
+ const refresh_credentials_1 = require("../../../sdk/domain/interactors/refresh-credentials");
6
+ const cognito_token_refresh_provider_1 = require("./cognito-token-refresh-provider");
7
+ /**
8
+ * Threshold in milliseconds (5 minutes) for auto-refresh
9
+ */
10
+ const AUTO_REFRESH_THRESHOLD_MS = 5 * 60 * 1000;
5
11
  /**
6
12
  * Default implementation of TokenProvider using CredentialsProvider
13
+ * with automatic token refresh on expiry
7
14
  */
8
15
  class DefaultTokenProvider {
9
16
  credentialsProvider;
10
- constructor(credentialsProvider) {
17
+ tokenRefreshProvider;
18
+ refreshInteractor;
19
+ constructor(credentialsProvider, clientId, region) {
11
20
  this.credentialsProvider = credentialsProvider;
21
+ // Initialize refresh dependencies once if clientId is provided
22
+ if (clientId) {
23
+ this.tokenRefreshProvider = new cognito_token_refresh_provider_1.CognitoTokenRefreshProvider(clientId, region || 'us-east-1');
24
+ this.refreshInteractor = new refresh_credentials_1.RefreshCredentials(this.credentialsProvider, this.tokenRefreshProvider);
25
+ }
12
26
  }
13
27
  /**
14
28
  * Get the access token from stored credentials
29
+ * Automatically refreshes token if expired or expiring within 5 minutes
30
+ *
31
+ * Note: Despite the method name, this returns the idToken for Cognito authentication.
32
+ * AWS Cognito uses the idToken (not accessToken) for API Gateway authorization.
15
33
  */
16
34
  async getAccessToken() {
17
35
  try {
18
36
  const credentials = await this.credentialsProvider.retrieve();
37
+ const timeToExpiry = credentials.timeToExpirationMs();
38
+ // Auto-refresh if token is expired or about to expire (≤5 minutes left)
39
+ if (timeToExpiry <= AUTO_REFRESH_THRESHOLD_MS) {
40
+ if (!credentials.refreshToken) {
41
+ throw new errors_1.WaldeAuthenticationError('Token is expired or expiring soon, but no refresh token is available. Please log in again.');
42
+ }
43
+ if (!this.refreshInteractor) {
44
+ throw new errors_1.WaldeConfigurationError('Cognito client ID not configured for auto-refresh. Cannot refresh expired token.');
45
+ }
46
+ const refreshedCredentials = await this.refreshInteractor.execute();
47
+ return refreshedCredentials.idToken;
48
+ }
19
49
  return credentials.idToken;
20
50
  }
21
51
  catch (error) {
52
+ if (error instanceof errors_1.WaldeAuthenticationError || error instanceof errors_1.WaldeConfigurationError) {
53
+ throw error;
54
+ }
22
55
  throw new errors_1.WaldeAuthenticationError('Credentials file not found');
23
56
  }
24
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"default-token-provider.js","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/default-token-provider.ts"],"names":[],"mappings":";;;AAEA,gDAA+D;AAE/D;;GAEG;AACH,MAAa,oBAAoB;IACF;IAA7B,YAA6B,mBAAwC;QAAxC,wBAAmB,GAAnB,mBAAmB,CAAqB;IAAG,CAAC;IAEzE;;OAEG;IACI,KAAK,CAAC,cAAc;QACzB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC;YAC9D,OAAO,WAAW,CAAC,OAAO,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,iCAAwB,CAAC,4BAA4B,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;CACF;AAdD,oDAcC"}
1
+ {"version":3,"file":"default-token-provider.js","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/default-token-provider.ts"],"names":[],"mappings":";;;AAEA,gDAAwF;AACxF,sFAAkF;AAClF,qFAA+E;AAG/E;;GAEG;AACH,MAAM,yBAAyB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAEhD;;;GAGG;AACH,MAAa,oBAAoB;IAKZ;IAJF,oBAAoB,CAAwB;IAC5C,iBAAiB,CAAsB;IAExD,YACmB,mBAAwC,EACzD,QAAiB,EACjB,MAAe;QAFE,wBAAmB,GAAnB,mBAAmB,CAAqB;QAIzD,+DAA+D;QAC/D,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC,oBAAoB,GAAG,IAAI,4DAA2B,CACzD,QAAQ,EACR,MAAM,IAAI,WAAW,CACtB,CAAC;YACF,IAAI,CAAC,iBAAiB,GAAG,IAAI,wCAAkB,CAC7C,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,cAAc;QACzB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,CAAC;YAC9D,MAAM,YAAY,GAAG,WAAW,CAAC,kBAAkB,EAAE,CAAC;YAEtD,wEAAwE;YACxE,IAAI,YAAY,IAAI,yBAAyB,EAAE,CAAC;gBAC9C,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;oBAC9B,MAAM,IAAI,iCAAwB,CAChC,4FAA4F,CAC7F,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAC5B,MAAM,IAAI,gCAAuB,CAC/B,kFAAkF,CACnF,CAAC;gBACJ,CAAC;gBAED,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;gBACpE,OAAO,oBAAoB,CAAC,OAAO,CAAC;YACtC,CAAC;YAED,OAAO,WAAW,CAAC,OAAO,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,iCAAwB,IAAI,KAAK,YAAY,gCAAuB,EAAE,CAAC;gBAC1F,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,IAAI,iCAAwB,CAAC,4BAA4B,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;CACF;AA5DD,oDA4DC"}
@@ -1 +1 @@
1
- {"version":3,"file":"walde-admin-factory.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/factories/walde-admin-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAMlF,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAa3E,UAAU,uBAAuB;IAC/B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED;;GAEG;AACH,qBAAa,iBAAiB;WACd,WAAW,CAAC,MAAM,EAAE,uBAAuB,GAAG,UAAU;CA6BvE"}
1
+ {"version":3,"file":"walde-admin-factory.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/factories/walde-admin-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAMlF,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAa3E,UAAU,uBAAuB;IAC/B,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED;;GAEG;AACH,qBAAa,iBAAiB;WACd,WAAW,CAAC,MAAM,EAAE,uBAAuB,GAAG,UAAU;CAiCvE"}
@@ -22,7 +22,7 @@ class WaldeAdminFactory {
22
22
  region: config.region,
23
23
  s3ClientFactory: config.s3ClientFactory
24
24
  }, config.stage);
25
- const tokenProvider = new default_token_provider_1.DefaultTokenProvider(config.credentialsProvider);
25
+ const tokenProvider = new default_token_provider_1.DefaultTokenProvider(config.credentialsProvider, completeConfig.clientId, completeConfig.region);
26
26
  const httpClient = new admin_http_client_1.AdminHttpClient(completeConfig.endpoint, tokenProvider);
27
27
  const apiClient = new api_client_1.ApiClient(httpClient);
28
28
  const sitesRepo = new http_site_repo_1.HttpSiteRepository(apiClient);
@@ -1 +1 @@
1
- {"version":3,"file":"walde-admin-factory.js","sourceRoot":"","sources":["../../../../src/sdk/infra/factories/walde-admin-factory.ts"],"names":[],"mappings":";;;AAAA,+EAAoE;AASpE,qFAAsF;AACtF,mFAA8E;AAC9E,6GAAuG;AACvG,2IAAkI;AAClI,mEAAoE;AAEpE,gEAA4D;AAC5D,8EAAyE;AACzE,wFAAmF;AACnF,6EAAuE;AAWvE;;GAEG;AACH,MAAa,iBAAiB;IACrB,MAAM,CAAC,WAAW,CAAC,MAA+B;QACvD,MAAM,cAAc,GAAG,oDAAuB,CAAC,MAAM,CAAC;YACpD,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,eAAe,EAAE,MAAM,CAAC,eAAe;SACxC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAEjB,MAAM,aAAa,GAAG,IAAI,6CAAoB,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC3E,MAAM,UAAU,GAAG,IAAI,mCAAe,CAAC,cAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,IAAI,sBAAS,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAmB,IAAI,mCAAkB,CAAC,SAAS,CAAC,CAAC;QACpE,MAAM,WAAW,GAAgB,IAAI,mCAAe,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,mBAAmB,GAAwB,IAAI,oDAAuB,EAAE,CAAC;QAC/E,MAAM,uBAAuB,GAA4B,IAAI,+EAAmC,CAAC,SAAS,CAAC,CAAC;QAC5G,MAAM,kBAAkB,GAAuB,IAAI,iDAAyB,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAC7G,MAAM,oBAAoB,GAAyB,SAAS,CAAC;QAE7D,OAAO,IAAI,+BAAU,CAAC;YACpB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,SAAS;YACT,WAAW;YACX,mBAAmB;YACnB,uBAAuB;YACvB,kBAAkB;YAClB,oBAAoB;YACpB,MAAM,EAAE,cAAc;SACvB,CAAC,CAAC;IACL,CAAC;CACF;AA9BD,8CA8BC"}
1
+ {"version":3,"file":"walde-admin-factory.js","sourceRoot":"","sources":["../../../../src/sdk/infra/factories/walde-admin-factory.ts"],"names":[],"mappings":";;;AAAA,+EAAoE;AASpE,qFAAsF;AACtF,mFAA8E;AAC9E,6GAAuG;AACvG,2IAAkI;AAClI,mEAAoE;AAEpE,gEAA4D;AAC5D,8EAAyE;AACzE,wFAAmF;AACnF,6EAAuE;AAWvE;;GAEG;AACH,MAAa,iBAAiB;IACrB,MAAM,CAAC,WAAW,CAAC,MAA+B;QACvD,MAAM,cAAc,GAAG,oDAAuB,CAAC,MAAM,CAAC;YACpD,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,eAAe,EAAE,MAAM,CAAC,eAAe;SACxC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAEjB,MAAM,aAAa,GAAG,IAAI,6CAAoB,CAC5C,MAAM,CAAC,mBAAmB,EAC1B,cAAc,CAAC,QAAQ,EACvB,cAAc,CAAC,MAAM,CACtB,CAAC;QACF,MAAM,UAAU,GAAG,IAAI,mCAAe,CAAC,cAAc,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,IAAI,sBAAS,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAmB,IAAI,mCAAkB,CAAC,SAAS,CAAC,CAAC;QACpE,MAAM,WAAW,GAAgB,IAAI,mCAAe,CAAC,SAAS,CAAC,CAAC;QAChE,MAAM,mBAAmB,GAAwB,IAAI,oDAAuB,EAAE,CAAC;QAC/E,MAAM,uBAAuB,GAA4B,IAAI,+EAAmC,CAAC,SAAS,CAAC,CAAC;QAC5G,MAAM,kBAAkB,GAAuB,IAAI,iDAAyB,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QAC7G,MAAM,oBAAoB,GAAyB,SAAS,CAAC;QAE7D,OAAO,IAAI,+BAAU,CAAC;YACpB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;YAC/C,SAAS;YACT,WAAW;YACX,mBAAmB;YACnB,uBAAuB;YACvB,kBAAkB;YAClB,oBAAoB;YACpB,MAAM,EAAE,cAAc;SACvB,CAAC,CAAC;IACL,CAAC;CACF;AAlCD,8CAkCC"}
@@ -1 +1 @@
1
- {"version":3,"file":"credentials-future.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/futures/credentials-future.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAW,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAOhE,qBAAa,iBAAkB,SAAQ,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC;IACpE,OAAO,CAAC,SAAS,CAA+C;gBAEpD,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,UAAU,CAAA;KAAE;IAI9C,GAAG,IAAI,iBAAiB;IAMxB,OAAO,IAAI,iBAAiB;IAM5B,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC;IAIhC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;CA8BnD"}
1
+ {"version":3,"file":"credentials-future.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/futures/credentials-future.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAW,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAkDhE,qBAAa,iBAAkB,SAAQ,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC;IACpE,OAAO,CAAC,SAAS,CAA+C;gBAEpD,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,UAAU,CAAA;KAAE;IAI9C,GAAG,IAAI,iBAAiB;IAMxB,OAAO,IAAI,iBAAiB;IAM5B,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC;IAIhC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;CA6BnD"}
@@ -4,9 +4,40 @@ exports.CredentialsFuture = void 0;
4
4
  const std_1 = require("../../../std");
5
5
  const get_credentials_1 = require("../../../sdk/domain/interactors/get-credentials");
6
6
  const refresh_credentials_1 = require("../../../sdk/domain/interactors/refresh-credentials");
7
- const get_token_1 = require("../../../sdk/domain/interactors/get-token");
8
7
  const cognito_token_refresh_provider_1 = require("../../../sdk/infra/adapters/cognito-token-refresh-provider");
9
8
  const errors_1 = require("../../../sdk/domain/errors");
9
+ /**
10
+ * Threshold in milliseconds (5 minutes) for auto-refresh
11
+ */
12
+ const AUTO_REFRESH_THRESHOLD_MS = 5 * 60 * 1000;
13
+ /**
14
+ * Get valid credentials, automatically refreshing if needed
15
+ * @param parent WaldeAdmin instance for config access
16
+ * @returns Valid credentials
17
+ */
18
+ async function getValidCredentials(parent) {
19
+ const config = parent.getConfig();
20
+ const getCredentialsInteractor = new get_credentials_1.GetCredentials(config.credentialsProvider);
21
+ const credentials = await getCredentialsInteractor.execute();
22
+ const timeToExpiry = credentials.timeToExpirationMs();
23
+ // Auto-refresh if token is expired or about to expire (≤5 minutes left)
24
+ if (timeToExpiry <= AUTO_REFRESH_THRESHOLD_MS) {
25
+ if (!credentials.refreshToken) {
26
+ // No refresh token available - return credentials as-is
27
+ // This will likely result in authentication errors when used
28
+ return credentials;
29
+ }
30
+ if (!config.config.clientId) {
31
+ throw new errors_1.WaldeConfigurationError('Cognito client ID not configured');
32
+ }
33
+ const tokenRefreshProvider = new cognito_token_refresh_provider_1.CognitoTokenRefreshProvider(config.config.clientId, config.config.region);
34
+ const refreshInteractor = new refresh_credentials_1.RefreshCredentials(config.credentialsProvider, tokenRefreshProvider);
35
+ return await refreshInteractor.execute();
36
+ }
37
+ else {
38
+ return credentials;
39
+ }
40
+ }
10
41
  class CredentialsFuture extends std_1.Future {
11
42
  operation = null;
12
43
  constructor({ parent }) {
@@ -29,8 +60,7 @@ class CredentialsFuture extends std_1.Future {
29
60
  try {
30
61
  const config = this.parent.getConfig();
31
62
  if (this.operation === 'get') {
32
- const interactor = new get_credentials_1.GetCredentials(config.credentialsProvider);
33
- const credentials = await interactor.execute();
63
+ const credentials = await getValidCredentials(this.parent);
34
64
  return (0, std_1.ok)(credentials);
35
65
  }
36
66
  else if (this.operation === 'refresh') {
@@ -58,10 +88,11 @@ class TokenFuture extends std_1.Future {
58
88
  }
59
89
  async resolve() {
60
90
  try {
61
- const config = this.parent.getConfig();
62
- const interactor = new get_token_1.GetToken(config.credentialsProvider);
63
- const token = await interactor.execute();
64
- return (0, std_1.ok)(token);
91
+ const credentials = await getValidCredentials(this.parent);
92
+ if (!credentials.isComplete()) {
93
+ throw new errors_1.WaldeConfigurationError('No valid credentials available');
94
+ }
95
+ return (0, std_1.ok)(credentials.accessToken);
65
96
  }
66
97
  catch (error) {
67
98
  return (0, std_1.err)(error.message);
@@ -1 +1 @@
1
- {"version":3,"file":"credentials-future.js","sourceRoot":"","sources":["../../../../src/sdk/infra/futures/credentials-future.ts"],"names":[],"mappings":";;;AAAA,+BAAgD;AAGhD,8EAA0E;AAC1E,sFAAkF;AAClF,kEAA8D;AAC9D,wGAAkG;AAClG,gDAA+E;AAE/E,MAAa,iBAAkB,SAAQ,YAA+B;IAC5D,SAAS,GAA0C,IAAI,CAAC;IAEhE,YAAY,EAAE,MAAM,EAA0B;QAC5C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACpB,CAAC;IAED,GAAG;QACD,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9D,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO;QACL,MAAM,MAAM,GAAG,IAAI,iBAAiB,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9D,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;QAC7B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,WAAW,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAEvC,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;gBAC7B,MAAM,UAAU,GAAG,IAAI,gCAAc,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;gBAClE,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;gBAC/C,OAAO,IAAA,QAAE,EAAC,WAAW,CAAC,CAAC;YACzB,CAAC;iBAAM,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACxC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;oBAC5B,MAAM,IAAI,gCAAuB,CAAC,kCAAkC,CAAC,CAAC;gBACxE,CAAC;gBAED,MAAM,oBAAoB,GAAG,IAAI,4DAA2B,CAC1D,MAAM,CAAC,MAAM,CAAC,QAAQ,EACtB,MAAM,CAAC,MAAM,CAAC,MAAM,CACrB,CAAC;gBACF,MAAM,UAAU,GAAG,IAAI,wCAAkB,CACvC,MAAM,CAAC,mBAAmB,EAC1B,oBAAoB,CACrB,CAAC;gBACF,MAAM,WAAW,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;gBAC/C,OAAO,IAAA,QAAE,EAAC,WAAW,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,wBAAe,CAAC,wBAAwB,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,IAAA,SAAG,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;CACF;AArDD,8CAqDC;AAED,MAAM,WAAY,SAAQ,YAA0B;IAClD,YAAY,EAAE,MAAM,EAA0B;QAC5C,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACvC,MAAM,UAAU,GAAG,IAAI,oBAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;YAC5D,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;YACzC,OAAO,IAAA,QAAE,EAAC,KAAK,CAAC,CAAC;QACnB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,IAAA,SAAG,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"credentials-future.js","sourceRoot":"","sources":["../../../../src/sdk/infra/futures/credentials-future.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@walde.ai/walde-sdk",
3
- "version": "0.1.7",
3
+ "version": "0.1.8",
4
4
  "description": "TypeScript SDK for Walde",
5
5
  "main": "dist/node.js",
6
6
  "types": "dist/node.d.ts",
@@ -15,7 +15,7 @@
15
15
  "default": "./dist/browser.js"
16
16
  },
17
17
  "./node": {
18
- "types": "./dist/node.d.ts",
18
+ "types": "./dist/node.d.ts",
19
19
  "default": "./dist/node.js"
20
20
  }
21
21
  },