@web-widget/node 0.1.0 → 0.1.2
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/dist/node.cjs +37 -17
- package/dist/node.d.ts +1 -1
- package/dist/node.js +38 -19
- package/package.json +1 -1
package/dist/node.cjs
CHANGED
|
@@ -33,8 +33,8 @@ __export(src_exports, {
|
|
|
33
33
|
default: () => NodeAdapter
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(src_exports);
|
|
36
|
-
var import_primitives = __toESM(require("@edge-runtime/primitives"), 1);
|
|
37
36
|
var import_node_utils = require("@edge-runtime/node-utils");
|
|
37
|
+
var import_primitives = __toESM(require("@edge-runtime/primitives"), 1);
|
|
38
38
|
if (!Reflect.get(global, "DISABLE_INSTALL_MCA_SHIMS")) {
|
|
39
39
|
Object.assign(global, import_primitives.default, { console });
|
|
40
40
|
}
|
|
@@ -92,24 +92,44 @@ function addDuplexToInit(init) {
|
|
|
92
92
|
return init;
|
|
93
93
|
}
|
|
94
94
|
async function toServerResponse(webResponse, serverResponse) {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
95
|
+
if (!webResponse) {
|
|
96
|
+
serverResponse.end();
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
(0, import_node_utils.mergeIntoServerResponse)(
|
|
100
|
+
// @ts-ignore getAll() is not standard https://fetch.spec.whatwg.org/#headers-class
|
|
101
|
+
(0, import_node_utils.toOutgoingHeaders)(webResponse.headers),
|
|
102
|
+
serverResponse
|
|
103
|
+
);
|
|
104
|
+
serverResponse.statusCode = webResponse.status;
|
|
105
|
+
serverResponse.statusMessage = webResponse.statusText;
|
|
106
|
+
if (!webResponse.body) {
|
|
107
|
+
serverResponse.end();
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
await writeReadableStreamToWritable(webResponse.body, serverResponse);
|
|
111
|
+
}
|
|
112
|
+
async function writeReadableStreamToWritable(stream, writable) {
|
|
113
|
+
let reader = stream.getReader();
|
|
114
|
+
async function read() {
|
|
115
|
+
let { done, value } = await reader.read();
|
|
116
|
+
if (done) {
|
|
117
|
+
writable.end();
|
|
98
118
|
return;
|
|
99
119
|
}
|
|
100
|
-
(
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
);
|
|
105
|
-
serverResponse.statusCode = webResponse.status;
|
|
106
|
-
serverResponse.statusMessage = webResponse.statusText;
|
|
107
|
-
if (!webResponse.body) {
|
|
108
|
-
serverResponse.end();
|
|
109
|
-
return;
|
|
120
|
+
writable.write(value);
|
|
121
|
+
let flushable = writable;
|
|
122
|
+
if (typeof flushable.flush === "function") {
|
|
123
|
+
flushable.flush();
|
|
110
124
|
}
|
|
111
|
-
|
|
112
|
-
}
|
|
125
|
+
await read();
|
|
126
|
+
}
|
|
127
|
+
try {
|
|
128
|
+
await read();
|
|
129
|
+
} catch (error) {
|
|
130
|
+
writable.destroy(error);
|
|
131
|
+
throw error;
|
|
132
|
+
}
|
|
113
133
|
}
|
|
114
134
|
function toMiddleware(webHandler, options) {
|
|
115
135
|
const toRequest = (0, import_node_utils.buildToRequest)(dependencies);
|
|
@@ -118,6 +138,6 @@ function toMiddleware(webHandler, options) {
|
|
|
118
138
|
const request = toRequest(incomingMessage, options);
|
|
119
139
|
const webResponse = await webHandler(request, toFetchEvent(request));
|
|
120
140
|
await toServerResponse(webResponse, serverResponse);
|
|
121
|
-
next();
|
|
141
|
+
await next();
|
|
122
142
|
};
|
|
123
143
|
}
|
package/dist/node.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { IncomingMessage, ServerResponse } from 'node:http';
|
|
2
1
|
import primitives from '@edge-runtime/primitives';
|
|
2
|
+
import { IncomingMessage, ServerResponse } from 'node:http';
|
|
3
3
|
import { RequestOptions, WebHandler, NodeHandler } from '@edge-runtime/node-utils';
|
|
4
4
|
|
|
5
5
|
interface NodeAdapterOptions extends RequestOptions {
|
package/dist/node.js
CHANGED
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
// src/index.ts
|
|
2
|
-
import primitives from "@edge-runtime/primitives";
|
|
3
2
|
import {
|
|
3
|
+
buildToFetchEvent,
|
|
4
4
|
buildToNodeHandler,
|
|
5
5
|
buildToRequest,
|
|
6
|
-
buildToFetchEvent,
|
|
7
6
|
mergeIntoServerResponse,
|
|
8
|
-
toToReadable,
|
|
9
7
|
toOutgoingHeaders
|
|
10
8
|
} from "@edge-runtime/node-utils";
|
|
9
|
+
import primitives from "@edge-runtime/primitives";
|
|
11
10
|
if (!Reflect.get(global, "DISABLE_INSTALL_MCA_SHIMS")) {
|
|
12
11
|
Object.assign(global, primitives, { console });
|
|
13
12
|
}
|
|
@@ -65,24 +64,44 @@ function addDuplexToInit(init) {
|
|
|
65
64
|
return init;
|
|
66
65
|
}
|
|
67
66
|
async function toServerResponse(webResponse, serverResponse) {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
67
|
+
if (!webResponse) {
|
|
68
|
+
serverResponse.end();
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
mergeIntoServerResponse(
|
|
72
|
+
// @ts-ignore getAll() is not standard https://fetch.spec.whatwg.org/#headers-class
|
|
73
|
+
toOutgoingHeaders(webResponse.headers),
|
|
74
|
+
serverResponse
|
|
75
|
+
);
|
|
76
|
+
serverResponse.statusCode = webResponse.status;
|
|
77
|
+
serverResponse.statusMessage = webResponse.statusText;
|
|
78
|
+
if (!webResponse.body) {
|
|
79
|
+
serverResponse.end();
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
await writeReadableStreamToWritable(webResponse.body, serverResponse);
|
|
83
|
+
}
|
|
84
|
+
async function writeReadableStreamToWritable(stream, writable) {
|
|
85
|
+
let reader = stream.getReader();
|
|
86
|
+
async function read() {
|
|
87
|
+
let { done, value } = await reader.read();
|
|
88
|
+
if (done) {
|
|
89
|
+
writable.end();
|
|
71
90
|
return;
|
|
72
91
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
);
|
|
78
|
-
serverResponse.statusCode = webResponse.status;
|
|
79
|
-
serverResponse.statusMessage = webResponse.statusText;
|
|
80
|
-
if (!webResponse.body) {
|
|
81
|
-
serverResponse.end();
|
|
82
|
-
return;
|
|
92
|
+
writable.write(value);
|
|
93
|
+
let flushable = writable;
|
|
94
|
+
if (typeof flushable.flush === "function") {
|
|
95
|
+
flushable.flush();
|
|
83
96
|
}
|
|
84
|
-
|
|
85
|
-
}
|
|
97
|
+
await read();
|
|
98
|
+
}
|
|
99
|
+
try {
|
|
100
|
+
await read();
|
|
101
|
+
} catch (error) {
|
|
102
|
+
writable.destroy(error);
|
|
103
|
+
throw error;
|
|
104
|
+
}
|
|
86
105
|
}
|
|
87
106
|
function toMiddleware(webHandler, options) {
|
|
88
107
|
const toRequest = buildToRequest(dependencies);
|
|
@@ -91,7 +110,7 @@ function toMiddleware(webHandler, options) {
|
|
|
91
110
|
const request = toRequest(incomingMessage, options);
|
|
92
111
|
const webResponse = await webHandler(request, toFetchEvent(request));
|
|
93
112
|
await toServerResponse(webResponse, serverResponse);
|
|
94
|
-
next();
|
|
113
|
+
await next();
|
|
95
114
|
};
|
|
96
115
|
}
|
|
97
116
|
export {
|