{"version":3,"sources":["../src/react/hooks/shared/useQuery.ts","../src/react/hooks/useEntries.ts","../src/react/hooks/useEntry.ts","../src/react/hooks/useAssets.ts","../src/react/hooks/useContentTypes.ts","../src/react/hooks/useCMA.ts","../src/react/hooks/useLaunch.ts","../src/react/hooks/useBrandKit.ts","../src/react/hooks/useKnowledgeVault.ts","../src/react/hooks/useGenerativeAI.ts","../src/react/hooks/useDeveloperHub.ts","../src/react/hooks/shared/useMutation.ts","../src/react/hooks/usePublishEntry.ts","../src/react/hooks/useCreateEntry.ts","../src/react/hooks/useUpdateEntry.ts","../src/react/hooks/useDeleteEntry.ts"],"sourcesContent":["\"use client\"\n\nimport { useCallback, useEffect, useRef, useState } from \"react\"\nimport { ContentstackError, parseErrorResponse } from \"../../../index.js\"\nimport { useContentstackContext } from \"../../provider/context\"\n\nexport interface UseQueryOptions {\n  enabled?: boolean\n  refetchInterval?: number\n}\n\nexport interface UseQueryResult<T> {\n  data: T | undefined\n  loading: boolean\n  error: ContentstackError | null\n  refetch: () => Promise<void>\n}\n\nexport function useQuery<T>(\n  path: string,\n  params?: Record<string, string>,\n  options?: UseQueryOptions,\n): UseQueryResult<T> {\n  const { proxyBasePath } = useContentstackContext()\n  const [data, setData] = useState<T | undefined>(undefined)\n  const [loading, setLoading] = useState(false)\n  const [error, setError] = useState<ContentstackError | null>(null)\n  const abortRef = useRef<AbortController | null>(null)\n\n  const enabled = options?.enabled ?? true\n  const refetchInterval = options?.refetchInterval ?? 0\n\n  const search = params ? `?${new URLSearchParams(params).toString()}` : \"\"\n  const url = `${proxyBasePath}${path}${search}`\n\n  const fetchData = useCallback(\n    async (signal?: AbortSignal) => {\n      setLoading(true)\n      setError(null)\n\n      try {\n        const response = await fetch(url, { signal })\n\n        if (signal?.aborted) return\n\n        if (!response.ok) {\n          const err = await parseErrorResponse(response, path)\n          setError(err)\n          setData(undefined)\n          return\n        }\n\n        const json = await response.json()\n        setData(json as T)\n      } catch (err) {\n        if (err instanceof DOMException && err.name === \"AbortError\") return\n        setError(\n          new ContentstackError(err instanceof Error ? err.message : \"Network error\", {\n            requestPath: path,\n            cause: err instanceof Error ? err : undefined,\n          }),\n        )\n        setData(undefined)\n      } finally {\n        if (!signal?.aborted) {\n          setLoading(false)\n        }\n      }\n    },\n    [url, path],\n  )\n\n  useEffect(() => {\n    if (!enabled) return\n\n    abortRef.current?.abort()\n    const controller = new AbortController()\n    abortRef.current = controller\n\n    fetchData(controller.signal)\n\n    return () => {\n      controller.abort()\n    }\n  }, [enabled, fetchData])\n\n  useEffect(() => {\n    if (!enabled || refetchInterval <= 0) return\n\n    const id = setInterval(() => {\n      abortRef.current?.abort()\n      const controller = new AbortController()\n      abortRef.current = controller\n      fetchData(controller.signal)\n    }, refetchInterval)\n\n    return () => {\n      clearInterval(id)\n    }\n  }, [enabled, refetchInterval, fetchData])\n\n  const refetch = useCallback(async () => {\n    abortRef.current?.abort()\n    const controller = new AbortController()\n    abortRef.current = controller\n    await fetchData(controller.signal)\n  }, [fetchData])\n\n  return { data, loading, error, refetch }\n}\n","\"use client\"\n\nimport { type Entry, buildEntriesParams } from \"../../index.js\"\nimport type { UseQueryOptions, UseQueryResult } from \"./shared/useQuery\"\nimport { useQuery } from \"./shared/useQuery\"\n\nexport interface UseEntriesOptions extends UseQueryOptions {\n  locale?: string\n  limit?: number\n  skip?: number\n  includePublishDetails?: boolean\n  query?: Record<string, unknown>\n}\n\nexport interface UseEntriesResult extends Omit<UseQueryResult<Entry[]>, \"data\"> {\n  data: Entry[] | undefined\n  count?: number\n}\n\nexport function useEntries(contentTypeUid: string, options?: UseEntriesOptions): UseEntriesResult {\n  const result = useQuery<{ entries: Entry[]; count?: number }>(\n    `/content_types/${contentTypeUid}/entries`,\n    buildEntriesParams(options),\n    options,\n  )\n\n  return {\n    ...result,\n    data: result.data?.entries,\n    count: result.data?.count,\n  }\n}\n","\"use client\"\n\nimport { type Entry, buildEntryParams } from \"../../index.js\"\nimport type { UseQueryOptions, UseQueryResult } from \"./shared/useQuery\"\nimport { useQuery } from \"./shared/useQuery\"\n\nexport interface UseEntryOptions extends UseQueryOptions {\n  locale?: string\n  version?: number\n  includePublishDetails?: boolean\n}\n\nexport function useEntry(\n  contentTypeUid: string,\n  entryUid: string,\n  options?: UseEntryOptions,\n): UseQueryResult<Entry> {\n  const result = useQuery<{ entry: Entry }>(\n    `/content_types/${contentTypeUid}/entries/${entryUid}`,\n    buildEntryParams(options),\n    options,\n  )\n\n  return {\n    ...result,\n    data: result.data?.entry,\n  }\n}\n","\"use client\"\n\nimport { type Asset, buildAssetsParams } from \"../../index.js\"\nimport type { UseQueryOptions, UseQueryResult } from \"./shared/useQuery\"\nimport { useQuery } from \"./shared/useQuery\"\n\nexport interface UseAssetsOptions extends UseQueryOptions {\n  folder?: string\n  limit?: number\n  skip?: number\n}\n\nexport function useAssets(options?: UseAssetsOptions): UseQueryResult<Asset[]> {\n  const result = useQuery<{ assets: Asset[] }>(\"/assets\", buildAssetsParams(options), options)\n\n  return {\n    ...result,\n    data: result.data?.assets,\n  }\n}\n","\"use client\"\n\nimport type { ContentType } from \"../../index.js\"\nimport type { UseQueryOptions, UseQueryResult } from \"./shared/useQuery\"\nimport { useQuery } from \"./shared/useQuery\"\n\nexport function useContentTypes(options?: UseQueryOptions): UseQueryResult<ContentType[]> {\n  const result = useQuery<{ content_types: ContentType[] }>(\"/content_types\", undefined, options)\n\n  return {\n    ...result,\n    data: result.data?.content_types,\n  }\n}\n","\"use client\"\n\nimport { useMemo } from \"react\"\nimport { type CMAClient, createCMAClient } from \"../../index.js\"\nimport { useContentstackContext } from \"../provider/context\"\n\nexport function useCMA(): CMAClient {\n  const { proxyBasePath, region, apiKey } = useContentstackContext()\n\n  return useMemo(\n    () =>\n      createCMAClient({\n        region,\n        apiKey: apiKey ?? \"proxy\",\n        auth: { type: \"oauth\", accessToken: \"proxy\" },\n        httpOptions: { baseUrl: proxyBasePath },\n      }),\n    [proxyBasePath, region, apiKey],\n  )\n}\n","\"use client\"\n\nimport { useMemo } from \"react\"\nimport { type LaunchClient, createLaunchClient } from \"../../index.js\"\nimport { useContentstackContext } from \"../provider/context\"\n\nexport function useLaunch(): LaunchClient {\n  const { launchProxyBasePath = \"/api/launch\", region, organizationUid } = useContentstackContext()\n\n  return useMemo(\n    () =>\n      createLaunchClient({\n        region,\n        organizationUid: organizationUid ?? \"proxy\",\n        auth: { type: \"oauth\", accessToken: \"proxy\" },\n        httpOptions: { baseUrl: launchProxyBasePath },\n      }),\n    [launchProxyBasePath, region, organizationUid],\n  )\n}\n","\"use client\"\n\nimport { useMemo } from \"react\"\nimport { type BrandKitClient, createBrandKitClient } from \"../../index.js\"\nimport { useContentstackContext } from \"../provider/context\"\n\nexport function useBrandKit(): BrandKitClient {\n  const {\n    brandKitProxyBasePath = \"/api/brandkit\",\n    region,\n    organizationUid,\n  } = useContentstackContext()\n\n  return useMemo(\n    () =>\n      createBrandKitClient({\n        region,\n        organizationUid: organizationUid ?? \"proxy\",\n        auth: { type: \"oauth\", accessToken: \"proxy\" },\n        httpOptions: { baseUrl: brandKitProxyBasePath },\n      }),\n    [brandKitProxyBasePath, region, organizationUid],\n  )\n}\n","\"use client\"\n\nimport { useMemo } from \"react\"\nimport { type KnowledgeVaultClient, createKnowledgeVaultClient } from \"../../index.js\"\nimport { useContentstackContext } from \"../provider/context\"\n\nexport function useKnowledgeVault(): KnowledgeVaultClient {\n  const {\n    brandKitProxyBasePath = \"/api/brandkit\",\n    region,\n    organizationUid,\n    brandKitUid,\n  } = useContentstackContext()\n\n  return useMemo(\n    () =>\n      createKnowledgeVaultClient({\n        region,\n        organizationUid: organizationUid ?? \"proxy\",\n        brandKitUid: brandKitUid ?? \"proxy\",\n        auth: { type: \"oauth\", accessToken: \"proxy\" },\n        httpOptions: { baseUrl: brandKitProxyBasePath },\n      }),\n    [brandKitProxyBasePath, region, organizationUid, brandKitUid],\n  )\n}\n","\"use client\"\n\nimport { useMemo } from \"react\"\nimport { type GenerativeAIClient, createGenerativeAIClient } from \"../../index.js\"\nimport { useContentstackContext } from \"../provider/context\"\n\nexport function useGenerativeAI(): GenerativeAIClient {\n  const {\n    brandKitProxyBasePath = \"/api/brandkit\",\n    region,\n    organizationUid,\n    brandKitUid,\n  } = useContentstackContext()\n\n  return useMemo(\n    () =>\n      createGenerativeAIClient({\n        region,\n        organizationUid: organizationUid ?? \"proxy\",\n        brandKitUid: brandKitUid ?? \"proxy\",\n        auth: { type: \"oauth\", accessToken: \"proxy\" },\n        httpOptions: { baseUrl: brandKitProxyBasePath },\n      }),\n    [brandKitProxyBasePath, region, organizationUid, brandKitUid],\n  )\n}\n","\"use client\"\n\nimport { useMemo } from \"react\"\nimport { type DeveloperHubClient, createDeveloperHubClient } from \"../../index.js\"\nimport { useContentstackContext } from \"../provider/context\"\n\nexport function useDeveloperHub(): DeveloperHubClient {\n  const {\n    developerHubProxyBasePath = \"/api/developerhub\",\n    region,\n    organizationUid,\n  } = useContentstackContext()\n\n  return useMemo(\n    () =>\n      createDeveloperHubClient({\n        region,\n        organizationUid: organizationUid ?? \"proxy\",\n        auth: { type: \"oauth\", accessToken: \"proxy\" },\n        httpOptions: { baseUrl: developerHubProxyBasePath },\n      }),\n    [developerHubProxyBasePath, region, organizationUid],\n  )\n}\n","\"use client\"\n\nimport { useCallback, useRef, useState } from \"react\"\nimport { ContentstackError, parseErrorResponse } from \"../../../index.js\"\nimport { useContentstackContext } from \"../../provider/context\"\n\nexport interface UseMutationResult<TData, TVariables> {\n  mutate: (variables: TVariables) => Promise<TData>\n  loading: boolean\n  error: ContentstackError | null\n  data: TData | undefined\n  reset: () => void\n}\n\nexport function useMutation<TData, TVariables>(\n  method: \"POST\" | \"PUT\" | \"DELETE\",\n  buildRequest: (variables: TVariables) => { path: string; body?: unknown },\n): UseMutationResult<TData, TVariables> {\n  const { proxyBasePath } = useContentstackContext()\n  const [data, setData] = useState<TData | undefined>(undefined)\n  const [loading, setLoading] = useState(false)\n  const [error, setError] = useState<ContentstackError | null>(null)\n  const buildRequestRef = useRef(buildRequest)\n  buildRequestRef.current = buildRequest\n\n  const mutate = useCallback(\n    async (variables: TVariables): Promise<TData> => {\n      const { path, body } = buildRequestRef.current(variables)\n      const url = `${proxyBasePath}${path}`\n\n      setLoading(true)\n      setError(null)\n\n      try {\n        const response = await fetch(url, {\n          method,\n          headers: body !== undefined ? { \"Content-Type\": \"application/json\" } : undefined,\n          body: body !== undefined ? JSON.stringify(body) : undefined,\n        })\n\n        if (!response.ok) {\n          const err = await parseErrorResponse(response, path)\n          setError(err)\n          setData(undefined)\n          throw err\n        }\n\n        let json: TData | undefined\n        try {\n          json = (await response.json()) as TData\n        } catch {\n          // Support successful 204/empty-body mutation responses.\n          json = undefined\n        }\n        setData(json)\n        return json as TData\n      } catch (err) {\n        if (err instanceof ContentstackError) throw err\n        const csError = new ContentstackError(\n          err instanceof Error ? err.message : \"Network error\",\n          {\n            requestPath: path,\n            cause: err instanceof Error ? err : undefined,\n          },\n        )\n        setError(csError)\n        setData(undefined)\n        throw csError\n      } finally {\n        setLoading(false)\n      }\n    },\n    [proxyBasePath, method],\n  )\n\n  const reset = useCallback(() => {\n    setData(undefined)\n    setError(null)\n  }, [])\n\n  return { mutate, loading, error, data, reset }\n}\n","\"use client\"\n\nimport { type PublishEntryVariables, buildPublishEntryRequest } from \"../../index.js\"\nimport type { UseMutationResult } from \"./shared/useMutation\"\nimport { useMutation } from \"./shared/useMutation\"\n\nexport function usePublishEntry(): UseMutationResult<void, PublishEntryVariables> {\n  return useMutation<void, PublishEntryVariables>(\"POST\", buildPublishEntryRequest)\n}\n","\"use client\"\n\nimport { useCallback } from \"react\"\nimport { type CreateEntryVariables, type Entry, buildCreateEntryRequest } from \"../../index.js\"\nimport type { UseMutationResult } from \"./shared/useMutation\"\nimport { useMutation } from \"./shared/useMutation\"\n\nexport function useCreateEntry(): UseMutationResult<Entry, CreateEntryVariables> {\n  const result = useMutation<{ entry: Entry }, CreateEntryVariables>(\n    \"POST\",\n    buildCreateEntryRequest,\n  )\n\n  const mutate = useCallback(\n    async (variables: CreateEntryVariables) => {\n      const raw = await result.mutate(variables)\n      return raw.entry\n    },\n    [result.mutate],\n  )\n\n  return {\n    ...result,\n    data: result.data?.entry,\n    mutate,\n  }\n}\n","\"use client\"\n\nimport { useCallback } from \"react\"\nimport { type Entry, type UpdateEntryVariables, buildUpdateEntryRequest } from \"../../index.js\"\nimport type { UseMutationResult } from \"./shared/useMutation\"\nimport { useMutation } from \"./shared/useMutation\"\n\nexport function useUpdateEntry(): UseMutationResult<Entry, UpdateEntryVariables> {\n  const result = useMutation<{ entry: Entry }, UpdateEntryVariables>(\"PUT\", buildUpdateEntryRequest)\n\n  const mutate = useCallback(\n    async (variables: UpdateEntryVariables) => {\n      const raw = await result.mutate(variables)\n      return raw.entry\n    },\n    [result.mutate],\n  )\n\n  return {\n    ...result,\n    data: result.data?.entry,\n    mutate,\n  }\n}\n","\"use client\"\n\nimport { type DeleteEntryVariables, buildDeleteEntryRequest } from \"../../index.js\"\nimport type { UseMutationResult } from \"./shared/useMutation\"\nimport { useMutation } from \"./shared/useMutation\"\n\nexport function useDeleteEntry(): UseMutationResult<void, DeleteEntryVariables> {\n  return useMutation<void, DeleteEntryVariables>(\"DELETE\", buildDeleteEntryRequest)\n}\n"],"mappings":"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","names":["useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useMemo","useCallback","useRef","useState","useState","useRef","useCallback","useCallback","useCallback","useCallback","useCallback"]}