{"version":3,"file":"space-roles.mjs","names":["mapi.listSpaceRoles","mapi.getSpaceRole","mapi.createSpaceRole","mapi.partialUpdateSpaceRole","mapi.replaceSpaceRole","mapi.deleteSpaceRole"],"sources":["../../src/resources/space-roles.ts"],"sourcesContent":["import * as mapi from \"../generated/mapi/sdk.gen\";\nimport type {\n  CreateSpaceRoleData,\n  CreateSpaceRoleResponses,\n  DeleteSpaceRoleResponses,\n  GetSpaceRoleResponses,\n  ListSpaceRolesData,\n  ListSpaceRolesResponses,\n  PartialUpdateSpaceRoleData,\n  PartialUpdateSpaceRoleResponses,\n  ReplaceSpaceRoleData,\n  ReplaceSpaceRoleResponses,\n} from \"../generated/mapi/types.gen\";\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from \"../client\";\nimport { buildCallOptions, resolveSpaceId, type SpaceIdPathOverride } from \"./shared\";\n\nexport function createSpaceRolesResource<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?: ListSpaceRolesData[\"query\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<ListSpaceRolesResponses[200], ThrowOnError>> {\n      const { query, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<ListSpaceRolesResponses[200], ThrowOnError>(\n        () =>\n          mapi.listSpaceRoles({\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      spaceRoleId: number,\n      options: {\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<GetSpaceRoleResponses[200], ThrowOnError>> {\n      const { signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<GetSpaceRoleResponses[200], ThrowOnError>(\n        () =>\n          mapi.getSpaceRole({\n            client,\n            path: { space_id: resolvedSpaceId, id: spaceRoleId },\n            signal,\n            ...buildCallOptions(client, throwOnError, fetchOptions),\n          }),\n        throwOnError,\n      );\n    },\n    create<ThrowOnError extends boolean = DefaultThrowOnError>(\n      options: {\n        body: CreateSpaceRoleData[\"body\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride,\n    ): Promise<ApiResponse<CreateSpaceRoleResponses[201], ThrowOnError>> {\n      const { body, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<CreateSpaceRoleResponses[201], ThrowOnError>(\n        () =>\n          mapi.createSpaceRole({\n            client,\n            path: { space_id: resolvedSpaceId },\n            body,\n            signal,\n            ...buildCallOptions(client, throwOnError, fetchOptions),\n          }),\n        throwOnError,\n      );\n    },\n    /** Updates a space role (`PATCH`). Only the fields in the body change. */\n    update<ThrowOnError extends boolean = DefaultThrowOnError>(\n      spaceRoleId: number,\n      options: {\n        body: PartialUpdateSpaceRoleData[\"body\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride,\n    ): Promise<ApiResponse<PartialUpdateSpaceRoleResponses[200], ThrowOnError>> {\n      const { body, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<PartialUpdateSpaceRoleResponses[200], ThrowOnError>(\n        () =>\n          mapi.partialUpdateSpaceRole({\n            client,\n            path: { space_id: resolvedSpaceId, id: spaceRoleId },\n            body,\n            signal,\n            ...buildCallOptions(client, throwOnError, fetchOptions),\n          }),\n        throwOnError,\n      );\n    },\n    /** Updates a space role (`PUT`). Behaves like `update()`: only the fields in the body change. */\n    replace<ThrowOnError extends boolean = DefaultThrowOnError>(\n      spaceRoleId: number,\n      options: {\n        body: ReplaceSpaceRoleData[\"body\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride,\n    ): Promise<ApiResponse<ReplaceSpaceRoleResponses[200], ThrowOnError>> {\n      const { body, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<ReplaceSpaceRoleResponses[200], ThrowOnError>(\n        () =>\n          mapi.replaceSpaceRole({\n            client,\n            path: { space_id: resolvedSpaceId, id: spaceRoleId },\n            body,\n            signal,\n            ...buildCallOptions(client, throwOnError, fetchOptions),\n          }),\n        throwOnError,\n      );\n    },\n    delete<ThrowOnError extends boolean = DefaultThrowOnError>(\n      spaceRoleId: number,\n      options: {\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<DeleteSpaceRoleResponses[200], ThrowOnError>> {\n      const { signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<DeleteSpaceRoleResponses[200], ThrowOnError>(\n        () =>\n          mapi.deleteSpaceRole({\n            client,\n            path: { space_id: resolvedSpaceId, id: spaceRoleId },\n            signal,\n            ...buildCallOptions(client, throwOnError, fetchOptions),\n          }),\n        throwOnError,\n      );\n    },\n  };\n}\n"],"mappings":";;;AAgBA,SAAgB,yBACd,MACA;CACA,MAAM,EAAE,QAAQ,SAAS,gBAAgB;CACzC,MAAM,cAAc,SAAuC,eAAe,SAAS,IAAI;CAEvF,OAAO;EACL,KACE,UAK0B,CAAC,GACuC;GAClE,MAAM,EAAE,OAAO,QAAQ,MAAM,cAAc,iBAAiB;GAC5D,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAEHA,eAAoB;IAClB;IACA,MAAM,EAAE,UAAU,gBAAgB;IAClC;IACA;IACA,GAAG,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;EACA,IACE,aACA,UAI0B,CAAC,GACqC;GAChE,MAAM,EAAE,QAAQ,MAAM,cAAc,iBAAiB;GACrD,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAEHC,aAAkB;IAChB;IACA,MAAM;KAAE,UAAU;KAAiB,IAAI;IAAY;IACnD;IACA,GAAG,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;EACA,OACE,SAMmE;GACnE,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAEHC,gBAAqB;IACnB;IACA,MAAM,EAAE,UAAU,gBAAgB;IAClC;IACA;IACA,GAAG,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;;EAEA,OACE,aACA,SAM0E;GAC1E,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAEHC,uBAA4B;IAC1B;IACA,MAAM;KAAE,UAAU;KAAiB,IAAI;IAAY;IACnD;IACA;IACA,GAAG,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;;EAEA,QACE,aACA,SAMoE;GACpE,MAAM,EAAE,MAAM,QAAQ,MAAM,cAAc,iBAAiB;GAC3D,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAEHC,iBAAsB;IACpB;IACA,MAAM;KAAE,UAAU;KAAiB,IAAI;IAAY;IACnD;IACA;IACA,GAAG,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;EACA,OACE,aACA,UAI0B,CAAC,GACwC;GACnE,MAAM,EAAE,QAAQ,MAAM,cAAc,iBAAiB;GACrD,MAAM,kBAAkB,WAAW,IAAI;GACvC,OAAO,kBAEHC,gBAAqB;IACnB;IACA,MAAM;KAAE,UAAU;KAAiB,IAAI;IAAY;IACnD;IACA,GAAG,iBAAiB,QAAQ,cAAc,YAAY;GACxD,CAAC,GACH,YACF;EACF;CACF;AACF"}