{"version":3,"file":"QueryErrorResetBoundary.mjs","sources":["../../../src/react/QueryErrorResetBoundary.ts"],"sourcesContent":["import * as React from 'react'\n\nimport { isFunction } from '../vanilla/utils'\n\n// CONTEXT\n\nexport interface QueryErrorResetBoundaryValue {\n  clearReset: () => void\n  isReset: () => boolean\n  reset: () => void\n}\n\nconst createValue = (): QueryErrorResetBoundaryValue => {\n  let isReset = false\n  return {\n    clearReset: () => {\n      isReset = false\n    },\n    reset: () => {\n      isReset = true\n    },\n    isReset: () => {\n      return isReset\n    },\n  }\n}\n\nconst QueryErrorResetBoundaryContext = React.createContext(createValue())\n\n// HOOK\n\nexport const useQueryErrorResetBoundary = () =>\n  React.useContext(QueryErrorResetBoundaryContext)\n\n// COMPONENT\n\nexport interface QueryErrorResetBoundaryProps {\n  children:\n    | ((value: QueryErrorResetBoundaryValue) => React.ReactNode)\n    | React.ReactNode\n}\n\nexport const QueryErrorResetBoundary = ({\n  children,\n}: QueryErrorResetBoundaryProps) => {\n  const [value] = React.useState(() => createValue())\n\n  return React.createElement(\n    QueryErrorResetBoundaryContext.Provider,\n    {\n      value,\n    },\n    isFunction(children) ? children(value) : children\n  )\n}\n"],"names":["createValue","isReset","clearReset","reset","QueryErrorResetBoundaryContext","React","createContext","useQueryErrorResetBoundary","useContext","QueryErrorResetBoundary","children","value","useState","createElement","Provider","isFunction"],"mappings":";;;AAIA;;AAQA,MAAMA,WAAW,GAAGA,MAAoC;EACtD,IAAIC,OAAO,GAAG,KAAK,CAAA;EACnB,OAAO;IACLC,UAAU,EAAEA,MAAM;AAChBD,MAAAA,OAAO,GAAG,KAAK,CAAA;KAChB;IACDE,KAAK,EAAEA,MAAM;AACXF,MAAAA,OAAO,GAAG,IAAI,CAAA;KACf;IACDA,OAAO,EAAEA,MAAM;AACb,MAAA,OAAOA,OAAO,CAAA;AAChB,KAAA;GACD,CAAA;AACH,CAAC,CAAA;AAED,MAAMG,8BAA8B,GAAGC,KAAK,CAACC,aAAa,CAACN,WAAW,EAAE,CAAC,CAAA;;AAEzE;;AAEO,MAAMO,0BAA0B,GAAGA,MACxCF,KAAK,CAACG,UAAU,CAACJ,8BAA8B,EAAC;;AAElD;;AAQO,MAAMK,uBAAuB,GAAGA,CAAC;AACtCC,EAAAA,QAAAA;AAC4B,CAAC,KAAK;AAClC,EAAA,MAAM,CAACC,KAAK,CAAC,GAAGN,KAAK,CAACO,QAAQ,CAAC,MAAMZ,WAAW,EAAE,CAAC,CAAA;AAEnD,EAAA,OAAOK,KAAK,CAACQ,aAAa,CACxBT,8BAA8B,CAACU,QAAQ,EACvC;AACEH,IAAAA,KAAAA;AACF,GAAC,EACDI,UAAU,CAACL,QAAQ,CAAC,GAAGA,QAAQ,CAACC,KAAK,CAAC,GAAGD,QAC3C,CAAC,CAAA;AACH;;;;"}