@modern-js/plugin-data-loader 2.18.0 → 2.19.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 +17 -0
- package/dist/cjs/cli/data.js +3 -3
- package/dist/cjs/runtime/index.js +6 -7
- package/dist/cjs/runtime/response.js +2 -2
- package/dist/cjs/server/index.js +4 -4
- package/dist/esm/cli/data.js +1 -1
- package/dist/esm/runtime/index.js +1 -2
- package/dist/esm/runtime/response.js +1 -1
- package/dist/esm/server/index.js +1 -1
- package/dist/esm-node/cli/data.js +1 -1
- package/dist/esm-node/runtime/index.js +1 -2
- package/dist/esm-node/runtime/response.js +1 -1
- package/dist/esm-node/server/index.js +1 -1
- package/dist/types/cli/createRequest.d.ts +1 -1
- package/dist/types/cli/data.d.ts +1 -1
- package/dist/types/runtime/response.d.ts +1 -1
- package/package.json +8 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# @modern-js/plugin-data-loader
|
|
2
2
|
|
|
3
|
+
## 2.19.0
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 1134fe2: chore(deps): bump webpack from 5.76.2 to 5.82.1
|
|
8
|
+
|
|
9
|
+
chore(deps): 将 webpack 从 5.76.2 升级至 5.82.1
|
|
10
|
+
|
|
11
|
+
- Updated dependencies [1134fe2]
|
|
12
|
+
- @modern-js/utils@2.19.0
|
|
13
|
+
|
|
14
|
+
## 2.18.1
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- @modern-js/utils@2.18.1
|
|
19
|
+
|
|
3
20
|
## 2.18.0
|
|
4
21
|
|
|
5
22
|
### Patch Changes
|
package/dist/cjs/cli/data.js
CHANGED
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "parseDeferredReadableStream", {
|
|
|
6
6
|
enumerable: true,
|
|
7
7
|
get: () => parseDeferredReadableStream
|
|
8
8
|
});
|
|
9
|
-
const
|
|
9
|
+
const _router = require("@modern-js/utils/runtime/router");
|
|
10
10
|
const DEFERRED_VALUE_PLACEHOLDER_PREFIX = "__deferred_promise:";
|
|
11
11
|
async function parseDeferredReadableStream(stream) {
|
|
12
12
|
if (!stream) {
|
|
@@ -65,7 +65,7 @@ async function parseDeferredReadableStream(stream) {
|
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
for (const [key, resolver] of Object.entries(deferredResolvers)) {
|
|
68
|
-
resolver.reject(new
|
|
68
|
+
resolver.reject(new _router.AbortedDeferredError(`Deferred ${key} will never resolved`));
|
|
69
69
|
}
|
|
70
70
|
} catch (error) {
|
|
71
71
|
for (const resolver of Object.values(deferredResolvers)) {
|
|
@@ -73,7 +73,7 @@ async function parseDeferredReadableStream(stream) {
|
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
75
|
})();
|
|
76
|
-
return new
|
|
76
|
+
return new _router.UNSAFE_DeferredData({
|
|
77
77
|
...criticalData,
|
|
78
78
|
...deferredData
|
|
79
79
|
});
|
|
@@ -15,9 +15,8 @@ _export(exports, {
|
|
|
15
15
|
handleRequest: () => handleRequest
|
|
16
16
|
});
|
|
17
17
|
const _node = require("@remix-run/node");
|
|
18
|
-
const
|
|
18
|
+
const _router = require("@modern-js/utils/runtime/router");
|
|
19
19
|
const _lodash = require("@modern-js/utils/lodash");
|
|
20
|
-
const _nestedRoutes = require("@modern-js/utils/universal/nestedRoutes");
|
|
21
20
|
const _constants = require("../common/constants");
|
|
22
21
|
const _utils = require("../common/utils");
|
|
23
22
|
const _response = require("./response");
|
|
@@ -97,8 +96,8 @@ const handleRequest = async ({ context, serverRoutes, routes: routesConfig }) =>
|
|
|
97
96
|
throw new Error("CSR data loader request only support http GET method");
|
|
98
97
|
}
|
|
99
98
|
const basename = entry.urlPath;
|
|
100
|
-
const routes = (0,
|
|
101
|
-
const { queryRoute } = (0,
|
|
99
|
+
const routes = (0, _router.transformNestedRoutes)(routesConfig);
|
|
100
|
+
const { queryRoute } = (0, _router.createStaticHandler)(routes, {
|
|
102
101
|
basename
|
|
103
102
|
});
|
|
104
103
|
const { res, logger } = context;
|
|
@@ -110,8 +109,8 @@ const handleRequest = async ({ context, serverRoutes, routes: routesConfig }) =>
|
|
|
110
109
|
});
|
|
111
110
|
if (isResponse(response) && isRedirectResponse(response.status)) {
|
|
112
111
|
response = convertModernRedirectResponse(response.headers, basename);
|
|
113
|
-
} else if ((0, _lodash.isPlainObject)(response) &&
|
|
114
|
-
const deferredData = response[
|
|
112
|
+
} else if ((0, _lodash.isPlainObject)(response) && _router.UNSAFE_DEFERRED_SYMBOL in response) {
|
|
113
|
+
const deferredData = response[_router.UNSAFE_DEFERRED_SYMBOL];
|
|
115
114
|
const body = (0, _response.createDeferredReadableStream)(deferredData, request.signal);
|
|
116
115
|
const init = deferredData.init || {};
|
|
117
116
|
if (init.status && isRedirectResponse(init.status)) {
|
|
@@ -133,7 +132,7 @@ const handleRequest = async ({ context, serverRoutes, routes: routesConfig }) =>
|
|
|
133
132
|
});
|
|
134
133
|
}
|
|
135
134
|
} catch (error) {
|
|
136
|
-
const message = error instanceof
|
|
135
|
+
const message = error instanceof _router.ErrorResponse ? error.data : String(error);
|
|
137
136
|
logger === null || logger === void 0 ? void 0 : logger.error(message);
|
|
138
137
|
response = new _node.Response(message, {
|
|
139
138
|
status: 500,
|
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "createDeferredReadableStream", {
|
|
|
7
7
|
get: () => createDeferredReadableStream
|
|
8
8
|
});
|
|
9
9
|
const _util = require("util");
|
|
10
|
-
const
|
|
10
|
+
const _runtimenode = require("@modern-js/utils/runtime-node");
|
|
11
11
|
function isTrackedPromise(value) {
|
|
12
12
|
return value != null && typeof value.then === "function" && value._tracked === true;
|
|
13
13
|
}
|
|
@@ -49,7 +49,7 @@ function createDeferredReadableStream(deferredData, signal) {
|
|
|
49
49
|
function enqueueTrackedPromise(controller, encoder, settledKey, promise) {
|
|
50
50
|
if ("_error" in promise) {
|
|
51
51
|
const { _error } = promise;
|
|
52
|
-
controller.enqueue(encoder.encode(`error:${(0,
|
|
52
|
+
controller.enqueue(encoder.encode(`error:${(0, _runtimenode.serializeJson)({
|
|
53
53
|
[settledKey]: {
|
|
54
54
|
message: _error.message,
|
|
55
55
|
stack: _error.stack
|
package/dist/cjs/server/index.js
CHANGED
|
@@ -8,8 +8,8 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
});
|
|
9
9
|
const _path = /* @__PURE__ */ _interop_require_default(require("path"));
|
|
10
10
|
const _fs = /* @__PURE__ */ _interop_require_default(require("fs"));
|
|
11
|
-
const
|
|
12
|
-
const
|
|
11
|
+
const _utils = require("@modern-js/utils");
|
|
12
|
+
const _utils1 = require("../common/utils");
|
|
13
13
|
function _interop_require_default(obj) {
|
|
14
14
|
return obj && obj.__esModule ? obj : {
|
|
15
15
|
default: obj
|
|
@@ -60,11 +60,11 @@ const _default = () => ({
|
|
|
60
60
|
setup: () => ({
|
|
61
61
|
prepareLoaderHandler({ serverRoutes, distDir }) {
|
|
62
62
|
return async (context) => {
|
|
63
|
-
const entry = (0,
|
|
63
|
+
const entry = (0, _utils1.matchEntry)(context.path, serverRoutes);
|
|
64
64
|
if (!entry) {
|
|
65
65
|
return;
|
|
66
66
|
}
|
|
67
|
-
const routesPath = _path.default.join(distDir,
|
|
67
|
+
const routesPath = _path.default.join(distDir, _utils.SERVER_BUNDLE_DIRECTORY, `${entry.entryName || _utils.MAIN_ENTRY_NAME}-server-loaders.js`);
|
|
68
68
|
if (!_fs.default.existsSync(routesPath)) {
|
|
69
69
|
return;
|
|
70
70
|
}
|
package/dist/esm/cli/data.js
CHANGED
|
@@ -368,7 +368,7 @@ var __generator = function(thisArg, body) {
|
|
|
368
368
|
};
|
|
369
369
|
}
|
|
370
370
|
};
|
|
371
|
-
import { UNSAFE_DeferredData as DeferredData, AbortedDeferredError } from "@modern-js/utils/
|
|
371
|
+
import { UNSAFE_DeferredData as DeferredData, AbortedDeferredError } from "@modern-js/utils/runtime/router";
|
|
372
372
|
var DEFERRED_VALUE_PLACEHOLDER_PREFIX = "__deferred_promise:";
|
|
373
373
|
export function parseDeferredReadableStream(stream) {
|
|
374
374
|
return _parseDeferredReadableStream.apply(this, arguments);
|
|
@@ -195,9 +195,8 @@ var __generator = function(thisArg, body) {
|
|
|
195
195
|
}
|
|
196
196
|
};
|
|
197
197
|
import { installGlobals, writeReadableStreamToWritable, Response as NodeResponse } from "@remix-run/node";
|
|
198
|
-
import { createStaticHandler, ErrorResponse, UNSAFE_DEFERRED_SYMBOL as DEFERRED_SYMBOL } from "@modern-js/utils/
|
|
198
|
+
import { createStaticHandler, ErrorResponse, UNSAFE_DEFERRED_SYMBOL as DEFERRED_SYMBOL, transformNestedRoutes } from "@modern-js/utils/runtime/router";
|
|
199
199
|
import { isPlainObject } from "@modern-js/utils/lodash";
|
|
200
|
-
import { transformNestedRoutes } from "@modern-js/utils/universal/nestedRoutes";
|
|
201
200
|
import { CONTENT_TYPE_DEFERRED, LOADER_ID_PARAM } from "../common/constants";
|
|
202
201
|
import { matchEntry } from "../common/utils";
|
|
203
202
|
import { createDeferredReadableStream } from "./response";
|
|
@@ -201,7 +201,7 @@ var __generator = function(thisArg, body) {
|
|
|
201
201
|
}
|
|
202
202
|
};
|
|
203
203
|
import { TextEncoder } from "util";
|
|
204
|
-
import { serializeJson } from "@modern-js/utils/
|
|
204
|
+
import { serializeJson } from "@modern-js/utils/runtime-node";
|
|
205
205
|
function isTrackedPromise(value) {
|
|
206
206
|
return value != null && typeof value.then === "function" && value._tracked === true;
|
|
207
207
|
}
|
package/dist/esm/server/index.js
CHANGED
|
@@ -131,7 +131,7 @@ var __generator = function(thisArg, body) {
|
|
|
131
131
|
};
|
|
132
132
|
import path from "path";
|
|
133
133
|
import fs from "fs";
|
|
134
|
-
import { MAIN_ENTRY_NAME, SERVER_BUNDLE_DIRECTORY } from "@modern-js/utils
|
|
134
|
+
import { MAIN_ENTRY_NAME, SERVER_BUNDLE_DIRECTORY } from "@modern-js/utils";
|
|
135
135
|
import { matchEntry } from "../common/utils";
|
|
136
136
|
export default function() {
|
|
137
137
|
return {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { UNSAFE_DeferredData as DeferredData, AbortedDeferredError } from "@modern-js/utils/
|
|
1
|
+
import { UNSAFE_DeferredData as DeferredData, AbortedDeferredError } from "@modern-js/utils/runtime/router";
|
|
2
2
|
const DEFERRED_VALUE_PLACEHOLDER_PREFIX = "__deferred_promise:";
|
|
3
3
|
export async function parseDeferredReadableStream(stream) {
|
|
4
4
|
if (!stream) {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { installGlobals, writeReadableStreamToWritable, Response as NodeResponse } from "@remix-run/node";
|
|
2
|
-
import { createStaticHandler, ErrorResponse, UNSAFE_DEFERRED_SYMBOL as DEFERRED_SYMBOL } from "@modern-js/utils/
|
|
2
|
+
import { createStaticHandler, ErrorResponse, UNSAFE_DEFERRED_SYMBOL as DEFERRED_SYMBOL, transformNestedRoutes } from "@modern-js/utils/runtime/router";
|
|
3
3
|
import { isPlainObject } from "@modern-js/utils/lodash";
|
|
4
|
-
import { transformNestedRoutes } from "@modern-js/utils/universal/nestedRoutes";
|
|
5
4
|
import { CONTENT_TYPE_DEFERRED, LOADER_ID_PARAM } from "../common/constants";
|
|
6
5
|
import { matchEntry } from "../common/utils";
|
|
7
6
|
import { createDeferredReadableStream } from "./response";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { TextEncoder } from "util";
|
|
2
|
-
import { serializeJson } from "@modern-js/utils/
|
|
2
|
+
import { serializeJson } from "@modern-js/utils/runtime-node";
|
|
3
3
|
function isTrackedPromise(value) {
|
|
4
4
|
return value != null && typeof value.then === "function" && value._tracked === true;
|
|
5
5
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import path from "path";
|
|
2
2
|
import fs from "fs";
|
|
3
|
-
import { MAIN_ENTRY_NAME, SERVER_BUNDLE_DIRECTORY } from "@modern-js/utils
|
|
3
|
+
import { MAIN_ENTRY_NAME, SERVER_BUNDLE_DIRECTORY } from "@modern-js/utils";
|
|
4
4
|
import { matchEntry } from "../common/utils";
|
|
5
5
|
export default () => ({
|
|
6
6
|
name: "@modern-js/plugin-data-loader",
|
package/dist/types/cli/data.d.ts
CHANGED
|
@@ -7,5 +7,5 @@
|
|
|
7
7
|
* Copyright 2021 Remix Software Inc.
|
|
8
8
|
* https://github.com/remix-run/remix/blob/2b5e1a72fc628d0408e27cf4d72e537762f1dc5b/LICENSE.md
|
|
9
9
|
*/
|
|
10
|
-
import { UNSAFE_DeferredData as DeferredData } from '@modern-js/utils/
|
|
10
|
+
import { UNSAFE_DeferredData as DeferredData } from '@modern-js/utils/runtime/router';
|
|
11
11
|
export declare function parseDeferredReadableStream(stream: ReadableStream<Uint8Array>): Promise<DeferredData>;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { type UNSAFE_DeferredData as DeferredData } from '@modern-js/utils/
|
|
1
|
+
import { type UNSAFE_DeferredData as DeferredData } from '@modern-js/utils/runtime/router';
|
|
2
2
|
export declare function createDeferredReadableStream(deferredData: DeferredData, signal: AbortSignal): any;
|
package/package.json
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"modern",
|
|
16
16
|
"modern.js"
|
|
17
17
|
],
|
|
18
|
-
"version": "2.
|
|
18
|
+
"version": "2.19.0",
|
|
19
19
|
"engines": {
|
|
20
20
|
"node": ">=14.17.6"
|
|
21
21
|
},
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"@remix-run/node": "^1.12.0",
|
|
60
60
|
"path-to-regexp": "^6.2.0",
|
|
61
61
|
"react-router-dom": "^6.8.1",
|
|
62
|
-
"@modern-js/utils": "2.
|
|
62
|
+
"@modern-js/utils": "2.19.0"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
65
|
"@types/babel__core": "^7.1.15",
|
|
@@ -72,15 +72,15 @@
|
|
|
72
72
|
"supertest": "^6.1.6",
|
|
73
73
|
"ts-jest": "^29.0.5",
|
|
74
74
|
"typescript": "^4",
|
|
75
|
-
"webpack": "^5.
|
|
75
|
+
"webpack": "^5.82.1",
|
|
76
76
|
"webpack-chain": "^6.5.1",
|
|
77
77
|
"react": ">=17.0.0",
|
|
78
78
|
"react-router-dom": "^6.8.1",
|
|
79
|
-
"@modern-js/core": "2.
|
|
80
|
-
"@modern-js/server-core": "2.
|
|
81
|
-
"@modern-js/types": "2.
|
|
82
|
-
"@scripts/build": "2.
|
|
83
|
-
"@scripts/jest-config": "2.
|
|
79
|
+
"@modern-js/core": "2.19.0",
|
|
80
|
+
"@modern-js/server-core": "2.19.0",
|
|
81
|
+
"@modern-js/types": "2.19.0",
|
|
82
|
+
"@scripts/build": "2.19.0",
|
|
83
|
+
"@scripts/jest-config": "2.19.0"
|
|
84
84
|
},
|
|
85
85
|
"peerDependencies": {
|
|
86
86
|
"react": ">=17.0.0",
|