@tanstack/react-query-persist-client 5.72.2 → 5.73.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.
- package/build/legacy/PersistQueryClientProvider.cjs +10 -8
- package/build/legacy/PersistQueryClientProvider.cjs.map +1 -1
- package/build/legacy/PersistQueryClientProvider.d.cts +2 -1
- package/build/legacy/PersistQueryClientProvider.d.ts +2 -1
- package/build/legacy/PersistQueryClientProvider.js +10 -8
- package/build/legacy/PersistQueryClientProvider.js.map +1 -1
- package/build/modern/PersistQueryClientProvider.cjs +5 -8
- package/build/modern/PersistQueryClientProvider.cjs.map +1 -1
- package/build/modern/PersistQueryClientProvider.d.cts +2 -1
- package/build/modern/PersistQueryClientProvider.d.ts +2 -1
- package/build/modern/PersistQueryClientProvider.js +5 -8
- package/build/modern/PersistQueryClientProvider.js.map +1 -1
- package/package.json +4 -4
- package/src/PersistQueryClientProvider.tsx +9 -8
|
@@ -42,13 +42,14 @@ var PersistQueryClientProvider = ({
|
|
|
42
42
|
children,
|
|
43
43
|
persistOptions,
|
|
44
44
|
onSuccess,
|
|
45
|
+
onError,
|
|
45
46
|
...props
|
|
46
47
|
}) => {
|
|
47
48
|
const [isRestoring, setIsRestoring] = React.useState(true);
|
|
48
|
-
const refs = React.useRef({ persistOptions, onSuccess });
|
|
49
|
+
const refs = React.useRef({ persistOptions, onSuccess, onError });
|
|
49
50
|
const didRestore = React.useRef(false);
|
|
50
51
|
React.useEffect(() => {
|
|
51
|
-
refs.current = { persistOptions, onSuccess };
|
|
52
|
+
refs.current = { persistOptions, onSuccess, onError };
|
|
52
53
|
});
|
|
53
54
|
React.useEffect(() => {
|
|
54
55
|
const options = {
|
|
@@ -57,13 +58,14 @@ var PersistQueryClientProvider = ({
|
|
|
57
58
|
};
|
|
58
59
|
if (!didRestore.current) {
|
|
59
60
|
didRestore.current = true;
|
|
60
|
-
(0, import_query_persist_client_core.persistQueryClientRestore)(options).then(
|
|
61
|
+
(0, import_query_persist_client_core.persistQueryClientRestore)(options).then(() => {
|
|
61
62
|
var _a, _b;
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
63
|
+
return (_b = (_a = refs.current).onSuccess) == null ? void 0 : _b.call(_a);
|
|
64
|
+
}).catch(() => {
|
|
65
|
+
var _a, _b;
|
|
66
|
+
return (_b = (_a = refs.current).onError) == null ? void 0 : _b.call(_a);
|
|
67
|
+
}).finally(() => {
|
|
68
|
+
setIsRestoring(false);
|
|
67
69
|
});
|
|
68
70
|
}
|
|
69
71
|
return isRestoring ? void 0 : (0, import_query_persist_client_core.persistQueryClientSubscribe)(options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/PersistQueryClientProvider.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nimport {\n persistQueryClientRestore,\n persistQueryClientSubscribe,\n} from '@tanstack/query-persist-client-core'\nimport { IsRestoringProvider, QueryClientProvider } from '@tanstack/react-query'\nimport type { PersistQueryClientOptions } from '@tanstack/query-persist-client-core'\nimport type { OmitKeyof, QueryClientProviderProps } from '@tanstack/react-query'\n\nexport type PersistQueryClientProviderProps = QueryClientProviderProps & {\n persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>\n onSuccess?: () => Promise<unknown> | unknown\n}\n\nexport const PersistQueryClientProvider = ({\n children,\n persistOptions,\n onSuccess,\n ...props\n}: PersistQueryClientProviderProps): React.JSX.Element => {\n const [isRestoring, setIsRestoring] = React.useState(true)\n const refs = React.useRef({ persistOptions, onSuccess })\n const didRestore = React.useRef(false)\n\n React.useEffect(() => {\n refs.current = { persistOptions, onSuccess }\n })\n\n React.useEffect(() => {\n const options = {\n ...refs.current.persistOptions,\n queryClient: props.client,\n }\n if (!didRestore.current) {\n didRestore.current = true\n persistQueryClientRestore(options).then(
|
|
1
|
+
{"version":3,"sources":["../../src/PersistQueryClientProvider.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nimport {\n persistQueryClientRestore,\n persistQueryClientSubscribe,\n} from '@tanstack/query-persist-client-core'\nimport { IsRestoringProvider, QueryClientProvider } from '@tanstack/react-query'\nimport type { PersistQueryClientOptions } from '@tanstack/query-persist-client-core'\nimport type { OmitKeyof, QueryClientProviderProps } from '@tanstack/react-query'\n\nexport type PersistQueryClientProviderProps = QueryClientProviderProps & {\n persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>\n onSuccess?: () => Promise<unknown> | unknown\n onError?: () => Promise<unknown> | unknown\n}\n\nexport const PersistQueryClientProvider = ({\n children,\n persistOptions,\n onSuccess,\n onError,\n ...props\n}: PersistQueryClientProviderProps): React.JSX.Element => {\n const [isRestoring, setIsRestoring] = React.useState(true)\n const refs = React.useRef({ persistOptions, onSuccess, onError })\n const didRestore = React.useRef(false)\n\n React.useEffect(() => {\n refs.current = { persistOptions, onSuccess, onError }\n })\n\n React.useEffect(() => {\n const options = {\n ...refs.current.persistOptions,\n queryClient: props.client,\n }\n if (!didRestore.current) {\n didRestore.current = true\n persistQueryClientRestore(options)\n .then(() => refs.current.onSuccess?.())\n .catch(() => refs.current.onError?.())\n .finally(() => {\n setIsRestoring(false)\n })\n }\n return isRestoring ? undefined : persistQueryClientSubscribe(options)\n }, [props.client, isRestoring])\n\n return (\n <QueryClientProvider {...props}>\n <IsRestoringProvider value={isRestoring}>{children}</IsRestoringProvider>\n </QueryClientProvider>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,YAAuB;AAEvB,uCAGO;AACP,yBAAyD;AA4CnD;AAlCC,IAAM,6BAA6B,CAAC;AAAA,EACzC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAA0D;AACxD,QAAM,CAAC,aAAa,cAAc,IAAU,eAAS,IAAI;AACzD,QAAM,OAAa,aAAO,EAAE,gBAAgB,WAAW,QAAQ,CAAC;AAChE,QAAM,aAAmB,aAAO,KAAK;AAErC,EAAM,gBAAU,MAAM;AACpB,SAAK,UAAU,EAAE,gBAAgB,WAAW,QAAQ;AAAA,EACtD,CAAC;AAED,EAAM,gBAAU,MAAM;AACpB,UAAM,UAAU;AAAA,MACd,GAAG,KAAK,QAAQ;AAAA,MAChB,aAAa,MAAM;AAAA,IACrB;AACA,QAAI,CAAC,WAAW,SAAS;AACvB,iBAAW,UAAU;AACrB,sEAA0B,OAAO,EAC9B,KAAK,MAAG;AAxCjB;AAwCoB,gCAAK,SAAQ,cAAb;AAAA,OAA0B,EACrC,MAAM,MAAG;AAzClB;AAyCqB,gCAAK,SAAQ,YAAb;AAAA,OAAwB,EACpC,QAAQ,MAAM;AACb,uBAAe,KAAK;AAAA,MACtB,CAAC;AAAA,IACL;AACA,WAAO,cAAc,aAAY,8DAA4B,OAAO;AAAA,EACtE,GAAG,CAAC,MAAM,QAAQ,WAAW,CAAC;AAE9B,SACE,4CAAC,0CAAqB,GAAG,OACvB,sDAAC,0CAAoB,OAAO,aAAc,UAAS,GACrD;AAEJ;","names":[]}
|
|
@@ -5,7 +5,8 @@ import { QueryClientProviderProps, OmitKeyof } from '@tanstack/react-query';
|
|
|
5
5
|
type PersistQueryClientProviderProps = QueryClientProviderProps & {
|
|
6
6
|
persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>;
|
|
7
7
|
onSuccess?: () => Promise<unknown> | unknown;
|
|
8
|
+
onError?: () => Promise<unknown> | unknown;
|
|
8
9
|
};
|
|
9
|
-
declare const PersistQueryClientProvider: ({ children, persistOptions, onSuccess, ...props }: PersistQueryClientProviderProps) => React.JSX.Element;
|
|
10
|
+
declare const PersistQueryClientProvider: ({ children, persistOptions, onSuccess, onError, ...props }: PersistQueryClientProviderProps) => React.JSX.Element;
|
|
10
11
|
|
|
11
12
|
export { PersistQueryClientProvider, type PersistQueryClientProviderProps };
|
|
@@ -5,7 +5,8 @@ import { QueryClientProviderProps, OmitKeyof } from '@tanstack/react-query';
|
|
|
5
5
|
type PersistQueryClientProviderProps = QueryClientProviderProps & {
|
|
6
6
|
persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>;
|
|
7
7
|
onSuccess?: () => Promise<unknown> | unknown;
|
|
8
|
+
onError?: () => Promise<unknown> | unknown;
|
|
8
9
|
};
|
|
9
|
-
declare const PersistQueryClientProvider: ({ children, persistOptions, onSuccess, ...props }: PersistQueryClientProviderProps) => React.JSX.Element;
|
|
10
|
+
declare const PersistQueryClientProvider: ({ children, persistOptions, onSuccess, onError, ...props }: PersistQueryClientProviderProps) => React.JSX.Element;
|
|
10
11
|
|
|
11
12
|
export { PersistQueryClientProvider, type PersistQueryClientProviderProps };
|
|
@@ -12,13 +12,14 @@ var PersistQueryClientProvider = ({
|
|
|
12
12
|
children,
|
|
13
13
|
persistOptions,
|
|
14
14
|
onSuccess,
|
|
15
|
+
onError,
|
|
15
16
|
...props
|
|
16
17
|
}) => {
|
|
17
18
|
const [isRestoring, setIsRestoring] = React.useState(true);
|
|
18
|
-
const refs = React.useRef({ persistOptions, onSuccess });
|
|
19
|
+
const refs = React.useRef({ persistOptions, onSuccess, onError });
|
|
19
20
|
const didRestore = React.useRef(false);
|
|
20
21
|
React.useEffect(() => {
|
|
21
|
-
refs.current = { persistOptions, onSuccess };
|
|
22
|
+
refs.current = { persistOptions, onSuccess, onError };
|
|
22
23
|
});
|
|
23
24
|
React.useEffect(() => {
|
|
24
25
|
const options = {
|
|
@@ -27,13 +28,14 @@ var PersistQueryClientProvider = ({
|
|
|
27
28
|
};
|
|
28
29
|
if (!didRestore.current) {
|
|
29
30
|
didRestore.current = true;
|
|
30
|
-
persistQueryClientRestore(options).then(
|
|
31
|
+
persistQueryClientRestore(options).then(() => {
|
|
31
32
|
var _a, _b;
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
return (_b = (_a = refs.current).onSuccess) == null ? void 0 : _b.call(_a);
|
|
34
|
+
}).catch(() => {
|
|
35
|
+
var _a, _b;
|
|
36
|
+
return (_b = (_a = refs.current).onError) == null ? void 0 : _b.call(_a);
|
|
37
|
+
}).finally(() => {
|
|
38
|
+
setIsRestoring(false);
|
|
37
39
|
});
|
|
38
40
|
}
|
|
39
41
|
return isRestoring ? void 0 : persistQueryClientSubscribe(options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/PersistQueryClientProvider.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nimport {\n persistQueryClientRestore,\n persistQueryClientSubscribe,\n} from '@tanstack/query-persist-client-core'\nimport { IsRestoringProvider, QueryClientProvider } from '@tanstack/react-query'\nimport type { PersistQueryClientOptions } from '@tanstack/query-persist-client-core'\nimport type { OmitKeyof, QueryClientProviderProps } from '@tanstack/react-query'\n\nexport type PersistQueryClientProviderProps = QueryClientProviderProps & {\n persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>\n onSuccess?: () => Promise<unknown> | unknown\n}\n\nexport const PersistQueryClientProvider = ({\n children,\n persistOptions,\n onSuccess,\n ...props\n}: PersistQueryClientProviderProps): React.JSX.Element => {\n const [isRestoring, setIsRestoring] = React.useState(true)\n const refs = React.useRef({ persistOptions, onSuccess })\n const didRestore = React.useRef(false)\n\n React.useEffect(() => {\n refs.current = { persistOptions, onSuccess }\n })\n\n React.useEffect(() => {\n const options = {\n ...refs.current.persistOptions,\n queryClient: props.client,\n }\n if (!didRestore.current) {\n didRestore.current = true\n persistQueryClientRestore(options).then(
|
|
1
|
+
{"version":3,"sources":["../../src/PersistQueryClientProvider.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nimport {\n persistQueryClientRestore,\n persistQueryClientSubscribe,\n} from '@tanstack/query-persist-client-core'\nimport { IsRestoringProvider, QueryClientProvider } from '@tanstack/react-query'\nimport type { PersistQueryClientOptions } from '@tanstack/query-persist-client-core'\nimport type { OmitKeyof, QueryClientProviderProps } from '@tanstack/react-query'\n\nexport type PersistQueryClientProviderProps = QueryClientProviderProps & {\n persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>\n onSuccess?: () => Promise<unknown> | unknown\n onError?: () => Promise<unknown> | unknown\n}\n\nexport const PersistQueryClientProvider = ({\n children,\n persistOptions,\n onSuccess,\n onError,\n ...props\n}: PersistQueryClientProviderProps): React.JSX.Element => {\n const [isRestoring, setIsRestoring] = React.useState(true)\n const refs = React.useRef({ persistOptions, onSuccess, onError })\n const didRestore = React.useRef(false)\n\n React.useEffect(() => {\n refs.current = { persistOptions, onSuccess, onError }\n })\n\n React.useEffect(() => {\n const options = {\n ...refs.current.persistOptions,\n queryClient: props.client,\n }\n if (!didRestore.current) {\n didRestore.current = true\n persistQueryClientRestore(options)\n .then(() => refs.current.onSuccess?.())\n .catch(() => refs.current.onError?.())\n .finally(() => {\n setIsRestoring(false)\n })\n }\n return isRestoring ? undefined : persistQueryClientSubscribe(options)\n }, [props.client, isRestoring])\n\n return (\n <QueryClientProvider {...props}>\n <IsRestoringProvider value={isRestoring}>{children}</IsRestoringProvider>\n </QueryClientProvider>\n )\n}\n"],"mappings":";;;AACA,YAAY,WAAW;AAEvB;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,qBAAqB,2BAA2B;AA4CnD;AAlCC,IAAM,6BAA6B,CAAC;AAAA,EACzC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAA0D;AACxD,QAAM,CAAC,aAAa,cAAc,IAAU,eAAS,IAAI;AACzD,QAAM,OAAa,aAAO,EAAE,gBAAgB,WAAW,QAAQ,CAAC;AAChE,QAAM,aAAmB,aAAO,KAAK;AAErC,EAAM,gBAAU,MAAM;AACpB,SAAK,UAAU,EAAE,gBAAgB,WAAW,QAAQ;AAAA,EACtD,CAAC;AAED,EAAM,gBAAU,MAAM;AACpB,UAAM,UAAU;AAAA,MACd,GAAG,KAAK,QAAQ;AAAA,MAChB,aAAa,MAAM;AAAA,IACrB;AACA,QAAI,CAAC,WAAW,SAAS;AACvB,iBAAW,UAAU;AACrB,gCAA0B,OAAO,EAC9B,KAAK,MAAG;AAxCjB;AAwCoB,gCAAK,SAAQ,cAAb;AAAA,OAA0B,EACrC,MAAM,MAAG;AAzClB;AAyCqB,gCAAK,SAAQ,YAAb;AAAA,OAAwB,EACpC,QAAQ,MAAM;AACb,uBAAe,KAAK;AAAA,MACtB,CAAC;AAAA,IACL;AACA,WAAO,cAAc,SAAY,4BAA4B,OAAO;AAAA,EACtE,GAAG,CAAC,MAAM,QAAQ,WAAW,CAAC;AAE9B,SACE,oBAAC,uBAAqB,GAAG,OACvB,8BAAC,uBAAoB,OAAO,aAAc,UAAS,GACrD;AAEJ;","names":[]}
|
|
@@ -42,13 +42,14 @@ var PersistQueryClientProvider = ({
|
|
|
42
42
|
children,
|
|
43
43
|
persistOptions,
|
|
44
44
|
onSuccess,
|
|
45
|
+
onError,
|
|
45
46
|
...props
|
|
46
47
|
}) => {
|
|
47
48
|
const [isRestoring, setIsRestoring] = React.useState(true);
|
|
48
|
-
const refs = React.useRef({ persistOptions, onSuccess });
|
|
49
|
+
const refs = React.useRef({ persistOptions, onSuccess, onError });
|
|
49
50
|
const didRestore = React.useRef(false);
|
|
50
51
|
React.useEffect(() => {
|
|
51
|
-
refs.current = { persistOptions, onSuccess };
|
|
52
|
+
refs.current = { persistOptions, onSuccess, onError };
|
|
52
53
|
});
|
|
53
54
|
React.useEffect(() => {
|
|
54
55
|
const options = {
|
|
@@ -57,12 +58,8 @@ var PersistQueryClientProvider = ({
|
|
|
57
58
|
};
|
|
58
59
|
if (!didRestore.current) {
|
|
59
60
|
didRestore.current = true;
|
|
60
|
-
(0, import_query_persist_client_core.persistQueryClientRestore)(options).then(
|
|
61
|
-
|
|
62
|
-
await refs.current.onSuccess?.();
|
|
63
|
-
} finally {
|
|
64
|
-
setIsRestoring(false);
|
|
65
|
-
}
|
|
61
|
+
(0, import_query_persist_client_core.persistQueryClientRestore)(options).then(() => refs.current.onSuccess?.()).catch(() => refs.current.onError?.()).finally(() => {
|
|
62
|
+
setIsRestoring(false);
|
|
66
63
|
});
|
|
67
64
|
}
|
|
68
65
|
return isRestoring ? void 0 : (0, import_query_persist_client_core.persistQueryClientSubscribe)(options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/PersistQueryClientProvider.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nimport {\n persistQueryClientRestore,\n persistQueryClientSubscribe,\n} from '@tanstack/query-persist-client-core'\nimport { IsRestoringProvider, QueryClientProvider } from '@tanstack/react-query'\nimport type { PersistQueryClientOptions } from '@tanstack/query-persist-client-core'\nimport type { OmitKeyof, QueryClientProviderProps } from '@tanstack/react-query'\n\nexport type PersistQueryClientProviderProps = QueryClientProviderProps & {\n persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>\n onSuccess?: () => Promise<unknown> | unknown\n}\n\nexport const PersistQueryClientProvider = ({\n children,\n persistOptions,\n onSuccess,\n ...props\n}: PersistQueryClientProviderProps): React.JSX.Element => {\n const [isRestoring, setIsRestoring] = React.useState(true)\n const refs = React.useRef({ persistOptions, onSuccess })\n const didRestore = React.useRef(false)\n\n React.useEffect(() => {\n refs.current = { persistOptions, onSuccess }\n })\n\n React.useEffect(() => {\n const options = {\n ...refs.current.persistOptions,\n queryClient: props.client,\n }\n if (!didRestore.current) {\n didRestore.current = true\n persistQueryClientRestore(options).then(
|
|
1
|
+
{"version":3,"sources":["../../src/PersistQueryClientProvider.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nimport {\n persistQueryClientRestore,\n persistQueryClientSubscribe,\n} from '@tanstack/query-persist-client-core'\nimport { IsRestoringProvider, QueryClientProvider } from '@tanstack/react-query'\nimport type { PersistQueryClientOptions } from '@tanstack/query-persist-client-core'\nimport type { OmitKeyof, QueryClientProviderProps } from '@tanstack/react-query'\n\nexport type PersistQueryClientProviderProps = QueryClientProviderProps & {\n persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>\n onSuccess?: () => Promise<unknown> | unknown\n onError?: () => Promise<unknown> | unknown\n}\n\nexport const PersistQueryClientProvider = ({\n children,\n persistOptions,\n onSuccess,\n onError,\n ...props\n}: PersistQueryClientProviderProps): React.JSX.Element => {\n const [isRestoring, setIsRestoring] = React.useState(true)\n const refs = React.useRef({ persistOptions, onSuccess, onError })\n const didRestore = React.useRef(false)\n\n React.useEffect(() => {\n refs.current = { persistOptions, onSuccess, onError }\n })\n\n React.useEffect(() => {\n const options = {\n ...refs.current.persistOptions,\n queryClient: props.client,\n }\n if (!didRestore.current) {\n didRestore.current = true\n persistQueryClientRestore(options)\n .then(() => refs.current.onSuccess?.())\n .catch(() => refs.current.onError?.())\n .finally(() => {\n setIsRestoring(false)\n })\n }\n return isRestoring ? undefined : persistQueryClientSubscribe(options)\n }, [props.client, isRestoring])\n\n return (\n <QueryClientProvider {...props}>\n <IsRestoringProvider value={isRestoring}>{children}</IsRestoringProvider>\n </QueryClientProvider>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,YAAuB;AAEvB,uCAGO;AACP,yBAAyD;AA4CnD;AAlCC,IAAM,6BAA6B,CAAC;AAAA,EACzC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAA0D;AACxD,QAAM,CAAC,aAAa,cAAc,IAAU,eAAS,IAAI;AACzD,QAAM,OAAa,aAAO,EAAE,gBAAgB,WAAW,QAAQ,CAAC;AAChE,QAAM,aAAmB,aAAO,KAAK;AAErC,EAAM,gBAAU,MAAM;AACpB,SAAK,UAAU,EAAE,gBAAgB,WAAW,QAAQ;AAAA,EACtD,CAAC;AAED,EAAM,gBAAU,MAAM;AACpB,UAAM,UAAU;AAAA,MACd,GAAG,KAAK,QAAQ;AAAA,MAChB,aAAa,MAAM;AAAA,IACrB;AACA,QAAI,CAAC,WAAW,SAAS;AACvB,iBAAW,UAAU;AACrB,sEAA0B,OAAO,EAC9B,KAAK,MAAM,KAAK,QAAQ,YAAY,CAAC,EACrC,MAAM,MAAM,KAAK,QAAQ,UAAU,CAAC,EACpC,QAAQ,MAAM;AACb,uBAAe,KAAK;AAAA,MACtB,CAAC;AAAA,IACL;AACA,WAAO,cAAc,aAAY,8DAA4B,OAAO;AAAA,EACtE,GAAG,CAAC,MAAM,QAAQ,WAAW,CAAC;AAE9B,SACE,4CAAC,0CAAqB,GAAG,OACvB,sDAAC,0CAAoB,OAAO,aAAc,UAAS,GACrD;AAEJ;","names":[]}
|
|
@@ -5,7 +5,8 @@ import { QueryClientProviderProps, OmitKeyof } from '@tanstack/react-query';
|
|
|
5
5
|
type PersistQueryClientProviderProps = QueryClientProviderProps & {
|
|
6
6
|
persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>;
|
|
7
7
|
onSuccess?: () => Promise<unknown> | unknown;
|
|
8
|
+
onError?: () => Promise<unknown> | unknown;
|
|
8
9
|
};
|
|
9
|
-
declare const PersistQueryClientProvider: ({ children, persistOptions, onSuccess, ...props }: PersistQueryClientProviderProps) => React.JSX.Element;
|
|
10
|
+
declare const PersistQueryClientProvider: ({ children, persistOptions, onSuccess, onError, ...props }: PersistQueryClientProviderProps) => React.JSX.Element;
|
|
10
11
|
|
|
11
12
|
export { PersistQueryClientProvider, type PersistQueryClientProviderProps };
|
|
@@ -5,7 +5,8 @@ import { QueryClientProviderProps, OmitKeyof } from '@tanstack/react-query';
|
|
|
5
5
|
type PersistQueryClientProviderProps = QueryClientProviderProps & {
|
|
6
6
|
persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>;
|
|
7
7
|
onSuccess?: () => Promise<unknown> | unknown;
|
|
8
|
+
onError?: () => Promise<unknown> | unknown;
|
|
8
9
|
};
|
|
9
|
-
declare const PersistQueryClientProvider: ({ children, persistOptions, onSuccess, ...props }: PersistQueryClientProviderProps) => React.JSX.Element;
|
|
10
|
+
declare const PersistQueryClientProvider: ({ children, persistOptions, onSuccess, onError, ...props }: PersistQueryClientProviderProps) => React.JSX.Element;
|
|
10
11
|
|
|
11
12
|
export { PersistQueryClientProvider, type PersistQueryClientProviderProps };
|
|
@@ -12,13 +12,14 @@ var PersistQueryClientProvider = ({
|
|
|
12
12
|
children,
|
|
13
13
|
persistOptions,
|
|
14
14
|
onSuccess,
|
|
15
|
+
onError,
|
|
15
16
|
...props
|
|
16
17
|
}) => {
|
|
17
18
|
const [isRestoring, setIsRestoring] = React.useState(true);
|
|
18
|
-
const refs = React.useRef({ persistOptions, onSuccess });
|
|
19
|
+
const refs = React.useRef({ persistOptions, onSuccess, onError });
|
|
19
20
|
const didRestore = React.useRef(false);
|
|
20
21
|
React.useEffect(() => {
|
|
21
|
-
refs.current = { persistOptions, onSuccess };
|
|
22
|
+
refs.current = { persistOptions, onSuccess, onError };
|
|
22
23
|
});
|
|
23
24
|
React.useEffect(() => {
|
|
24
25
|
const options = {
|
|
@@ -27,12 +28,8 @@ var PersistQueryClientProvider = ({
|
|
|
27
28
|
};
|
|
28
29
|
if (!didRestore.current) {
|
|
29
30
|
didRestore.current = true;
|
|
30
|
-
persistQueryClientRestore(options).then(
|
|
31
|
-
|
|
32
|
-
await refs.current.onSuccess?.();
|
|
33
|
-
} finally {
|
|
34
|
-
setIsRestoring(false);
|
|
35
|
-
}
|
|
31
|
+
persistQueryClientRestore(options).then(() => refs.current.onSuccess?.()).catch(() => refs.current.onError?.()).finally(() => {
|
|
32
|
+
setIsRestoring(false);
|
|
36
33
|
});
|
|
37
34
|
}
|
|
38
35
|
return isRestoring ? void 0 : persistQueryClientSubscribe(options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/PersistQueryClientProvider.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nimport {\n persistQueryClientRestore,\n persistQueryClientSubscribe,\n} from '@tanstack/query-persist-client-core'\nimport { IsRestoringProvider, QueryClientProvider } from '@tanstack/react-query'\nimport type { PersistQueryClientOptions } from '@tanstack/query-persist-client-core'\nimport type { OmitKeyof, QueryClientProviderProps } from '@tanstack/react-query'\n\nexport type PersistQueryClientProviderProps = QueryClientProviderProps & {\n persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>\n onSuccess?: () => Promise<unknown> | unknown\n}\n\nexport const PersistQueryClientProvider = ({\n children,\n persistOptions,\n onSuccess,\n ...props\n}: PersistQueryClientProviderProps): React.JSX.Element => {\n const [isRestoring, setIsRestoring] = React.useState(true)\n const refs = React.useRef({ persistOptions, onSuccess })\n const didRestore = React.useRef(false)\n\n React.useEffect(() => {\n refs.current = { persistOptions, onSuccess }\n })\n\n React.useEffect(() => {\n const options = {\n ...refs.current.persistOptions,\n queryClient: props.client,\n }\n if (!didRestore.current) {\n didRestore.current = true\n persistQueryClientRestore(options).then(
|
|
1
|
+
{"version":3,"sources":["../../src/PersistQueryClientProvider.tsx"],"sourcesContent":["'use client'\nimport * as React from 'react'\n\nimport {\n persistQueryClientRestore,\n persistQueryClientSubscribe,\n} from '@tanstack/query-persist-client-core'\nimport { IsRestoringProvider, QueryClientProvider } from '@tanstack/react-query'\nimport type { PersistQueryClientOptions } from '@tanstack/query-persist-client-core'\nimport type { OmitKeyof, QueryClientProviderProps } from '@tanstack/react-query'\n\nexport type PersistQueryClientProviderProps = QueryClientProviderProps & {\n persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>\n onSuccess?: () => Promise<unknown> | unknown\n onError?: () => Promise<unknown> | unknown\n}\n\nexport const PersistQueryClientProvider = ({\n children,\n persistOptions,\n onSuccess,\n onError,\n ...props\n}: PersistQueryClientProviderProps): React.JSX.Element => {\n const [isRestoring, setIsRestoring] = React.useState(true)\n const refs = React.useRef({ persistOptions, onSuccess, onError })\n const didRestore = React.useRef(false)\n\n React.useEffect(() => {\n refs.current = { persistOptions, onSuccess, onError }\n })\n\n React.useEffect(() => {\n const options = {\n ...refs.current.persistOptions,\n queryClient: props.client,\n }\n if (!didRestore.current) {\n didRestore.current = true\n persistQueryClientRestore(options)\n .then(() => refs.current.onSuccess?.())\n .catch(() => refs.current.onError?.())\n .finally(() => {\n setIsRestoring(false)\n })\n }\n return isRestoring ? undefined : persistQueryClientSubscribe(options)\n }, [props.client, isRestoring])\n\n return (\n <QueryClientProvider {...props}>\n <IsRestoringProvider value={isRestoring}>{children}</IsRestoringProvider>\n </QueryClientProvider>\n )\n}\n"],"mappings":";;;AACA,YAAY,WAAW;AAEvB;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,qBAAqB,2BAA2B;AA4CnD;AAlCC,IAAM,6BAA6B,CAAC;AAAA,EACzC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAA0D;AACxD,QAAM,CAAC,aAAa,cAAc,IAAU,eAAS,IAAI;AACzD,QAAM,OAAa,aAAO,EAAE,gBAAgB,WAAW,QAAQ,CAAC;AAChE,QAAM,aAAmB,aAAO,KAAK;AAErC,EAAM,gBAAU,MAAM;AACpB,SAAK,UAAU,EAAE,gBAAgB,WAAW,QAAQ;AAAA,EACtD,CAAC;AAED,EAAM,gBAAU,MAAM;AACpB,UAAM,UAAU;AAAA,MACd,GAAG,KAAK,QAAQ;AAAA,MAChB,aAAa,MAAM;AAAA,IACrB;AACA,QAAI,CAAC,WAAW,SAAS;AACvB,iBAAW,UAAU;AACrB,gCAA0B,OAAO,EAC9B,KAAK,MAAM,KAAK,QAAQ,YAAY,CAAC,EACrC,MAAM,MAAM,KAAK,QAAQ,UAAU,CAAC,EACpC,QAAQ,MAAM;AACb,uBAAe,KAAK;AAAA,MACtB,CAAC;AAAA,IACL;AACA,WAAO,cAAc,SAAY,4BAA4B,OAAO;AAAA,EACtE,GAAG,CAAC,MAAM,QAAQ,WAAW,CAAC;AAE9B,SACE,oBAAC,uBAAqB,GAAG,OACvB,8BAAC,uBAAoB,OAAO,aAAc,UAAS,GACrD;AAEJ;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tanstack/react-query-persist-client",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.73.3",
|
|
4
4
|
"description": "React bindings to work with persisters in TanStack/react-query",
|
|
5
5
|
"author": "tannerlinsley",
|
|
6
6
|
"license": "MIT",
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"!src/__tests__"
|
|
40
40
|
],
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@tanstack/query-persist-client-core": "5.
|
|
42
|
+
"@tanstack/query-persist-client-core": "5.73.3"
|
|
43
43
|
},
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@testing-library/react": "^16.1.0",
|
|
@@ -47,11 +47,11 @@
|
|
|
47
47
|
"@vitejs/plugin-react": "^4.3.4",
|
|
48
48
|
"npm-run-all2": "^5.0.0",
|
|
49
49
|
"react": "^19.0.0",
|
|
50
|
-
"@tanstack/react-query": "5.
|
|
50
|
+
"@tanstack/react-query": "5.73.3"
|
|
51
51
|
},
|
|
52
52
|
"peerDependencies": {
|
|
53
53
|
"react": "^18 || ^19",
|
|
54
|
-
"@tanstack/react-query": "^5.
|
|
54
|
+
"@tanstack/react-query": "^5.73.3"
|
|
55
55
|
},
|
|
56
56
|
"scripts": {}
|
|
57
57
|
}
|
|
@@ -12,20 +12,22 @@ import type { OmitKeyof, QueryClientProviderProps } from '@tanstack/react-query'
|
|
|
12
12
|
export type PersistQueryClientProviderProps = QueryClientProviderProps & {
|
|
13
13
|
persistOptions: OmitKeyof<PersistQueryClientOptions, 'queryClient'>
|
|
14
14
|
onSuccess?: () => Promise<unknown> | unknown
|
|
15
|
+
onError?: () => Promise<unknown> | unknown
|
|
15
16
|
}
|
|
16
17
|
|
|
17
18
|
export const PersistQueryClientProvider = ({
|
|
18
19
|
children,
|
|
19
20
|
persistOptions,
|
|
20
21
|
onSuccess,
|
|
22
|
+
onError,
|
|
21
23
|
...props
|
|
22
24
|
}: PersistQueryClientProviderProps): React.JSX.Element => {
|
|
23
25
|
const [isRestoring, setIsRestoring] = React.useState(true)
|
|
24
|
-
const refs = React.useRef({ persistOptions, onSuccess })
|
|
26
|
+
const refs = React.useRef({ persistOptions, onSuccess, onError })
|
|
25
27
|
const didRestore = React.useRef(false)
|
|
26
28
|
|
|
27
29
|
React.useEffect(() => {
|
|
28
|
-
refs.current = { persistOptions, onSuccess }
|
|
30
|
+
refs.current = { persistOptions, onSuccess, onError }
|
|
29
31
|
})
|
|
30
32
|
|
|
31
33
|
React.useEffect(() => {
|
|
@@ -35,13 +37,12 @@ export const PersistQueryClientProvider = ({
|
|
|
35
37
|
}
|
|
36
38
|
if (!didRestore.current) {
|
|
37
39
|
didRestore.current = true
|
|
38
|
-
persistQueryClientRestore(options)
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
persistQueryClientRestore(options)
|
|
41
|
+
.then(() => refs.current.onSuccess?.())
|
|
42
|
+
.catch(() => refs.current.onError?.())
|
|
43
|
+
.finally(() => {
|
|
42
44
|
setIsRestoring(false)
|
|
43
|
-
}
|
|
44
|
-
})
|
|
45
|
+
})
|
|
45
46
|
}
|
|
46
47
|
return isRestoring ? undefined : persistQueryClientSubscribe(options)
|
|
47
48
|
}, [props.client, isRestoring])
|