{"version":3,"file":"workflow-stages.cjs","names":["resolveSpaceId","buildCallOptions"],"sources":["../../src/resources/workflow-stages.ts"],"sourcesContent":["import * as mapi from \"../generated/mapi/sdk.gen\";\nimport type {\n  CreateWorkflowStageData,\n  CreateWorkflowStageResponses,\n  DeleteWorkflowStageResponses,\n  GetWorkflowStageResponses,\n  ListWorkflowStagesData,\n  ListWorkflowStagesResponses,\n  PartialUpdateWorkflowStageData,\n  PartialUpdateWorkflowStageResponses,\n  ReplaceWorkflowStageData,\n  ReplaceWorkflowStageResponses,\n} from \"../generated/mapi/types.gen\";\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from \"../client\";\nimport { buildCallOptions, resolveSpaceId, type SpaceIdPathOverride } from \"./shared\";\n\nexport function createWorkflowStagesResource<DefaultThrowOnError extends boolean = false>(\n  deps: MapiResourceDeps<DefaultThrowOnError>,\n) {\n  const { client, spaceId, wrapRequest } = deps;\n  const getSpaceId = (path?: SpaceIdPathOverride[\"path\"]) => resolveSpaceId(spaceId, path);\n\n  return {\n    list<ThrowOnError extends boolean = DefaultThrowOnError>(\n      options: {\n        query?: ListWorkflowStagesData[\"query\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<ListWorkflowStagesResponses[200], ThrowOnError>> {\n      const { query, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<ListWorkflowStagesResponses[200], ThrowOnError>(\n        () =>\n          mapi.listWorkflowStages({\n            client,\n            path: { space_id: resolvedSpaceId },\n            query,\n            signal,\n            ...buildCallOptions(client, throwOnError, fetchOptions),\n          }),\n        throwOnError,\n      );\n    },\n    get<ThrowOnError extends boolean = DefaultThrowOnError>(\n      workflowStageId: number,\n      options: {\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<GetWorkflowStageResponses[200], ThrowOnError>> {\n      const { signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<GetWorkflowStageResponses[200], ThrowOnError>(\n        () =>\n          mapi.getWorkflowStage({\n            client,\n            path: { space_id: resolvedSpaceId, id: workflowStageId },\n            signal,\n            ...buildCallOptions(client, throwOnError, fetchOptions),\n          }),\n        throwOnError,\n      );\n    },\n    create<ThrowOnError extends boolean = DefaultThrowOnError>(\n      options: {\n        body: CreateWorkflowStageData[\"body\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride,\n    ): Promise<ApiResponse<CreateWorkflowStageResponses[201], ThrowOnError>> {\n      const { body, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<CreateWorkflowStageResponses[201], ThrowOnError>(\n        () =>\n          mapi.createWorkflowStage({\n            client,\n            path: { space_id: resolvedSpaceId },\n            body,\n            signal,\n            ...buildCallOptions(client, throwOnError, fetchOptions),\n          }),\n        throwOnError,\n      );\n    },\n    /** Updates a workflow stage (`PATCH`). Only the fields in the body change. */\n    update<ThrowOnError extends boolean = DefaultThrowOnError>(\n      workflowStageId: number,\n      options: {\n        body: PartialUpdateWorkflowStageData[\"body\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride,\n    ): Promise<ApiResponse<PartialUpdateWorkflowStageResponses[204], ThrowOnError>> {\n      const { body, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<PartialUpdateWorkflowStageResponses[204], ThrowOnError>(\n        () =>\n          mapi.partialUpdateWorkflowStage({\n            client,\n            path: { space_id: resolvedSpaceId, id: workflowStageId },\n            body,\n            signal,\n            ...buildCallOptions(client, throwOnError, fetchOptions),\n          }),\n        throwOnError,\n      );\n    },\n    /** Updates a workflow stage (`PUT`). Behaves like `update()`: only the fields in the body change. */\n    replace<ThrowOnError extends boolean = DefaultThrowOnError>(\n      workflowStageId: number,\n      options: {\n        body: ReplaceWorkflowStageData[\"body\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride,\n    ): Promise<ApiResponse<ReplaceWorkflowStageResponses[204], ThrowOnError>> {\n      const { body, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<ReplaceWorkflowStageResponses[204], ThrowOnError>(\n        () =>\n          mapi.replaceWorkflowStage({\n            client,\n            path: { space_id: resolvedSpaceId, id: workflowStageId },\n            body,\n            signal,\n            ...buildCallOptions(client, throwOnError, fetchOptions),\n          }),\n        throwOnError,\n      );\n    },\n    delete<ThrowOnError extends boolean = DefaultThrowOnError>(\n      workflowStageId: number,\n      options: {\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<DeleteWorkflowStageResponses[204], ThrowOnError>> {\n      const { signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<DeleteWorkflowStageResponses[204], ThrowOnError>(\n        () =>\n          mapi.deleteWorkflowStage({\n            client,\n            path: { space_id: resolvedSpaceId, id: workflowStageId },\n            signal,\n            ...buildCallOptions(client, throwOnError, fetchOptions),\n          }),\n        throwOnError,\n      );\n    },\n  };\n}\n"],"mappings":";;;AAgBA,SAAgB,6BACd,MACA;CACA,MAAM,EAAE,QAAQ,SAAS,gBAAgB;CACzC,MAAM,cAAc,SAAuCA,eAAAA,eAAe,SAAS,IAAI;CAEvF,OAAO;EACL,KACE,UAK0B,CAAC,GAC2C;GACtE,MAAM,EAAE,OAAO,QAAQ,MAAM,cAAc,iBAAiB;GAC5D,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAAA,gBAAA,mBAEqB;IACtB;IACA,MAAM,EAAE,UAAU,gBAAgB;IAClC;IACA;IACA,GAAGC,eAAAA,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;EACA,IACE,iBACA,UAI0B,CAAC,GACyC;GACpE,MAAM,EAAE,QAAQ,MAAM,cAAc,iBAAiB;GACrD,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAAA,gBAAA,iBAEmB;IACpB;IACA,MAAM;KAAE,UAAU;KAAiB,IAAI;IAAgB;IACvD;IACA,GAAGA,eAAAA,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;EACA,OACE,SAMuE;GACvE,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAAA,gBAAA,oBAEsB;IACvB;IACA,MAAM,EAAE,UAAU,gBAAgB;IAClC;IACA;IACA,GAAGA,eAAAA,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;;EAEA,OACE,iBACA,SAM8E;GAC9E,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAAA,gBAAA,2BAE6B;IAC9B;IACA,MAAM;KAAE,UAAU;KAAiB,IAAI;IAAgB;IACvD;IACA;IACA,GAAGA,eAAAA,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;;EAEA,QACE,iBACA,SAMwE;GACxE,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAAA,gBAAA,qBAEuB;IACxB;IACA,MAAM;KAAE,UAAU;KAAiB,IAAI;IAAgB;IACvD;IACA;IACA,GAAGA,eAAAA,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;EACA,OACE,iBACA,UAI0B,CAAC,GAC4C;GACvE,MAAM,EAAE,QAAQ,MAAM,cAAc,iBAAiB;GACrD,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAAA,gBAAA,oBAEsB;IACvB;IACA,MAAM;KAAE,UAAU;KAAiB,IAAI;IAAgB;IACvD;IACA,GAAGA,eAAAA,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;CACF;AACF"}