webhoster 0.3.3 → 0.3.5
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/README.md +4 -4
- package/data/CookieObject.js +1 -1
- package/{types/index.js → data/custom-types.js} +1 -1
- package/{types/typings.d.ts → data/middleware.d.ts} +1 -1
- package/helpers/RequestReader.js +1 -1
- package/helpers/ResponseHeaders.js +9 -10
- package/lib/HttpHandler.js +4 -4
- package/lib/HttpRequest.js +2 -2
- package/lib/HttpResponse.js +2 -2
- package/lib/HttpTransaction.js +2 -2
- package/middleware/AutoHeadersMiddleware.js +2 -2
- package/middleware/CORSMiddleware.js +3 -3
- package/middleware/CaseInsensitiveHeadersMiddleware.js +2 -2
- package/middleware/ContentDecoderMiddleware.js +1 -1
- package/middleware/ContentEncoderMiddleware.js +2 -2
- package/middleware/ContentLengthMiddleware.js +2 -2
- package/middleware/HashMiddleware.js +2 -2
- package/middleware/HeadMethodMiddleware.js +3 -3
- package/middleware/MethodMiddleware.js +3 -3
- package/middleware/PathMiddleware.js +4 -4
- package/middleware/ReadFormData.js +1 -1
- package/middleware/SendJsonMiddleware.js +4 -4
- package/middleware/SendStringMiddleware.js +3 -3
- package/package.json +21 -4
- package/templates/starter.js +2 -2
- package/types/data/CookieObject.d.ts +34 -0
- package/types/data/CookieObject.d.ts.map +1 -0
- package/types/data/custom-types.d.ts +111 -0
- package/types/data/custom-types.d.ts.map +1 -0
- package/types/errata/socketio.d.ts +11 -0
- package/types/errata/socketio.d.ts.map +1 -0
- package/types/examples/starter.d.ts +2 -0
- package/types/examples/starter.d.ts.map +1 -0
- package/types/helpers/HeadersParser.d.ts +27 -0
- package/types/helpers/HeadersParser.d.ts.map +1 -0
- package/types/helpers/HttpListener.d.ts +84 -0
- package/types/helpers/HttpListener.d.ts.map +1 -0
- package/types/helpers/RequestHeaders.d.ts +25 -0
- package/types/helpers/RequestHeaders.d.ts.map +1 -0
- package/types/helpers/RequestReader.d.ts +52 -0
- package/types/helpers/RequestReader.d.ts.map +1 -0
- package/types/helpers/ResponseHeaders.d.ts +126 -0
- package/types/helpers/ResponseHeaders.d.ts.map +1 -0
- package/types/helpers/index.d.ts +6 -0
- package/types/helpers/index.d.ts.map +1 -0
- package/types/lib/HttpHandler.d.ts +79 -0
- package/types/lib/HttpHandler.d.ts.map +1 -0
- package/types/lib/HttpRequest.d.ts +175 -0
- package/types/lib/HttpRequest.d.ts.map +1 -0
- package/types/lib/HttpResponse.d.ts +117 -0
- package/types/lib/HttpResponse.d.ts.map +1 -0
- package/types/lib/HttpTransaction.d.ts +114 -0
- package/types/lib/HttpTransaction.d.ts.map +1 -0
- package/types/middleware/AutoHeadersMiddleware.d.ts +27 -0
- package/types/middleware/AutoHeadersMiddleware.d.ts.map +1 -0
- package/types/middleware/CORSMiddleware.d.ts +65 -0
- package/types/middleware/CORSMiddleware.d.ts.map +1 -0
- package/types/middleware/CaseInsensitiveHeadersMiddleware.d.ts +27 -0
- package/types/middleware/CaseInsensitiveHeadersMiddleware.d.ts.map +1 -0
- package/types/middleware/ContentDecoderMiddleware.d.ts +17 -0
- package/types/middleware/ContentDecoderMiddleware.d.ts.map +1 -0
- package/types/middleware/ContentEncoderMiddleware.d.ts +48 -0
- package/types/middleware/ContentEncoderMiddleware.d.ts.map +1 -0
- package/types/middleware/ContentLengthMiddleware.d.ts +38 -0
- package/types/middleware/ContentLengthMiddleware.d.ts.map +1 -0
- package/types/middleware/HashMiddleware.d.ts +28 -0
- package/types/middleware/HashMiddleware.d.ts.map +1 -0
- package/types/middleware/HeadMethodMiddleware.d.ts +12 -0
- package/types/middleware/HeadMethodMiddleware.d.ts.map +1 -0
- package/types/middleware/MethodMiddleware.d.ts +40 -0
- package/types/middleware/MethodMiddleware.d.ts.map +1 -0
- package/types/middleware/PathMiddleware.d.ts +81 -0
- package/types/middleware/PathMiddleware.d.ts.map +1 -0
- package/types/middleware/ReadFormData.d.ts +7 -0
- package/types/middleware/ReadFormData.d.ts.map +1 -0
- package/types/middleware/SendJsonMiddleware.d.ts +51 -0
- package/types/middleware/SendJsonMiddleware.d.ts.map +1 -0
- package/types/middleware/SendStringMiddleware.d.ts +35 -0
- package/types/middleware/SendStringMiddleware.d.ts.map +1 -0
- package/types/templates/starter.d.ts +15 -0
- package/types/templates/starter.d.ts.map +1 -0
- package/types/utils/AsyncObject.d.ts +38 -0
- package/types/utils/AsyncObject.d.ts.map +1 -0
- package/types/utils/CaseInsensitiveObject.d.ts +9 -0
- package/types/utils/CaseInsensitiveObject.d.ts.map +1 -0
- package/types/utils/function.d.ts +2 -0
- package/types/utils/function.d.ts.map +1 -0
- package/types/utils/headers.d.ts +7 -0
- package/types/utils/headers.d.ts.map +1 -0
- package/types/utils/qualityValues.d.ts +12 -0
- package/types/utils/qualityValues.d.ts.map +1 -0
- package/types/utils/stream.d.ts +6 -0
- package/types/utils/stream.d.ts.map +1 -0
- package/utils/headers.js +1 -1
- package/.eslintrc.json +0 -96
- package/.github/FUNDING.yml +0 -4
- package/.github/copilot-instructions.md +0 -100
- package/.github/workflows/publish.yml +0 -29
- package/.github/workflows/test-matrix.yml +0 -37
- package/.test/benchmark.js +0 -28
- package/.test/constants.js +0 -4
- package/.test/cookietester.js +0 -19
- package/.test/http2server.js +0 -35
- package/.test/httpserver.js +0 -32
- package/.test/index.js +0 -498
- package/.test/multipromise.js +0 -32
- package/.test/tls.js +0 -75
- package/.test/urlencoded.js +0 -54
- package/.vscode/launch.json +0 -35
- package/.vscode/settings.json +0 -5
- package/CHANGELOG.md +0 -10
- package/CODE_OF_CONDUCT.md +0 -76
- package/errata/index.js +0 -1
- package/examples/starter.js +0 -11
- package/index.js +0 -4
- package/jsconfig.json +0 -12
- package/lib/index.js +0 -3
- package/middleware/ContentReaderMiddleware.js +0 -249
- package/middleware/ContentWriterMiddleware.js +0 -161
- package/middleware/SendHeadersMiddleware.js +0 -47
- package/middleware/index.js +0 -11
- package/polyfill/FormData.js +0 -164
- package/rollup.config.js +0 -8
- package/scripts/check-teapot.mjs +0 -40
- package/scripts/test-all-sync.sh +0 -6
- package/scripts/test-all.sh +0 -7
- package/test/fixtures/stream.js +0 -68
- package/test/helpers/HttpListener/construct.js +0 -18
- package/test/helpers/HttpListener/customOptions.js +0 -22
- package/test/helpers/HttpListener/doubleCreate.js +0 -40
- package/test/helpers/HttpListener/events.js +0 -77
- package/test/helpers/HttpListener/http.js +0 -31
- package/test/helpers/HttpListener/http2.js +0 -41
- package/test/helpers/HttpListener/https.js +0 -38
- package/test/helpers/HttpListener/startAll.js +0 -31
- package/test/helpers/HttpListener/stopNotStarted.js +0 -23
- package/test/lib/HttpHandler/class.js +0 -8
- package/test/lib/HttpHandler/handleRequest.js +0 -11
- package/test/lib/HttpHandler/middleware.js +0 -941
- package/test/lib/HttpHandler/parse.js +0 -41
- package/test/lib/HttpRequest/class.js +0 -8
- package/test/lib/HttpRequest/downstream.js +0 -171
- package/test/lib/HttpRequest/properties.js +0 -101
- package/test/lib/HttpRequest/read.js +0 -518
- package/test/lib/HttpResponse/async-iterable-middleware.js +0 -37
- package/test/lib/HttpResponse/async-iterable.js +0 -31
- package/test/lib/HttpResponse/class.js +0 -8
- package/test/lib/HttpResponse/properties.js +0 -59
- package/test/lib/HttpResponse/send.js +0 -275
- package/test/lib/HttpTransaction/class.js +0 -8
- package/test/lib/HttpTransaction/ping.js +0 -50
- package/test/lib/HttpTransaction/push.js +0 -89
- package/test/middleware/SendJsonMiddleware.js +0 -222
- package/test/sanity.js +0 -10
- package/test/templates/error-teapot.js +0 -47
- package/test/templates/starter.js +0 -93
- package/tsconfig.json +0 -30
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
export const SERVER_ALREADY_CREATED: "SERVER_ALREADY_CREATED";
|
|
2
|
+
export default class HttpListener {
|
|
3
|
+
/** @return {HttpListener} */
|
|
4
|
+
static get defaultInstance(): HttpListener;
|
|
5
|
+
/** @param {HttpListenerOptions} options */
|
|
6
|
+
constructor(options?: HttpListenerOptions);
|
|
7
|
+
/** @param {HttpListenerOptions} options */
|
|
8
|
+
configure(options?: HttpListenerOptions): void;
|
|
9
|
+
httpHandler: HttpHandler;
|
|
10
|
+
insecurePort: number;
|
|
11
|
+
insecureHost: string;
|
|
12
|
+
securePort: number;
|
|
13
|
+
secureHost: string;
|
|
14
|
+
useHttp: boolean;
|
|
15
|
+
useHttps: boolean;
|
|
16
|
+
useHttp2: boolean;
|
|
17
|
+
tlsOptions: import("tls").TlsOptions;
|
|
18
|
+
/**
|
|
19
|
+
* @param {import('node:http').ServerOptions} [options]
|
|
20
|
+
* @return {import('node:http').Server}
|
|
21
|
+
*/
|
|
22
|
+
createHttpServer(options?: import("node:http").ServerOptions): import("node:http").Server;
|
|
23
|
+
httpServer: import("http").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse>;
|
|
24
|
+
/**
|
|
25
|
+
* @param {import('node:https').ServerOptions} [options]
|
|
26
|
+
* @return {import('node:https').Server}
|
|
27
|
+
*/
|
|
28
|
+
createHttpsServer(options?: import("node:https").ServerOptions): import("node:https").Server;
|
|
29
|
+
httpsServer: import("https").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse>;
|
|
30
|
+
/**
|
|
31
|
+
* @param {import('node:http2').ServerOptions} [options]
|
|
32
|
+
* @return {import('node:http2').Http2SecureServer}
|
|
33
|
+
*/
|
|
34
|
+
createHttp2Server(options?: import("node:http2").ServerOptions): import("node:http2").Http2SecureServer;
|
|
35
|
+
http2Server: import("http2").Http2SecureServer<typeof import("http").IncomingMessage, typeof import("http").ServerResponse, typeof import("http2").Http2ServerRequest, typeof import("http2").Http2ServerResponse>;
|
|
36
|
+
/** @return {Promise<import('node:http').Server>} */
|
|
37
|
+
startHttpServer(): Promise<import("node:http").Server>;
|
|
38
|
+
/** @return {Promise<import('node:https').Server>} */
|
|
39
|
+
startHttpsServer(): Promise<import("node:https").Server>;
|
|
40
|
+
/** @return {Promise<import('node:http2').Http2SecureServer>} */
|
|
41
|
+
startHttp2Server(): Promise<import("node:http2").Http2SecureServer>;
|
|
42
|
+
/** @return {Promise<void>} */
|
|
43
|
+
stopHttpServer(): Promise<void>;
|
|
44
|
+
/** @return {Promise<void>} */
|
|
45
|
+
stopHttpsServer(): Promise<void>;
|
|
46
|
+
/** @return {Promise<void>} */
|
|
47
|
+
stopHttp2Server(): Promise<void>;
|
|
48
|
+
/**
|
|
49
|
+
* @return {Promise<[
|
|
50
|
+
* import('node:http').Server,
|
|
51
|
+
* import('node:https').Server,
|
|
52
|
+
* import('node:http2').Http2SecureServer
|
|
53
|
+
* ]>
|
|
54
|
+
* }
|
|
55
|
+
*/
|
|
56
|
+
startAll(): Promise<[import("node:http").Server, import("node:https").Server, import("node:http2").Http2SecureServer]>;
|
|
57
|
+
/**
|
|
58
|
+
* @return {Promise<void>}
|
|
59
|
+
*/
|
|
60
|
+
stopAll(): Promise<void>;
|
|
61
|
+
#private;
|
|
62
|
+
}
|
|
63
|
+
export type TlsOptions = import("tls").TlsOptions;
|
|
64
|
+
export type Http2Session = import("http2").Http2Session;
|
|
65
|
+
export type Http2Stream = import("http2").Http2Stream;
|
|
66
|
+
export type HttpListenerOptions = {
|
|
67
|
+
httpHandler?: HttpHandler;
|
|
68
|
+
insecurePort?: number;
|
|
69
|
+
/**
|
|
70
|
+
* blank defaults to '::' or '0.0.0.0'
|
|
71
|
+
*/
|
|
72
|
+
insecureHost?: string;
|
|
73
|
+
securePort?: number;
|
|
74
|
+
/**
|
|
75
|
+
* blank defaults to '::' or '0.0.0.0'
|
|
76
|
+
*/
|
|
77
|
+
secureHost?: string;
|
|
78
|
+
useHttp?: boolean;
|
|
79
|
+
useHttps?: boolean;
|
|
80
|
+
useHttp2?: boolean;
|
|
81
|
+
tlsOptions?: TlsOptions;
|
|
82
|
+
};
|
|
83
|
+
import HttpHandler from '../lib/HttpHandler.js';
|
|
84
|
+
//# sourceMappingURL=HttpListener.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HttpListener.d.ts","sourceRoot":"","sources":["../../helpers/HttpListener.js"],"names":[],"mappings":"AAOA,qCAAsC,wBAAwB,CAAC;AAsB/D;IACE,6BAA6B;IAC7B,8BADa,YAAY,CAMxB;IAsCD,2CAA2C;IAC3C,sBADY,mBAAmB,EAG9B;IAED,2CAA2C;IAC3C,oBADY,mBAAmB,QAW9B;IATC,yBAAqE;IACrE,qBAAgD;IAChD,qBAAwC;IACxC,mBAA4C;IAC5C,mBAAoC;IACpC,iBAAwC;IACxC,kBAAyC;IACzC,kBAA0C;IAC1C,qCAA0C;IAG5C;;;OAGG;IACH,2BAHW,OAAO,WAAW,EAAE,aAAa,GAChC,OAAO,WAAW,EAAE,MAAM,CASrC;IALG,+GAA2C;IAO/C;;;OAGG;IACH,4BAHW,OAAO,YAAY,EAAE,aAAa,GACjC,OAAO,YAAY,EAAE,MAAM,CAYtC;IARG,iHAGE;IAON;;;OAGG;IACH,4BAHW,OAAO,YAAY,EAAE,aAAa,GACjC,OAAO,YAAY,EAAE,iBAAiB,CAajD;IATG,mNAIE;IAON,oDAAoD;IACpD,mBADa,OAAO,CAAC,OAAO,WAAW,EAAE,MAAM,CAAC,CA8C/C;IAED,qDAAqD;IACrD,oBADa,OAAO,CAAC,OAAO,YAAY,EAAE,MAAM,CAAC,CA8ChD;IAED,gEAAgE;IAChE,oBADa,OAAO,CAAC,OAAO,YAAY,EAAE,iBAAiB,CAAC,CA0I3D;IAED,8BAA8B;IAC9B,kBADa,OAAO,CAAC,IAAI,CAAC,CAwBzB;IAED,8BAA8B;IAC9B,mBADa,OAAO,CAAC,IAAI,CAAC,CAwBzB;IAED,8BAA8B;IAC9B,mBADa,OAAO,CAAC,IAAI,CAAC,CAmCzB;IAED;;;;;;;OAOG;IACH,YAPY,OAAO,CAAC,CACnB,OAAU,WAAW,EAAE,MAAM,EAC7B,OAAU,YAAY,EAAE,MAAM,EAC9B,OAAU,YAAY,EAAE,iBAAiB,CACtC,CAAC,CASJ;IAED;;OAEG;IACH,WAFY,OAAO,CAAC,IAAI,CAAC,CAQxB;;CACF;yBAhea,OAAO,KAAK,EAAE,UAAU;2BACxB,OAAO,OAAO,EAAE,YAAY;0BAC5B,OAAO,OAAO,EAAE,WAAW;;kBAI/B,WAAW;mBACX,MAAM;;;;mBACN,MAAM;iBACN,MAAM;;;;iBACN,MAAM;cACN,OAAO;eACP,OAAO;eACP,OAAO;iBACP,UAAU;;wBAlBI,uBAAuB"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export default class RequestHeaders extends HeadersHandler {
|
|
2
|
+
/**
|
|
3
|
+
* @param {HttpRequest} request
|
|
4
|
+
* @return {{get:(name:string)=>string,all:(name:string)=>string[]}}
|
|
5
|
+
*/
|
|
6
|
+
static cookies(request: HttpRequest): {
|
|
7
|
+
get: (name: string) => string;
|
|
8
|
+
all: (name: string) => string[];
|
|
9
|
+
};
|
|
10
|
+
/** @param {HttpRequest} request */
|
|
11
|
+
constructor(request: HttpRequest);
|
|
12
|
+
/** @return {{get:(name:string)=>string,all:(name:string)=>string[]}} */
|
|
13
|
+
get cookies(): {
|
|
14
|
+
get: (name: string) => string;
|
|
15
|
+
all: (name: string) => string[];
|
|
16
|
+
};
|
|
17
|
+
/** @return {Object<string,string[]>} */
|
|
18
|
+
get cookieEntries(): {
|
|
19
|
+
[x: string]: string[];
|
|
20
|
+
};
|
|
21
|
+
#private;
|
|
22
|
+
}
|
|
23
|
+
export type HttpRequest = import("../lib/HttpRequest.js").default;
|
|
24
|
+
import HeadersHandler from './HeadersParser.js';
|
|
25
|
+
//# sourceMappingURL=RequestHeaders.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RequestHeaders.d.ts","sourceRoot":"","sources":["../../helpers/RequestHeaders.js"],"names":[],"mappings":"AAgCA;IASE;;;OAGG;IACH,wBAHW,WAAW,GACV;QAAC,GAAG,EAAC,CAAC,IAAI,EAAC,MAAM,KAAG,MAAM,CAAC;QAAA,GAAG,EAAC,CAAC,IAAI,EAAC,MAAM,KAAG,MAAM,EAAE,CAAA;KAAC,CAKlE;IAfD,mCAAmC;IACnC,qBADY,WAAW,EAMtB;IAcD,wEAAwE;IACxE,eADa;QAAC,GAAG,EAAC,CAAC,IAAI,EAAC,MAAM,KAAG,MAAM,CAAC;QAAA,GAAG,EAAC,CAAC,IAAI,EAAC,MAAM,KAAG,MAAM,EAAE,CAAA;KAAC,CAYnE;IAED,wCAAwC;IACxC;;MAqFC;;CACF;0BAxJa,OAAO,uBAAuB,EAAE,OAAO;2BAF1B,oBAAoB"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
export default class RequestReader {
|
|
2
|
+
/**
|
|
3
|
+
* @param {HttpRequest} request
|
|
4
|
+
* @param {RequestReaderOptions} [options]
|
|
5
|
+
*/
|
|
6
|
+
constructor(request: HttpRequest, options?: RequestReaderOptions);
|
|
7
|
+
request: import("../lib/HttpRequest.js").default;
|
|
8
|
+
/** @return {Promise<Buffer>} */
|
|
9
|
+
readBuffer(): Promise<Buffer>;
|
|
10
|
+
/** @return {Promise<string>} */
|
|
11
|
+
readString(): Promise<string>;
|
|
12
|
+
/** @return {Promise<Object<string,any>>} */
|
|
13
|
+
readJSON(): Promise<{
|
|
14
|
+
[x: string]: any;
|
|
15
|
+
}>;
|
|
16
|
+
/**
|
|
17
|
+
* The application/x-www-form-urlencoded format is in many ways an aberrant monstrosity,
|
|
18
|
+
* the result of many years of implementation accidents and compromises leading to a set of
|
|
19
|
+
* requirements necessary for interoperability, but in no way representing good design practices.
|
|
20
|
+
* In particular, readers are cautioned to pay close attention to the twisted details
|
|
21
|
+
* involving repeated (and in some cases nested) conversions between character encodings and byte sequences.
|
|
22
|
+
* Unfortunately the format is in widespread use due to the prevalence of HTML forms. [HTML]
|
|
23
|
+
* @return {Promise<[string, string][]>}
|
|
24
|
+
*/
|
|
25
|
+
readUrlEncoded(): Promise<[string, string][]>;
|
|
26
|
+
/** @return {Promise<Map<string,string>>} */
|
|
27
|
+
readUrlEncodedAsMap(): Promise<Map<string, string>>;
|
|
28
|
+
/** @return {Promise<Object<string,string>>} */
|
|
29
|
+
readUrlEncodedAsObject(): Promise<{
|
|
30
|
+
[x: string]: string;
|
|
31
|
+
}>;
|
|
32
|
+
/**
|
|
33
|
+
* Returns `readJSON()`, `readUrlEncodedAsObject`, or `Promise<null>` based on Content-Type
|
|
34
|
+
* @return {Promise<Object<string, any>|null>}
|
|
35
|
+
*/
|
|
36
|
+
readObject(): Promise<{
|
|
37
|
+
[x: string]: any;
|
|
38
|
+
} | null>;
|
|
39
|
+
/**
|
|
40
|
+
* Returns `readJSON()`, `readUrlEncoded`, `readBuffer()`, or `readString()` based on Content-Type
|
|
41
|
+
* @return {Promise<Object<string,any>|string|Buffer>}
|
|
42
|
+
*/
|
|
43
|
+
read(): Promise<{
|
|
44
|
+
[x: string]: any;
|
|
45
|
+
} | string | Buffer>;
|
|
46
|
+
#private;
|
|
47
|
+
}
|
|
48
|
+
export type HttpRequest = import("../data/custom-types.js").HttpRequest;
|
|
49
|
+
export type RequestReaderOptions = {
|
|
50
|
+
cache?: boolean;
|
|
51
|
+
};
|
|
52
|
+
//# sourceMappingURL=RequestReader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RequestReader.d.ts","sourceRoot":"","sources":["../../helpers/RequestReader.js"],"names":[],"mappings":"AAgBA;IAIE;;;OAGG;IACH,qBAHW,WAAW,YACX,oBAAoB,EAc9B;IADC,iDAAsB;IAGxB,gCAAgC;IAChC,cADa,OAAO,CAAC,MAAM,CAAC,CA0C3B;IAED,gCAAgC;IAChC,cADa,OAAO,CAAC,MAAM,CAAC,CAQ3B;IAED,4CAA4C;IAC5C,YADa,OAAO,CAAC;YAAO,MAAM,GAAC,GAAG;KAAC,CAAC,CAGvC;IAED;;;;;;;;OAQG;IACH,kBAFY,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAuDtC;IAED,4CAA4C;IAC5C,uBADa,OAAO,CAAC,GAAG,CAAC,MAAM,EAAC,MAAM,CAAC,CAAC,CAGvC;IAED,+CAA+C;IAC/C,0BADa,OAAO,CAAC;YAAO,MAAM,GAAC,MAAM;KAAC,CAAC,CAG1C;IAED;;;OAGG;IACH,cAFY,OAAO,CAAC;YAAO,MAAM,GAAE,GAAG;KAAC,GAAC,IAAI,CAAC,CAa5C;IAED;;;OAGG;IACH,QAFY,OAAO,CAAC;YAAO,MAAM,GAAC,GAAG;KAAC,GAAC,MAAM,GAAC,MAAM,CAAC,CAmBpD;;CACF;0BAlNa,OAAO,yBAAyB,EAAE,WAAW;;YAQjD,OAAO"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
export default class ResponseHeaders extends HeadersHandler {
|
|
2
|
+
/** @param {HttpResponse} response */
|
|
3
|
+
static cookies(response: HttpResponse): {
|
|
4
|
+
/**
|
|
5
|
+
* @param {string|CookieDetails|CookieObject} nameOrDetails
|
|
6
|
+
* @return {boolean}
|
|
7
|
+
*/
|
|
8
|
+
has(nameOrDetails: string | CookieDetails | CookieObject): boolean;
|
|
9
|
+
/**
|
|
10
|
+
* @param {string|CookieDetails} partial
|
|
11
|
+
* @return {CookieObject}
|
|
12
|
+
*/
|
|
13
|
+
get(partial: string | CookieDetails): CookieObject;
|
|
14
|
+
/**
|
|
15
|
+
* @param {string|CookieDetails} [partial]
|
|
16
|
+
* @return {CookieObject[]}
|
|
17
|
+
*/
|
|
18
|
+
getAll(partial?: string | CookieDetails): CookieObject[];
|
|
19
|
+
/**
|
|
20
|
+
* @param {CookieDetails} details
|
|
21
|
+
* @return {CookieObject}
|
|
22
|
+
*/
|
|
23
|
+
find(details: CookieDetails): CookieObject;
|
|
24
|
+
/**
|
|
25
|
+
* @param {CookieDetails} [details]
|
|
26
|
+
* @return {CookieObject[]}
|
|
27
|
+
*/
|
|
28
|
+
findAll(details?: CookieDetails): CookieObject[];
|
|
29
|
+
/**
|
|
30
|
+
* @param {string|CookieDetails} cookie
|
|
31
|
+
* @return {CookieObject}
|
|
32
|
+
*/
|
|
33
|
+
set(cookie: string | CookieDetails): CookieObject;
|
|
34
|
+
/**
|
|
35
|
+
* @param {string|CookieDetails} partial
|
|
36
|
+
* @return {number} count
|
|
37
|
+
*/
|
|
38
|
+
remove(partial: string | CookieDetails): number;
|
|
39
|
+
/**
|
|
40
|
+
* @param {string|CookieDetails} partial name or details
|
|
41
|
+
* @return {CookieObject}
|
|
42
|
+
*/
|
|
43
|
+
expire(partial: string | CookieDetails): CookieObject;
|
|
44
|
+
/**
|
|
45
|
+
* @param {string|CookieDetails} [partial]
|
|
46
|
+
* @return {CookieObject[]}
|
|
47
|
+
*/
|
|
48
|
+
expireAll(partial?: string | CookieDetails): CookieObject[];
|
|
49
|
+
};
|
|
50
|
+
/** @param {HttpResponse} response */
|
|
51
|
+
constructor(response: HttpResponse);
|
|
52
|
+
/** @param {string} contentType */
|
|
53
|
+
set contentType(contentType: string);
|
|
54
|
+
get contentType(): string;
|
|
55
|
+
/** @param {string} mediaType */
|
|
56
|
+
set mediaType(mediaType: string);
|
|
57
|
+
get mediaType(): string;
|
|
58
|
+
/** @param {string} charset */
|
|
59
|
+
set charset(charset: string);
|
|
60
|
+
get charset(): string;
|
|
61
|
+
/** @param {BufferEncoding} bufferEncoding */
|
|
62
|
+
set charsetAsBufferEncoding(bufferEncoding: BufferEncoding);
|
|
63
|
+
/** @return {BufferEncoding} */
|
|
64
|
+
get charsetAsBufferEncoding(): BufferEncoding;
|
|
65
|
+
/** @param {string} boundary */
|
|
66
|
+
set boundary(boundary: string);
|
|
67
|
+
get boundary(): string;
|
|
68
|
+
/** @param {number} value */
|
|
69
|
+
set contentLength(value: number);
|
|
70
|
+
get contentLength(): number;
|
|
71
|
+
get cookies(): {
|
|
72
|
+
/**
|
|
73
|
+
* @param {string|CookieDetails|CookieObject} nameOrDetails
|
|
74
|
+
* @return {boolean}
|
|
75
|
+
*/
|
|
76
|
+
has(nameOrDetails: string | CookieDetails | CookieObject): boolean;
|
|
77
|
+
/**
|
|
78
|
+
* @param {string|CookieDetails} partial
|
|
79
|
+
* @return {CookieObject}
|
|
80
|
+
*/
|
|
81
|
+
get(partial: string | CookieDetails): CookieObject;
|
|
82
|
+
/**
|
|
83
|
+
* @param {string|CookieDetails} [partial]
|
|
84
|
+
* @return {CookieObject[]}
|
|
85
|
+
*/
|
|
86
|
+
getAll(partial?: string | CookieDetails): CookieObject[];
|
|
87
|
+
/**
|
|
88
|
+
* @param {CookieDetails} details
|
|
89
|
+
* @return {CookieObject}
|
|
90
|
+
*/
|
|
91
|
+
find(details: CookieDetails): CookieObject;
|
|
92
|
+
/**
|
|
93
|
+
* @param {CookieDetails} [details]
|
|
94
|
+
* @return {CookieObject[]}
|
|
95
|
+
*/
|
|
96
|
+
findAll(details?: CookieDetails): CookieObject[];
|
|
97
|
+
/**
|
|
98
|
+
* @param {string|CookieDetails} cookie
|
|
99
|
+
* @return {CookieObject}
|
|
100
|
+
*/
|
|
101
|
+
set(cookie: string | CookieDetails): CookieObject;
|
|
102
|
+
/**
|
|
103
|
+
* @param {string|CookieDetails} partial
|
|
104
|
+
* @return {number} count
|
|
105
|
+
*/
|
|
106
|
+
remove(partial: string | CookieDetails): number;
|
|
107
|
+
/**
|
|
108
|
+
* @param {string|CookieDetails} partial name or details
|
|
109
|
+
* @return {CookieObject}
|
|
110
|
+
*/
|
|
111
|
+
expire(partial: string | CookieDetails): CookieObject;
|
|
112
|
+
/**
|
|
113
|
+
* @param {string|CookieDetails} [partial]
|
|
114
|
+
* @return {CookieObject[]}
|
|
115
|
+
*/
|
|
116
|
+
expireAll(partial?: string | CookieDetails): CookieObject[];
|
|
117
|
+
};
|
|
118
|
+
/** @return {Array<CookieObject>} */
|
|
119
|
+
get cookieEntries(): Array<CookieObject>;
|
|
120
|
+
#private;
|
|
121
|
+
}
|
|
122
|
+
export type HttpResponse = import("../lib/HttpResponse.js").default;
|
|
123
|
+
export type CookieDetails = import("../data/custom-types.js").CookieDetails;
|
|
124
|
+
import HeadersHandler from './HeadersParser.js';
|
|
125
|
+
import CookieObject from '../data/CookieObject.js';
|
|
126
|
+
//# sourceMappingURL=ResponseHeaders.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResponseHeaders.d.ts","sourceRoot":"","sources":["../../helpers/ResponseHeaders.js"],"names":[],"mappings":"AAuBA;IASE,qCAAqC;IACrC,yBADY,YAAY;QAsIpB;;;WAGG;2BAFQ,MAAM,GAAC,aAAa,GAAC,YAAY,GAChC,OAAO;QAKnB;;;WAGG;qBAFQ,MAAM,GAAC,aAAa,GACnB,YAAY;QAKxB;;;WAGG;yBAFQ,MAAM,GAAC,aAAa,GACnB,YAAY,EAAE;QAW1B;;;WAGG;sBAFQ,aAAa,GACZ,YAAY;QAKxB;;;WAGG;0BAFQ,aAAa,GACZ,YAAY,EAAE;QAmB1B;;;WAGG;oBAFQ,MAAM,GAAC,aAAa,GACnB,YAAY;QAmBxB;;;WAGG;wBAFQ,MAAM,GAAC,aAAa,GACnB,MAAM;QAUlB;;;WAGG;wBAFQ,MAAM,GAAC,aAAa,GACnB,YAAY;QAcxB;;;WAGG;4BAFQ,MAAM,GAAC,aAAa,GACnB,YAAY,EAAE;MA5O7B;IAZD,qCAAqC;IACrC,sBADY,YAAY,EAMvB;IA4BD,kCAAkC;IAClC,6BADY,MAAM,EAGjB;IAPD,mBAIY,MAAM,CAFjB;IAWD,gCAAgC;IAChC,yBADY,MAAM,EAQjB;IAZD,iBAIY,MAAM,CAFjB;IAgBD,8BAA8B;IAC9B,qBADY,MAAM,EAQjB;IAZD,eAIY,MAAM,CAFjB;IAoCD,6CAA6C;IAC7C,4CADY,cAAc,EAsBzB;IA9CD,+BAA+B;IAC/B,+BADa,cAAc,CAsB1B;IA8BD,+BAA+B;IAC/B,uBADY,MAAM,EAQjB;IAZD,gBAIY,MAAM,CAFjB;IAgBD,4BAA4B;IAC5B,yBADY,MAAM,EAGjB;IAPD,qBAIY,MAAM,CAFjB;IAOD;QAII;;;WAGG;2BAFQ,MAAM,GAAC,aAAa,GAAC,YAAY,GAChC,OAAO;QAKnB;;;WAGG;qBAFQ,MAAM,GAAC,aAAa,GACnB,YAAY;QAKxB;;;WAGG;yBAFQ,MAAM,GAAC,aAAa,GACnB,YAAY,EAAE;QAW1B;;;WAGG;sBAFQ,aAAa,GACZ,YAAY;QAKxB;;;WAGG;0BAFQ,aAAa,GACZ,YAAY,EAAE;QAmB1B;;;WAGG;oBAFQ,MAAM,GAAC,aAAa,GACnB,YAAY;QAmBxB;;;WAGG;wBAFQ,MAAM,GAAC,aAAa,GACnB,MAAM;QAUlB;;;WAGG;wBAFQ,MAAM,GAAC,aAAa,GACnB,YAAY;QAcxB;;;WAGG;4BAFQ,MAAM,GAAC,aAAa,GACnB,YAAY,EAAE;MAY7B;IAED,oCAAoC;IACpC,qBADa,KAAK,CAAC,YAAY,CAAC,CAoD/B;;CACF;2BA/Ua,OAAO,wBAAwB,EAAE,OAAO;4BACxC,OAAO,yBAAyB,EAAE,aAAa;2BAHlC,oBAAoB;yBAFtB,yBAAyB"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { default as HttpListener } from "./HttpListener.js";
|
|
2
|
+
export { default as HeadersParser } from "./HeadersParser.js";
|
|
3
|
+
export { default as RequestHeaders } from "./RequestHeaders.js";
|
|
4
|
+
export { default as RequestReader } from "./RequestReader.js";
|
|
5
|
+
export { default as ResponseHeaders } from "./ResponseHeaders.js";
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../helpers/index.js"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @typedef {Object} HttpHandlerOptions
|
|
3
|
+
* @prop {Middleware[]} [middleware]
|
|
4
|
+
* @prop {MiddlewareErrorHandler[]} [errorHandlers]
|
|
5
|
+
*/
|
|
6
|
+
export default class HttpHandler {
|
|
7
|
+
/** @type {true} */
|
|
8
|
+
static CONTINUE: true;
|
|
9
|
+
/** @type {false} */
|
|
10
|
+
static BREAK: false;
|
|
11
|
+
/** @type {0} */
|
|
12
|
+
static END: 0;
|
|
13
|
+
/** @return {HttpHandler} */
|
|
14
|
+
static get defaultInstance(): HttpHandler;
|
|
15
|
+
/**
|
|
16
|
+
* @param {any} result
|
|
17
|
+
* @return {?MiddlewareFlowInstruction}
|
|
18
|
+
*/
|
|
19
|
+
static ParseResultSync(result: any): MiddlewareFlowInstruction | null;
|
|
20
|
+
/**
|
|
21
|
+
* @param {string} scheme
|
|
22
|
+
* @param {string} authority
|
|
23
|
+
* @param {string} path
|
|
24
|
+
*/
|
|
25
|
+
static parseURL(scheme: string, authority: string, path: string): {
|
|
26
|
+
href: string;
|
|
27
|
+
origin: string;
|
|
28
|
+
protocol: string;
|
|
29
|
+
username: string;
|
|
30
|
+
password: string;
|
|
31
|
+
host: string;
|
|
32
|
+
hostname: string;
|
|
33
|
+
port: string;
|
|
34
|
+
pathname: string;
|
|
35
|
+
search: string;
|
|
36
|
+
hash: string;
|
|
37
|
+
query: string;
|
|
38
|
+
fragment: string;
|
|
39
|
+
url: string;
|
|
40
|
+
};
|
|
41
|
+
/** @param {HttpHandlerOptions} options */
|
|
42
|
+
constructor(options?: HttpHandlerOptions);
|
|
43
|
+
middleware: import("../data/middleware.js").Middleware[];
|
|
44
|
+
errorHandlers: import("../data/custom-types.js").MiddlewareErrorHandler[];
|
|
45
|
+
/**
|
|
46
|
+
* @param {HttpTransaction} transaction
|
|
47
|
+
* @return {Promise<HttpTransaction>}
|
|
48
|
+
*/
|
|
49
|
+
handleTransaction(transaction: HttpTransaction): Promise<HttpTransaction>;
|
|
50
|
+
/**
|
|
51
|
+
* @param {import('http').IncomingMessage} incomingMessage
|
|
52
|
+
* @param {import('http').ServerResponse} serverResponse
|
|
53
|
+
* @return {Promise<HttpTransaction>}
|
|
54
|
+
*/
|
|
55
|
+
handleHttp1Request(incomingMessage: import("http").IncomingMessage, serverResponse: import("http").ServerResponse): Promise<HttpTransaction>;
|
|
56
|
+
/**
|
|
57
|
+
* @param {import('http2').ServerHttp2Stream} stream
|
|
58
|
+
* @param {import('http2').IncomingHttpHeaders} headers
|
|
59
|
+
* @param {Partial<import('./HttpTransaction.js').HttpTransactionOptions<unknown>>} [transactionOptions]
|
|
60
|
+
* @return {Promise<HttpTransaction>}
|
|
61
|
+
*/
|
|
62
|
+
handleHttp2Stream(stream: import("http2").ServerHttp2Stream, headers: import("http2").IncomingHttpHeaders, transactionOptions?: Partial<import("./HttpTransaction.js").HttpTransactionOptions<unknown>>): Promise<HttpTransaction>;
|
|
63
|
+
/**
|
|
64
|
+
* @param {HttpTransaction} transaction
|
|
65
|
+
* @param {Middleware} middleware
|
|
66
|
+
* @return {Promise<MiddlewareFlowInstruction>}
|
|
67
|
+
*/
|
|
68
|
+
processMiddleware(transaction: HttpTransaction, middleware: Middleware): Promise<MiddlewareFlowInstruction>;
|
|
69
|
+
}
|
|
70
|
+
export type Middleware = import("../data/custom-types.js").Middleware;
|
|
71
|
+
export type MiddlewareErrorHandler = import("../data/custom-types.js").MiddlewareErrorHandler;
|
|
72
|
+
export type MiddlewareFlowInstruction = import("../data/custom-types.js").MiddlewareFlowInstruction;
|
|
73
|
+
export type RequestMethod = import("../data/custom-types.js").RequestMethod;
|
|
74
|
+
export type HttpHandlerOptions = {
|
|
75
|
+
middleware?: Middleware[];
|
|
76
|
+
errorHandlers?: MiddlewareErrorHandler[];
|
|
77
|
+
};
|
|
78
|
+
import HttpTransaction from './HttpTransaction.js';
|
|
79
|
+
//# sourceMappingURL=HttpHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HttpHandler.d.ts","sourceRoot":"","sources":["../../lib/HttpHandler.js"],"names":[],"mappings":"AAiBA;;;;GAIG;AACH;IACE,mBAAmB;IACnB,iBADW,IAAI,CACQ;IAEvB,oBAAoB;IACpB,cADW,KAAK,CACK;IAErB,gBAAgB;IAChB,YADW,CAAC,CACG;IAEf,4BAA4B;IAC5B,8BADa,WAAW,CAMvB;IAED;;;OAGG;IACH,+BAHW,GAAG,GACD,yBAAyB,OAAA,CAkBrC;IAED;;;;OAIG;IACH,wBAJW,MAAM,aACN,MAAM,QACN,MAAM;;;;;;;;;;;;;;;MA6DhB;IAED,0CAA0C;IAC1C,sBADY,kBAAkB,EAO7B;IALC,yDAA0C;IAC1C,0EAAgD;IA2IlD;;;OAGG;IACH,+BAHW,eAAe,GACd,OAAO,CAAC,eAAe,CAAC,CAwBnC;IAED;;;;OAIG;IACH,oCAJW,OAAO,MAAM,EAAE,eAAe,kBAC9B,OAAO,MAAM,EAAE,cAAc,GAC5B,OAAO,CAAC,eAAe,CAAC,CAyFnC;IAED;;;;;OAKG;IACH,0BALW,OAAO,OAAO,EAAE,iBAAiB,WACjC,OAAO,OAAO,EAAE,mBAAmB,uBACnC,OAAO,CAAC,OAAO,sBAAsB,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC,GACtE,OAAO,CAAC,eAAe,CAAC,CAiKnC;IApaD;;;;OAIG;IACH,+BAJW,eAAe,cACf,UAAU,GACT,OAAO,CAAC,yBAAyB,CAAC,CAgI7C;CAkSF;yBAriBa,OAAO,yBAAyB,EAAE,UAAU;qCAC5C,OAAO,yBAAyB,EAAE,sBAAsB;wCACxD,OAAO,yBAAyB,EAAE,yBAAyB;4BAC3D,OAAO,yBAAyB,EAAE,aAAa;;iBAOnD,UAAU,EAAE;oBACZ,sBAAsB,EAAE;;4BAbN,sBAAsB"}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @typedef HttpRequestOptions
|
|
3
|
+
* @prop {IncomingHttpHeaders} [headers]
|
|
4
|
+
* @prop {RequestMethod} method
|
|
5
|
+
* @prop {Readable} stream
|
|
6
|
+
* @prop {string} href URL.href
|
|
7
|
+
* @prop {URL['origin']} origin URL.origin
|
|
8
|
+
* @prop {URL['protocol']} protocol URL.protocol
|
|
9
|
+
* @prop {URL['username']} username URL.username
|
|
10
|
+
* @prop {URL['password']} password URL.password
|
|
11
|
+
* @prop {URL['host']} host URL.host
|
|
12
|
+
* @prop {URL['hostname']} hostname URL.hostname
|
|
13
|
+
* @prop {URL['port']} port URL.port
|
|
14
|
+
* @prop {URL['pathname']} pathname URL.pathname
|
|
15
|
+
* @prop {URL['search']} search URL.search
|
|
16
|
+
* @prop {URL['hash']} hash URL.hash
|
|
17
|
+
* @prop {string} scheme
|
|
18
|
+
* @prop {string} authority
|
|
19
|
+
* @prop {string} path unparsed path
|
|
20
|
+
* @prop {string} url unparsed url
|
|
21
|
+
* @prop {string} query
|
|
22
|
+
* @prop {string} fragment
|
|
23
|
+
*/
|
|
24
|
+
/**
|
|
25
|
+
* @implements {URL}
|
|
26
|
+
*/
|
|
27
|
+
export default class HttpRequest implements URL {
|
|
28
|
+
/** @param {HttpRequestOptions} options */
|
|
29
|
+
constructor(options: HttpRequestOptions);
|
|
30
|
+
/** @type {number} Minimum initial buffer size when working with chunks. Default 64KB */
|
|
31
|
+
MIN_INITIAL_BUFFER_SIZE: number;
|
|
32
|
+
/** @type {number} Maximium initial buffer size when working with chunks. Default 4MB */
|
|
33
|
+
MAX_INITIAL_BUFFER_SIZE: number;
|
|
34
|
+
/** @type {number} Absolute maximum buffer size to be allocated per request. Default 64MB */
|
|
35
|
+
MAX_BUFFER_SIZE: number;
|
|
36
|
+
/** @type {ContentReaderRegistration[]} */
|
|
37
|
+
contentReaders: ContentReaderRegistration[];
|
|
38
|
+
/** @type {IncomingHttpHeaders} */
|
|
39
|
+
headers: IncomingHttpHeaders;
|
|
40
|
+
method: import("../data/custom-types.js").RequestMethod;
|
|
41
|
+
stream: Readable;
|
|
42
|
+
href: string;
|
|
43
|
+
origin: string;
|
|
44
|
+
protocol: string;
|
|
45
|
+
username: string;
|
|
46
|
+
password: string;
|
|
47
|
+
host: string;
|
|
48
|
+
hostname: string;
|
|
49
|
+
port: string;
|
|
50
|
+
pathname: string;
|
|
51
|
+
search: string;
|
|
52
|
+
hash: string;
|
|
53
|
+
scheme: string;
|
|
54
|
+
authority: string;
|
|
55
|
+
path: string;
|
|
56
|
+
query: string;
|
|
57
|
+
fragment: string;
|
|
58
|
+
url: string;
|
|
59
|
+
/**
|
|
60
|
+
* @param {import('stream').Duplex} downstream
|
|
61
|
+
* @param {Object} [options]
|
|
62
|
+
* @param {boolean} [options.forwardErrors=true] Forward errors back toward source
|
|
63
|
+
* @param {boolean} [options.autoPipe=true]
|
|
64
|
+
* @param {boolean} [options.autoDestroy=true] Ignored if auto-piping
|
|
65
|
+
* @param {boolean} [options.autoPause=false]
|
|
66
|
+
* @return {Readable} previous tailend stream
|
|
67
|
+
*/
|
|
68
|
+
addDownstream(downstream: import("stream").Duplex, options?: {
|
|
69
|
+
forwardErrors?: boolean;
|
|
70
|
+
autoPipe?: boolean;
|
|
71
|
+
autoDestroy?: boolean;
|
|
72
|
+
autoPause?: boolean;
|
|
73
|
+
}): Readable;
|
|
74
|
+
get bodyUsed(): boolean;
|
|
75
|
+
/**
|
|
76
|
+
* @throws {Error<'NOT_SUPPORTED'>}
|
|
77
|
+
* @return {?ReadableStream}
|
|
78
|
+
*/
|
|
79
|
+
get readable(): ReadableStream | null;
|
|
80
|
+
read(): Promise<any>;
|
|
81
|
+
/**
|
|
82
|
+
* @throws {Error<'MAX_BUFFER_SIZE_REACHED'>}
|
|
83
|
+
* @return {Promise<Buffer>}
|
|
84
|
+
*/
|
|
85
|
+
buffer(): Promise<Buffer>;
|
|
86
|
+
/**
|
|
87
|
+
* @return {Promise<ArrayBufferLike>}
|
|
88
|
+
*/
|
|
89
|
+
arrayBuffer(): Promise<ArrayBufferLike>;
|
|
90
|
+
blob(): Promise<Blob | import("buffer").Blob>;
|
|
91
|
+
text(): Promise<string>;
|
|
92
|
+
/** @return {Promise<any>} */
|
|
93
|
+
json(): Promise<any>;
|
|
94
|
+
get mediaType(): import("../data/custom-types.js").MediaType;
|
|
95
|
+
/** @return {null|undefined|string} */
|
|
96
|
+
get charset(): null | undefined | string;
|
|
97
|
+
get bufferEncoding(): BufferEncoding;
|
|
98
|
+
formData(): Promise<void>;
|
|
99
|
+
get searchParams(): URLSearchParams;
|
|
100
|
+
toJSON(): string;
|
|
101
|
+
toString(): string;
|
|
102
|
+
get body(): ReadableStream<any>;
|
|
103
|
+
#private;
|
|
104
|
+
}
|
|
105
|
+
export type RequestMethod = import("../data/custom-types.js").RequestMethod;
|
|
106
|
+
export type IncomingHttpHeaders = import("http").IncomingHttpHeaders;
|
|
107
|
+
export type MediaType = import("../data/custom-types.js").MediaType;
|
|
108
|
+
export type ContentReaderRegistration = Partial<MediaType> & {
|
|
109
|
+
parse: (this: HttpRequest) => any | PromiseLike<any>;
|
|
110
|
+
test?: (this: HttpRequest, mediaType: MediaType) => boolean;
|
|
111
|
+
};
|
|
112
|
+
export type HttpRequestOptions = {
|
|
113
|
+
headers?: IncomingHttpHeaders;
|
|
114
|
+
method: RequestMethod;
|
|
115
|
+
stream: Readable;
|
|
116
|
+
/**
|
|
117
|
+
* URL.href
|
|
118
|
+
*/
|
|
119
|
+
href: string;
|
|
120
|
+
/**
|
|
121
|
+
* URL.origin
|
|
122
|
+
*/
|
|
123
|
+
origin: URL["origin"];
|
|
124
|
+
/**
|
|
125
|
+
* URL.protocol
|
|
126
|
+
*/
|
|
127
|
+
protocol: URL["protocol"];
|
|
128
|
+
/**
|
|
129
|
+
* URL.username
|
|
130
|
+
*/
|
|
131
|
+
username: URL["username"];
|
|
132
|
+
/**
|
|
133
|
+
* URL.password
|
|
134
|
+
*/
|
|
135
|
+
password: URL["password"];
|
|
136
|
+
/**
|
|
137
|
+
* URL.host
|
|
138
|
+
*/
|
|
139
|
+
host: URL["host"];
|
|
140
|
+
/**
|
|
141
|
+
* URL.hostname
|
|
142
|
+
*/
|
|
143
|
+
hostname: URL["hostname"];
|
|
144
|
+
/**
|
|
145
|
+
* URL.port
|
|
146
|
+
*/
|
|
147
|
+
port: URL["port"];
|
|
148
|
+
/**
|
|
149
|
+
* URL.pathname
|
|
150
|
+
*/
|
|
151
|
+
pathname: URL["pathname"];
|
|
152
|
+
/**
|
|
153
|
+
* URL.search
|
|
154
|
+
*/
|
|
155
|
+
search: URL["search"];
|
|
156
|
+
/**
|
|
157
|
+
* URL.hash
|
|
158
|
+
*/
|
|
159
|
+
hash: URL["hash"];
|
|
160
|
+
scheme: string;
|
|
161
|
+
authority: string;
|
|
162
|
+
/**
|
|
163
|
+
* unparsed path
|
|
164
|
+
*/
|
|
165
|
+
path: string;
|
|
166
|
+
/**
|
|
167
|
+
* unparsed url
|
|
168
|
+
*/
|
|
169
|
+
url: string;
|
|
170
|
+
query: string;
|
|
171
|
+
fragment: string;
|
|
172
|
+
};
|
|
173
|
+
import { Readable } from 'node:stream';
|
|
174
|
+
import { URLSearchParams } from 'node:url';
|
|
175
|
+
//# sourceMappingURL=HttpRequest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HttpRequest.d.ts","sourceRoot":"","sources":["../../lib/HttpRequest.js"],"names":[],"mappings":"AAiBA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH;;GAEG;AACH,4CAFgB,GAAG;IA8BjB,0CAA0C;IAC1C,qBADY,kBAAkB,EAyB7B;IAzCD,wFAAwF;IACxF,yBADW,MAAM,CACmB;IAEpC,wFAAwF;IACxF,yBADW,MAAM,CACyB;IAE1C,4FAA4F;IAC5F,iBADW,MAAM,CACkB;IAEnC,0CAA0C;IAC1C,gBADW,yBAAyB,EAAE,CAKpC;IAIA,kCAAkC;IAClC,SADW,mBAAmB,CACM;IACpC,wDAA4B;IAC5B,iBAA4B;IAE5B,aAAwB;IACxB,eAA4B;IAC5B,iBAAgC;IAChC,iBAAgC;IAChC,iBAAgC;IAChC,aAAwB;IACxB,iBAAgC;IAChC,aAAwB;IACxB,iBAAgC;IAChC,eAA4B;IAC5B,aAAwB;IAExB,eAA4B;IAC5B,kBAAkC;IAClC,aAAwB;IACxB,cAA0B;IAC1B,iBAAgC;IAChC,YAAsB;IAGxB;;;;;;;;OAQG;IACH,0BARW,OAAO,QAAQ,EAAE,MAAM,YAE/B;QAA0B,aAAa,GAA/B,OAAO;QACW,QAAQ,GAA1B,OAAO;QACW,WAAW,GAA7B,OAAO;QACW,SAAS,GAA3B,OAAO;KACf,GAAS,QAAQ,CAwBnB;IAED,wBAAyC;IAEzC;;;OAGG;IACH,gBAFa,cAAc,OAAA,CAiB1B;IAED,qBA+BC;IAED;;;OAGG;IACH,UAFY,OAAO,CAAC,MAAM,CAAC,CAqC1B;IAED;;OAEG;IACH,eAFY,OAAO,CAAC,eAAe,CAAC,CAYnC;IAED,8CA2CC;IAED,wBAsBC;IAED,6BAA6B;IAC7B,QADa,OAAO,CAAC,GAAG,CAAC,CAQxB;IAED,6DAwCC;IAED,sCAAsC;IACtC,eADa,IAAI,GAAC,SAAS,GAAC,MAAM,CAGjC;IAED,qCAqBC;IAGD,0BAEC;IAED,oCAGC;IAED,iBAEC;IAED,mBAEC;IAED,gCAEC;;CACF;4BA3Za,OAAO,yBAAyB,EAAE,aAAa;kCAC/C,OAAO,MAAM,EAAE,mBAAmB;wBAClC,OAAO,yBAAyB,EAAE,SAAS;wCAE3C,OAAO,CAAC,SAAS,CAAC,GAAG;IAAC,KAAK,EAAC,CAAC,IAAI,EAAC,WAAW,KAAG,GAAG,GAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAAC,IAAI,CAAC,EAAC,CAAC,IAAI,EAAC,WAAW,EAAE,SAAS,EAAE,SAAS,KAAG,OAAO,CAAA;CAAC;;cAYlI,mBAAmB;YACnB,aAAa;YACb,QAAQ;;;;UACR,MAAM;;;;YACN,GAAG,CAAC,QAAQ,CAAC;;;;cACb,GAAG,CAAC,UAAU,CAAC;;;;cACf,GAAG,CAAC,UAAU,CAAC;;;;cACf,GAAG,CAAC,UAAU,CAAC;;;;UACf,GAAG,CAAC,MAAM,CAAC;;;;cACX,GAAG,CAAC,UAAU,CAAC;;;;UACf,GAAG,CAAC,MAAM,CAAC;;;;cACX,GAAG,CAAC,UAAU,CAAC;;;;YACf,GAAG,CAAC,QAAQ,CAAC;;;;UACb,GAAG,CAAC,MAAM,CAAC;YACX,MAAM;eACN,MAAM;;;;UACN,MAAM;;;;SACN,MAAM;WACN,MAAM;cACN,MAAM;;yBAtCS,aAAa;gCACN,UAAU"}
|