{"version":3,"sources":["../src/client-sdk/services/workflows/workflows-api.service.ts"],"sourcesContent":["import type { paths } from \"@/internal/generated/openapi/api-client\";\nimport {\n  createLangWatchApiClient,\n  type LangwatchApiClient,\n} from \"@/internal/api/client\";\nimport { type InternalConfig } from \"@/client-sdk/types\";\nimport {\n  extractStatusFromResponse,\n  formatApiErrorForOperation,\n} from \"@/client-sdk/services/_shared/format-api-error\";\n\nexport type WorkflowResponse = NonNullable<\n  paths[\"/api/workflows\"][\"get\"][\"responses\"][\"200\"][\"content\"][\"application/json\"]\n>[number];\n\nexport type WorkflowDeleteResponse =\n  paths[\"/api/workflows/{id}\"][\"delete\"][\"responses\"][\"200\"][\"content\"][\"application/json\"];\n\nexport class WorkflowsApiError extends Error {\n  constructor(\n    message: string,\n    public readonly operation: string,\n    public readonly originalError?: unknown,\n  ) {\n    super(message);\n    this.name = \"WorkflowsApiError\";\n  }\n}\n\nexport class WorkflowsApiService {\n  private readonly apiClient: LangwatchApiClient;\n\n  constructor(config?: Pick<InternalConfig, \"langwatchApiClient\">) {\n    this.apiClient = config?.langwatchApiClient ?? createLangWatchApiClient();\n  }\n\n  private handleApiError(operation: string, error: unknown): never {\n    const message = formatApiErrorForOperation({ operation: operation, error: error, options: {\n      status: extractStatusFromResponse(error),\n    } });\n    throw new WorkflowsApiError(message, operation, error);\n  }\n\n  async getAll(): Promise<WorkflowResponse[]> {\n    const { data, error } = await this.apiClient.GET(\"/api/workflows\");\n    if (error) this.handleApiError(\"list workflows\", error);\n    return data;\n  }\n\n  async get(id: string): Promise<WorkflowResponse> {\n    const { data, error } = await this.apiClient.GET(\"/api/workflows/{id}\", {\n      params: { path: { id } },\n    });\n    if (error) this.handleApiError(`get workflow \"${id}\"`, error);\n    return data;\n  }\n\n  async delete(id: string): Promise<WorkflowDeleteResponse> {\n    const { data, error } = await this.apiClient.DELETE(\"/api/workflows/{id}\", {\n      params: { path: { id } },\n    });\n    if (error) this.handleApiError(`delete workflow \"${id}\"`, error);\n    return data;\n  }\n}\n"],"mappings":";;;;;;;;;AAkBO,IAAM,oBAAN,cAAgC,MAAM;AAAA,EAC3C,YACE,SACgB,WACA,eAChB;AACA,UAAM,OAAO;AAHG;AACA;AAGhB,SAAK,OAAO;AAAA,EACd;AACF;AAEO,IAAM,sBAAN,MAA0B;AAAA,EAG/B,YAAY,QAAqD;AAhCnE;AAiCI,SAAK,aAAY,sCAAQ,uBAAR,YAA8B,yBAAyB;AAAA,EAC1E;AAAA,EAEQ,eAAe,WAAmB,OAAuB;AAC/D,UAAM,UAAU,2BAA2B,EAAE,WAAsB,OAAc,SAAS;AAAA,MACxF,QAAQ,0BAA0B,KAAK;AAAA,IACzC,EAAE,CAAC;AACH,UAAM,IAAI,kBAAkB,SAAS,WAAW,KAAK;AAAA,EACvD;AAAA,EAEA,MAAM,SAAsC;AAC1C,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,KAAK,UAAU,IAAI,gBAAgB;AACjE,QAAI,MAAO,MAAK,eAAe,kBAAkB,KAAK;AACtD,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,IAAI,IAAuC;AAC/C,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,KAAK,UAAU,IAAI,uBAAuB;AAAA,MACtE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE;AAAA,IACzB,CAAC;AACD,QAAI,MAAO,MAAK,eAAe,iBAAiB,EAAE,KAAK,KAAK;AAC5D,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,OAAO,IAA6C;AACxD,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,KAAK,UAAU,OAAO,uBAAuB;AAAA,MACzE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE;AAAA,IACzB,CAAC;AACD,QAAI,MAAO,MAAK,eAAe,oBAAoB,EAAE,KAAK,KAAK;AAC/D,WAAO;AAAA,EACT;AACF;","names":[]}