{"version":3,"file":"QueryClientProvider.mjs","sources":["../../../src/react/QueryClientProvider.ts"],"sourcesContent":["import * as React from 'react'\n\nimport { QueryClient, createQueryClient } from '../vanilla'\n\nconst QueryClientContext = React.createContext<QueryClient>(createQueryClient())\n\nexport const useQueryClient = (queryClient?: QueryClient): QueryClient => {\n  const client = React.useContext(QueryClientContext)\n  return queryClient ?? client\n}\n\nexport interface QueryClientProviderProps {\n  client: QueryClient\n  children?: React.ReactNode\n}\n\nexport const QueryClientProvider = ({\n  client,\n  children,\n}: QueryClientProviderProps): JSX.Element => {\n  React.useEffect(() => {\n    client.mount()\n    return () => {\n      client.unmount()\n    }\n  }, [client])\n\n  return React.createElement(\n    QueryClientContext.Provider,\n    {\n      value: client,\n    },\n    children\n  )\n}\n"],"names":["QueryClientContext","React","createContext","createQueryClient","useQueryClient","queryClient","client","useContext","QueryClientProvider","children","useEffect","mount","unmount","createElement","Provider","value"],"mappings":";;;AAIA,MAAMA,kBAAkB,GAAGC,KAAK,CAACC,aAAa,CAAcC,iBAAiB,EAAE,CAAC,CAAA;AAEnEC,MAAAA,cAAc,GAAIC,WAAyB,IAAkB;AACxE,EAAA,MAAMC,MAAM,GAAGL,KAAK,CAACM,UAAU,CAACP,kBAAkB,CAAC,CAAA;AACnD,EAAA,OAAOK,WAAW,IAAA,IAAA,GAAXA,WAAW,GAAIC,MAAM,CAAA;AAC9B,EAAC;AAOM,MAAME,mBAAmB,GAAGA,CAAC;EAClCF,MAAM;AACNG,EAAAA,QAAAA;AACwB,CAAC,KAAkB;EAC3CR,KAAK,CAACS,SAAS,CAAC,MAAM;IACpBJ,MAAM,CAACK,KAAK,EAAE,CAAA;AACd,IAAA,OAAO,MAAM;MACXL,MAAM,CAACM,OAAO,EAAE,CAAA;KACjB,CAAA;AACH,GAAC,EAAE,CAACN,MAAM,CAAC,CAAC,CAAA;AAEZ,EAAA,OAAOL,KAAK,CAACY,aAAa,CACxBb,kBAAkB,CAACc,QAAQ,EAC3B;AACEC,IAAAA,KAAK,EAAET,MAAAA;GACR,EACDG,QACF,CAAC,CAAA;AACH;;;;"}