{"version":3,"sources":["../src/knowledge-vault/items.ts","../src/knowledge-vault/client.ts"],"sourcesContent":["import type { ContentstackHttpClient } from \"../http/client.js\"\nimport type {\n  IngestContentData,\n  KnowledgeVaultItem,\n  KnowledgeVaultUsage,\n  UpdateContentData,\n} from \"./types.js\"\n\nexport class KnowledgeVaultItemsClient {\n  constructor(private readonly http: ContentstackHttpClient) {}\n\n  async ingest(data: IngestContentData): Promise<KnowledgeVaultItem> {\n    const response = await this.http.post<{ data: KnowledgeVaultItem }>(\"/v1/knowledge-vault\", data)\n    return response.data.data\n  }\n\n  async update(itemUid: string, data: UpdateContentData): Promise<KnowledgeVaultItem> {\n    const response = await this.http.put<{ data: KnowledgeVaultItem }>(\n      `/v1/knowledge-vault/${itemUid}`,\n      data,\n    )\n    return response.data.data\n  }\n\n  async delete(itemUid: string): Promise<void> {\n    await this.http.delete(`/v1/knowledge-vault/${itemUid}`)\n  }\n\n  async getUsage(): Promise<KnowledgeVaultUsage> {\n    const response = await this.http.get<{ data: KnowledgeVaultUsage }>(\"/v1/knowledge-vault/usage\")\n    return response.data.data\n  }\n}\n","import { ContentstackHttpClient } from \"../http/client.js\"\nimport type { HttpClientConfig } from \"../http/types.js\"\nimport type { ContentstackRegion } from \"../regions/resolver.js\"\nimport { resolveEndpoints } from \"../regions/resolver.js\"\nimport { KnowledgeVaultItemsClient } from \"./items.js\"\n\nexport interface KnowledgeVaultClientConfig {\n  region: ContentstackRegion\n  organizationUid: string\n  brandKitUid: string\n  auth: { type: \"oauth\"; accessToken: string } | { type: \"authtoken\"; token: string }\n  httpOptions?: Partial<HttpClientConfig>\n}\n\nexport interface KnowledgeVaultClient {\n  items: KnowledgeVaultItemsClient\n}\n\nexport function createKnowledgeVaultClient(\n  config: KnowledgeVaultClientConfig,\n): KnowledgeVaultClient {\n  const endpoints = resolveEndpoints(config.region)\n\n  const headers: Record<string, string> = {\n    organization_uid: config.organizationUid,\n    brand_kit_uid: config.brandKitUid,\n  }\n\n  switch (config.auth.type) {\n    case \"oauth\":\n      headers.authorization = `Bearer ${config.auth.accessToken}`\n      break\n    case \"authtoken\":\n      headers.authtoken = config.auth.token\n      break\n  }\n\n  const http = new ContentstackHttpClient({\n    ...config.httpOptions,\n    baseUrl: config.httpOptions?.baseUrl ?? endpoints.brandKitAI,\n    headers: {\n      ...config.httpOptions?.headers,\n      ...headers,\n    },\n  })\n\n  return {\n    items: new KnowledgeVaultItemsClient(http),\n  }\n}\n"],"mappings":";;;;;;;;AAQO,IAAM,4BAAN,MAAgC;AAAA,EACrC,YAA6B,MAA8B;AAA9B;AAAA,EAA+B;AAAA,EAE5D,MAAM,OAAO,MAAsD;AACjE,UAAM,WAAW,MAAM,KAAK,KAAK,KAAmC,uBAAuB,IAAI;AAC/F,WAAO,SAAS,KAAK;AAAA,EACvB;AAAA,EAEA,MAAM,OAAO,SAAiB,MAAsD;AAClF,UAAM,WAAW,MAAM,KAAK,KAAK;AAAA,MAC/B,uBAAuB,OAAO;AAAA,MAC9B;AAAA,IACF;AACA,WAAO,SAAS,KAAK;AAAA,EACvB;AAAA,EAEA,MAAM,OAAO,SAAgC;AAC3C,UAAM,KAAK,KAAK,OAAO,uBAAuB,OAAO,EAAE;AAAA,EACzD;AAAA,EAEA,MAAM,WAAyC;AAC7C,UAAM,WAAW,MAAM,KAAK,KAAK,IAAmC,2BAA2B;AAC/F,WAAO,SAAS,KAAK;AAAA,EACvB;AACF;;;ACdO,SAAS,2BACd,QACsB;AACtB,QAAM,YAAY,iBAAiB,OAAO,MAAM;AAEhD,QAAM,UAAkC;AAAA,IACtC,kBAAkB,OAAO;AAAA,IACzB,eAAe,OAAO;AAAA,EACxB;AAEA,UAAQ,OAAO,KAAK,MAAM;AAAA,IACxB,KAAK;AACH,cAAQ,gBAAgB,UAAU,OAAO,KAAK,WAAW;AACzD;AAAA,IACF,KAAK;AACH,cAAQ,YAAY,OAAO,KAAK;AAChC;AAAA,EACJ;AAEA,QAAM,OAAO,IAAI,uBAAuB;AAAA,IACtC,GAAG,OAAO;AAAA,IACV,SAAS,OAAO,aAAa,WAAW,UAAU;AAAA,IAClD,SAAS;AAAA,MACP,GAAG,OAAO,aAAa;AAAA,MACvB,GAAG;AAAA,IACL;AAAA,EACF,CAAC;AAED,SAAO;AAAA,IACL,OAAO,IAAI,0BAA0B,IAAI;AAAA,EAC3C;AACF;","names":[]}