@walde.ai/walde-sdk 0.1.5 → 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.
Files changed (101) hide show
  1. package/dist/sdk/dev/mock-credentials-provider.d.ts +22 -0
  2. package/dist/sdk/dev/mock-credentials-provider.d.ts.map +1 -0
  3. package/dist/sdk/dev/mock-credentials-provider.js +59 -0
  4. package/dist/sdk/dev/mock-credentials-provider.js.map +1 -0
  5. package/dist/sdk/dev/s3-mock-client-factory.d.ts +15 -0
  6. package/dist/sdk/dev/s3-mock-client-factory.d.ts.map +1 -0
  7. package/dist/sdk/dev/s3-mock-client-factory.js +25 -0
  8. package/dist/sdk/dev/s3-mock-client-factory.js.map +1 -0
  9. package/dist/sdk/dev/s3-mock-client.d.ts +14 -0
  10. package/dist/sdk/dev/s3-mock-client.d.ts.map +1 -0
  11. package/dist/sdk/dev/s3-mock-client.js +45 -0
  12. package/dist/sdk/dev/s3-mock-client.js.map +1 -0
  13. package/dist/sdk/domain/entities/credentials.d.ts +5 -0
  14. package/dist/sdk/domain/entities/credentials.d.ts.map +1 -1
  15. package/dist/sdk/domain/entities/credentials.js +41 -0
  16. package/dist/sdk/domain/entities/credentials.js.map +1 -1
  17. package/dist/sdk/domain/entities/walde-admin-config.d.ts +4 -0
  18. package/dist/sdk/domain/entities/walde-admin-config.d.ts.map +1 -1
  19. package/dist/sdk/domain/entities/walde-admin-config.js +7 -2
  20. package/dist/sdk/domain/entities/walde-admin-config.js.map +1 -1
  21. package/dist/sdk/domain/ports/out/s3-client-factory.d.ts +13 -0
  22. package/dist/sdk/domain/ports/out/s3-client-factory.d.ts.map +1 -0
  23. package/dist/sdk/domain/ports/out/s3-client-factory.js +3 -0
  24. package/dist/sdk/domain/ports/out/s3-client-factory.js.map +1 -0
  25. package/dist/sdk/index.d.ts +6 -1
  26. package/dist/sdk/index.d.ts.map +1 -1
  27. package/dist/sdk/index.js +12 -3
  28. package/dist/sdk/index.js.map +1 -1
  29. package/dist/sdk/infra/adapters/admin-http-client.d.ts +16 -0
  30. package/dist/sdk/infra/adapters/admin-http-client.d.ts.map +1 -0
  31. package/dist/sdk/infra/adapters/admin-http-client.js +75 -0
  32. package/dist/sdk/infra/adapters/admin-http-client.js.map +1 -0
  33. package/dist/sdk/infra/adapters/api-client.d.ts +2 -2
  34. package/dist/sdk/infra/adapters/api-client.d.ts.map +1 -1
  35. package/dist/sdk/infra/adapters/api-client.js.map +1 -1
  36. package/dist/sdk/infra/adapters/aws-s3-client-factory.d.ts +13 -0
  37. package/dist/sdk/infra/adapters/aws-s3-client-factory.d.ts.map +1 -0
  38. package/dist/sdk/infra/adapters/aws-s3-client-factory.js +24 -0
  39. package/dist/sdk/infra/adapters/aws-s3-client-factory.js.map +1 -0
  40. package/dist/sdk/infra/adapters/default-http-client.d.ts +2 -6
  41. package/dist/sdk/infra/adapters/default-http-client.d.ts.map +1 -1
  42. package/dist/sdk/infra/adapters/default-http-client.js +7 -12
  43. package/dist/sdk/infra/adapters/default-http-client.js.map +1 -1
  44. package/dist/sdk/infra/adapters/default-token-provider.d.ts +8 -1
  45. package/dist/sdk/infra/adapters/default-token-provider.d.ts.map +1 -1
  46. package/dist/sdk/infra/adapters/default-token-provider.js +34 -1
  47. package/dist/sdk/infra/adapters/default-token-provider.js.map +1 -1
  48. package/dist/sdk/infra/adapters/frontend-http-client.d.ts +9 -7
  49. package/dist/sdk/infra/adapters/frontend-http-client.d.ts.map +1 -1
  50. package/dist/sdk/infra/adapters/frontend-http-client.js +17 -11
  51. package/dist/sdk/infra/adapters/frontend-http-client.js.map +1 -1
  52. package/dist/sdk/infra/adapters/http-request-handler.d.ts +31 -0
  53. package/dist/sdk/infra/adapters/http-request-handler.d.ts.map +1 -0
  54. package/dist/sdk/infra/adapters/http-request-handler.js +83 -0
  55. package/dist/sdk/infra/adapters/http-request-handler.js.map +1 -0
  56. package/dist/sdk/infra/adapters/repositories/aws-s3-files-repo.d.ts +3 -1
  57. package/dist/sdk/infra/adapters/repositories/aws-s3-files-repo.d.ts.map +1 -1
  58. package/dist/sdk/infra/adapters/repositories/aws-s3-files-repo.js +6 -10
  59. package/dist/sdk/infra/adapters/repositories/aws-s3-files-repo.js.map +1 -1
  60. package/dist/sdk/infra/adapters/repositories/default-walde-admin-config.d.ts.map +1 -1
  61. package/dist/sdk/infra/adapters/repositories/default-walde-admin-config.js +3 -1
  62. package/dist/sdk/infra/adapters/repositories/default-walde-admin-config.js.map +1 -1
  63. package/dist/sdk/infra/backend/walde-client.d.ts +3 -4
  64. package/dist/sdk/infra/backend/walde-client.d.ts.map +1 -1
  65. package/dist/sdk/infra/backend/walde-client.js +9 -9
  66. package/dist/sdk/infra/backend/walde-client.js.map +1 -1
  67. package/dist/sdk/infra/factories/s3-files-repo-factory.d.ts +3 -0
  68. package/dist/sdk/infra/factories/s3-files-repo-factory.d.ts.map +1 -1
  69. package/dist/sdk/infra/factories/s3-files-repo-factory.js +5 -1
  70. package/dist/sdk/infra/factories/s3-files-repo-factory.js.map +1 -1
  71. package/dist/sdk/infra/factories/walde-admin-factory.d.ts +2 -0
  72. package/dist/sdk/infra/factories/walde-admin-factory.d.ts.map +1 -1
  73. package/dist/sdk/infra/factories/walde-admin-factory.js +6 -5
  74. package/dist/sdk/infra/factories/walde-admin-factory.js.map +1 -1
  75. package/dist/sdk/infra/futures/content-by-key-future.d.ts +27 -0
  76. package/dist/sdk/infra/futures/content-by-key-future.d.ts.map +1 -0
  77. package/dist/sdk/infra/futures/content-by-key-future.js +63 -0
  78. package/dist/sdk/infra/futures/content-by-key-future.js.map +1 -0
  79. package/dist/sdk/infra/futures/content-item-future.d.ts +2 -3
  80. package/dist/sdk/infra/futures/content-item-future.d.ts.map +1 -1
  81. package/dist/sdk/infra/futures/content-item-future.js +6 -9
  82. package/dist/sdk/infra/futures/content-item-future.js.map +1 -1
  83. package/dist/sdk/infra/futures/content-list-future.d.ts +3 -3
  84. package/dist/sdk/infra/futures/content-list-future.d.ts.map +1 -1
  85. package/dist/sdk/infra/futures/content-list-future.js +14 -4
  86. package/dist/sdk/infra/futures/content-list-future.js.map +1 -1
  87. package/dist/sdk/infra/futures/credentials-future.d.ts.map +1 -1
  88. package/dist/sdk/infra/futures/credentials-future.js +38 -7
  89. package/dist/sdk/infra/futures/credentials-future.js.map +1 -1
  90. package/dist/sdk/infra/futures/frontend-contents-future.d.ts +12 -17
  91. package/dist/sdk/infra/futures/frontend-contents-future.d.ts.map +1 -1
  92. package/dist/sdk/infra/futures/frontend-contents-future.js +14 -35
  93. package/dist/sdk/infra/futures/frontend-contents-future.js.map +1 -1
  94. package/dist/sdk/infra/futures/walde-future.d.ts +3 -14
  95. package/dist/sdk/infra/futures/walde-future.d.ts.map +1 -1
  96. package/dist/sdk/infra/futures/walde-future.js +3 -31
  97. package/dist/sdk/infra/futures/walde-future.js.map +1 -1
  98. package/dist/sdk/make-walde-admin.d.ts +2 -0
  99. package/dist/sdk/make-walde-admin.d.ts.map +1 -1
  100. package/dist/sdk/make-walde-admin.js.map +1 -1
  101. package/package.json +3 -3
