@aifabrix/miso-client 1.3.0 → 1.5.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.
Files changed (65) hide show
  1. package/README.md +115 -0
  2. package/dist/examples/custom-sensitive-fields.example.d.ts +48 -0
  3. package/dist/examples/custom-sensitive-fields.example.d.ts.map +1 -0
  4. package/dist/examples/custom-sensitive-fields.example.js +31 -0
  5. package/dist/examples/custom-sensitive-fields.example.js.map +1 -0
  6. package/dist/src/index.d.ts +8 -1
  7. package/dist/src/index.d.ts.map +1 -1
  8. package/dist/src/index.js +33 -4
  9. package/dist/src/index.js.map +1 -1
  10. package/dist/src/types/config.types.d.ts +1 -0
  11. package/dist/src/types/config.types.d.ts.map +1 -1
  12. package/dist/src/types/config.types.js.map +1 -1
  13. package/dist/src/types/errors.types.d.ts +30 -0
  14. package/dist/src/types/errors.types.d.ts.map +1 -0
  15. package/dist/src/types/errors.types.js +7 -0
  16. package/dist/src/types/errors.types.js.map +1 -0
  17. package/dist/src/types/filter.types.d.ts +66 -0
  18. package/dist/src/types/filter.types.d.ts.map +1 -0
  19. package/dist/src/types/filter.types.js +57 -0
  20. package/dist/src/types/filter.types.js.map +1 -0
  21. package/dist/src/types/pagination.types.d.ts +28 -0
  22. package/dist/src/types/pagination.types.d.ts.map +1 -0
  23. package/dist/src/types/pagination.types.js +7 -0
  24. package/dist/src/types/pagination.types.js.map +1 -0
  25. package/dist/src/types/sort.types.d.ts +14 -0
  26. package/dist/src/types/sort.types.d.ts.map +1 -0
  27. package/dist/src/types/sort.types.js +7 -0
  28. package/dist/src/types/sort.types.js.map +1 -0
  29. package/dist/src/utils/config-loader.d.ts.map +1 -1
  30. package/dist/src/utils/config-loader.js +4 -0
  31. package/dist/src/utils/config-loader.js.map +1 -1
  32. package/dist/src/utils/data-masker.d.ts +20 -1
  33. package/dist/src/utils/data-masker.d.ts.map +1 -1
  34. package/dist/src/utils/data-masker.js +53 -27
  35. package/dist/src/utils/data-masker.js.map +1 -1
  36. package/dist/src/utils/errors.d.ts +26 -0
  37. package/dist/src/utils/errors.d.ts.map +1 -1
  38. package/dist/src/utils/errors.js +100 -1
  39. package/dist/src/utils/errors.js.map +1 -1
  40. package/dist/src/utils/filter.utils.d.ts +27 -0
  41. package/dist/src/utils/filter.utils.d.ts.map +1 -0
  42. package/dist/src/utils/filter.utils.js +95 -0
  43. package/dist/src/utils/filter.utils.js.map +1 -0
  44. package/dist/src/utils/http-client.d.ts +39 -21
  45. package/dist/src/utils/http-client.d.ts.map +1 -1
  46. package/dist/src/utils/http-client.js +177 -269
  47. package/dist/src/utils/http-client.js.map +1 -1
  48. package/dist/src/utils/internal-http-client.d.ts +49 -0
  49. package/dist/src/utils/internal-http-client.d.ts.map +1 -0
  50. package/dist/src/utils/internal-http-client.js +333 -0
  51. package/dist/src/utils/internal-http-client.js.map +1 -0
  52. package/dist/src/utils/pagination.utils.d.ts +41 -0
  53. package/dist/src/utils/pagination.utils.d.ts.map +1 -0
  54. package/dist/src/utils/pagination.utils.js +57 -0
  55. package/dist/src/utils/pagination.utils.js.map +1 -0
  56. package/dist/src/utils/sensitive-fields.config.json +67 -0
  57. package/dist/src/utils/sensitive-fields.loader.d.ts +29 -0
  58. package/dist/src/utils/sensitive-fields.loader.d.ts.map +1 -0
  59. package/dist/src/utils/sensitive-fields.loader.js +246 -0
  60. package/dist/src/utils/sensitive-fields.loader.js.map +1 -0
  61. package/dist/src/utils/sort.utils.d.ts +19 -0
  62. package/dist/src/utils/sort.utils.d.ts.map +1 -0
  63. package/dist/src/utils/sort.utils.js +34 -0
  64. package/dist/src/utils/sort.utils.js.map +1 -0
  65. package/package.json +5 -5
