@ukhomeoffice/cop-react-form-renderer 5.14.0 → 5.14.2
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/hooks/useGetRequest.js +14 -10
- package/dist/hooks/useRefData.js +3 -2
- package/package.json +1 -1
|
@@ -42,11 +42,9 @@ exports.STATUS_FETCHED = STATUS_FETCHED;
|
|
|
42
42
|
var STATUS_ERROR = 'error';
|
|
43
43
|
exports.STATUS_ERROR = STATUS_ERROR;
|
|
44
44
|
var useGetRequest = function useGetRequest(url) {
|
|
45
|
+
var caching = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
45
46
|
var axiosInstance = (0, _useAxios.default)();
|
|
46
|
-
var
|
|
47
|
-
var cancelRequests = function cancelRequests() {
|
|
48
|
-
if (cancelToken) cancelToken.cancel();
|
|
49
|
-
};
|
|
47
|
+
var cancelTokenRef = (0, _react.useRef)(_axios.default.CancelToken.source());
|
|
50
48
|
var _useState = (0, _react.useState)(STATUS_IDLE),
|
|
51
49
|
_useState2 = _slicedToArray(_useState, 2),
|
|
52
50
|
status = _useState2[0],
|
|
@@ -59,6 +57,11 @@ var useGetRequest = function useGetRequest(url) {
|
|
|
59
57
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
60
58
|
data = _useState6[0],
|
|
61
59
|
setData = _useState6[1];
|
|
60
|
+
var cancelRequests = function cancelRequests() {
|
|
61
|
+
if (cancelTokenRef.current) {
|
|
62
|
+
cancelTokenRef.current.cancel();
|
|
63
|
+
}
|
|
64
|
+
};
|
|
62
65
|
(0, _react.useEffect)(function () {
|
|
63
66
|
if (!url || !axiosInstance) return;
|
|
64
67
|
var fetchData = /*#__PURE__*/function () {
|
|
@@ -70,7 +73,7 @@ var useGetRequest = function useGetRequest(url) {
|
|
|
70
73
|
_context.prev = 0;
|
|
71
74
|
setError(null);
|
|
72
75
|
setStatus(STATUS_FETCHING);
|
|
73
|
-
if (!cache[url]) {
|
|
76
|
+
if (!(caching && cache[url])) {
|
|
74
77
|
_context.next = 7;
|
|
75
78
|
break;
|
|
76
79
|
}
|
|
@@ -78,7 +81,7 @@ var useGetRequest = function useGetRequest(url) {
|
|
|
78
81
|
_context.next = 16;
|
|
79
82
|
break;
|
|
80
83
|
case 7:
|
|
81
|
-
if (!errorCache[url]) {
|
|
84
|
+
if (!(caching && errorCache[url])) {
|
|
82
85
|
_context.next = 11;
|
|
83
86
|
break;
|
|
84
87
|
}
|
|
@@ -86,14 +89,15 @@ var useGetRequest = function useGetRequest(url) {
|
|
|
86
89
|
case 11:
|
|
87
90
|
_context.next = 13;
|
|
88
91
|
return axiosInstance.get(url, {
|
|
89
|
-
cancelToken:
|
|
92
|
+
cancelToken: cancelTokenRef.current.token
|
|
90
93
|
}).catch(function (e) {
|
|
94
|
+
setError(e);
|
|
91
95
|
throw e;
|
|
92
96
|
});
|
|
93
97
|
case 13:
|
|
94
98
|
response = _context.sent;
|
|
95
99
|
fetchedData = response.data;
|
|
96
|
-
cache[url] = fetchedData;
|
|
100
|
+
if (caching) cache[url] = fetchedData;
|
|
97
101
|
case 16:
|
|
98
102
|
setData(fetchedData);
|
|
99
103
|
setStatus(STATUS_FETCHED);
|
|
@@ -102,7 +106,7 @@ var useGetRequest = function useGetRequest(url) {
|
|
|
102
106
|
case 20:
|
|
103
107
|
_context.prev = 20;
|
|
104
108
|
_context.t0 = _context["catch"](0);
|
|
105
|
-
errorCache[url] = _context.t0;
|
|
109
|
+
if (caching) errorCache[url] = _context.t0;
|
|
106
110
|
setError(_context.t0);
|
|
107
111
|
setData(null);
|
|
108
112
|
setStatus(STATUS_ERROR);
|
|
@@ -117,7 +121,7 @@ var useGetRequest = function useGetRequest(url) {
|
|
|
117
121
|
};
|
|
118
122
|
}();
|
|
119
123
|
fetchData();
|
|
120
|
-
}, [axiosInstance, url,
|
|
124
|
+
}, [axiosInstance, url, caching]);
|
|
121
125
|
return {
|
|
122
126
|
status: status,
|
|
123
127
|
error: error,
|
package/dist/hooks/useRefData.js
CHANGED
|
@@ -36,10 +36,11 @@ var getRefDataUrl = function getRefDataUrl(component) {
|
|
|
36
36
|
return undefined;
|
|
37
37
|
};
|
|
38
38
|
var useRefData = function useRefData(component, formData) {
|
|
39
|
+
var _component$data;
|
|
39
40
|
var url = getRefDataUrl(_objectSpread(_objectSpread({}, component), {}, {
|
|
40
41
|
formData: formData
|
|
41
42
|
}));
|
|
42
|
-
var _useGetRequest = (0, _useGetRequest2.default)(url),
|
|
43
|
+
var _useGetRequest = (0, _useGetRequest2.default)(url, component === null || component === void 0 ? void 0 : (_component$data = component.data) === null || _component$data === void 0 ? void 0 : _component$data.useCache),
|
|
43
44
|
_status = _useGetRequest.status,
|
|
44
45
|
_data = _useGetRequest.data;
|
|
45
46
|
var _useState = (0, _react.useState)([]),
|
|
@@ -65,7 +66,7 @@ var useRefData = function useRefData(component, formData) {
|
|
|
65
66
|
setData([]);
|
|
66
67
|
setStatus(STATUS_COMPLETE);
|
|
67
68
|
}
|
|
68
|
-
}, [component, _status, _data, url
|
|
69
|
+
}, [component.id, _status, _data, url]);
|
|
69
70
|
return {
|
|
70
71
|
data: data,
|
|
71
72
|
status: status
|