@@ -0,0 +1,13 @@
1
+ import { S3Client } from '@aws-sdk/client-s3';
2
+ import { S3ClientFactory } from '../../../sdk/domain/ports/out/s3-client-factory';
3
+ import { UiUploadCredentials } from '../../../sdk/domain/entities/ui-upload-credentials';
4
+ /**
5
+ * AWS implementation of S3ClientFactory that creates real S3Client instances
6
+ */
7
+ export declare class AwsS3ClientFactory implements S3ClientFactory {
8
+ /**
9
+ * Create an AWS S3Client configured with the provided credentials
10
+ */
11
+ createS3Client(credentials: UiUploadCredentials): S3Client;
12
+ }
13
+ //# sourceMappingURL=aws-s3-client-factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aws-s3-client-factory.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/aws-s3-client-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAElF;;GAEG;AACH,qBAAa,kBAAmB,YAAW,eAAe;IACxD;;OAEG;IACH,cAAc,CAAC,WAAW,EAAE,mBAAmB,GAAG,QAAQ;CAU3D"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AwsS3ClientFactory = void 0;
4
+ const client_s3_1 = require("@aws-sdk/client-s3");
5
+ /**
6
+ * AWS implementation of S3ClientFactory that creates real S3Client instances
7
+ */
8
+ class AwsS3ClientFactory {
9
+ /**
10
+ * Create an AWS S3Client configured with the provided credentials
11
+ */
12
+ createS3Client(credentials) {
13
+ return new client_s3_1.S3Client({
14
+ region: credentials.region,
15
+ credentials: {
16
+ accessKeyId: credentials.accessKey,
17
+ secretAccessKey: credentials.secretKey,
18
+ sessionToken: credentials.sessionToken
19
+ }
20
+ });
21
+ }
22
+ }
23
+ exports.AwsS3ClientFactory = AwsS3ClientFactory;
24
+ //# sourceMappingURL=aws-s3-client-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aws-s3-client-factory.js","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/aws-s3-client-factory.ts"],"names":[],"mappings":";;;AAAA,kDAA8C;AAI9C;;GAEG;AACH,MAAa,kBAAkB;IAC7B;;OAEG;IACH,cAAc,CAAC,WAAgC;QAC7C,OAAO,IAAI,oBAAQ,CAAC;YAClB,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,WAAW,EAAE;gBACX,WAAW,EAAE,WAAW,CAAC,SAAS;gBAClC,eAAe,EAAE,WAAW,CAAC,SAAS;gBACtC,YAAY,EAAE,WAAW,CAAC,YAAY;aACvC;SACF,CAAC,CAAC;IACL,CAAC;CACF;AAdD,gDAcC"}
@@ -1,15 +1,11 @@
1
1
  import { TokenProvider } from '../../domain/ports/in/token-provider';