package/README.md CHANGED
@@ -48,6 +48,14 @@ The **AI Fabrix Miso Client SDK** provides authentication, authorization, and lo
48
48
  - Forensic analysis support
49
49
  - Compliance reporting automation
50
50
 
51
+ **HTTP Request Audit (ISO 27001 Compliant)**
52
+ - Automatic audit logging for all HTTP requests
53
+ - Sensitive data masking (passwords, tokens, PII, financial data)
54
+ - Configurable sensitive fields via JSON configuration
55
+ - Debug logging with automatic data protection
56
+ - Request/response metadata capture
57
+ - User context extraction from JWT tokens
58
+
51
59
  ### ⚡ Performance & Scalability
52
60
 
53
61
  **Intelligent Caching**
@@ -290,6 +298,51 @@ await client.log.audit('access.denied', 'authorization', {
290
298
 
291
299
  ---
292
300
 
301
+ ### Step 6.5: HTTP Request Audit (ISO 27001)
302
+
303
+ **What happens:** All HTTP requests are automatically audited with sensitive data masking for ISO 27001 compliance.
304
+
305
+ ```typescript
306
+ import { MisoClient, loadConfig } from '@aifabrix/miso-client';
307
+
308
+ const client = new MisoClient(loadConfig());
309
+ await client.initialize();
310
+
311
+ // HTTP requests are automatically audited
312
+ // - All requests/responses are logged with masked sensitive data
313
+ // - User context is extracted from JWT tokens
314
+ // - Request/response metadata (duration, size, status codes) is captured
315
+ // - Sensitive fields (passwords, tokens, PII, financial data) are automatically masked
316
+
317
+ // No additional code needed - works automatically!
318
+ const user = await client.getUser(token);
319
+ // This HTTP request is automatically audited with ISO 27001 compliance
320
+ ```
321
+
322
+ **Configuration (Optional):**
323
+
324
+ ```bash
325
+ # Add to .env for custom sensitive fields configuration
326
+ MISO_SENSITIVE_FIELDS_CONFIG=/path/to/sensitive-fields.config.json
327
+ ```
328
+
329
+ **What gets audited:**
330
+ - All HTTP requests to the controller
331
+ - Request/response metadata (method, URL, status, duration, size)
332
+ - User context (extracted from JWT tokens)
333
+ - Sensitive data is automatically masked (passwords, tokens, PII, credit cards, etc.)
334
+
335
+ **ISO 27001 Compliance:**
336
+ - Automatic sensitive data masking before logging
337
+ - Configurable sensitive field patterns
338
+ - Audit trail for all API communications
339
+ - Data protection controls enforced
340
+
341
+ → [Custom sensitive fields example](examples/custom-sensitive-fields.example.ts)
342
+ → [Sensitive fields config example](examples/sensitive-fields-config.example.json)
343
+
344
+ ---
345
+
293
346
  ### Step 7: Encryption & Caching
294
347
 
295
348
  **What happens:** Use encryption for sensitive data and generic caching for improved performance.
@@ -326,6 +379,66 @@ ENCRYPTION_KEY=your-32-byte-encryption-key
326
379
  → [API Reference](docs/api-reference.md#encryption-methods)
327
380
  → [Cache Methods](docs/api-reference.md#cache-methods)
328
381
 
382
+ ---
383
+
384
+ ### Step 8: Pagination, Filter, and Sort Utilities
385
+
386
+ **What happens:** Use reusable utilities for pagination, filtering, and sorting following enterprise application best practices and industry standards (ISO 27001 compliant).
387
+
388
+ ```typescript
389
+ import {
390
+ FilterBuilder,
391
+ parse_pagination_params,
392
+ parse_sort_params,
393
+ build_query_string,
394
+ create_paginated_list_response
395
+ } from '@aifabrix/miso-client';
396
+
397
+ const client = new MisoClient(loadConfig());
398
+ await client.initialize();
399
+
400
+ // Dynamic filter building (FilterBuilder)
401
+ const filterBuilder = new FilterBuilder()
402
+ .add('status', 'eq', 'active')
403
+ .add('region', 'in', ['eu', 'us'])
404
+ .add('created_at', 'gte', '2024-01-01');
405
+
406
+ const queryString = filterBuilder.toQueryString();
407
+ // Returns: "filter=status:eq:active&filter=region:in:eu,us&filter=created_at:gte:2024-01-01"
408
+
409
+ // Parse pagination from query string
410
+ const { current_page, page_size } = parse_pagination_params({ page: '1', page_size: '25' });
411
+
412
+ // Parse sort from query string
413
+ const sortOptions = parse_sort_params({ sort: '-updated_at' });
414
+
415
+ // Build complete query
416
+ const completeQuery = build_query_string({
417
+ filters: filterBuilder.build(),
418
+ sort: ['-updated_at'],
419
+ page: current_page,
420
+ page_size: page_size
421
+ });
422
+
423
+ // Create paginated response
424
+ const response = create_paginated_list_response(
425
+ items,
426
+ 120, // total_items
427
+ 1, // current_page
428
+ 25, // page_size
429
+ 'application' // type
430
+ );
431
+ ```
432
+
433
+ **Note:** All utilities use **snake_case** naming conventions following enterprise application standards (`current_page`, `page_size`, `status_code`, etc.), ensuring consistency and ISO 27001 compliance.
434
+
435
+ **Pro tip:** These utilities are business-logic-free and reusable across applications. Perfect for building query strings, parsing API responses, and testing with mocks. Designed following enterprise best practices for maintainability and compliance.
436
+
437
+ → [Complete pagination example](docs/examples.md#pagination)
438
+ → [Complete filter example](docs/examples.md#filtering)
439
+ → [Complete sort example](docs/examples.md#sorting)
440
+ → [API Reference](docs/api-reference.md#pagination-utilities)
441
+
329
442
 
330
443
  ---
331
444
 
@@ -339,6 +452,7 @@ interface MisoClientConfig {
339
452
  redis?: RedisConfig; // Optional: For caching
340
453
  logLevel?: 'debug' | 'info' | 'warn' | 'error';
341
454
  encryptionKey?: string; // Optional: Encryption key (or use ENCRYPTION_KEY env var)
455
+ sensitiveFieldsConfig?: string; // Optional: Path to ISO 27001 sensitive fields config JSON
342
456
  cache?: {
343
457
  roleTTL?: number; // Role cache TTL (default: 900s)
344
458
  permissionTTL?: number; // Permission cache TTL (default: 900s)
@@ -447,6 +561,7 @@ MISO_CONTROLLER_URL=http://localhost:3000
447
561
  REDIS_HOST=localhost
448
562
  REDIS_PORT=6379
449
563
  MISO_LOG_LEVEL=info
564
+ MISO_SENSITIVE_FIELDS_CONFIG=/path/to/sensitive-fields.config.json # Optional: ISO 27001 config
450
565
  ```
451
566
 
452
567
  ---
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Example: Custom Sensitive Fields Configuration
3
+ *
4
+ * This example shows how to use a custom sensitive fields configuration file
5
+ * to extend the default ISO 27001 compliant sensitive fields.
6
+ */
7
+ declare function example(): Promise<void>;
8
+ /**
9
+ * Custom Sensitive Fields Configuration File Structure
10
+ *
11
+ * Create a JSON file with the following structure:
12
+ *
13
+ * {
14
+ * "version": "1.0.0",
15
+ * "description": "Your custom sensitive fields configuration",
16
+ * "categories": {
17
+ * "authentication": [
18
+ * "password",
19
+ * "token",
20
+ * // ... add your custom authentication fields
21
+ * ],
22
+ * "pii": [
23
+ * "email",
24
+ * "ssn",
25
+ * // ... add your custom PII fields
26
+ * ],
27
+ * "financial": [
28
+ * "creditCard",
29
+ * // ... add your custom financial fields
30
+ * ],
31
+ * "security": [
32
+ * "privateKey",
33
+ * // ... add your custom security fields
34
+ * ]
35
+ * },
36
+ * "fieldPatterns": [
37
+ * "password",
38
+ * "secret",
39
+ * // ... add patterns that match sensitive fields
40
+ * ]
41
+ * }
42
+ *
43
+ * Note: Your custom fields will be merged with the default fields.
44
+ * This means you can extend the default configuration without losing
45
+ * the built-in ISO 27001 compliant fields.
46
+ */
47
+ export { example };
48
+ //# sourceMappingURL=custom-sensitive-fields.example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-sensitive-fields.example.d.ts","sourceRoot":"","sources":["../../examples/custom-sensitive-fields.example.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,iBAAe,OAAO,kBA0BrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,EAAE,OAAO,EAAE,CAAC"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ /**
3
+ * Example: Custom Sensitive Fields Configuration
4
+ *
5
+ * This example shows how to use a custom sensitive fields configuration file
6
+ * to extend the default ISO 27001 compliant sensitive fields.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.example = example;
10
+ const index_1 = require("../src/index");
11
+ async function example() {
12
+ // Option 1: Use environment variable
13
+ // Set MISO_SENSITIVE_FIELDS_CONFIG=/path/to/custom-sensitive-fields.json in .env
14
+ process.env.MISO_SENSITIVE_FIELDS_CONFIG = './custom-sensitive-fields.json';
15
+ // Option 2: Pass in config directly
16
+ const config = {
17
+ ...(0, index_1.loadConfig)(),
18
+ sensitiveFieldsConfig: './custom-sensitive-fields.json' // Path to your custom config
19
+ };
20
+ const client = new index_1.MisoClient(config);
21
+ await client.initialize();
22
+ // Now all HTTP requests will use your custom sensitive fields configuration
23
+ // for masking sensitive data in audit and debug logs
24
+ const token = 'your-jwt-token-here';
25
+ // This request will be automatically audited and debug logged (if logLevel === 'debug')
26
+ // All sensitive data will be masked using your custom configuration
27
+ const user = await client.getUser(token);
28
+ console.log('User:', user);
29
+ await client.disconnect();
30
+ }
31
+ //# sourceMappingURL=custom-sensitive-fields.example.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-sensitive-fields.example.js","sourceRoot":"","sources":["../../examples/custom-sensitive-fields.example.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAwEM,0BAAO;AAtEhB,wCAAsD;AAEtD,KAAK,UAAU,OAAO;IACpB,qCAAqC;IACrC,iFAAiF;IACjF,OAAO,CAAC,GAAG,CAAC,4BAA4B,GAAG,gCAAgC,CAAC;IAE5E,oCAAoC;IACpC,MAAM,MAAM,GAAG;QACb,GAAG,IAAA,kBAAU,GAAE;QACf,qBAAqB,EAAE,gCAAgC,CAAC,6BAA6B;KACtF,CAAC;IAEF,MAAM,MAAM,GAAG,IAAI,kBAAU,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;IAE1B,4EAA4E;IAC5E,qDAAqD;IAErD,MAAM,KAAK,GAAG,qBAAqB,CAAC;IAEpC,wFAAwF;IACxF,oEAAoE;IACpE,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAEzC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAE3B,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;AAC5B,CAAC"}
@@ -135,6 +135,10 @@ export declare class MisoClient {
135
135
  isRedisConnected(): boolean;
136
136
  }
137
137
  export * from './types/config.types';
138
+ export * from './types/pagination.types';
139
+ export * from './types/filter.types';
140
+ export * from './types/sort.types';
141
+ export type { ErrorResponse as ErrorResponseSnakeCase, ErrorEnvelope } from './types/errors.types';
138
142
  export { AuthService } from './services/auth.service';
139
143
  export { RoleService } from './services/role.service';
140
144
  export { LoggerService } from './services/logger.service';
@@ -143,5 +147,8 @@ export { EncryptionService } from './services/encryption.service';
143
147
  export { CacheService } from './services/cache.service';
144
148
  export { HttpClient } from './utils/http-client';
145
149
  export { loadConfig } from './utils/config-loader';
146
- export { MisoClientError } from './utils/errors';
150
+ export * from './utils/pagination.utils';
151
+ export * from './utils/filter.utils';
152
+ export * from './utils/sort.utils';
153
+ export { MisoClientError, ApiErrorException, transform_error_to_snake_case, handle_api_error_snake_case } from './utils/errors';
147
154
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/src/index.js CHANGED
@@ -17,7 +17,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
17
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.MisoClientError = exports.loadConfig = exports.HttpClient = exports.CacheService = exports.EncryptionService = exports.RedisService = exports.LoggerService = exports.RoleService = exports.AuthService = exports.MisoClient = void 0;
20
+ exports.handle_api_error_snake_case = exports.transform_error_to_snake_case = exports.ApiErrorException = exports.MisoClientError = exports.loadConfig = exports.HttpClient = exports.CacheService = exports.EncryptionService = exports.RedisService = exports.LoggerService = exports.RoleService = exports.AuthService = exports.MisoClient = void 0;
21
21
  const auth_service_1 = require("./services/auth.service");
22
22
  const role_service_1 = require("./services/role.service");
23
23
  const permission_service_1 = require("./services/permission.service");
@@ -26,14 +26,32 @@ const redis_service_1 = require("./services/redis.service");
26
26
  const encryption_service_1 = require("./services/encryption.service");
27
27
  const cache_service_1 = require("./services/cache.service");
28
28
  const http_client_1 = require("./utils/http-client");
29
+ const internal_http_client_1 = require("./utils/internal-http-client");
30
+ const data_masker_1 = require("./utils/data-masker");
29
31
  class MisoClient {
30
32
  constructor(config) {
31
33
  this.initialized = false;
32
34
  this.config = config;
33
- this.httpClient = new http_client_1.HttpClient(config);
35
+ // Initialize DataMasker with custom config path if provided
36
+ if (config.sensitiveFieldsConfig) {
37
+ data_masker_1.DataMasker.setConfigPath(config.sensitiveFieldsConfig);
38
+ }
39
+ // Create InternalHttpClient first (base HTTP functionality)
40
+ const internalClient = new internal_http_client_1.InternalHttpClient(config);
41
+ // Create Redis service
34
42
  this.redis = new redis_service_1.RedisService(config.redis);
43
+ // Create LoggerService with InternalHttpClient first (needs httpClient.request() and httpClient.config)
44
+ // InternalHttpClient has these methods, so we can use it directly
45
+ // Type assertion needed because InternalHttpClient has compatible interface with HttpClient
46
+ this.logger = new logger_service_1.LoggerService(internalClient, this.redis);
47
+ // Create public HttpClient that wraps InternalHttpClient with logger
48
+ this.httpClient = new http_client_1.HttpClient(config, this.logger);
49
+ // Update LoggerService to use the new public HttpClient (for logging)
50
+ // Type assertion needed because httpClient property is private in LoggerService but needs to be updated
51
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
52
+ this.logger.httpClient = this.httpClient;
53
+ // Create services
35
54
  this.auth = new auth_service_1.AuthService(this.httpClient, this.redis);
36
- this.logger = new logger_service_1.LoggerService(this.httpClient, this.redis);
37
55
  // Initialize cache service with Redis support (used by roles and permissions)
38
56
  this.cacheService = new cache_service_1.CacheService(this.redis);
39
57
  // Initialize services that use cache
@@ -246,6 +264,10 @@ class MisoClient {
246
264
  exports.MisoClient = MisoClient;
247
265
  // Export types
248
266
  __exportStar(require("./types/config.types"), exports);
267
+ // Export pagination, filter, sort types
268
+ __exportStar(require("./types/pagination.types"), exports);
269
+ __exportStar(require("./types/filter.types"), exports);
270
+ __exportStar(require("./types/sort.types"), exports);
249
271
  // Export services for advanced usage
250
272
  var auth_service_2 = require("./services/auth.service");
251
273
  Object.defineProperty(exports, "AuthService", { enumerable: true, get: function () { return auth_service_2.AuthService; } });
@@ -264,7 +286,14 @@ Object.defineProperty(exports, "HttpClient", { enumerable: true, get: function (
264
286
  // Export utilities
265
287
  var config_loader_1 = require("./utils/config-loader");
266
288
  Object.defineProperty(exports, "loadConfig", { enumerable: true, get: function () { return config_loader_1.loadConfig; } });
267
- // Export error classes
289
+ // Export pagination, filter, sort utilities
290
+ __exportStar(require("./utils/pagination.utils"), exports);
291
+ __exportStar(require("./utils/filter.utils"), exports);
292
+ __exportStar(require("./utils/sort.utils"), exports);
293
+ // Export error classes and utilities
268
294
  var errors_1 = require("./utils/errors");
269
295
  Object.defineProperty(exports, "MisoClientError", { enumerable: true, get: function () { return errors_1.MisoClientError; } });
296
+ Object.defineProperty(exports, "ApiErrorException", { enumerable: true, get: function () { return errors_1.ApiErrorException; } });
297
+ Object.defineProperty(exports, "transform_error_to_snake_case", { enumerable: true, get: function () { return errors_1.transform_error_to_snake_case; } });
298
+ Object.defineProperty(exports, "handle_api_error_snake_case", { enumerable: true, get: function () { return errors_1.handle_api_error_snake_case; } });
270
299
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@ export interface MisoClientConfig {
20
20
  roleTTL?: number;
21
21
  permissionTTL?: number;
22
22
  };
23
+ sensitiveFieldsConfig?: string;
23
24
  }
24
25
  export interface UserInfo {
25
26
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"config.types.d.ts","sourceRoot":"","sources":["../../../src/types/config.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.types.d.ts","sourceRoot":"","sources":["../../../src/types/config.types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.types.js","sourceRoot":"","sources":["../../../src/types/config.types.ts"],"names":[],"mappings":";AAAA;;GAEG;;AA2GH,0CA4BC;AAhCD;;;GAGG;AACH,SAAgB,eAAe,CAAC,IAAa;IAC3C,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,GAAG,GAAG,IAA+B,CAAC;IAE5C,wBAAwB;IACxB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;QAChF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uDAAuD;IACvD,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,WAAW,CAAC;IACrD,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uBAAuB;IACvB,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACnE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"config.types.js","sourceRoot":"","sources":["../../../src/types/config.types.ts"],"names":[],"mappings":";AAAA;;GAEG;;AA8GH,0CA4BC;AAhCD;;;GAGG;AACH,SAAgB,eAAe,CAAC,IAAa;IAC3C,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,GAAG,GAAG,IAA+B,CAAC;IAE5C,wBAAwB;IACxB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;QAChF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uDAAuD;IACvD,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,WAAW,CAAC;IACrD,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uBAAuB;IACvB,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACnE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Error types for Miso/Dataplane API responses
3
+ * All keys follow snake_case to match Miso/Dataplane schema
4
+ */
5
+ /**
6
+ * Canonical error response for AIFabrix Miso APIs (snake_case).
7
+ * Follows RFC 7807-style structured error format.
8
+ */
9
+ export interface ErrorResponse {
10
+ /** Human-readable list of error messages. */
11
+ errors: string[];
12
+ /** RFC 7807 type URI. */
13
+ type?: string;
14
+ /** Short, human-readable title. */
15
+ title?: string;
16
+ /** HTTP status code. */
17
+ status_code: number;
18
+ /** URI/path identifying the error instance. */
19
+ instance?: string;
20
+ /** Request correlation key for debugging/audit. */
21
+ request_key?: string;
22
+ }
23
+ /**
24
+ * Top-level error envelope.
25
+ */
26
+ export interface ErrorEnvelope {
27
+ /** Error response object. */
28
+ error: ErrorResponse;
29
+ }
30
+ //# sourceMappingURL=errors.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.types.d.ts","sourceRoot":"","sources":["../../../src/types/errors.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,6CAA6C;IAC7C,MAAM,EAAE,MAAM,EAAE,CAAC;IAEjB,yBAAyB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,mCAAmC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,wBAAwB;IACxB,WAAW,EAAE,MAAM,CAAC;IAEpB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,6BAA6B;IAC7B,KAAK,EAAE,aAAa,CAAC;CACtB"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * Error types for Miso/Dataplane API responses
4
+ * All keys follow snake_case to match Miso/Dataplane schema
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=errors.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.types.js","sourceRoot":"","sources":["../../../src/types/errors.types.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Filter types for Miso/Dataplane API query parameters
3
+ * All keys follow snake_case to match Miso/Dataplane schema
4
+ */
5
+ /**
6
+ * Filter operators supported by the API.
7
+ */
8
+ export type FilterOperator = 'eq' | 'neq' | 'in' | 'nin' | 'gt' | 'lt' | 'gte' | 'lte' | 'contains' | 'like';
9
+ /**
10
+ * Single filter option with field, operator, and value.
11
+ */
12
+ export interface FilterOption {
13
+ /** Field name to filter on. */
14
+ field: string;
15
+ /** Filter operator. */
16
+ op: FilterOperator;
17
+ /** Filter value (supports arrays for `in` and `nin` operators). */
18
+ value: string | number | boolean | Array<string | number>;
19
+ }
20
+ /**
21
+ * Complete filter query including filters, sorting, pagination, and field selection.
22
+ */
23
+ export interface FilterQuery {
24
+ /** Array of filter options. */
25
+ filters?: FilterOption[];
26
+ /** Array of sort fields (e.g., `['-updated_at', 'name']` where `-` prefix means descending). */
27
+ sort?: string[];
28
+ /** Page number (1-based). */
29
+ page?: number;
30
+ /** Number of items per page. */
31
+ page_size?: number;
32
+ /** Array of field names to include in response (field projection). */
33
+ fields?: string[];
34
+ }
35
+ /**
36
+ * Builder class for dynamic filter construction.
37
+ * Supports fluent API for building complex filter queries.
38
+ */
39
+ export declare class FilterBuilder {
40
+ private filters;
41
+ /**
42
+ * Add a single filter to the builder.
43
+ * @param field - Field name to filter on
44
+ * @param op - Filter operator
45
+ * @param value - Filter value (supports arrays for `in` and `nin`)
46
+ * @returns FilterBuilder instance for method chaining
47
+ */
48
+ add(field: string, op: FilterOperator, value: string | number | boolean | Array<string | number>): FilterBuilder;
49
+ /**
50
+ * Add multiple filters at once.
51
+ * @param filters - Array of filter options to add
52
+ * @returns FilterBuilder instance for method chaining
53
+ */
54
+ addMany(filters: FilterOption[]): FilterBuilder;
55
+ /**
56
+ * Build and return the filter array.
57
+ * @returns Array of filter options
58
+ */
59
+ build(): FilterOption[];
60
+ /**
61
+ * Convert filters to query string format.
62
+ * @returns Query string with filter parameters (e.g., `?filter=field:op:value&filter=...`)
63
+ */
64
+ toQueryString(): string;
65
+ }
66
+ //# sourceMappingURL=filter.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.types.d.ts","sourceRoot":"","sources":["../../../src/types/filter.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,MAAM,cAAc,GACtB,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,KAAK,GACL,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,KAAK,GACL,UAAU,GACV,MAAM,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAC;IAEd,uBAAuB;IACvB,EAAE,EAAE,cAAc,CAAC;IAEnB,mEAAmE;IACnE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;CAC3D;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,+BAA+B;IAC/B,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IAEzB,gGAAgG;IAChG,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB,6BAA6B;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,gCAAgC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAsB;IAErC;;;;;;OAMG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,aAAa;IAKhH;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,aAAa;IAK/C;;;OAGG;IACH,KAAK,IAAI,YAAY,EAAE;IAIvB;;;OAGG;IACH,aAAa,IAAI,MAAM;CAQxB"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ /**
3
+ * Filter types for Miso/Dataplane API query parameters
4
+ * All keys follow snake_case to match Miso/Dataplane schema
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.FilterBuilder = void 0;
8
+ /**
9
+ * Builder class for dynamic filter construction.
10
+ * Supports fluent API for building complex filter queries.
11
+ */
12
+ class FilterBuilder {
13
+ constructor() {
14
+ this.filters = [];
15
+ }
16
+ /**
17
+ * Add a single filter to the builder.
18
+ * @param field - Field name to filter on
19
+ * @param op - Filter operator
20
+ * @param value - Filter value (supports arrays for `in` and `nin`)
21
+ * @returns FilterBuilder instance for method chaining
22
+ */
23
+ add(field, op, value) {
24
+ this.filters.push({ field, op, value });
25
+ return this;
26
+ }
27
+ /**
28
+ * Add multiple filters at once.
29
+ * @param filters - Array of filter options to add
30
+ * @returns FilterBuilder instance for method chaining
31
+ */
32
+ addMany(filters) {
33
+ this.filters.push(...filters);
34
+ return this;
35
+ }
36
+ /**
37
+ * Build and return the filter array.
38
+ * @returns Array of filter options
39
+ */
40
+ build() {
41
+ return [...this.filters];
42
+ }
43
+ /**
44
+ * Convert filters to query string format.
45
+ * @returns Query string with filter parameters (e.g., `?filter=field:op:value&filter=...`)
46
+ */
47
+ toQueryString() {
48
+ const params = new URLSearchParams();
49
+ this.filters.forEach((f) => {
50
+ const val = Array.isArray(f.value) ? f.value.join(',') : String(f.value);
51
+ params.append('filter', `${f.field}:${f.op}:${val}`);
52
+ });
53
+ return params.toString();
54
+ }
55
+ }
56
+ exports.FilterBuilder = FilterBuilder;
57
+ //# sourceMappingURL=filter.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.types.js","sourceRoot":"","sources":["../../../src/types/filter.types.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAmDH;;;GAGG;AACH,MAAa,aAAa;IAA1B;QACU,YAAO,GAAmB,EAAE,CAAC;IA4CvC,CAAC;IA1CC;;;;;;OAMG;IACH,GAAG,CAAC,KAAa,EAAE,EAAkB,EAAE,KAAyD;QAC9F,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,OAAuB;QAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,aAAa;QACX,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACzB,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YACzE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;IAC3B,CAAC;CACF;AA7CD,sCA6CC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Pagination types for Miso/Dataplane API responses
3
+ * All keys follow snake_case to match Miso/Dataplane schema
4
+ */
5
+ /**
6
+ * Meta information returned in paginated API responses.
7
+ * All keys follow snake_case to match Miso/Dataplane schema.
8
+ */
9
+ export interface Meta {
10
+ /** Total number of items available in full dataset. */
11
+ total_items: number;
12
+ /** Current page index (1-based). Maps from `page` query parameter. */
13
+ current_page: number;
14
+ /** Number of items per page. Maps from `page_size` query parameter. */
15
+ page_size: number;
16
+ /** Logical resource type (e.g. "application", "environment"). */
17
+ type: string;
18
+ }
19
+ /**
20
+ * Standard paginated list response envelope.
21
+ */
22
+ export interface PaginatedListResponse<T> {
23
+ /** Pagination metadata. */
24
+ meta: Meta;
25
+ /** Array of items for the current page. */
26
+ data: T[];
27
+ }
28
+ //# sourceMappingURL=pagination.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.types.d.ts","sourceRoot":"","sources":["../../../src/types/pagination.types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,WAAW,IAAI;IACnB,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAC;IAEpB,sEAAsE;IACtE,YAAY,EAAE,MAAM,CAAC;IAErB,uEAAuE;IACvE,SAAS,EAAE,MAAM,CAAC;IAElB,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB,CAAC,CAAC;IACtC,2BAA2B;IAC3B,IAAI,EAAE,IAAI,CAAC;IAEX,2CAA2C;IAC3C,IAAI,EAAE,CAAC,EAAE,CAAC;CACX"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * Pagination types for Miso/Dataplane API responses
4
+ * All keys follow snake_case to match Miso/Dataplane schema
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=pagination.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.types.js","sourceRoot":"","sources":["../../../src/types/pagination.types.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Sort types for Miso/Dataplane API query parameters
3
+ * All keys follow snake_case to match Miso/Dataplane schema
4
+ */
5
+ /**
6
+ * Sort option specifying field and order.
7
+ */
8
+ export interface SortOption {
9
+ /** Field name to sort by. */
10
+ field: string;
11
+ /** Sort order: ascending or descending. */
12
+ order: 'asc' | 'desc';
13
+ }
14
+ //# sourceMappingURL=sort.types.d.ts.map