@tanstack/solid-query 5.0.0-alpha.1 → 5.0.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/setBatchUpdatesFn.ts","../../src/QueryClientProvider.tsx","../../src/utils.ts","../../src/createBaseQuery.ts","../../src/createQuery.ts","../../src/useIsFetching.ts","../../src/createInfiniteQuery.ts","../../src/createMutation.ts","../../src/useIsMutating.ts","../../src/createQueries.ts"],"sourcesContent":["import { notifyManager } from '@tanstack/query-core'\nimport { batch } from 'solid-js'\n\nnotifyManager.setBatchNotifyFunction(batch)\n","import type { QueryClient } from '@tanstack/query-core'\nimport type { JSX } from 'solid-js'\nimport { createContext, useContext, onMount, onCleanup } from 'solid-js'\n\nexport const QueryClientContext = createContext<QueryClient | undefined>(\n undefined,\n)\n\nexport const useQueryClient = (queryClient?: QueryClient) => {\n const client = useContext(QueryClientContext)\n\n if (queryClient) {\n return queryClient\n }\n\n if (!client) {\n throw new Error('No QueryClient set, use QueryClientProvider to set one')\n }\n\n return client\n}\n\nexport type QueryClientProviderProps = {\n client: QueryClient\n children?: JSX.Element\n}\n\nexport const QueryClientProvider = (\n props: QueryClientProviderProps,\n): JSX.Element => {\n onMount(() => {\n props.client.mount()\n })\n onCleanup(() => props.client.unmount())\n\n return (\n <QueryClientContext.Provider value={props.client}>\n {props.children}\n </QueryClientContext.Provider>\n )\n}\n","export function shouldThrowError<T extends (...args: any[]) => boolean>(\n throwError: boolean | T | undefined,\n params: Parameters<T>,\n): boolean {\n // Allow throwError function to override throwing behavior on a per-error basis\n if (typeof throwError === 'function') {\n return throwError(...params)\n }\n\n return !!throwError\n}\n","/* eslint-disable @typescript-eslint/no-unnecessary-condition */\n// Had to disable the lint rule because isServer type is defined as false\n// in solid-js/web package. I'll create a GitHub issue with them to see\n// why that happens.\nimport type {\n QueryClient,\n QueryKey,\n QueryObserver,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport { hydrate } from '@tanstack/query-core'\nimport { notifyManager } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { isServer } from 'solid-js/web'\nimport {\n createComputed,\n createMemo,\n createResource,\n on,\n onCleanup,\n onMount,\n} from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateBaseQueryOptions } from './types'\nimport { shouldThrowError } from './utils'\n\n// Base Query Function that is used to create the query.\nexport function createBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n>(\n options: Accessor<\n CreateBaseQueryOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >,\n Observer: typeof QueryObserver,\n queryClient?: () => QueryClient,\n) {\n const client = createMemo(() => useQueryClient(queryClient?.()))\n\n const defaultedOptions = client().defaultQueryOptions(options())\n defaultedOptions._optimisticResults = 'optimistic'\n if (isServer) {\n defaultedOptions.retry = false\n defaultedOptions.throwErrors = true\n }\n const observer = new Observer(client(), defaultedOptions)\n\n const [state, setState] = createStore<QueryObserverResult<TData, TError>>(\n observer.getOptimisticResult(defaultedOptions),\n )\n\n const createServerSubscriber = (\n resolve: (\n data:\n | QueryObserverResult<TData, TError>\n | PromiseLike<QueryObserverResult<TData, TError> | undefined>\n | undefined,\n ) => void,\n reject: (reason?: any) => void,\n ) => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n if (unwrappedResult.isError) {\n if (process.env['NODE_ENV'] === 'development') {\n console.error(unwrappedResult.error)\n }\n reject(unwrappedResult.error)\n }\n if (unwrappedResult.isSuccess) {\n resolve(unwrappedResult)\n }\n })()\n })\n }\n\n const createClientSubscriber = () => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n // If the query has data we dont suspend but instead mutate the resource\n // This could happen when placeholderData/initialData is defined\n if (\n queryResource()?.data &&\n unwrappedResult.data &&\n !queryResource.loading\n ) {\n setState(unwrappedResult)\n mutate(state)\n } else {\n setState(unwrappedResult)\n refetch()\n }\n })()\n })\n }\n\n /**\n * Unsubscribe is set lazily, so that we can subscribe after hydration when needed.\n */\n let unsubscribe: (() => void) | null = null\n\n const [queryResource, { refetch, mutate }] = createResource<\n QueryObserverResult<TData, TError> | undefined\n >(\n () => {\n return new Promise((resolve, reject) => {\n if (isServer) {\n unsubscribe = createServerSubscriber(resolve, reject)\n } else {\n if (!unsubscribe) {\n unsubscribe = createClientSubscriber()\n }\n }\n if (!state.isLoading) {\n resolve(state)\n }\n })\n },\n {\n initialValue: state,\n\n // If initialData is provided, we resolve the resource immediately\n ssrLoadFrom: options().initialData ? 'initial' : 'server',\n\n get deferStream() {\n return options().deferStream\n },\n\n /**\n * If this resource was populated on the server (either sync render, or streamed in over time), onHydrated\n * will be called. This is the point at which we can hydrate the query cache state, and setup the query subscriber.\n *\n * Leveraging onHydrated allows us to plug into the async and streaming support that solidjs resources already support.\n *\n * Note that this is only invoked on the client, for queries that were originally run on the server.\n */\n onHydrated(_k, info) {\n if (info.value) {\n hydrate(client(), {\n queries: [\n {\n queryKey: defaultedOptions.queryKey,\n queryHash: defaultedOptions.queryHash,\n state: info.value,\n },\n ],\n })\n }\n\n if (!unsubscribe) {\n /**\n * Do not refetch query on mount if query was fetched on server,\n * even if `staleTime` is not set.\n */\n const newOptions = { ...defaultedOptions }\n if (defaultedOptions.staleTime || !defaultedOptions.initialData) {\n newOptions.refetchOnMount = false\n }\n // Setting the options as an immutable object to prevent\n // wonky behavior with observer subscriptions\n observer.setOptions(newOptions)\n setState(observer.getOptimisticResult(newOptions))\n unsubscribe = createClientSubscriber()\n }\n },\n },\n )\n\n onCleanup(() => {\n if (unsubscribe) {\n unsubscribe()\n unsubscribe = null\n }\n })\n\n onMount(() => {\n observer.setOptions(defaultedOptions, { listeners: false })\n })\n\n createComputed(() => {\n observer.setOptions(client().defaultQueryOptions(options()))\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(observer.options.throwErrors, [\n state.error,\n observer.getCurrentQuery(),\n ])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const handler = {\n get(\n target: QueryObserverResult<TData, TError>,\n prop: keyof QueryObserverResult<TData, TError>,\n ): any {\n if (prop === 'data') {\n return queryResource()?.data\n }\n return Reflect.get(target, prop)\n },\n }\n\n return new Proxy(state, handler)\n}\n","import type {\n QueryClient,\n QueryKey,\n RegisteredError,\n} from '@tanstack/query-core'\nimport { QueryObserver } from '@tanstack/query-core'\nimport { createMemo } from 'solid-js'\nimport { createBaseQuery } from './createBaseQuery'\nimport type {\n CreateQueryOptions,\n CreateQueryResult,\n DefinedCreateQueryResult,\n FunctionedParams,\n SolidQueryOptions,\n} from './types'\n\ntype UndefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData?: undefined\n }\n>\n\ntype DefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData: TQueryFnData | (() => TQueryFnData)\n }\n>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): CreateQueryResult<TData, TError>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): DefinedCreateQueryResult<TData, TError>\nexport function createQuery<\n TQueryFnData,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: CreateQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n) {\n return createBaseQuery(\n createMemo(() => options()),\n QueryObserver,\n queryClient,\n )\n}\n","import type { QueryClient, QueryFilters } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { createMemo, createSignal, onCleanup } from 'solid-js'\nimport { useQueryClient } from './QueryClientProvider'\n\ntype Options = () => {\n filters?: QueryFilters\n queryClient?: QueryClient\n}\n\nexport function useIsFetching(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const queryCache = createMemo(() => queryClient().getQueryCache())\n\n const [fetches, setFetches] = createSignal(\n queryClient().isFetching(options().filters),\n )\n\n const unsubscribe = queryCache().subscribe(() => {\n setFetches(queryClient().isFetching(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return fetches\n}\n","import type {\n QueryObserver,\n QueryKey,\n QueryClient,\n RegisteredError,\n InfiniteData,\n} from '@tanstack/query-core'\nimport { InfiniteQueryObserver } from '@tanstack/query-core'\nimport type {\n CreateInfiniteQueryOptions,\n CreateInfiniteQueryResult,\n} from './types'\nimport { createBaseQuery } from './createBaseQuery'\nimport { createMemo } from 'solid-js'\n\nexport function createInfiniteQuery<\n TQueryFnData,\n TError = RegisteredError,\n TData = InfiniteData<TQueryFnData>,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n>(\n options: CreateInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: () => QueryClient,\n): CreateInfiniteQueryResult<TData, TError> {\n return createBaseQuery(\n createMemo(() => options()),\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n InfiniteQueryObserver as typeof QueryObserver,\n queryClient,\n ) as CreateInfiniteQueryResult<TData, TError>\n}\n","import type { QueryClient, RegisteredError } from '@tanstack/query-core'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type {\n CreateMutateFunction,\n CreateMutationOptions,\n CreateMutationResult,\n} from './types'\nimport { createComputed, onCleanup, on } from 'solid-js'\nimport { createStore } from 'solid-js/store'\nimport { shouldThrowError } from './utils'\n\n// HOOK\nexport function createMutation<\n TData = unknown,\n TError = RegisteredError,\n TVariables = void,\n TContext = unknown,\n>(\n options: CreateMutationOptions<TData, TError, TVariables, TContext>,\n queryClient?: () => QueryClient,\n): CreateMutationResult<TData, TError, TVariables, TContext> {\n const client = useQueryClient(queryClient?.())\n\n const observer = new MutationObserver<TData, TError, TVariables, TContext>(\n client,\n options(),\n )\n\n const mutate: CreateMutateFunction<TData, TError, TVariables, TContext> = (\n variables,\n mutateOptions,\n ) => {\n observer.mutate(variables, mutateOptions).catch(noop)\n }\n\n const [state, setState] = createStore<\n CreateMutationResult<TData, TError, TVariables, TContext>\n >({\n ...observer.getCurrentResult(),\n mutate,\n mutateAsync: observer.getCurrentResult().mutate,\n })\n\n createComputed(() => {\n observer.setOptions(options())\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n shouldThrowError(observer.options.throwErrors, [state.error])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n setState({\n ...result,\n mutate,\n mutateAsync: result.mutate,\n })\n })\n\n onCleanup(unsubscribe)\n\n return state\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nfunction noop() {}\n","import type { MutationFilters, QueryClient } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { Accessor } from 'solid-js'\nimport { createSignal, onCleanup, createMemo } from 'solid-js'\n\ntype Options = () => {\n filters?: MutationFilters\n queryClient?: QueryClient\n}\n\nexport function useIsMutating(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const mutationCache = createMemo(() => queryClient().getMutationCache())\n\n const [mutations, setMutations] = createSignal(\n queryClient().isMutating(options().filters),\n )\n\n const unsubscribe = mutationCache().subscribe((_result) => {\n setMutations(queryClient().isMutating(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return mutations\n}\n","import type {\n QueriesPlaceholderDataFunction,\n QueryClient,\n QueryFunction,\n QueryKey,\n RegisteredError,\n} from '@tanstack/query-core'\nimport { notifyManager, QueriesObserver } from '@tanstack/query-core'\nimport { createComputed, onCleanup, onMount } from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateQueryResult, SolidQueryOptions } from './types'\n\n// This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.\n// `placeholderData` function does not have a parameter\ntype CreateQueryOptionsForCreateQueries<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = Omit<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'placeholderData'\n> & {\n placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>\n}\n\n// Avoid TS depth-limit error in case of large array literal\ntype MAXIMUM_DEPTH = 20\n\ntype GetOptions<T> =\n // Part 1: responsible for applying explicit type parameter to function arguments, if object { queryFnData: TQueryFnData, error: TError, data: TData }\n T extends {\n queryFnData: infer TQueryFnData\n error?: infer TError\n data: infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<unknown, TError, TData>\n : // Part 2: responsible for applying explicit type parameter to function arguments, if tuple [TQueryFnData, TError, TData]\n T extends [infer TQueryFnData, infer TError, infer TData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData>\n : // Part 3: responsible for inferring and enforcing type if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>\n select: (data: any) => infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, Error, TData, TQueryKey>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> }\n ? CreateQueryOptionsForCreateQueries<\n TQueryFnData,\n Error,\n TQueryFnData,\n TQueryKey\n >\n : // Fallback\n CreateQueryOptionsForCreateQueries\n\ntype GetResults<T> =\n // Part 1: responsible for mapping explicit type parameter to function result, if object\n T extends { queryFnData: any; error?: infer TError; data: infer TData }\n ? CreateQueryResult<TData, TError>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryResult<TData, TError>\n : // Part 2: responsible for mapping explicit type parameter to function result, if tuple\n T extends [any, infer TError, infer TData]\n ? CreateQueryResult<TData, TError>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryResult<TQueryFnData>\n : // Part 3: responsible for mapping inferred type to results, if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<unknown, any>\n select: (data: any) => infer TData\n }\n ? CreateQueryResult<TData>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, any> }\n ? CreateQueryResult<TQueryFnData>\n : // Fallback\n CreateQueryResult\n\n/**\n * QueriesOptions reducer recursively unwraps function arguments to infer/enforce type param\n */\nexport type QueriesOptions<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryOptionsForCreateQueries[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetOptions<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesOptions<[...Tail], [...Result, GetOptions<Head>], [...Depth, 1]>\n : unknown[] extends T\n ? T\n : // If T is *some* array but we couldn't assign unknown[] to it, then it must hold some known/homogenous type!\n // use this to infer the param types in the case of Array.map() argument\n T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n infer TQueryKey\n >[]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData, TQueryKey>[]\n : // Fallback\n CreateQueryOptionsForCreateQueries[]\n\n/**\n * QueriesResults reducer recursively maps type param to results\n */\nexport type QueriesResults<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryResult[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetResults<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]>\n : T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n any\n >[]\n ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results\n CreateQueryResult<\n unknown extends TData ? TQueryFnData : TData,\n unknown extends TError ? RegisteredError : TError\n >[]\n : // Fallback\n CreateQueryResult[]\n\nexport function createQueries<T extends any[]>(\n queriesOptions: () => {\n queries: readonly [...QueriesOptions<T>]\n queryClient?: QueryClient\n },\n): QueriesResults<T> {\n const queryClient = useQueryClient(queriesOptions().queryClient)\n\n const defaultedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n\n const observer = new QueriesObserver(queryClient, defaultedQueries)\n\n const [state, setState] = createStore(\n observer.getOptimisticResult(defaultedQueries),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n setState(unwrap(result))\n })()\n })\n\n onCleanup(unsubscribe)\n\n onMount(() => {\n observer.setQueries(defaultedQueries, { listeners: false })\n })\n\n createComputed(() => {\n const updatedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n observer.setQueries(updatedQueries)\n })\n\n return state as QueriesResults<T>\n}\n"],"names":["notifyManager","setBatchNotifyFunction","batch","QueryClientContext","createContext","undefined","useQueryClient","queryClient","client","useContext","Error","QueryClientProvider","props","onMount","mount","onCleanup","unmount","_$createComponent","children","shouldThrowError","throwError","params","createBaseQuery","options","Observer","createMemo","defaultedOptions","defaultQueryOptions","_optimisticResults","isServer","retry","throwErrors","observer","state","setState","createStore","getOptimisticResult","createServerSubscriber","resolve","reject","subscribe","result","batchCalls","unwrappedResult","unwrap","isError","process","env","console","error","isSuccess","createClientSubscriber","queryResource","data","loading","mutate","refetch","unsubscribe","createResource","Promise","isLoading","initialValue","ssrLoadFrom","initialData","deferStream","onHydrated","_k","info","value","hydrate","queries","queryKey","queryHash","newOptions","staleTime","refetchOnMount","setOptions","listeners","createComputed","on","status","isFetching","getCurrentQuery","handler","get","target","prop","Reflect","Proxy","createQuery","QueryObserver","useIsFetching","queryCache","getQueryCache","fetches","setFetches","createSignal","filters","createInfiniteQuery","InfiniteQueryObserver","createMutation","MutationObserver","variables","mutateOptions","catch","noop","getCurrentResult","mutateAsync","useIsMutating","mutationCache","getMutationCache","mutations","setMutations","isMutating","_result","createQueries","queriesOptions","defaultedQueries","map","QueriesObserver","setQueries","updatedQueries"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/setBatchUpdatesFn.ts","../../src/QueryClientProvider.tsx","../../src/utils.ts","../../src/createBaseQuery.ts","../../src/createQuery.ts","../../src/useIsFetching.ts","../../src/createInfiniteQuery.ts","../../src/createMutation.ts","../../src/useIsMutating.ts","../../src/createQueries.ts"],"sourcesContent":["import { notifyManager } from '@tanstack/query-core'\nimport { batch } from 'solid-js'\n\nnotifyManager.setBatchNotifyFunction(batch)\n","import type { QueryClient } from '@tanstack/query-core'\nimport type { JSX } from 'solid-js'\nimport { createContext, useContext, onMount, onCleanup } from 'solid-js'\n\nexport const QueryClientContext = createContext<QueryClient | undefined>(\n undefined,\n)\n\nexport const useQueryClient = (queryClient?: QueryClient) => {\n const client = useContext(QueryClientContext)\n\n if (queryClient) {\n return queryClient\n }\n\n if (!client) {\n throw new Error('No QueryClient set, use QueryClientProvider to set one')\n }\n\n return client\n}\n\nexport type QueryClientProviderProps = {\n client: QueryClient\n children?: JSX.Element\n}\n\nexport const QueryClientProvider = (\n props: QueryClientProviderProps,\n): JSX.Element => {\n onMount(() => {\n props.client.mount()\n })\n onCleanup(() => props.client.unmount())\n\n return (\n <QueryClientContext.Provider value={props.client}>\n {props.children}\n </QueryClientContext.Provider>\n )\n}\n","export function shouldThrowError<T extends (...args: any[]) => boolean>(\n throwError: boolean | T | undefined,\n params: Parameters<T>,\n): boolean {\n // Allow throwError function to override throwing behavior on a per-error basis\n if (typeof throwError === 'function') {\n return throwError(...params)\n }\n\n return !!throwError\n}\n","/* eslint-disable @typescript-eslint/no-unnecessary-condition */\n// Had to disable the lint rule because isServer type is defined as false\n// in solid-js/web package. I'll create a GitHub issue with them to see\n// why that happens.\nimport type {\n QueryClient,\n QueryKey,\n QueryObserver,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport { hydrate } from '@tanstack/query-core'\nimport { notifyManager } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { isServer } from 'solid-js/web'\nimport {\n createComputed,\n createMemo,\n createResource,\n on,\n onCleanup,\n onMount,\n} from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateBaseQueryOptions } from './types'\nimport { shouldThrowError } from './utils'\n\n// Base Query Function that is used to create the query.\nexport function createBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n>(\n options: Accessor<\n CreateBaseQueryOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >,\n Observer: typeof QueryObserver,\n queryClient?: () => QueryClient,\n) {\n const client = createMemo(() => useQueryClient(queryClient?.()))\n\n const defaultedOptions = client().defaultQueryOptions(options())\n defaultedOptions._optimisticResults = 'optimistic'\n if (isServer) {\n defaultedOptions.retry = false\n defaultedOptions.throwErrors = true\n }\n const observer = new Observer(client(), defaultedOptions)\n\n const [state, setState] = createStore<QueryObserverResult<TData, TError>>(\n observer.getOptimisticResult(defaultedOptions),\n )\n\n const createServerSubscriber = (\n resolve: (\n data:\n | QueryObserverResult<TData, TError>\n | PromiseLike<QueryObserverResult<TData, TError> | undefined>\n | undefined,\n ) => void,\n reject: (reason?: any) => void,\n ) => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n if (unwrappedResult.isError) {\n if (process.env['NODE_ENV'] === 'development') {\n console.error(unwrappedResult.error)\n }\n reject(unwrappedResult.error)\n }\n if (unwrappedResult.isSuccess) {\n resolve(unwrappedResult)\n }\n })()\n })\n }\n\n const createClientSubscriber = () => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n // If the query has data we dont suspend but instead mutate the resource\n // This could happen when placeholderData/initialData is defined\n if (\n queryResource()?.data &&\n unwrappedResult.data &&\n !queryResource.loading\n ) {\n setState(unwrappedResult)\n mutate(state)\n } else {\n setState(unwrappedResult)\n refetch()\n }\n })()\n })\n }\n\n /**\n * Unsubscribe is set lazily, so that we can subscribe after hydration when needed.\n */\n let unsubscribe: (() => void) | null = null\n\n const [queryResource, { refetch, mutate }] = createResource<\n QueryObserverResult<TData, TError> | undefined\n >(\n () => {\n return new Promise((resolve, reject) => {\n if (isServer) {\n unsubscribe = createServerSubscriber(resolve, reject)\n } else {\n if (!unsubscribe) {\n unsubscribe = createClientSubscriber()\n }\n }\n if (!state.isLoading) {\n resolve(state)\n }\n })\n },\n {\n initialValue: state,\n\n // If initialData is provided, we resolve the resource immediately\n ssrLoadFrom: options().initialData ? 'initial' : 'server',\n\n get deferStream() {\n return options().deferStream\n },\n\n /**\n * If this resource was populated on the server (either sync render, or streamed in over time), onHydrated\n * will be called. This is the point at which we can hydrate the query cache state, and setup the query subscriber.\n *\n * Leveraging onHydrated allows us to plug into the async and streaming support that solidjs resources already support.\n *\n * Note that this is only invoked on the client, for queries that were originally run on the server.\n */\n onHydrated(_k, info) {\n if (info.value) {\n hydrate(client(), {\n queries: [\n {\n queryKey: defaultedOptions.queryKey,\n queryHash: defaultedOptions.queryHash,\n state: info.value,\n },\n ],\n })\n }\n\n if (!unsubscribe) {\n /**\n * Do not refetch query on mount if query was fetched on server,\n * even if `staleTime` is not set.\n */\n const newOptions = { ...defaultedOptions }\n if (defaultedOptions.staleTime || !defaultedOptions.initialData) {\n newOptions.refetchOnMount = false\n }\n // Setting the options as an immutable object to prevent\n // wonky behavior with observer subscriptions\n observer.setOptions(newOptions)\n setState(observer.getOptimisticResult(newOptions))\n unsubscribe = createClientSubscriber()\n }\n },\n },\n )\n\n onCleanup(() => {\n if (unsubscribe) {\n unsubscribe()\n unsubscribe = null\n }\n })\n\n onMount(() => {\n observer.setOptions(defaultedOptions, { listeners: false })\n })\n\n createComputed(() => {\n observer.setOptions(client().defaultQueryOptions(options()))\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(observer.options.throwErrors, [\n state.error,\n observer.getCurrentQuery(),\n ])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const handler = {\n get(\n target: QueryObserverResult<TData, TError>,\n prop: keyof QueryObserverResult<TData, TError>,\n ): any {\n if (prop === 'data') {\n return queryResource()?.data\n }\n return Reflect.get(target, prop)\n },\n }\n\n return new Proxy(state, handler)\n}\n","import type { QueryClient, QueryKey, DefaultError } from '@tanstack/query-core'\nimport { QueryObserver } from '@tanstack/query-core'\nimport { createMemo } from 'solid-js'\nimport { createBaseQuery } from './createBaseQuery'\nimport type {\n CreateQueryOptions,\n CreateQueryResult,\n DefinedCreateQueryResult,\n FunctionedParams,\n SolidQueryOptions,\n} from './types'\n\ntype UndefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData?: undefined\n }\n>\n\ntype DefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData: TQueryFnData | (() => TQueryFnData)\n }\n>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): CreateQueryResult<TData, TError>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): DefinedCreateQueryResult<TData, TError>\nexport function createQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: CreateQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n) {\n return createBaseQuery(\n createMemo(() => options()),\n QueryObserver,\n queryClient,\n )\n}\n","import type { QueryClient, QueryFilters } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { createMemo, createSignal, onCleanup } from 'solid-js'\nimport { useQueryClient } from './QueryClientProvider'\n\ntype Options = () => {\n filters?: QueryFilters\n queryClient?: QueryClient\n}\n\nexport function useIsFetching(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const queryCache = createMemo(() => queryClient().getQueryCache())\n\n const [fetches, setFetches] = createSignal(\n queryClient().isFetching(options().filters),\n )\n\n const unsubscribe = queryCache().subscribe(() => {\n setFetches(queryClient().isFetching(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return fetches\n}\n","import type {\n QueryObserver,\n QueryKey,\n QueryClient,\n DefaultError,\n InfiniteData,\n} from '@tanstack/query-core'\nimport { InfiniteQueryObserver } from '@tanstack/query-core'\nimport type {\n CreateInfiniteQueryOptions,\n CreateInfiniteQueryResult,\n} from './types'\nimport { createBaseQuery } from './createBaseQuery'\nimport { createMemo } from 'solid-js'\n\nexport function createInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = InfiniteData<TQueryFnData>,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n>(\n options: CreateInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: () => QueryClient,\n): CreateInfiniteQueryResult<TData, TError> {\n return createBaseQuery(\n createMemo(() => options()),\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n InfiniteQueryObserver as typeof QueryObserver,\n queryClient,\n ) as CreateInfiniteQueryResult<TData, TError>\n}\n","import type { QueryClient, DefaultError } from '@tanstack/query-core'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type {\n CreateMutateFunction,\n CreateMutationOptions,\n CreateMutationResult,\n} from './types'\nimport { createComputed, onCleanup, on } from 'solid-js'\nimport { createStore } from 'solid-js/store'\nimport { shouldThrowError } from './utils'\n\n// HOOK\nexport function createMutation<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n>(\n options: CreateMutationOptions<TData, TError, TVariables, TContext>,\n queryClient?: () => QueryClient,\n): CreateMutationResult<TData, TError, TVariables, TContext> {\n const client = useQueryClient(queryClient?.())\n\n const observer = new MutationObserver<TData, TError, TVariables, TContext>(\n client,\n options(),\n )\n\n const mutate: CreateMutateFunction<TData, TError, TVariables, TContext> = (\n variables,\n mutateOptions,\n ) => {\n observer.mutate(variables, mutateOptions).catch(noop)\n }\n\n const [state, setState] = createStore<\n CreateMutationResult<TData, TError, TVariables, TContext>\n >({\n ...observer.getCurrentResult(),\n mutate,\n mutateAsync: observer.getCurrentResult().mutate,\n })\n\n createComputed(() => {\n observer.setOptions(options())\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n shouldThrowError(observer.options.throwErrors, [state.error])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n setState({\n ...result,\n mutate,\n mutateAsync: result.mutate,\n })\n })\n\n onCleanup(unsubscribe)\n\n return state\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nfunction noop() {}\n","import type { MutationFilters, QueryClient } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { Accessor } from 'solid-js'\nimport { createSignal, onCleanup, createMemo } from 'solid-js'\n\ntype Options = () => {\n filters?: MutationFilters\n queryClient?: QueryClient\n}\n\nexport function useIsMutating(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const mutationCache = createMemo(() => queryClient().getMutationCache())\n\n const [mutations, setMutations] = createSignal(\n queryClient().isMutating(options().filters),\n )\n\n const unsubscribe = mutationCache().subscribe((_result) => {\n setMutations(queryClient().isMutating(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return mutations\n}\n","import type {\n QueriesPlaceholderDataFunction,\n QueryClient,\n QueryFunction,\n QueryKey,\n DefaultError,\n} from '@tanstack/query-core'\nimport { notifyManager, QueriesObserver } from '@tanstack/query-core'\nimport { createComputed, onCleanup, onMount } from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateQueryResult, SolidQueryOptions } from './types'\n\n// This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.\n// `placeholderData` function does not have a parameter\ntype CreateQueryOptionsForCreateQueries<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = Omit<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'placeholderData'\n> & {\n placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>\n}\n\n// Avoid TS depth-limit error in case of large array literal\ntype MAXIMUM_DEPTH = 20\n\ntype GetOptions<T> =\n // Part 1: responsible for applying explicit type parameter to function arguments, if object { queryFnData: TQueryFnData, error: TError, data: TData }\n T extends {\n queryFnData: infer TQueryFnData\n error?: infer TError\n data: infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<unknown, TError, TData>\n : // Part 2: responsible for applying explicit type parameter to function arguments, if tuple [TQueryFnData, TError, TData]\n T extends [infer TQueryFnData, infer TError, infer TData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData>\n : // Part 3: responsible for inferring and enforcing type if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>\n select: (data: any) => infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, Error, TData, TQueryKey>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> }\n ? CreateQueryOptionsForCreateQueries<\n TQueryFnData,\n Error,\n TQueryFnData,\n TQueryKey\n >\n : // Fallback\n CreateQueryOptionsForCreateQueries\n\ntype GetResults<T> =\n // Part 1: responsible for mapping explicit type parameter to function result, if object\n T extends { queryFnData: any; error?: infer TError; data: infer TData }\n ? CreateQueryResult<TData, TError>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryResult<TData, TError>\n : // Part 2: responsible for mapping explicit type parameter to function result, if tuple\n T extends [any, infer TError, infer TData]\n ? CreateQueryResult<TData, TError>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryResult<TQueryFnData>\n : // Part 3: responsible for mapping inferred type to results, if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<unknown, any>\n select: (data: any) => infer TData\n }\n ? CreateQueryResult<TData>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, any> }\n ? CreateQueryResult<TQueryFnData>\n : // Fallback\n CreateQueryResult\n\n/**\n * QueriesOptions reducer recursively unwraps function arguments to infer/enforce type param\n */\nexport type QueriesOptions<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryOptionsForCreateQueries[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetOptions<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesOptions<[...Tail], [...Result, GetOptions<Head>], [...Depth, 1]>\n : unknown[] extends T\n ? T\n : // If T is *some* array but we couldn't assign unknown[] to it, then it must hold some known/homogenous type!\n // use this to infer the param types in the case of Array.map() argument\n T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n infer TQueryKey\n >[]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData, TQueryKey>[]\n : // Fallback\n CreateQueryOptionsForCreateQueries[]\n\n/**\n * QueriesResults reducer recursively maps type param to results\n */\nexport type QueriesResults<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryResult[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetResults<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]>\n : T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n any\n >[]\n ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results\n CreateQueryResult<\n unknown extends TData ? TQueryFnData : TData,\n unknown extends TError ? DefaultError : TError\n >[]\n : // Fallback\n CreateQueryResult[]\n\nexport function createQueries<T extends any[]>(\n queriesOptions: () => {\n queries: readonly [...QueriesOptions<T>]\n queryClient?: QueryClient\n },\n): QueriesResults<T> {\n const queryClient = useQueryClient(queriesOptions().queryClient)\n\n const defaultedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n\n const observer = new QueriesObserver(queryClient, defaultedQueries)\n\n const [state, setState] = createStore(\n observer.getOptimisticResult(defaultedQueries),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n setState(unwrap(result))\n })()\n })\n\n onCleanup(unsubscribe)\n\n onMount(() => {\n observer.setQueries(defaultedQueries, { listeners: false })\n })\n\n createComputed(() => {\n const updatedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n observer.setQueries(updatedQueries)\n })\n\n return state as QueriesResults<T>\n}\n"],"names":["notifyManager","setBatchNotifyFunction","batch","QueryClientContext","createContext","undefined","useQueryClient","queryClient","client","useContext","Error","QueryClientProvider","props","onMount","mount","onCleanup","unmount","_$createComponent","children","shouldThrowError","throwError","params","createBaseQuery","options","Observer","createMemo","defaultedOptions","defaultQueryOptions","_optimisticResults","isServer","retry","throwErrors","observer","state","setState","createStore","getOptimisticResult","createServerSubscriber","resolve","reject","subscribe","result","batchCalls","unwrappedResult","unwrap","isError","process","env","console","error","isSuccess","createClientSubscriber","queryResource","data","loading","mutate","refetch","unsubscribe","createResource","Promise","isLoading","initialValue","ssrLoadFrom","initialData","deferStream","onHydrated","_k","info","value","hydrate","queries","queryKey","queryHash","newOptions","staleTime","refetchOnMount","setOptions","listeners","createComputed","on","status","isFetching","getCurrentQuery","handler","get","target","prop","Reflect","Proxy","createQuery","QueryObserver","useIsFetching","queryCache","getQueryCache","fetches","setFetches","createSignal","filters","createInfiniteQuery","InfiniteQueryObserver","createMutation","MutationObserver","variables","mutateOptions","catch","noop","getCurrentResult","mutateAsync","useIsMutating","mutationCache","getMutationCache","mutations","setMutations","isMutating","_result","createQueries","queriesOptions","defaultedQueries","map","QueriesObserver","setQueries","updatedQueries"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/setBatchUpdatesFn.ts","../../src/QueryClientProvider.tsx","../../src/utils.ts","../../src/createBaseQuery.ts","../../src/createQuery.ts","../../src/useIsFetching.ts","../../src/createInfiniteQuery.ts","../../src/createMutation.ts","../../src/useIsMutating.ts","../../src/createQueries.ts"],"sourcesContent":["import { notifyManager } from '@tanstack/query-core'\nimport { batch } from 'solid-js'\n\nnotifyManager.setBatchNotifyFunction(batch)\n","import type { QueryClient } from '@tanstack/query-core'\nimport type { JSX } from 'solid-js'\nimport { createContext, useContext, onMount, onCleanup } from 'solid-js'\n\nexport const QueryClientContext = createContext<QueryClient | undefined>(\n undefined,\n)\n\nexport const useQueryClient = (queryClient?: QueryClient) => {\n const client = useContext(QueryClientContext)\n\n if (queryClient) {\n return queryClient\n }\n\n if (!client) {\n throw new Error('No QueryClient set, use QueryClientProvider to set one')\n }\n\n return client\n}\n\nexport type QueryClientProviderProps = {\n client: QueryClient\n children?: JSX.Element\n}\n\nexport const QueryClientProvider = (\n props: QueryClientProviderProps,\n): JSX.Element => {\n onMount(() => {\n props.client.mount()\n })\n onCleanup(() => props.client.unmount())\n\n return (\n <QueryClientContext.Provider value={props.client}>\n {props.children}\n </QueryClientContext.Provider>\n )\n}\n","export function shouldThrowError<T extends (...args: any[]) => boolean>(\n throwError: boolean | T | undefined,\n params: Parameters<T>,\n): boolean {\n // Allow throwError function to override throwing behavior on a per-error basis\n if (typeof throwError === 'function') {\n return throwError(...params)\n }\n\n return !!throwError\n}\n","/* eslint-disable @typescript-eslint/no-unnecessary-condition */\n// Had to disable the lint rule because isServer type is defined as false\n// in solid-js/web package. I'll create a GitHub issue with them to see\n// why that happens.\nimport type {\n QueryClient,\n QueryKey,\n QueryObserver,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport { hydrate } from '@tanstack/query-core'\nimport { notifyManager } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { isServer } from 'solid-js/web'\nimport {\n createComputed,\n createMemo,\n createResource,\n on,\n onCleanup,\n onMount,\n} from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateBaseQueryOptions } from './types'\nimport { shouldThrowError } from './utils'\n\n// Base Query Function that is used to create the query.\nexport function createBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n>(\n options: Accessor<\n CreateBaseQueryOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >,\n Observer: typeof QueryObserver,\n queryClient?: () => QueryClient,\n) {\n const client = createMemo(() => useQueryClient(queryClient?.()))\n\n const defaultedOptions = client().defaultQueryOptions(options())\n defaultedOptions._optimisticResults = 'optimistic'\n if (isServer) {\n defaultedOptions.retry = false\n defaultedOptions.throwErrors = true\n }\n const observer = new Observer(client(), defaultedOptions)\n\n const [state, setState] = createStore<QueryObserverResult<TData, TError>>(\n observer.getOptimisticResult(defaultedOptions),\n )\n\n const createServerSubscriber = (\n resolve: (\n data:\n | QueryObserverResult<TData, TError>\n | PromiseLike<QueryObserverResult<TData, TError> | undefined>\n | undefined,\n ) => void,\n reject: (reason?: any) => void,\n ) => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n if (unwrappedResult.isError) {\n if (process.env['NODE_ENV'] === 'development') {\n console.error(unwrappedResult.error)\n }\n reject(unwrappedResult.error)\n }\n if (unwrappedResult.isSuccess) {\n resolve(unwrappedResult)\n }\n })()\n })\n }\n\n const createClientSubscriber = () => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n // If the query has data we dont suspend but instead mutate the resource\n // This could happen when placeholderData/initialData is defined\n if (\n queryResource()?.data &&\n unwrappedResult.data &&\n !queryResource.loading\n ) {\n setState(unwrappedResult)\n mutate(state)\n } else {\n setState(unwrappedResult)\n refetch()\n }\n })()\n })\n }\n\n /**\n * Unsubscribe is set lazily, so that we can subscribe after hydration when needed.\n */\n let unsubscribe: (() => void) | null = null\n\n const [queryResource, { refetch, mutate }] = createResource<\n QueryObserverResult<TData, TError> | undefined\n >(\n () => {\n return new Promise((resolve, reject) => {\n if (isServer) {\n unsubscribe = createServerSubscriber(resolve, reject)\n } else {\n if (!unsubscribe) {\n unsubscribe = createClientSubscriber()\n }\n }\n if (!state.isLoading) {\n resolve(state)\n }\n })\n },\n {\n initialValue: state,\n\n // If initialData is provided, we resolve the resource immediately\n ssrLoadFrom: options().initialData ? 'initial' : 'server',\n\n get deferStream() {\n return options().deferStream\n },\n\n /**\n * If this resource was populated on the server (either sync render, or streamed in over time), onHydrated\n * will be called. This is the point at which we can hydrate the query cache state, and setup the query subscriber.\n *\n * Leveraging onHydrated allows us to plug into the async and streaming support that solidjs resources already support.\n *\n * Note that this is only invoked on the client, for queries that were originally run on the server.\n */\n onHydrated(_k, info) {\n if (info.value) {\n hydrate(client(), {\n queries: [\n {\n queryKey: defaultedOptions.queryKey,\n queryHash: defaultedOptions.queryHash,\n state: info.value,\n },\n ],\n })\n }\n\n if (!unsubscribe) {\n /**\n * Do not refetch query on mount if query was fetched on server,\n * even if `staleTime` is not set.\n */\n const newOptions = { ...defaultedOptions }\n if (defaultedOptions.staleTime || !defaultedOptions.initialData) {\n newOptions.refetchOnMount = false\n }\n // Setting the options as an immutable object to prevent\n // wonky behavior with observer subscriptions\n observer.setOptions(newOptions)\n setState(observer.getOptimisticResult(newOptions))\n unsubscribe = createClientSubscriber()\n }\n },\n },\n )\n\n onCleanup(() => {\n if (unsubscribe) {\n unsubscribe()\n unsubscribe = null\n }\n })\n\n onMount(() => {\n observer.setOptions(defaultedOptions, { listeners: false })\n })\n\n createComputed(() => {\n observer.setOptions(client().defaultQueryOptions(options()))\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(observer.options.throwErrors, [\n state.error,\n observer.getCurrentQuery(),\n ])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const handler = {\n get(\n target: QueryObserverResult<TData, TError>,\n prop: keyof QueryObserverResult<TData, TError>,\n ): any {\n if (prop === 'data') {\n return queryResource()?.data\n }\n return Reflect.get(target, prop)\n },\n }\n\n return new Proxy(state, handler)\n}\n","import type {\n QueryClient,\n QueryKey,\n RegisteredError,\n} from '@tanstack/query-core'\nimport { QueryObserver } from '@tanstack/query-core'\nimport { createMemo } from 'solid-js'\nimport { createBaseQuery } from './createBaseQuery'\nimport type {\n CreateQueryOptions,\n CreateQueryResult,\n DefinedCreateQueryResult,\n FunctionedParams,\n SolidQueryOptions,\n} from './types'\n\ntype UndefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData?: undefined\n }\n>\n\ntype DefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData: TQueryFnData | (() => TQueryFnData)\n }\n>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): CreateQueryResult<TData, TError>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): DefinedCreateQueryResult<TData, TError>\nexport function createQuery<\n TQueryFnData,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: CreateQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n) {\n return createBaseQuery(\n createMemo(() => options()),\n QueryObserver,\n queryClient,\n )\n}\n","import type { QueryClient, QueryFilters } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { createMemo, createSignal, onCleanup } from 'solid-js'\nimport { useQueryClient } from './QueryClientProvider'\n\ntype Options = () => {\n filters?: QueryFilters\n queryClient?: QueryClient\n}\n\nexport function useIsFetching(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const queryCache = createMemo(() => queryClient().getQueryCache())\n\n const [fetches, setFetches] = createSignal(\n queryClient().isFetching(options().filters),\n )\n\n const unsubscribe = queryCache().subscribe(() => {\n setFetches(queryClient().isFetching(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return fetches\n}\n","import type {\n QueryObserver,\n QueryKey,\n QueryClient,\n RegisteredError,\n InfiniteData,\n} from '@tanstack/query-core'\nimport { InfiniteQueryObserver } from '@tanstack/query-core'\nimport type {\n CreateInfiniteQueryOptions,\n CreateInfiniteQueryResult,\n} from './types'\nimport { createBaseQuery } from './createBaseQuery'\nimport { createMemo } from 'solid-js'\n\nexport function createInfiniteQuery<\n TQueryFnData,\n TError = RegisteredError,\n TData = InfiniteData<TQueryFnData>,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n>(\n options: CreateInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: () => QueryClient,\n): CreateInfiniteQueryResult<TData, TError> {\n return createBaseQuery(\n createMemo(() => options()),\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n InfiniteQueryObserver as typeof QueryObserver,\n queryClient,\n ) as CreateInfiniteQueryResult<TData, TError>\n}\n","import type { QueryClient, RegisteredError } from '@tanstack/query-core'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type {\n CreateMutateFunction,\n CreateMutationOptions,\n CreateMutationResult,\n} from './types'\nimport { createComputed, onCleanup, on } from 'solid-js'\nimport { createStore } from 'solid-js/store'\nimport { shouldThrowError } from './utils'\n\n// HOOK\nexport function createMutation<\n TData = unknown,\n TError = RegisteredError,\n TVariables = void,\n TContext = unknown,\n>(\n options: CreateMutationOptions<TData, TError, TVariables, TContext>,\n queryClient?: () => QueryClient,\n): CreateMutationResult<TData, TError, TVariables, TContext> {\n const client = useQueryClient(queryClient?.())\n\n const observer = new MutationObserver<TData, TError, TVariables, TContext>(\n client,\n options(),\n )\n\n const mutate: CreateMutateFunction<TData, TError, TVariables, TContext> = (\n variables,\n mutateOptions,\n ) => {\n observer.mutate(variables, mutateOptions).catch(noop)\n }\n\n const [state, setState] = createStore<\n CreateMutationResult<TData, TError, TVariables, TContext>\n >({\n ...observer.getCurrentResult(),\n mutate,\n mutateAsync: observer.getCurrentResult().mutate,\n })\n\n createComputed(() => {\n observer.setOptions(options())\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n shouldThrowError(observer.options.throwErrors, [state.error])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n setState({\n ...result,\n mutate,\n mutateAsync: result.mutate,\n })\n })\n\n onCleanup(unsubscribe)\n\n return state\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nfunction noop() {}\n","import type { MutationFilters, QueryClient } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { Accessor } from 'solid-js'\nimport { createSignal, onCleanup, createMemo } from 'solid-js'\n\ntype Options = () => {\n filters?: MutationFilters\n queryClient?: QueryClient\n}\n\nexport function useIsMutating(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const mutationCache = createMemo(() => queryClient().getMutationCache())\n\n const [mutations, setMutations] = createSignal(\n queryClient().isMutating(options().filters),\n )\n\n const unsubscribe = mutationCache().subscribe((_result) => {\n setMutations(queryClient().isMutating(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return mutations\n}\n","import type {\n QueriesPlaceholderDataFunction,\n QueryClient,\n QueryFunction,\n QueryKey,\n RegisteredError,\n} from '@tanstack/query-core'\nimport { notifyManager, QueriesObserver } from '@tanstack/query-core'\nimport { createComputed, onCleanup, onMount } from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateQueryResult, SolidQueryOptions } from './types'\n\n// This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.\n// `placeholderData` function does not have a parameter\ntype CreateQueryOptionsForCreateQueries<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = Omit<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'placeholderData'\n> & {\n placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>\n}\n\n// Avoid TS depth-limit error in case of large array literal\ntype MAXIMUM_DEPTH = 20\n\ntype GetOptions<T> =\n // Part 1: responsible for applying explicit type parameter to function arguments, if object { queryFnData: TQueryFnData, error: TError, data: TData }\n T extends {\n queryFnData: infer TQueryFnData\n error?: infer TError\n data: infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<unknown, TError, TData>\n : // Part 2: responsible for applying explicit type parameter to function arguments, if tuple [TQueryFnData, TError, TData]\n T extends [infer TQueryFnData, infer TError, infer TData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData>\n : // Part 3: responsible for inferring and enforcing type if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>\n select: (data: any) => infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, Error, TData, TQueryKey>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> }\n ? CreateQueryOptionsForCreateQueries<\n TQueryFnData,\n Error,\n TQueryFnData,\n TQueryKey\n >\n : // Fallback\n CreateQueryOptionsForCreateQueries\n\ntype GetResults<T> =\n // Part 1: responsible for mapping explicit type parameter to function result, if object\n T extends { queryFnData: any; error?: infer TError; data: infer TData }\n ? CreateQueryResult<TData, TError>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryResult<TData, TError>\n : // Part 2: responsible for mapping explicit type parameter to function result, if tuple\n T extends [any, infer TError, infer TData]\n ? CreateQueryResult<TData, TError>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryResult<TQueryFnData>\n : // Part 3: responsible for mapping inferred type to results, if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<unknown, any>\n select: (data: any) => infer TData\n }\n ? CreateQueryResult<TData>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, any> }\n ? CreateQueryResult<TQueryFnData>\n : // Fallback\n CreateQueryResult\n\n/**\n * QueriesOptions reducer recursively unwraps function arguments to infer/enforce type param\n */\nexport type QueriesOptions<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryOptionsForCreateQueries[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetOptions<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesOptions<[...Tail], [...Result, GetOptions<Head>], [...Depth, 1]>\n : unknown[] extends T\n ? T\n : // If T is *some* array but we couldn't assign unknown[] to it, then it must hold some known/homogenous type!\n // use this to infer the param types in the case of Array.map() argument\n T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n infer TQueryKey\n >[]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData, TQueryKey>[]\n : // Fallback\n CreateQueryOptionsForCreateQueries[]\n\n/**\n * QueriesResults reducer recursively maps type param to results\n */\nexport type QueriesResults<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryResult[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetResults<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]>\n : T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n any\n >[]\n ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results\n CreateQueryResult<\n unknown extends TData ? TQueryFnData : TData,\n unknown extends TError ? RegisteredError : TError\n >[]\n : // Fallback\n CreateQueryResult[]\n\nexport function createQueries<T extends any[]>(\n queriesOptions: () => {\n queries: readonly [...QueriesOptions<T>]\n queryClient?: QueryClient\n },\n): QueriesResults<T> {\n const queryClient = useQueryClient(queriesOptions().queryClient)\n\n const defaultedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n\n const observer = new QueriesObserver(queryClient, defaultedQueries)\n\n const [state, setState] = createStore(\n observer.getOptimisticResult(defaultedQueries),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n setState(unwrap(result))\n })()\n })\n\n onCleanup(unsubscribe)\n\n onMount(() => {\n observer.setQueries(defaultedQueries, { listeners: false })\n })\n\n createComputed(() => {\n const updatedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n observer.setQueries(updatedQueries)\n })\n\n return state as QueriesResults<T>\n}\n"],"names":["notifyManager","setBatchNotifyFunction","batch","QueryClientContext","createContext","undefined","useQueryClient","queryClient","client","useContext","Error","QueryClientProvider","props","onMount","mount","onCleanup","unmount","_$createComponent","children","shouldThrowError","throwError","params","createBaseQuery","options","Observer","createMemo","defaultedOptions","defaultQueryOptions","_optimisticResults","isServer","retry","throwErrors","observer","state","setState","createStore","getOptimisticResult","createServerSubscriber","resolve","reject","subscribe","result","batchCalls","unwrappedResult","unwrap","isError","process","env","console","error","isSuccess","createClientSubscriber","queryResource","data","loading","mutate","refetch","unsubscribe","createResource","Promise","isLoading","initialValue","ssrLoadFrom","initialData","deferStream","onHydrated","_k","info","value","hydrate","queries","queryKey","queryHash","newOptions","staleTime","refetchOnMount","setOptions","listeners","createComputed","on","status","isFetching","getCurrentQuery","handler","get","target","prop","Reflect","Proxy","createQuery","QueryObserver","useIsFetching","queryCache","getQueryCache","fetches","setFetches","createSignal","filters","createInfiniteQuery","InfiniteQueryObserver","createMutation","MutationObserver","variables","mutateOptions","catch","noop","getCurrentResult","mutateAsync","useIsMutating","mutationCache","getMutationCache","mutations","setMutations","isMutating","_result","createQueries","queriesOptions","defaultedQueries","map","QueriesObserver","setQueries","updatedQueries"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/setBatchUpdatesFn.ts","../../src/QueryClientProvider.tsx","../../src/utils.ts","../../src/createBaseQuery.ts","../../src/createQuery.ts","../../src/useIsFetching.ts","../../src/createInfiniteQuery.ts","../../src/createMutation.ts","../../src/useIsMutating.ts","../../src/createQueries.ts"],"sourcesContent":["import { notifyManager } from '@tanstack/query-core'\nimport { batch } from 'solid-js'\n\nnotifyManager.setBatchNotifyFunction(batch)\n","import type { QueryClient } from '@tanstack/query-core'\nimport type { JSX } from 'solid-js'\nimport { createContext, useContext, onMount, onCleanup } from 'solid-js'\n\nexport const QueryClientContext = createContext<QueryClient | undefined>(\n undefined,\n)\n\nexport const useQueryClient = (queryClient?: QueryClient) => {\n const client = useContext(QueryClientContext)\n\n if (queryClient) {\n return queryClient\n }\n\n if (!client) {\n throw new Error('No QueryClient set, use QueryClientProvider to set one')\n }\n\n return client\n}\n\nexport type QueryClientProviderProps = {\n client: QueryClient\n children?: JSX.Element\n}\n\nexport const QueryClientProvider = (\n props: QueryClientProviderProps,\n): JSX.Element => {\n onMount(() => {\n props.client.mount()\n })\n onCleanup(() => props.client.unmount())\n\n return (\n <QueryClientContext.Provider value={props.client}>\n {props.children}\n </QueryClientContext.Provider>\n )\n}\n","export function shouldThrowError<T extends (...args: any[]) => boolean>(\n throwError: boolean | T | undefined,\n params: Parameters<T>,\n): boolean {\n // Allow throwError function to override throwing behavior on a per-error basis\n if (typeof throwError === 'function') {\n return throwError(...params)\n }\n\n return !!throwError\n}\n","/* eslint-disable @typescript-eslint/no-unnecessary-condition */\n// Had to disable the lint rule because isServer type is defined as false\n// in solid-js/web package. I'll create a GitHub issue with them to see\n// why that happens.\nimport type {\n QueryClient,\n QueryKey,\n QueryObserver,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport { hydrate } from '@tanstack/query-core'\nimport { notifyManager } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { isServer } from 'solid-js/web'\nimport {\n createComputed,\n createMemo,\n createResource,\n on,\n onCleanup,\n onMount,\n} from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateBaseQueryOptions } from './types'\nimport { shouldThrowError } from './utils'\n\n// Base Query Function that is used to create the query.\nexport function createBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n>(\n options: Accessor<\n CreateBaseQueryOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >,\n Observer: typeof QueryObserver,\n queryClient?: () => QueryClient,\n) {\n const client = createMemo(() => useQueryClient(queryClient?.()))\n\n const defaultedOptions = client().defaultQueryOptions(options())\n defaultedOptions._optimisticResults = 'optimistic'\n if (isServer) {\n defaultedOptions.retry = false\n defaultedOptions.throwErrors = true\n }\n const observer = new Observer(client(), defaultedOptions)\n\n const [state, setState] = createStore<QueryObserverResult<TData, TError>>(\n observer.getOptimisticResult(defaultedOptions),\n )\n\n const createServerSubscriber = (\n resolve: (\n data:\n | QueryObserverResult<TData, TError>\n | PromiseLike<QueryObserverResult<TData, TError> | undefined>\n | undefined,\n ) => void,\n reject: (reason?: any) => void,\n ) => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n if (unwrappedResult.isError) {\n if (process.env['NODE_ENV'] === 'development') {\n console.error(unwrappedResult.error)\n }\n reject(unwrappedResult.error)\n }\n if (unwrappedResult.isSuccess) {\n resolve(unwrappedResult)\n }\n })()\n })\n }\n\n const createClientSubscriber = () => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n // If the query has data we dont suspend but instead mutate the resource\n // This could happen when placeholderData/initialData is defined\n if (\n queryResource()?.data &&\n unwrappedResult.data &&\n !queryResource.loading\n ) {\n setState(unwrappedResult)\n mutate(state)\n } else {\n setState(unwrappedResult)\n refetch()\n }\n })()\n })\n }\n\n /**\n * Unsubscribe is set lazily, so that we can subscribe after hydration when needed.\n */\n let unsubscribe: (() => void) | null = null\n\n const [queryResource, { refetch, mutate }] = createResource<\n QueryObserverResult<TData, TError> | undefined\n >(\n () => {\n return new Promise((resolve, reject) => {\n if (isServer) {\n unsubscribe = createServerSubscriber(resolve, reject)\n } else {\n if (!unsubscribe) {\n unsubscribe = createClientSubscriber()\n }\n }\n if (!state.isLoading) {\n resolve(state)\n }\n })\n },\n {\n initialValue: state,\n\n // If initialData is provided, we resolve the resource immediately\n ssrLoadFrom: options().initialData ? 'initial' : 'server',\n\n get deferStream() {\n return options().deferStream\n },\n\n /**\n * If this resource was populated on the server (either sync render, or streamed in over time), onHydrated\n * will be called. This is the point at which we can hydrate the query cache state, and setup the query subscriber.\n *\n * Leveraging onHydrated allows us to plug into the async and streaming support that solidjs resources already support.\n *\n * Note that this is only invoked on the client, for queries that were originally run on the server.\n */\n onHydrated(_k, info) {\n if (info.value) {\n hydrate(client(), {\n queries: [\n {\n queryKey: defaultedOptions.queryKey,\n queryHash: defaultedOptions.queryHash,\n state: info.value,\n },\n ],\n })\n }\n\n if (!unsubscribe) {\n /**\n * Do not refetch query on mount if query was fetched on server,\n * even if `staleTime` is not set.\n */\n const newOptions = { ...defaultedOptions }\n if (defaultedOptions.staleTime || !defaultedOptions.initialData) {\n newOptions.refetchOnMount = false\n }\n // Setting the options as an immutable object to prevent\n // wonky behavior with observer subscriptions\n observer.setOptions(newOptions)\n setState(observer.getOptimisticResult(newOptions))\n unsubscribe = createClientSubscriber()\n }\n },\n },\n )\n\n onCleanup(() => {\n if (unsubscribe) {\n unsubscribe()\n unsubscribe = null\n }\n })\n\n onMount(() => {\n observer.setOptions(defaultedOptions, { listeners: false })\n })\n\n createComputed(() => {\n observer.setOptions(client().defaultQueryOptions(options()))\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(observer.options.throwErrors, [\n state.error,\n observer.getCurrentQuery(),\n ])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const handler = {\n get(\n target: QueryObserverResult<TData, TError>,\n prop: keyof QueryObserverResult<TData, TError>,\n ): any {\n if (prop === 'data') {\n return queryResource()?.data\n }\n return Reflect.get(target, prop)\n },\n }\n\n return new Proxy(state, handler)\n}\n","import type { QueryClient, QueryKey, DefaultError } from '@tanstack/query-core'\nimport { QueryObserver } from '@tanstack/query-core'\nimport { createMemo } from 'solid-js'\nimport { createBaseQuery } from './createBaseQuery'\nimport type {\n CreateQueryOptions,\n CreateQueryResult,\n DefinedCreateQueryResult,\n FunctionedParams,\n SolidQueryOptions,\n} from './types'\n\ntype UndefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData?: undefined\n }\n>\n\ntype DefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData: TQueryFnData | (() => TQueryFnData)\n }\n>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): CreateQueryResult<TData, TError>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): DefinedCreateQueryResult<TData, TError>\nexport function createQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: CreateQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n) {\n return createBaseQuery(\n createMemo(() => options()),\n QueryObserver,\n queryClient,\n )\n}\n","import type { QueryClient, QueryFilters } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { createMemo, createSignal, onCleanup } from 'solid-js'\nimport { useQueryClient } from './QueryClientProvider'\n\ntype Options = () => {\n filters?: QueryFilters\n queryClient?: QueryClient\n}\n\nexport function useIsFetching(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const queryCache = createMemo(() => queryClient().getQueryCache())\n\n const [fetches, setFetches] = createSignal(\n queryClient().isFetching(options().filters),\n )\n\n const unsubscribe = queryCache().subscribe(() => {\n setFetches(queryClient().isFetching(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return fetches\n}\n","import type {\n QueryObserver,\n QueryKey,\n QueryClient,\n DefaultError,\n InfiniteData,\n} from '@tanstack/query-core'\nimport { InfiniteQueryObserver } from '@tanstack/query-core'\nimport type {\n CreateInfiniteQueryOptions,\n CreateInfiniteQueryResult,\n} from './types'\nimport { createBaseQuery } from './createBaseQuery'\nimport { createMemo } from 'solid-js'\n\nexport function createInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = InfiniteData<TQueryFnData>,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n>(\n options: CreateInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: () => QueryClient,\n): CreateInfiniteQueryResult<TData, TError> {\n return createBaseQuery(\n createMemo(() => options()),\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n InfiniteQueryObserver as typeof QueryObserver,\n queryClient,\n ) as CreateInfiniteQueryResult<TData, TError>\n}\n","import type { QueryClient, DefaultError } from '@tanstack/query-core'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type {\n CreateMutateFunction,\n CreateMutationOptions,\n CreateMutationResult,\n} from './types'\nimport { createComputed, onCleanup, on } from 'solid-js'\nimport { createStore } from 'solid-js/store'\nimport { shouldThrowError } from './utils'\n\n// HOOK\nexport function createMutation<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n>(\n options: CreateMutationOptions<TData, TError, TVariables, TContext>,\n queryClient?: () => QueryClient,\n): CreateMutationResult<TData, TError, TVariables, TContext> {\n const client = useQueryClient(queryClient?.())\n\n const observer = new MutationObserver<TData, TError, TVariables, TContext>(\n client,\n options(),\n )\n\n const mutate: CreateMutateFunction<TData, TError, TVariables, TContext> = (\n variables,\n mutateOptions,\n ) => {\n observer.mutate(variables, mutateOptions).catch(noop)\n }\n\n const [state, setState] = createStore<\n CreateMutationResult<TData, TError, TVariables, TContext>\n >({\n ...observer.getCurrentResult(),\n mutate,\n mutateAsync: observer.getCurrentResult().mutate,\n })\n\n createComputed(() => {\n observer.setOptions(options())\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n shouldThrowError(observer.options.throwErrors, [state.error])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n setState({\n ...result,\n mutate,\n mutateAsync: result.mutate,\n })\n })\n\n onCleanup(unsubscribe)\n\n return state\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nfunction noop() {}\n","import type { MutationFilters, QueryClient } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { Accessor } from 'solid-js'\nimport { createSignal, onCleanup, createMemo } from 'solid-js'\n\ntype Options = () => {\n filters?: MutationFilters\n queryClient?: QueryClient\n}\n\nexport function useIsMutating(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const mutationCache = createMemo(() => queryClient().getMutationCache())\n\n const [mutations, setMutations] = createSignal(\n queryClient().isMutating(options().filters),\n )\n\n const unsubscribe = mutationCache().subscribe((_result) => {\n setMutations(queryClient().isMutating(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return mutations\n}\n","import type {\n QueriesPlaceholderDataFunction,\n QueryClient,\n QueryFunction,\n QueryKey,\n DefaultError,\n} from '@tanstack/query-core'\nimport { notifyManager, QueriesObserver } from '@tanstack/query-core'\nimport { createComputed, onCleanup, onMount } from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateQueryResult, SolidQueryOptions } from './types'\n\n// This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.\n// `placeholderData` function does not have a parameter\ntype CreateQueryOptionsForCreateQueries<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = Omit<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'placeholderData'\n> & {\n placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>\n}\n\n// Avoid TS depth-limit error in case of large array literal\ntype MAXIMUM_DEPTH = 20\n\ntype GetOptions<T> =\n // Part 1: responsible for applying explicit type parameter to function arguments, if object { queryFnData: TQueryFnData, error: TError, data: TData }\n T extends {\n queryFnData: infer TQueryFnData\n error?: infer TError\n data: infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<unknown, TError, TData>\n : // Part 2: responsible for applying explicit type parameter to function arguments, if tuple [TQueryFnData, TError, TData]\n T extends [infer TQueryFnData, infer TError, infer TData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData>\n : // Part 3: responsible for inferring and enforcing type if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>\n select: (data: any) => infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, Error, TData, TQueryKey>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> }\n ? CreateQueryOptionsForCreateQueries<\n TQueryFnData,\n Error,\n TQueryFnData,\n TQueryKey\n >\n : // Fallback\n CreateQueryOptionsForCreateQueries\n\ntype GetResults<T> =\n // Part 1: responsible for mapping explicit type parameter to function result, if object\n T extends { queryFnData: any; error?: infer TError; data: infer TData }\n ? CreateQueryResult<TData, TError>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryResult<TData, TError>\n : // Part 2: responsible for mapping explicit type parameter to function result, if tuple\n T extends [any, infer TError, infer TData]\n ? CreateQueryResult<TData, TError>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryResult<TQueryFnData>\n : // Part 3: responsible for mapping inferred type to results, if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<unknown, any>\n select: (data: any) => infer TData\n }\n ? CreateQueryResult<TData>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, any> }\n ? CreateQueryResult<TQueryFnData>\n : // Fallback\n CreateQueryResult\n\n/**\n * QueriesOptions reducer recursively unwraps function arguments to infer/enforce type param\n */\nexport type QueriesOptions<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryOptionsForCreateQueries[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetOptions<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesOptions<[...Tail], [...Result, GetOptions<Head>], [...Depth, 1]>\n : unknown[] extends T\n ? T\n : // If T is *some* array but we couldn't assign unknown[] to it, then it must hold some known/homogenous type!\n // use this to infer the param types in the case of Array.map() argument\n T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n infer TQueryKey\n >[]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData, TQueryKey>[]\n : // Fallback\n CreateQueryOptionsForCreateQueries[]\n\n/**\n * QueriesResults reducer recursively maps type param to results\n */\nexport type QueriesResults<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryResult[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetResults<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]>\n : T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n any\n >[]\n ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results\n CreateQueryResult<\n unknown extends TData ? TQueryFnData : TData,\n unknown extends TError ? DefaultError : TError\n >[]\n : // Fallback\n CreateQueryResult[]\n\nexport function createQueries<T extends any[]>(\n queriesOptions: () => {\n queries: readonly [...QueriesOptions<T>]\n queryClient?: QueryClient\n },\n): QueriesResults<T> {\n const queryClient = useQueryClient(queriesOptions().queryClient)\n\n const defaultedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n\n const observer = new QueriesObserver(queryClient, defaultedQueries)\n\n const [state, setState] = createStore(\n observer.getOptimisticResult(defaultedQueries),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n setState(unwrap(result))\n })()\n })\n\n onCleanup(unsubscribe)\n\n onMount(() => {\n observer.setQueries(defaultedQueries, { listeners: false })\n })\n\n createComputed(() => {\n const updatedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n observer.setQueries(updatedQueries)\n })\n\n return state as QueriesResults<T>\n}\n"],"names":["notifyManager","setBatchNotifyFunction","batch","QueryClientContext","createContext","undefined","useQueryClient","queryClient","client","useContext","Error","QueryClientProvider","props","onMount","mount","onCleanup","unmount","_$createComponent","children","shouldThrowError","throwError","params","createBaseQuery","options","Observer","createMemo","defaultedOptions","defaultQueryOptions","_optimisticResults","isServer","retry","throwErrors","observer","state","setState","createStore","getOptimisticResult","createServerSubscriber","resolve","reject","subscribe","result","batchCalls","unwrappedResult","unwrap","isError","process","env","console","error","isSuccess","createClientSubscriber","queryResource","data","loading","mutate","refetch","unsubscribe","createResource","Promise","isLoading","initialValue","ssrLoadFrom","initialData","deferStream","onHydrated","_k","info","value","hydrate","queries","queryKey","queryHash","newOptions","staleTime","refetchOnMount","setOptions","listeners","createComputed","on","status","isFetching","getCurrentQuery","handler","get","target","prop","Reflect","Proxy","createQuery","QueryObserver","useIsFetching","queryCache","getQueryCache","fetches","setFetches","createSignal","filters","createInfiniteQuery","InfiniteQueryObserver","createMutation","MutationObserver","variables","mutateOptions","catch","noop","getCurrentResult","mutateAsync","useIsMutating","mutationCache","getMutationCache","mutations","setMutations","isMutating","_result","createQueries","queriesOptions","defaultedQueries","map","QueriesObserver","setQueries","updatedQueries"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import type { QueryKey, QueryClient, RegisteredError, InfiniteData } from '@tanstack/query-core';
1
+ import type { QueryKey, QueryClient, DefaultError, InfiniteData } from '@tanstack/query-core';
2
2
  import type { CreateInfiniteQueryOptions, CreateInfiniteQueryResult } from './types';
3
- export declare function createInfiniteQuery<TQueryFnData, TError = RegisteredError, TData = InfiniteData<TQueryFnData>, TQueryKey extends QueryKey = QueryKey, TPageParam = unknown>(options: CreateInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryKey, TPageParam>, queryClient?: () => QueryClient): CreateInfiniteQueryResult<TData, TError>;
3
+ export declare function createInfiniteQuery<TQueryFnData, TError = DefaultError, TData = InfiniteData<TQueryFnData>, TQueryKey extends QueryKey = QueryKey, TPageParam = unknown>(options: CreateInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryKey, TPageParam>, queryClient?: () => QueryClient): CreateInfiniteQueryResult<TData, TError>;
@@ -1,3 +1,3 @@
1
- import type { QueryClient, RegisteredError } from '@tanstack/query-core';
1
+ import type { QueryClient, DefaultError } from '@tanstack/query-core';
2
2
  import type { CreateMutationOptions, CreateMutationResult } from './types';
3
- export declare function createMutation<TData = unknown, TError = RegisteredError, TVariables = void, TContext = unknown>(options: CreateMutationOptions<TData, TError, TVariables, TContext>, queryClient?: () => QueryClient): CreateMutationResult<TData, TError, TVariables, TContext>;
3
+ export declare function createMutation<TData = unknown, TError = DefaultError, TVariables = void, TContext = unknown>(options: CreateMutationOptions<TData, TError, TVariables, TContext>, queryClient?: () => QueryClient): CreateMutationResult<TData, TError, TVariables, TContext>;
@@ -1,6 +1,6 @@
1
- import type { QueriesPlaceholderDataFunction, QueryClient, QueryFunction, QueryKey, RegisteredError } from '@tanstack/query-core';
1
+ import type { QueriesPlaceholderDataFunction, QueryClient, QueryFunction, QueryKey, DefaultError } from '@tanstack/query-core';
2
2
  import type { CreateQueryResult, SolidQueryOptions } from './types';
3
- declare type CreateQueryOptionsForCreateQueries<TQueryFnData = unknown, TError = RegisteredError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = Omit<SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey>, 'placeholderData'> & {
3
+ declare type CreateQueryOptionsForCreateQueries<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = Omit<SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey>, 'placeholderData'> & {
4
4
  placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>;
5
5
  };
6
6
  declare type MAXIMUM_DEPTH = 20;
@@ -43,7 +43,7 @@ export declare type QueriesOptions<T extends any[], Result extends any[] = [], D
43
43
  /**
44
44
  * QueriesResults reducer recursively maps type param to results
45
45
  */
46
- export declare type QueriesResults<T extends any[], Result extends any[] = [], Depth extends ReadonlyArray<number> = []> = Depth['length'] extends MAXIMUM_DEPTH ? CreateQueryResult[] : T extends [] ? [] : T extends [infer Head] ? [...Result, GetResults<Head>] : T extends [infer Head, ...infer Tail] ? QueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]> : T extends CreateQueryOptionsForCreateQueries<infer TQueryFnData, infer TError, infer TData, any>[] ? CreateQueryResult<unknown extends TData ? TQueryFnData : TData, unknown extends TError ? RegisteredError : TError>[] : CreateQueryResult[];
46
+ export declare type QueriesResults<T extends any[], Result extends any[] = [], Depth extends ReadonlyArray<number> = []> = Depth['length'] extends MAXIMUM_DEPTH ? CreateQueryResult[] : T extends [] ? [] : T extends [infer Head] ? [...Result, GetResults<Head>] : T extends [infer Head, ...infer Tail] ? QueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]> : T extends CreateQueryOptionsForCreateQueries<infer TQueryFnData, infer TError, infer TData, any>[] ? CreateQueryResult<unknown extends TData ? TQueryFnData : TData, unknown extends TError ? DefaultError : TError>[] : CreateQueryResult[];
47
47
  export declare function createQueries<T extends any[]>(queriesOptions: () => {
48
48
  queries: readonly [...QueriesOptions<T>];
49
49
  queryClient?: QueryClient;
@@ -1,11 +1,11 @@
1
- import type { QueryClient, QueryKey, RegisteredError } from '@tanstack/query-core';
1
+ import type { QueryClient, QueryKey, DefaultError } from '@tanstack/query-core';
2
2
  import type { CreateQueryResult, DefinedCreateQueryResult, FunctionedParams, SolidQueryOptions } from './types';
3
- declare type UndefinedInitialDataOptions<TQueryFnData = unknown, TError = RegisteredError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = FunctionedParams<SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {
3
+ declare type UndefinedInitialDataOptions<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = FunctionedParams<SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {
4
4
  initialData?: undefined;
5
5
  }>;
6
- declare type DefinedInitialDataOptions<TQueryFnData = unknown, TError = RegisteredError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = FunctionedParams<SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {
6
+ declare type DefinedInitialDataOptions<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = FunctionedParams<SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {
7
7
  initialData: TQueryFnData | (() => TQueryFnData);
8
8
  }>;
9
- export declare function createQuery<TQueryFnData = unknown, TError = RegisteredError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey>(options: UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>, queryClient?: () => QueryClient): CreateQueryResult<TData, TError>;
10
- export declare function createQuery<TQueryFnData = unknown, TError = RegisteredError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey>(options: DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>, queryClient?: () => QueryClient): DefinedCreateQueryResult<TData, TError>;
9
+ export declare function createQuery<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey>(options: UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>, queryClient?: () => QueryClient): CreateQueryResult<TData, TError>;
10
+ export declare function createQuery<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey>(options: DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>, queryClient?: () => QueryClient): DefinedCreateQueryResult<TData, TError>;
11
11
  export {};
@@ -1,32 +1,32 @@
1
- import type { QueryKey, QueryObserverOptions, QueryObserverResult, MutateFunction, MutationObserverOptions, MutationObserverResult, DefinedQueryObserverResult, InfiniteQueryObserverOptions, InfiniteQueryObserverResult, WithRequired, RegisteredError } from '@tanstack/query-core';
1
+ import type { QueryKey, QueryObserverOptions, QueryObserverResult, MutateFunction, MutationObserverOptions, MutationObserverResult, DefinedQueryObserverResult, InfiniteQueryObserverOptions, InfiniteQueryObserverResult, WithRequired, DefaultError } from '@tanstack/query-core';
2
2
  export declare type FunctionedParams<T> = () => T;
3
- export interface CreateBaseQueryOptions<TQueryFnData = unknown, TError = RegisteredError, TData = TQueryFnData, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> extends WithRequired<QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>, 'queryKey'> {
3
+ export interface CreateBaseQueryOptions<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> extends WithRequired<QueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>, 'queryKey'> {
4
4
  deferStream?: boolean;
5
5
  }
6
- export interface SolidQueryOptions<TQueryFnData = unknown, TError = RegisteredError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> extends WithRequired<CreateBaseQueryOptions<TQueryFnData, TError, TData, TQueryFnData, TQueryKey>, 'queryKey'> {
6
+ export interface SolidQueryOptions<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> extends WithRequired<CreateBaseQueryOptions<TQueryFnData, TError, TData, TQueryFnData, TQueryKey>, 'queryKey'> {
7
7
  }
8
- export declare type CreateQueryOptions<TQueryFnData = unknown, TError = RegisteredError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = FunctionedParams<SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey>>;
9
- export declare type CreateBaseQueryResult<TData = unknown, TError = RegisteredError> = QueryObserverResult<TData, TError>;
10
- export declare type CreateQueryResult<TData = unknown, TError = RegisteredError> = CreateBaseQueryResult<TData, TError>;
11
- export declare type DefinedCreateBaseQueryResult<TData = unknown, TError = RegisteredError> = DefinedQueryObserverResult<TData, TError>;
12
- export declare type DefinedCreateQueryResult<TData = unknown, TError = RegisteredError> = DefinedCreateBaseQueryResult<TData, TError>;
13
- export interface SolidInfiniteQueryOptions<TQueryFnData = unknown, TError = RegisteredError, TData = TQueryFnData, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, TPageParam = unknown> extends Omit<InfiniteQueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey, TPageParam>, 'queryKey'> {
8
+ export declare type CreateQueryOptions<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = FunctionedParams<SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey>>;
9
+ export declare type CreateBaseQueryResult<TData = unknown, TError = DefaultError> = QueryObserverResult<TData, TError>;
10
+ export declare type CreateQueryResult<TData = unknown, TError = DefaultError> = CreateBaseQueryResult<TData, TError>;
11
+ export declare type DefinedCreateBaseQueryResult<TData = unknown, TError = DefaultError> = DefinedQueryObserverResult<TData, TError>;
12
+ export declare type DefinedCreateQueryResult<TData = unknown, TError = DefaultError> = DefinedCreateBaseQueryResult<TData, TError>;
13
+ export interface SolidInfiniteQueryOptions<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, TPageParam = unknown> extends Omit<InfiniteQueryObserverOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey, TPageParam>, 'queryKey'> {
14
14
  queryKey: TQueryKey;
15
15
  deferStream?: boolean;
16
16
  }
17
- export declare type CreateInfiniteQueryOptions<TQueryFnData = unknown, TError = RegisteredError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, TPageParam = unknown> = FunctionedParams<SolidInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryFnData, TQueryKey, TPageParam>>;
18
- export declare type CreateInfiniteQueryResult<TData = unknown, TError = RegisteredError> = InfiniteQueryObserverResult<TData, TError>;
19
- export interface SolidMutationOptions<TData = unknown, TError = RegisteredError, TVariables = void, TContext = unknown> extends Omit<MutationObserverOptions<TData, TError, TVariables, TContext>, '_defaulted' | 'variables'> {
17
+ export declare type CreateInfiniteQueryOptions<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, TPageParam = unknown> = FunctionedParams<SolidInfiniteQueryOptions<TQueryFnData, TError, TData, TQueryFnData, TQueryKey, TPageParam>>;
18
+ export declare type CreateInfiniteQueryResult<TData = unknown, TError = DefaultError> = InfiniteQueryObserverResult<TData, TError>;
19
+ export interface SolidMutationOptions<TData = unknown, TError = DefaultError, TVariables = void, TContext = unknown> extends Omit<MutationObserverOptions<TData, TError, TVariables, TContext>, '_defaulted' | 'variables'> {
20
20
  }
21
- export declare type CreateMutationOptions<TData = unknown, TError = RegisteredError, TVariables = void, TContext = unknown> = FunctionedParams<SolidMutationOptions<TData, TError, TVariables, TContext>>;
22
- export declare type CreateMutateFunction<TData = unknown, TError = RegisteredError, TVariables = void, TContext = unknown> = (...args: Parameters<MutateFunction<TData, TError, TVariables, TContext>>) => void;
23
- export declare type CreateMutateAsyncFunction<TData = unknown, TError = RegisteredError, TVariables = void, TContext = unknown> = MutateFunction<TData, TError, TVariables, TContext>;
24
- export declare type CreateBaseMutationResult<TData = unknown, TError = RegisteredError, TVariables = unknown, TContext = unknown> = Override<MutationObserverResult<TData, TError, TVariables, TContext>, {
21
+ export declare type CreateMutationOptions<TData = unknown, TError = DefaultError, TVariables = void, TContext = unknown> = FunctionedParams<SolidMutationOptions<TData, TError, TVariables, TContext>>;
22
+ export declare type CreateMutateFunction<TData = unknown, TError = DefaultError, TVariables = void, TContext = unknown> = (...args: Parameters<MutateFunction<TData, TError, TVariables, TContext>>) => void;
23
+ export declare type CreateMutateAsyncFunction<TData = unknown, TError = DefaultError, TVariables = void, TContext = unknown> = MutateFunction<TData, TError, TVariables, TContext>;
24
+ export declare type CreateBaseMutationResult<TData = unknown, TError = DefaultError, TVariables = unknown, TContext = unknown> = Override<MutationObserverResult<TData, TError, TVariables, TContext>, {
25
25
  mutate: CreateMutateFunction<TData, TError, TVariables, TContext>;
26
26
  }> & {
27
27
  mutateAsync: CreateMutateAsyncFunction<TData, TError, TVariables, TContext>;
28
28
  };
29
- export declare type CreateMutationResult<TData = unknown, TError = RegisteredError, TVariables = unknown, TContext = unknown> = CreateBaseMutationResult<TData, TError, TVariables, TContext>;
29
+ export declare type CreateMutationResult<TData = unknown, TError = DefaultError, TVariables = unknown, TContext = unknown> = CreateBaseMutationResult<TData, TError, TVariables, TContext>;
30
30
  declare type Override<A, B> = {
31
31
  [K in keyof A]: K extends keyof B ? B[K] : A[K];
32
32
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/setBatchUpdatesFn.ts","../../src/QueryClientProvider.tsx","../../src/utils.ts","../../src/createBaseQuery.ts","../../src/createMutation.ts","../../src/createInfiniteQuery.ts","../../src/createQueries.ts","../../src/createQuery.ts","../../src/useIsFetching.ts","../../src/useIsMutating.ts"],"sourcesContent":["import { notifyManager } from '@tanstack/query-core'\nimport { batch } from 'solid-js'\n\nnotifyManager.setBatchNotifyFunction(batch)\n","import type { QueryClient } from '@tanstack/query-core'\nimport type { JSX } from 'solid-js'\nimport { createContext, useContext, onMount, onCleanup } from 'solid-js'\n\nexport const QueryClientContext = createContext<QueryClient | undefined>(\n undefined,\n)\n\nexport const useQueryClient = (queryClient?: QueryClient) => {\n const client = useContext(QueryClientContext)\n\n if (queryClient) {\n return queryClient\n }\n\n if (!client) {\n throw new Error('No QueryClient set, use QueryClientProvider to set one')\n }\n\n return client\n}\n\nexport type QueryClientProviderProps = {\n client: QueryClient\n children?: JSX.Element\n}\n\nexport const QueryClientProvider = (\n props: QueryClientProviderProps,\n): JSX.Element => {\n onMount(() => {\n props.client.mount()\n })\n onCleanup(() => props.client.unmount())\n\n return (\n <QueryClientContext.Provider value={props.client}>\n {props.children}\n </QueryClientContext.Provider>\n )\n}\n","export function shouldThrowError<T extends (...args: any[]) => boolean>(\n throwError: boolean | T | undefined,\n params: Parameters<T>,\n): boolean {\n // Allow throwError function to override throwing behavior on a per-error basis\n if (typeof throwError === 'function') {\n return throwError(...params)\n }\n\n return !!throwError\n}\n","/* eslint-disable @typescript-eslint/no-unnecessary-condition */\n// Had to disable the lint rule because isServer type is defined as false\n// in solid-js/web package. I'll create a GitHub issue with them to see\n// why that happens.\nimport type {\n QueryClient,\n QueryKey,\n QueryObserver,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport { hydrate } from '@tanstack/query-core'\nimport { notifyManager } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { isServer } from 'solid-js/web'\nimport {\n createComputed,\n createMemo,\n createResource,\n on,\n onCleanup,\n onMount,\n} from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateBaseQueryOptions } from './types'\nimport { shouldThrowError } from './utils'\n\n// Base Query Function that is used to create the query.\nexport function createBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n>(\n options: Accessor<\n CreateBaseQueryOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >,\n Observer: typeof QueryObserver,\n queryClient?: () => QueryClient,\n) {\n const client = createMemo(() => useQueryClient(queryClient?.()))\n\n const defaultedOptions = client().defaultQueryOptions(options())\n defaultedOptions._optimisticResults = 'optimistic'\n if (isServer) {\n defaultedOptions.retry = false\n defaultedOptions.throwErrors = true\n }\n const observer = new Observer(client(), defaultedOptions)\n\n const [state, setState] = createStore<QueryObserverResult<TData, TError>>(\n observer.getOptimisticResult(defaultedOptions),\n )\n\n const createServerSubscriber = (\n resolve: (\n data:\n | QueryObserverResult<TData, TError>\n | PromiseLike<QueryObserverResult<TData, TError> | undefined>\n | undefined,\n ) => void,\n reject: (reason?: any) => void,\n ) => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n if (unwrappedResult.isError) {\n if (process.env['NODE_ENV'] === 'development') {\n console.error(unwrappedResult.error)\n }\n reject(unwrappedResult.error)\n }\n if (unwrappedResult.isSuccess) {\n resolve(unwrappedResult)\n }\n })()\n })\n }\n\n const createClientSubscriber = () => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n // If the query has data we dont suspend but instead mutate the resource\n // This could happen when placeholderData/initialData is defined\n if (\n queryResource()?.data &&\n unwrappedResult.data &&\n !queryResource.loading\n ) {\n setState(unwrappedResult)\n mutate(state)\n } else {\n setState(unwrappedResult)\n refetch()\n }\n })()\n })\n }\n\n /**\n * Unsubscribe is set lazily, so that we can subscribe after hydration when needed.\n */\n let unsubscribe: (() => void) | null = null\n\n const [queryResource, { refetch, mutate }] = createResource<\n QueryObserverResult<TData, TError> | undefined\n >(\n () => {\n return new Promise((resolve, reject) => {\n if (isServer) {\n unsubscribe = createServerSubscriber(resolve, reject)\n } else {\n if (!unsubscribe) {\n unsubscribe = createClientSubscriber()\n }\n }\n if (!state.isLoading) {\n resolve(state)\n }\n })\n },\n {\n initialValue: state,\n\n // If initialData is provided, we resolve the resource immediately\n ssrLoadFrom: options().initialData ? 'initial' : 'server',\n\n get deferStream() {\n return options().deferStream\n },\n\n /**\n * If this resource was populated on the server (either sync render, or streamed in over time), onHydrated\n * will be called. This is the point at which we can hydrate the query cache state, and setup the query subscriber.\n *\n * Leveraging onHydrated allows us to plug into the async and streaming support that solidjs resources already support.\n *\n * Note that this is only invoked on the client, for queries that were originally run on the server.\n */\n onHydrated(_k, info) {\n if (info.value) {\n hydrate(client(), {\n queries: [\n {\n queryKey: defaultedOptions.queryKey,\n queryHash: defaultedOptions.queryHash,\n state: info.value,\n },\n ],\n })\n }\n\n if (!unsubscribe) {\n /**\n * Do not refetch query on mount if query was fetched on server,\n * even if `staleTime` is not set.\n */\n const newOptions = { ...defaultedOptions }\n if (defaultedOptions.staleTime || !defaultedOptions.initialData) {\n newOptions.refetchOnMount = false\n }\n // Setting the options as an immutable object to prevent\n // wonky behavior with observer subscriptions\n observer.setOptions(newOptions)\n setState(observer.getOptimisticResult(newOptions))\n unsubscribe = createClientSubscriber()\n }\n },\n },\n )\n\n onCleanup(() => {\n if (unsubscribe) {\n unsubscribe()\n unsubscribe = null\n }\n })\n\n onMount(() => {\n observer.setOptions(defaultedOptions, { listeners: false })\n })\n\n createComputed(() => {\n observer.setOptions(client().defaultQueryOptions(options()))\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(observer.options.throwErrors, [\n state.error,\n observer.getCurrentQuery(),\n ])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const handler = {\n get(\n target: QueryObserverResult<TData, TError>,\n prop: keyof QueryObserverResult<TData, TError>,\n ): any {\n if (prop === 'data') {\n return queryResource()?.data\n }\n return Reflect.get(target, prop)\n },\n }\n\n return new Proxy(state, handler)\n}\n","import type { QueryClient, RegisteredError } from '@tanstack/query-core'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type {\n CreateMutateFunction,\n CreateMutationOptions,\n CreateMutationResult,\n} from './types'\nimport { createComputed, onCleanup, on } from 'solid-js'\nimport { createStore } from 'solid-js/store'\nimport { shouldThrowError } from './utils'\n\n// HOOK\nexport function createMutation<\n TData = unknown,\n TError = RegisteredError,\n TVariables = void,\n TContext = unknown,\n>(\n options: CreateMutationOptions<TData, TError, TVariables, TContext>,\n queryClient?: () => QueryClient,\n): CreateMutationResult<TData, TError, TVariables, TContext> {\n const client = useQueryClient(queryClient?.())\n\n const observer = new MutationObserver<TData, TError, TVariables, TContext>(\n client,\n options(),\n )\n\n const mutate: CreateMutateFunction<TData, TError, TVariables, TContext> = (\n variables,\n mutateOptions,\n ) => {\n observer.mutate(variables, mutateOptions).catch(noop)\n }\n\n const [state, setState] = createStore<\n CreateMutationResult<TData, TError, TVariables, TContext>\n >({\n ...observer.getCurrentResult(),\n mutate,\n mutateAsync: observer.getCurrentResult().mutate,\n })\n\n createComputed(() => {\n observer.setOptions(options())\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n shouldThrowError(observer.options.throwErrors, [state.error])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n setState({\n ...result,\n mutate,\n mutateAsync: result.mutate,\n })\n })\n\n onCleanup(unsubscribe)\n\n return state\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nfunction noop() {}\n","import type {\n QueryObserver,\n QueryKey,\n QueryClient,\n RegisteredError,\n InfiniteData,\n} from '@tanstack/query-core'\nimport { InfiniteQueryObserver } from '@tanstack/query-core'\nimport type {\n CreateInfiniteQueryOptions,\n CreateInfiniteQueryResult,\n} from './types'\nimport { createBaseQuery } from './createBaseQuery'\nimport { createMemo } from 'solid-js'\n\nexport function createInfiniteQuery<\n TQueryFnData,\n TError = RegisteredError,\n TData = InfiniteData<TQueryFnData>,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n>(\n options: CreateInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: () => QueryClient,\n): CreateInfiniteQueryResult<TData, TError> {\n return createBaseQuery(\n createMemo(() => options()),\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n InfiniteQueryObserver as typeof QueryObserver,\n queryClient,\n ) as CreateInfiniteQueryResult<TData, TError>\n}\n","import type {\n QueriesPlaceholderDataFunction,\n QueryClient,\n QueryFunction,\n QueryKey,\n RegisteredError,\n} from '@tanstack/query-core'\nimport { notifyManager, QueriesObserver } from '@tanstack/query-core'\nimport { createComputed, onCleanup, onMount } from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateQueryResult, SolidQueryOptions } from './types'\n\n// This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.\n// `placeholderData` function does not have a parameter\ntype CreateQueryOptionsForCreateQueries<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = Omit<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'placeholderData'\n> & {\n placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>\n}\n\n// Avoid TS depth-limit error in case of large array literal\ntype MAXIMUM_DEPTH = 20\n\ntype GetOptions<T> =\n // Part 1: responsible for applying explicit type parameter to function arguments, if object { queryFnData: TQueryFnData, error: TError, data: TData }\n T extends {\n queryFnData: infer TQueryFnData\n error?: infer TError\n data: infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<unknown, TError, TData>\n : // Part 2: responsible for applying explicit type parameter to function arguments, if tuple [TQueryFnData, TError, TData]\n T extends [infer TQueryFnData, infer TError, infer TData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData>\n : // Part 3: responsible for inferring and enforcing type if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>\n select: (data: any) => infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, Error, TData, TQueryKey>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> }\n ? CreateQueryOptionsForCreateQueries<\n TQueryFnData,\n Error,\n TQueryFnData,\n TQueryKey\n >\n : // Fallback\n CreateQueryOptionsForCreateQueries\n\ntype GetResults<T> =\n // Part 1: responsible for mapping explicit type parameter to function result, if object\n T extends { queryFnData: any; error?: infer TError; data: infer TData }\n ? CreateQueryResult<TData, TError>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryResult<TData, TError>\n : // Part 2: responsible for mapping explicit type parameter to function result, if tuple\n T extends [any, infer TError, infer TData]\n ? CreateQueryResult<TData, TError>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryResult<TQueryFnData>\n : // Part 3: responsible for mapping inferred type to results, if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<unknown, any>\n select: (data: any) => infer TData\n }\n ? CreateQueryResult<TData>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, any> }\n ? CreateQueryResult<TQueryFnData>\n : // Fallback\n CreateQueryResult\n\n/**\n * QueriesOptions reducer recursively unwraps function arguments to infer/enforce type param\n */\nexport type QueriesOptions<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryOptionsForCreateQueries[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetOptions<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesOptions<[...Tail], [...Result, GetOptions<Head>], [...Depth, 1]>\n : unknown[] extends T\n ? T\n : // If T is *some* array but we couldn't assign unknown[] to it, then it must hold some known/homogenous type!\n // use this to infer the param types in the case of Array.map() argument\n T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n infer TQueryKey\n >[]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData, TQueryKey>[]\n : // Fallback\n CreateQueryOptionsForCreateQueries[]\n\n/**\n * QueriesResults reducer recursively maps type param to results\n */\nexport type QueriesResults<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryResult[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetResults<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]>\n : T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n any\n >[]\n ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results\n CreateQueryResult<\n unknown extends TData ? TQueryFnData : TData,\n unknown extends TError ? RegisteredError : TError\n >[]\n : // Fallback\n CreateQueryResult[]\n\nexport function createQueries<T extends any[]>(\n queriesOptions: () => {\n queries: readonly [...QueriesOptions<T>]\n queryClient?: QueryClient\n },\n): QueriesResults<T> {\n const queryClient = useQueryClient(queriesOptions().queryClient)\n\n const defaultedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n\n const observer = new QueriesObserver(queryClient, defaultedQueries)\n\n const [state, setState] = createStore(\n observer.getOptimisticResult(defaultedQueries),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n setState(unwrap(result))\n })()\n })\n\n onCleanup(unsubscribe)\n\n onMount(() => {\n observer.setQueries(defaultedQueries, { listeners: false })\n })\n\n createComputed(() => {\n const updatedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n observer.setQueries(updatedQueries)\n })\n\n return state as QueriesResults<T>\n}\n","import type {\n QueryClient,\n QueryKey,\n RegisteredError,\n} from '@tanstack/query-core'\nimport { QueryObserver } from '@tanstack/query-core'\nimport { createMemo } from 'solid-js'\nimport { createBaseQuery } from './createBaseQuery'\nimport type {\n CreateQueryOptions,\n CreateQueryResult,\n DefinedCreateQueryResult,\n FunctionedParams,\n SolidQueryOptions,\n} from './types'\n\ntype UndefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData?: undefined\n }\n>\n\ntype DefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData: TQueryFnData | (() => TQueryFnData)\n }\n>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): CreateQueryResult<TData, TError>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): DefinedCreateQueryResult<TData, TError>\nexport function createQuery<\n TQueryFnData,\n TError = RegisteredError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: CreateQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n) {\n return createBaseQuery(\n createMemo(() => options()),\n QueryObserver,\n queryClient,\n )\n}\n","import type { QueryClient, QueryFilters } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { createMemo, createSignal, onCleanup } from 'solid-js'\nimport { useQueryClient } from './QueryClientProvider'\n\ntype Options = () => {\n filters?: QueryFilters\n queryClient?: QueryClient\n}\n\nexport function useIsFetching(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const queryCache = createMemo(() => queryClient().getQueryCache())\n\n const [fetches, setFetches] = createSignal(\n queryClient().isFetching(options().filters),\n )\n\n const unsubscribe = queryCache().subscribe(() => {\n setFetches(queryClient().isFetching(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return fetches\n}\n","import type { MutationFilters, QueryClient } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { Accessor } from 'solid-js'\nimport { createSignal, onCleanup, createMemo } from 'solid-js'\n\ntype Options = () => {\n filters?: MutationFilters\n queryClient?: QueryClient\n}\n\nexport function useIsMutating(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const mutationCache = createMemo(() => queryClient().getMutationCache())\n\n const [mutations, setMutations] = createSignal(\n queryClient().isMutating(options().filters),\n )\n\n const unsubscribe = mutationCache().subscribe((_result) => {\n setMutations(queryClient().isMutating(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return mutations\n}\n"],"names":["notifyManager","setBatchNotifyFunction","batch","QueryClientContext","createContext","undefined","useQueryClient","queryClient","client","useContext","Error","shouldThrowError","throwError","params","createBaseQuery","options","Observer","createMemo","defaultedOptions","defaultQueryOptions","_optimisticResults","isServer","retry","throwErrors","observer","state","setState","createStore","getOptimisticResult","createClientSubscriber","subscribe","result","batchCalls","unwrappedResult","unwrap","queryResource","data","loading","mutate","refetch","unsubscribe","createResource","Promise","resolve","reject","isError","process","env","console","error","isSuccess","createServerSubscriber","isLoading","initialValue","ssrLoadFrom","initialData","deferStream","onHydrated","_k","info","value","hydrate","queries","queryKey","queryHash","newOptions","staleTime","refetchOnMount","setOptions","onCleanup","onMount","listeners","createComputed","on","status","isFetching","getCurrentQuery","Proxy","get","target","prop","Reflect","noop","props","mount","unmount","_$createComponent","createComponent","Provider","children","InfiniteQueryObserver","MutationObserver","variables","mutateOptions","catch","getCurrentResult","mutateAsync","queriesOptions","defaultedQueries","map","QueriesObserver","setQueries","updatedQueries","QueryObserver","queryCache","getQueryCache","fetches","setFetches","createSignal","filters","mutationCache","getMutationCache","mutations","setMutations","isMutating","_result"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../src/setBatchUpdatesFn.ts","../../src/QueryClientProvider.tsx","../../src/utils.ts","../../src/createBaseQuery.ts","../../src/createMutation.ts","../../src/createInfiniteQuery.ts","../../src/createQueries.ts","../../src/createQuery.ts","../../src/useIsFetching.ts","../../src/useIsMutating.ts"],"sourcesContent":["import { notifyManager } from '@tanstack/query-core'\nimport { batch } from 'solid-js'\n\nnotifyManager.setBatchNotifyFunction(batch)\n","import type { QueryClient } from '@tanstack/query-core'\nimport type { JSX } from 'solid-js'\nimport { createContext, useContext, onMount, onCleanup } from 'solid-js'\n\nexport const QueryClientContext = createContext<QueryClient | undefined>(\n undefined,\n)\n\nexport const useQueryClient = (queryClient?: QueryClient) => {\n const client = useContext(QueryClientContext)\n\n if (queryClient) {\n return queryClient\n }\n\n if (!client) {\n throw new Error('No QueryClient set, use QueryClientProvider to set one')\n }\n\n return client\n}\n\nexport type QueryClientProviderProps = {\n client: QueryClient\n children?: JSX.Element\n}\n\nexport const QueryClientProvider = (\n props: QueryClientProviderProps,\n): JSX.Element => {\n onMount(() => {\n props.client.mount()\n })\n onCleanup(() => props.client.unmount())\n\n return (\n <QueryClientContext.Provider value={props.client}>\n {props.children}\n </QueryClientContext.Provider>\n )\n}\n","export function shouldThrowError<T extends (...args: any[]) => boolean>(\n throwError: boolean | T | undefined,\n params: Parameters<T>,\n): boolean {\n // Allow throwError function to override throwing behavior on a per-error basis\n if (typeof throwError === 'function') {\n return throwError(...params)\n }\n\n return !!throwError\n}\n","/* eslint-disable @typescript-eslint/no-unnecessary-condition */\n// Had to disable the lint rule because isServer type is defined as false\n// in solid-js/web package. I'll create a GitHub issue with them to see\n// why that happens.\nimport type {\n QueryClient,\n QueryKey,\n QueryObserver,\n QueryObserverResult,\n} from '@tanstack/query-core'\nimport { hydrate } from '@tanstack/query-core'\nimport { notifyManager } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { isServer } from 'solid-js/web'\nimport {\n createComputed,\n createMemo,\n createResource,\n on,\n onCleanup,\n onMount,\n} from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateBaseQueryOptions } from './types'\nimport { shouldThrowError } from './utils'\n\n// Base Query Function that is used to create the query.\nexport function createBaseQuery<\n TQueryFnData,\n TError,\n TData,\n TQueryData,\n TQueryKey extends QueryKey,\n>(\n options: Accessor<\n CreateBaseQueryOptions<TQueryFnData, TError, TData, TQueryData, TQueryKey>\n >,\n Observer: typeof QueryObserver,\n queryClient?: () => QueryClient,\n) {\n const client = createMemo(() => useQueryClient(queryClient?.()))\n\n const defaultedOptions = client().defaultQueryOptions(options())\n defaultedOptions._optimisticResults = 'optimistic'\n if (isServer) {\n defaultedOptions.retry = false\n defaultedOptions.throwErrors = true\n }\n const observer = new Observer(client(), defaultedOptions)\n\n const [state, setState] = createStore<QueryObserverResult<TData, TError>>(\n observer.getOptimisticResult(defaultedOptions),\n )\n\n const createServerSubscriber = (\n resolve: (\n data:\n | QueryObserverResult<TData, TError>\n | PromiseLike<QueryObserverResult<TData, TError> | undefined>\n | undefined,\n ) => void,\n reject: (reason?: any) => void,\n ) => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n if (unwrappedResult.isError) {\n if (process.env['NODE_ENV'] === 'development') {\n console.error(unwrappedResult.error)\n }\n reject(unwrappedResult.error)\n }\n if (unwrappedResult.isSuccess) {\n resolve(unwrappedResult)\n }\n })()\n })\n }\n\n const createClientSubscriber = () => {\n return observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n const unwrappedResult = { ...unwrap(result) }\n // If the query has data we dont suspend but instead mutate the resource\n // This could happen when placeholderData/initialData is defined\n if (\n queryResource()?.data &&\n unwrappedResult.data &&\n !queryResource.loading\n ) {\n setState(unwrappedResult)\n mutate(state)\n } else {\n setState(unwrappedResult)\n refetch()\n }\n })()\n })\n }\n\n /**\n * Unsubscribe is set lazily, so that we can subscribe after hydration when needed.\n */\n let unsubscribe: (() => void) | null = null\n\n const [queryResource, { refetch, mutate }] = createResource<\n QueryObserverResult<TData, TError> | undefined\n >(\n () => {\n return new Promise((resolve, reject) => {\n if (isServer) {\n unsubscribe = createServerSubscriber(resolve, reject)\n } else {\n if (!unsubscribe) {\n unsubscribe = createClientSubscriber()\n }\n }\n if (!state.isLoading) {\n resolve(state)\n }\n })\n },\n {\n initialValue: state,\n\n // If initialData is provided, we resolve the resource immediately\n ssrLoadFrom: options().initialData ? 'initial' : 'server',\n\n get deferStream() {\n return options().deferStream\n },\n\n /**\n * If this resource was populated on the server (either sync render, or streamed in over time), onHydrated\n * will be called. This is the point at which we can hydrate the query cache state, and setup the query subscriber.\n *\n * Leveraging onHydrated allows us to plug into the async and streaming support that solidjs resources already support.\n *\n * Note that this is only invoked on the client, for queries that were originally run on the server.\n */\n onHydrated(_k, info) {\n if (info.value) {\n hydrate(client(), {\n queries: [\n {\n queryKey: defaultedOptions.queryKey,\n queryHash: defaultedOptions.queryHash,\n state: info.value,\n },\n ],\n })\n }\n\n if (!unsubscribe) {\n /**\n * Do not refetch query on mount if query was fetched on server,\n * even if `staleTime` is not set.\n */\n const newOptions = { ...defaultedOptions }\n if (defaultedOptions.staleTime || !defaultedOptions.initialData) {\n newOptions.refetchOnMount = false\n }\n // Setting the options as an immutable object to prevent\n // wonky behavior with observer subscriptions\n observer.setOptions(newOptions)\n setState(observer.getOptimisticResult(newOptions))\n unsubscribe = createClientSubscriber()\n }\n },\n },\n )\n\n onCleanup(() => {\n if (unsubscribe) {\n unsubscribe()\n unsubscribe = null\n }\n })\n\n onMount(() => {\n observer.setOptions(defaultedOptions, { listeners: false })\n })\n\n createComputed(() => {\n observer.setOptions(client().defaultQueryOptions(options()))\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n !state.isFetching &&\n shouldThrowError(observer.options.throwErrors, [\n state.error,\n observer.getCurrentQuery(),\n ])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const handler = {\n get(\n target: QueryObserverResult<TData, TError>,\n prop: keyof QueryObserverResult<TData, TError>,\n ): any {\n if (prop === 'data') {\n return queryResource()?.data\n }\n return Reflect.get(target, prop)\n },\n }\n\n return new Proxy(state, handler)\n}\n","import type { QueryClient, DefaultError } from '@tanstack/query-core'\nimport { MutationObserver } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type {\n CreateMutateFunction,\n CreateMutationOptions,\n CreateMutationResult,\n} from './types'\nimport { createComputed, onCleanup, on } from 'solid-js'\nimport { createStore } from 'solid-js/store'\nimport { shouldThrowError } from './utils'\n\n// HOOK\nexport function createMutation<\n TData = unknown,\n TError = DefaultError,\n TVariables = void,\n TContext = unknown,\n>(\n options: CreateMutationOptions<TData, TError, TVariables, TContext>,\n queryClient?: () => QueryClient,\n): CreateMutationResult<TData, TError, TVariables, TContext> {\n const client = useQueryClient(queryClient?.())\n\n const observer = new MutationObserver<TData, TError, TVariables, TContext>(\n client,\n options(),\n )\n\n const mutate: CreateMutateFunction<TData, TError, TVariables, TContext> = (\n variables,\n mutateOptions,\n ) => {\n observer.mutate(variables, mutateOptions).catch(noop)\n }\n\n const [state, setState] = createStore<\n CreateMutationResult<TData, TError, TVariables, TContext>\n >({\n ...observer.getCurrentResult(),\n mutate,\n mutateAsync: observer.getCurrentResult().mutate,\n })\n\n createComputed(() => {\n observer.setOptions(options())\n })\n\n createComputed(\n on(\n () => state.status,\n () => {\n if (\n state.isError &&\n shouldThrowError(observer.options.throwErrors, [state.error])\n ) {\n throw state.error\n }\n },\n ),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n setState({\n ...result,\n mutate,\n mutateAsync: result.mutate,\n })\n })\n\n onCleanup(unsubscribe)\n\n return state\n}\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nfunction noop() {}\n","import type {\n QueryObserver,\n QueryKey,\n QueryClient,\n DefaultError,\n InfiniteData,\n} from '@tanstack/query-core'\nimport { InfiniteQueryObserver } from '@tanstack/query-core'\nimport type {\n CreateInfiniteQueryOptions,\n CreateInfiniteQueryResult,\n} from './types'\nimport { createBaseQuery } from './createBaseQuery'\nimport { createMemo } from 'solid-js'\n\nexport function createInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = InfiniteData<TQueryFnData>,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n>(\n options: CreateInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: () => QueryClient,\n): CreateInfiniteQueryResult<TData, TError> {\n return createBaseQuery(\n createMemo(() => options()),\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\n InfiniteQueryObserver as typeof QueryObserver,\n queryClient,\n ) as CreateInfiniteQueryResult<TData, TError>\n}\n","import type {\n QueriesPlaceholderDataFunction,\n QueryClient,\n QueryFunction,\n QueryKey,\n DefaultError,\n} from '@tanstack/query-core'\nimport { notifyManager, QueriesObserver } from '@tanstack/query-core'\nimport { createComputed, onCleanup, onMount } from 'solid-js'\nimport { createStore, unwrap } from 'solid-js/store'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { CreateQueryResult, SolidQueryOptions } from './types'\n\n// This defines the `UseQueryOptions` that are accepted in `QueriesOptions` & `GetOptions`.\n// `placeholderData` function does not have a parameter\ntype CreateQueryOptionsForCreateQueries<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = Omit<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n 'placeholderData'\n> & {\n placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>\n}\n\n// Avoid TS depth-limit error in case of large array literal\ntype MAXIMUM_DEPTH = 20\n\ntype GetOptions<T> =\n // Part 1: responsible for applying explicit type parameter to function arguments, if object { queryFnData: TQueryFnData, error: TError, data: TData }\n T extends {\n queryFnData: infer TQueryFnData\n error?: infer TError\n data: infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryOptionsForCreateQueries<unknown, TError, TData>\n : // Part 2: responsible for applying explicit type parameter to function arguments, if tuple [TQueryFnData, TError, TData]\n T extends [infer TQueryFnData, infer TError, infer TData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData>\n : // Part 3: responsible for inferring and enforcing type if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey>\n select: (data: any) => infer TData\n }\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, Error, TData, TQueryKey>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, infer TQueryKey> }\n ? CreateQueryOptionsForCreateQueries<\n TQueryFnData,\n Error,\n TQueryFnData,\n TQueryKey\n >\n : // Fallback\n CreateQueryOptionsForCreateQueries\n\ntype GetResults<T> =\n // Part 1: responsible for mapping explicit type parameter to function result, if object\n T extends { queryFnData: any; error?: infer TError; data: infer TData }\n ? CreateQueryResult<TData, TError>\n : T extends { queryFnData: infer TQueryFnData; error?: infer TError }\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends { data: infer TData; error?: infer TError }\n ? CreateQueryResult<TData, TError>\n : // Part 2: responsible for mapping explicit type parameter to function result, if tuple\n T extends [any, infer TError, infer TData]\n ? CreateQueryResult<TData, TError>\n : T extends [infer TQueryFnData, infer TError]\n ? CreateQueryResult<TQueryFnData, TError>\n : T extends [infer TQueryFnData]\n ? CreateQueryResult<TQueryFnData>\n : // Part 3: responsible for mapping inferred type to results, if no explicit parameter was provided\n T extends {\n queryFn?: QueryFunction<unknown, any>\n select: (data: any) => infer TData\n }\n ? CreateQueryResult<TData>\n : T extends { queryFn?: QueryFunction<infer TQueryFnData, any> }\n ? CreateQueryResult<TQueryFnData>\n : // Fallback\n CreateQueryResult\n\n/**\n * QueriesOptions reducer recursively unwraps function arguments to infer/enforce type param\n */\nexport type QueriesOptions<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryOptionsForCreateQueries[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetOptions<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesOptions<[...Tail], [...Result, GetOptions<Head>], [...Depth, 1]>\n : unknown[] extends T\n ? T\n : // If T is *some* array but we couldn't assign unknown[] to it, then it must hold some known/homogenous type!\n // use this to infer the param types in the case of Array.map() argument\n T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n infer TQueryKey\n >[]\n ? CreateQueryOptionsForCreateQueries<TQueryFnData, TError, TData, TQueryKey>[]\n : // Fallback\n CreateQueryOptionsForCreateQueries[]\n\n/**\n * QueriesResults reducer recursively maps type param to results\n */\nexport type QueriesResults<\n T extends any[],\n Result extends any[] = [],\n Depth extends ReadonlyArray<number> = [],\n> = Depth['length'] extends MAXIMUM_DEPTH\n ? CreateQueryResult[]\n : T extends []\n ? []\n : T extends [infer Head]\n ? [...Result, GetResults<Head>]\n : T extends [infer Head, ...infer Tail]\n ? QueriesResults<[...Tail], [...Result, GetResults<Head>], [...Depth, 1]>\n : T extends CreateQueryOptionsForCreateQueries<\n infer TQueryFnData,\n infer TError,\n infer TData,\n any\n >[]\n ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results\n CreateQueryResult<\n unknown extends TData ? TQueryFnData : TData,\n unknown extends TError ? DefaultError : TError\n >[]\n : // Fallback\n CreateQueryResult[]\n\nexport function createQueries<T extends any[]>(\n queriesOptions: () => {\n queries: readonly [...QueriesOptions<T>]\n queryClient?: QueryClient\n },\n): QueriesResults<T> {\n const queryClient = useQueryClient(queriesOptions().queryClient)\n\n const defaultedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n\n const observer = new QueriesObserver(queryClient, defaultedQueries)\n\n const [state, setState] = createStore(\n observer.getOptimisticResult(defaultedQueries),\n )\n\n const unsubscribe = observer.subscribe((result) => {\n notifyManager.batchCalls(() => {\n setState(unwrap(result))\n })()\n })\n\n onCleanup(unsubscribe)\n\n onMount(() => {\n observer.setQueries(defaultedQueries, { listeners: false })\n })\n\n createComputed(() => {\n const updatedQueries = queriesOptions().queries.map((options) => {\n const defaultedOptions = queryClient.defaultQueryOptions(options)\n defaultedOptions._optimisticResults = 'optimistic'\n return defaultedOptions\n })\n observer.setQueries(updatedQueries)\n })\n\n return state as QueriesResults<T>\n}\n","import type { QueryClient, QueryKey, DefaultError } from '@tanstack/query-core'\nimport { QueryObserver } from '@tanstack/query-core'\nimport { createMemo } from 'solid-js'\nimport { createBaseQuery } from './createBaseQuery'\nimport type {\n CreateQueryOptions,\n CreateQueryResult,\n DefinedCreateQueryResult,\n FunctionedParams,\n SolidQueryOptions,\n} from './types'\n\ntype UndefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData?: undefined\n }\n>\n\ntype DefinedInitialDataOptions<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n> = FunctionedParams<\n SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey> & {\n initialData: TQueryFnData | (() => TQueryFnData)\n }\n>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UndefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): CreateQueryResult<TData, TError>\n\nexport function createQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: DefinedInitialDataOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n): DefinedCreateQueryResult<TData, TError>\nexport function createQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: CreateQueryOptions<TQueryFnData, TError, TData, TQueryKey>,\n queryClient?: () => QueryClient,\n) {\n return createBaseQuery(\n createMemo(() => options()),\n QueryObserver,\n queryClient,\n )\n}\n","import type { QueryClient, QueryFilters } from '@tanstack/query-core'\nimport type { Accessor } from 'solid-js'\nimport { createMemo, createSignal, onCleanup } from 'solid-js'\nimport { useQueryClient } from './QueryClientProvider'\n\ntype Options = () => {\n filters?: QueryFilters\n queryClient?: QueryClient\n}\n\nexport function useIsFetching(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const queryCache = createMemo(() => queryClient().getQueryCache())\n\n const [fetches, setFetches] = createSignal(\n queryClient().isFetching(options().filters),\n )\n\n const unsubscribe = queryCache().subscribe(() => {\n setFetches(queryClient().isFetching(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return fetches\n}\n","import type { MutationFilters, QueryClient } from '@tanstack/query-core'\nimport { useQueryClient } from './QueryClientProvider'\nimport type { Accessor } from 'solid-js'\nimport { createSignal, onCleanup, createMemo } from 'solid-js'\n\ntype Options = () => {\n filters?: MutationFilters\n queryClient?: QueryClient\n}\n\nexport function useIsMutating(options: Options = () => ({})): Accessor<number> {\n const queryClient = createMemo(() => useQueryClient(options().queryClient))\n const mutationCache = createMemo(() => queryClient().getMutationCache())\n\n const [mutations, setMutations] = createSignal(\n queryClient().isMutating(options().filters),\n )\n\n const unsubscribe = mutationCache().subscribe((_result) => {\n setMutations(queryClient().isMutating(options().filters))\n })\n\n onCleanup(unsubscribe)\n\n return mutations\n}\n"],"names":["notifyManager","setBatchNotifyFunction","batch","QueryClientContext","createContext","undefined","useQueryClient","queryClient","client","useContext","Error","shouldThrowError","throwError","params","createBaseQuery","options","Observer","createMemo","defaultedOptions","defaultQueryOptions","_optimisticResults","isServer","retry","throwErrors","observer","state","setState","createStore","getOptimisticResult","createClientSubscriber","subscribe","result","batchCalls","unwrappedResult","unwrap","queryResource","data","loading","mutate","refetch","unsubscribe","createResource","Promise","resolve","reject","isError","process","env","console","error","isSuccess","createServerSubscriber","isLoading","initialValue","ssrLoadFrom","initialData","deferStream","onHydrated","_k","info","value","hydrate","queries","queryKey","queryHash","newOptions","staleTime","refetchOnMount","setOptions","onCleanup","onMount","listeners","createComputed","on","status","isFetching","getCurrentQuery","Proxy","get","target","prop","Reflect","noop","props","mount","unmount","_$createComponent","createComponent","Provider","children","InfiniteQueryObserver","MutationObserver","variables","mutateOptions","catch","getCurrentResult","mutateAsync","queriesOptions","defaultedQueries","map","QueriesObserver","setQueries","updatedQueries","QueryObserver","queryCache","getQueryCache","fetches","setFetches","createSignal","filters","mutationCache","getMutationCache","mutations","setMutations","isMutating","_result"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tanstack/solid-query",
3
- "version": "5.0.0-alpha.1",
3
+ "version": "5.0.0-alpha.3",
4
4
  "description": "Primitives for managing, caching and syncing asynchronous and remote data in Solid",
5
5
  "author": "tannerlinsley",
6
6
  "license": "MIT",
@@ -43,7 +43,7 @@
43
43
  "solid-jest": "^0.2.0"
44
44
  },
45
45
  "dependencies": {
46
- "@tanstack/query-core": "5.0.0-alpha.1"
46
+ "@tanstack/query-core": "5.0.0-alpha.3"
47
47
  },
48
48
  "peerDependencies": {
49
49
  "solid-js": "^1.6.2"
@@ -2,7 +2,7 @@ import type {
2
2
  QueryObserver,
3
3
  QueryKey,
4
4
  QueryClient,
5
- RegisteredError,
5
+ DefaultError,
6
6
  InfiniteData,
7
7
  } from '@tanstack/query-core'
8
8
  import { InfiniteQueryObserver } from '@tanstack/query-core'
@@ -15,7 +15,7 @@ import { createMemo } from 'solid-js'
15
15
 
16
16
  export function createInfiniteQuery<
17
17
  TQueryFnData,
18
- TError = RegisteredError,
18
+ TError = DefaultError,
19
19
  TData = InfiniteData<TQueryFnData>,
20
20
  TQueryKey extends QueryKey = QueryKey,
21
21
  TPageParam = unknown,
@@ -1,4 +1,4 @@
1
- import type { QueryClient, RegisteredError } from '@tanstack/query-core'
1
+ import type { QueryClient, DefaultError } from '@tanstack/query-core'
2
2
  import { MutationObserver } from '@tanstack/query-core'
3
3
  import { useQueryClient } from './QueryClientProvider'
4
4
  import type {
@@ -13,7 +13,7 @@ import { shouldThrowError } from './utils'
13
13
  // HOOK
14
14
  export function createMutation<
15
15
  TData = unknown,
16
- TError = RegisteredError,
16
+ TError = DefaultError,
17
17
  TVariables = void,
18
18
  TContext = unknown,
19
19
  >(
@@ -3,7 +3,7 @@ import type {
3
3
  QueryClient,
4
4
  QueryFunction,
5
5
  QueryKey,
6
- RegisteredError,
6
+ DefaultError,
7
7
  } from '@tanstack/query-core'
8
8
  import { notifyManager, QueriesObserver } from '@tanstack/query-core'
9
9
  import { createComputed, onCleanup, onMount } from 'solid-js'
@@ -15,7 +15,7 @@ import type { CreateQueryResult, SolidQueryOptions } from './types'
15
15
  // `placeholderData` function does not have a parameter
16
16
  type CreateQueryOptionsForCreateQueries<
17
17
  TQueryFnData = unknown,
18
- TError = RegisteredError,
18
+ TError = DefaultError,
19
19
  TData = TQueryFnData,
20
20
  TQueryKey extends QueryKey = QueryKey,
21
21
  > = Omit<
@@ -142,7 +142,7 @@ export type QueriesResults<
142
142
  ? // Dynamic-size (homogenous) UseQueryOptions array: map directly to array of results
143
143
  CreateQueryResult<
144
144
  unknown extends TData ? TQueryFnData : TData,
145
- unknown extends TError ? RegisteredError : TError
145
+ unknown extends TError ? DefaultError : TError
146
146
  >[]
147
147
  : // Fallback
148
148
  CreateQueryResult[]
@@ -1,8 +1,4 @@
1
- import type {
2
- QueryClient,
3
- QueryKey,
4
- RegisteredError,
5
- } from '@tanstack/query-core'
1
+ import type { QueryClient, QueryKey, DefaultError } from '@tanstack/query-core'
6
2
  import { QueryObserver } from '@tanstack/query-core'
7
3
  import { createMemo } from 'solid-js'
8
4
  import { createBaseQuery } from './createBaseQuery'
@@ -16,7 +12,7 @@ import type {
16
12
 
17
13
  type UndefinedInitialDataOptions<
18
14
  TQueryFnData = unknown,
19
- TError = RegisteredError,
15
+ TError = DefaultError,
20
16
  TData = TQueryFnData,
21
17
  TQueryKey extends QueryKey = QueryKey,
22
18
  > = FunctionedParams<
@@ -27,7 +23,7 @@ type UndefinedInitialDataOptions<
27
23
 
28
24
  type DefinedInitialDataOptions<
29
25
  TQueryFnData = unknown,
30
- TError = RegisteredError,
26
+ TError = DefaultError,
31
27
  TData = TQueryFnData,
32
28
  TQueryKey extends QueryKey = QueryKey,
33
29
  > = FunctionedParams<
@@ -38,7 +34,7 @@ type DefinedInitialDataOptions<
38
34
 
39
35
  export function createQuery<
40
36
  TQueryFnData = unknown,
41
- TError = RegisteredError,
37
+ TError = DefaultError,
42
38
  TData = TQueryFnData,
43
39
  TQueryKey extends QueryKey = QueryKey,
44
40
  >(
@@ -48,7 +44,7 @@ export function createQuery<
48
44
 
49
45
  export function createQuery<
50
46
  TQueryFnData = unknown,
51
- TError = RegisteredError,
47
+ TError = DefaultError,
52
48
  TData = TQueryFnData,
53
49
  TQueryKey extends QueryKey = QueryKey,
54
50
  >(
@@ -57,7 +53,7 @@ export function createQuery<
57
53
  ): DefinedCreateQueryResult<TData, TError>
58
54
  export function createQuery<
59
55
  TQueryFnData,
60
- TError = RegisteredError,
56
+ TError = DefaultError,
61
57
  TData = TQueryFnData,
62
58
  TQueryKey extends QueryKey = QueryKey,
63
59
  >(
package/src/types.ts CHANGED
@@ -11,14 +11,14 @@ import type {
11
11
  InfiniteQueryObserverOptions,
12
12
  InfiniteQueryObserverResult,
13
13
  WithRequired,
14
- RegisteredError,
14
+ DefaultError,
15
15
  } from '@tanstack/query-core'
16
16
 
17
17
  export type FunctionedParams<T> = () => T
18
18
 
19
19
  export interface CreateBaseQueryOptions<
20
20
  TQueryFnData = unknown,
21
- TError = RegisteredError,
21
+ TError = DefaultError,
22
22
  TData = TQueryFnData,
23
23
  TQueryData = TQueryFnData,
24
24
  TQueryKey extends QueryKey = QueryKey,
@@ -31,7 +31,7 @@ export interface CreateBaseQueryOptions<
31
31
 
32
32
  export interface SolidQueryOptions<
33
33
  TQueryFnData = unknown,
34
- TError = RegisteredError,
34
+ TError = DefaultError,
35
35
  TData = TQueryFnData,
36
36
  TQueryKey extends QueryKey = QueryKey,
37
37
  > extends WithRequired<
@@ -47,7 +47,7 @@ export interface SolidQueryOptions<
47
47
 
48
48
  export type CreateQueryOptions<
49
49
  TQueryFnData = unknown,
50
- TError = RegisteredError,
50
+ TError = DefaultError,
51
51
  TData = TQueryFnData,
52
52
  TQueryKey extends QueryKey = QueryKey,
53
53
  > = FunctionedParams<SolidQueryOptions<TQueryFnData, TError, TData, TQueryKey>>
@@ -56,28 +56,28 @@ export type CreateQueryOptions<
56
56
 
57
57
  export type CreateBaseQueryResult<
58
58
  TData = unknown,
59
- TError = RegisteredError,
59
+ TError = DefaultError,
60
60
  > = QueryObserverResult<TData, TError>
61
61
 
62
62
  export type CreateQueryResult<
63
63
  TData = unknown,
64
- TError = RegisteredError,
64
+ TError = DefaultError,
65
65
  > = CreateBaseQueryResult<TData, TError>
66
66
 
67
67
  export type DefinedCreateBaseQueryResult<
68
68
  TData = unknown,
69
- TError = RegisteredError,
69
+ TError = DefaultError,
70
70
  > = DefinedQueryObserverResult<TData, TError>
71
71
 
72
72
  export type DefinedCreateQueryResult<
73
73
  TData = unknown,
74
- TError = RegisteredError,
74
+ TError = DefaultError,
75
75
  > = DefinedCreateBaseQueryResult<TData, TError>
76
76
 
77
77
  /* --- Create Infinite Queries Types --- */
78
78
  export interface SolidInfiniteQueryOptions<
79
79
  TQueryFnData = unknown,
80
- TError = RegisteredError,
80
+ TError = DefaultError,
81
81
  TData = TQueryFnData,
82
82
  TQueryData = TQueryFnData,
83
83
  TQueryKey extends QueryKey = QueryKey,
@@ -99,7 +99,7 @@ export interface SolidInfiniteQueryOptions<
99
99
 
100
100
  export type CreateInfiniteQueryOptions<
101
101
  TQueryFnData = unknown,
102
- TError = RegisteredError,
102
+ TError = DefaultError,
103
103
  TData = TQueryFnData,
104
104
  TQueryKey extends QueryKey = QueryKey,
105
105
  TPageParam = unknown,
@@ -116,13 +116,13 @@ export type CreateInfiniteQueryOptions<
116
116
 
117
117
  export type CreateInfiniteQueryResult<
118
118
  TData = unknown,
119
- TError = RegisteredError,
119
+ TError = DefaultError,
120
120
  > = InfiniteQueryObserverResult<TData, TError>
121
121
 
122
122
  /* --- Create Mutation Types --- */
123
123
  export interface SolidMutationOptions<
124
124
  TData = unknown,
125
- TError = RegisteredError,
125
+ TError = DefaultError,
126
126
  TVariables = void,
127
127
  TContext = unknown,
128
128
  > extends Omit<
@@ -132,14 +132,14 @@ export interface SolidMutationOptions<
132
132
 
133
133
  export type CreateMutationOptions<
134
134
  TData = unknown,
135
- TError = RegisteredError,
135
+ TError = DefaultError,
136
136
  TVariables = void,
137
137
  TContext = unknown,
138
138
  > = FunctionedParams<SolidMutationOptions<TData, TError, TVariables, TContext>>
139
139
 
140
140
  export type CreateMutateFunction<
141
141
  TData = unknown,
142
- TError = RegisteredError,
142
+ TError = DefaultError,
143
143
  TVariables = void,
144
144
  TContext = unknown,
145
145
  > = (
@@ -148,14 +148,14 @@ export type CreateMutateFunction<
148
148
 
149
149
  export type CreateMutateAsyncFunction<
150
150
  TData = unknown,
151
- TError = RegisteredError,
151
+ TError = DefaultError,
152
152
  TVariables = void,
153
153
  TContext = unknown,
154
154
  > = MutateFunction<TData, TError, TVariables, TContext>
155
155
 
156
156
  export type CreateBaseMutationResult<
157
157
  TData = unknown,
158
- TError = RegisteredError,
158
+ TError = DefaultError,
159
159
  TVariables = unknown,
160
160
  TContext = unknown,
161
161
  > = Override<
@@ -167,7 +167,7 @@ export type CreateBaseMutationResult<
167
167
 
168
168
  export type CreateMutationResult<
169
169
  TData = unknown,
170
- TError = RegisteredError,
170
+ TError = DefaultError,
171
171
  TVariables = unknown,
172
172
  TContext = unknown,
173
173
  > = CreateBaseMutationResult<TData, TError, TVariables, TContext>