@modern-js/plugin-data-loader 0.0.0-next-20240227075921 → 0.0.0-next-20240228075637

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.
@@ -59,66 +59,20 @@ function convertModernRedirectResponse(headers, basename) {
59
59
  headers: newHeaders
60
60
  });
61
61
  }
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);
62
+ const handleRequest = async ({ request, serverRoutes, routes: routesConfig, context }) => {
63
+ const url = new URL(request.url);
64
+ const routeId = url.searchParams.get(import_constants2.LOADER_ID_PARAM);
65
+ const entry = (0, import_node2.matchEntry)(url.pathname, serverRoutes);
111
66
  if (!routeId || !entry) {
112
67
  return;
113
68
  }
114
69
  const basename = entry.urlPath;
115
70
  const end = (0, import_time.time)();
116
- const { res, logger, reporter } = context;
71
+ const { logger, reporter } = context;
117
72
  const routes = (0, import_browser.transformNestedRoutes)(routesConfig, reporter);
118
73
  const { queryRoute } = (0, import_remix_router.createStaticHandler)(routes, {
119
74
  basename
120
75
  });
121
- const request = createRequest(context);
122
76
  const requestContext = (0, import_node2.createRequestContext)();
123
77
  requestContext.set(import_node2.reporterCtx, reporter);
124
78
  let response;
@@ -167,7 +121,7 @@ const handleRequest = async ({ context, serverRoutes, routes: routesConfig }) =>
167
121
  }
168
122
  const cost = end();
169
123
  reporter.reportTiming(`${import_constants.LOADER_REPORTER_NAME}-navigation`, cost);
170
- await sendLoaderResponse(res, response);
124
+ return response;
171
125
  };
172
126
  // Annotate the CommonJS export names for ESM import in node:
173
127
  0 && (module.exports = {
@@ -1,8 +1,7 @@
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";
4
+ import { installGlobals, Response as NodeResponse } from "@remix-run/node";
6
5
  import { createStaticHandler, UNSAFE_DEFERRED_SYMBOL as DEFERRED_SYMBOL, isRouteErrorResponse } from "@modern-js/runtime-utils/remix-router";
7
6
  import { transformNestedRoutes } from "@modern-js/runtime-utils/browser";
8
7
  import { isPlainObject } from "@modern-js/utils/lodash";
@@ -38,140 +37,16 @@ function convertModernRedirectResponse(headers, basename) {
38
37
  headers: newHeaders
39
38
  });
40
39
  }
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
40
  var handleRequest = function() {
166
41
  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;
42
+ var request, serverRoutes, routesConfig, context, url, routeId, entry, basename, end, logger, reporter, routes, queryRoute, requestContext, response, deferredData, body, init, headers, error, message, cost;
168
43
  return _ts_generator(this, function(_state) {
169
44
  switch (_state.label) {
170
45
  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);
46
+ request = param.request, serverRoutes = param.serverRoutes, routesConfig = param.routes, context = param.context;
47
+ url = new URL(request.url);
48
+ routeId = url.searchParams.get(LOADER_ID_PARAM);
49
+ entry = matchEntry(url.pathname, serverRoutes);
175
50
  if (!routeId || !entry) {
176
51
  return [
177
52
  2
@@ -179,12 +54,11 @@ var handleRequest = function() {
179
54
  }
180
55
  basename = entry.urlPath;
181
56
  end = time();
182
- res = context.res, logger = context.logger, reporter = context.reporter;
57
+ logger = context.logger, reporter = context.reporter;
183
58
  routes = transformNestedRoutes(routesConfig, reporter);
184
59
  queryRoute = createStaticHandler(routes, {
185
60
  basename
186
61
  }).queryRoute;
187
- request = createRequest(context);
188
62
  requestContext = createRequestContext();
189
63
  requestContext.set(reporterCtx, reporter);
190
64
  _state.label = 1;
@@ -254,13 +128,8 @@ var handleRequest = function() {
254
128
  cost = end();
255
129
  reporter.reportTiming("".concat(LOADER_REPORTER_NAME, "-navigation"), cost);
256
130
  return [
257
- 4,
258
- sendLoaderResponse(res, response)
259
- ];
260
- case 5:
261
- _state.sent();
262
- return [
263
- 2
131
+ 2,
132
+ response
264
133
  ];
265
134
  }
266
135
  });
@@ -1,4 +1,4 @@
1
- import { installGlobals, writeReadableStreamToWritable, Response as NodeResponse } from "@remix-run/node";
1
+ import { installGlobals, Response as NodeResponse } from "@remix-run/node";
2
2
  import { createStaticHandler, UNSAFE_DEFERRED_SYMBOL as DEFERRED_SYMBOL, isRouteErrorResponse } from "@modern-js/runtime-utils/remix-router";
3
3
  import { transformNestedRoutes } from "@modern-js/runtime-utils/browser";
4
4
  import { isPlainObject } from "@modern-js/utils/lodash";
@@ -34,66 +34,20 @@ function convertModernRedirectResponse(headers, basename) {
34
34
  headers: newHeaders
35
35
  });
36
36
  }
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);
37
+ const handleRequest = async ({ request, serverRoutes, routes: routesConfig, context }) => {
38
+ const url = new URL(request.url);
39
+ const routeId = url.searchParams.get(LOADER_ID_PARAM);
40
+ const entry = matchEntry(url.pathname, serverRoutes);
86
41
  if (!routeId || !entry) {
87
42
  return;
88
43
  }
89
44
  const basename = entry.urlPath;
90
45
  const end = time();
91
- const { res, logger, reporter } = context;
46
+ const { logger, reporter } = context;
92
47
  const routes = transformNestedRoutes(routesConfig, reporter);
93
48
  const { queryRoute } = createStaticHandler(routes, {
94
49
  basename
95
50
  });
96
- const request = createRequest(context);
97
51
  const requestContext = createRequestContext();
98
52
  requestContext.set(reporterCtx, reporter);
99
53
  let response;
@@ -142,7 +96,7 @@ const handleRequest = async ({ context, serverRoutes, routes: routesConfig }) =>
142
96
  }
