spiceflow 0.0.7 → 1.0.1
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 +1 -171
- package/dist/client/errors.d.ts +7 -0
- package/dist/client/errors.d.ts.map +1 -0
- package/dist/client/errors.js +18 -0
- package/dist/client/errors.js.map +1 -0
- package/dist/client/index.d.ts +15 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +376 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/types.d.ts +87 -0
- package/dist/client/types.d.ts.map +1 -0
- package/dist/client/types.js +2 -0
- package/dist/client/types.js.map +1 -0
- package/dist/client/utils.d.ts +2 -0
- package/dist/client/utils.d.ts.map +1 -0
- package/dist/client/utils.js +9 -0
- package/dist/client/utils.js.map +1 -0
- package/dist/client/ws.d.ts +15 -0
- package/dist/client/ws.d.ts.map +1 -0
- package/dist/client/ws.js +51 -0
- package/dist/client/ws.js.map +1 -0
- package/dist/client.test.d.ts +2 -0
- package/dist/client.test.d.ts.map +1 -0
- package/dist/client.test.js +237 -0
- package/dist/client.test.js.map +1 -0
- package/dist/elysia-fork/context.d.ts +87 -0
- package/dist/elysia-fork/context.d.ts.map +1 -0
- package/dist/elysia-fork/context.js +2 -0
- package/dist/elysia-fork/context.js.map +1 -0
- package/dist/elysia-fork/error.d.ts +246 -0
- package/dist/elysia-fork/error.d.ts.map +1 -0
- package/dist/elysia-fork/error.js +195 -0
- package/dist/elysia-fork/error.js.map +1 -0
- package/dist/elysia-fork/types.d.ts +570 -0
- package/dist/elysia-fork/types.d.ts.map +1 -0
- package/dist/elysia-fork/types.js +3 -0
- package/dist/elysia-fork/types.js.map +1 -0
- package/dist/elysia-fork/utils.d.ts +134 -0
- package/dist/elysia-fork/utils.d.ts.map +1 -0
- package/dist/elysia-fork/utils.js +70 -0
- package/dist/elysia-fork/utils.js.map +1 -0
- package/dist/index.d.ts +2 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -22
- package/dist/index.js.map +1 -1
- package/dist/spiceflow.d.ts +237 -0
- package/dist/spiceflow.d.ts.map +1 -0
- package/dist/spiceflow.js +484 -0
- package/dist/spiceflow.js.map +1 -0
- package/dist/spiceflow.test.d.ts +2 -0
- package/dist/spiceflow.test.d.ts.map +1 -0
- package/dist/spiceflow.test.js +225 -0
- package/dist/spiceflow.test.js.map +1 -0
- package/dist/stream.test.d.ts +2 -0
- package/dist/stream.test.d.ts.map +1 -0
- package/dist/stream.test.js +286 -0
- package/dist/stream.test.js.map +1 -0
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +4 -20
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +17 -46
- package/dist/utils.js.map +1 -1
- package/package.json +12 -37
- package/src/client/errors.ts +21 -0
- package/src/client/index.ts +541 -0
- package/src/client/types.ts +233 -0
- package/src/client/utils.ts +7 -0
- package/src/client/ws.ts +99 -0
- package/src/client.test.ts +235 -0
- package/src/elysia-fork/context.ts +196 -0
- package/src/elysia-fork/error.ts +293 -0
- package/src/elysia-fork/types.ts +1353 -0
- package/src/elysia-fork/utils.ts +85 -0
- package/src/index.ts +2 -34
- package/src/spiceflow.test.ts +290 -0
- package/src/spiceflow.ts +1251 -0
- package/src/stream.test.ts +342 -0
- package/src/types.ts +0 -0
- package/src/utils.ts +21 -70
- package/context.d.ts +0 -2
- package/context.js +0 -1
- package/dist/babel.test.d.ts +0 -2
- package/dist/babel.test.d.ts.map +0 -1
- package/dist/babel.test.js +0 -27
- package/dist/babel.test.js.map +0 -1
- package/dist/babelDebugOutputs.d.ts +0 -9
- package/dist/babelDebugOutputs.d.ts.map +0 -1
- package/dist/babelDebugOutputs.js +0 -34
- package/dist/babelDebugOutputs.js.map +0 -1
- package/dist/babelTransformRpc.d.ts +0 -19
- package/dist/babelTransformRpc.d.ts.map +0 -1
- package/dist/babelTransformRpc.js +0 -285
- package/dist/babelTransformRpc.js.map +0 -1
- package/dist/browser.d.ts +0 -8
- package/dist/browser.d.ts.map +0 -1
- package/dist/browser.js +0 -126
- package/dist/browser.js.map +0 -1
- package/dist/build.d.ts +0 -13
- package/dist/build.d.ts.map +0 -1
- package/dist/build.js +0 -230
- package/dist/build.js.map +0 -1
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -111
- package/dist/cli.js.map +0 -1
- package/dist/context-internal.d.ts +0 -20
- package/dist/context-internal.d.ts.map +0 -1
- package/dist/context-internal.js +0 -16
- package/dist/context-internal.js.map +0 -1
- package/dist/context.d.ts +0 -2
- package/dist/context.d.ts.map +0 -1
- package/dist/context.js +0 -2
- package/dist/context.js.map +0 -1
- package/dist/expose.d.ts +0 -6
- package/dist/expose.d.ts.map +0 -1
- package/dist/expose.js +0 -32
- package/dist/expose.js.map +0 -1
- package/dist/headers.d.ts +0 -2
- package/dist/headers.d.ts.map +0 -1
- package/dist/headers.js +0 -18
- package/dist/headers.js.map +0 -1
- package/dist/jsonRpc.d.ts +0 -32
- package/dist/jsonRpc.d.ts.map +0 -1
- package/dist/jsonRpc.js +0 -3
- package/dist/jsonRpc.js.map +0 -1
- package/dist/server.d.ts +0 -32
- package/dist/server.d.ts.map +0 -1
- package/dist/server.js +0 -292
- package/dist/server.js.map +0 -1
- package/headers.d.ts +0 -2
- package/headers.js +0 -1
- package/sdk-template/package.json +0 -22
- package/sdk-template/src/index.ts +0 -2
- package/sdk-template/src/v1/example.ts +0 -5
- package/sdk-template/src/v1/generator.ts +0 -12
- package/sdk-template/tsconfig.json +0 -16
- package/src/babel.test.ts +0 -35
- package/src/babelDebugOutputs.ts +0 -56
- package/src/babelTransformRpc.ts +0 -394
- package/src/browser.ts +0 -141
- package/src/build.ts +0 -298
- package/src/cli.ts +0 -132
- package/src/context-internal.ts +0 -36
- package/src/context.ts +0 -5
- package/src/expose.ts +0 -34
- package/src/headers.ts +0 -19
- package/src/jsonRpc.ts +0 -43
- package/src/server.ts +0 -384
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
export declare const StatusMap: {
|
|
2
|
+
readonly Continue: 100;
|
|
3
|
+
readonly 'Switching Protocols': 101;
|
|
4
|
+
readonly Processing: 102;
|
|
5
|
+
readonly 'Early Hints': 103;
|
|
6
|
+
readonly OK: 200;
|
|
7
|
+
readonly Created: 201;
|
|
8
|
+
readonly Accepted: 202;
|
|
9
|
+
readonly 'Non-Authoritative Information': 203;
|
|
10
|
+
readonly 'No Content': 204;
|
|
11
|
+
readonly 'Reset Content': 205;
|
|
12
|
+
readonly 'Partial Content': 206;
|
|
13
|
+
readonly 'Multi-Status': 207;
|
|
14
|
+
readonly 'Already Reported': 208;
|
|
15
|
+
readonly 'Multiple Choices': 300;
|
|
16
|
+
readonly 'Moved Permanently': 301;
|
|
17
|
+
readonly Found: 302;
|
|
18
|
+
readonly 'See Other': 303;
|
|
19
|
+
readonly 'Not Modified': 304;
|
|
20
|
+
readonly 'Temporary Redirect': 307;
|
|
21
|
+
readonly 'Permanent Redirect': 308;
|
|
22
|
+
readonly 'Bad Request': 400;
|
|
23
|
+
readonly Unauthorized: 401;
|
|
24
|
+
readonly 'Payment Required': 402;
|
|
25
|
+
readonly Forbidden: 403;
|
|
26
|
+
readonly 'Not Found': 404;
|
|
27
|
+
readonly 'Method Not Allowed': 405;
|
|
28
|
+
readonly 'Not Acceptable': 406;
|
|
29
|
+
readonly 'Proxy Authentication Required': 407;
|
|
30
|
+
readonly 'Request Timeout': 408;
|
|
31
|
+
readonly Conflict: 409;
|
|
32
|
+
readonly Gone: 410;
|
|
33
|
+
readonly 'Length Required': 411;
|
|
34
|
+
readonly 'Precondition Failed': 412;
|
|
35
|
+
readonly 'Payload Too Large': 413;
|
|
36
|
+
readonly 'URI Too Long': 414;
|
|
37
|
+
readonly 'Unsupported Media Type': 415;
|
|
38
|
+
readonly 'Range Not Satisfiable': 416;
|
|
39
|
+
readonly 'Expectation Failed': 417;
|
|
40
|
+
readonly "I'm a teapot": 418;
|
|
41
|
+
readonly 'Misdirected Request': 421;
|
|
42
|
+
readonly 'Unprocessable Content': 422;
|
|
43
|
+
readonly Locked: 423;
|
|
44
|
+
readonly 'Failed Dependency': 424;
|
|
45
|
+
readonly 'Too Early': 425;
|
|
46
|
+
readonly 'Upgrade Required': 426;
|
|
47
|
+
readonly 'Precondition Required': 428;
|
|
48
|
+
readonly 'Too Many Requests': 429;
|
|
49
|
+
readonly 'Request Header Fields Too Large': 431;
|
|
50
|
+
readonly 'Unavailable For Legal Reasons': 451;
|
|
51
|
+
readonly 'Internal Server Error': 500;
|
|
52
|
+
readonly 'Not Implemented': 501;
|
|
53
|
+
readonly 'Bad Gateway': 502;
|
|
54
|
+
readonly 'Service Unavailable': 503;
|
|
55
|
+
readonly 'Gateway Timeout': 504;
|
|
56
|
+
readonly 'HTTP Version Not Supported': 505;
|
|
57
|
+
readonly 'Variant Also Negotiates': 506;
|
|
58
|
+
readonly 'Insufficient Storage': 507;
|
|
59
|
+
readonly 'Loop Detected': 508;
|
|
60
|
+
readonly 'Not Extended': 510;
|
|
61
|
+
readonly 'Network Authentication Required': 511;
|
|
62
|
+
};
|
|
63
|
+
export declare const InvertedStatusMap: {
|
|
64
|
+
readonly 100: "Continue";
|
|
65
|
+
readonly 101: "Switching Protocols";
|
|
66
|
+
readonly 102: "Processing";
|
|
67
|
+
readonly 103: "Early Hints";
|
|
68
|
+
readonly 200: "OK";
|
|
69
|
+
readonly 201: "Created";
|
|
70
|
+
readonly 202: "Accepted";
|
|
71
|
+
readonly 203: "Non-Authoritative Information";
|
|
72
|
+
readonly 204: "No Content";
|
|
73
|
+
readonly 205: "Reset Content";
|
|
74
|
+
readonly 206: "Partial Content";
|
|
75
|
+
readonly 207: "Multi-Status";
|
|
76
|
+
readonly 208: "Already Reported";
|
|
77
|
+
readonly 300: "Multiple Choices";
|
|
78
|
+
readonly 301: "Moved Permanently";
|
|
79
|
+
readonly 302: "Found";
|
|
80
|
+
readonly 303: "See Other";
|
|
81
|
+
readonly 304: "Not Modified";
|
|
82
|
+
readonly 307: "Temporary Redirect";
|
|
83
|
+
readonly 308: "Permanent Redirect";
|
|
84
|
+
readonly 400: "Bad Request";
|
|
85
|
+
readonly 401: "Unauthorized";
|
|
86
|
+
readonly 402: "Payment Required";
|
|
87
|
+
readonly 403: "Forbidden";
|
|
88
|
+
readonly 404: "Not Found";
|
|
89
|
+
readonly 405: "Method Not Allowed";
|
|
90
|
+
readonly 406: "Not Acceptable";
|
|
91
|
+
readonly 407: "Proxy Authentication Required";
|
|
92
|
+
readonly 408: "Request Timeout";
|
|
93
|
+
readonly 409: "Conflict";
|
|
94
|
+
readonly 410: "Gone";
|
|
95
|
+
readonly 411: "Length Required";
|
|
96
|
+
readonly 412: "Precondition Failed";
|
|
97
|
+
readonly 413: "Payload Too Large";
|
|
98
|
+
readonly 414: "URI Too Long";
|
|
99
|
+
readonly 415: "Unsupported Media Type";
|
|
100
|
+
readonly 416: "Range Not Satisfiable";
|
|
101
|
+
readonly 417: "Expectation Failed";
|
|
102
|
+
readonly 418: "I'm a teapot";
|
|
103
|
+
readonly 421: "Misdirected Request";
|
|
104
|
+
readonly 422: "Unprocessable Content";
|
|
105
|
+
readonly 423: "Locked";
|
|
106
|
+
readonly 424: "Failed Dependency";
|
|
107
|
+
readonly 425: "Too Early";
|
|
108
|
+
readonly 426: "Upgrade Required";
|
|
109
|
+
readonly 428: "Precondition Required";
|
|
110
|
+
readonly 429: "Too Many Requests";
|
|
111
|
+
readonly 431: "Request Header Fields Too Large";
|
|
112
|
+
readonly 451: "Unavailable For Legal Reasons";
|
|
113
|
+
readonly 500: "Internal Server Error";
|
|
114
|
+
readonly 501: "Not Implemented";
|
|
115
|
+
readonly 502: "Bad Gateway";
|
|
116
|
+
readonly 503: "Service Unavailable";
|
|
117
|
+
readonly 504: "Gateway Timeout";
|
|
118
|
+
readonly 505: "HTTP Version Not Supported";
|
|
119
|
+
readonly 506: "Variant Also Negotiates";
|
|
120
|
+
readonly 507: "Insufficient Storage";
|
|
121
|
+
readonly 508: "Loop Detected";
|
|
122
|
+
readonly 510: "Not Extended";
|
|
123
|
+
readonly 511: "Network Authentication Required";
|
|
124
|
+
};
|
|
125
|
+
export type StatusMap = typeof StatusMap;
|
|
126
|
+
export type InvertedStatusMap = typeof InvertedStatusMap;
|
|
127
|
+
/**
|
|
128
|
+
*
|
|
129
|
+
* @param url URL to redirect to
|
|
130
|
+
* @param HTTP status code to send,
|
|
131
|
+
*/
|
|
132
|
+
export declare const redirect: (url: string, status?: 301 | 302 | 303 | 307 | 308) => Response;
|
|
133
|
+
export type redirect = typeof redirect;
|
|
134
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/elysia-fork/utils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6DZ,CAAA;AAEV,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI7B,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAA;AACxC,MAAM,MAAM,iBAAiB,GAAG,OAAO,iBAAiB,CAAA;AAIxD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,QACf,MAAM,WACH,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,aACD,CAAA;AAEnC,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAA"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
export const StatusMap = {
|
|
2
|
+
Continue: 100,
|
|
3
|
+
'Switching Protocols': 101,
|
|
4
|
+
Processing: 102,
|
|
5
|
+
'Early Hints': 103,
|
|
6
|
+
OK: 200,
|
|
7
|
+
Created: 201,
|
|
8
|
+
Accepted: 202,
|
|
9
|
+
'Non-Authoritative Information': 203,
|
|
10
|
+
'No Content': 204,
|
|
11
|
+
'Reset Content': 205,
|
|
12
|
+
'Partial Content': 206,
|
|
13
|
+
'Multi-Status': 207,
|
|
14
|
+
'Already Reported': 208,
|
|
15
|
+
'Multiple Choices': 300,
|
|
16
|
+
'Moved Permanently': 301,
|
|
17
|
+
Found: 302,
|
|
18
|
+
'See Other': 303,
|
|
19
|
+
'Not Modified': 304,
|
|
20
|
+
'Temporary Redirect': 307,
|
|
21
|
+
'Permanent Redirect': 308,
|
|
22
|
+
'Bad Request': 400,
|
|
23
|
+
Unauthorized: 401,
|
|
24
|
+
'Payment Required': 402,
|
|
25
|
+
Forbidden: 403,
|
|
26
|
+
'Not Found': 404,
|
|
27
|
+
'Method Not Allowed': 405,
|
|
28
|
+
'Not Acceptable': 406,
|
|
29
|
+
'Proxy Authentication Required': 407,
|
|
30
|
+
'Request Timeout': 408,
|
|
31
|
+
Conflict: 409,
|
|
32
|
+
Gone: 410,
|
|
33
|
+
'Length Required': 411,
|
|
34
|
+
'Precondition Failed': 412,
|
|
35
|
+
'Payload Too Large': 413,
|
|
36
|
+
'URI Too Long': 414,
|
|
37
|
+
'Unsupported Media Type': 415,
|
|
38
|
+
'Range Not Satisfiable': 416,
|
|
39
|
+
'Expectation Failed': 417,
|
|
40
|
+
"I'm a teapot": 418,
|
|
41
|
+
'Misdirected Request': 421,
|
|
42
|
+
'Unprocessable Content': 422,
|
|
43
|
+
Locked: 423,
|
|
44
|
+
'Failed Dependency': 424,
|
|
45
|
+
'Too Early': 425,
|
|
46
|
+
'Upgrade Required': 426,
|
|
47
|
+
'Precondition Required': 428,
|
|
48
|
+
'Too Many Requests': 429,
|
|
49
|
+
'Request Header Fields Too Large': 431,
|
|
50
|
+
'Unavailable For Legal Reasons': 451,
|
|
51
|
+
'Internal Server Error': 500,
|
|
52
|
+
'Not Implemented': 501,
|
|
53
|
+
'Bad Gateway': 502,
|
|
54
|
+
'Service Unavailable': 503,
|
|
55
|
+
'Gateway Timeout': 504,
|
|
56
|
+
'HTTP Version Not Supported': 505,
|
|
57
|
+
'Variant Also Negotiates': 506,
|
|
58
|
+
'Insufficient Storage': 507,
|
|
59
|
+
'Loop Detected': 508,
|
|
60
|
+
'Not Extended': 510,
|
|
61
|
+
'Network Authentication Required': 511
|
|
62
|
+
};
|
|
63
|
+
export const InvertedStatusMap = Object.fromEntries(Object.entries(StatusMap).map(([k, v]) => [v, k]));
|
|
64
|
+
/**
|
|
65
|
+
*
|
|
66
|
+
* @param url URL to redirect to
|
|
67
|
+
* @param HTTP status code to send,
|
|
68
|
+
*/
|
|
69
|
+
export const redirect = (url, status = 302) => Response.redirect(url, status);
|
|
70
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/elysia-fork/utils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG;IACxB,QAAQ,EAAE,GAAG;IACb,qBAAqB,EAAE,GAAG;IAC1B,UAAU,EAAE,GAAG;IACf,aAAa,EAAE,GAAG;IAClB,EAAE,EAAE,GAAG;IACP,OAAO,EAAE,GAAG;IACZ,QAAQ,EAAE,GAAG;IACb,+BAA+B,EAAE,GAAG;IACpC,YAAY,EAAE,GAAG;IACjB,eAAe,EAAE,GAAG;IACpB,iBAAiB,EAAE,GAAG;IACtB,cAAc,EAAE,GAAG;IACnB,kBAAkB,EAAE,GAAG;IACvB,kBAAkB,EAAE,GAAG;IACvB,mBAAmB,EAAE,GAAG;IACxB,KAAK,EAAE,GAAG;IACV,WAAW,EAAE,GAAG;IAChB,cAAc,EAAE,GAAG;IACnB,oBAAoB,EAAE,GAAG;IACzB,oBAAoB,EAAE,GAAG;IACzB,aAAa,EAAE,GAAG;IAClB,YAAY,EAAE,GAAG;IACjB,kBAAkB,EAAE,GAAG;IACvB,SAAS,EAAE,GAAG;IACd,WAAW,EAAE,GAAG;IAChB,oBAAoB,EAAE,GAAG;IACzB,gBAAgB,EAAE,GAAG;IACrB,+BAA+B,EAAE,GAAG;IACpC,iBAAiB,EAAE,GAAG;IACtB,QAAQ,EAAE,GAAG;IACb,IAAI,EAAE,GAAG;IACT,iBAAiB,EAAE,GAAG;IACtB,qBAAqB,EAAE,GAAG;IAC1B,mBAAmB,EAAE,GAAG;IACxB,cAAc,EAAE,GAAG;IACnB,wBAAwB,EAAE,GAAG;IAC7B,uBAAuB,EAAE,GAAG;IAC5B,oBAAoB,EAAE,GAAG;IACzB,cAAc,EAAE,GAAG;IACnB,qBAAqB,EAAE,GAAG;IAC1B,uBAAuB,EAAE,GAAG;IAC5B,MAAM,EAAE,GAAG;IACX,mBAAmB,EAAE,GAAG;IACxB,WAAW,EAAE,GAAG;IAChB,kBAAkB,EAAE,GAAG;IACvB,uBAAuB,EAAE,GAAG;IAC5B,mBAAmB,EAAE,GAAG;IACxB,iCAAiC,EAAE,GAAG;IACtC,+BAA+B,EAAE,GAAG;IACpC,uBAAuB,EAAE,GAAG;IAC5B,iBAAiB,EAAE,GAAG;IACtB,aAAa,EAAE,GAAG;IAClB,qBAAqB,EAAE,GAAG;IAC1B,iBAAiB,EAAE,GAAG;IACtB,4BAA4B,EAAE,GAAG;IACjC,yBAAyB,EAAE,GAAG;IAC9B,sBAAsB,EAAE,GAAG;IAC3B,eAAe,EAAE,GAAG;IACpB,cAAc,EAAE,GAAG;IACnB,iCAAiC,EAAE,GAAG;CAC7B,CAAA;AAEV,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAClD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAGjD,CAAA;AAOD;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CACvB,GAAW,EACX,SAAsC,GAAG,EACxC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
export interface WithRpcConfig {
|
|
4
|
-
}
|
|
5
|
-
export { WrapMethod };
|
|
6
|
-
export declare function plugins(options: PluginOptions): any[];
|
|
7
|
-
export declare function findRootDir(dir: string): string;
|
|
1
|
+
export * from './spiceflow.js';
|
|
2
|
+
export { Static } from '@sinclair/typebox';
|
|
8
3
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,23 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import * as path from 'path';
|
|
3
|
-
import pluginSyntaxJsx from '@babel/plugin-syntax-jsx';
|
|
4
|
-
import pluginTransformTypescript from '@babel/plugin-syntax-typescript';
|
|
5
|
-
import babelTransformRpc from './babelTransformRpc.js';
|
|
6
|
-
import babelDebugOutputs from './babelDebugOutputs.js';
|
|
7
|
-
export function plugins(options) {
|
|
8
|
-
return [
|
|
9
|
-
pluginSyntaxJsx,
|
|
10
|
-
[pluginTransformTypescript, { isTSX: true }],
|
|
11
|
-
[babelTransformRpc, options],
|
|
12
|
-
process.env.DEBUG_ACTIONS && [babelDebugOutputs, options],
|
|
13
|
-
].filter(Boolean);
|
|
14
|
-
}
|
|
15
|
-
export function findRootDir(dir) {
|
|
16
|
-
{
|
|
17
|
-
let curDir = path.resolve(dir, 'src');
|
|
18
|
-
if (fs.existsSync(curDir))
|
|
19
|
-
return path.resolve(curDir);
|
|
20
|
-
}
|
|
21
|
-
throw new Error("Couldn't find a src directory. Please create one under the project root");
|
|
22
|
-
}
|
|
1
|
+
export * from './spiceflow.js';
|
|
23
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
import { Type } from '@sinclair/typebox';
|
|
2
|
+
export { Type as t };
|
|
3
|
+
import { ComposeSpiceflowResponse, CreateEden, DefinitionBase, EphemeralType, ErrorHandler, InlineHandler, InputSchema, JoinPath, LocalHook, MaybeArray, MergeSchema, MetadataBase, PreHandler, Prettify2, Reconcile, ResolvePath, RouteBase, RouteSchema, SingletonBase, UnwrapRoute } from './elysia-fork/types.js';
|
|
4
|
+
import OriginalRouter from '@medley/router';
|
|
5
|
+
type P = any;
|
|
6
|
+
type AsyncResponse = Response | Promise<Response>;
|
|
7
|
+
type OnError = (x: {
|
|
8
|
+
error: any;
|
|
9
|
+
request: Request;
|
|
10
|
+
}) => AsyncResponse;
|
|
11
|
+
type RouterTree = {
|
|
12
|
+
router: OriginalRouter;
|
|
13
|
+
prefix?: string;
|
|
14
|
+
onRequestHandlers: Function[];
|
|
15
|
+
onErrorHandlers: OnError[];
|
|
16
|
+
children: RouterTree[];
|
|
17
|
+
store: Record<any, any>;
|
|
18
|
+
};
|
|
19
|
+
type InternalRouterState = {
|
|
20
|
+
hook: any;
|
|
21
|
+
handler: any;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Router class
|
|
25
|
+
*/
|
|
26
|
+
export declare class Spiceflow<const in out BasePath extends string = '', const in out Scoped extends boolean = true, const in out Singleton extends SingletonBase = {
|
|
27
|
+
decorator: {};
|
|
28
|
+
store: {};
|
|
29
|
+
derive: {};
|
|
30
|
+
resolve: {};
|
|
31
|
+
}, const in out Definitions extends DefinitionBase = {
|
|
32
|
+
type: {};
|
|
33
|
+
error: {};
|
|
34
|
+
}, const in out Metadata extends MetadataBase = {
|
|
35
|
+
schema: {};
|
|
36
|
+
macro: {};
|
|
37
|
+
macroFn: {};
|
|
38
|
+
}, const out Routes extends RouteBase = {}, const in out Ephemeral extends EphemeralType = {
|
|
39
|
+
derive: {};
|
|
40
|
+
resolve: {};
|
|
41
|
+
schema: {};
|
|
42
|
+
}, const in out Volatile extends EphemeralType = {
|
|
43
|
+
derive: {};
|
|
44
|
+
resolve: {};
|
|
45
|
+
schema: {};
|
|
46
|
+
}> {
|
|
47
|
+
private onNoMatch;
|
|
48
|
+
routerTree: RouterTree;
|
|
49
|
+
add({ method, path, ...rest }: InternalRouterState & {
|
|
50
|
+
method: string;
|
|
51
|
+
path: string;
|
|
52
|
+
}): void;
|
|
53
|
+
private match;
|
|
54
|
+
state<const Name extends string | number | symbol, Value>(name: Name, value: Value): Spiceflow<BasePath, Scoped, {
|
|
55
|
+
decorator: Singleton['decorator'];
|
|
56
|
+
store: Reconcile<Singleton['store'], {
|
|
57
|
+
[name in Name]: Value;
|
|
58
|
+
}>;
|
|
59
|
+
derive: Singleton['derive'];
|
|
60
|
+
resolve: Singleton['resolve'];
|
|
61
|
+
}, Definitions, Metadata, Routes, Ephemeral, Volatile>;
|
|
62
|
+
/**
|
|
63
|
+
* Create a new Router
|
|
64
|
+
* @param options {@link RouterOptions} {@link Platform}
|
|
65
|
+
*/
|
|
66
|
+
constructor(options?: {
|
|
67
|
+
/** Fallback handle if an error is thrown (500 response is default) */
|
|
68
|
+
scoped?: Scoped;
|
|
69
|
+
onNoMatch?: (request: Request, platform: P) => AsyncResponse;
|
|
70
|
+
basePath?: BasePath;
|
|
71
|
+
});
|
|
72
|
+
_routes: Routes;
|
|
73
|
+
_types: {
|
|
74
|
+
Prefix: BasePath;
|
|
75
|
+
Scoped: Scoped;
|
|
76
|
+
Singleton: Singleton;
|
|
77
|
+
Definitions: Definitions;
|
|
78
|
+
Metadata: Metadata;
|
|
79
|
+
};
|
|
80
|
+
_ephemeral: Ephemeral;
|
|
81
|
+
_volatile: Volatile;
|
|
82
|
+
post<const Path extends string, const LocalSchema extends InputSchema<keyof Definitions['type'] & string>, const Schema extends MergeSchema<UnwrapRoute<LocalSchema, Definitions['type']>, MergeSchema<Volatile['schema'], MergeSchema<Ephemeral['schema'], Metadata['schema']>>>, const Handle extends InlineHandler<Schema, Singleton & {
|
|
83
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
84
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
85
|
+
}, JoinPath<BasePath, Path>>>(path: Path, handler: Handle, hook?: LocalHook<LocalSchema, Schema, Singleton & {
|
|
86
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
87
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
88
|
+
}, Definitions['error'], Metadata['macro'], JoinPath<BasePath, Path>>): Spiceflow<BasePath, Scoped, Singleton, Definitions, Metadata, Routes & CreateEden<JoinPath<BasePath, Path>, {
|
|
89
|
+
post: {
|
|
90
|
+
body: Schema['body'];
|
|
91
|
+
params: undefined extends Schema['params'] ? ResolvePath<Path> : Schema['params'];
|
|
92
|
+
query: Schema['query'];
|
|
93
|
+
headers: Schema['headers'];
|
|
94
|
+
response: ComposeSpiceflowResponse<Schema['response'], Handle>;
|
|
95
|
+
};
|
|
96
|
+
}>, Ephemeral, Volatile>;
|
|
97
|
+
get<const Path extends string, const LocalSchema extends InputSchema<keyof Definitions['type'] & string>, const Schema extends MergeSchema<UnwrapRoute<LocalSchema, Definitions['type']>, MergeSchema<Volatile['schema'], MergeSchema<Ephemeral['schema'], Metadata['schema']>>>, const Macro extends Metadata['macro'], const Handle extends InlineHandler<Schema, Singleton & {
|
|
98
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
99
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
100
|
+
}, JoinPath<BasePath, Path>>>(path: Path, handler: Handle, hook?: LocalHook<LocalSchema, Schema, Singleton & {
|
|
101
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
102
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
103
|
+
}, Definitions['error'], Macro, JoinPath<BasePath, Path>>): Spiceflow<BasePath, Scoped, Singleton, Definitions, Metadata, Routes & CreateEden<JoinPath<BasePath, Path>, {
|
|
104
|
+
get: {
|
|
105
|
+
body: Schema['body'];
|
|
106
|
+
params: undefined extends Schema['params'] ? ResolvePath<Path> : Schema['params'];
|
|
107
|
+
query: Schema['query'];
|
|
108
|
+
headers: Schema['headers'];
|
|
109
|
+
response: ComposeSpiceflowResponse<Schema['response'], Handle>;
|
|
110
|
+
};
|
|
111
|
+
}>, Ephemeral, Volatile>;
|
|
112
|
+
put<const Path extends string, const LocalSchema extends InputSchema<keyof Definitions['type'] & string>, const Schema extends MergeSchema<UnwrapRoute<LocalSchema, Definitions['type']>, MergeSchema<Volatile['schema'], MergeSchema<Ephemeral['schema'], Metadata['schema']>>>, const Handle extends InlineHandler<Schema, Singleton & {
|
|
113
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
114
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
115
|
+
}, JoinPath<BasePath, Path>>>(path: Path, handler: Handle, hook?: LocalHook<LocalSchema, Schema, Singleton & {
|
|
116
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
117
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
118
|
+
}, Definitions['error'], Metadata['macro'], JoinPath<BasePath, Path>>): Spiceflow<BasePath, Scoped, Singleton, Definitions, Metadata, Routes & CreateEden<JoinPath<BasePath, Path>, {
|
|
119
|
+
put: {
|
|
120
|
+
body: Schema['body'];
|
|
121
|
+
params: undefined extends Schema['params'] ? ResolvePath<Path> : Schema['params'];
|
|
122
|
+
query: Schema['query'];
|
|
123
|
+
headers: Schema['headers'];
|
|
124
|
+
response: ComposeSpiceflowResponse<Schema['response'], Handle>;
|
|
125
|
+
};
|
|
126
|
+
}>, Ephemeral, Volatile>;
|
|
127
|
+
patch<const Path extends string, const LocalSchema extends InputSchema<keyof Definitions['type'] & string>, const Schema extends MergeSchema<UnwrapRoute<LocalSchema, Definitions['type']>, MergeSchema<Volatile['schema'], MergeSchema<Ephemeral['schema'], Metadata['schema']>>>, const Handle extends InlineHandler<Schema, Singleton & {
|
|
128
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
129
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
130
|
+
}, JoinPath<BasePath, Path>>>(path: Path, handler: Handle, hook?: LocalHook<LocalSchema, Schema, Singleton & {
|
|
131
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
132
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
133
|
+
}, Definitions['error'], Metadata['macro'], JoinPath<BasePath, Path>>): Spiceflow<BasePath, Scoped, Singleton, Definitions, Metadata, Routes & CreateEden<JoinPath<BasePath, Path>, {
|
|
134
|
+
patch: {
|
|
135
|
+
body: Schema['body'];
|
|
136
|
+
params: undefined extends Schema['params'] ? ResolvePath<Path> : Schema['params'];
|
|
137
|
+
query: Schema['query'];
|
|
138
|
+
headers: Schema['headers'];
|
|
139
|
+
response: ComposeSpiceflowResponse<Schema['response'], Handle>;
|
|
140
|
+
};
|
|
141
|
+
}>, Ephemeral, Volatile>;
|
|
142
|
+
delete<const Path extends string, const LocalSchema extends InputSchema<keyof Definitions['type'] & string>, const Schema extends MergeSchema<UnwrapRoute<LocalSchema, Definitions['type']>, MergeSchema<Volatile['schema'], MergeSchema<Ephemeral['schema'], Metadata['schema']>>>, const Handle extends InlineHandler<Schema, Singleton & {
|
|
143
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
144
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
145
|
+
}, JoinPath<BasePath, Path>>>(path: Path, handler: Handle, hook?: LocalHook<LocalSchema, Schema, Singleton & {
|
|
146
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
147
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
148
|
+
}, Definitions['error'], Metadata['macro'], JoinPath<BasePath, Path>>): Spiceflow<BasePath, Scoped, Singleton, Definitions, Metadata, Routes & CreateEden<JoinPath<BasePath, Path>, {
|
|
149
|
+
delete: {
|
|
150
|
+
body: Schema['body'];
|
|
151
|
+
params: undefined extends Schema['params'] ? ResolvePath<Path> : Schema['params'];
|
|
152
|
+
query: Schema['query'];
|
|
153
|
+
headers: Schema['headers'];
|
|
154
|
+
response: ComposeSpiceflowResponse<Schema['response'], Handle>;
|
|
155
|
+
};
|
|
156
|
+
}>, Ephemeral, Volatile>;
|
|
157
|
+
options<const Path extends string, const LocalSchema extends InputSchema<keyof Definitions['type'] & string>, const Schema extends MergeSchema<UnwrapRoute<LocalSchema, Definitions['type']>, MergeSchema<Volatile['schema'], MergeSchema<Ephemeral['schema'], Metadata['schema']>>>, const Handle extends InlineHandler<Schema, Singleton & {
|
|
158
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
159
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
160
|
+
}, JoinPath<BasePath, Path>>>(path: Path, handler: Handle, hook?: LocalHook<LocalSchema, Schema, Singleton & {
|
|
161
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
162
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
163
|
+
}, Definitions['error'], Metadata['macro'], JoinPath<BasePath, Path>>): Spiceflow<BasePath, Scoped, Singleton, Definitions, Metadata, Routes & CreateEden<JoinPath<BasePath, Path>, {
|
|
164
|
+
options: {
|
|
165
|
+
body: Schema['body'];
|
|
166
|
+
params: undefined extends Schema['params'] ? ResolvePath<Path> : Schema['params'];
|
|
167
|
+
query: Schema['query'];
|
|
168
|
+
headers: Schema['headers'];
|
|
169
|
+
response: ComposeSpiceflowResponse<Schema['response'], Handle>;
|
|
170
|
+
};
|
|
171
|
+
}>, Ephemeral, Volatile>;
|
|
172
|
+
all<const Path extends string, const LocalSchema extends InputSchema<keyof Definitions['type'] & string>, const Schema extends MergeSchema<UnwrapRoute<LocalSchema, Definitions['type']>, MergeSchema<Volatile['schema'], MergeSchema<Ephemeral['schema'], Metadata['schema']>>>, const Handle extends InlineHandler<Schema, Singleton & {
|
|
173
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
174
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
175
|
+
}, JoinPath<BasePath, Path>>>(path: Path, handler: Handle, hook?: LocalHook<LocalSchema, Schema, Singleton & {
|
|
176
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
177
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
178
|
+
}, Definitions['error'], Metadata['macro'], JoinPath<BasePath, Path>>): Spiceflow<BasePath, Scoped, Singleton, Definitions, Metadata, Routes & CreateEden<JoinPath<BasePath, Path>, {
|
|
179
|
+
[method in string]: {
|
|
180
|
+
body: Schema['body'];
|
|
181
|
+
params: undefined extends Schema['params'] ? ResolvePath<Path> : Schema['params'];
|
|
182
|
+
query: Schema['query'];
|
|
183
|
+
headers: Schema['headers'];
|
|
184
|
+
response: ComposeSpiceflowResponse<Schema['response'], Handle>;
|
|
185
|
+
};
|
|
186
|
+
}>, Ephemeral, Volatile>;
|
|
187
|
+
head<const Path extends string, const LocalSchema extends InputSchema<keyof Definitions['type'] & string>, const Schema extends MergeSchema<UnwrapRoute<LocalSchema, Definitions['type']>, MergeSchema<Volatile['schema'], MergeSchema<Ephemeral['schema'], Metadata['schema']>>>, const Handle extends InlineHandler<Schema, Singleton & {
|
|
188
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
189
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
190
|
+
}, JoinPath<BasePath, Path>>>(path: Path, handler: Handle, hook?: LocalHook<LocalSchema, Schema, Singleton & {
|
|
191
|
+
derive: Ephemeral['derive'] & Volatile['derive'];
|
|
192
|
+
resolve: Ephemeral['resolve'] & Volatile['resolve'];
|
|
193
|
+
}, Definitions['error'], Metadata['macro'], JoinPath<BasePath, Path>>): Spiceflow<BasePath, Scoped, Singleton, Definitions, Metadata, Routes & CreateEden<JoinPath<BasePath, Path>, {
|
|
194
|
+
head: {
|
|
195
|
+
body: Schema['body'];
|
|
196
|
+
params: undefined extends Schema['params'] ? ResolvePath<Path> : Schema['params'];
|
|
197
|
+
query: Schema['query'];
|
|
198
|
+
headers: Schema['headers'];
|
|
199
|
+
response: ComposeSpiceflowResponse<Schema['response'], Handle>;
|
|
200
|
+
};
|
|
201
|
+
}>, Ephemeral, Volatile>;
|
|
202
|
+
/**
|
|
203
|
+
* If set to true, other Spiceflow handler will not inherits global life-cycle, store, decorators from the current instance
|
|
204
|
+
*
|
|
205
|
+
* @default false
|
|
206
|
+
*/
|
|
207
|
+
scoped?: Scoped;
|
|
208
|
+
get _scoped(): Scoped;
|
|
209
|
+
use<const NewSpiceflow extends AnySpiceflow>(instance: NewSpiceflow): NewSpiceflow['_scoped'] extends false ? Spiceflow<BasePath, Scoped, Prettify2<Singleton & NewSpiceflow['_types']['Singleton']>, Prettify2<Definitions & NewSpiceflow['_types']['Definitions']>, Prettify2<Metadata & NewSpiceflow['_types']['Metadata']>, BasePath extends `` ? Routes & NewSpiceflow['_routes'] : Routes & CreateEden<BasePath, NewSpiceflow['_routes']>, Ephemeral, Prettify2<Volatile & NewSpiceflow['_ephemeral']>> : Spiceflow<BasePath, Scoped, Singleton, Definitions, Metadata, BasePath extends `` ? Routes & NewSpiceflow['_routes'] : Routes & CreateEden<BasePath, NewSpiceflow['_routes']>, Ephemeral, Volatile>;
|
|
210
|
+
onError<const Schema extends RouteSchema>(handler: MaybeArray<ErrorHandler<Definitions['error'], MergeSchema<Schema, MergeSchema<Volatile['schema'], MergeSchema<Ephemeral['schema'], Metadata['schema']>>>, Singleton, Ephemeral, Volatile>>): this;
|
|
211
|
+
onRequest<const Schema extends RouteSchema>(handler: MaybeArray<PreHandler<MergeSchema<Schema, MergeSchema<Volatile['schema'], MergeSchema<Ephemeral['schema'], Metadata['schema']>>>, {
|
|
212
|
+
decorator: Singleton['decorator'];
|
|
213
|
+
store: Singleton['store'];
|
|
214
|
+
derive: {};
|
|
215
|
+
resolve: {};
|
|
216
|
+
}>>): this;
|
|
217
|
+
/**
|
|
218
|
+
* Pass a request through all matching route handles and return a response
|
|
219
|
+
* @param request The `Request`
|
|
220
|
+
* @param platform Platform specific context {@link Platform}
|
|
221
|
+
* @returns The final `Response`
|
|
222
|
+
*/
|
|
223
|
+
handle(request: Request, platform?: P): Promise<Response>;
|
|
224
|
+
private runErrorHandlers;
|
|
225
|
+
private getRouteAndParents;
|
|
226
|
+
handleStream({ onErrorHandlers, generator, request }: {
|
|
227
|
+
generator: Generator | AsyncGenerator;
|
|
228
|
+
onErrorHandlers: OnError[];
|
|
229
|
+
request: Request;
|
|
230
|
+
}): Promise<Response>;
|
|
231
|
+
}
|
|
232
|
+
declare const METHODS: readonly ["ALL", "CONNECT", "DELETE", "GET", "HEAD", "OPTIONS", "PATCH", "POST", "PUT", "TRACE"];
|
|
233
|
+
/** HTTP method string */
|
|
234
|
+
export type Method = (typeof METHODS)[number];
|
|
235
|
+
export declare function turnHandlerResultIntoResponse(result: any): Promise<Response>;
|
|
236
|
+
export type AnySpiceflow = Spiceflow<any, any, any, any, any, any, any, any>;
|
|
237
|
+
//# sourceMappingURL=spiceflow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spiceflow.d.ts","sourceRoot":"","sources":["../src/spiceflow.ts"],"names":[],"mappings":"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"}
|