UNPKG

@tanstack/react-query

Version:

Hooks for managing, caching and syncing asynchronous and remote data in React

1 lines 2.3 kB
{"version":3,"file":"useIsMutating.mjs","sources":["../../src/useIsMutating.ts"],"sourcesContent":["import 'client-only'\nimport * as React from 'react'\nimport { useSyncExternalStore } from './useSyncExternalStore'\n\nimport type { MutationKey, MutationFilters } from '@tanstack/query-core'\nimport { notifyManager, parseMutationFilterArgs } from '@tanstack/query-core'\nimport type { ContextOptions } from './types'\nimport { useQueryClient } from './QueryClientProvider'\n\ninterface Options extends ContextOptions {}\n\nexport function useIsMutating(\n filters?: MutationFilters,\n options?: Options,\n): number\nexport function useIsMutating(\n mutationKey?: MutationKey,\n filters?: Omit<MutationFilters, 'mutationKey'>,\n options?: Options,\n): number\nexport function useIsMutating(\n arg1?: MutationKey | MutationFilters,\n arg2?: Omit<MutationFilters, 'mutationKey'> | Options,\n arg3?: Options,\n): number {\n const [filters, options = {}] = parseMutationFilterArgs(arg1, arg2, arg3)\n\n const queryClient = useQueryClient({ context: options.context })\n const mutationCache = queryClient.getMutationCache()\n\n return useSyncExternalStore(\n React.useCallback(\n (onStoreChange) =>\n mutationCache.subscribe(notifyManager.batchCalls(onStoreChange)),\n [mutationCache],\n ),\n () => queryClient.isMutating(filters),\n () => queryClient.isMutating(filters),\n )\n}\n"],"names":["useIsMutating","arg1","arg2","arg3","filters","options","parseMutationFilterArgs","queryClient","useQueryClient","context","mutationCache","getMutationCache","useSyncExternalStore","React","useCallback","onStoreChange","subscribe","notifyManager","batchCalls","isMutating"],"mappings":";;;;;AAoBO,SAASA,aAAT,CACLC,IADK,EAELC,IAFK,EAGLC,IAHK,EAIG;AACR,EAAA,MAAM,CAACC,OAAD,EAAUC,OAAO,GAAG,EAApB,CAAA,GAA0BC,uBAAuB,CAACL,IAAD,EAAOC,IAAP,EAAaC,IAAb,CAAvD,CAAA;EAEA,MAAMI,WAAW,GAAGC,cAAc,CAAC;IAAEC,OAAO,EAAEJ,OAAO,CAACI,OAAAA;AAAnB,GAAD,CAAlC,CAAA;AACA,EAAA,MAAMC,aAAa,GAAGH,WAAW,CAACI,gBAAZ,EAAtB,CAAA;AAEA,EAAA,OAAOC,oBAAoB,CACzBC,KAAK,CAACC,WAAN,CACGC,aAAD,IACEL,aAAa,CAACM,SAAd,CAAwBC,aAAa,CAACC,UAAd,CAAyBH,aAAzB,CAAxB,CAFJ,EAGE,CAACL,aAAD,CAHF,CADyB,EAMzB,MAAMH,WAAW,CAACY,UAAZ,CAAuBf,OAAvB,CANmB,EAOzB,MAAMG,WAAW,CAACY,UAAZ,CAAuBf,OAAvB,CAPmB,CAA3B,CAAA;AASD;;;;"}