@modern-js/plugin-data-loader 2.48.5 → 2.49.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.
@@ -28,10 +28,10 @@ async function loader(source) {
28
28
  var _this__compiler;
29
29
  this.cacheable();
30
30
  const target = (_this__compiler = this._compiler) === null || _this__compiler === void 0 ? void 0 : _this__compiler.options.target;
31
- if (target === "node") {
31
+ if (target === "node" || Array.isArray(target) && target.includes("node")) {
32
32
  return source;
33
33
  }
34
- if (target === "webworker") {
34
+ if (target === "webworker" || Array.isArray(target) && target.includes("webworker")) {
35
35
  return source;
36
36
  }
37
37
  const { resourceQuery } = this;
@@ -23,16 +23,14 @@ __export(runtime_exports, {
23
23
  isResponse: () => isResponse
24
24
  });
25
25
  module.exports = __toCommonJS(runtime_exports);
26
- var import_node = require("@remix-run/node");
27
26
  var import_remix_router = require("@modern-js/runtime-utils/remix-router");
28
27
  var import_browser = require("@modern-js/runtime-utils/browser");
29
28
  var import_lodash = require("@modern-js/utils/lodash");
30
- var import_node2 = require("@modern-js/runtime-utils/node");
29
+ var import_node = require("@modern-js/runtime-utils/node");
31
30
  var import_time = require("@modern-js/runtime-utils/time");
32
31
  var import_constants = require("@modern-js/utils/universal/constants");
33
32
  var import_constants2 = require("../common/constants");
34
33
  var import_response = require("./response");
35
- (0, import_node.installGlobals)();
36
34
  const redirectStatusCodes = /* @__PURE__ */ new Set([
37
35
  301,
38
36
  302,
@@ -54,73 +52,27 @@ function convertModernRedirectResponse(headers, basename) {
54
52
  }
55
53
  newHeaders.set("X-Modernjs-Redirect", redirectUrl);
56
54
  newHeaders.delete("Location");
57
- return new import_node.Response(null, {
55
+ return new Response(null, {
58
56
  status: 204,
59
57
  headers: newHeaders
60
58
  });
61
59
  }
62
- const createLoaderHeaders = (requestHeaders) => {
63
- const headers = new Headers();
64
- for (const [key, values] of Object.entries(requestHeaders)) {
65
- if (values) {
66
- if (Array.isArray(values)) {
67
- for (const value of values) {
68
- headers.append(key, value);
69
- }
70
- } else {
71
- headers.set(key, values);
72
- }
73
- }
74
- }
75
- return headers;
76
- };
77
- const createRequest = (context) => {
78
- const origin = `${context.protocol}://${context.host}`;
79
- const url = new URL(context.url, origin);
80
- const controller = new AbortController();
81
- const init = {
82
- method: context.method,
83
- headers: createLoaderHeaders(context.headers),
84
- signal: controller.signal
85
- };
86
- if (![
87
- "GET",
88
- "HEAD"
89
- ].includes(context.method.toUpperCase())) {
90
- init.body = context.req;
91
- }
92
- const request = new Request(url.href, init);
93
- return request;
94
- };
95
- const sendLoaderResponse = async (res, nodeResponse) => {
96
- res.statusMessage = nodeResponse.statusText;
97
- res.statusCode = nodeResponse.status;
98
- for (const [key, value] of nodeResponse.headers.entries()) {
99
- res.setHeader(key, value);
100
- }
101
- if (nodeResponse.body) {
102
- await (0, import_node.writeReadableStreamToWritable)(nodeResponse.body, res);
103
- } else {
104
- res.end();
105
- }
106
- };
107
- const handleRequest = async ({ context, serverRoutes, routes: routesConfig }) => {
108
- const { query } = context;
109
- const routeId = query[import_constants2.LOADER_ID_PARAM];
110
- const entry = (0, import_node2.matchEntry)(context.path, serverRoutes);
60
+ const handleRequest = async ({ request, serverRoutes, routes: routesConfig, context }) => {
61
+ const url = new URL(request.url);
62
+ const routeId = url.searchParams.get(import_constants2.LOADER_ID_PARAM);
63
+ const entry = (0, import_node.matchEntry)(url.pathname, serverRoutes);
111
64
  if (!routeId || !entry) {
112
65
  return;
113
66
  }
114
67
  const basename = entry.urlPath;
115
68
  const end = (0, import_time.time)();
116
- const { res, logger, reporter } = context;
69
+ const { logger, reporter } = context;
117
70
  const routes = (0, import_browser.transformNestedRoutes)(routesConfig, reporter);
118
71
  const { queryRoute } = (0, import_remix_router.createStaticHandler)(routes, {
119
72
  basename
120
73
  });
121
- const request = createRequest(context);
122
- const requestContext = (0, import_node2.createRequestContext)();
123
- requestContext.set(import_node2.reporterCtx, reporter);
74
+ const requestContext = (0, import_node.createRequestContext)();
75
+ requestContext.set(import_node.reporterCtx, reporter);
124
76
  let response;
125
77
  try {
126
78
  response = await queryRoute(request, {
@@ -142,15 +94,17 @@ const handleRequest = async ({ context, serverRoutes, routes: routesConfig }) =>
142
94
  const headers = new Headers(init.headers);
143
95
  headers.set("Content-Type", `${import_constants2.CONTENT_TYPE_DEFERRED}; charset=UTF-8`);
144
96
  init.headers = headers;
145
- response = new import_node.Response(body, init);
97
+ response = new Response(body, init);
146
98
  }
147
99
  } else {
148
- response = isResponse(response) ? response : new import_node.Response(JSON.stringify(response), {
100
+ response = isResponse(response) ? response : new Response(JSON.stringify(response), {
149
101
  headers: {
150
102
  "Content-Type": "application/json; charset=utf-8"
151
103
  }
152
104
  });
153
105
  }
106
+ const cost = end();
107
+ reporter === null || reporter === void 0 ? void 0 : reporter.reportTiming(`${import_constants.LOADER_REPORTER_NAME}-navigation`, cost);
154
108
  } catch (error) {
155
109
  const message = (0, import_remix_router.isRouteErrorResponse)(error) ? error.data : String(error);
156
110
  if (error instanceof Error) {
@@ -158,16 +112,14 @@ const handleRequest = async ({ context, serverRoutes, routes: routesConfig }) =>
158
112
  } else {
159
113
  logger === null || logger === void 0 ? void 0 : logger.error(message);
160
114
  }
161
- response = new import_node.Response(message, {
115
+ response = new Response(message, {
162
116
  status: 500,
163
117
  headers: {
164
118
  "Content-Type": "text/plain"
165
119
  }
166
120
  });
167
121
  }
168
- const cost = end();
169
- reporter.reportTiming(`${import_constants.LOADER_REPORTER_NAME}-navigation`, cost);
170
- await sendLoaderResponse(res, response);
122
+ return response;
171
123
  };
172
124
  // Annotate the CommonJS export names for ESM import in node:
173
125
  0 && (module.exports = {
@@ -15,13 +15,13 @@ function _loader() {
15
15
  case 0:
16
16
  this.cacheable();
17
17
  target = (_this__compiler = this._compiler) === null || _this__compiler === void 0 ? void 0 : _this__compiler.options.target;
18
- if (target === "node") {
18
+ if (target === "node" || Array.isArray(target) && target.includes("node")) {
19
19
  return [
20
20
  2,
21
21
  source
22
22
  ];
23
23
  }
24
- if (target === "webworker") {
24
+ if (target === "webworker" || Array.isArray(target) && target.includes("webworker")) {
25
25
  return [
26
26
  2,
27
27
  source
@@ -1,8 +1,6 @@
1
1
  import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
2
  import { _ as _instanceof } from "@swc/helpers/_/_instanceof";
3
- import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
4
3
  import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
5
- import { installGlobals, writeReadableStreamToWritable, Response as NodeResponse } from "@remix-run/node";
6
4
  import { createStaticHandler, UNSAFE_DEFERRED_SYMBOL as DEFERRED_SYMBOL, isRouteErrorResponse } from "@modern-js/runtime-utils/remix-router";
7
5
  import { transformNestedRoutes } from "@modern-js/runtime-utils/browser";
8
6
  import { isPlainObject } from "@modern-js/utils/lodash";
@@ -11,7 +9,6 @@ import { time } from "@modern-js/runtime-utils/time";
11
9
  import { LOADER_REPORTER_NAME } from "@modern-js/utils/universal/constants";
12
10
  import { CONTENT_TYPE_DEFERRED, LOADER_ID_PARAM } from "../common/constants";
13
11
  import { createDeferredReadableStream } from "./response";
14
- installGlobals();
15
12
  var redirectStatusCodes = /* @__PURE__ */ new Set([
16
13
  301,
17
14
  302,
@@ -33,145 +30,21 @@ function convertModernRedirectResponse(headers, basename) {
33
30
  }
34
31
  newHeaders.set("X-Modernjs-Redirect", redirectUrl);
35
32
  newHeaders.delete("Location");
36
- return new NodeResponse(null, {
33
+ return new Response(null, {
37
34
  status: 204,
38
35
  headers: newHeaders
39
36
  });
40
37
  }
41
- var createLoaderHeaders = function(requestHeaders) {
42
- var headers = new Headers();
43
- var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
44
- try {
45
- for (var _iterator = Object.entries(requestHeaders)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
46
- var _step_value = _sliced_to_array(_step.value, 2), key = _step_value[0], values = _step_value[1];
47
- if (values) {
48
- if (Array.isArray(values)) {
49
- var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;
50
- try {
51
- for (var _iterator1 = values[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
52
- var value = _step1.value;
53
- headers.append(key, value);
54
- }
55
- } catch (err) {
56
- _didIteratorError1 = true;
57
- _iteratorError1 = err;
58
- } finally {
59
- try {
60
- if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
61
- _iterator1.return();
62
- }
63
- } finally {
64
- if (_didIteratorError1) {
65
- throw _iteratorError1;
66
- }
67
- }
68
- }
69
- } else {
70
- headers.set(key, values);
71
- }
72
- }
73
- }
74
- } catch (err) {
75
- _didIteratorError = true;
76
- _iteratorError = err;
77
- } finally {
78
- try {
79
- if (!_iteratorNormalCompletion && _iterator.return != null) {
80
- _iterator.return();
81
- }
82
- } finally {
83
- if (_didIteratorError) {
84
- throw _iteratorError;
85
- }
86
- }
87
- }
88
- return headers;
89
- };
90
- var createRequest = function(context) {
91
- var origin = "".concat(context.protocol, "://").concat(context.host);
92
- var url = new URL(context.url, origin);
93
- var controller = new AbortController();
94
- var init = {
95
- method: context.method,
96
- headers: createLoaderHeaders(context.headers),
97
- signal: controller.signal
98
- };
99
- if (![
100
- "GET",
101
- "HEAD"
102
- ].includes(context.method.toUpperCase())) {
103
- init.body = context.req;
104
- }
105
- var request = new Request(url.href, init);
106
- return request;
107
- };
108
- var sendLoaderResponse = function() {
109
- var _ref = _async_to_generator(function(res, nodeResponse) {
110
- var _iteratorNormalCompletion, _didIteratorError, _iteratorError, _iterator, _step, _step_value, key, value;
111
- return _ts_generator(this, function(_state) {
112
- switch (_state.label) {
113
- case 0:
114
- res.statusMessage = nodeResponse.statusText;
115
- res.statusCode = nodeResponse.status;
116
- _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
117
- try {
118
- for (_iterator = nodeResponse.headers.entries()[Symbol.iterator](); !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
119
- _step_value = _sliced_to_array(_step.value, 2), key = _step_value[0], value = _step_value[1];
120
- res.setHeader(key, value);
121
- }
122
- } catch (err) {
123
- _didIteratorError = true;
124
- _iteratorError = err;
125
- } finally {
126
- try {
127
- if (!_iteratorNormalCompletion && _iterator.return != null) {
128
- _iterator.return();
129
- }
130
- } finally {
131
- if (_didIteratorError) {
132
- throw _iteratorError;
133
- }
134
- }
135
- }
136
- if (!nodeResponse.body)
137
- return [
138
- 3,
139
- 2
140
- ];
141
- return [
142
- 4,
143
- writeReadableStreamToWritable(nodeResponse.body, res)
144
- ];
145
- case 1:
146
- _state.sent();
147
- return [
148
- 3,
149
- 3
150
- ];
151
- case 2:
152
- res.end();
153
- _state.label = 3;
154
- case 3:
155
- return [
156
- 2
157
- ];
158
- }
159
- });
160
- });
161
- return function sendLoaderResponse2(res, nodeResponse) {
162
- return _ref.apply(this, arguments);
163
- };
164
- }();
165
38
  var handleRequest = function() {
166
39
  var _ref = _async_to_generator(function(param) {
167
- var context, serverRoutes, routesConfig, query, routeId, entry, basename, end, res, logger, reporter, routes, queryRoute, request, requestContext, response, deferredData, body, init, headers, error, message, cost;
40
+ var request, serverRoutes, routesConfig, context, url, routeId, entry, basename, end, logger, reporter, routes, queryRoute, requestContext, response, deferredData, body, init, headers, cost, error, message;
168
41
  return _ts_generator(this, function(_state) {
169
42
  switch (_state.label) {
170
43
  case 0:
171
- context = param.context, serverRoutes = param.serverRoutes, routesConfig = param.routes;
172
- query = context.query;
173
- routeId = query[LOADER_ID_PARAM];
174
- entry = matchEntry(context.path, serverRoutes);
44
+ request = param.request, serverRoutes = param.serverRoutes, routesConfig = param.routes, context = param.context;
45
+ url = new URL(request.url);
46
+ routeId = url.searchParams.get(LOADER_ID_PARAM);
47
+ entry = matchEntry(url.pathname, serverRoutes);
175
48
  if (!routeId || !entry) {
176
49
  return [
177
50
  2
@@ -179,12 +52,11 @@ var handleRequest = function() {
179
52
  }
180
53
  basename = entry.urlPath;
181
54
  end = time();
182
- res = context.res, logger = context.logger, reporter = context.reporter;
55
+ logger = context.logger, reporter = context.reporter;
183
56
  routes = transformNestedRoutes(routesConfig, reporter);
184
57
  queryRoute = createStaticHandler(routes, {
185
58
  basename
186
59
  }).queryRoute;
187
- request = createRequest(context);
188
60
  requestContext = createRequestContext();
189
61
  requestContext.set(reporterCtx, reporter);
190
62
  _state.label = 1;
@@ -219,15 +91,17 @@ var handleRequest = function() {
219
91
  headers = new Headers(init.headers);
220
92
  headers.set("Content-Type", "".concat(CONTENT_TYPE_DEFERRED, "; charset=UTF-8"));
221
93
  init.headers = headers;
222
- response = new NodeResponse(body, init);
94
+ response = new Response(body, init);
223
95
  }
224
96
  } else {
225
- response = isResponse(response) ? response : new NodeResponse(JSON.stringify(response), {
97
+ response = isResponse(response) ? response : new Response(JSON.stringify(response), {
226
98
  headers: {
227
99
  "Content-Type": "application/json; charset=utf-8"
228
100
  }
229
101
  });
230
102
  }
103
+ cost = end();
104
+ reporter === null || reporter === void 0 ? void 0 : reporter.reportTiming("".concat(LOADER_REPORTER_NAME, "-navigation"), cost);
231
105
  return [
232
106
  3,
233
107
  4
@@ -240,7 +114,7 @@ var handleRequest = function() {
240
114
  } else {
241
115
  logger === null || logger === void 0 ? void 0 : logger.error(message);
242
116
  }
243
- response = new NodeResponse(message, {
117
+ response = new Response(message, {
244
118
  status: 500,
245
119
  headers: {
246
120
  "Content-Type": "text/plain"
@@ -251,16 +125,9 @@ var handleRequest = function() {
251
125
  4
252
126
  ];
253
127
  case 4:
254
- cost = end();
255
- reporter.reportTiming("".concat(LOADER_REPORTER_NAME, "-navigation"), cost);
256
- return [
257
- 4,
258
- sendLoaderResponse(res, response)
259
- ];
260
- case 5:
261
- _state.sent();
262
128
  return [
263
- 2
129
+ 2,
130
+ response
264
131
  ];
265
132
  }
266
133
  });
@@ -5,10 +5,10 @@ async function loader(source) {
5
5
  var _this__compiler;
6
6
  this.cacheable();
7
7
  const target = (_this__compiler = this._compiler) === null || _this__compiler === void 0 ? void 0 : _this__compiler.options.target;
8
- if (target === "node") {
8
+ if (target === "node" || Array.isArray(target) && target.includes("node")) {
9
9
  return source;
10
10
  }
11
- if (target === "webworker") {
11
+ if (target === "webworker" || Array.isArray(target) && target.includes("webworker")) {
12
12
  return source;
13
13
  }
14
14
  const { resourceQuery } = this;
@@ -1,4 +1,3 @@
1
- import { installGlobals, writeReadableStreamToWritable, Response as NodeResponse } from "@remix-run/node";
2
1
  import { createStaticHandler, UNSAFE_DEFERRED_SYMBOL as DEFERRED_SYMBOL, isRouteErrorResponse } from "@modern-js/runtime-utils/remix-router";
3
2
  import { transformNestedRoutes } from "@modern-js/runtime-utils/browser";
4
3
  import { isPlainObject } from "@modern-js/utils/lodash";
@@ -7,7 +6,6 @@ import { time } from "@modern-js/runtime-utils/time";
7
6
  import { LOADER_REPORTER_NAME } from "@modern-js/utils/universal/constants";
8
7
  import { CONTENT_TYPE_DEFERRED, LOADER_ID_PARAM } from "../common/constants";
9
8
  import { createDeferredReadableStream } from "./response";
10
- installGlobals();
11
9
  const redirectStatusCodes = /* @__PURE__ */ new Set([
12
10
  301,
13
11
  302,
@@ -29,71 +27,25 @@ function convertModernRedirectResponse(headers, basename) {
29
27
  }
30
28
  newHeaders.set("X-Modernjs-Redirect", redirectUrl);
31
29
  newHeaders.delete("Location");
32
- return new NodeResponse(null, {
30
+ return new Response(null, {
33
31
  status: 204,
34
32
  headers: newHeaders
35
33
  });
36
34
  }
37
- const createLoaderHeaders = (requestHeaders) => {
38
- const headers = new Headers();
39
- for (const [key, values] of Object.entries(requestHeaders)) {
40
- if (values) {
41
- if (Array.isArray(values)) {
42
- for (const value of values) {
43
- headers.append(key, value);
44
- }
45
- } else {
46
- headers.set(key, values);
47
- }
48
- }
49
- }
50
- return headers;
51
- };
52
- const createRequest = (context) => {
53
- const origin = `${context.protocol}://${context.host}`;
54
- const url = new URL(context.url, origin);
55
- const controller = new AbortController();
56
- const init = {
57
- method: context.method,
58
- headers: createLoaderHeaders(context.headers),
59
- signal: controller.signal
60
- };
61
- if (![
62
- "GET",
63
- "HEAD"
64
- ].includes(context.method.toUpperCase())) {
65
- init.body = context.req;
66
- }
67
- const request = new Request(url.href, init);
68
- return request;
69
- };
70
- const sendLoaderResponse = async (res, nodeResponse) => {
71
- res.statusMessage = nodeResponse.statusText;
72
- res.statusCode = nodeResponse.status;
73
- for (const [key, value] of nodeResponse.headers.entries()) {
74
- res.setHeader(key, value);
75
- }
76
- if (nodeResponse.body) {
77
- await writeReadableStreamToWritable(nodeResponse.body, res);
78
- } else {
79
- res.end();
80
- }
81
- };
82
- const handleRequest = async ({ context, serverRoutes, routes: routesConfig }) => {
83
- const { query } = context;
84
- const routeId = query[LOADER_ID_PARAM];
85
- const entry = matchEntry(context.path, serverRoutes);
35
+ const handleRequest = async ({ request, serverRoutes, routes: routesConfig, context }) => {
36
+ const url = new URL(request.url);
37
+ const routeId = url.searchParams.get(LOADER_ID_PARAM);
38
+ const entry = matchEntry(url.pathname, serverRoutes);
86
39
  if (!routeId || !entry) {
87
40
  return;
88
41
  }
89
42
  const basename = entry.urlPath;
90
43
  const end = time();
91
- const { res, logger, reporter } = context;
44
+ const { logger, reporter } = context;
92
45
  const routes = transformNestedRoutes(routesConfig, reporter);
93
46
  const { queryRoute } = createStaticHandler(routes, {
94
47
  basename
95
48
  });
96
- const request = createRequest(context);
97
49
  const requestContext = createRequestContext();
98
50
  requestContext.set(reporterCtx, reporter);
99
51
  let response;
@@ -117,15 +69,17 @@ const handleRequest = async ({ context, serverRoutes, routes: routesConfig }) =>
117
69
  const headers = new Headers(init.headers);
118
70
  headers.set("Content-Type", `${CONTENT_TYPE_DEFERRED}; charset=UTF-8`);
119
71
  init.headers = headers;
120
- response = new NodeResponse(body, init);
72
+ response = new Response(body, init);
121
73
  }
122
74
  } else {
123
- response = isResponse(response) ? response : new NodeResponse(JSON.stringify(response), {
75
+ response = isResponse(response) ? response : new Response(JSON.stringify(response), {
124
76
  headers: {
125
77
  "Content-Type": "application/json; charset=utf-8"
126
78
  }
127
79
  });
128
80
  }
81
+ const cost = end();
82
+ reporter === null || reporter === void 0 ? void 0 : reporter.reportTiming(`${LOADER_REPORTER_NAME}-navigation`, cost);
129
83
  } catch (error) {
130
84
  const message = isRouteErrorResponse(error) ? error.data : String(error);
131
85
  if (error instanceof Error) {
@@ -133,16 +87,14 @@ const handleRequest = async ({ context, serverRoutes, routes: routesConfig }) =>
133
87
  } else {
134
88
  logger === null || logger === void 0 ? void 0 : logger.error(message);
135
89
  }
136
- response = new NodeResponse(message, {
90
+ response = new Response(message, {
137
91
  status: 500,
138
92
  headers: {
139
93
  "Content-Type": "text/plain"
140
94
  }
141
95
  });
142
96
  }
143
- const cost = end();
144
- reporter.reportTiming(`${LOADER_REPORTER_NAME}-navigation`, cost);
145
- await sendLoaderResponse(res, response);
97
+ return response;
146
98
  };
147
99
  export {
148
100
  handleRequest,
@@ -1,10 +1,12 @@
1
- import type { NestedRoute, ServerRoute } from '@modern-js/types';
2
- import { Response as NodeResponse } from '@remix-run/node';
3
- import { ServerContext } from '@modern-js/runtime-utils/node';
1
+ import type { Logger, NestedRoute, Reporter, ServerRoute } from '@modern-js/types';
4
2
  export declare function isRedirectResponse(status: number): boolean;
5
- export declare function isResponse(value: any): value is NodeResponse;
6
- export declare const handleRequest: ({ context, serverRoutes, routes: routesConfig, }: {
7
- context: ServerContext;
3
+ export declare function isResponse(value: any): value is Response;
4
+ export declare const handleRequest: ({ request, serverRoutes, routes: routesConfig, context, }: {
5
+ request: Request;
8
6
  serverRoutes: ServerRoute[];
9
7
  routes: NestedRoute[];
10
- }) => Promise<void>;
8
+ context: {
9
+ logger: Logger;
10
+ reporter?: Reporter;
11
+ };
12
+ }) => Promise<Response | void>;
package/package.json CHANGED
@@ -15,9 +15,9 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "2.48.5",
18
+ "version": "2.49.0",
19
19
  "engines": {
20
- "node": ">=14.17.6"
20
+ "node": ">=16.2.0"
21
21
  },
22
22
  "jsnext:source": "./src/runtime/index.ts",
23
23
  "types": "./dist/types/runtime/index.d.ts",
@@ -29,11 +29,6 @@
29
29
  "jsnext:source": "./src/cli/loader.ts",
30
30
  "default": "./dist/cjs/cli/loader.js"
31
31
  },
32
- "./server": {
33
- "types": "./dist/types/server/index.d.ts",
34
- "jsnext:source": "./src/server/index.ts",
35
- "default": "./dist/cjs/server/index.js"
36
- },
37
32
  "./runtime": {
38
33
  "types": "./dist/types/runtime/index.d.ts",
39
34
  "jsnext:source": "./src/runtime/index.ts",
@@ -45,9 +40,6 @@
45
40
  "loader": [
46
41
  "./dist/types/cli/loader.d.ts"
47
42
  ],
48
- "server": [
49
- "./dist/types/server/index.d.ts"
50
- ],
51
43
  "runtime": [
52
44
  "./dist/types/runtime/index.d.ts"
53
45
  ]
@@ -55,11 +47,10 @@
55
47
  },
56
48
  "dependencies": {
57
49
  "@babel/core": "^7.23.2",
58
- "@remix-run/node": "^1.12.0",
59
50
  "path-to-regexp": "^6.2.0",
60
51
  "@swc/helpers": "0.5.3",
61
- "@modern-js/utils": "2.48.5",
62
- "@modern-js/runtime-utils": "2.48.5"
52
+ "@modern-js/utils": "2.49.0",
53
+ "@modern-js/runtime-utils": "2.49.0"
63
54
  },
64
55
  "devDependencies": {
65
56
  "@types/babel__core": "^7.20.1",
@@ -75,11 +66,11 @@
75
66
  "webpack": "^5.91.0",
76
67
  "react": "^18",
77
68
  "react-dom": "^18",
78
- "@modern-js/core": "2.48.5",
79
- "@scripts/build": "2.48.5",
80
- "@modern-js/types": "2.48.5",
81
- "@scripts/jest-config": "2.48.5",
82
- "@modern-js/server-core": "2.48.5"
69
+ "@modern-js/core": "2.49.0",
70
+ "@modern-js/server-core": "2.49.0",
71
+ "@scripts/build": "2.49.0",
72
+ "@scripts/jest-config": "2.49.0",
73
+ "@modern-js/types": "2.49.0"
83
74
  },
84
75
  "peerDependencies": {
85
76
  "react": ">=17.0.0"
@@ -1,63 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var server_exports = {};
30
- __export(server_exports, {
31
- default: () => server_default
32
- });
33
- module.exports = __toCommonJS(server_exports);
34
- var import_path = __toESM(require("path"));
35
- var import_fs = __toESM(require("fs"));
36
- var import_utils = require("@modern-js/utils");
37
- var import_node = require("@modern-js/runtime-utils/node");
38
- var server_default = () => ({
39
- name: "@modern-js/plugin-data-loader",
40
- setup: () => ({
41
- prepareLoaderHandler({ serverRoutes, distDir }) {
42
- return async (context) => {
43
- const entry = (0, import_node.matchEntry)(context.path, serverRoutes);
44
- if (!entry) {
45
- return;
46
- }
47
- const routesPath = import_path.default.join(distDir, import_utils.SERVER_BUNDLE_DIRECTORY, `${entry.entryName || import_utils.MAIN_ENTRY_NAME}-server-loaders.js`);
48
- if (!import_fs.default.existsSync(routesPath)) {
49
- return;
50
- }
51
- const { routes, handleRequest } = await Promise.resolve().then(() => __toESM(require(routesPath)));
52
- if (!routes) {
53
- return;
54
- }
55
- return handleRequest({
56
- serverRoutes,
57
- context,
58
- routes
59
- });
60
- };
61
- }
62
- })
63
- });
@@ -1,66 +0,0 @@
1
- import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
- import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
3
- import path from "path";
4
- import fs from "fs";
5
- import { MAIN_ENTRY_NAME, SERVER_BUNDLE_DIRECTORY } from "@modern-js/utils";
6
- import { matchEntry } from "@modern-js/runtime-utils/node";
7
- function server_default() {
8
- return {
9
- name: "@modern-js/plugin-data-loader",
10
- setup: function() {
11
- return {
12
- prepareLoaderHandler: function prepareLoaderHandler(param) {
13
- var serverRoutes = param.serverRoutes, distDir = param.distDir;
14
- return function() {
15
- var _ref = _async_to_generator(function(context) {
16
- var entry, routesPath, _ref2, routes, handleRequest;
17
- return _ts_generator(this, function(_state) {
18
- switch (_state.label) {
19
- case 0:
20
- entry = matchEntry(context.path, serverRoutes);
21
- if (!entry) {
22
- return [
23
- 2
24
- ];
25
- }
26
- routesPath = path.join(distDir, SERVER_BUNDLE_DIRECTORY, "".concat(entry.entryName || MAIN_ENTRY_NAME, "-server-loaders.js"));
27
- if (!fs.existsSync(routesPath)) {
28
- return [
29
- 2
30
- ];
31
- }
32
- return [
33
- 4,
34
- import(routesPath)
35
- ];
36
- case 1:
37
- _ref2 = _state.sent(), routes = _ref2.routes, handleRequest = _ref2.handleRequest;
38
- if (!routes) {
39
- return [
40
- 2
41
- ];
42
- }
43
- return [
44
- 2,
45
- handleRequest({
46
- serverRoutes,
47
- context,
48
- routes
49
- })
50
- ];
51
- }
52
- });
53
- });
54
- return function(context) {
55
- return _ref.apply(this, arguments);
56
- };
57
- }();
58
- }
59
- };
60
- }
61
- };
62
- }
63
- ;
64
- export {
65
- server_default as default
66
- };
@@ -1,33 +0,0 @@
1
- import path from "path";
2
- import fs from "fs";
3
- import { MAIN_ENTRY_NAME, SERVER_BUNDLE_DIRECTORY } from "@modern-js/utils";
4
- import { matchEntry } from "@modern-js/runtime-utils/node";
5
- var server_default = () => ({
6
- name: "@modern-js/plugin-data-loader",
7
- setup: () => ({
8
- prepareLoaderHandler({ serverRoutes, distDir }) {
9
- return async (context) => {
10
- const entry = matchEntry(context.path, serverRoutes);
11
- if (!entry) {
12
- return;
13
- }
14
- const routesPath = path.join(distDir, SERVER_BUNDLE_DIRECTORY, `${entry.entryName || MAIN_ENTRY_NAME}-server-loaders.js`);
15
- if (!fs.existsSync(routesPath)) {
16
- return;
17
- }
18
- const { routes, handleRequest } = await import(routesPath);
19
- if (!routes) {
20
- return;
21
- }
22
- return handleRequest({
23
- serverRoutes,
24
- context,
25
- routes
26
- });
27
- };
28
- }
29
- })
30
- });
31
- export {
32
- server_default as default
33
- };
@@ -1,3 +0,0 @@
1
- import type { ServerPlugin } from '@modern-js/server-core';
2
- declare const _default: () => ServerPlugin;
3
- export default _default;