aidbox-react 1.7.1 → 1.8.0
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/CHANGELOG.md +44 -0
- package/dist/cjs/index.js +8 -1
- package/dist/esm/index.js +8 -1
- package/lib/hooks/service.js +11 -5
- package/lib/hooks/service.js.map +1 -1
- package/package.json +1 -1
- package/src/hooks/service.ts +11 -2
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
## 1.8.0
|
|
2
|
+
|
|
3
|
+
- Fix race condition when deps changed in useService hook. #61
|
|
4
|
+
|
|
5
|
+
## 1.7.1
|
|
6
|
+
|
|
7
|
+
- Add an optional refresh_token to the Token interface.
|
|
8
|
+
|
|
9
|
+
## 1.7.0
|
|
10
|
+
|
|
11
|
+
- Extend usePager hook with loadPrevious, loadPage, hasPrevious, and currentPage properties.
|
|
12
|
+
|
|
13
|
+
## 1.6.0
|
|
14
|
+
|
|
15
|
+
- Add a compiled and resolved build as default library import.
|
|
16
|
+
|
|
17
|
+
## 1.5.0
|
|
18
|
+
|
|
19
|
+
- Fix useService hook performance
|
|
20
|
+
|
|
21
|
+
## 1.4.0
|
|
22
|
+
|
|
23
|
+
- Add softReloadAsync ans reloadAsync to useService manager
|
|
24
|
+
|
|
25
|
+
## 1.3.3
|
|
26
|
+
|
|
27
|
+
- Adjust the code for new ts
|
|
28
|
+
|
|
29
|
+
## 1.3.2
|
|
30
|
+
|
|
31
|
+
- Fix build
|
|
32
|
+
|
|
33
|
+
## 1.3.0
|
|
34
|
+
|
|
35
|
+
- findFHIRResources uses getFHIRResources under the hood
|
|
36
|
+
- formatError respects OperationOutcome.issue.diagnostics in addition to OperationOutcome.issue.details.text
|
|
37
|
+
|
|
38
|
+
## 1.2.0
|
|
39
|
+
|
|
40
|
+
- All requests helpers from FHIR module returns Resources wrapped with WithId type-wrapper.
|
|
41
|
+
|
|
42
|
+
## 1.1.1
|
|
43
|
+
|
|
44
|
+
- Stable release
|
package/dist/cjs/index.js
CHANGED
|
@@ -3050,10 +3050,17 @@ function useService(asyncFunction, deps = []) {
|
|
|
3050
3050
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
3051
3051
|
}), [...deps, load]);
|
|
3052
3052
|
react.exports.useEffect(() => {
|
|
3053
|
+
let cancelled = false;
|
|
3053
3054
|
(() => __awaiter(this, void 0, void 0, function* () {
|
|
3054
3055
|
setRemoteData(loading);
|
|
3055
|
-
|
|
3056
|
+
const response = yield load();
|
|
3057
|
+
if (!cancelled) {
|
|
3058
|
+
setRemoteData(response);
|
|
3059
|
+
}
|
|
3056
3060
|
}))();
|
|
3061
|
+
return () => {
|
|
3062
|
+
cancelled = true;
|
|
3063
|
+
};
|
|
3057
3064
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
3058
3065
|
}, [...deps, reloadsCount, load]);
|
|
3059
3066
|
const set = react.exports.useCallback((dataOrFn) => {
|
package/dist/esm/index.js
CHANGED
|
@@ -3048,10 +3048,17 @@ function useService(asyncFunction, deps = []) {
|
|
|
3048
3048
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
3049
3049
|
}), [...deps, load]);
|
|
3050
3050
|
react.exports.useEffect(() => {
|
|
3051
|
+
let cancelled = false;
|
|
3051
3052
|
(() => __awaiter(this, void 0, void 0, function* () {
|
|
3052
3053
|
setRemoteData(loading);
|
|
3053
|
-
|
|
3054
|
+
const response = yield load();
|
|
3055
|
+
if (!cancelled) {
|
|
3056
|
+
setRemoteData(response);
|
|
3057
|
+
}
|
|
3054
3058
|
}))();
|
|
3059
|
+
return () => {
|
|
3060
|
+
cancelled = true;
|
|
3061
|
+
};
|
|
3055
3062
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
3056
3063
|
}, [...deps, reloadsCount, load]);
|
|
3057
3064
|
const set = react.exports.useCallback((dataOrFn) => {
|
package/lib/hooks/service.js
CHANGED
|
@@ -52,20 +52,26 @@ function useService(asyncFunction, deps) {
|
|
|
52
52
|
});
|
|
53
53
|
}); }, tslib_1.__spreadArray(tslib_1.__spreadArray([], deps, true), [load], false));
|
|
54
54
|
(0, react_1.useEffect)(function () {
|
|
55
|
+
var cancelled = false;
|
|
55
56
|
(function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
56
|
-
var
|
|
57
|
-
return tslib_1.__generator(this, function (
|
|
58
|
-
switch (
|
|
57
|
+
var response;
|
|
58
|
+
return tslib_1.__generator(this, function (_a) {
|
|
59
|
+
switch (_a.label) {
|
|
59
60
|
case 0:
|
|
60
61
|
setRemoteData(remoteData_1.loading);
|
|
61
|
-
_a = setRemoteData;
|
|
62
62
|
return [4 /*yield*/, load()];
|
|
63
63
|
case 1:
|
|
64
|
-
|
|
64
|
+
response = _a.sent();
|
|
65
|
+
if (!cancelled) {
|
|
66
|
+
setRemoteData(response);
|
|
67
|
+
}
|
|
65
68
|
return [2 /*return*/];
|
|
66
69
|
}
|
|
67
70
|
});
|
|
68
71
|
}); })();
|
|
72
|
+
return function () {
|
|
73
|
+
cancelled = true;
|
|
74
|
+
};
|
|
69
75
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
70
76
|
}, tslib_1.__spreadArray(tslib_1.__spreadArray([], deps, true), [reloadsCount, load], false));
|
|
71
77
|
var set = (0, react_1.useCallback)(function (dataOrFn) {
|
package/lib/hooks/service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/hooks/service.ts"],"names":[],"mappings":";;;;AAAA,+BAAkE;AAElE,iDAAkH;AAalH,SAAgB,UAAU,CACtB,aAAoD,EACpD,IAA6B;IAFjC,
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/hooks/service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/hooks/service.ts
CHANGED
|
@@ -24,7 +24,7 @@ export function useService<S = any, F = any>(
|
|
|
24
24
|
const load = useCallback(async () => {
|
|
25
25
|
try {
|
|
26
26
|
return await asyncFunction();
|
|
27
|
-
} catch (err
|
|
27
|
+
} catch (err) {
|
|
28
28
|
return failure(err.response ? err.response.data : err.message);
|
|
29
29
|
}
|
|
30
30
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
@@ -48,10 +48,19 @@ export function useService<S = any, F = any>(
|
|
|
48
48
|
}, [...deps, load]);
|
|
49
49
|
|
|
50
50
|
useEffect(() => {
|
|
51
|
+
let cancelled = false;
|
|
52
|
+
|
|
51
53
|
(async () => {
|
|
52
54
|
setRemoteData(loading);
|
|
53
|
-
|
|
55
|
+
const response = await load();
|
|
56
|
+
if (!cancelled) {
|
|
57
|
+
setRemoteData(response);
|
|
58
|
+
}
|
|
54
59
|
})();
|
|
60
|
+
|
|
61
|
+
return () => {
|
|
62
|
+
cancelled = true;
|
|
63
|
+
};
|
|
55
64
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
56
65
|
}, [...deps, reloadsCount, load]);
|
|
57
66
|
|