@selfcommunity/react-core 0.4.0-alpha.73 → 0.4.0-alpha.75
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/lib/cjs/hooks/useSCFetchUser.d.ts +1 -0
- package/lib/cjs/hooks/useSCFetchUser.d.ts.map +1 -1
- package/lib/cjs/hooks/useSCFetchUser.js +20 -13
- package/lib/cjs/hooks/useSCFetchUser.js.map +1 -1
- package/lib/esm/hooks/useSCFetchUser.d.ts +1 -0
- package/lib/esm/hooks/useSCFetchUser.d.ts.map +1 -1
- package/lib/esm/hooks/useSCFetchUser.js +20 -13
- package/lib/esm/hooks/useSCFetchUser.js.map +1 -1
- package/lib/umd/react-core.js +1 -1
- package/package.json +5 -5
|
@@ -15,6 +15,7 @@ export default function useSCFetchUser({ id, user }: {
|
|
|
15
15
|
scUser: SCUserType;
|
|
16
16
|
setSCUser: import("react").Dispatch<import("react").SetStateAction<SCUserType>>;
|
|
17
17
|
refresh: () => Promise<void>;
|
|
18
|
+
refreshing: boolean;
|
|
18
19
|
error: string;
|
|
19
20
|
};
|
|
20
21
|
//# sourceMappingURL=useSCFetchUser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCFetchUser.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAMhD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAC,EAAS,EAAE,IAAW,EAAC,EAAE;IAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAAC
|
|
1
|
+
{"version":3,"file":"useSCFetchUser.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAMhD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAC,EAAS,EAAE,IAAW,EAAC,EAAE;IAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAAC;;;;;;EA2EzG"}
|
|
@@ -20,13 +20,14 @@ function useSCFetchUser({ id = null, user = null }) {
|
|
|
20
20
|
const __user = (0, react_1.useMemo)(() => (authUserId ? user : (0, utils_1.objectWithoutProperties)(user, ['connection_status'])), [user]);
|
|
21
21
|
const [scUser, setSCUser] = (0, react_1.useState)(__user);
|
|
22
22
|
const [error, setError] = (0, react_1.useState)(null);
|
|
23
|
+
const [refreshing, setRefreshing] = (0, react_1.useState)(false);
|
|
23
24
|
/**
|
|
24
25
|
* Memoized fetchUser
|
|
25
26
|
*/
|
|
26
27
|
const fetchUser = (0, react_1.useMemo)(() => () => {
|
|
27
28
|
return api_services_1.http
|
|
28
29
|
.request({
|
|
29
|
-
url: api_services_1.Endpoints.User.url({ id: id }),
|
|
30
|
+
url: api_services_1.Endpoints.User.url({ id: user ? user.id : id }),
|
|
30
31
|
method: api_services_1.Endpoints.User.method,
|
|
31
32
|
})
|
|
32
33
|
.then((res) => {
|
|
@@ -35,21 +36,27 @@ function useSCFetchUser({ id = null, user = null }) {
|
|
|
35
36
|
}
|
|
36
37
|
return Promise.resolve(res.data);
|
|
37
38
|
});
|
|
38
|
-
}, [id]);
|
|
39
|
+
}, [id, user]);
|
|
39
40
|
/**
|
|
40
41
|
* Memoized refresh
|
|
41
42
|
*/
|
|
42
43
|
const refresh = (0, react_1.useMemo)(() => () => {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
44
|
+
if (!refreshing) {
|
|
45
|
+
setRefreshing(true);
|
|
46
|
+
return fetchUser()
|
|
47
|
+
.then((obj) => {
|
|
48
|
+
setRefreshing(false);
|
|
49
|
+
setSCUser(authUserId ? obj : (0, utils_1.objectWithoutProperties)(obj, ['connection_status']));
|
|
50
|
+
})
|
|
51
|
+
.catch((err) => {
|
|
52
|
+
setRefreshing(false);
|
|
53
|
+
setError(`Unable to refresh user with id ${id}`);
|
|
54
|
+
utils_1.Logger.error(Errors_1.SCOPE_SC_CORE, `Unable to refresh user with id ${id}`);
|
|
55
|
+
utils_1.Logger.error(Errors_1.SCOPE_SC_CORE, err.message);
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
return Promise.reject();
|
|
59
|
+
}, [fetchUser, refreshing]);
|
|
53
60
|
/**
|
|
54
61
|
* If id resolve the obj
|
|
55
62
|
*/
|
|
@@ -69,7 +76,7 @@ function useSCFetchUser({ id = null, user = null }) {
|
|
|
69
76
|
setSCUser(__user);
|
|
70
77
|
}
|
|
71
78
|
}, [id, __user]);
|
|
72
|
-
return { scUser, setSCUser, refresh, error };
|
|
79
|
+
return { scUser, setSCUser, refresh, refreshing, error };
|
|
73
80
|
}
|
|
74
81
|
exports.default = useSCFetchUser;
|
|
75
82
|
//# sourceMappingURL=useSCFetchUser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCFetchUser.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":";;AAAA,iCAAmD;AACnD,gDAAkD;AAElD,8DAA0E;AAC1E,gDAAqE;AACrE,0EAAgE;AAGhE;;;;;;;GAOG;AACH,SAAwB,cAAc,CAAC,EAAC,EAAE,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,EAA4C;IACxG,UAAU;IACV,MAAM,aAAa,GAAsB,IAAA,0BAAS,GAAE,CAAC;IACrD,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAErE,MAAM,MAAM,GAAG,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,+BAAuB,EAAa,IAAI,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAE7H,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,gBAAQ,EAAa,MAAM,CAAC,CAAC;IACzD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAS,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"useSCFetchUser.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,7 @@ export default function useSCFetchUser({ id, user }: {
|
|
|
15
15
|
scUser: SCUserType;
|
|
16
16
|
setSCUser: import("react").Dispatch<import("react").SetStateAction<SCUserType>>;
|
|
17
17
|
refresh: () => Promise<void>;
|
|
18
|
+
refreshing: boolean;
|
|
18
19
|
error: string;
|
|
19
20
|
};
|
|
20
21
|
//# sourceMappingURL=useSCFetchUser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCFetchUser.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAMhD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAC,EAAS,EAAE,IAAW,EAAC,EAAE;IAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAAC
|
|
1
|
+
{"version":3,"file":"useSCFetchUser.d.ts","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":";AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAMhD;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAC,EAAS,EAAE,IAAW,EAAC,EAAE;IAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAAC;;;;;;EA2EzG"}
|
|
@@ -18,13 +18,14 @@ export default function useSCFetchUser({ id = null, user = null }) {
|
|
|
18
18
|
const __user = useMemo(() => (authUserId ? user : objectWithoutProperties(user, ['connection_status'])), [user]);
|
|
19
19
|
const [scUser, setSCUser] = useState(__user);
|
|
20
20
|
const [error, setError] = useState(null);
|
|
21
|
+
const [refreshing, setRefreshing] = useState(false);
|
|
21
22
|
/**
|
|
22
23
|
* Memoized fetchUser
|
|
23
24
|
*/
|
|
24
25
|
const fetchUser = useMemo(() => () => {
|
|
25
26
|
return http
|
|
26
27
|
.request({
|
|
27
|
-
url: Endpoints.User.url({ id: id }),
|
|
28
|
+
url: Endpoints.User.url({ id: user ? user.id : id }),
|
|
28
29
|
method: Endpoints.User.method,
|
|
29
30
|
})
|
|
30
31
|
.then((res) => {
|
|
@@ -33,21 +34,27 @@ export default function useSCFetchUser({ id = null, user = null }) {
|
|
|
33
34
|
}
|
|
34
35
|
return Promise.resolve(res.data);
|
|
35
36
|
});
|
|
36
|
-
}, [id]);
|
|
37
|
+
}, [id, user]);
|
|
37
38
|
/**
|
|
38
39
|
* Memoized refresh
|
|
39
40
|
*/
|
|
40
41
|
const refresh = useMemo(() => () => {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
42
|
+
if (!refreshing) {
|
|
43
|
+
setRefreshing(true);
|
|
44
|
+
return fetchUser()
|
|
45
|
+
.then((obj) => {
|
|
46
|
+
setRefreshing(false);
|
|
47
|
+
setSCUser(authUserId ? obj : objectWithoutProperties(obj, ['connection_status']));
|
|
48
|
+
})
|
|
49
|
+
.catch((err) => {
|
|
50
|
+
setRefreshing(false);
|
|
51
|
+
setError(`Unable to refresh user with id ${id}`);
|
|
52
|
+
Logger.error(SCOPE_SC_CORE, `Unable to refresh user with id ${id}`);
|
|
53
|
+
Logger.error(SCOPE_SC_CORE, err.message);
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
return Promise.reject();
|
|
57
|
+
}, [fetchUser, refreshing]);
|
|
51
58
|
/**
|
|
52
59
|
* If id resolve the obj
|
|
53
60
|
*/
|
|
@@ -67,6 +74,6 @@ export default function useSCFetchUser({ id = null, user = null }) {
|
|
|
67
74
|
setSCUser(__user);
|
|
68
75
|
}
|
|
69
76
|
}, [id, __user]);
|
|
70
|
-
return { scUser, setSCUser, refresh, error };
|
|
77
|
+
return { scUser, setSCUser, refresh, refreshing, error };
|
|
71
78
|
}
|
|
72
79
|
//# sourceMappingURL=useSCFetchUser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSCFetchUser.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AACnD,OAAO,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAC,IAAI,EAAE,SAAS,EAAe,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAC,MAAM,EAAE,uBAAuB,EAAC,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAC,SAAS,EAAC,MAAM,uCAAuC,CAAC;AAGhE;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAC,EAAE,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,EAA4C;IACxG,UAAU;IACV,MAAM,aAAa,GAAsB,SAAS,EAAE,CAAC;IACrD,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAErE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,uBAAuB,CAAa,IAAI,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAE7H,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAa,MAAM,CAAC,CAAC;IACzD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAS,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"useSCFetchUser.js","sourceRoot":"","sources":["../../../src/hooks/useSCFetchUser.ts"],"names":[],"mappings":"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"}
|