143
97
  const cost = end();
144
98
  reporter.reportTiming(`${LOADER_REPORTER_NAME}-navigation`, cost);
145
- await sendLoaderResponse(res, response);
99
+ return response;
146
100
  };
147
101
  export {
148
102
  handleRequest,
@@ -1,10 +1,13 @@
1
- import type { NestedRoute, ServerRoute } from '@modern-js/types';
1
+ import type { Logger, NestedRoute, Reporter, ServerRoute } from '@modern-js/types';
2
2
  import { Response as NodeResponse } from '@remix-run/node';
3
- import { ServerContext } from '@modern-js/runtime-utils/node';
4
3
  export declare function isRedirectResponse(status: number): boolean;
5
4
  export declare function isResponse(value: any): value is NodeResponse;
6
- export declare const handleRequest: ({ context, serverRoutes, routes: routesConfig, }: {
7
- context: ServerContext;
5
+ export declare const handleRequest: ({ request, serverRoutes, routes: routesConfig, context, }: {
6
+ request: Request;
8
7
  serverRoutes: ServerRoute[];
9
8
  routes: NestedRoute[];
10
- }) => Promise<void>;
9
+ context: {
10
+ logger: Logger;
11
+ reporter: Reporter;
12
+ };
13
+ }) => Promise<Response | void>;
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "0.0.0-next-20240227075921",
18
+ "version": "0.0.0-next-20240228075637",
19
19
  "engines": {
20
20
  "node": ">=14.17.6"
21
21
  },
@@ -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
  ]
@@ -58,8 +50,8 @@
58
50
  "@remix-run/node": "^1.12.0",
59
51
  "path-to-regexp": "^6.2.0",
60
52
  "@swc/helpers": "0.5.3",
61
- "@modern-js/utils": "0.0.0-next-20240227075921",
62
- "@modern-js/runtime-utils": "0.0.0-next-20240227075921"
53
+ "@modern-js/utils": "0.0.0-next-20240228075637",
54
+ "@modern-js/runtime-utils": "0.0.0-next-20240228075637"
63
55
  },
64
56
  "devDependencies": {
65
57
  "@types/babel__core": "^7.20.1",
@@ -75,11 +67,11 @@
75
67
  "webpack": "^5.89.0",
76
68
  "react": "^18",
77
69
  "react-dom": "^18",
78
- "@modern-js/core": "0.0.0-next-20240227075921",
79
- "@modern-js/server-core": "0.0.0-next-20240227075921",
80
- "@modern-js/types": "0.0.0-next-20240227075921",
81
- "@scripts/build": "0.0.0-next-20240227075921",
82
- "@scripts/jest-config": "0.0.0-next-20240227075921"
70
+ "@modern-js/core": "0.0.0-next-20240228075637",
71
+ "@modern-js/server-core": "0.0.0-next-20240228075637",
72
+ "@modern-js/types": "0.0.0-next-20240228075637",
73
+ "@scripts/build": "0.0.0-next-20240228075637",
74
+ "@scripts/jest-config": "0.0.0-next-20240228075637"
83
75
  },
84
76
  "peerDependencies": {
85
77
  "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;