reaxify 0.0.53 → 0.0.54
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/dist/axios/useAxios.cjs.js +1 -1
- package/dist/axios/useAxios.es.js +66 -59
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";"use strict";const G=require("../helpers/wait.cjs.js"),I=require("axios"),r=require("react"),J=require("./AxiosProvider.cjs.js");function K(
|
|
1
|
+
"use client";"use strict";const G=require("../helpers/wait.cjs.js"),I=require("axios"),r=require("react"),J=require("./AxiosProvider.cjs.js");function K(e=null){const w="Canceled.",n=r.useContext(J.AxiosContext),k=r.useRef([]),h=r.useRef(new Map),E=r.useRef(0),[L,T]=r.useTransition(),d=r.useMemo(()=>{const t={...n.config,...e==null?void 0:e.config};return I.create(t)},[n.config,e==null?void 0:e.config]),y=r.useMemo(()=>typeof(e==null?void 0:e.cancelDuplicatedRequests)=="boolean"?e.cancelDuplicatedRequests:n.cancelDuplicatedRequests??!1,[n.cancelDuplicatedRequests,e==null?void 0:e.cancelDuplicatedRequests]),R=r.useMemo(()=>typeof(e==null?void 0:e.cancelOnUnmount)=="boolean"?e.cancelOnUnmount:n.cancelOnUnmount??!1,[e==null?void 0:e.cancelOnUnmount,n.cancelOnUnmount]),a=r.useMemo(()=>!(n!=null&&n.retry)&&!(e!=null&&e.retry)?null:{count:0,delay:0,statuses:[],...n.retry,...e==null?void 0:e.retry},[e==null?void 0:e.retry,n.retry]),[N,_]=r.useState([]),[z,D]=r.useState(null),v=r.useCallback(t=>{var s;if(!y&&!R)return t;const c=`${t.method}-${t.url}`,u=new AbortController;return y&&h.current.has(c)&&((s=h.current.get(c))==null||s.abort(w)),(y||R)&&(t.signal=u.signal),y&&h.current.set(c,u),R&&k.current.push(u),t},[y,R]),m=r.useCallback(t=>{if(!t)return;const c=`${t.method}-${t.url}`;h.current.delete(c)},[]),p=r.useCallback(t=>{T(()=>{_(c=>{const u=[...c];return t?u.push(""):u.pop(),u})})},[]),H=r.useCallback(t=>{const c=[...n.beforeRequest,...(e==null?void 0:e.beforeRequest)??[]];return c.length?c.reduce(async(u,s)=>{const l=await u;return await s(l)??l},Promise.resolve(t)):t},[n.beforeRequest,e==null?void 0:e.beforeRequest]),P=r.useCallback(t=>{const c=[...n.afterResponse,...(e==null?void 0:e.afterResponse)??[]];return c.length?c.reduce(async(u,s)=>{const l=await u;return await s(l)??l},Promise.resolve(t)):t},[n.afterResponse,e==null?void 0:e.afterResponse]),A=r.useCallback(t=>{const c=[...n.afterError,...(e==null?void 0:e.afterError)??[]];return c.length?c.reduce(async(u,s)=>{const l=await u;return await s(l)??l},Promise.resolve(t)):t},[n.afterError,e==null?void 0:e.afterError]),M=r.useCallback(t=>{const c=[...n.beforeRetry,...(e==null?void 0:e.beforeRetry)??[]];return c.length?c.reduce(async(u,s)=>{const l=await u;return await s(l)??l},Promise.resolve(t)):t},[n.beforeRetry,e==null?void 0:e.beforeRetry]),O=r.useCallback(t=>{if(!a)return!1;const c=a.count??0,u=a.statuses??[];return!(E.current>=c||!u.includes(t))},[a]),U=r.useCallback(()=>{E.current++},[]),q=r.useCallback(()=>{E.current=0},[]),$=r.useCallback(async t=>{p(!0),D(null);const c=v(t);return await H(c)},[v,p,H]),j=r.useCallback(async t=>{m(t.config);const c=await P(t);return p(!1),D(null),q(),c},[p,P,m,q]),S=r.useCallback(async t=>{var l,b,B;const c=[(t==null?void 0:t.code)==="ERR_CANCELED",((b=(l=t==null?void 0:t.config)==null?void 0:l.signal)==null?void 0:b.reason)===w].some(Boolean),u=((B=t==null?void 0:t.response)==null?void 0:B.status)??0;if(!c&&O(u)){U(),a!=null&&a.delay&&await G(a.delay);const F=await M(t==null?void 0:t.config);return p(!1),d.request(F)}!c&&m(t==null?void 0:t.config);const s=await A(t);return p(!1),q(),!c&&D(s),Promise.reject(s)},[p,A,m,M,O,q,U,a==null?void 0:a.delay]);return r.useEffect(()=>{const t=d.interceptors.request.use($),c=d.interceptors.response.use(j,S);return()=>{d.interceptors.request.eject(t),d.interceptors.response.eject(c)}},[d.interceptors.request,d.interceptors.response,$,j,S]),r.useEffect(()=>()=>{R&&(k.current.forEach(t=>{t.abort(w)}),k.current=[])},[R]),[d,!!N.length||L,z]}module.exports=K;
|
|
@@ -3,104 +3,111 @@ import Q from "../helpers/wait.es.js";
|
|
|
3
3
|
import V from "axios";
|
|
4
4
|
import { useContext as W, useRef as O, useTransition as X, useMemo as q, useState as N, useCallback as s, useEffect as _ } from "react";
|
|
5
5
|
import { AxiosContext as Y } from "./AxiosProvider.es.js";
|
|
6
|
-
function C(
|
|
7
|
-
const E = "Canceled.", n = W(Y), D = O([]), h = O(/* @__PURE__ */ new Map()), v = O(0), [z, F] = X(),
|
|
8
|
-
const
|
|
9
|
-
return V.create(
|
|
10
|
-
}, [n.config,
|
|
6
|
+
function C(e = null) {
|
|
7
|
+
const E = "Canceled.", n = W(Y), D = O([]), h = O(/* @__PURE__ */ new Map()), v = O(0), [z, F] = X(), a = q(() => {
|
|
8
|
+
const t = { ...n.config, ...e == null ? void 0 : e.config };
|
|
9
|
+
return V.create(t);
|
|
10
|
+
}, [n.config, e == null ? void 0 : e.config]), m = q(() => typeof (e == null ? void 0 : e.cancelDuplicatedRequests) == "boolean" ? e.cancelDuplicatedRequests : n.cancelDuplicatedRequests ?? !1, [
|
|
11
11
|
n.cancelDuplicatedRequests,
|
|
12
|
-
|
|
13
|
-
]), R = q(() => typeof (
|
|
12
|
+
e == null ? void 0 : e.cancelDuplicatedRequests
|
|
13
|
+
]), R = q(() => typeof (e == null ? void 0 : e.cancelOnUnmount) == "boolean" ? e.cancelOnUnmount : n.cancelOnUnmount ?? !1, [e == null ? void 0 : e.cancelOnUnmount, n.cancelOnUnmount]), d = q(() => !(n != null && n.retry) && !(e != null && e.retry) ? null : {
|
|
14
|
+
count: 0,
|
|
15
|
+
delay: 0,
|
|
16
|
+
statuses: [],
|
|
14
17
|
...n.retry,
|
|
15
|
-
...
|
|
16
|
-
}
|
|
17
|
-
(
|
|
18
|
+
...e == null ? void 0 : e.retry
|
|
19
|
+
}, [e == null ? void 0 : e.retry, n.retry]), [G, I] = N([]), [J, H] = N(null), P = s(
|
|
20
|
+
(t) => {
|
|
18
21
|
var l;
|
|
19
|
-
if (!m && !R) return
|
|
20
|
-
const r = `${
|
|
21
|
-
return m && h.current.has(r) && ((l = h.current.get(r)) == null || l.abort(E)), (m || R) && (
|
|
22
|
+
if (!m && !R) return t;
|
|
23
|
+
const r = `${t.method}-${t.url}`, c = new AbortController();
|
|
24
|
+
return m && h.current.has(r) && ((l = h.current.get(r)) == null || l.abort(E)), (m || R) && (t.signal = c.signal), m && h.current.set(r, c), R && D.current.push(c), t;
|
|
22
25
|
},
|
|
23
26
|
[m, R]
|
|
24
27
|
), b = s(
|
|
25
|
-
(
|
|
26
|
-
if (!
|
|
27
|
-
const r = `${
|
|
28
|
+
(t) => {
|
|
29
|
+
if (!t) return;
|
|
30
|
+
const r = `${t.method}-${t.url}`;
|
|
28
31
|
h.current.delete(r);
|
|
29
32
|
},
|
|
30
33
|
[]
|
|
31
|
-
), p = s((
|
|
34
|
+
), p = s((t) => {
|
|
32
35
|
F(() => {
|
|
33
36
|
I((r) => {
|
|
34
37
|
const c = [...r];
|
|
35
|
-
return
|
|
38
|
+
return t ? c.push("") : c.pop(), c;
|
|
36
39
|
});
|
|
37
40
|
});
|
|
38
41
|
}, []), U = s(
|
|
39
|
-
(
|
|
42
|
+
(t) => {
|
|
40
43
|
const r = [
|
|
41
44
|
...n.beforeRequest,
|
|
42
|
-
...(
|
|
45
|
+
...(e == null ? void 0 : e.beforeRequest) ?? []
|
|
43
46
|
];
|
|
44
47
|
return r.length ? r.reduce(async (c, l) => {
|
|
45
48
|
const u = await c;
|
|
46
49
|
return await l(u) ?? u;
|
|
47
|
-
}, Promise.resolve(
|
|
50
|
+
}, Promise.resolve(t)) : t;
|
|
48
51
|
},
|
|
49
|
-
[n.beforeRequest,
|
|
52
|
+
[n.beforeRequest, e == null ? void 0 : e.beforeRequest]
|
|
50
53
|
), A = s(
|
|
51
|
-
(
|
|
54
|
+
(t) => {
|
|
52
55
|
const r = [
|
|
53
56
|
...n.afterResponse,
|
|
54
|
-
...(
|
|
57
|
+
...(e == null ? void 0 : e.afterResponse) ?? []
|
|
55
58
|
];
|
|
56
59
|
return r.length ? r.reduce(async (c, l) => {
|
|
57
60
|
const u = await c;
|
|
58
61
|
return await l(u) ?? u;
|
|
59
|
-
}, Promise.resolve(
|
|
62
|
+
}, Promise.resolve(t)) : t;
|
|
60
63
|
},
|
|
61
|
-
[n.afterResponse,
|
|
64
|
+
[n.afterResponse, e == null ? void 0 : e.afterResponse]
|
|
62
65
|
), $ = s(
|
|
63
|
-
(
|
|
66
|
+
(t) => {
|
|
64
67
|
const r = [
|
|
65
68
|
...n.afterError,
|
|
66
|
-
...(
|
|
69
|
+
...(e == null ? void 0 : e.afterError) ?? []
|
|
67
70
|
];
|
|
68
71
|
return r.length ? r.reduce(async (c, l) => {
|
|
69
72
|
const u = await c;
|
|
70
73
|
return await l(u) ?? u;
|
|
71
|
-
}, Promise.resolve(
|
|
74
|
+
}, Promise.resolve(t)) : t;
|
|
72
75
|
},
|
|
73
|
-
[n.afterError,
|
|
76
|
+
[n.afterError, e == null ? void 0 : e.afterError]
|
|
74
77
|
), j = s(
|
|
75
|
-
(
|
|
78
|
+
(t) => {
|
|
76
79
|
const r = [
|
|
77
80
|
...n.beforeRetry,
|
|
78
|
-
...(
|
|
81
|
+
...(e == null ? void 0 : e.beforeRetry) ?? []
|
|
79
82
|
];
|
|
80
83
|
return r.length ? r.reduce(async (c, l) => {
|
|
81
84
|
const u = await c;
|
|
82
85
|
return await l(u) ?? u;
|
|
83
|
-
}, Promise.resolve(
|
|
86
|
+
}, Promise.resolve(t)) : t;
|
|
84
87
|
},
|
|
85
|
-
[n.beforeRetry,
|
|
88
|
+
[n.beforeRetry, e == null ? void 0 : e.beforeRetry]
|
|
86
89
|
), k = s(
|
|
87
|
-
(
|
|
88
|
-
|
|
90
|
+
(t) => {
|
|
91
|
+
if (!d) return !1;
|
|
92
|
+
const r = d.count ?? 0, c = d.statuses ?? [];
|
|
93
|
+
return !(v.current >= r || !c.includes(t));
|
|
94
|
+
},
|
|
95
|
+
[d]
|
|
89
96
|
), M = s(() => {
|
|
90
97
|
v.current++;
|
|
91
98
|
}, []), w = s(() => {
|
|
92
99
|
v.current = 0;
|
|
93
100
|
}, []), B = s(
|
|
94
|
-
async (
|
|
101
|
+
async (t) => {
|
|
95
102
|
p(!0), H(null);
|
|
96
|
-
const r = P(
|
|
103
|
+
const r = P(t);
|
|
97
104
|
return await U(r);
|
|
98
105
|
},
|
|
99
106
|
[P, p, U]
|
|
100
107
|
), L = s(
|
|
101
|
-
async (
|
|
102
|
-
b(
|
|
103
|
-
const r = await A(
|
|
108
|
+
async (t) => {
|
|
109
|
+
b(t.config);
|
|
110
|
+
const r = await A(t);
|
|
104
111
|
return p(!1), H(null), w(), r;
|
|
105
112
|
},
|
|
106
113
|
[
|
|
@@ -110,19 +117,19 @@ function C(t = null) {
|
|
|
110
117
|
w
|
|
111
118
|
]
|
|
112
119
|
), S = s(
|
|
113
|
-
async (
|
|
120
|
+
async (t) => {
|
|
114
121
|
var u, y, T;
|
|
115
122
|
const r = [
|
|
116
|
-
(
|
|
117
|
-
((y = (u =
|
|
118
|
-
].some(Boolean), c = ((T =
|
|
119
|
-
if (k(c)) {
|
|
120
|
-
M(),
|
|
121
|
-
const K = await j(
|
|
122
|
-
return p(!1),
|
|
123
|
+
(t == null ? void 0 : t.code) === "ERR_CANCELED",
|
|
124
|
+
((y = (u = t == null ? void 0 : t.config) == null ? void 0 : u.signal) == null ? void 0 : y.reason) === E
|
|
125
|
+
].some(Boolean), c = ((T = t == null ? void 0 : t.response) == null ? void 0 : T.status) ?? 0;
|
|
126
|
+
if (!r && k(c)) {
|
|
127
|
+
M(), d != null && d.delay && await Q(d.delay);
|
|
128
|
+
const K = await j(t == null ? void 0 : t.config);
|
|
129
|
+
return p(!1), a.request(K);
|
|
123
130
|
}
|
|
124
|
-
!r && b(
|
|
125
|
-
const l = await $(
|
|
131
|
+
!r && b(t == null ? void 0 : t.config);
|
|
132
|
+
const l = await $(t);
|
|
126
133
|
return p(!1), w(), !r && H(l), Promise.reject(l);
|
|
127
134
|
},
|
|
128
135
|
[
|
|
@@ -133,25 +140,25 @@ function C(t = null) {
|
|
|
133
140
|
k,
|
|
134
141
|
w,
|
|
135
142
|
M,
|
|
136
|
-
|
|
143
|
+
d == null ? void 0 : d.delay
|
|
137
144
|
]
|
|
138
145
|
);
|
|
139
146
|
return _(() => {
|
|
140
|
-
const
|
|
147
|
+
const t = a.interceptors.request.use(B), r = a.interceptors.response.use(L, S);
|
|
141
148
|
return () => {
|
|
142
|
-
|
|
149
|
+
a.interceptors.request.eject(t), a.interceptors.response.eject(r);
|
|
143
150
|
};
|
|
144
151
|
}, [
|
|
145
|
-
|
|
146
|
-
|
|
152
|
+
a.interceptors.request,
|
|
153
|
+
a.interceptors.response,
|
|
147
154
|
B,
|
|
148
155
|
L,
|
|
149
156
|
S
|
|
150
157
|
]), _(() => () => {
|
|
151
|
-
R && (D.current.forEach((
|
|
152
|
-
|
|
158
|
+
R && (D.current.forEach((t) => {
|
|
159
|
+
t.abort(E);
|
|
153
160
|
}), D.current = []);
|
|
154
|
-
}, [R]), [
|
|
161
|
+
}, [R]), [a, !!G.length || z, J];
|
|
155
162
|
}
|
|
156
163
|
export {
|
|
157
164
|
C as default
|