{"version":3,"sources":["../../src/queryClient.ts"],"sourcesContent":["import { nextTick, ref } from 'vue-demi'\nimport { QueryClient as QC } from '@tanstack/query-core'\nimport { cloneDeepUnref } from './utils'\nimport { QueryCache } from './queryCache'\nimport { MutationCache } from './mutationCache'\nimport type { UseQueryOptions } from './useQuery'\nimport type { Ref } from 'vue-demi'\nimport type { MaybeRefDeep, NoUnknown, QueryClientConfig } from './types'\nimport type {\n  CancelOptions,\n  DefaultError,\n  DefaultOptions,\n  EnsureQueryDataOptions,\n  FetchInfiniteQueryOptions,\n  FetchQueryOptions,\n  InferDataFromTag,\n  InferErrorFromTag,\n  InfiniteData,\n  InvalidateOptions,\n  InvalidateQueryFilters,\n  MutationFilters,\n  MutationKey,\n  MutationObserverOptions,\n  NoInfer,\n  OmitKeyof,\n  QueryFilters,\n  QueryKey,\n  QueryObserverOptions,\n  QueryState,\n  RefetchOptions,\n  RefetchQueryFilters,\n  ResetOptions,\n  SetDataOptions,\n  Updater,\n} from '@tanstack/query-core'\n\nexport class QueryClient extends QC {\n  constructor(config: QueryClientConfig = {}) {\n    const vueQueryConfig = {\n      defaultOptions: config.defaultOptions,\n      queryCache: config.queryCache || new QueryCache(),\n      mutationCache: config.mutationCache || new MutationCache(),\n    }\n    super(vueQueryConfig)\n  }\n\n  isRestoring?: Ref<boolean> = ref(false)\n\n  isFetching(filters: MaybeRefDeep<QueryFilters> = {}): number {\n    return super.isFetching(cloneDeepUnref(filters))\n  }\n\n  isMutating(filters: MaybeRefDeep<MutationFilters> = {}): number {\n    return super.isMutating(cloneDeepUnref(filters))\n  }\n\n  getQueryData<TData = unknown, TTaggedQueryKey extends QueryKey = QueryKey>(\n    queryKey: TTaggedQueryKey,\n  ): InferDataFromTag<TData, TTaggedQueryKey> | undefined\n  getQueryData<TData = unknown>(\n    queryKey: MaybeRefDeep<QueryKey>,\n  ): TData | undefined\n  getQueryData<TData = unknown>(\n    queryKey: MaybeRefDeep<QueryKey>,\n  ): TData | undefined {\n    return super.getQueryData(cloneDeepUnref(queryKey))\n  }\n\n  ensureQueryData<\n    TQueryFnData,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n  >(\n    options: EnsureQueryDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n  ): Promise<TData>\n  ensureQueryData<\n    TQueryFnData,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n  >(\n    options: MaybeRefDeep<\n      EnsureQueryDataOptions<TQueryFnData, TError, TData, TQueryKey>\n    >,\n  ): Promise<TData>\n  ensureQueryData<\n    TQueryFnData,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n  >(\n    options: MaybeRefDeep<\n      EnsureQueryDataOptions<TQueryFnData, TError, TData, TQueryKey>\n    >,\n  ): Promise<TData> {\n    return super.ensureQueryData(cloneDeepUnref(options))\n  }\n\n  getQueriesData<TData = unknown>(\n    filters: MaybeRefDeep<QueryFilters>,\n  ): Array<[QueryKey, TData | undefined]> {\n    return super.getQueriesData(cloneDeepUnref(filters))\n  }\n\n  setQueryData<\n    TQueryFnData = unknown,\n    TTaggedQueryKey extends QueryKey = QueryKey,\n    TInferredQueryFnData = InferDataFromTag<TQueryFnData, TTaggedQueryKey>,\n  >(\n    queryKey: TTaggedQueryKey,\n    updater: Updater<\n      NoInfer<TInferredQueryFnData> | undefined,\n      NoInfer<TInferredQueryFnData> | undefined\n    >,\n    options?: MaybeRefDeep<SetDataOptions>,\n  ): NoInfer<TInferredQueryFnData> | undefined\n  setQueryData<TQueryFnData, TData = NoUnknown<TQueryFnData>>(\n    queryKey: MaybeRefDeep<QueryKey>,\n    updater: Updater<NoInfer<TData> | undefined, NoInfer<TData> | undefined>,\n    options?: MaybeRefDeep<SetDataOptions>,\n  ): NoInfer<TData> | undefined\n  setQueryData<TData>(\n    queryKey: MaybeRefDeep<QueryKey>,\n    updater: Updater<TData | undefined, TData | undefined>,\n    options: MaybeRefDeep<SetDataOptions> = {},\n  ): NoInfer<TData> | undefined {\n    return super.setQueryData(\n      cloneDeepUnref(queryKey),\n      updater,\n      cloneDeepUnref(options),\n    )\n  }\n\n  setQueriesData<TData>(\n    filters: MaybeRefDeep<QueryFilters>,\n    updater: Updater<TData | undefined, TData | undefined>,\n    options: MaybeRefDeep<SetDataOptions> = {},\n  ): Array<[QueryKey, TData | undefined]> {\n    return super.setQueriesData(\n      cloneDeepUnref(filters),\n      updater,\n      cloneDeepUnref(options),\n    )\n  }\n\n  getQueryState<TData = unknown, TError = DefaultError>(\n    queryKey: MaybeRefDeep<QueryKey>,\n  ): QueryState<TData, TError> | undefined {\n    return super.getQueryState(cloneDeepUnref(queryKey))\n  }\n\n  removeQueries<\n    TQueryFnData = unknown,\n    TError = DefaultError,\n    TTaggedQueryKey extends QueryKey = QueryKey,\n    TInferredQueryFnData = InferDataFromTag<TQueryFnData, TTaggedQueryKey>,\n    TInferredError = InferErrorFromTag<TError, TTaggedQueryKey>,\n  >(filters?: QueryFilters<TTaggedQueryKey>): void\n  removeQueries(filters: MaybeRefDeep<QueryFilters> = {}): void {\n    return super.removeQueries(cloneDeepUnref(filters))\n  }\n\n  resetQueries<\n    TQueryFnData = unknown,\n    TError = DefaultError,\n    TTaggedQueryKey extends QueryKey = QueryKey,\n    TInferredQueryFnData = InferDataFromTag<TQueryFnData, TTaggedQueryKey>,\n    TInferredError = InferErrorFromTag<TError, TTaggedQueryKey>,\n  >(\n    filters?: QueryFilters<TTaggedQueryKey>,\n    options?: MaybeRefDeep<ResetOptions>,\n  ): Promise<void>\n  resetQueries(\n    filters: MaybeRefDeep<QueryFilters> = {},\n    options: MaybeRefDeep<ResetOptions> = {},\n  ): Promise<void> {\n    return super.resetQueries(cloneDeepUnref(filters), cloneDeepUnref(options))\n  }\n\n  cancelQueries<\n    TQueryFnData = unknown,\n    TError = DefaultError,\n    TTaggedQueryKey extends QueryKey = QueryKey,\n    TInferredQueryFnData = InferDataFromTag<TQueryFnData, TTaggedQueryKey>,\n    TInferredError = InferErrorFromTag<TError, TTaggedQueryKey>,\n  >(\n    filters?: QueryFilters<TTaggedQueryKey>,\n    options?: MaybeRefDeep<CancelOptions>,\n  ): Promise<void>\n  cancelQueries(\n    filters: MaybeRefDeep<QueryFilters> = {},\n    options: MaybeRefDeep<CancelOptions> = {},\n  ): Promise<void> {\n    return super.cancelQueries(cloneDeepUnref(filters), cloneDeepUnref(options))\n  }\n\n  invalidateQueries<\n    TQueryFnData = unknown,\n    TError = DefaultError,\n    TTaggedQueryKey extends QueryKey = QueryKey,\n    TInferredQueryFnData = InferDataFromTag<TQueryFnData, TTaggedQueryKey>,\n    TInferredError = InferErrorFromTag<TError, TTaggedQueryKey>,\n  >(\n    filters?: InvalidateQueryFilters<TTaggedQueryKey>,\n    options?: MaybeRefDeep<InvalidateOptions>,\n  ): Promise<void>\n  invalidateQueries<TTaggedQueryKey extends QueryKey = QueryKey>(\n    filters: MaybeRefDeep<InvalidateQueryFilters<TTaggedQueryKey>> = {},\n    options: MaybeRefDeep<InvalidateOptions> = {},\n  ): Promise<void> {\n    const filtersCloned = cloneDeepUnref(filters)\n    const optionsCloned = cloneDeepUnref(options)\n\n    super.invalidateQueries(\n      { ...filtersCloned, refetchType: 'none' },\n      optionsCloned,\n    )\n\n    if (filtersCloned.refetchType === 'none') {\n      return Promise.resolve()\n    }\n\n    const refetchFilters: RefetchQueryFilters<TTaggedQueryKey> = {\n      ...filtersCloned,\n      type: filtersCloned.refetchType ?? filtersCloned.type ?? 'active',\n    }\n\n    // (dosipiuk): We need to delay `refetchQueries` execution to next macro task for all reactive values to be updated.\n    // This ensures that `context` in `queryFn` while `invalidating` along reactive variable change has correct\n    return nextTick().then(() => {\n      return super.refetchQueries(refetchFilters, optionsCloned)\n    })\n  }\n\n  refetchQueries<\n    TQueryFnData = unknown,\n    TError = DefaultError,\n    TTaggedQueryKey extends QueryKey = QueryKey,\n    TInferredQueryFnData = InferDataFromTag<TQueryFnData, TTaggedQueryKey>,\n    TInferredError = InferErrorFromTag<TError, TTaggedQueryKey>,\n  >(\n    filters?: RefetchQueryFilters<TTaggedQueryKey>,\n    options?: MaybeRefDeep<RefetchOptions>,\n  ): Promise<void>\n  refetchQueries(\n    filters: MaybeRefDeep<RefetchQueryFilters> = {},\n    options: MaybeRefDeep<RefetchOptions> = {},\n  ): Promise<void> {\n    return super.refetchQueries(\n      cloneDeepUnref(filters),\n      cloneDeepUnref(options),\n    )\n  }\n\n  fetchQuery<\n    TQueryFnData,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n    TPageParam = never,\n  >(\n    options: FetchQueryOptions<\n      TQueryFnData,\n      TError,\n      TData,\n      TQueryKey,\n      TPageParam\n    >,\n  ): Promise<TData>\n  fetchQuery<\n    TQueryFnData,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n    TPageParam = never,\n  >(\n    options: MaybeRefDeep<\n      FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey, TPageParam>\n    >,\n  ): Promise<TData>\n  fetchQuery<\n    TQueryFnData,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n    TPageParam = never,\n  >(\n    options: MaybeRefDeep<\n      FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey, TPageParam>\n    >,\n  ): Promise<TData> {\n    return super.fetchQuery(cloneDeepUnref(options))\n  }\n\n  prefetchQuery<\n    TQueryFnData = unknown,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n  >(\n    options: FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n  ): Promise<void>\n  prefetchQuery<\n    TQueryFnData = unknown,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n  >(\n    options: MaybeRefDeep<\n      FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n    >,\n  ): Promise<void>\n  prefetchQuery<\n    TQueryFnData = unknown,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n  >(\n    options: MaybeRefDeep<\n      FetchQueryOptions<TQueryFnData, TError, TData, TQueryKey>\n    >,\n  ): Promise<void> {\n    return super.prefetchQuery(cloneDeepUnref(options))\n  }\n\n  fetchInfiniteQuery<\n    TQueryFnData = unknown,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n    TPageParam = unknown,\n  >(\n    options: FetchInfiniteQueryOptions<\n      TQueryFnData,\n      TError,\n      TData,\n      TQueryKey,\n      TPageParam\n    >,\n  ): Promise<InfiniteData<TData, TPageParam>>\n  fetchInfiniteQuery<\n    TQueryFnData,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n    TPageParam = unknown,\n  >(\n    options: MaybeRefDeep<\n      FetchInfiniteQueryOptions<\n        TQueryFnData,\n        TError,\n        TData,\n        TQueryKey,\n        TPageParam\n      >\n    >,\n  ): Promise<InfiniteData<TData, TPageParam>>\n  fetchInfiniteQuery<\n    TQueryFnData,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n    TPageParam = unknown,\n  >(\n    options: MaybeRefDeep<\n      FetchInfiniteQueryOptions<\n        TQueryFnData,\n        TError,\n        TData,\n        TQueryKey,\n        TPageParam\n      >\n    >,\n  ): Promise<InfiniteData<TData, TPageParam>> {\n    return super.fetchInfiniteQuery(cloneDeepUnref(options))\n  }\n\n  prefetchInfiniteQuery<\n    TQueryFnData,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n    TPageParam = unknown,\n  >(\n    options: FetchInfiniteQueryOptions<\n      TQueryFnData,\n      TError,\n      TData,\n      TQueryKey,\n      TPageParam\n    >,\n  ): Promise<void>\n  prefetchInfiniteQuery<\n    TQueryFnData,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n    TPageParam = unknown,\n  >(\n    options: MaybeRefDeep<\n      FetchInfiniteQueryOptions<\n        TQueryFnData,\n        TError,\n        TData,\n        TQueryKey,\n        TPageParam\n      >\n    >,\n  ): Promise<void>\n  prefetchInfiniteQuery<\n    TQueryFnData,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryKey extends QueryKey = QueryKey,\n    TPageParam = unknown,\n  >(\n    options: MaybeRefDeep<\n      FetchInfiniteQueryOptions<\n        TQueryFnData,\n        TError,\n        TData,\n        TQueryKey,\n        TPageParam\n      >\n    >,\n  ): Promise<void> {\n    return super.prefetchInfiniteQuery(cloneDeepUnref(options))\n  }\n\n  setDefaultOptions(options: MaybeRefDeep<DefaultOptions>): void {\n    super.setDefaultOptions(cloneDeepUnref(options))\n  }\n\n  setQueryDefaults<\n    TQueryFnData = unknown,\n    TError = DefaultError,\n    TData = TQueryFnData,\n    TQueryData = TQueryFnData,\n  >(\n    queryKey: MaybeRefDeep<QueryKey>,\n    options: MaybeRefDeep<\n      Omit<UseQueryOptions<TQueryFnData, TError, TData, TQueryData>, 'queryKey'>\n    >,\n  ): void {\n    super.setQueryDefaults(cloneDeepUnref(queryKey), cloneDeepUnref(options))\n  }\n\n  getQueryDefaults(\n    queryKey: MaybeRefDeep<QueryKey>,\n  ): OmitKeyof<QueryObserverOptions<any, any, any, any, any>, 'queryKey'> {\n    return super.getQueryDefaults(cloneDeepUnref(queryKey))\n  }\n\n  setMutationDefaults<\n    TData = unknown,\n    TError = DefaultError,\n    TVariables = void,\n    TOnMutateResult = unknown,\n  >(\n    mutationKey: MaybeRefDeep<MutationKey>,\n    options: MaybeRefDeep<\n      MutationObserverOptions<TData, TError, TVariables, TOnMutateResult>\n    >,\n  ): void {\n    super.setMutationDefaults(\n      cloneDeepUnref(mutationKey),\n      cloneDeepUnref(options),\n    )\n  }\n\n  getMutationDefaults(\n    mutationKey: MaybeRefDeep<MutationKey>,\n  ): MutationObserverOptions<any, any, any, any> {\n    return super.getMutationDefaults(cloneDeepUnref(mutationKey))\n  }\n}\n"],"mappings":"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","names":["QC"]}