{"version":3,"sources":["/Users/ami/Documents/prometheus/x12i/ai-tools/dist/chunk-BVOTZ5CJ.cjs","../src/catalog/catalogMaintenance.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACF,wDAA6B;AAC7B;AACA;ACeA,MAAA,SAAsB,sBAAA,CACpB,QAAA,EAAiC,CAAC,CAAA,EACH;AAC/B,EAAA,MAAM,OAAA,EAAS,IAAI,4CAAA,CAAsB,OAAO,CAAA;AAChD,EAAA,MAAM,MAAA,CAAO,OAAA,CAAQ,CAAA;AACrB,EAAA,MAAM,OAAA,EAAS,MAAM,wDAAA,OAAyB,EAAS;AAAA,IACrD,QAAA,EAAU,OAAA,CAAQ,QAAA;AAAA,IAClB,KAAA,EAAO,OAAA,CAAQ,UAAA;AAAA,IACf,YAAA,EAAc;AAAA,EAChB,CAAC,CAAA;AACD,EAAA,OAAO;AAAA,IACL,EAAA,EAAI,IAAA;AAAA,IACJ,WAAA,EAAa,MAAA,CAAO,IAAA,CAAK,WAAA;AAAA,IACzB,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,eAAA;AAAA,IAC7B,YAAA,EAAc,MAAA,CAAO,IAAA,CAAK,YAAA;AAAA,IAC1B,gBAAA,EAAkB,MAAA,CAAO,IAAA,CAAK;AAAA,EAChC,CAAA;AACF;AAqBA,MAAA,SAAsB,qBAAA,CACpB,QAAA,EAA6D,CAAC,CAAA,EAChC;AAC9B,EAAA,MAAM,OAAA,EAAS,MAAM,wDAAA,OAAyB,EAAS;AAAA,IACrD,QAAA,EAAU,OAAA,CAAQ,QAAA;AAAA,IAClB,KAAA,EAAO,OAAA,CAAQ,UAAA;AAAA,IACf,YAAA,mBAAc,OAAA,CAAQ,YAAA,UAAgB,OAAA,CAAQ,YAAA,IAAgB;AAAA,EAChE,CAAC,CAAA;AACD,EAAA,MAAM,WAAA,EAAa,4CAAA;AACnB,EAAA,OAAO;AAAA,IACL,EAAA,EAAI,MAAA,CAAO,MAAA,CAAO,KAAA,EAAO,EAAA,GAAK,MAAA,CAAO,UAAA,CAAW,KAAA,EAAO,CAAA;AAAA,IACvD,WAAA,EAAa,MAAA,CAAO,IAAA,CAAK,WAAA;AAAA,IACzB,eAAA,EAAiB,MAAA,CAAO,IAAA,CAAK,eAAA;AAAA,IAC7B,YAAA,EAAc,MAAA,CAAO,IAAA,CAAK,YAAA;AAAA,IAC1B,gBAAA,EAAkB,MAAA,CAAO,IAAA,CAAK,gBAAA;AAAA,IAC9B,UAAA;AAAA,IACA,SAAA,EAAW,UAAA;AAAA,IACX,aAAA,EAAe;AAAA,EACjB,CAAA;AACF;ADrCA;AACA;AACE;AACA;AACF,+GAAC","file":"/Users/ami/Documents/prometheus/x12i/ai-tools/dist/chunk-BVOTZ5CJ.cjs","sourcesContent":[null,"import {\n  DEFAULT_MODELS_CATALOG_URL,\n  type LoadCatalogOptions,\n} from \"./loadCatalogSources.js\";\nimport { loadCatalogSourcesCached } from \"./catalogLoadCache.js\";\nimport { AiModelsCatalogClient } from \"./AiModelsCatalogClient.js\";\n\nexport type CatalogRefreshOptions = LoadCatalogOptions & {\n  cacheKey?: string;\n  cacheTtlMs?: number;\n};\n\nexport type CatalogRefreshResult = {\n  ok: true;\n  directCount: number;\n  openRouterCount: number;\n  directSource: \"remote\" | \"bundled\";\n  openRouterSource: \"remote\" | \"bundled\";\n};\n\n/** Fetch remote catalogs via ai-profiles and warm the in-memory cache. */\nexport async function refreshAiModelsCatalog(\n  options: CatalogRefreshOptions = {},\n): Promise<CatalogRefreshResult> {\n  const client = new AiModelsCatalogClient(options);\n  await client.refresh();\n  const loaded = await loadCatalogSourcesCached(options, {\n    cacheKey: options.cacheKey,\n    ttlMs: options.cacheTtlMs,\n    forceRefresh: false,\n  });\n  return {\n    ok: true,\n    directCount: loaded.meta.directCount,\n    openRouterCount: loaded.meta.openRouterCount,\n    directSource: loaded.meta.directSource,\n    openRouterSource: loaded.meta.openRouterSource,\n  };\n}\n\nexport type CatalogVerifyOptions = LoadCatalogOptions & {\n  cacheKey?: string;\n  cacheTtlMs?: number;\n};\n\nexport type CatalogVerifyReport = {\n  ok: boolean;\n  directCount: number;\n  openRouterCount: number;\n  directSource: \"remote\" | \"bundled\";\n  openRouterSource: \"remote\" | \"bundled\";\n  catalogUrl: string;\n  /** @deprecated Same as {@link catalogUrl}. */\n  directUrl: string;\n  /** @deprecated Same as {@link catalogUrl}. */\n  openRouterUrl: string;\n};\n\n/** Load and validate the unified ai-profiles catalog (uses cache unless `forceRefresh`). */\nexport async function verifyAiModelsCatalog(\n  options: CatalogVerifyOptions & { forceRefresh?: boolean } = {},\n): Promise<CatalogVerifyReport> {\n  const loaded = await loadCatalogSourcesCached(options, {\n    cacheKey: options.cacheKey,\n    ttlMs: options.cacheTtlMs,\n    forceRefresh: options.forceRefresh ?? options.bundledOnly === true,\n  });\n  const catalogUrl = DEFAULT_MODELS_CATALOG_URL;\n  return {\n    ok: loaded.direct.size > 0 && loaded.openrouter.size > 0,\n    directCount: loaded.meta.directCount,\n    openRouterCount: loaded.meta.openRouterCount,\n    directSource: loaded.meta.directSource,\n    openRouterSource: loaded.meta.openRouterSource,\n    catalogUrl,\n    directUrl: catalogUrl,\n    openRouterUrl: catalogUrl,\n  };\n}\n"]}