ai.matey.backend 0.2.2 → 0.2.4

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 (42) hide show
  1. package/dist/cjs/providers/ai21.js +24 -1
  2. package/dist/cjs/providers/ai21.js.map +1 -1
  3. package/dist/cjs/providers/anthropic.js +1 -80
  4. package/dist/cjs/providers/anthropic.js.map +1 -1
  5. package/dist/cjs/providers/cohere.js +104 -1
  6. package/dist/cjs/providers/cohere.js.map +1 -1
  7. package/dist/cjs/providers/gemini.js +101 -4
  8. package/dist/cjs/providers/gemini.js.map +1 -1
  9. package/dist/cjs/providers/mistral.js +80 -3
  10. package/dist/cjs/providers/mistral.js.map +1 -1
  11. package/dist/cjs/providers/ollama.js +76 -0
  12. package/dist/cjs/providers/ollama.js.map +1 -1
  13. package/dist/cjs/shared.js +287 -9
  14. package/dist/cjs/shared.js.map +1 -1
  15. package/dist/esm/providers/ai21.js +24 -1
  16. package/dist/esm/providers/ai21.js.map +1 -1
  17. package/dist/esm/providers/anthropic.js +1 -80
  18. package/dist/esm/providers/anthropic.js.map +1 -1
  19. package/dist/esm/providers/cohere.js +105 -2
  20. package/dist/esm/providers/cohere.js.map +1 -1
  21. package/dist/esm/providers/gemini.js +99 -2
  22. package/dist/esm/providers/gemini.js.map +1 -1
  23. package/dist/esm/providers/mistral.js +78 -1
  24. package/dist/esm/providers/mistral.js.map +1 -1
  25. package/dist/esm/providers/ollama.js +76 -0
  26. package/dist/esm/providers/ollama.js.map +1 -1
  27. package/dist/esm/shared.js +286 -8
  28. package/dist/esm/shared.js.map +1 -1
  29. package/dist/types/providers/ai21.d.ts +9 -0
  30. package/dist/types/providers/ai21.d.ts.map +1 -1
  31. package/dist/types/providers/anthropic.d.ts.map +1 -1
  32. package/dist/types/providers/cohere.d.ts +26 -1
  33. package/dist/types/providers/cohere.d.ts.map +1 -1
  34. package/dist/types/providers/gemini.d.ts +17 -0
  35. package/dist/types/providers/gemini.d.ts.map +1 -1
  36. package/dist/types/providers/mistral.d.ts +8 -0
  37. package/dist/types/providers/mistral.d.ts.map +1 -1
  38. package/dist/types/providers/ollama.d.ts +20 -1
  39. package/dist/types/providers/ollama.d.ts.map +1 -1
  40. package/dist/types/shared.d.ts +22 -0
  41. package/dist/types/shared.d.ts.map +1 -1
  42. package/package.json +1 -1
@@ -7,8 +7,9 @@
7
7
  * @module
8
8
  */
9
9
  import { AdapterConversionError, NetworkError, ProviderError, StreamError, ErrorCode, createErrorFromHttpResponse, } from 'ai.matey.errors';
10
- import { normalizeSystemMessages } from 'ai.matey.utils';
10
+ import { normalizeSystemMessages, getModelCache } from 'ai.matey.utils';
11
11
  import { getEffectiveStreamMode, mergeStreamingConfig } from 'ai.matey.utils';
12
+ import { buildStaticResult, applyModelFilter, DEFAULT_COHERE_MODELS } from '../shared.js';
12
13
  // ============================================================================
13
14
  // Cohere Backend Adapter
14
15
  // ============================================================================
