{"version":3,"sources":["../../../../src/adapters/watsonx/backend/client.ts"],"names":["WatsonxClient","BackendClient","settings","region","getEnv","baseUrl","projectId","spaceId","undefined","version","create","WatsonXAI","newInstance","serviceUrl","authenticator","IamAuthenticator","apikey","apiKey","url"],"mappings":";;;;;;;;;AAkBO,MAAMA,sBAAsBC,wBAAAA,CAAAA;EAlBnC;;;AAmBE,EAAA,WAAA,CAAYC,QAAAA,EAAiC;AAC3C,IAAA,MAAMC,MAAAA,GAASD,QAAAA,EAAUC,MAAAA,IAAUC,cAAAA,CAAO,gBAAA,CAAA;AAC1C,IAAA,MAAMC,UACJH,QAAAA,EAAUG,OAAAA,IAAWD,eAAO,kBAAA,CAAA,IAAuB,WAAWD,MAAAA,CAAAA,iBAAAA,CAAAA;AAEhE,IAAA,MAAMG,SAAAA,GAAYJ,QAAAA,EAAUI,SAAAA,IAAaF,cAAAA,CAAO,oBAAA,CAAA;AAChD,IAAA,MAAMG,UAAUD,SAAAA,GAAYE,MAAAA,GAAYN,QAAAA,EAAUK,OAAAA,IAAWH,eAAO,kBAAA,CAAA;AACpE,IAAA,MAAMK,OAAAA,GAAUP,QAAAA,EAAUO,OAAAA,IAAWL,cAAAA,CAAO,iBAAA,CAAA,IAAsB,YAAA;AAElE,IAAA,KAAA,CAAM;MACJ,GAAGF,QAAAA;AACHG,MAAAA,OAAAA;AACAC,MAAAA,SAAAA;AACAC,MAAAA,OAAAA;AACAE,MAAAA;KACF,CAAA;AACF,EAAA;AACA,EAAA,IAAIF,OAAAA,GAAU;AACZ,IAAA,OAAO,KAAKL,QAAAA,CAASK,OAAAA;AACvB,EAAA;AAEA,EAAA,IAAID,SAAAA,GAAY;AACd,IAAA,OAAO,KAAKJ,QAAAA,CAASI,SAAAA;AACvB,EAAA;EAEUI,MAAAA,GAAS;AACjB,IAAA,OAAOC,oBAAUC,WAAAA,CAAY;AAC3BH,MAAAA,OAAAA,EAAS,KAAKP,QAAAA,CAASO,OAAAA;AACvBI,MAAAA,UAAAA,EAAY,KAAKX,QAAAA,CAASG,OAAAA;AAC1BS,MAAAA,aAAAA,EACE,IAAA,CAAKZ,QAAAA,EAAUY,aAAAA,IACf,IAAIC,gCAAAA,CAAiB;AACnBC,QAAAA,MAAAA,EAAQ,IAAA,CAAKd,QAAAA,EAAUe,MAAAA,IAAUb,cAAAA,CAAO,mBAAmB,EAAA,CAAA;QAC3Dc,GAAAA,EAAK;OACP;KACJ,CAAA;AACF,EAAA;AACF","file":"client.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { WatsonXAI } from \"@ibm-cloud/watsonx-ai\";\nimport { getEnv } from \"@/internals/env.js\";\nimport { IamAuthenticator, UserOptions } from \"ibm-cloud-sdk-core\";\nimport { BackendClient } from \"@/backend/client.js\";\n\nexport interface WatsonxClientSettings extends Pick<UserOptions, \"authenticator\" | \"version\"> {\n  spaceId?: string;\n  baseUrl?: string;\n  region?: string;\n  projectId?: string;\n  apiKey?: string;\n}\n\nexport class WatsonxClient extends BackendClient<WatsonxClientSettings, WatsonXAI> {\n  constructor(settings: WatsonxClientSettings) {\n    const region = settings?.region || getEnv(\"WATSONX_REGION\");\n    const baseUrl =\n      settings?.baseUrl || getEnv(\"WATSONX_BASE_URL\") || `https://${region}.ml.cloud.ibm.com`;\n\n    const projectId = settings?.projectId || getEnv(\"WATSONX_PROJECT_ID\");\n    const spaceId = projectId ? undefined : settings?.spaceId || getEnv(\"WATSONX_SPACE_ID\");\n    const version = settings?.version || getEnv(\"WATSONX_VERSION\") || \"2024-05-31\";\n\n    super({\n      ...settings,\n      baseUrl,\n      projectId,\n      spaceId,\n      version,\n    });\n  }\n  get spaceId() {\n    return this.settings.spaceId;\n  }\n\n  get projectId() {\n    return this.settings.projectId;\n  }\n\n  protected create() {\n    return WatsonXAI.newInstance({\n      version: this.settings.version,\n      serviceUrl: this.settings.baseUrl,\n      authenticator:\n        this.settings?.authenticator ||\n        new IamAuthenticator({\n          apikey: this.settings?.apiKey || getEnv(\"WATSONX_API_KEY\", \"\"),\n          url: \"https://iam.cloud.ibm.com\",\n        }),\n    });\n  }\n}\n"]}