@aifabrix/miso-client 1.1.3 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -110,6 +110,8 @@ MISO_CONTROLLER_URL=http://localhost:3000
110
110
  REDIS_HOST=localhost
111
111
  ```
112
112
 
113
+ → [Environment configuration example](examples/env-config-example.ts)
114
+
113
115
  ### Step 3: Use It
114
116
 
115
117
  ```typescript
@@ -123,7 +125,9 @@ const isValid = await client.auth.validateToken(token);
123
125
 
124
126
  **That's it!** You now have authentication, roles, and logging.
125
127
 
126
- → [Full Getting Started Guide](docs/getting-started.md)
128
+ → [Full Getting Started Guide](docs/getting-started.md)
129
+ → [Environment configuration example](examples/env-config-example.ts)
130
+ → [Manual configuration example](examples/manual-config-example.ts)
127
131
 
128
132
  ---
129
133
 
@@ -179,7 +183,8 @@ if (token) {
179
183
 
180
184
  **Where to get tokens?** Users authenticate via Keycloak, then your app receives JWTs in the `Authorization` header.
181
185
 
182
- → [Complete authentication example](examples/step-3-authentication.ts)
186
+ → [Complete authentication example](examples/step-3-authentication.ts)
187
+ → [Quick start example](examples/usage.ts)
183
188
 
184
189
  ---
185
190
 
@@ -285,7 +290,7 @@ await client.log.audit('access.denied', 'authorization', {
285
290
 
286
291
  ---
287
292
 
288
- ### Encryption and Caching
293
+ ### Step 7: Encryption & Caching
289
294
 
290
295
  **What happens:** Use encryption for sensitive data and generic caching for improved performance.
291
296
 
@@ -317,9 +322,11 @@ if (user) {
317
322
  ENCRYPTION_KEY=your-32-byte-encryption-key
318
323
  ```
319
324
 
325
+ → [Complete encryption & caching example](examples/step-7-encryption-cache.ts)
320
326
  → [API Reference](docs/api-reference.md#encryption-methods)
321
327
  → [Cache Methods](docs/api-reference.md#cache-methods)
322
328
 
329
+
323
330
  ---
324
331
 
325
332
  ## 🔧 Configuration
@@ -9,6 +9,11 @@ export declare class AuthService {
9
9
  private redis;
10
10
  private config;
11
11
  constructor(httpClient: HttpClient, redis: RedisService);
12
+ /**
13
+ * Check if token matches configured API key for testing
14
+ * @private
15
+ */
16
+ private isApiKeyToken;
12
17
  /**
13
18
  * Get environment token using client credentials
14
19
  * This is called automatically by HttpClient, but can be called manually if needed
@@ -21,14 +26,17 @@ export declare class AuthService {
21
26
  login(redirectUri: string): string;
22
27
  /**
23
28
  * Validate token with controller
29
+ * If API_KEY is configured and token matches, returns true without calling controller
24
30
  */
25
31
  validateToken(token: string): Promise<boolean>;
26
32
  /**
27
33
  * Get user information from token
34
+ * If API_KEY is configured and token matches, returns null (by design for testing)
28
35
  */
29
36
  getUser(token: string): Promise<UserInfo | null>;
30
37
  /**
31
38
  * Get user information from GET /api/auth/user endpoint
39
+ * If API_KEY is configured and token matches, returns null (by design for testing)
32
40
  */
33
41
  getUserInfo(token: string): Promise<UserInfo | null>;
34
42
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../src/services/auth.service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAoB,QAAQ,EAAc,MAAM,uBAAuB,CAAC;AAE/E,qBAAa,WAAW;IACtB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,MAAM,CAAmB;gBAErB,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY;IAMvD;;;OAGG;IACG,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC;IA+B5C;;;OAGG;IACH,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAKlC;;OAEG;IACG,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAepD;;OAEG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAmBtD;;OAEG;IACG,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAe1D;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAY7B;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAGvD"}
1
+ {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../src/services/auth.service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAoB,QAAQ,EAAc,MAAM,uBAAuB,CAAC;AAE/E,qBAAa,WAAW;IACtB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,MAAM,CAAmB;gBAErB,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY;IAMvD;;;OAGG;IACH,OAAO,CAAC,aAAa;IAIrB;;;OAGG;IACG,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC;IA+B5C;;;OAGG;IACH,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAKlC;;;OAGG;IACG,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAoBpD;;;OAGG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAwBtD;;;OAGG;IACG,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAoB1D;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAY7B;;OAEG;IACG,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAGvD"}
@@ -43,6 +43,13 @@ class AuthService {
43
43
  this.redis = redis;
44
44
  this.httpClient = httpClient;
45
45
  }
46
+ /**
47
+ * Check if token matches configured API key for testing
48
+ * @private
49
+ */
50
+ isApiKeyToken(token) {
51
+ return this.config.apiKey !== undefined && token === this.config.apiKey;
52
+ }
46
53
  /**
47
54
  * Get environment token using client credentials
48
55
  * This is called automatically by HttpClient, but can be called manually if needed
@@ -81,8 +88,13 @@ class AuthService {
81
88
  }
82
89
  /**
83
90
  * Validate token with controller
91
+ * If API_KEY is configured and token matches, returns true without calling controller
84
92
  */
85
93
  async validateToken(token) {
94
+ // Check API_KEY bypass for testing
95
+ if (this.isApiKeyToken(token)) {
96
+ return true;
97
+ }
86
98
  try {
87
99
  const result = await this.httpClient.authenticatedRequest('POST', '/api/auth/validate', // Backend knows app/env from client token
88
100
  token);
@@ -95,8 +107,13 @@ class AuthService {
95
107
  }
96
108
  /**
97
109
  * Get user information from token
110
+ * If API_KEY is configured and token matches, returns null (by design for testing)
98
111
  */
99
112
  async getUser(token) {
113
+ // Check API_KEY bypass for testing - return null by design
114
+ if (this.isApiKeyToken(token)) {
115
+ return null;
116
+ }
100
117
  try {
101
118
  const result = await this.httpClient.authenticatedRequest('POST', '/api/auth/validate', token);
102
119
  if (result.authenticated && result.user) {
@@ -111,8 +128,13 @@ class AuthService {
111
128
  }
112
129
  /**
113
130
  * Get user information from GET /api/auth/user endpoint
131
+ * If API_KEY is configured and token matches, returns null (by design for testing)
114
132
  */
115
133
  async getUserInfo(token) {
134
+ // Check API_KEY bypass for testing - return null by design
135
+ if (this.isApiKeyToken(token)) {
136
+ return null;
137
+ }
116
138
  try {
117
139
  const user = await this.httpClient.authenticatedRequest('GET', '/api/auth/user', token);
118
140
  return user;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../src/services/auth.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../src/services/auth.service.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export interface MisoClientConfig {
15
15
  redis?: RedisConfig;
16
16
  logLevel?: 'debug' | 'info' | 'warn' | 'error';
17
17
  encryptionKey?: string;
18
+ apiKey?: string;
18
19
  cache?: {
19
20
  roleTTL?: number;
20
21
  permissionTTL?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"config.types.d.ts","sourceRoot":"","sources":["../../../src/types/config.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAE/B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IAGrB,KAAK,CAAC,EAAE,WAAW,CAAC;IAGpB,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAG/C,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAGlC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB"}
1
+ {"version":3,"file":"config.types.d.ts","sourceRoot":"","sources":["../../../src/types/config.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAE/B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IAGrB,KAAK,CAAC,EAAE,WAAW,CAAC;IAGpB,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAG/C,aAAa,CAAC,EAAE,MAAM,CAAC;IAGvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAGlC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../../src/utils/config-loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAe,MAAM,uBAAuB,CAAC;AAEtE;;GAEG;AACH,wBAAgB,UAAU,IAAI,gBAAgB,CA0C7C"}
1
+ {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../../src/utils/config-loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAe,MAAM,uBAAuB,CAAC;AAEtE;;GAEG;AACH,wBAAgB,UAAU,IAAI,gBAAgB,CA+C7C"}
@@ -43,6 +43,10 @@ function loadConfig() {
43
43
  if (process.env.ENCRYPTION_KEY) {
44
44
  config.encryptionKey = process.env.ENCRYPTION_KEY;
45
45
  }
46
+ // Optional API key for testing (bypasses OAuth2 authentication)
47
+ if (process.env.API_KEY) {
48
+ config.apiKey = process.env.API_KEY;
49
+ }
46
50
  return config;
47
51
  }
48
52
  //# sourceMappingURL=config-loader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../src/utils/config-loader.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAQH,gCA0CC;AAhDD,yBAAuB;AAGvB;;GAEG;AACH,SAAgB,UAAU;IACxB,MAAM,MAAM,GAAqB;QAC/B,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,gCAAgC;QAClF,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE;QACvE,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE;QACnF,QAAQ,EAAG,OAAO,CAAC,GAAG,CAAC,cAAsD,IAAI,OAAO;KACzF,CAAC;IAEF,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,+BAA+B;IAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;IACzC,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,WAAW,GAAgB;YAC/B,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,MAAM,CAAC;YAChD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;SACrC,CAAC;QAEF,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACzB,WAAW,CAAC,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACjC,WAAW,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QACvD,CAAC;QAED,MAAM,CAAC,KAAK,GAAG,WAAW,CAAC;IAC7B,CAAC;IAED,0BAA0B;IAC1B,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;QAC/B,MAAM,CAAC,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACpD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../../src/utils/config-loader.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAQH,gCA+CC;AArDD,yBAAuB;AAGvB;;GAEG;AACH,SAAgB,UAAU;IACxB,MAAM,MAAM,GAAqB;QAC/B,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,gCAAgC;QAClF,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE;QACvE,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,EAAE;QACnF,QAAQ,EAAG,OAAO,CAAC,GAAG,CAAC,cAAsD,IAAI,OAAO;KACzF,CAAC;IAEF,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,+BAA+B;IAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;IACzC,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,WAAW,GAAgB;YAC/B,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,MAAM,CAAC;YAChD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;SACrC,CAAC;QAEF,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACzB,WAAW,CAAC,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACjC,WAAW,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;QACvD,CAAC;QAED,MAAM,CAAC,KAAK,GAAG,WAAW,CAAC;IAC7B,CAAC;IAED,0BAA0B;IAC1B,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;QAC/B,MAAM,CAAC,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACpD,CAAC;IAED,gEAAgE;IAChE,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;IACtC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aifabrix/miso-client",
3
- "version": "1.1.3",
3
+ "version": "1.2.0",
4
4
  "description": "AI Fabrix Client SDK for authentication, authorization, and logging",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",