@modern-js/plugin-data-loader 2.53.0 → 2.54.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.
|
@@ -53,6 +53,18 @@ const handleDeferredResponse = async (res) => {
|
|
|
53
53
|
}
|
|
54
54
|
return res;
|
|
55
55
|
};
|
|
56
|
+
const isErrorResponse = (res) => {
|
|
57
|
+
return res.headers.get("X-Modernjs-Error") != null;
|
|
58
|
+
};
|
|
59
|
+
const handleErrorResponse = async (res) => {
|
|
60
|
+
if (isErrorResponse(res)) {
|
|
61
|
+
const data = await res.json();
|
|
62
|
+
const error = new Error(data.message);
|
|
63
|
+
error.stack = data.stack;
|
|
64
|
+
throw error;
|
|
65
|
+
}
|
|
66
|
+
return res;
|
|
67
|
+
};
|
|
56
68
|
const createRequest = (routeId, method = "get") => {
|
|
57
69
|
return async ({ params, request }) => {
|
|
58
70
|
const url = getRequestUrl({
|
|
@@ -65,10 +77,8 @@ const createRequest = (routeId, method = "get") => {
|
|
|
65
77
|
method,
|
|
66
78
|
signal: request.signal
|
|
67
79
|
});
|
|
68
|
-
if (!res.ok) {
|
|
69
|
-
throw res;
|
|
70
|
-
}
|
|
71
80
|
res = handleRedirectResponse(res);
|
|
81
|
+
res = await handleErrorResponse(res);
|
|
72
82
|
res = await handleDeferredResponse(res);
|
|
73
83
|
return res;
|
|
74
84
|
};
|
|
@@ -56,6 +56,41 @@ var handleDeferredResponse = function() {
|
|
|
56
56
|
return _ref.apply(this, arguments);
|
|
57
57
|
};
|
|
58
58
|
}();
|
|
59
|
+
var isErrorResponse = function(res) {
|
|
60
|
+
return res.headers.get("X-Modernjs-Error") != null;
|
|
61
|
+
};
|
|
62
|
+
var handleErrorResponse = function() {
|
|
63
|
+
var _ref = _async_to_generator(function(res) {
|
|
64
|
+
var data, error;
|
|
65
|
+
return _ts_generator(this, function(_state) {
|
|
66
|
+
switch (_state.label) {
|
|
67
|
+
case 0:
|
|
68
|
+
if (!isErrorResponse(res))
|
|
69
|
+
return [
|
|
70
|
+
3,
|
|
71
|
+
2
|
|
72
|
+
];
|
|
73
|
+
return [
|
|
74
|
+
4,
|
|
75
|
+
res.json()
|
|
76
|
+
];
|
|
77
|
+
case 1:
|
|
78
|
+
data = _state.sent();
|
|
79
|
+
error = new Error(data.message);
|
|
80
|
+
error.stack = data.stack;
|
|
81
|
+
throw error;
|
|
82
|
+
case 2:
|
|
83
|
+
return [
|
|
84
|
+
2,
|
|
85
|
+
res
|
|
86
|
+
];
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
return function handleErrorResponse2(res) {
|
|
91
|
+
return _ref.apply(this, arguments);
|
|
92
|
+
};
|
|
93
|
+
}();
|
|
59
94
|
var createRequest = function(routeId) {
|
|
60
95
|
var method = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "get";
|
|
61
96
|
return function() {
|
|
@@ -79,15 +114,18 @@ var createRequest = function(routeId) {
|
|
|
79
114
|
];
|
|
80
115
|
case 1:
|
|
81
116
|
res = _state.sent();
|
|
82
|
-
if (!res.ok) {
|
|
83
|
-
throw res;
|
|
84
|
-
}
|
|
85
117
|
res = handleRedirectResponse(res);
|
|
86
118
|
return [
|
|
87
119
|
4,
|
|
88
|
-
|
|
120
|
+
handleErrorResponse(res)
|
|
89
121
|
];
|
|
90
122
|
case 2:
|
|
123
|
+
res = _state.sent();
|
|
124
|
+
return [
|
|
125
|
+
4,
|
|
126
|
+
handleDeferredResponse(res)
|
|
127
|
+
];
|
|
128
|
+
case 3:
|
|
91
129
|
res = _state.sent();
|
|
92
130
|
return [
|
|
93
131
|
2,
|
|
@@ -28,6 +28,18 @@ const handleDeferredResponse = async (res) => {
|
|
|
28
28
|
}
|
|
29
29
|
return res;
|
|
30
30
|
};
|
|
31
|
+
const isErrorResponse = (res) => {
|
|
32
|
+
return res.headers.get("X-Modernjs-Error") != null;
|
|
33
|
+
};
|
|
34
|
+
const handleErrorResponse = async (res) => {
|
|
35
|
+
if (isErrorResponse(res)) {
|
|
36
|
+
const data = await res.json();
|
|
37
|
+
const error = new Error(data.message);
|
|
38
|
+
error.stack = data.stack;
|
|
39
|
+
throw error;
|
|
40
|
+
}
|
|
41
|
+
return res;
|
|
42
|
+
};
|
|
31
43
|
const createRequest = (routeId, method = "get") => {
|
|
32
44
|
return async ({ params, request }) => {
|
|
33
45
|
const url = getRequestUrl({
|
|
@@ -40,10 +52,8 @@ const createRequest = (routeId, method = "get") => {
|
|
|
40
52
|
method,
|
|
41
53
|
signal: request.signal
|
|
42
54
|
});
|
|
43
|
-
if (!res.ok) {
|
|
44
|
-
throw res;
|
|
45
|
-
}
|
|
46
55
|
res = handleRedirectResponse(res);
|
|
56
|
+
res = await handleErrorResponse(res);
|
|
47
57
|
res = await handleDeferredResponse(res);
|
|
48
58
|
return res;
|
|
49
59
|
};
|
package/package.json
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"modern",
|
|
16
16
|
"modern.js"
|
|
17
17
|
],
|
|
18
|
-
"version": "2.
|
|
18
|
+
"version": "2.54.0",
|
|
19
19
|
"engines": {
|
|
20
20
|
"node": ">=16.2.0"
|
|
21
21
|
},
|
|
@@ -49,8 +49,8 @@
|
|
|
49
49
|
"@babel/core": "^7.23.2",
|
|
50
50
|
"path-to-regexp": "^6.2.0",
|
|
51
51
|
"@swc/helpers": "0.5.3",
|
|
52
|
-
"@modern-js/utils": "2.
|
|
53
|
-
"@modern-js/runtime-utils": "2.
|
|
52
|
+
"@modern-js/utils": "2.54.0",
|
|
53
|
+
"@modern-js/runtime-utils": "2.54.0"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
56
|
"@types/babel__core": "^7.20.1",
|
|
@@ -63,14 +63,14 @@
|
|
|
63
63
|
"supertest": "^6.1.6",
|
|
64
64
|
"ts-jest": "^29.1.0",
|
|
65
65
|
"typescript": "^5",
|
|
66
|
-
"webpack": "^5.
|
|
66
|
+
"webpack": "^5.92.0",
|
|
67
67
|
"react": "^18",
|
|
68
68
|
"react-dom": "^18",
|
|
69
|
-
"@modern-js/core": "2.
|
|
70
|
-
"@modern-js/server-core": "2.
|
|
71
|
-
"@modern-js/types": "2.
|
|
72
|
-
"@scripts/build": "2.
|
|
73
|
-
"@scripts/jest-config": "2.
|
|
69
|
+
"@modern-js/core": "2.54.0",
|
|
70
|
+
"@modern-js/server-core": "2.54.0",
|
|
71
|
+
"@modern-js/types": "2.54.0",
|
|
72
|
+
"@scripts/build": "2.54.0",
|
|
73
|
+
"@scripts/jest-config": "2.54.0"
|
|
74
74
|
},
|
|
75
75
|
"peerDependencies": {
|
|
76
76
|
"react": ">=17.0.0"
|