{"version":3,"file":"experiments.mjs","names":["experimentsApi.listExperiments","experimentsApi.getExperiment","experimentsApi.createExperiment","experimentsApi.updateExperiment","experimentsApi.deleteExperiment","experimentsApi.activateExperiment","experimentsApi.pauseExperiment","experimentsApi.completeExperiment","experimentsApi.completeExperimentWithWinner","experimentsApi.selectExperimentWinner","experimentsApi.createExperimentStory","experimentsApi.deleteExperimentStory","experimentsApi.createStoryMapping","experimentsApi.deleteStoryMapping","experimentsApi.getExperimentResults","experimentsApi.pushExperimentResults"],"sources":["../../src/resources/experiments.ts"],"sourcesContent":["import * as experimentsApi from \"../generated/mapi/sdk.gen\";\nimport type {\n  ActivateExperimentData,\n  ActivateExperimentResponses,\n  CompleteExperimentResponses,\n  CompleteExperimentWithWinnerResponses,\n  CreateExperimentData,\n  CreateExperimentResponses,\n  CreateExperimentStoryData,\n  CreateExperimentStoryResponses,\n  CreateStoryMappingData,\n  CreateStoryMappingResponses,\n  DeleteExperimentResponses,\n  DeleteExperimentStoryResponses,\n  DeleteStoryMappingResponses,\n  GetExperimentResponses,\n  GetExperimentResultsResponses,\n  ListExperimentsData,\n  ListExperimentsResponses,\n  PauseExperimentResponses,\n  PushExperimentResultsData,\n  PushExperimentResultsResponses,\n  SelectExperimentWinnerResponses,\n  UpdateExperimentData,\n  UpdateExperimentResponses,\n} from \"../generated/mapi/types.gen\";\nimport type { ApiResponse, FetchOptions, MapiResourceDeps } from \"../client\";\nimport { resolveSpaceId, type SpaceIdPathOverride } from \"./shared\";\n\nexport function createExperimentsResource(deps: MapiResourceDeps) {\n  const { client, spaceId, wrapRequest } = deps;\n  const getSpaceId = (path?: SpaceIdPathOverride[\"path\"]) => resolveSpaceId(spaceId, path);\n\n  return {\n    list<ThrowOnError extends boolean = false>(\n      options: {\n        query?: ListExperimentsData[\"query\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<ListExperimentsResponses[200], ThrowOnError>> {\n      const { query, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<ListExperimentsResponses[200], ThrowOnError>(\n        () =>\n          experimentsApi.listExperiments({\n            client,\n            path: { space_id: resolvedSpaceId },\n            query,\n            signal,\n            ...(throwOnError === undefined ? {} : { throwOnError }),\n            ...(fetchOptions\n              ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n              : {}),\n          }),\n        throwOnError,\n      );\n    },\n    get<ThrowOnError extends boolean = false>(\n      experimentId: number | string,\n      options: {\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<GetExperimentResponses[200], ThrowOnError>> {\n      const { signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<GetExperimentResponses[200], ThrowOnError>(\n        () =>\n          experimentsApi.getExperiment({\n            client,\n            path: { space_id: resolvedSpaceId, id: Number(experimentId) },\n            signal,\n            ...(throwOnError === undefined ? {} : { throwOnError }),\n            ...(fetchOptions\n              ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n              : {}),\n          }),\n        throwOnError,\n      );\n    },\n    create<ThrowOnError extends boolean = false>(\n      options: {\n        body: CreateExperimentData[\"body\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride,\n    ): Promise<ApiResponse<CreateExperimentResponses[201], ThrowOnError>> {\n      const { body, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<CreateExperimentResponses[201], ThrowOnError>(\n        () =>\n          experimentsApi.createExperiment({\n            client,\n            path: { space_id: resolvedSpaceId },\n            body,\n            signal,\n            ...(throwOnError === undefined ? {} : { throwOnError }),\n            ...(fetchOptions\n              ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n              : {}),\n          }),\n        throwOnError,\n      );\n    },\n    update<ThrowOnError extends boolean = false>(\n      experimentId: number | string,\n      options: {\n        body: UpdateExperimentData[\"body\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride,\n    ): Promise<ApiResponse<UpdateExperimentResponses[200], ThrowOnError>> {\n      const { body, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<UpdateExperimentResponses[200], ThrowOnError>(\n        () =>\n          experimentsApi.updateExperiment({\n            client,\n            path: { space_id: resolvedSpaceId, id: Number(experimentId) },\n            body,\n            signal,\n            ...(throwOnError === undefined ? {} : { throwOnError }),\n            ...(fetchOptions\n              ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n              : {}),\n          }),\n        throwOnError,\n      );\n    },\n    delete<ThrowOnError extends boolean = false>(\n      experimentId: number | string,\n      options: {\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<DeleteExperimentResponses[204], ThrowOnError>> {\n      const { signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<DeleteExperimentResponses[204], ThrowOnError>(\n        () =>\n          experimentsApi.deleteExperiment({\n            client,\n            path: { space_id: resolvedSpaceId, id: Number(experimentId) },\n            signal,\n            ...(throwOnError === undefined ? {} : { throwOnError }),\n            ...(fetchOptions\n              ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n              : {}),\n          }),\n        throwOnError,\n      );\n    },\n    activate<ThrowOnError extends boolean = false>(\n      experimentId: number | string,\n      options: {\n        query?: ActivateExperimentData[\"query\"];\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<ActivateExperimentResponses[200], ThrowOnError>> {\n      const { query, signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<ActivateExperimentResponses[200], ThrowOnError>(\n        () =>\n          experimentsApi.activateExperiment({\n            client,\n            path: { space_id: resolvedSpaceId, id: Number(experimentId) },\n            query,\n            signal,\n            ...(throwOnError === undefined ? {} : { throwOnError }),\n            ...(fetchOptions\n              ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n              : {}),\n          }),\n        throwOnError,\n      );\n    },\n    pause<ThrowOnError extends boolean = false>(\n      experimentId: number | string,\n      options: {\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<PauseExperimentResponses[200], ThrowOnError>> {\n      const { signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<PauseExperimentResponses[200], ThrowOnError>(\n        () =>\n          experimentsApi.pauseExperiment({\n            client,\n            path: { space_id: resolvedSpaceId, id: Number(experimentId) },\n            signal,\n            ...(throwOnError === undefined ? {} : { throwOnError }),\n            ...(fetchOptions\n              ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n              : {}),\n          }),\n        throwOnError,\n      );\n    },\n    complete<ThrowOnError extends boolean = false>(\n      experimentId: number | string,\n      options: {\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<CompleteExperimentResponses[200], ThrowOnError>> {\n      const { signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<CompleteExperimentResponses[200], ThrowOnError>(\n        () =>\n          experimentsApi.completeExperiment({\n            client,\n            path: { space_id: resolvedSpaceId, id: Number(experimentId) },\n            signal,\n            ...(throwOnError === undefined ? {} : { throwOnError }),\n            ...(fetchOptions\n              ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n              : {}),\n          }),\n        throwOnError,\n      );\n    },\n    completeWithWinner<ThrowOnError extends boolean = false>(\n      experimentId: number | string,\n      variantId: number,\n      options: {\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<CompleteExperimentWithWinnerResponses[200], ThrowOnError>> {\n      const { signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<CompleteExperimentWithWinnerResponses[200], ThrowOnError>(\n        () =>\n          experimentsApi.completeExperimentWithWinner({\n            client,\n            path: { space_id: resolvedSpaceId, id: Number(experimentId) },\n            query: { variant_id: variantId },\n            signal,\n            ...(throwOnError === undefined ? {} : { throwOnError }),\n            ...(fetchOptions\n              ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n              : {}),\n          }),\n        throwOnError,\n      );\n    },\n    selectWinner<ThrowOnError extends boolean = false>(\n      experimentId: number | string,\n      variantId: number,\n      options: {\n        signal?: AbortSignal;\n        throwOnError?: ThrowOnError;\n        fetchOptions?: FetchOptions;\n      } & SpaceIdPathOverride = {},\n    ): Promise<ApiResponse<SelectExperimentWinnerResponses[200], ThrowOnError>> {\n      const { signal, path, throwOnError, fetchOptions } = options;\n      const resolvedSpaceId = getSpaceId(path);\n      return wrapRequest<SelectExperimentWinnerResponses[200], ThrowOnError>(\n        () =>\n          experimentsApi.selectExperimentWinner({\n            client,\n            path: { space_id: resolvedSpaceId, id: Number(experimentId) },\n            query: { variant_id: variantId },\n            signal,\n            ...(throwOnError === undefined ? {} : { throwOnError }),\n            ...(fetchOptions\n              ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n              : {}),\n          }),\n        throwOnError,\n      );\n    },\n    stories: {\n      create<ThrowOnError extends boolean = false>(\n        experimentId: number | string,\n        options: {\n          body: CreateExperimentStoryData[\"body\"];\n          signal?: AbortSignal;\n          throwOnError?: ThrowOnError;\n          fetchOptions?: FetchOptions;\n        } & SpaceIdPathOverride,\n      ): Promise<ApiResponse<CreateExperimentStoryResponses[201], ThrowOnError>> {\n        const { body, signal, path, throwOnError, fetchOptions } = options;\n        const resolvedSpaceId = getSpaceId(path);\n        return wrapRequest<CreateExperimentStoryResponses[201], ThrowOnError>(\n          () =>\n            experimentsApi.createExperimentStory({\n              client,\n              path: { space_id: resolvedSpaceId, experiment_id: Number(experimentId) },\n              body,\n              signal,\n              ...(throwOnError === undefined ? {} : { throwOnError }),\n              ...(fetchOptions\n                ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n                : {}),\n            }),\n          throwOnError,\n        );\n      },\n      delete<ThrowOnError extends boolean = false>(\n        experimentId: number | string,\n        storyId: number | string,\n        options: {\n          signal?: AbortSignal;\n          throwOnError?: ThrowOnError;\n          fetchOptions?: FetchOptions;\n        } & SpaceIdPathOverride = {},\n      ): Promise<ApiResponse<DeleteExperimentStoryResponses[204], ThrowOnError>> {\n        const { signal, path, throwOnError, fetchOptions } = options;\n        const resolvedSpaceId = getSpaceId(path);\n        return wrapRequest<DeleteExperimentStoryResponses[204], ThrowOnError>(\n          () =>\n            experimentsApi.deleteExperimentStory({\n              client,\n              path: {\n                space_id: resolvedSpaceId,\n                experiment_id: Number(experimentId),\n                story_id: Number(storyId),\n              },\n              signal,\n              ...(throwOnError === undefined ? {} : { throwOnError }),\n              ...(fetchOptions\n                ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n                : {}),\n            }),\n          throwOnError,\n        );\n      },\n    },\n    storyMappings: {\n      create<ThrowOnError extends boolean = false>(\n        experimentId: number | string,\n        variantId: number | string,\n        options: {\n          body: CreateStoryMappingData[\"body\"];\n          signal?: AbortSignal;\n          throwOnError?: ThrowOnError;\n          fetchOptions?: FetchOptions;\n        } & SpaceIdPathOverride,\n      ): Promise<ApiResponse<CreateStoryMappingResponses[201], ThrowOnError>> {\n        const { body, signal, path, throwOnError, fetchOptions } = options;\n        const resolvedSpaceId = getSpaceId(path);\n        return wrapRequest<CreateStoryMappingResponses[201], ThrowOnError>(\n          () =>\n            experimentsApi.createStoryMapping({\n              client,\n              path: {\n                space_id: resolvedSpaceId,\n                experiment_id: Number(experimentId),\n                variant_id: Number(variantId),\n              },\n              body,\n              signal,\n              ...(throwOnError === undefined ? {} : { throwOnError }),\n              ...(fetchOptions\n                ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n                : {}),\n            }),\n          throwOnError,\n        );\n      },\n      delete<ThrowOnError extends boolean = false>(\n        experimentId: number | string,\n        variantId: number | string,\n        originalStoryId: number | string,\n        options: {\n          signal?: AbortSignal;\n          throwOnError?: ThrowOnError;\n          fetchOptions?: FetchOptions;\n        } & SpaceIdPathOverride = {},\n      ): Promise<ApiResponse<DeleteStoryMappingResponses[204], ThrowOnError>> {\n        const { signal, path, throwOnError, fetchOptions } = options;\n        const resolvedSpaceId = getSpaceId(path);\n        return wrapRequest<DeleteStoryMappingResponses[204], ThrowOnError>(\n          () =>\n            experimentsApi.deleteStoryMapping({\n              client,\n              path: {\n                space_id: resolvedSpaceId,\n                experiment_id: Number(experimentId),\n                variant_id: Number(variantId),\n                original_story_id: Number(originalStoryId),\n              },\n              signal,\n              ...(throwOnError === undefined ? {} : { throwOnError }),\n              ...(fetchOptions\n                ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n                : {}),\n            }),\n          throwOnError,\n        );\n      },\n    },\n    results: {\n      get<ThrowOnError extends boolean = false>(\n        experimentId: number | string,\n        options: {\n          signal?: AbortSignal;\n          throwOnError?: ThrowOnError;\n          fetchOptions?: FetchOptions;\n        } & SpaceIdPathOverride = {},\n      ): Promise<ApiResponse<GetExperimentResultsResponses[200], ThrowOnError>> {\n        const { signal, path, throwOnError, fetchOptions } = options;\n        const resolvedSpaceId = getSpaceId(path);\n        return wrapRequest<GetExperimentResultsResponses[200], ThrowOnError>(\n          () =>\n            experimentsApi.getExperimentResults({\n              client,\n              path: { space_id: resolvedSpaceId, experiment_id: Number(experimentId) },\n              signal,\n              ...(throwOnError === undefined ? {} : { throwOnError }),\n              ...(fetchOptions\n                ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n                : {}),\n            }),\n          throwOnError,\n        );\n      },\n      push<ThrowOnError extends boolean = false>(\n        experimentId: number | string,\n        options: {\n          body: PushExperimentResultsData[\"body\"];\n          signal?: AbortSignal;\n          throwOnError?: ThrowOnError;\n          fetchOptions?: FetchOptions;\n        } & SpaceIdPathOverride,\n      ): Promise<ApiResponse<PushExperimentResultsResponses[200], ThrowOnError>> {\n        const { body, signal, path, throwOnError, fetchOptions } = options;\n        const resolvedSpaceId = getSpaceId(path);\n        return wrapRequest<PushExperimentResultsResponses[200], ThrowOnError>(\n          () =>\n            experimentsApi.pushExperimentResults({\n              client,\n              path: { space_id: resolvedSpaceId, experiment_id: Number(experimentId) },\n              body,\n              signal,\n              ...(throwOnError === undefined ? {} : { throwOnError }),\n              ...(fetchOptions\n                ? { kyOptions: { ...client.getConfig().kyOptions, ...fetchOptions } }\n                : {}),\n            }),\n          throwOnError,\n        );\n      },\n    },\n  };\n}\n"],"mappings":"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"}