@thestarweb/star-framework-app-web 0.1.0
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/browser/index.js +8 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/cli/dev-server.js +64 -0
- package/dist/cli/dev-server.js.map +1 -0
- package/dist/cli/index.js +117 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/types.js +2 -0
- package/dist/cli/types.js.map +1 -0
- package/dist/cli-helper.js +2 -0
- package/dist/cli-helper.js.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/interceptor/index.js +26 -0
- package/dist/interceptor/index.js.map +1 -0
- package/dist/interceptor/middleware-to-interceptor/index.js +32 -0
- package/dist/interceptor/middleware-to-interceptor/index.js.map +1 -0
- package/dist/interceptor/middleware-to-interceptor/mock-res.js +241 -0
- package/dist/interceptor/middleware-to-interceptor/mock-res.js.map +1 -0
- package/dist/interceptor/middleware-to-interceptor/mook-req.js +180 -0
- package/dist/interceptor/middleware-to-interceptor/mook-req.js.map +1 -0
- package/dist/interceptor/types.js +6 -0
- package/dist/interceptor/types.js.map +1 -0
- package/dist/params/index.js +10 -0
- package/dist/params/index.js.map +1 -0
- package/dist/request/index.js +46 -0
- package/dist/request/index.js.map +1 -0
- package/dist/return-types/index.js +2 -0
- package/dist/return-types/index.js.map +1 -0
- package/dist/return-types/response-with-meta.js +25 -0
- package/dist/return-types/response-with-meta.js.map +1 -0
- package/dist/route/index.js +20 -0
- package/dist/route/index.js.map +1 -0
- package/dist/route/types.js +17 -0
- package/dist/route/types.js.map +1 -0
- package/dist/runtime/index.js +84 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/type.js +11 -0
- package/dist/runtime/type.js.map +1 -0
- package/dist/server/body/helper.js +118 -0
- package/dist/server/body/helper.js.map +1 -0
- package/dist/server/body/json.js +211 -0
- package/dist/server/body/json.js.map +1 -0
- package/dist/server/body/types.js +6 -0
- package/dist/server/body/types.js.map +1 -0
- package/dist/server/dump-api-type.js +59 -0
- package/dist/server/dump-api-type.js.map +1 -0
- package/dist/server/index.js +103 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/types.js +8 -0
- package/dist/server/types.js.map +1 -0
- package/dist/server/utils/pass-through-readable.js +13 -0
- package/dist/server/utils/pass-through-readable.js.map +1 -0
- package/dist/view/const.js +2 -0
- package/dist/view/const.js.map +1 -0
- package/dist/view/data-context/conetext.js +70 -0
- package/dist/view/data-context/conetext.js.map +1 -0
- package/dist/view/data-context/index.js +13 -0
- package/dist/view/data-context/index.js.map +1 -0
- package/dist/view/html/create-element.js +20 -0
- package/dist/view/html/create-element.js.map +1 -0
- package/dist/view/html/index.js +4 -0
- package/dist/view/html/index.js.map +1 -0
- package/dist/view/html/parse-html-to-v-dom.js +317 -0
- package/dist/view/html/parse-html-to-v-dom.js.map +1 -0
- package/dist/view/html/render-v-dom-to-string.js +46 -0
- package/dist/view/html/render-v-dom-to-string.js.map +1 -0
- package/dist/view/html/types.js +21 -0
- package/dist/view/html/types.js.map +1 -0
- package/dist/view/index.js +7 -0
- package/dist/view/index.js.map +1 -0
- package/dist/view/layout.js +24 -0
- package/dist/view/layout.js.map +1 -0
- package/dist/view/render/html-render.js +21 -0
- package/dist/view/render/html-render.js.map +1 -0
- package/dist/view/render/index.js +3 -0
- package/dist/view/render/index.js.map +1 -0
- package/dist/view/render/render.js +183 -0
- package/dist/view/render/render.js.map +1 -0
- package/dist/view/render/sf-v-dom-render.js +40 -0
- package/dist/view/render/sf-v-dom-render.js.map +1 -0
- package/dist/view/types.js +10 -0
- package/dist/view/types.js.map +1 -0
- package/dist/view/utils/find-route-dom.js +22 -0
- package/dist/view/utils/find-route-dom.js.map +1 -0
- package/dist/view/utils/get-render/client.js +77 -0
- package/dist/view/utils/get-render/client.js.map +1 -0
- package/dist/view/utils/get-render/common.js +87 -0
- package/dist/view/utils/get-render/common.js.map +1 -0
- package/dist/view/utils/get-render/index.js +4 -0
- package/dist/view/utils/get-render/index.js.map +1 -0
- package/dist/view/utils/get-render/server.js +60 -0
- package/dist/view/utils/get-render/server.js.map +1 -0
- package/dist/view/utils/index.js +3 -0
- package/dist/view/utils/index.js.map +1 -0
- package/dist/view/view.js +10 -0
- package/dist/view/view.js.map +1 -0
- package/package.json +41 -0
- package/resource/default-index.html +11 -0
- package/src/browser/index.ts +7 -0
- package/src/cli/dev-server.ts +66 -0
- package/src/cli/index.ts +122 -0
- package/src/cli/types.ts +7 -0
- package/src/cli-helper.ts +5 -0
- package/src/index.ts +24 -0
- package/src/interceptor/index.ts +26 -0
- package/src/interceptor/middleware-to-interceptor/index.ts +29 -0
- package/src/interceptor/middleware-to-interceptor/mock-res.ts +255 -0
- package/src/interceptor/middleware-to-interceptor/mook-req.ts +218 -0
- package/src/interceptor/types.ts +7 -0
- package/src/params/index.ts +12 -0
- package/src/request/index.ts +65 -0
- package/src/return-types/index.ts +1 -0
- package/src/return-types/response-with-meta.ts +17 -0
- package/src/route/index.ts +43 -0
- package/src/route/types.ts +11 -0
- package/src/server/body/helper.ts +110 -0
- package/src/server/body/json.ts +217 -0
- package/src/server/body/types.ts +6 -0
- package/src/server/dump-api-type.ts +64 -0
- package/src/server/index.ts +113 -0
- package/src/server/types.ts +11 -0
- package/src/server/utils/pass-through-readable.ts +10 -0
- package/src/view/const.ts +1 -0
- package/src/view/data-context/conetext.ts +59 -0
- package/src/view/data-context/index.ts +18 -0
- package/src/view/html/create-element.ts +20 -0
- package/src/view/html/index.ts +3 -0
- package/src/view/html/parse-html-to-v-dom.ts +348 -0
- package/src/view/html/render-v-dom-to-string.ts +79 -0
- package/src/view/html/types.ts +32 -0
- package/src/view/index.ts +6 -0
- package/src/view/layout.ts +20 -0
- package/src/view/render/html-render.ts +21 -0
- package/src/view/render/index.ts +2 -0
- package/src/view/render/render.ts +225 -0
- package/src/view/render/sf-v-dom-render.ts +34 -0
- package/src/view/types.ts +18 -0
- package/src/view/utils/find-route-dom.ts +19 -0
- package/src/view/utils/get-render/client.ts +76 -0
- package/src/view/utils/get-render/common.ts +113 -0
- package/src/view/utils/get-render/index.ts +3 -0
- package/src/view/utils/get-render/server.ts +71 -0
- package/src/view/utils/index.ts +2 -0
- package/src/view/view.ts +7 -0
- package/test/body.test.ts +29 -0
- package/tsconfig.build.json +9 -0
- package/tsconfig.json +8 -0
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
function __assignType(fn, args) {
|
|
2
|
+
fn.__type = args;
|
|
3
|
+
return fn;
|
|
4
|
+
}
|
|
5
|
+
/*@ts-ignore*/
|
|
6
|
+
import { __ΩParamType } from "@thestarweb/star-framework-param-helper";
|
|
7
|
+
import { ParamTypeEnum, } from "@thestarweb/star-framework-param-helper";
|
|
8
|
+
import { ReaderHelper } from "./helper.js";
|
|
9
|
+
const charCodeQuote = '"'.charCodeAt(0);
|
|
10
|
+
const charCodeOpenCornerBracket = "[".charCodeAt(0);
|
|
11
|
+
const charCodeCloseCornerBracket = "]".charCodeAt(0);
|
|
12
|
+
const charCodeOpenCurlyBracket = "{".charCodeAt(0);
|
|
13
|
+
const charCodeCloseCurlyBracket = "}".charCodeAt(0);
|
|
14
|
+
const charCodeReverseSlash = "\\".charCodeAt(0);
|
|
15
|
+
const charCodeTab = "\t".charCodeAt(0);
|
|
16
|
+
const charCodeReturn = "\r".charCodeAt(0);
|
|
17
|
+
const charCodeNewLine = "\n".charCodeAt(0);
|
|
18
|
+
const charCodeSpace = " ".charCodeAt(0);
|
|
19
|
+
const charCodesSkip = [
|
|
20
|
+
charCodeTab,
|
|
21
|
+
charCodeReturn,
|
|
22
|
+
charCodeNewLine,
|
|
23
|
+
charCodeSpace,
|
|
24
|
+
];
|
|
25
|
+
const charCodeR = "r".charCodeAt(0);
|
|
26
|
+
const charCodeN = "n".charCodeAt(0);
|
|
27
|
+
const charCodeT = "t".charCodeAt(0);
|
|
28
|
+
const charCodeU = "u".charCodeAt(0);
|
|
29
|
+
const charCodeF = "f".charCodeAt(0);
|
|
30
|
+
const charCode0 = "0".charCodeAt(0);
|
|
31
|
+
const charCode9 = "9".charCodeAt(0);
|
|
32
|
+
const charCodeDot = ".".charCodeAt(0);
|
|
33
|
+
const charCodeComma = ",".charCodeAt(0);
|
|
34
|
+
const charCodeColon = ":".charCodeAt(0);
|
|
35
|
+
const decoder = new TextDecoder();
|
|
36
|
+
let defAny = { type: ParamTypeEnum.Any };
|
|
37
|
+
export const JSONBody = __assignType((headrer, targetType) => {
|
|
38
|
+
if (headrer["content-type"]?.startsWith("application/json")) {
|
|
39
|
+
return __assignType((stream) => {
|
|
40
|
+
const helper = new ReaderHelper(stream);
|
|
41
|
+
function charError(char, expectation) {
|
|
42
|
+
throw new Error(`unexpectation ${String.fromCharCode(char)}(char code ${char})${expectation ? `, expectation ${expectation.join(",")}` : ""}, at ${helper.totalIndex}`);
|
|
43
|
+
}
|
|
44
|
+
charError.__type = ['char', 'expectation', 'charError', 'P\'2!&F2"8"/#'];
|
|
45
|
+
async function match(head, find) {
|
|
46
|
+
const dataString = await helper.readAsString(find.length, decoder);
|
|
47
|
+
if (dataString !== find) {
|
|
48
|
+
throw new Error(`unexpectation ${head}${dataString}, expectation ${head}${find})}, at ${helper.totalIndex}`);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
match.__type = ['head', 'find', 'match', 'P&2!&2""/#'];
|
|
52
|
+
async function readString() {
|
|
53
|
+
const strings = [];
|
|
54
|
+
let loop = true;
|
|
55
|
+
while (loop) {
|
|
56
|
+
await helper.streamReadUntil(__assignType((buff) => {
|
|
57
|
+
for (var i = 0; i < buff.length; i++) {
|
|
58
|
+
const item = buff[i];
|
|
59
|
+
if (item == charCodeQuote) {
|
|
60
|
+
strings.push(decoder.decode(buff.subarray(0, i), { stream: true }));
|
|
61
|
+
loop = false;
|
|
62
|
+
return i + 1;
|
|
63
|
+
}
|
|
64
|
+
if (item === charCodeReverseSlash) {
|
|
65
|
+
strings.push(decoder.decode(buff.subarray(0, i), { stream: true }));
|
|
66
|
+
return i + 1;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
strings.push(decoder.decode(buff, { stream: true }));
|
|
70
|
+
return -1;
|
|
71
|
+
}, ['buff', '', 'P"2!"/"']));
|
|
72
|
+
if (loop) {
|
|
73
|
+
const char = await helper.readChar();
|
|
74
|
+
switch (char) {
|
|
75
|
+
case charCodeReverseSlash:
|
|
76
|
+
strings.push("\\");
|
|
77
|
+
break;
|
|
78
|
+
case charCodeT:
|
|
79
|
+
strings.push("\t");
|
|
80
|
+
break;
|
|
81
|
+
case charCodeR:
|
|
82
|
+
strings.push("\r");
|
|
83
|
+
break;
|
|
84
|
+
case charCodeN:
|
|
85
|
+
strings.push("\n");
|
|
86
|
+
break;
|
|
87
|
+
case charCodeU:
|
|
88
|
+
// t = charCodeReturn;
|
|
89
|
+
throw new Error("暂时不支持\\u编码");
|
|
90
|
+
break;
|
|
91
|
+
default:
|
|
92
|
+
charError(char, ["r", "n", "t", "\\"]);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return strings.join("");
|
|
97
|
+
}
|
|
98
|
+
readString.__type = ['readString', 'P"/!'];
|
|
99
|
+
async function readArray(targetType, path) {
|
|
100
|
+
let t = defAny;
|
|
101
|
+
if (targetType.type == ParamTypeEnum.Array) {
|
|
102
|
+
t = targetType.items;
|
|
103
|
+
}
|
|
104
|
+
const res = [];
|
|
105
|
+
await helper.skipChar(charCodesSkip);
|
|
106
|
+
if ((await helper.viewChar()) === charCodeCloseCornerBracket) {
|
|
107
|
+
await helper.readChar();
|
|
108
|
+
return [];
|
|
109
|
+
}
|
|
110
|
+
while (true) {
|
|
111
|
+
const ret = await start(Array.isArray(t) ? t[res.length] : t, [
|
|
112
|
+
...path,
|
|
113
|
+
`${res.length}`,
|
|
114
|
+
]);
|
|
115
|
+
res.push(ret);
|
|
116
|
+
await helper.skipChar(charCodesSkip);
|
|
117
|
+
const nextChar = await helper.readChar();
|
|
118
|
+
if (nextChar === charCodeCloseCornerBracket) {
|
|
119
|
+
return res;
|
|
120
|
+
}
|
|
121
|
+
if (nextChar != charCodeComma) {
|
|
122
|
+
charError(nextChar, [",", "]"]);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
readArray.__type = [() => __ΩParamType, 'targetType', 'path', 'readArray', 'Pn!2"&F2#"/$'];
|
|
127
|
+
async function readObject(targetType, path) {
|
|
128
|
+
const obj = {};
|
|
129
|
+
let needComma = false;
|
|
130
|
+
while (true) {
|
|
131
|
+
await helper.skipChar(charCodesSkip);
|
|
132
|
+
const char = await helper.readChar();
|
|
133
|
+
if (char == charCodeCloseCurlyBracket) {
|
|
134
|
+
return obj;
|
|
135
|
+
}
|
|
136
|
+
if (needComma) {
|
|
137
|
+
if (char === charCodeComma) {
|
|
138
|
+
needComma = false;
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
charError(char, [",", "}"]);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
if (char === charCodeQuote) {
|
|
146
|
+
const key = await readString();
|
|
147
|
+
await helper.skipChar(charCodesSkip);
|
|
148
|
+
const char = await helper.readChar();
|
|
149
|
+
if (char !== charCodeColon)
|
|
150
|
+
charError(char, [":"]);
|
|
151
|
+
obj[key] = await start(defAny, [...path, key]);
|
|
152
|
+
needComma = true;
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
charError(char, ['"', "}"]);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
readObject.__type = [() => __ΩParamType, 'targetType', 'path', 'readObject', 'Pn!2"&F2#"/$'];
|
|
161
|
+
async function start(targetType, path = [], endFlag) {
|
|
162
|
+
await helper.skipChar(charCodesSkip);
|
|
163
|
+
const char = await helper.readChar();
|
|
164
|
+
switch (char) {
|
|
165
|
+
case charCodeQuote:
|
|
166
|
+
return await readString();
|
|
167
|
+
case charCodeOpenCornerBracket:
|
|
168
|
+
return await readArray(targetType, path);
|
|
169
|
+
case charCodeOpenCurlyBracket:
|
|
170
|
+
return await readObject(targetType, path);
|
|
171
|
+
case charCodeN: {
|
|
172
|
+
await match("n", "ull");
|
|
173
|
+
return null;
|
|
174
|
+
}
|
|
175
|
+
case charCodeT:
|
|
176
|
+
await match("t", "rue");
|
|
177
|
+
return true;
|
|
178
|
+
case charCodeF:
|
|
179
|
+
await match("f", "alse");
|
|
180
|
+
return false;
|
|
181
|
+
default:
|
|
182
|
+
if (char >= charCode0 && char <= charCode9) {
|
|
183
|
+
const text = [String.fromCharCode(char)];
|
|
184
|
+
const hasDot = false;
|
|
185
|
+
await helper.streamReadUntil(__assignType((arr) => {
|
|
186
|
+
for (let i = 0; i < arr.length; i++) {
|
|
187
|
+
const item = arr[i];
|
|
188
|
+
if (item >= charCode0 && item <= charCode9) {
|
|
189
|
+
continue;
|
|
190
|
+
}
|
|
191
|
+
if (arr[i] === charCodeDot && !hasDot) {
|
|
192
|
+
continue;
|
|
193
|
+
}
|
|
194
|
+
text.push(decoder.decode(arr.subarray(0, i)));
|
|
195
|
+
return i;
|
|
196
|
+
}
|
|
197
|
+
text.push(decoder.decode(arr));
|
|
198
|
+
return -1;
|
|
199
|
+
}, ['arr', '', 'P"2!"/"']), false);
|
|
200
|
+
return parseFloat(text.join(""));
|
|
201
|
+
}
|
|
202
|
+
charError(char, ["{", "[", '"', "null", "true", "false", "number"]);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
start.__type = [() => __ΩParamType, 'targetType', 'path', () => [], 'endFlag', 'start', 'Pn!2"&F2#>$\'2%8"`/&'];
|
|
206
|
+
return start(targetType);
|
|
207
|
+
}, ['stream', '', 'P"2!"/"']);
|
|
208
|
+
}
|
|
209
|
+
return null;
|
|
210
|
+
}, ['headrer', 'targetType', '', 'P"2!"2""/#']);
|
|
211
|
+
//# sourceMappingURL=json.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../../../src/server/body/json.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
const __ΩRecord = ['K', 'T', 'Record', 'l\'e#"Rb!b"Pde"!N#!w#y'];
|
|
2
|
+
/*@ts-ignore*/
|
|
3
|
+
import { __ΩParamType } from "@thestarweb/star-framework-param-helper";
|
|
4
|
+
const __ΩbodyParse = [() => __ΩRecord, 'header', () => __ΩParamType, 'paramType', 'stream', '', 'bodyParse', 'P&"o!#2"n#2$PP!2%"`/&,J/&w\'y'];
|
|
5
|
+
export { __ΩbodyParse as __ΩbodyParse };
|
|
6
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/server/body/types.ts"],"names":[],"mappings":";;6BAA0B,yCAAyC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
function __assignType(fn, args) {
|
|
2
|
+
fn.__type = args;
|
|
3
|
+
return fn;
|
|
4
|
+
}
|
|
5
|
+
import { getConfig } from "@thestarweb/star-framework-cli";
|
|
6
|
+
import { getFlatRoute } from "../route/index.js";
|
|
7
|
+
import { dirname, relative } from "path";
|
|
8
|
+
import { writeFile } from "fs/promises";
|
|
9
|
+
import { paramMeta } from "../params/index.js";
|
|
10
|
+
import { dumpTSType } from "@thestarweb/star-framework-param-helper";
|
|
11
|
+
export async function dumpRouteType(file, obj) {
|
|
12
|
+
const routes = getFlatRoute(obj);
|
|
13
|
+
const config = getConfig();
|
|
14
|
+
const data = [];
|
|
15
|
+
let rPath = relative(dirname(file), config.entry).replaceAll("\\", "/");
|
|
16
|
+
if (!rPath.startsWith(".")) {
|
|
17
|
+
rPath = `./${rPath}`;
|
|
18
|
+
}
|
|
19
|
+
data.push(`import App from ${JSON.stringify(rPath)};`);
|
|
20
|
+
data.push(`declare module '@thestarweb/star-framework-app-web'{`);
|
|
21
|
+
data.push(`\tinterface ProjectApi{`);
|
|
22
|
+
Object.keys(routes).forEach(__assignType((type) => {
|
|
23
|
+
if (type === "__SF:NotFind")
|
|
24
|
+
return;
|
|
25
|
+
data.push(`\t\t${type}:{`);
|
|
26
|
+
routes[type].forEach(__assignType((meta, path) => {
|
|
27
|
+
if (!meta.finalRoute)
|
|
28
|
+
return;
|
|
29
|
+
data.push(`\t\t\t${JSON.stringify(path)}:{`);
|
|
30
|
+
const { obj, propertyKey } = meta.finalRoute;
|
|
31
|
+
if (typeof obj[propertyKey] === "function") {
|
|
32
|
+
data.push(`\t\t\t\tprop:{`);
|
|
33
|
+
const param = paramMeta.getParamMetadata(meta.finalRoute.obj, meta.finalRoute.propertyKey);
|
|
34
|
+
if (param.types.body) {
|
|
35
|
+
data.push(`\t\t\t\t\tbody${param.types.body.required ? "" : "?"}:${dumpTSType(param.types.body.type)},`);
|
|
36
|
+
}
|
|
37
|
+
if (param.types.query) {
|
|
38
|
+
data.push(`\t\t\t\t\tquery${param.types.query.required ? "" : "?"}:${dumpTSType(param.types.query.type)},`);
|
|
39
|
+
}
|
|
40
|
+
if (param.types.header) {
|
|
41
|
+
data.push(`\t\t\t\t\theader${param.types.header.required ? "" : "?"}:${dumpTSType(param.types.header.type)},`);
|
|
42
|
+
}
|
|
43
|
+
data.push(`\t\t\t\t},`);
|
|
44
|
+
data.push(`\t\t\t\treturn:ReturnType<App${meta.allRoute.map(__assignType((r) => `[${JSON.stringify(r.propertyKey)}]`, ['r', '', 'P"2!"/"'])).join("")}>`);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
data.push(`\t\t\t\tprop:{},`);
|
|
48
|
+
data.push(`\t\t\t\treturn:App${meta.allRoute.map(__assignType((r) => `[${JSON.stringify(r.propertyKey)}]`, ['r', '', 'P"2!"/"'])).join("")}`);
|
|
49
|
+
}
|
|
50
|
+
data.push(`\t\t\t},`);
|
|
51
|
+
}, ['meta', 'path', '', 'P"2!"2""/#']));
|
|
52
|
+
data.push(`\t\t}`);
|
|
53
|
+
}, ['type', '', 'P"2!"/"']));
|
|
54
|
+
data.push(`\t}`);
|
|
55
|
+
data.push(`}`);
|
|
56
|
+
await writeFile(file, data.join("\n"));
|
|
57
|
+
}
|
|
58
|
+
dumpRouteType.__type = ['file', 'obj', 'dumpRouteType', 'P&2!%2""/#'];
|
|
59
|
+
//# sourceMappingURL=dump-api-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dump-api-type.js","sourceRoot":"","sources":["../../src/server/dump-api-type.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
function __assignType(fn, args) {
|
|
2
|
+
fn.__type = args;
|
|
3
|
+
return fn;
|
|
4
|
+
}
|
|
5
|
+
import { PassThrough, Readable } from "stream";
|
|
6
|
+
import { parse } from "qs";
|
|
7
|
+
import { paramMeta } from "../params/index.js";
|
|
8
|
+
import { ResponseWithMeta } from "../return-types/index.js";
|
|
9
|
+
import { PassThroughReadable } from "./utils/pass-through-readable.js";
|
|
10
|
+
import { getInterceptors } from "../interceptor/index.js";
|
|
11
|
+
import { parseRoute } from "../route/index.js";
|
|
12
|
+
import { createServerRender } from "../view/utils/index.js";
|
|
13
|
+
/*@ts-ignore*/
|
|
14
|
+
import { __ΩCallProp } from "./types.js";
|
|
15
|
+
/*@ts-ignore*/
|
|
16
|
+
import { __ΩServerRuntimeContext } from "@thestarweb/star-framework-web-runtime-node";
|
|
17
|
+
import { JSONBody } from "./body/json.js";
|
|
18
|
+
export function createServerFactory(object) {
|
|
19
|
+
const handles = [JSONBody];
|
|
20
|
+
return __assignType((context) => {
|
|
21
|
+
const routes = parseRoute(object);
|
|
22
|
+
const serverRender = createServerRender(context);
|
|
23
|
+
const ins = {
|
|
24
|
+
async onRequert(method, url, reqHeader, rawBody, context) {
|
|
25
|
+
const urlObj = typeof url === "string" ? new URL(url, "http://127.0.0.1/") : url;
|
|
26
|
+
const route = routes(method, urlObj.pathname);
|
|
27
|
+
const interceptors = route.allRoute.flatMap(__assignType((info) => getInterceptors(info.obj), ['info', '', 'P"2!"/"']));
|
|
28
|
+
interceptors.unshift(serverRender);
|
|
29
|
+
let body = null;
|
|
30
|
+
let call = () => new ResponseWithMeta(null, { code: 404 });
|
|
31
|
+
if (route.finalRoute) {
|
|
32
|
+
const { obj, propertyKey } = route.finalRoute;
|
|
33
|
+
interceptors.push(...getInterceptors(obj, propertyKey));
|
|
34
|
+
if (typeof obj[propertyKey] === "function") {
|
|
35
|
+
const paramType = paramMeta.getParamMetadata(obj, propertyKey);
|
|
36
|
+
if (paramType.types.body) {
|
|
37
|
+
for (const h of handles) {
|
|
38
|
+
const handle = h(reqHeader, paramType.types.body.type);
|
|
39
|
+
if (handle) {
|
|
40
|
+
body = await handle(rawBody);
|
|
41
|
+
break;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
call = __assignType(async (req) => {
|
|
46
|
+
const rawData = await paramMeta.call(obj, propertyKey, req);
|
|
47
|
+
return ResponseWithMeta.isResponseWithMeta(rawData)
|
|
48
|
+
? rawData
|
|
49
|
+
: new ResponseWithMeta(rawData);
|
|
50
|
+
}, [() => __ΩCallProp, 'req', '', 'Pn!2""/#']);
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
call = () => new ResponseWithMeta(obj[propertyKey]);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
const handle = (interceptors.reduceRight.Ω = [[() => __ΩCallProp, 'prop', () => ResponseWithMeta, () => ResponseWithMeta, '', 'Pn!2"PP7#P7$`J/%']], interceptors.reduceRight(__assignType((next, handle) => __assignType((req) => handle(req, next), ['req', '', 'P"2!"/"']), ['next', 'handle', '', 'P"2!"2""/#']), call));
|
|
57
|
+
const { data, code = 200, header = {}, } = await handle({
|
|
58
|
+
body,
|
|
59
|
+
header: reqHeader,
|
|
60
|
+
query: parse(urlObj.search),
|
|
61
|
+
url: urlObj,
|
|
62
|
+
method: method,
|
|
63
|
+
route,
|
|
64
|
+
});
|
|
65
|
+
let res;
|
|
66
|
+
if (data instanceof ReadableStream) {
|
|
67
|
+
res = data;
|
|
68
|
+
}
|
|
69
|
+
else if (data instanceof TransformStream) {
|
|
70
|
+
res = data.readable;
|
|
71
|
+
}
|
|
72
|
+
else if (data instanceof Readable) {
|
|
73
|
+
res = data;
|
|
74
|
+
}
|
|
75
|
+
else if (data instanceof PassThrough) {
|
|
76
|
+
res = new PassThroughReadable(data);
|
|
77
|
+
}
|
|
78
|
+
else if (data === null || typeof data === "undefined") {
|
|
79
|
+
res = null;
|
|
80
|
+
}
|
|
81
|
+
else if (header["content-type"]?.includes?.("text")) {
|
|
82
|
+
res = Readable.from(data?.toString() || "");
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
if (!header["content-type"]) {
|
|
86
|
+
header["content-type"] = "application/json";
|
|
87
|
+
}
|
|
88
|
+
res = Readable.from(JSON.stringify(data));
|
|
89
|
+
}
|
|
90
|
+
return {
|
|
91
|
+
code,
|
|
92
|
+
header,
|
|
93
|
+
res,
|
|
94
|
+
};
|
|
95
|
+
},
|
|
96
|
+
// @ts-ignore
|
|
97
|
+
_rawObject: object,
|
|
98
|
+
};
|
|
99
|
+
return ins;
|
|
100
|
+
}, [() => __ΩServerRuntimeContext, 'context', '', 'Pn!2""/#']);
|
|
101
|
+
}
|
|
102
|
+
createServerFactory.__type = ['object', 'createServerFactory', 'P"2!"/"'];
|
|
103
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
const __ΩParameters = ['T', 'args', '', 'Parameters', 'l>e"!R!RPde#!Ph"!@2""/#qk#\'QRb!Pde"!p)w$y'];
|
|
2
|
+
/*@ts-ignore*/
|
|
3
|
+
import { __ΩRouteType } from "../route/index.js";
|
|
4
|
+
/*@ts-ignore*/
|
|
5
|
+
import { __ΩMethod } from "../route/types.js";
|
|
6
|
+
const __ΩCallProp = [() => __ΩMethod, 'M', () => __ΩParameters, () => paramMeta.call, 2, 'url', 'method', () => __ΩRouteType, 'route', 'CallProp', 'n!c"Pi$o#".%fP!4&e#!4\'e#!o("4)MKw*y'];
|
|
7
|
+
export { __ΩCallProp as __ΩCallProp };
|
|
8
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":";;6BAC0B,mBAAmB;;0BACtB,mBAAmB;gFAGxB,IAAI"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Readable } from "stream";
|
|
2
|
+
export class PassThroughReadable extends Readable {
|
|
3
|
+
p;
|
|
4
|
+
constructor(p) {
|
|
5
|
+
super();
|
|
6
|
+
this.p = p;
|
|
7
|
+
}
|
|
8
|
+
_read(size) {
|
|
9
|
+
return this.p.read(size);
|
|
10
|
+
}
|
|
11
|
+
static __type = [() => Readable, 'p', 'constructor', 'size', '_read', 'PassThroughReadable', 'P7!P!2";9"0#P\'2$$0%5w&'];
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=pass-through-readable.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pass-through-readable.js","sourceRoot":"","sources":["../../../src/server/utils/pass-through-readable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE/C,MAAM,OAAO,mBAAoB,SAAQ,QAAQ;IACnB;IAA7B,YAA6B,CAAc;QAC1C,KAAK,EAAE,CAAC;QADoB,MAAC,GAAD,CAAC,CAAa;IAE3C,CAAC;IACD,KAAK,CAAC,IAAY;QACjB,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"const.js","sourceRoot":"","sources":["../../src/view/const.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
function __assignType(fn, args) {
|
|
2
|
+
fn.__type = args;
|
|
3
|
+
return fn;
|
|
4
|
+
}
|
|
5
|
+
export class SFDataContext {
|
|
6
|
+
_root;
|
|
7
|
+
constructor(_root) {
|
|
8
|
+
this._root = _root;
|
|
9
|
+
}
|
|
10
|
+
get value() {
|
|
11
|
+
return this._root.value;
|
|
12
|
+
}
|
|
13
|
+
callbacks = (Set.Ω = [['newValue', '', 'P!2!$/"']], new Set());
|
|
14
|
+
children = (Set.Ω = [[() => SFDataContext, 'P!7!']], new Set());
|
|
15
|
+
fock() {
|
|
16
|
+
return this._root.createChild();
|
|
17
|
+
}
|
|
18
|
+
watch(callback, updateNow = false) {
|
|
19
|
+
if (this.callbacks.size === 0)
|
|
20
|
+
// @ts-ignore 2341
|
|
21
|
+
this._root.children.add(this);
|
|
22
|
+
this.callbacks.add(callback);
|
|
23
|
+
if (updateNow)
|
|
24
|
+
callback(this.value);
|
|
25
|
+
}
|
|
26
|
+
distory() {
|
|
27
|
+
this._root.distoryChild(this);
|
|
28
|
+
}
|
|
29
|
+
static __type = ['T', () => SFRawDataContext, '_root', 'constructor', 'callbacks', function () { return (Set.Ω = [['newValue', '', 'P!2!$/"']], new Set()); }, 'children', function () { return (Set.Ω = [[() => SFDataContext, 'P!7!']], new Set()); }, 'fock', 'newValue', '', 'callback', 'updateNow', 'watch', 'distory', 'SFDataContext', 'b!PPe#!7"2#;"0$!!3%;>&!3\';>(P"0)PPe#!2*$/+2,"2-"0.P"0/5w0'];
|
|
30
|
+
}
|
|
31
|
+
export class SFRawDataContext {
|
|
32
|
+
_value;
|
|
33
|
+
constructor(_value) {
|
|
34
|
+
this._value = _value;
|
|
35
|
+
}
|
|
36
|
+
get value() {
|
|
37
|
+
return this._value;
|
|
38
|
+
}
|
|
39
|
+
update(newValue) {
|
|
40
|
+
this._value = newValue;
|
|
41
|
+
const called = new Set();
|
|
42
|
+
this.children.forEach(__assignType((i) => {
|
|
43
|
+
i.callbacks.forEach(__assignType((c) => {
|
|
44
|
+
if (!called.has(c)) {
|
|
45
|
+
called.add(c);
|
|
46
|
+
c(newValue);
|
|
47
|
+
}
|
|
48
|
+
}, ['c', '', 'P"2!"/"']));
|
|
49
|
+
}, ['i', '', 'P"2!"/"']));
|
|
50
|
+
}
|
|
51
|
+
children = (Set.Ω = [[() => SFDataContext, 'P!7!']], new Set());
|
|
52
|
+
createChild() {
|
|
53
|
+
const child =
|
|
54
|
+
// @ts-ignore
|
|
55
|
+
new SFDataContext(this);
|
|
56
|
+
return child;
|
|
57
|
+
}
|
|
58
|
+
distoryChild(child) {
|
|
59
|
+
this.children.delete(child);
|
|
60
|
+
}
|
|
61
|
+
static __type = ['T', '_value', 'constructor', 'newValue', 'update', 'children', function () { return (Set.Ω = [[() => SFDataContext, 'P!7!']], new Set()); }, 'createChild', () => SFDataContext, 'child', 'distoryChild', 'SFRawDataContext', 'b!Pe"!2";"0#!Pe"!2$"0%!3&;>\'P"0(PPe#!7)2*"0+5w,'];
|
|
62
|
+
}
|
|
63
|
+
export function forkDataContextRecord(data) {
|
|
64
|
+
return Object.fromEntries(Object.entries(data).map(__assignType(([k, context]) => [
|
|
65
|
+
k,
|
|
66
|
+
context instanceof SFDataContext ? context.fock() : context,
|
|
67
|
+
], ['param0', '', 'P"2!"/"'])));
|
|
68
|
+
}
|
|
69
|
+
forkDataContextRecord.__type = ['data', 'forkDataContextRecord', 'P"2!"/"'];
|
|
70
|
+
//# sourceMappingURL=conetext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conetext.js","sourceRoot":"","sources":["../../../src/view/data-context/conetext.ts"],"names":[],"mappings":";;;;AAAA,MAAM,OAAO,aAAa;IACG;IAA5B,YAA4B,KAA0B;QAA1B,UAAK,GAAL,KAAK,CAAqB;IAAG,CAAC;IAC1D,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;IACzB,CAAC;IACO,SAAS,IAAO,GAAG,oCAAP,IAAI,GAAG,EAAyB,EAAC;IAC7C,QAAQ,IAAO,GAAG,sCAAP,IAAI,GAAG,EAAoB,EAAC;IAC/C,IAAI;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;IACjC,CAAC;IACD,KAAK,CAAC,QAA+B,EAAE,SAAS,GAAG,KAAK;QACvD,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC;YAC5B,kBAAkB;YAClB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,SAAS;YAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IACD,OAAO;QACN,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;6GAduB,GAAG,oCAAP,IAAI,GAAG,EAAyB,wCAC7B,GAAG,sCAAP,IAAI,GAAG,EAAoB;;AAe/C,MAAM,OAAO,gBAAgB;IACR;IAApB,YAAoB,MAAS;QAAT,WAAM,GAAN,MAAM,CAAG;IAAG,CAAC;IACjC,IAAI,KAAK;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IACD,MAAM,CAAC,QAAW;QACjB,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;QACvB,MAAM,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,OAAO,cAAC,CAAC,CAAC,EAAE,EAAE;YAC1B,CAAS,CAAC,SAAS,CAAC,OAAO,cAAC,CAAC,CAAM,EAAE,EAAE;gBACvC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;oBACd,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACb,CAAC;YACF,CAAC,wBAAC,CAAC;QACJ,CAAC,wBAAC,CAAC;IACJ,CAAC;IACO,QAAQ,IAAO,GAAG,sCAAP,IAAI,GAAG,EAAoB,EAAC;IAC/C,WAAW;QACV,MAAM,KAAK;QACV,aAAa;QACb,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC;QACzB,OAAO,KAAK,CAAC;IACd,CAAC;IACD,YAAY,CAAC,KAAuB;QACnC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;2GATsB,GAAG,sCAAP,IAAI,GAAG,EAAoB;;AAW/C,MAAM,UAAU,qBAAqB,CACpC,IAAO;IAEP,OAAO,MAAM,CAAC,WAAW,CACxB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,cAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC;QAC1C,CAAC;QACD,OAAO,YAAY,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO;KAC3D,6BAAC,CACG,CAAC;AACR,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
const __ΩRecord = ['K', 'T', 'Record', 'l\'e#"Rb!b"Pde"!N#!w#y'];
|
|
2
|
+
import { SFWebRequest } from "../../request/index.js";
|
|
3
|
+
/*@ts-ignore*/
|
|
4
|
+
import { __ΩRouteType } from "../../route/index.js";
|
|
5
|
+
import { SFDataContext } from "./conetext.js";
|
|
6
|
+
export * from "./conetext.js";
|
|
7
|
+
const __ΩSystemRenderDataContext = [() => __ΩRouteType, "GET", () => SFDataContext, 'route', () => SFWebRequest, 'request', 'baseUrl', 'SystemRenderDataContext', 'PP."o!"7#4$P7%4&&4\'Mw(y'];
|
|
8
|
+
export { __ΩSystemRenderDataContext as __ΩSystemRenderDataContext };
|
|
9
|
+
const __ΩUserRenderDataContext = [() => __ΩRecord, () => SFDataContext, 'UserRenderDataContext', 'P&P"7"o!#Mw#y'];
|
|
10
|
+
export { __ΩUserRenderDataContext as __ΩUserRenderDataContext };
|
|
11
|
+
const __ΩRenderDataContext = [() => __ΩSystemRenderDataContext, 'system', () => __ΩUserRenderDataContext, 'user', 'RenderDataContext', 'Pn!4"n#4$Mw%y'];
|
|
12
|
+
export { __ΩRenderDataContext as __ΩRenderDataContext };
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/view/data-context/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;;6BAC5B,sBAAsB;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/*@ts-ignore*/
|
|
2
|
+
import { __ΩHTMLVNode, __ΩHTMLVElement } from "./types.js";
|
|
3
|
+
import { VNodeType } from "./types.js";
|
|
4
|
+
export function createElement(type, prop, ...children) {
|
|
5
|
+
return {
|
|
6
|
+
type: VNodeType.Element,
|
|
7
|
+
tagName: type,
|
|
8
|
+
attributes: prop,
|
|
9
|
+
children: children.flat(),
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
createElement.__type = ['type', 'prop', () => __ΩHTMLVNode, () => __ΩHTMLVNode, 'children', () => __ΩHTMLVElement, 'createElement', 'P&2!"2"Pn#n$FJ@2%n&/\''];
|
|
13
|
+
export function createDoctypeElement() {
|
|
14
|
+
return {
|
|
15
|
+
type: VNodeType.Outher,
|
|
16
|
+
text: "<!DOCTYPE html>",
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
createDoctypeElement.__type = [() => __ΩHTMLVNode, 'createDoctypeElement', 'Pn!/"'];
|
|
20
|
+
//# sourceMappingURL=create-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-element.js","sourceRoot":"","sources":["../../../src/view/html/create-element.ts"],"names":[],"mappings":";8CAAmD,YAAY;AAA/D,OAAO,EAA2B,SAAS,EAAE,MAAM,YAAY,CAAC;AAEhE,MAAM,UAAU,aAAa,CAC5B,IAAY,EACZ,IAAS,EACT,GAAG,QAAqC;IAExC,OAAO;QACN,IAAI,EAAE,SAAS,CAAC,OAAO;QACvB,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;QAChB,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE;KACzB,CAAC;AACH,CAAC;;AACD,MAAM,UAAU,oBAAoB;IACnC,OAAO;QACN,IAAI,EAAE,SAAS,CAAC,MAAM;QACtB,IAAI,EAAE,iBAAiB;KACvB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/view/html/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,cAAc,qBAAqB,CAAC"}
|