@@ -27,9 +28,11 @@ export class CohereBackendAdapter {
27
28
  metadata;
28
29
  config;
29
30
  baseURL;
31
+ modelCache;
30
32
  constructor(config) {
31
33
  this.config = config;
32
34
  this.baseURL = config.baseURL || 'https://api.cohere.ai/v1';
35
+ this.modelCache = getModelCache(config.modelsCacheScope || 'global');
33
36
  this.metadata = {
34
37
  name: 'cohere-backend',
35
38
  version: '1.0.0',
@@ -94,7 +97,7 @@ export class CohereBackendAdapter {
94
97
  };
95
98
  // Add model if specified
96
99
  if (request.parameters?.model || this.config.defaultModel) {
97
- cohereRequest.model = request.parameters?.model || this.config.defaultModel || 'command-r';
100
+ cohereRequest.model = request.parameters?.model || this.config.defaultModel || 'command-r7b';
98
101
  }
99
102
  // Add chat history if present
100
103
  if (chatHistory.length > 0) {
@@ -360,5 +363,105 @@ export class CohereBackendAdapter {
360
363
  const outputCost = (outputTokens / 1_000_000) * modelPricing.output;
361
364
  return Promise.resolve(inputCost + outputCost);
362
365
  }
366
+ /**
367
+ * List available models from Cohere API with caching and fallback.
368
+ *
369
+ * Priority order:
370
+ * 1. Static config override (this.config.models)
371
+ * 2. Cached result (1 hour TTL)
372
+ * 3. API fetch (https://api.cohere.ai/v1/models)
373
+ * 4. Fallback to DEFAULT_COHERE_MODELS
374
+ *
375
+ * @param options - Optional filter and refresh settings
376
+ * @returns Promise resolving to list of models
377
+ */
378
+ async listModels(options) {
379
+ try {
380
+ // 1. Check static config override first
381
+ if (this.config.models && !options?.forceRefresh) {
382
+ return buildStaticResult(this.config.models, 'cohere');
383
+ }
384
+ // 2. Check cache
385
+ if (this.config.cacheModels !== false && !options?.forceRefresh) {
386
+ const cached = this.modelCache.get(this.metadata.name);
387
+ if (cached) {
388
+ return applyModelFilter(cached, options?.filter);
389
+ }
390
+ }
391
+ // 3. Fetch from Cohere API
392
+ const response = await fetch(`${this.baseURL}/models`, {
393
+ method: 'GET',
394
+ headers: this.getHeaders(),
395
+ signal: AbortSignal.timeout(this.config.timeout || 30000),
396
+ });
397
+ if (!response.ok) {
398
+ throw createErrorFromHttpResponse(response.status, response.statusText, await response.text(), { backend: this.metadata.name });
399
+ }
400
+ const data = (await response.json());
401
+ // 4. Transform to AIModel format - filter for chat models
402
+ const models = data.models
403
+ .filter((m) => m.endpoints?.includes('chat'))
404
+ .map((model) => this.transformCohereModel(model));
405
+ // 5. Build result
406
+ const result = {
407
+ models,
408
+ source: 'remote',
409
+ fetchedAt: Date.now(),
410
+ isComplete: true,
411
+ };
412
+ // 6. Cache the result
413
+ if (this.config.cacheModels !== false) {
414
+ const ttl = this.config.modelsCacheTTL || 3600000; // 1 hour default
415
+ this.modelCache.set(this.metadata.name, result, ttl);
416
+ }
417
+ // 7. Apply filter if requested
418
+ return applyModelFilter(result, options?.filter);
419
+ }
420
+ catch (error) {
421
+ // 8. Fallback to cached result on error
422
+ if (!options?.forceRefresh) {
423
+ const cached = this.modelCache.get(this.metadata.name);
424
+ if (cached) {
425
+ return cached;
426
+ }
427
+ }
428
+ // 9. Final fallback to DEFAULT_COHERE_MODELS
429
+ const result = {
430
+ models: [...DEFAULT_COHERE_MODELS],
431
+ source: 'static',
432
+ fetchedAt: Date.now(),
433
+ isComplete: true,
434
+ };
435
+ return applyModelFilter(result, options?.filter);
436
+ }
437
+ }
438
+ /**
439
+ * Transform Cohere API model to AIModel format.
440
+ */
441
+ transformCohereModel(model) {
442
+ return {
443
+ id: model.name,
444
+ name: model.name,
445
+ ownedBy: 'cohere',
446
+ capabilities: {
447
+ maxTokens: 4096,
448
+ contextWindow: model.context_length || 128000,
449
+ supportsStreaming: true,
450
+ supportsVision: false,
451
+ supportsTools: false,
452
+ supportsJSON: false,
453
+ },
454
+ };
455
+ }
456
+ /**
457
+ * Invalidate the model cache for this provider.
458
+ * Useful when you want to force a fresh fetch on next listModels() call.
459
+ *
460
+ * @returns this for chaining
461
+ */
462
+ invalidateModelCache() {
463
+ this.modelCache.invalidate(this.metadata.name);
464
+ return this;
465
+ }
363
466
  }
364
467
  //# sourceMappingURL=cohere.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cohere.js","sourceRoot":"","sources":["../../../src/providers/cohere.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cohere.js","sourceRoot":"","sources":["../../../src/providers/cohere.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAcH,OAAO,EACL,sBAAsB,EACtB,YAAY,EACZ,aAAa,EACb,WAAW,EACX,SAAS,EACT,2BAA2B,GAC5B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,qBAAqB,EAA8B,MAAM,cAAc,CAAC;AAoEtH,+EAA+E;AAC/E,yBAAyB;AACzB,+EAA+E;AAE/E;;;;;;;;;;GAUG;AACH,MAAM,OAAO,oBAAoB;IACtB,QAAQ,CAAkB;IAClB,MAAM,CAAuB;IAC7B,OAAO,CAAS;IAChB,UAAU,CAAmC;IAE9D,YAAY,MAA4B;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,0BAA0B,CAAC;QAC5D,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,gBAAgB,IAAI,QAAQ,CAAC,CAAC;QACrE,IAAI,CAAC,QAAQ,GAAG;YACd,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,QAAQ;YAClB,YAAY,EAAE;gBACZ,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,KAAK,EAAE,YAAY;gBAC/B,KAAK,EAAE,KAAK,EAAE,sBAAsB;gBACpC,gBAAgB,EAAE,MAAM;gBACxB,qBAAqB,EAAE,oBAAoB,EAAE,sBAAsB;gBACnE,8BAA8B,EAAE,KAAK,EAAE,oBAAoB;gBAC3D,mBAAmB,EAAE,IAAI;gBACzB,YAAY,EAAE,IAAI;gBAClB,YAAY,EAAE,IAAI;gBAClB,YAAY,EAAE,KAAK;gBACnB,wBAAwB,EAAE,IAAI;gBAC9B,uBAAuB,EAAE,IAAI;gBAC7B,gBAAgB,EAAE,CAAC;aACpB;YACD,MAAM,EAAE;gBACN,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,OAAsB;QAClC,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,uBAAuB,CAC3D,OAAO,CAAC,QAAQ,EAChB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,qBAAqB,EAChD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,8BAA8B,CAC1D,CAAC;QAEF,wDAAwD;QACxD,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClD,IAAI,WAAW,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;YACjC,MAAM,IAAI,sBAAsB,CAAC;gBAC/B,IAAI,EAAE,SAAS,CAAC,wBAAwB;gBACxC,OAAO,EAAE,kDAAkD;gBAC3D,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;aAC5C,CAAC,CAAC;QACL,CAAC;QAED,yCAAyC;QACzC,MAAM,cAAc,GAClB,OAAO,WAAW,CAAC,OAAO,KAAK,QAAQ;YACrC,CAAC,CAAC,WAAW,CAAC,OAAO;YACrB,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAE7F,sDAAsD;QACtD,MAAM,WAAW,GAAwB,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC3E,IAAI,EAAE,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YAC9C,OAAO,EACL,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;gBAC7B,CAAC,CAAC,GAAG,CAAC,OAAO;gBACb,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;SACrF,CAAC,CAAC,CAAC;QAEJ,MAAM,aAAa,GAAkB;YACnC,OAAO,EAAE,cAAc;YACvB,WAAW,EAAE,OAAO,CAAC,UAAU,EAAE,WAAW;YAC5C,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,SAAS;YACzC,CAAC,EAAE,OAAO,CAAC,UAAU,EAAE,IAAI;YAC3B,CAAC,EAAE,OAAO,CAAC,UAAU,EAAE,IAAI;YAC3B,iBAAiB,EAAE,OAAO,CAAC,UAAU,EAAE,gBAAgB;YACvD,gBAAgB,EAAE,OAAO,CAAC,UAAU,EAAE,eAAe;YACrD,cAAc,EAAE,OAAO,CAAC,UAAU,EAAE,aAAa;gBAC/C,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;gBACvC,CAAC,CAAC,SAAS;YACb,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,KAAK;SAChC,CAAC;QAEF,yBAAyB;QACzB,IAAI,OAAO,CAAC,UAAU,EAAE,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YAC1D,aAAa,CAAC,KAAK,GAAG,OAAO,CAAC,UAAU,EAAE,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,aAAa,CAAC;QAC/F,CAAC;QAED,8BAA8B;QAC9B,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,aAAa,CAAC,YAAY,GAAG,WAAW,CAAC;QAC3C,CAAC;QAED,iCAAiC;QACjC,IAAI,eAAe,EAAE,CAAC;YACpB,aAAa,CAAC,QAAQ;gBACpB,OAAO,eAAe,KAAK,QAAQ;oBACjC,CAAC,CAAC,eAAe;oBACjB,CAAC,CAAE,eAAyB;yBACvB,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;yBAC9D,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QAED,iDAAiD;QACjD,IAAI,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;YAC1C,aAAa,CAAC,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,SAGlD,CAAC;QACL,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;YAC3C,aAAa,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,UAAmC,CAAC;QAC3F,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;IAED;;OAEG;IACI,IAAI,CACT,QAAwB,EACxB,eAA8B,EAC9B,SAAiB;QAEjB,MAAM,OAAO,GAAc;YACzB,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,QAAQ,CAAC,IAAI;SACvB,CAAC;QAEF,MAAM,eAAe,GAAiC;YACpD,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,QAAQ;YACpB,KAAK,EAAE,MAAM;YACb,WAAW,EAAE,MAAM;SACpB,CAAC;QAEF,OAAO;YACL,OAAO;YACP,YAAY,EAAE,eAAe,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,MAAM;YAC/D,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,YAAY;gBAChC,CAAC,CAAC;oBACE,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY;oBACrD,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa;oBAC1D,WAAW,EACT,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa;iBACrF;gBACH,CAAC,CAAC,SAAS;YACb,QAAQ,EAAE;gBACR,GAAG,eAAe,CAAC,QAAQ;gBAC3B,kBAAkB,EAAE,QAAQ,CAAC,aAAa;gBAC1C,UAAU,EAAE;oBACV,GAAG,eAAe,CAAC,QAAQ,CAAC,UAAU;oBACtC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;iBAC5B;gBACD,MAAM,EAAE;oBACN,GAAG,eAAe,CAAC,QAAQ,CAAC,MAAM;oBAClC,SAAS;oBACT,GAAG,CAAC,QAAQ,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;wBACrD,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE;wBACnC,CAAC,CAAC,EAAE,CAAC;iBACR;aACF;YACD,GAAG,EAAE,QAA8C;SACpD,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,OAAsB,EAAE,MAAoB;QACxD,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3C,aAAa,CAAC,MAAM,GAAG,KAAK,CAAC;YAE7B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,OAAO,EAAE;gBACnD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC1B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;gBACnC,MAAM;aACP,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,2BAA2B,CAC/B,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,UAAU,EACnB,MAAM,QAAQ,CAAC,IAAI,EAAE,EACrB,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAChC,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAmB,CAAC;YACvD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,YAAY,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;gBACpE,MAAM,KAAK,CAAC;YACd,CAAC;YAED,MAAM,IAAI,aAAa,CAAC;gBACtB,IAAI,EAAE,SAAS,CAAC,cAAc;gBAC9B,OAAO,EAAE,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;gBAC3F,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;gBAC3C,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;aAClD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,CAAC,aAAa,CAAC,OAAsB,EAAE,MAAoB;QAC/D,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3C,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC;YAE5B,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACpE,MAAM,aAAa,GAAG,sBAAsB,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;YAC7F,MAAM,WAAW,GAAG,eAAe,CAAC,WAAW,IAAI,aAAa,KAAK,aAAa,CAAC;YAEnF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,OAAO,EAAE;gBACnD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC1B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;gBACnC,MAAM;aACP,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,2BAA2B,CAC/B,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,UAAU,EACnB,MAAM,QAAQ,CAAC,IAAI,EAAE,EACrB,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAChC,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,IAAI,WAAW,CAAC;oBACpB,IAAI,EAAE,SAAS,CAAC,YAAY;oBAC5B,OAAO,EAAE,kBAAkB;oBAC3B,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;iBAC5C,CAAC,CAAC;YACL,CAAC;YAED,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,IAAI,aAAa,GAAG,EAAE,CAAC;YACvB,IAAI,SAAsC,CAAC;YAE3C,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,QAAQ,EAAE;gBACpB,QAAQ,EAAE;oBACR,GAAG,OAAO,CAAC,QAAQ;oBACnB,UAAU,EAAE;wBACV,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU;wBAC9B,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;qBAC5B;iBACF;aACe,CAAC;YAEnB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACzC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;YAClC,IAAI,MAAM,GAAG,EAAE,CAAC;YAEhB,IAAI,CAAC;gBACH,OAAO,IAAI,EAAE,CAAC;oBACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;oBAC5C,IAAI,IAAI,EAAE,CAAC;wBACT,MAAM;oBACR,CAAC;oBAED,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;oBAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACjC,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;oBAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;wBACzB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;4BACjB,SAAS;wBACX,CAAC;wBAED,IAAI,CAAC;4BACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAsB,CAAC;4BAEpD,+BAA+B;4BAC/B,IAAI,KAAK,CAAC,UAAU,KAAK,iBAAiB,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gCACzD,aAAa,IAAI,KAAK,CAAC,IAAI,CAAC;gCAE5B,MAAM,YAAY,GAAkB;oCAClC,IAAI,EAAE,SAAS;oCACf,QAAQ,EAAE,QAAQ,EAAE;oCACpB,KAAK,EAAE,KAAK,CAAC,IAAI;oCACjB,IAAI,EAAE,WAAW;iCAClB,CAAC;gCAEF,IAAI,WAAW,EAAE,CAAC;oCACf,YAAoB,CAAC,WAAW,GAAG,aAAa,CAAC;gCACpD,CAAC;gCAED,MAAM,YAAY,CAAC;4BACrB,CAAC;iCAAM,IAAI,KAAK,CAAC,UAAU,KAAK,qBAAqB,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gCACzE,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;4BAC9B,CAAC;iCAAM,IAAI,KAAK,CAAC,UAAU,KAAK,YAAY,EAAE,CAAC;gCAC7C,MAAM,eAAe,GAAiC;oCACpD,QAAQ,EAAE,MAAM;oCAChB,UAAU,EAAE,QAAQ;oCACpB,KAAK,EAAE,MAAM;oCACb,WAAW,EAAE,MAAM;iCACpB,CAAC;gCAEF,MAAM,SAAS,GAAkB;oCAC/B,IAAI,EAAE,MAAM;oCACZ,QAAQ,EAAE,QAAQ,EAAE;oCACpB,YAAY,EAAE,eAAe,CAAC,KAAK,CAAC,aAAa,IAAI,UAAU,CAAC,IAAI,MAAM;oCAC1E,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE;iCACvD,CAAC;gCAEF,+BAA+B;gCAC/B,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oCACrC,SAAiB,CAAC,SAAS,GAAG,SAAS,CAAC;gCAC3C,CAAC;gCAED,MAAM,SAAS,CAAC;4BAClB,CAAC;wBACH,CAAC;wBAAC,OAAO,UAAU,EAAE,CAAC;4BACpB,OAAO,CAAC,IAAI,CAAC,sCAAsC,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;wBACzE,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,CAAC;gBACX,KAAK,EAAE;oBACL,IAAI,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe;oBAC3D,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAChE;aACe,CAAC;QACrB,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,UAAU;QAChB,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;SAC9C,CAAC;QAEF,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW;QACf,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,gBAAgB,EAAE;gBAC5D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC1B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;aAClC,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC,EAAE,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACH,YAAY,CAAC,OAAsB;QACjC,MAAM,OAAO,GAAsD;YACjE,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE;YACzC,gBAAgB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE;YAC9C,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;YACpC,eAAe,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;SAC7C,CAAC;QAEF,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,EAAE,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;QAC1E,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAEpC,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACvD,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,OAAO,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC7C,CAAC,EAAE,CAAC,CAAC,CAAC;QAEN,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,EAAE,SAAS,IAAI,IAAI,CAAC;QAE3D,MAAM,SAAS,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC;QACjE,MAAM,UAAU,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC;QAEpE,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC;IACjD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,UAAU,CAAC,OAA2B;QAC1C,IAAI,CAAC;YACH,wCAAwC;YACxC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;gBACjD,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACzD,CAAC;YAED,iBAAiB;YACjB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,KAAK,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;gBAChE,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvD,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,MAA+B,CAAC,CAAC;gBAC5E,CAAC;YACH,CAAC;YAED,2BAA2B;YAC3B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,SAAS,EAAE;gBACrD,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC1B,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC;aAC1D,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,2BAA2B,CAC/B,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,UAAU,EACnB,MAAM,QAAQ,CAAC,IAAI,EAAE,EACrB,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAChC,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAsB,CAAC;YAE1D,0DAA0D;YAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM;iBACvB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;iBAC5C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;YAEpD,kBAAkB;YAClB,MAAM,MAAM,GAAqB;gBAC/B,MAAM;gBACN,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,UAAU,EAAE,IAAI;aACjB,CAAC;YAEF,sBAAsB;YACtB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;gBACtC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,OAAO,CAAC,CAAC,iBAAiB;gBACpE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YACvD,CAAC;YAED,+BAA+B;YAC/B,OAAO,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,MAA+B,CAAC,CAAC;QAC5E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,wCAAwC;YACxC,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvD,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO,MAAM,CAAC;gBAChB,CAAC;YACH,CAAC;YAED,6CAA6C;YAC7C,MAAM,MAAM,GAAqB;gBAC/B,MAAM,EAAE,CAAC,GAAG,qBAAqB,CAAC;gBAClC,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,UAAU,EAAE,IAAI;aACjB,CAAC;YACF,OAAO,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,MAA+B,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,KAAU;QACrC,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,IAAI;YACd,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,QAAQ;YACjB,YAAY,EAAE;gBACZ,SAAS,EAAE,IAAI;gBACf,aAAa,EAAE,KAAK,CAAC,cAAc,IAAI,MAAM;gBAC7C,iBAAiB,EAAE,IAAI;gBACvB,cAAc,EAAE,KAAK;gBACrB,aAAa,EAAE,KAAK;gBACpB,YAAY,EAAE,KAAK;aACpB;SACF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,oBAAoB;QAClB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
@@ -8,7 +8,9 @@
8
8
  */
9
9
  import { AdapterConversionError, NetworkError, ProviderError, StreamError, ErrorCode, createErrorFromHttpResponse, } from 'ai.matey.errors';
10
10
  import { normalizeSystemMessages } from 'ai.matey.utils';
11
+ import { getModelCache } from 'ai.matey.utils';
11
12
  import { getEffectiveStreamMode, mergeStreamingConfig } from 'ai.matey.utils';
13
+ import { buildStaticResult, applyModelFilter, DEFAULT_GEMINI_MODELS } from '../shared.js';
12
14
  // ============================================================================
13
15
  // Gemini Backend Adapter
14
16
  // ============================================================================
@@ -16,9 +18,11 @@ export class GeminiBackendAdapter {
16
18
  metadata;
17
19
  config;
18
20
  baseURL;
21
+ modelCache;
19
22
  constructor(config) {
20
23
  this.config = config;
21
24
  this.baseURL = config.baseURL || 'https://generativelanguage.googleapis.com/v1beta';
25
+ this.modelCache = getModelCache(config.modelsCacheScope || 'global');
22
26
  // Note: Gemini is already browser-compatible by default (API key in URL query parameter)
23
27
  // The browserMode flag has no effect for this adapter
24
28
  this.metadata = {
@@ -46,7 +50,7 @@ export class GeminiBackendAdapter {
46
50
  async execute(request, signal) {
47
51
  try {
48
52
  const geminiRequest = this.fromIR(request);
49
- const model = request.parameters?.model || 'gemini-pro';
53
+ const model = request.parameters?.model || this.config.defaultModel || 'gemini-2.0-flash-lite';
50
54
  const endpoint = `${this.baseURL}/models/${model}:generateContent?key=${this.config.apiKey}`;
51
55
  const startTime = Date.now();
52
56
  const response = await fetch(endpoint, {
@@ -80,7 +84,7 @@ export class GeminiBackendAdapter {
80
84
  async *executeStream(request, signal) {
81
85
  try {
82
86
  const geminiRequest = this.fromIR(request);
83
- const model = request.parameters?.model || 'gemini-pro';
87
+ const model = request.parameters?.model || this.config.defaultModel || 'gemini-2.0-flash-lite';
84
88
  const endpoint = `${this.baseURL}/models/${model}:streamGenerateContent?key=${this.config.apiKey}`;
85
89
  // Get effective streaming configuration
86
90
  const streamingConfig = mergeStreamingConfig(this.config.streaming);
@@ -207,6 +211,99 @@ export class GeminiBackendAdapter {
207
211
  estimateCost(_request) {
208
212
  return Promise.resolve(null); // Cost estimation not implemented for Gemini
209
213
  }
214
+ /**
215
+ * List available Gemini models.
216
+ *
217
+ * Fetches from Gemini's models API with fallback to static list.
218
+ * Results are cached for 1 hour by default.
219
+ */
220
+ async listModels(options) {
221
+ try {
222
+ // 1. Check static config override first
223
+ if (this.config.models && !options?.forceRefresh) {
224
+ return buildStaticResult(this.config.models, 'google');
225
+ }
226
+ // 2. Check cache
227
+ if (this.config.cacheModels !== false && !options?.forceRefresh) {
228
+ const cached = this.modelCache.get(this.metadata.name);
229
+ if (cached) {
230
+ return applyModelFilter(cached, options?.filter);
231
+ }
232
+ }
233
+ // 3. Fetch from Gemini API
234
+ const endpoint = `${this.baseURL}/models?key=${this.config.apiKey}`;
235
+ const response = await fetch(endpoint, {
236
+ method: 'GET',
237
+ headers: { 'Content-Type': 'application/json', ...this.config.headers },
238
+ signal: AbortSignal.timeout(this.config.timeout || 30000),
239
+ });
240
+ if (!response.ok) {
241
+ throw createErrorFromHttpResponse(response.status, response.statusText, await response.text(), { backend: this.metadata.name });
242
+ }
243
+ const data = (await response.json());
244
+ // 4. Transform to AIModel format
245
+ const models = data.models
246
+ .filter((m) => m.supportedGenerationMethods?.includes('generateContent'))
247
+ .map((model) => this.transformGeminiModel(model));
248
+ // 5. Build result
249
+ const result = {
250
+ models,
251
+ source: 'remote',
252
+ fetchedAt: Date.now(),
253
+ isComplete: true,
254
+ };
255
+ // 6. Cache the result
256
+ if (this.config.cacheModels !== false) {
257
+ const ttl = this.config.modelsCacheTTL || 3600000; // 1 hour default
258
+ this.modelCache.set(this.metadata.name, result, ttl);
259
+ }
260
+ // 7. Apply filter if requested
261
+ return applyModelFilter(result, options?.filter);
262
+ }
263
+ catch (error) {
264
+ // 8. Fallback to cached result on error
265
+ if (!options?.forceRefresh) {
266
+ const cached = this.modelCache.get(this.metadata.name);
267
+ if (cached) {
268
+ return cached;
269
+ }
270
+ }
271
+ // 9. Final fallback to DEFAULT_GEMINI_MODELS
272
+ const result = {
273
+ models: [...DEFAULT_GEMINI_MODELS],
274
+ source: 'static',
275
+ fetchedAt: Date.now(),
276
+ isComplete: true,
277
+ };
278
+ return applyModelFilter(result, options?.filter);
279
+ }
280
+ }
281
+ /**
282
+ * Transform Gemini API model to AIModel format.
283
+ */
284
+ transformGeminiModel(model) {
285
+ return {
286
+ id: model.name.replace('models/', ''),
287
+ name: model.displayName || model.name,
288
+ description: model.description,
289
+ ownedBy: 'google',
290
+ capabilities: {
291
+ maxTokens: model.outputTokenLimit || 8192,
292
+ contextWindow: model.inputTokenLimit || 1000000,
293
+ supportsStreaming: true,
294
+ supportsVision: model.supportedGenerationMethods?.includes('generateContent'),
295
+ supportsTools: true,
296
+ supportsJSON: true,
297
+ },
298
+ };
299
+ }
300
+ /**
301
+ * Invalidate the cached model list.
302
+ */
303
+ invalidateModelCache() {
304
+ this.modelCache.invalidate(this.metadata.name);
305
+ return this;
306
+ }
210
307
  /**
211
308
  * Convert IR request to Gemini format.
212
309
  *
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/providers/gemini.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/providers/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAWH,OAAO,EACL,sBAAsB,EACtB,YAAY,EACZ,aAAa,EACb,WAAW,EACX,SAAS,EACT,2BAA2B,GAC5B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,qBAAqB,EAA8B,MAAM,cAAc,CAAC;AAoCtH,+EAA+E;AAC/E,yBAAyB;AACzB,+EAA+E;AAE/E,MAAM,OAAO,oBAAoB;IACtB,QAAQ,CAAkB;IAClB,MAAM,CAAuB;IAC7B,OAAO,CAAS;IAChB,UAAU,CAAmC;IAE9D,YAAY,MAA4B;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,kDAAkD,CAAC;QACpF,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,gBAAgB,IAAI,QAAQ,CAAC,CAAC;QAErE,yFAAyF;QACzF,sDAAsD;QAEtD,IAAI,CAAC,QAAQ,GAAG;YACd,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,OAAO;YAChB,QAAQ,EAAE,eAAe;YACzB,YAAY,EAAE;gBACZ,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE,IAAI;gBACX,gBAAgB,EAAE,OAAO;gBACzB,qBAAqB,EAAE,oBAAoB;gBAC3C,8BAA8B,EAAE,KAAK;gBACrC,mBAAmB,EAAE,IAAI;gBACzB,YAAY,EAAE,IAAI;gBAClB,YAAY,EAAE,IAAI;gBAClB,YAAY,EAAE,KAAK;gBACnB,wBAAwB,EAAE,KAAK;gBAC/B,uBAAuB,EAAE,KAAK;gBAC9B,gBAAgB,EAAE,CAAC;aACpB;YACD,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;SAClC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAsB,EAAE,MAAoB;QACxD,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,EAAE,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,uBAAuB,CAAC;YAC/F,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,OAAO,WAAW,KAAK,wBAAwB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAE7F,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;gBACrC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;gBACvE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;gBACnC,MAAM;aACP,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,MAAM,2BAA2B,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE;oBACjF,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;iBAC5B,CAAC,CAAC;YACL,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAmB,CAAC;YACvD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,YAAY,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;gBACpE,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,IAAI,aAAa,CAAC;gBACtB,IAAI,EAAE,SAAS,CAAC,cAAc;gBAC9B,OAAO,EAAE,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;gBAC3F,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;gBAC3C,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;aAClD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,KAAK,CAAC,CAAC,aAAa,CAAC,OAAsB,EAAE,MAAoB;QAC/D,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,EAAE,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,uBAAuB,CAAC;YAC/F,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,OAAO,WAAW,KAAK,8BAA8B,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAEnG,wCAAwC;YACxC,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACpE,MAAM,aAAa,GAAG,sBAAsB,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;YAC7F,MAAM,WAAW,GAAG,eAAe,CAAC,WAAW,IAAI,aAAa,KAAK,aAAa,CAAC;YAEnF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;gBACrC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;gBACvE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;gBACnC,MAAM;aACP,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACxC,MAAM,2BAA2B,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,SAAS,EAAE;oBACjF,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;iBAC5B,CAAC,CAAC;YACL,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnB,MAAM,IAAI,WAAW,CAAC;oBACpB,IAAI,EAAE,SAAS,CAAC,YAAY;oBAC5B,OAAO,EAAE,kBAAkB;oBAC3B,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;iBAC5C,CAAC,CAAC;YACL,CAAC;YAED,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,QAAQ,EAAE;gBACpB,QAAQ,EAAE;oBACR,GAAG,OAAO,CAAC,QAAQ;oBACnB,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;iBAC5E;aACe,CAAC;YAEnB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACzC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;YAClC,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,aAAa,GAAG,EAAE,CAAC;YAEvB,IAAI,CAAC;gBACH,OAAO,IAAI,EAAE,CAAC;oBACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;oBAC5C,IAAI,IAAI,EAAE,CAAC;wBACT,MAAM;oBACR,CAAC;oBAED,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;oBAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBACjC,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;oBAE3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;wBACzB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC/C,SAAS;wBACX,CAAC;wBACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;wBAElC,IAAI,CAAC;4BACH,MAAM,KAAK,GAAmB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;4BAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;4BACxC,IAAI,CAAC,SAAS,EAAE,CAAC;gCACf,SAAS;4BACX,CAAC;4BAED,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;4BAC9C,IAAI,OAAO,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;gCACjC,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;gCAE9B,sDAAsD;gCACtD,MAAM,YAAY,GAAkB;oCAClC,IAAI,EAAE,SAAS;oCACf,QAAQ,EAAE,QAAQ,EAAE;oCACpB,KAAK,EAAE,OAAO,CAAC,IAAI;oCACnB,IAAI,EAAE,WAAW;iCAClB,CAAC;gCAEF,sCAAsC;gCACtC,IAAI,WAAW,EAAE,CAAC;oCACf,YAAoB,CAAC,WAAW,GAAG,aAAa,CAAC;gCACpD,CAAC;gCAED,MAAM,YAAY,CAAC;4BACrB,CAAC;4BAED,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;gCAC3B,MAAM,OAAO,GAAc,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;gCACzE,MAAM;oCACJ,IAAI,EAAE,MAAM;oCACZ,QAAQ,EAAE,QAAQ,EAAE;oCACpB,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,YAAY,CAAC;oCAC1D,KAAK,EAAE,KAAK,CAAC,aAAa;wCACxB,CAAC,CAAC;4CACE,YAAY,EAAE,KAAK,CAAC,aAAa,CAAC,gBAAgB;4CAClD,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAAC,oBAAoB;4CAC1D,WAAW,EAAE,KAAK,CAAC,aAAa,CAAC,eAAe;yCACjD;wCACH,CAAC,CAAC,SAAS;oCACb,OAAO;iCACS,CAAC;4BACrB,CAAC;wBACH,CAAC;wBAAC,OAAO,UAAU,EAAE,CAAC;4BACpB,OAAO,CAAC,IAAI,CAAC,mCAAmC,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;wBACtE,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;oBAAS,CAAC;gBACT,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM;gBACJ,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,CAAC;gBACX,KAAK,EAAE;oBACL,IAAI,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe;oBAC3D,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAChE;aACe,CAAC;QACrB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,eAAe,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;gBAC/E,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;aAClC,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC,EAAE,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,YAAY,CAAC,QAAuB;QAClC,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,6CAA6C;IAC7E,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CAAC,OAA2B;QAC1C,IAAI,CAAC;YACH,wCAAwC;YACxC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;gBACjD,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACzD,CAAC;YAED,iBAAiB;YACjB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,KAAK,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;gBAChE,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvD,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,MAA+B,CAAC,CAAC;gBAC5E,CAAC;YACH,CAAC;YAED,2BAA2B;YAC3B,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,OAAO,eAAe,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACpE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;gBACrC,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;gBACvE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,KAAK,CAAC;aAC1D,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,2BAA2B,CAC/B,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,UAAU,EACnB,MAAM,QAAQ,CAAC,IAAI,EAAE,EACrB,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAChC,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAsB,CAAC;YAE1D,iCAAiC;YACjC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM;iBACvB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,0BAA0B,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC;iBACxE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;YAEpD,kBAAkB;YAClB,MAAM,MAAM,GAAqB;gBAC/B,MAAM;gBACN,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,UAAU,EAAE,IAAI;aACjB,CAAC;YAEF,sBAAsB;YACtB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;gBACtC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,OAAO,CAAC,CAAC,iBAAiB;gBACpE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YACvD,CAAC;YAED,+BAA+B;YAC/B,OAAO,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,MAA+B,CAAC,CAAC;QAC5E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,wCAAwC;YACxC,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvD,IAAI,MAAM,EAAE,CAAC;oBACX,OAAO,MAAM,CAAC;gBAChB,CAAC;YACH,CAAC;YAED,6CAA6C;YAC7C,MAAM,MAAM,GAAqB;gBAC/B,MAAM,EAAE,CAAC,GAAG,qBAAqB,CAAC;gBAClC,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,UAAU,EAAE,IAAI;aACjB,CAAC;YACF,OAAO,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,MAA+B,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,KAAU;QACrC,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;YACrC,IAAI,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI;YACrC,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,OAAO,EAAE,QAAQ;YACjB,YAAY,EAAE;gBACZ,SAAS,EAAE,KAAK,CAAC,gBAAgB,IAAI,IAAI;gBACzC,aAAa,EAAE,KAAK,CAAC,eAAe,IAAI,OAAO;gBAC/C,iBAAiB,EAAE,IAAI;gBACvB,cAAc,EAAE,KAAK,CAAC,0BAA0B,EAAE,QAAQ,CAAC,iBAAiB,CAAC;gBAC7E,aAAa,EAAE,IAAI;gBACnB,YAAY,EAAE,IAAI;aACnB;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,OAAsB;QAClC,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,uBAAuB,CAC3D,OAAO,CAAC,QAAQ,EAChB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,qBAAqB,EAChD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,8BAA8B,CAC1D,CAAC;QAEF,MAAM,QAAQ,GAAoB,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACvD,IAAI,EAAE,GAAG,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;YACjD,KAAK,EACH,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;gBAC7B,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;gBACzB,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACpB,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CACnE;SACR,CAAC,CAAC,CAAC;QAEJ,MAAM,iBAAiB,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAE/F,OAAO;YACL,QAAQ;YACR,iBAAiB;YACjB,gBAAgB,EAAE;gBAChB,WAAW,EAAE,OAAO,CAAC,UAAU,EAAE,WAAW;oBAC1C,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,GAAG,CAAC;oBACpC,CAAC,CAAC,SAAS;gBACb,IAAI,EAAE,OAAO,CAAC,UAAU,EAAE,IAAI;gBAC9B,IAAI,EAAE,OAAO,CAAC,UAAU,EAAE,IAAI;gBAC9B,eAAe,EAAE,OAAO,CAAC,UAAU,EAAE,SAAS;gBAC9C,aAAa,EAAE,OAAO,CAAC,UAAU,EAAE,aAAa;oBAC9C,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;oBACvC,CAAC,CAAC,SAAS;aACd;SACF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,IAAI,CACT,QAAwB,EACxB,eAA8B,EAC9B,SAAiB;QAEjB,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,sBAAsB,CAAC;gBAC/B,IAAI,EAAE,SAAS,CAAC,wBAAwB;gBACxC,OAAO,EAAE,kCAAkC;gBAC3C,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;aAC5C,CAAC,CAAC;QACL,CAAC;QAED,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACzF,MAAM,OAAO,GAAc,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;QAE1D,OAAO;YACL,OAAO;YACP,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,YAAY,CAAC;YAC1D,KAAK,EAAE,QAAQ,CAAC,aAAa;gBAC3B,CAAC,CAAC;oBACE,YAAY,EAAE,QAAQ,CAAC,aAAa,CAAC,gBAAgB;oBACrD,gBAAgB,EAAE,QAAQ,CAAC,aAAa,CAAC,oBAAoB;oBAC7D,WAAW,EAAE,QAAQ,CAAC,aAAa,CAAC,eAAe;iBACpD;gBACH,CAAC,CAAC,SAAS;YACb,QAAQ,EAAE;gBACR,GAAG,eAAe,CAAC,QAAQ;gBAC3B,kBAAkB,EAAE,SAAS,EAAE,wCAAwC;gBACvE,UAAU,EAAE,EAAE,GAAG,eAAe,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;gBACnF,MAAM,EAAE,EAAE,GAAG,eAAe,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE;aAC1D;YACD,GAAG,EAAE,QAA8C;SACpD,CAAC;IACJ,CAAC;IAEO,eAAe,CAAC,MAAc;QACpC,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,MAAM;gBACT,OAAO,MAAM,CAAC;YAChB,KAAK,YAAY;gBACf,OAAO,QAAQ,CAAC;YAClB,KAAK,QAAQ;gBACX,OAAO,gBAAgB,CAAC;YAC1B;gBACE,OAAO,MAAM,CAAC;QAClB,CAAC;IACH,CAAC;CACF"}
@@ -8,7 +8,9 @@
8
8
  */
9
9
  import { AdapterConversionError, NetworkError, ProviderError, StreamError, ErrorCode, createErrorFromHttpResponse, } from 'ai.matey.errors';
10
10
  import { normalizeSystemMessages } from 'ai.matey.utils';
11
+ import { getModelCache } from 'ai.matey.utils';
11
12
  import { getEffectiveStreamMode, mergeStreamingConfig } from 'ai.matey.utils';
13
+ import { buildStaticResult, applyModelFilter, DEFAULT_MISTRAL_MODELS } from '../shared.js';
12
14
  // ============================================================================
13
15
  // Mistral Backend Adapter
14
16
  // ============================================================================
@@ -16,9 +18,11 @@ export class MistralBackendAdapter {
16
18
  metadata;
17
19
  config;
18
20
  baseURL;
21
+ modelCache;
19
22
  constructor(config) {
20
23
  this.config = config;
21
24
  this.baseURL = config.baseURL || 'https://api.mistral.ai/v1';
25
+ this.modelCache = getModelCache(config.modelsCacheScope || 'global');
22
26
  this.metadata = {
23
27
  name: 'mistral-backend',
24
28
  version: '1.0.0',
@@ -205,6 +209,79 @@ export class MistralBackendAdapter {
205
209
  const estimatedTokens = this.estimateTokens(request);
206
210
  return Promise.resolve((estimatedTokens / 1000) * 0.002); // Rough estimate: $0.002 per 1K tokens
207
211
  }
212
+ /**
213
+ * List available Mistral models.
214
+ */
215
+ async listModels(options) {
216
+ try {
217
+ if (this.config.models && !options?.forceRefresh) {
218
+ return buildStaticResult(this.config.models, 'mistralai');
219
+ }
220
+ if (this.config.cacheModels !== false && !options?.forceRefresh) {
221
+ const cached = this.modelCache.get(this.metadata.name);
222
+ if (cached) {
223
+ return applyModelFilter(cached, options?.filter);
224
+ }
225
+ }
226
+ const response = await fetch(`${this.baseURL}/models`, {
227
+ method: 'GET',
228
+ headers: {
229
+ 'Content-Type': 'application/json',
230
+ Authorization: `Bearer ${this.config.apiKey}`,
231
+ ...this.config.headers,
232
+ },
233
+ signal: AbortSignal.timeout(this.config.timeout || 30000),
234
+ });
235
+ if (!response.ok) {
236
+ throw createErrorFromHttpResponse(response.status, response.statusText, await response.text(), { backend: this.metadata.name });
237
+ }
238
+ const data = (await response.json());
239
+ const models = data.data.map((model) => this.transformMistralModel(model));
240
+ const result = {
241
+ models,
242
+ source: 'remote',
243
+ fetchedAt: Date.now(),
244
+ isComplete: true,
245
+ };
246
+ if (this.config.cacheModels !== false) {
247
+ this.modelCache.set(this.metadata.name, result, this.config.modelsCacheTTL || 3600000);
248
+ }
249
+ return applyModelFilter(result, options?.filter);
250
+ }
251
+ catch (error) {
252
+ if (!options?.forceRefresh) {
253
+ const cached = this.modelCache.get(this.metadata.name);
254
+ if (cached)
255
+ return cached;
256
+ }
257
+ const result = {
258
+ models: [...DEFAULT_MISTRAL_MODELS],
259
+ source: 'static',
260
+ fetchedAt: Date.now(),
261
+ isComplete: true,
262
+ };
263
+ return applyModelFilter(result, options?.filter);
264
+ }
265
+ }
266
+ transformMistralModel(model) {
267
+ return {
268
+ id: model.id,
269
+ name: model.id,
270
+ ownedBy: 'mistralai',
271
+ capabilities: {
272
+ maxTokens: 8192,
273
+ contextWindow: 32000,
274
+ supportsStreaming: true,
275
+ supportsVision: false,
276
+ supportsTools: true,
277
+ supportsJSON: true,
278
+ },
279
+ };
280
+ }
281
+ invalidateModelCache() {
282
+ this.modelCache.invalidate(this.metadata.name);
283
+ return this;
284
+ }
208
285
  /**
209
286
  * Convert IR request to Mistral format.
210
287
  *
@@ -219,7 +296,7 @@ export class MistralBackendAdapter {
219
296
  : msg.content.map((c) => (c.type === 'text' ? c.text : JSON.stringify(c))).join(''),
220
297
  }));
221
298
  return {
222
- model: request.parameters?.model || 'mistral-small',
299
+ model: request.parameters?.model || this.config.defaultModel || 'mistral-small-2501',
223
300
  messages: mistralMessages,
224
301
  temperature: request.parameters?.temperature,
225
302
  max_tokens: request.parameters?.maxTokens,
@@ -1 +1 @@
1
- {"version":3,"file":"mistral.js","sourceRoot":"","sources":["../../../src/providers/mistral.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mistral.js","sourceRoot":"","sources":["../../../src/providers/mistral.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@
9
9
  import { NetworkError, ProviderError, StreamError, ErrorCode, createErrorFromHttpResponse, } from 'ai.matey.errors';
10
10
  import { normalizeSystemMessages } from 'ai.matey.utils';
11
11
  import { getEffectiveStreamMode, mergeStreamingConfig } from 'ai.matey.utils';
12
+ import { buildStaticResult, applyModelFilter } from '../shared.js';
12
13
  // ============================================================================
13
14
  // Ollama Backend Adapter
14
15
  // ============================================================================
@@ -249,5 +250,80 @@ export class OllamaBackendAdapter {
249
250
  raw: response,
250
251
  };
251
252
  }
253
+ /**
254
+ * List locally available models from Ollama.
255
+ *
256
+ * Priority order:
257
+ * 1. Static config override (this.config.models)
258
+ * 2. API fetch (http://localhost:11434/api/tags)
259
+ * 3. Empty array (Ollama not running or no models installed)
260
+ *
261
+ * Note: Unlike cloud providers, Ollama models are local and dynamic.
262
+ * No caching or fallback list - always fetches fresh from local server.
263
+ *
264
+ * @param options - Optional filter settings
265
+ * @returns Promise resolving to list of locally installed models
266
+ */
267
+ async listModels(options) {
268
+ try {
269
+ // 1. Check static config override first
270
+ if (this.config.models) {
271
+ return buildStaticResult(this.config.models, 'ollama');
272
+ }
273
+ // 2. Fetch from Ollama local API
274
+ const response = await fetch(`${this.baseURL}/api/tags`, {
275
+ method: 'GET',
276
+ headers: { 'Content-Type': 'application/json', ...this.config.headers },
277
+ signal: AbortSignal.timeout(this.config.timeout || 5000),
278
+ });
279
+ if (!response.ok) {
280
+ throw createErrorFromHttpResponse(response.status, response.statusText, await response.text(), { backend: this.metadata.name });
281
+ }
282
+ const data = (await response.json());
283
+ // 3. Transform to AIModel format
284
+ const models = data.models.map((model) => this.transformOllamaModel(model));
285
+ // 4. Build result
286
+ const result = {
287
+ models,
288
+ source: 'remote',
289
+ fetchedAt: Date.now(),
290
+ isComplete: true,
291
+ };
292
+ // 5. Apply filter if requested
293
+ return applyModelFilter(result, options?.filter);
294
+ }
295
+ catch (error) {
296
+ // 6. Return empty list if Ollama not running or error
297
+ // No fallback models for Ollama since it's dynamic/local
298
+ const result = {
299
+ models: [],
300
+ source: 'static',
301
+ fetchedAt: Date.now(),
302
+ isComplete: true,
303
+ };
304
+ return applyModelFilter(result, options?.filter);
305
+ }
306
+ }
307
+ /**
308
+ * Transform Ollama API model to AIModel format.
309
+ */
310
+ transformOllamaModel(model) {
311
+ // Parse parameter size from details (e.g., "3B", "7B", "13B")
312
+ const paramSize = model.details?.parameter_size || 'unknown';
313
+ return {
314
+ id: model.name,
315
+ name: model.name,
316
+ description: `${model.details?.family || 'Local'} model (${paramSize})`,
317
+ ownedBy: 'ollama',
318
+ capabilities: {
319
+ maxTokens: 4096,
320
+ contextWindow: model.details?.context_length || 4096,
321
+ supportsStreaming: true,
322
+ supportsVision: false,
323
+ supportsTools: false,
324
+ supportsJSON: false,
325
+ },
326
+ };
327
+ }
252
328
  }
253
329
  //# sourceMappingURL=ollama.js.map