2
- import { BaseHttpClient } from './base-http-client';
3
2
  /**
4
3
  * HTTP client for making authenticated API requests
5
4
  */
6
- export declare class DefaultHttpClient extends BaseHttpClient {
5
+ export declare class DefaultHttpClient {
6
+ private readonly baseUrl;
7
7
  private readonly tokenProvider;
8
8
  constructor(baseUrl: string, tokenProvider: TokenProvider);
9
- /**
10
- * Get headers with Bearer token authentication
11
- */
12
- protected getHeaders(): Record<string, string>;
13
9
  /**
14
10
  * Make a GET request to the specified path
15
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"default-http-client.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/default-http-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAErE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,cAAc;IAGjD,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAD9B,OAAO,EAAE,MAAM,EACE,aAAa,EAAE,aAAa;IAK/C;;OAEG;IACH,SAAS,CAAC,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAM9C;;OAEG;IACU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAIpF;;OAEG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAIjG;;OAEG;IACU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAIhG;;OAEG;IACU,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAIvF;;OAEG;IACH,OAAO,CAAC,eAAe;IAoCvB;;OAEG;YACW,OAAO;CAwCtB"}
1
+ {"version":3,"file":"default-http-client.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/default-http-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAGrE;;GAEG;AACH,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,aAAa;gBADb,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,aAAa;IAG/C;;OAEG;IACU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAIpF;;OAEG;IACU,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAIjG;;OAEG;IACU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAIhG;;OAEG;IACU,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAIvF;;OAEG;IACH,OAAO,CAAC,eAAe;IAoCvB;;OAEG;YACW,OAAO;CA4CtB"}
@@ -2,24 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DefaultHttpClient = void 0;
4
4
  const errors_1 = require("../../../sdk/domain/errors");
5
- const base_http_client_1 = require("./base-http-client");
6
5
  /**
7
6
  * HTTP client for making authenticated API requests
8
7
  */
9
- class DefaultHttpClient extends base_http_client_1.BaseHttpClient {
8
+ class DefaultHttpClient {
9
+ baseUrl;
10
10
  tokenProvider;
11
11
  constructor(baseUrl, tokenProvider) {
12
- super(baseUrl);
12
+ this.baseUrl = baseUrl;
13
13
  this.tokenProvider = tokenProvider;
14
14
  }
15
- /**
16
- * Get headers with Bearer token authentication
17
- */
18
- getHeaders() {
19
- return {
20
- 'Content-Type': 'application/json',
21
- };
22
- }
23
15
  /**
24
16
  * Make a GET request to the specified path
25
17
  */
@@ -72,9 +64,12 @@ class DefaultHttpClient extends base_http_client_1.BaseHttpClient {
72
64
  const url = `${this.baseUrl}${path}`;
73
65
  const headers = {
74
66
  'Authorization': `Bearer ${accessToken}`,
75
- 'Content-Type': 'application/json',
76
67
  ...(customHeaders || {})
77
68
  };
69
+ // Only add Content-Type for requests with body
70
+ if (body && (method === 'POST' || method === 'PUT')) {
71
+ headers['Content-Type'] = 'application/json';
72
+ }
78
73
  try {
79
74
  const response = await fetch(url, {
80
75
  method,
@@ -1 +1 @@
1
- {"version":3,"file":"default-http-client.js","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/default-http-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"default-http-client.js","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/default-http-client.ts"],"names":[],"mappings":"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"}
@@ -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,12 +1,14 @@
1
- import { BaseHttpClient } from './base-http-client';
1
+ import { HttpRequestHandler } from './http-request-handler';
2
2
  /**
3
- * HTTP client for making unauthenticated frontend API requests
3
+ * HTTP client for making unauthenticated frontend API requests.
4
+ * Only GET requests are made, so no Content-Type headers are included.
4
5
  */
5
- export declare class FrontendHttpClient extends BaseHttpClient {
6
+ export declare class FrontendHttpClient implements HttpRequestHandler {
7
+ private readonly requestHandler;
6
8
  constructor(baseUrl: string);
7
- /**
8
- * Get basic headers without authentication
9
- */
10
- protected getHeaders(): Record<string, string>;
9
+ get<T>(endpoint: string, headers?: Record<string, string>): Promise<T>;
10
+ post<T>(endpoint: string, body?: any, headers?: Record<string, string>): Promise<T>;
11
+ put<T>(endpoint: string, body?: any, headers?: Record<string, string>): Promise<T>;
12
+ delete<T>(endpoint: string, headers?: Record<string, string>): Promise<T>;
11
13
  }
12
14
  //# sourceMappingURL=frontend-http-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"frontend-http-client.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/frontend-http-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,cAAc;gBACxC,OAAO,EAAE,MAAM;IAI3B;;OAEG;IACH,SAAS,CAAC,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;CAK/C"}
1
+ {"version":3,"file":"frontend-http-client.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/frontend-http-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEpF;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,kBAAkB;IAC3D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAyB;gBAE5C,OAAO,EAAE,MAAM;IAIrB,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAItE,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAInF,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAIlF,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAGhF"}
@@ -1,21 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FrontendHttpClient = void 0;
4
- const base_http_client_1 = require("./base-http-client");
4
+ const http_request_handler_1 = require("./http-request-handler");
5
5
  /**
6
- * HTTP client for making unauthenticated frontend API requests
6
+ * HTTP client for making unauthenticated frontend API requests.
7
+ * Only GET requests are made, so no Content-Type headers are included.
7
8
  */
8
- class FrontendHttpClient extends base_http_client_1.BaseHttpClient {
9
+ class FrontendHttpClient {
10
+ requestHandler;
9
11
  constructor(baseUrl) {
10
- super(baseUrl);
12
+ this.requestHandler = new http_request_handler_1.CoreHttpRequestHandler(baseUrl);
11
13
  }
12
- /**
13
- * Get basic headers without authentication
14
- */
15
- getHeaders() {
16
- return {
17
- 'Content-Type': 'application/json',
18
- };
14
+ async get(endpoint, headers) {
15
+ return this.requestHandler.get(endpoint, headers);
16
+ }
17
+ async post(endpoint, body, headers) {
18
+ return this.requestHandler.post(endpoint, body, headers);
19
+ }
20
+ async put(endpoint, body, headers) {
21
+ return this.requestHandler.put(endpoint, body, headers);
22
+ }
23
+ async delete(endpoint, headers) {
24
+ return this.requestHandler.delete(endpoint, headers);
19
25
  }
20
26
  }
21
27
  exports.FrontendHttpClient = FrontendHttpClient;
@@ -1 +1 @@
1
- {"version":3,"file":"frontend-http-client.js","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/frontend-http-client.ts"],"names":[],"mappings":";;;AAAA,yDAAoD;AAEpD;;GAEG;AACH,MAAa,kBAAmB,SAAQ,iCAAc;IACpD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED;;OAEG;IACO,UAAU;QAClB,OAAO;YACL,cAAc,EAAE,kBAAkB;SACnC,CAAC;IACJ,CAAC;CACF;AAbD,gDAaC"}
1
+ {"version":3,"file":"frontend-http-client.js","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/frontend-http-client.ts"],"names":[],"mappings":";;;AAAA,iEAAoF;AAEpF;;;GAGG;AACH,MAAa,kBAAkB;IACZ,cAAc,CAAyB;IAExD,YAAY,OAAe;QACzB,IAAI,CAAC,cAAc,GAAG,IAAI,6CAAsB,CAAC,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,QAAgB,EAAE,OAAgC;QAC7D,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAI,QAAQ,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,IAAI,CAAI,QAAgB,EAAE,IAAU,EAAE,OAAgC;QAC1E,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAI,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,QAAgB,EAAE,IAAU,EAAE,OAAgC;QACzE,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAI,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,MAAM,CAAI,QAAgB,EAAE,OAAgC;QAChE,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM,CAAI,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;CACF;AAtBD,gDAsBC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Interface for HTTP request handling
3
+ */
4
+ export interface HttpRequestHandler {
5
+ get<T>(endpoint: string, headers?: Record<string, string>): Promise<T>;
6
+ post<T>(endpoint: string, body?: any, headers?: Record<string, string>): Promise<T>;
7
+ put<T>(endpoint: string, body?: any, headers?: Record<string, string>): Promise<T>;
8
+ delete<T>(endpoint: string, headers?: Record<string, string>): Promise<T>;
9
+ }
10
+ /**
11
+ * HTTP request configuration
12
+ */
13
+ export interface HttpRequestConfig {
14
+ method: 'GET' | 'POST' | 'PUT' | 'DELETE';
15
+ endpoint: string;
16
+ body?: any;
17
+ headers?: Record<string, string>;
18
+ }
19
+ /**
20
+ * Core HTTP request handler implementation
21
+ */
22
+ export declare class CoreHttpRequestHandler implements HttpRequestHandler {
23
+ private readonly baseUrl;
24
+ constructor(baseUrl: string);
25
+ get<T>(endpoint: string, headers?: Record<string, string>): Promise<T>;
26
+ post<T>(endpoint: string, body?: any, headers?: Record<string, string>): Promise<T>;
27
+ put<T>(endpoint: string, body?: any, headers?: Record<string, string>): Promise<T>;
28
+ delete<T>(endpoint: string, headers?: Record<string, string>): Promise<T>;
29
+ private makeRequest;
30
+ }
31
+ //# sourceMappingURL=http-request-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-request-handler.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/http-request-handler.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACvE,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACpF,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACnF,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CAC3E;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,qBAAa,sBAAuB,YAAW,kBAAkB;IACnD,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,MAAM;IAEtC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAQtE,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAYnF,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAYlF,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YAQjE,WAAW;CAqC1B"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CoreHttpRequestHandler = void 0;
4
+ const errors_1 = require("../../../sdk/domain/errors");
5
+ /**
6
+ * Core HTTP request handler implementation
7
+ */
8
+ class CoreHttpRequestHandler {
9
+ baseUrl;
10
+ constructor(baseUrl) {
11
+ this.baseUrl = baseUrl;
12
+ }
13
+ async get(endpoint, headers) {
14
+ return this.makeRequest({
15
+ method: 'GET',
16
+ endpoint,
17
+ headers
18
+ });
19
+ }
20
+ async post(endpoint, body, headers) {
21
+ return this.makeRequest({
22
+ method: 'POST',
23
+ endpoint,
24
+ body,
25
+ headers: {
26
+ 'Content-Type': 'application/json',
27
+ ...headers
28
+ }
29
+ });
30
+ }
31
+ async put(endpoint, body, headers) {
32
+ return this.makeRequest({
33
+ method: 'PUT',
34
+ endpoint,
35
+ body,
36
+ headers: {
37
+ 'Content-Type': 'application/json',
38
+ ...headers
39
+ }
40
+ });
41
+ }
42
+ async delete(endpoint, headers) {
43
+ return this.makeRequest({
44
+ method: 'DELETE',
45
+ endpoint,
46
+ headers
47
+ });
48
+ }
49
+ async makeRequest(config) {
50
+ const url = `${this.baseUrl}${config.endpoint}`;
51
+ try {
52
+ const response = await fetch(url, {
53
+ method: config.method,
54
+ headers: config.headers,
55
+ body: config.body ? JSON.stringify(config.body) : undefined,
56
+ });
57
+ if (!response.ok) {
58
+ throw new errors_1.WaldeNetworkError(`HTTP ${response.status}: ${response.statusText} for ${url}`, new Error(`HTTP ${response.status}`), {
59
+ statusCode: response.status,
60
+ statusMessage: response.statusText,
61
+ url,
62
+ response: null
63
+ });
64
+ }
65
+ const contentType = response.headers.get('content-type');
66
+ if (contentType && contentType.includes('application/json')) {
67
+ const data = await response.text();
68
+ return data ? JSON.parse(data) : null;
69
+ }
70
+ else {
71
+ return (await response.text());
72
+ }
73
+ }
74
+ catch (error) {
75
+ if (error instanceof errors_1.WaldeNetworkError) {
76
+ throw error;
77
+ }
78
+ throw new errors_1.WaldeUnexpectedError('HTTP request failed', error);
79
+ }
80
+ }
81
+ }
82
+ exports.CoreHttpRequestHandler = CoreHttpRequestHandler;
83
+ //# sourceMappingURL=http-request-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-request-handler.js","sourceRoot":"","sources":["../../../../src/sdk/infra/adapters/http-request-handler.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,13 @@
1
1
  import { RemoteFilesRepo } from '../../../../sdk/domain/ports/out/remote-files-repo';
2
+ import { S3ClientFactory } from '../../../../sdk/domain/ports/out/s3-client-factory';
2
3
  import { File } from '../../../../sdk/domain/entities/file';
3
4
  import { UiUploadCredentials } from '../../../../sdk/domain/entities/ui-upload-credentials';
4
5
  /**
5
6
  * AWS S3 implementation for uploading UI files
6
7
  */
7
8
  export declare class AwsS3FilesRepo implements RemoteFilesRepo {
8
- constructor();
9
+ private readonly s3ClientFactory;
10
+ constructor(s3ClientFactory: S3ClientFactory);
9
11
  /**
10
12
  * Upload files to AWS S3 using temporary credentials
11
13
  */
@@ -1 +1 @@
1
- {"version":3,"file":"aws-s3-files-repo.d.ts","sourceRoot":"","sources":["../../../../../src/sdk/infra/adapters/repositories/aws-s3-files-repo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAGlF;;GAEG;AACH,qBAAa,cAAe,YAAW,eAAe;;IAGpD;;OAEG;IACU,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOxF;;OAEG;IACU,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBpF;;OAEG;IACH,OAAO,CAAC,cAAc;CA2BvB"}
1
+ {"version":3,"file":"aws-s3-files-repo.d.ts","sourceRoot":"","sources":["../../../../../src/sdk/infra/adapters/repositories/aws-s3-files-repo.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAGlF;;GAEG;AACH,qBAAa,cAAe,YAAW,eAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,eAAe;gBAAf,eAAe,EAAE,eAAe;IAE7D;;OAEG;IACU,WAAW,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOxF;;OAEG;IACU,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBpF;;OAEG;IACH,OAAO,CAAC,cAAc;CA2BvB"}
@@ -7,7 +7,10 @@ const errors_1 = require("../../../../sdk/domain/errors");
7
7
  * AWS S3 implementation for uploading UI files
8
8
  */
9
9
  class AwsS3FilesRepo {
10
- constructor() { }
10
+ s3ClientFactory;
11
+ constructor(s3ClientFactory) {
12
+ this.s3ClientFactory = s3ClientFactory;
13
+ }
11
14
  /**
12
15
  * Upload files to AWS S3 using temporary credentials
13
16
  */
@@ -21,15 +24,8 @@ class AwsS3FilesRepo {
21
24
  * Upload a single file to AWS S3 using temporary credentials
22
25
  */
23
26
  async uploadFile(file, credentials) {
24
- // Create S3 client with temporary AWS credentials and region from credentials
25
- const s3Client = new client_s3_1.S3Client({
26
- region: credentials.region,
27
- credentials: {
28
- accessKeyId: credentials.accessKey,
29
- secretAccessKey: credentials.secretKey,
30
- sessionToken: credentials.sessionToken
31
- }
32
- });
27
+ // Create S3 client using factory with runtime credentials
28
+ const s3Client = this.s3ClientFactory.createS3Client(credentials);
33
29
  const command = new client_s3_1.PutObjectCommand({
34
30
  Bucket: credentials.bucketName,
35
31
  Key: file.path,
@@ -1 +1 @@
1
- {"version":3,"file":"aws-s3-files-repo.js","sourceRoot":"","sources":["../../../../../src/sdk/infra/adapters/repositories/aws-s3-files-repo.ts"],"names":[],"mappings":";;;AAAA,kDAAgE;AAIhE,gDAAsD;AAEtD;;GAEG;AACH,MAAa,cAAc;IACzB,gBAAe,CAAC;IAEhB;;OAEG;IACI,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,WAAgC;QACtE,yEAAyE;QACzE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,UAAU,CAAC,IAAU,EAAE,WAAgC;QAClE,8EAA8E;QAC9E,MAAM,QAAQ,GAAG,IAAI,oBAAQ,CAAC;YAC5B,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,WAAW,EAAE;gBACX,WAAW,EAAE,WAAW,CAAC,SAAS;gBAClC,eAAe,EAAE,WAAW,CAAC,SAAS;gBACtC,YAAY,EAAE,WAAW,CAAC,YAAY;aACvC;SACF,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,4BAAgB,CAAC;YACnC,MAAM,EAAE,WAAW,CAAC,UAAU;YAC9B,GAAG,EAAE,IAAI,CAAC,IAAI;YACd,IAAI,EAAE,IAAI,CAAC,OAAO;YAClB,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;SAC5C,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,wBAAe,CAAC,wBAAwB,EAAE,KAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,QAAgB;QACrC,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,CAAC;QAE3D,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,MAAM;gBACT,OAAO,WAAW,CAAC;YACrB,KAAK,KAAK;gBACR,OAAO,UAAU,CAAC;YACpB,KAAK,IAAI;gBACP,OAAO,wBAAwB,CAAC;YAClC,KAAK,MAAM;gBACT,OAAO,kBAAkB,CAAC;YAC5B,KAAK,KAAK;gBACR,OAAO,WAAW,CAAC;YACrB,KAAK,KAAK,CAAC;YACX,KAAK,MAAM;gBACT,OAAO,YAAY,CAAC;YACtB,KAAK,KAAK;gBACR,OAAO,WAAW,CAAC;YACrB,KAAK,KAAK;gBACR,OAAO,eAAe,CAAC;YACzB,KAAK,KAAK;gBACR,OAAO,cAAc,CAAC;YACxB;gBACE,OAAO,0BAA0B,CAAC;QACtC,CAAC;IACH,CAAC;CACF;AAvED,wCAuEC"}
1
+ {"version":3,"file":"aws-s3-files-repo.js","sourceRoot":"","sources":["../../../../../src/sdk/infra/adapters/repositories/aws-s3-files-repo.ts"],"names":[],"mappings":";;;AAAA,kDAAsD;AAKtD,gDAAsD;AAEtD;;GAEG;AACH,MAAa,cAAc;IACI;IAA7B,YAA6B,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;IAAG,CAAC;IAEjE;;OAEG;IACI,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,WAAgC;QACtE,yEAAyE;QACzE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,UAAU,CAAC,IAAU,EAAE,WAAgC;QAClE,0DAA0D;QAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAElE,MAAM,OAAO,GAAG,IAAI,4BAAgB,CAAC;YACnC,MAAM,EAAE,WAAW,CAAC,UAAU;YAC9B,GAAG,EAAE,IAAI,CAAC,IAAI;YACd,IAAI,EAAE,IAAI,CAAC,OAAO;YAClB,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;SAC5C,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,wBAAe,CAAC,wBAAwB,EAAE,KAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,QAAgB;QACrC,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,CAAC;QAE3D,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,MAAM;gBACT,OAAO,WAAW,CAAC;YACrB,KAAK,KAAK;gBACR,OAAO,UAAU,CAAC;YACpB,KAAK,IAAI;gBACP,OAAO,wBAAwB,CAAC;YAClC,KAAK,MAAM;gBACT,OAAO,kBAAkB,CAAC;YAC5B,KAAK,KAAK;gBACR,OAAO,WAAW,CAAC;YACrB,KAAK,KAAK,CAAC;YACX,KAAK,MAAM;gBACT,OAAO,YAAY,CAAC;YACtB,KAAK,KAAK;gBACR,OAAO,WAAW,CAAC;YACrB,KAAK,KAAK;gBACR,OAAO,eAAe,CAAC;YACzB,KAAK,KAAK;gBACR,OAAO,cAAc,CAAC;YACxB;gBACE,OAAO,0BAA0B,CAAC;QACtC,CAAC;IACH,CAAC;CACF;AAhED,wCAgEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"default-walde-admin-config.d.ts","sourceRoot":"","sources":["../../../../../src/sdk/infra/adapters/repositories/default-walde-admin-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAGrE;;GAEG;AACH,qBAAa,uBAAuB;IAClC;;OAEG;WACW,MAAM,IAAI,sBAAsB;CAW/C"}
1
+ {"version":3,"file":"default-walde-admin-config.d.ts","sourceRoot":"","sources":["../../../../../src/sdk/infra/adapters/repositories/default-walde-admin-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAIrE;;GAEG;AACH,qBAAa,uBAAuB;IAClC;;OAEG;WACW,MAAM,IAAI,sBAAsB;CAY/C"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DefaultWaldeAdminConfig = void 0;
4
4
  const static_walde_admin_config_1 = require("./static-walde-admin-config");
5
+ const aws_s3_client_factory_1 = require("../../../../sdk/infra/adapters/aws-s3-client-factory");
5
6
  /**
6
7
  * Factory for creating default configuration with fallback values
7
8
  */
@@ -14,7 +15,8 @@ class DefaultWaldeAdminConfig {
14
15
  endpoint: 'https://api.walde.ai',
15
16
  clientId: '2na3vdtebghu3se9rvimtuiaej',
16
17
  region: 'eu-central-1',
17
- userPoolId: 'eu-central-1_XLyUuL5PG'
18
+ userPoolId: 'eu-central-1_XLyUuL5PG',
19
+ s3ClientFactory: new aws_s3_client_factory_1.AwsS3ClientFactory()
18
20
  };
19
21
  // Cast to partial for StaticWaldeAdminConfig constructor
20
22
  return new static_walde_admin_config_1.StaticWaldeAdminConfig(defaultConfig);
@@ -1 +1 @@
1
- {"version":3,"file":"default-walde-admin-config.js","sourceRoot":"","sources":["../../../../../src/sdk/infra/adapters/repositories/default-walde-admin-config.ts"],"names":[],"mappings":";;;AAAA,2EAAqE;AAGrE;;GAEG;AACH,MAAa,uBAAuB;IAClC;;OAEG;IACI,MAAM,CAAC,MAAM;QAClB,MAAM,aAAa,GAAyB;YAC1C,QAAQ,EAAE,sBAAsB;YAChC,QAAQ,EAAE,4BAA4B;YACtC,MAAM,EAAE,cAAc;YACtB,UAAU,EAAE,wBAAwB;SACrC,CAAC;QAEF,yDAAyD;QACzD,OAAO,IAAI,kDAAsB,CAAC,aAA4C,CAAC,CAAC;IAClF,CAAC;CACF;AAfD,0DAeC"}
1
+ {"version":3,"file":"default-walde-admin-config.js","sourceRoot":"","sources":["../../../../../src/sdk/infra/adapters/repositories/default-walde-admin-config.ts"],"names":[],"mappings":";;;AAAA,2EAAqE;AAErE,sFAAgF;AAEhF;;GAEG;AACH,MAAa,uBAAuB;IAClC;;OAEG;IACI,MAAM,CAAC,MAAM;QAClB,MAAM,aAAa,GAAyB;YAC1C,QAAQ,EAAE,sBAAsB;YAChC,QAAQ,EAAE,4BAA4B;YACtC,MAAM,EAAE,cAAc;YACtB,UAAU,EAAE,wBAAwB;YACpC,eAAe,EAAE,IAAI,0CAAkB,EAAE;SAC1C,CAAC;QAEF,yDAAyD;QACzD,OAAO,IAAI,kDAAsB,CAAC,aAA4C,CAAC,CAAC;IAClF,CAAC;CACF;AAhBD,0DAgBC"}
@@ -1,9 +1,8 @@
1
1
  import { BackendClient } from '../../../sdk/domain/ports/backend/backend-client';
2
- import { BaseHttpClient } from '../../../sdk/infra/adapters/base-http-client';
3
- export declare class WaldeClient extends BaseHttpClient implements BackendClient {
4
- private getAuthToken;
2
+ export declare class WaldeClient implements BackendClient {
3
+ private readonly baseUrl;
4
+ private readonly getAuthToken;
5
5
  constructor(baseUrl: string, getAuthToken: () => Promise<string>);
6
- protected getHeaders(): Record<string, string>;
7
6
  get<T>(endpoint: string, headers?: Record<string, string>): Promise<T>;
8
7
  post<T>(endpoint: string, data?: any, headers?: Record<string, string>): Promise<T>;
9
8
  put<T>(endpoint: string, data?: any, headers?: Record<string, string>): Promise<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"walde-client.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/backend/walde-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAEvE,qBAAa,WAAY,SAAQ,cAAe,YAAW,aAAa;IAGpE,OAAO,CAAC,YAAY;gBADpB,OAAO,EAAE,MAAM,EACP,YAAY,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC;IAK7C,SAAS,CAAC,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAMxC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAKtE,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAKnF,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAKlF,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YAKjE,cAAc;YAKd,wBAAwB;CAqBvC"}
1
+ {"version":3,"file":"walde-client.d.ts","sourceRoot":"","sources":["../../../../src/sdk/infra/backend/walde-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAE1E,qBAAa,WAAY,YAAW,aAAa;IAE7C,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBADZ,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC;IAGhD,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAKtE,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAKnF,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAKlF,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;YAKjE,cAAc;YAKd,wBAAwB;CA4BvC"}
@@ -1,18 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.WaldeClient = void 0;
4
- const base_http_client_1 = require("../../../sdk/infra/adapters/base-http-client");
5
- class WaldeClient extends base_http_client_1.BaseHttpClient {
4
+ class WaldeClient {
5
+ baseUrl;
6
6
  getAuthToken;
7
7
  constructor(baseUrl, getAuthToken) {
8
- super(baseUrl);
8
+ this.baseUrl = baseUrl;
9
9
  this.getAuthToken = getAuthToken;
10
10
  }
11
- getHeaders() {
12
- return {
13
- 'Content-Type': 'application/json',
14
- };
15
- }
16
11
  async get(endpoint, headers) {
17
12
  const authHeaders = await this.getAuthHeaders();
18
13
  return this.makeAuthenticatedRequest('GET', endpoint, undefined, { ...authHeaders, ...headers });
@@ -35,9 +30,14 @@ class WaldeClient extends base_http_client_1.BaseHttpClient {
35
30
  }
36
31
  async makeAuthenticatedRequest(method, endpoint, data, headers) {
37
32
  const url = `${this.baseUrl}${endpoint}`;
33
+ const requestHeaders = { ...headers };
34
+ // Only add Content-Type for requests with body
35
+ if (data && (method === 'POST' || method === 'PUT')) {
36
+ requestHeaders['Content-Type'] = 'application/json';
37
+ }
38
38
  const response = await fetch(url, {
39
39
  method,
40
- headers: { ...this.getHeaders(), ...headers },
40
+ headers: requestHeaders,
41
41
  body: data && (method === 'POST' || method === 'PUT') ? JSON.stringify(data) : undefined,
42
42
  });
43
43
  if (!response.ok) {
@@ -1 +1 @@
1
- {"version":3,"file":"walde-client.js","sourceRoot":"","sources":["../../../../src/sdk/infra/backend/walde-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"walde-client.js","sourceRoot":"","sources":["../../../../src/sdk/infra/backend/walde-client.ts"],"names":[],"mappings":"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"}