@modern-js/server-core 2.68.4 → 2.68.6

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.
@@ -34,12 +34,18 @@ const httpCallBack2HonoMid = (handler) => {
34
34
  req.__honoRequest = context.req;
35
35
  req.__templates = context.get("templates") || {};
36
36
  req.__serverManifest = context.get("serverManifest") || {};
37
+ req.__rscServerManifest = context.get("rscServerManifest");
38
+ req.__rscClientManifest = context.get("rscClientManifest");
39
+ req.__rscSSRManifest = context.get("rscSSRManifest");
37
40
  try {
38
41
  await handler(req, res);
39
42
  } finally {
40
43
  delete req.__honoRequest;
41
44
  delete req.__templates;
42
45
  delete req.__serverManifest;
46
+ delete req.__rscServerManifest;
47
+ delete req.__rscClientManifest;
48
+ delete req.__rscSSRManifest;
43
49
  res.removeListener("pipe", onPipe);
44
50
  }
45
51
  if ((0, import_helper.isResFinalized)(res)) {
@@ -83,19 +83,30 @@ const createWebRequest = (req, res, body) => {
83
83
  }
84
84
  const originalRequest = new Request(url, init);
85
85
  if (needsRequestBody) {
86
+ const interceptedMethods = [
87
+ "json",
88
+ "text",
89
+ "blob",
90
+ "arrayBuffer",
91
+ "formData"
92
+ ];
86
93
  return new Proxy(originalRequest, {
87
94
  get(target, prop) {
88
- if ([
89
- "json",
90
- "text",
91
- "blob",
92
- "arrayBuffer",
93
- "formData",
94
- "body"
95
- ].includes(prop)) {
95
+ if (interceptedMethods.includes(prop)) {
96
+ return (...args) => {
97
+ cloneableReq.resume();
98
+ return target[prop].call(target, ...args);
99
+ };
100
+ }
101
+ const value = target[prop];
102
+ if (prop === "body") {
96
103
  cloneableReq.resume();
104
+ return value;
105
+ }
106
+ if (typeof value === "function") {
107
+ return (...args) => value.apply(target, args);
97
108
  }
98
- return target[prop];
109
+ return value;
99
110
  }
100
111
  });
101
112
  }
@@ -16,6 +16,9 @@ var httpCallBack2HonoMid = function(handler) {
16
16
  req.__honoRequest = context.req;
17
17
  req.__templates = context.get("templates") || {};
18
18
  req.__serverManifest = context.get("serverManifest") || {};
19
+ req.__rscServerManifest = context.get("rscServerManifest");
20
+ req.__rscClientManifest = context.get("rscClientManifest");
21
+ req.__rscSSRManifest = context.get("rscSSRManifest");
19
22
  _state.label = 1;
20
23
  case 1:
21
24
  _state.trys.push([
@@ -38,6 +41,9 @@ var httpCallBack2HonoMid = function(handler) {
38
41
  delete req.__honoRequest;
39
42
  delete req.__templates;
40
43
  delete req.__serverManifest;
44
+ delete req.__rscServerManifest;
45
+ delete req.__rscClientManifest;
46
+ delete req.__rscSSRManifest;
41
47
  res.removeListener("pipe", onPipe);
42
48
  return [
43
49
  7
@@ -2,6 +2,7 @@ import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
2
2
  import { _ as _instanceof } from "@swc/helpers/_/_instanceof";
3
3
  import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
4
4
  import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
5
+ import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
5
6
  import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
6
7
  import { ServerResponse } from "node:http";
7
8
  import { Readable, Writable } from "node:stream";
@@ -89,19 +90,41 @@ var createWebRequest = function(req, res, body) {
89
90
  }
90
91
  var originalRequest = new Request(url, init);
91
92
  if (needsRequestBody) {
93
+ var interceptedMethods = [
94
+ "json",
95
+ "text",
96
+ "blob",
97
+ "arrayBuffer",
98
+ "formData"
99
+ ];
92
100
  return new Proxy(originalRequest, {
93
101
  get: function get(target, prop) {
94
- if ([
95
- "json",
96
- "text",
97
- "blob",
98
- "arrayBuffer",
99
- "formData",
100
- "body"
101
- ].includes(prop)) {
102
+ if (interceptedMethods.includes(prop)) {
103
+ return function() {
104
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
105
+ args[_key] = arguments[_key];
106
+ }
107
+ var _target_prop;
108
+ cloneableReq.resume();
109
+ return (_target_prop = target[prop]).call.apply(_target_prop, [
110
+ target
111
+ ].concat(_to_consumable_array(args)));
112
+ };
113
+ }
114
+ var value2 = target[prop];
115
+ if (prop === "body") {
102
116
  cloneableReq.resume();
117
+ return value2;
118
+ }
119
+ if (typeof value2 === "function") {
120
+ return function() {
121
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
122
+ args[_key] = arguments[_key];
123
+ }
124
+ return value2.apply(target, args);
125
+ };
103
126
  }
104
- return target[prop];
127
+ return value2;
105
128
  }
106
129
  });
107
130
  }
@@ -9,12 +9,18 @@ const httpCallBack2HonoMid = (handler) => {
9
9
  req.__honoRequest = context.req;
10
10
  req.__templates = context.get("templates") || {};
11
11
  req.__serverManifest = context.get("serverManifest") || {};
12
+ req.__rscServerManifest = context.get("rscServerManifest");
13
+ req.__rscClientManifest = context.get("rscClientManifest");
14
+ req.__rscSSRManifest = context.get("rscSSRManifest");
12
15
  try {
13
16
  await handler(req, res);
14
17
  } finally {
15
18
  delete req.__honoRequest;
16
19
  delete req.__templates;
17
20
  delete req.__serverManifest;
21
+ delete req.__rscServerManifest;
22
+ delete req.__rscClientManifest;
23
+ delete req.__rscSSRManifest;
18
24
  res.removeListener("pipe", onPipe);
19
25
  }
20
26
  if (isResFinalized(res)) {
@@ -48,19 +48,30 @@ const createWebRequest = (req, res, body) => {
48
48
  }
49
49
  const originalRequest = new Request(url, init);
50
50
  if (needsRequestBody) {
51
+ const interceptedMethods = [
52
+ "json",
53
+ "text",
54
+ "blob",
55
+ "arrayBuffer",
56
+ "formData"
57
+ ];
51
58
  return new Proxy(originalRequest, {
52
59
  get(target, prop) {
53
- if ([
54
- "json",
55
- "text",
56
- "blob",
57
- "arrayBuffer",
58
- "formData",
59
- "body"
60
- ].includes(prop)) {
60
+ if (interceptedMethods.includes(prop)) {
61
+ return (...args) => {
62
+ cloneableReq.resume();
63
+ return target[prop].call(target, ...args);
64
+ };
65
+ }
66
+ const value = target[prop];
67
+ if (prop === "body") {
61
68
  cloneableReq.resume();
69
+ return value;
70
+ }
71
+ if (typeof value === "function") {
72
+ return (...args) => value.apply(target, args);
62
73
  }
63
- return target[prop];
74
+ return value;
64
75
  }
65
76
  });
66
77
  }
@@ -1,9 +1,12 @@
1
- import type { NodeRequest, NodeResponse } from '@modern-js/types/server';
1
+ import type { ClientManifest, NodeRequest, NodeResponse, SSRManifest } from '@modern-js/types/server';
2
2
  import type { HonoRequest, ServerManifest } from '../../../types';
3
3
  type ExtendedNodeRequest = NodeRequest & {
4
4
  __honoRequest?: HonoRequest;
5
5
  __templates?: Record<string, string>;
6
6
  __serverManifest?: ServerManifest;
7
+ __rscServerManifest?: ServerManifest;
8
+ __rscClientManifest?: ClientManifest;
9
+ __rscSSRManifest?: SSRManifest;
7
10
  };
8
11
  type ExtendedNodeResponse = NodeResponse & {
9
12
  _modernBodyPiped?: boolean;
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "modern",
16
16
  "modern.js"
17
17
  ],
18
- "version": "2.68.4",
18
+ "version": "2.68.6",
19
19
  "jsnext:source": "./src/index.ts",
20
20
  "types": "./dist/types/index.d.ts",
21
21
  "main": "./dist/cjs/index.js",
@@ -54,10 +54,10 @@
54
54
  "flatted": "^3.3.3",
55
55
  "hono": "^3.12.2",
56
56
  "ts-deepmerge": "7.0.2",
57
- "@modern-js/plugin": "2.68.4",
58
- "@modern-js/plugin-v2": "2.68.4",
59
- "@modern-js/runtime-utils": "2.68.4",
60
- "@modern-js/utils": "2.68.4"
57
+ "@modern-js/plugin": "2.68.6",
58
+ "@modern-js/plugin-v2": "2.68.6",
59
+ "@modern-js/utils": "2.68.6",
60
+ "@modern-js/runtime-utils": "2.68.6"
61
61
  },
62
62
  "devDependencies": {
63
63
  "@types/cloneable-readable": "^2.0.3",
@@ -68,8 +68,8 @@
68
68
  "jest": "^29",
69
69
  "ts-jest": "^29.1.0",
70
70
  "typescript": "^5",
71
+ "@modern-js/types": "2.68.6",
71
72
  "@scripts/build": "2.66.0",
72
- "@modern-js/types": "2.68.4",
73
73
  "@scripts/jest-config": "2.66.0"
74
74
  },
75
75
  "sideEffects": false,