@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.
Files changed (147) hide show
  1. package/dist/browser/index.js +8 -0
  2. package/dist/browser/index.js.map +1 -0
  3. package/dist/cli/dev-server.js +64 -0
  4. package/dist/cli/dev-server.js.map +1 -0
  5. package/dist/cli/index.js +117 -0
  6. package/dist/cli/index.js.map +1 -0
  7. package/dist/cli/types.js +2 -0
  8. package/dist/cli/types.js.map +1 -0
  9. package/dist/cli-helper.js +2 -0
  10. package/dist/cli-helper.js.map +1 -0
  11. package/dist/index.js +14 -0
  12. package/dist/index.js.map +1 -0
  13. package/dist/interceptor/index.js +26 -0
  14. package/dist/interceptor/index.js.map +1 -0
  15. package/dist/interceptor/middleware-to-interceptor/index.js +32 -0
  16. package/dist/interceptor/middleware-to-interceptor/index.js.map +1 -0
  17. package/dist/interceptor/middleware-to-interceptor/mock-res.js +241 -0
  18. package/dist/interceptor/middleware-to-interceptor/mock-res.js.map +1 -0
  19. package/dist/interceptor/middleware-to-interceptor/mook-req.js +180 -0
  20. package/dist/interceptor/middleware-to-interceptor/mook-req.js.map +1 -0
  21. package/dist/interceptor/types.js +6 -0
  22. package/dist/interceptor/types.js.map +1 -0
  23. package/dist/params/index.js +10 -0
  24. package/dist/params/index.js.map +1 -0
  25. package/dist/request/index.js +46 -0
  26. package/dist/request/index.js.map +1 -0
  27. package/dist/return-types/index.js +2 -0
  28. package/dist/return-types/index.js.map +1 -0
  29. package/dist/return-types/response-with-meta.js +25 -0
  30. package/dist/return-types/response-with-meta.js.map +1 -0
  31. package/dist/route/index.js +20 -0
  32. package/dist/route/index.js.map +1 -0
  33. package/dist/route/types.js +17 -0
  34. package/dist/route/types.js.map +1 -0
  35. package/dist/runtime/index.js +84 -0
  36. package/dist/runtime/index.js.map +1 -0
  37. package/dist/runtime/type.js +11 -0
  38. package/dist/runtime/type.js.map +1 -0
  39. package/dist/server/body/helper.js +118 -0
  40. package/dist/server/body/helper.js.map +1 -0
  41. package/dist/server/body/json.js +211 -0
  42. package/dist/server/body/json.js.map +1 -0
  43. package/dist/server/body/types.js +6 -0
  44. package/dist/server/body/types.js.map +1 -0
  45. package/dist/server/dump-api-type.js +59 -0
  46. package/dist/server/dump-api-type.js.map +1 -0
  47. package/dist/server/index.js +103 -0
  48. package/dist/server/index.js.map +1 -0
  49. package/dist/server/types.js +8 -0
  50. package/dist/server/types.js.map +1 -0
  51. package/dist/server/utils/pass-through-readable.js +13 -0
  52. package/dist/server/utils/pass-through-readable.js.map +1 -0
  53. package/dist/view/const.js +2 -0
  54. package/dist/view/const.js.map +1 -0
  55. package/dist/view/data-context/conetext.js +70 -0
  56. package/dist/view/data-context/conetext.js.map +1 -0
  57. package/dist/view/data-context/index.js +13 -0
  58. package/dist/view/data-context/index.js.map +1 -0
  59. package/dist/view/html/create-element.js +20 -0
  60. package/dist/view/html/create-element.js.map +1 -0
  61. package/dist/view/html/index.js +4 -0
  62. package/dist/view/html/index.js.map +1 -0
  63. package/dist/view/html/parse-html-to-v-dom.js +317 -0
  64. package/dist/view/html/parse-html-to-v-dom.js.map +1 -0
  65. package/dist/view/html/render-v-dom-to-string.js +46 -0
  66. package/dist/view/html/render-v-dom-to-string.js.map +1 -0
  67. package/dist/view/html/types.js +21 -0
  68. package/dist/view/html/types.js.map +1 -0
  69. package/dist/view/index.js +7 -0
  70. package/dist/view/index.js.map +1 -0
  71. package/dist/view/layout.js +24 -0
  72. package/dist/view/layout.js.map +1 -0
  73. package/dist/view/render/html-render.js +21 -0
  74. package/dist/view/render/html-render.js.map +1 -0
  75. package/dist/view/render/index.js +3 -0
  76. package/dist/view/render/index.js.map +1 -0
  77. package/dist/view/render/render.js +183 -0
  78. package/dist/view/render/render.js.map +1 -0
  79. package/dist/view/render/sf-v-dom-render.js +40 -0
  80. package/dist/view/render/sf-v-dom-render.js.map +1 -0
  81. package/dist/view/types.js +10 -0
  82. package/dist/view/types.js.map +1 -0
  83. package/dist/view/utils/find-route-dom.js +22 -0
  84. package/dist/view/utils/find-route-dom.js.map +1 -0
  85. package/dist/view/utils/get-render/client.js +77 -0
  86. package/dist/view/utils/get-render/client.js.map +1 -0
  87. package/dist/view/utils/get-render/common.js +87 -0
  88. package/dist/view/utils/get-render/common.js.map +1 -0
  89. package/dist/view/utils/get-render/index.js +4 -0
  90. package/dist/view/utils/get-render/index.js.map +1 -0
  91. package/dist/view/utils/get-render/server.js +60 -0
  92. package/dist/view/utils/get-render/server.js.map +1 -0
  93. package/dist/view/utils/index.js +3 -0
  94. package/dist/view/utils/index.js.map +1 -0
  95. package/dist/view/view.js +10 -0
  96. package/dist/view/view.js.map +1 -0
  97. package/package.json +41 -0
  98. package/resource/default-index.html +11 -0
  99. package/src/browser/index.ts +7 -0
  100. package/src/cli/dev-server.ts +66 -0
  101. package/src/cli/index.ts +122 -0
  102. package/src/cli/types.ts +7 -0
  103. package/src/cli-helper.ts +5 -0
  104. package/src/index.ts +24 -0
  105. package/src/interceptor/index.ts +26 -0
  106. package/src/interceptor/middleware-to-interceptor/index.ts +29 -0
  107. package/src/interceptor/middleware-to-interceptor/mock-res.ts +255 -0
  108. package/src/interceptor/middleware-to-interceptor/mook-req.ts +218 -0
  109. package/src/interceptor/types.ts +7 -0
  110. package/src/params/index.ts +12 -0
  111. package/src/request/index.ts +65 -0
  112. package/src/return-types/index.ts +1 -0
  113. package/src/return-types/response-with-meta.ts +17 -0
  114. package/src/route/index.ts +43 -0
  115. package/src/route/types.ts +11 -0
  116. package/src/server/body/helper.ts +110 -0
  117. package/src/server/body/json.ts +217 -0
  118. package/src/server/body/types.ts +6 -0
  119. package/src/server/dump-api-type.ts +64 -0
  120. package/src/server/index.ts +113 -0
  121. package/src/server/types.ts +11 -0
  122. package/src/server/utils/pass-through-readable.ts +10 -0
  123. package/src/view/const.ts +1 -0
  124. package/src/view/data-context/conetext.ts +59 -0
  125. package/src/view/data-context/index.ts +18 -0
  126. package/src/view/html/create-element.ts +20 -0
  127. package/src/view/html/index.ts +3 -0
  128. package/src/view/html/parse-html-to-v-dom.ts +348 -0
  129. package/src/view/html/render-v-dom-to-string.ts +79 -0
  130. package/src/view/html/types.ts +32 -0
  131. package/src/view/index.ts +6 -0
  132. package/src/view/layout.ts +20 -0
  133. package/src/view/render/html-render.ts +21 -0
  134. package/src/view/render/index.ts +2 -0
  135. package/src/view/render/render.ts +225 -0
  136. package/src/view/render/sf-v-dom-render.ts +34 -0
  137. package/src/view/types.ts +18 -0
  138. package/src/view/utils/find-route-dom.ts +19 -0
  139. package/src/view/utils/get-render/client.ts +76 -0
  140. package/src/view/utils/get-render/common.ts +113 -0
  141. package/src/view/utils/get-render/index.ts +3 -0
  142. package/src/view/utils/get-render/server.ts +71 -0
  143. package/src/view/utils/index.ts +2 -0
  144. package/src/view/view.ts +7 -0
  145. package/test/body.test.ts +29 -0
  146. package/tsconfig.build.json +9 -0
  147. package/tsconfig.json +8 -0
@@ -0,0 +1,317 @@
1
+ /*@ts-ignore*/
2
+ import { __ΩHTMLVElement } from "./types.js";
3
+ /**
4
+ * 基于txml根据需要进行调整
5
+ */
6
+ import { VNodeType } from "./types.js";
7
+ const openBracket = "<";
8
+ /**
9
+ * &lt;
10
+ */
11
+ const openBracketCC = "<".charCodeAt(0);
12
+ const closeBracket = ">";
13
+ /**
14
+ * &gt;
15
+ */
16
+ const closeBracketCC = ">".charCodeAt(0);
17
+ const minusCC = "-".charCodeAt(0);
18
+ /**
19
+ * /
20
+ */
21
+ const slashCC = "/".charCodeAt(0);
22
+ /**
23
+ * ?
24
+ */
25
+ const questionMarkCC = "?".charCodeAt(0);
26
+ /**
27
+ * !
28
+ */
29
+ const exclamationCC = "!".charCodeAt(0);
30
+ /**
31
+ * '
32
+ */
33
+ const singleQuoteCC = "'".charCodeAt(0);
34
+ /**
35
+ * "
36
+ */
37
+ const doubleQuoteCC = '"'.charCodeAt(0);
38
+ /**
39
+ * =
40
+ */
41
+ const equalSignCC = "=".charCodeAt(0);
42
+ /**
43
+ * [
44
+ */
45
+ const openCornerBracketCC = "[".charCodeAt(0);
46
+ /**
47
+ * ]
48
+ */
49
+ const closeCornerBracketCC = "]".charCodeAt(0);
50
+ /**
51
+ * ?
52
+ */
53
+ const questionCC = "?".charCodeAt(0);
54
+ const nameSpacer = "\r\n\t>/= ";
55
+ const noChildTag = ["script", "style"];
56
+ const SelfClosingTags = ["img", "br", "input", "meta", "link", "hr"];
57
+ export function parseHtmlToVDom(html, { keepWhitespace = false } = {}) {
58
+ var pos = 0;
59
+ function parseChildren(tagName) {
60
+ var children = [];
61
+ while (html[pos]) {
62
+ if (html.charCodeAt(pos) == openBracketCC) {
63
+ // 检查是标签
64
+ if (html.charCodeAt(pos + 1) === slashCC) {
65
+ // 检查是否是关闭标签
66
+ var closeStart = pos + 2;
67
+ pos = html.indexOf(closeBracket, pos);
68
+ var closeTag = html.substring(closeStart, pos);
69
+ if (closeTag.indexOf(tagName) == -1) {
70
+ // 如果不是关闭当前标签则报错
71
+ var parsedText = html.substring(0, pos).split("\n");
72
+ throw new Error("Unexpected close tag\nLine: " +
73
+ (parsedText.length - 1) +
74
+ "\nColumn: " +
75
+ (parsedText[parsedText.length - 1].length + 1) +
76
+ "\nChar: " +
77
+ html[pos]);
78
+ }
79
+ if (pos + 1)
80
+ pos += 1;
81
+ return children;
82
+ }
83
+ else if (html.charCodeAt(pos + 1) === exclamationCC) {
84
+ if (html.charCodeAt(pos + 2) == minusCC &&
85
+ html.charCodeAt(pos + 3) == minusCC) {
86
+ // 评论
87
+ const startCommentPos = pos;
88
+ do {
89
+ pos = html.indexOf(closeBracket, pos + 1);
90
+ } while (pos !== -1 &&
91
+ !(html.charCodeAt(pos) === closeBracketCC &&
92
+ html.charCodeAt(pos - 1) == minusCC &&
93
+ html.charCodeAt(pos - 2) == minusCC &&
94
+ pos != -1));
95
+ children.push({
96
+ type: VNodeType.Comment,
97
+ conetnt: html.substring(startCommentPos + 4, pos === -1 ? undefined : pos - 3),
98
+ });
99
+ if (pos === -1) {
100
+ pos = html.length;
101
+ }
102
+ }
103
+ else if (html.charCodeAt(pos + 2) === openCornerBracketCC &&
104
+ html.charCodeAt(pos + 8) === openCornerBracketCC &&
105
+ html.substring(pos + 3, pos + 8).toLowerCase() === "cdata") {
106
+ // cdata
107
+ var cdataEndIndex = html.indexOf("]]>", pos);
108
+ if (cdataEndIndex == -1) {
109
+ // children.push(html.substring(pos + 9));
110
+ pos = html.length;
111
+ }
112
+ else {
113
+ // children.push(html.substring(pos + 9, cdataEndIndex));
114
+ pos = cdataEndIndex + 3;
115
+ }
116
+ console.warn("cdata is not support now, it will be ignore.");
117
+ continue;
118
+ }
119
+ else {
120
+ // doctype
121
+ const startDoctype = pos;
122
+ pos += 2;
123
+ var encapsuled = false;
124
+ while ((html.charCodeAt(pos) !== closeBracketCC ||
125
+ encapsuled === true) &&
126
+ html[pos]) {
127
+ if (html.charCodeAt(pos) === openCornerBracketCC) {
128
+ encapsuled = true;
129
+ }
130
+ else if (encapsuled === true &&
131
+ html.charCodeAt(pos) === closeCornerBracketCC) {
132
+ encapsuled = false;
133
+ }
134
+ pos++;
135
+ }
136
+ children.push({
137
+ type: VNodeType.Outher,
138
+ text: html.substring(startDoctype, pos + 1),
139
+ });
140
+ }
141
+ pos++;
142
+ continue;
143
+ }
144
+ var node = parseNode();
145
+ // XML能力,暂时不保留
146
+ // if (skipXmlDeclaration && isXmlDeclarationTag(node.tagName)) {
147
+ // continue;
148
+ // }
149
+ children.push(node);
150
+ }
151
+ else {
152
+ var text = parseText();
153
+ if (keepWhitespace) {
154
+ if (text.length > 0) {
155
+ children.push(text);
156
+ }
157
+ }
158
+ else {
159
+ var trimmed = text.trim();
160
+ if (trimmed.length > 0) {
161
+ children.push(trimmed);
162
+ }
163
+ }
164
+ pos++;
165
+ }
166
+ }
167
+ return children;
168
+ }
169
+ parseChildren.__type = ['tagName', 'parseChildren', 'P&2!"/"'];
170
+ function parseName() {
171
+ var start = pos;
172
+ while (nameSpacer.indexOf(html[pos]) === -1 && html[pos]) {
173
+ pos++;
174
+ }
175
+ return html.slice(start, pos);
176
+ }
177
+ parseName.__type = ['parseName', 'P"/!'];
178
+ function parseString() {
179
+ var startChar = html[pos];
180
+ var startpos = pos + 1;
181
+ pos = html.indexOf(startChar, startpos);
182
+ var value = html.slice(startpos, pos);
183
+ return value;
184
+ }
185
+ parseString.__type = ['parseString', 'P"/!'];
186
+ function parseNode() {
187
+ pos++;
188
+ const tagName = parseName();
189
+ const isProcessingInstruction = tagName[0] === "?";
190
+ const instructionContentStart = pos;
191
+ const attributes = {};
192
+ let children = [];
193
+ // parsing attributes
194
+ while (html[pos] &&
195
+ html.charCodeAt(pos) !== closeBracketCC &&
196
+ !(isProcessingInstruction &&
197
+ html.charCodeAt(pos) === questionMarkCC &&
198
+ html.charCodeAt(pos + 1) === closeBracketCC)) {
199
+ var c = html.charCodeAt(pos);
200
+ if ((c > 64 && c < 91) || (c > 96 && c < 123)) {
201
+ var name = parseName();
202
+ var value = null;
203
+ // Skip whitespace after the attribute name.
204
+ while (html.charCodeAt(pos) === 32 ||
205
+ html.charCodeAt(pos) === 9 ||
206
+ html.charCodeAt(pos) === 10 ||
207
+ html.charCodeAt(pos) === 13) {
208
+ pos++;
209
+ }
210
+ if (html.charCodeAt(pos) === equalSignCC) {
211
+ pos++;
212
+ // Skip whitespace after '='.
213
+ while (html.charCodeAt(pos) === 32 ||
214
+ html.charCodeAt(pos) === 9 ||
215
+ html.charCodeAt(pos) === 10 ||
216
+ html.charCodeAt(pos) === 13) {
217
+ pos++;
218
+ }
219
+ var code = html.charCodeAt(pos);
220
+ if (code === singleQuoteCC || code === doubleQuoteCC) {
221
+ value = parseString();
222
+ if (pos === -1) {
223
+ return {
224
+ type: VNodeType.Element,
225
+ tagName,
226
+ attributes,
227
+ children,
228
+ };
229
+ }
230
+ }
231
+ else if (code && code !== closeBracketCC) {
232
+ // HTML-style unquoted attribute value: read until whitespace, '/', or '>'.
233
+ var valueStart = pos;
234
+ while (html[pos] && nameSpacer.indexOf(html[pos]) === -1) {
235
+ pos++;
236
+ }
237
+ value = html.slice(valueStart, pos);
238
+ }
239
+ }
240
+ attributes[name] = value;
241
+ continue;
242
+ }
243
+ pos++;
244
+ }
245
+ const isExplicitSelfClosed = !isProcessingInstruction && html.charCodeAt(pos - 1) === slashCC;
246
+ if (isProcessingInstruction) {
247
+ var instructionContent = html.slice(instructionContentStart, pos).trim();
248
+ if (instructionContent.length > 0 &&
249
+ Object.keys(attributes).length === 0) {
250
+ children = [instructionContent];
251
+ }
252
+ if (html.charCodeAt(pos) === questionMarkCC &&
253
+ html.charCodeAt(pos + 1) === closeBracketCC) {
254
+ pos += 2;
255
+ }
256
+ else if (html.charCodeAt(pos) === closeBracketCC) {
257
+ pos += 1;
258
+ }
259
+ return {
260
+ type: VNodeType.Element,
261
+ tagName,
262
+ attributes,
263
+ children,
264
+ };
265
+ }
266
+ // optional parsing of children
267
+ if (html.charCodeAt(pos - 1) !== slashCC &&
268
+ html.charCodeAt(pos - 1) !== questionCC) {
269
+ if (noChildTag.includes(tagName)) {
270
+ // TODO: 这里其实要检查是否在字符串中
271
+ const endTag = `</${tagName}>`;
272
+ var start = pos + 1;
273
+ pos = html.indexOf(endTag, pos);
274
+ children = [html.slice(start, pos)];
275
+ pos += endTag.length;
276
+ }
277
+ else if (SelfClosingTags.indexOf(tagName) === -1) {
278
+ pos++;
279
+ children = parseChildren(tagName);
280
+ }
281
+ else {
282
+ pos++;
283
+ }
284
+ }
285
+ else {
286
+ pos++;
287
+ }
288
+ const node = {
289
+ type: VNodeType.Element,
290
+ tagName,
291
+ attributes,
292
+ children,
293
+ };
294
+ if (isExplicitSelfClosed) {
295
+ Object.defineProperty(node, "selfClosed", {
296
+ value: true,
297
+ enumerable: false,
298
+ writable: true,
299
+ configurable: true,
300
+ });
301
+ }
302
+ return node;
303
+ }
304
+ parseNode.__type = [() => __ΩHTMLVElement, 'parseNode', 'Pn!/"'];
305
+ function parseText() {
306
+ var start = pos;
307
+ pos = html.indexOf(openBracket, pos) - 1;
308
+ if (pos === -2)
309
+ pos = html.length;
310
+ var text = html.slice(start, pos + 1);
311
+ return text;
312
+ }
313
+ parseText.__type = ['parseText', 'P"/!'];
314
+ return parseChildren("");
315
+ }
316
+ parseHtmlToVDom.__type = ['html', 'param1', 'parseHtmlToVDom', 'P&2!"2""/#'];
317
+ //# sourceMappingURL=parse-html-to-v-dom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-html-to-v-dom.js","sourceRoot":"","sources":["../../../src/view/html/parse-html-to-v-dom.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ function __assignType(fn, args) {
2
+ fn.__type = args;
3
+ return fn;
4
+ }
5
+ /*@ts-ignore*/
6
+ import { __ΩHTMLVNode, __ΩHTMLVElement } from "./types.js";
7
+ import { VNodeType } from "./types.js";
8
+ renderVDomToString.__type = [() => __ΩHTMLVNode, () => __ΩHTMLVNode, 'vDom', () => __ΩHTMLVNode, 'dom', () => __ΩHTMLVNode, '', 'customizeRender', () => __ΩHTMLVElement, () => __ΩHTMLVElement, 'raw', 'customizeChildrenRender', 'config', 'renderVDomToString', 'PPn!n"FJ2#PPn$2%P,-Pn&2%&/\'J/\'4(8Pn)2%P,-Pn*2%P&/\'2+&/\'J/\'4,8M2-8&/.'];
9
+ renderVDomToString.__type = [() => __ΩHTMLVNode, () => __ΩHTMLVNode, 'vDom', () => __ΩHTMLVNode, 'dom', () => __ΩHTMLVNode, '', 'customizeRender', () => __ΩHTMLVElement, () => __ΩHTMLVElement, 'raw', 'customizeChildrenRender', 'config', 'renderVDomToString', 'PPn!n"FJ2#PPn$2%P,-Pn&2%P&&`J/\'J/\'4(8Pn)2%P,-Pn*2%PP&&`J/\'2+P&&`J/\'J/\'4,8M2-P&&`J/.'];
10
+ export function renderVDomToString(vDom, config = {}) {
11
+ if (Array.isArray(vDom)) {
12
+ const allDom = vDom.map(__assignType((d) => renderVDomToString(d, config), ['d', '', 'P"2!"/"']));
13
+ const render = __assignType((res) => res.join(""), ['res', '', 'P&F2!"/"']);
14
+ if (allDom.some(__assignType((i) => i instanceof Promise, ['i', '', 'P"2!"/"'])))
15
+ return Promise.all(allDom).then(render);
16
+ return render(allDom);
17
+ }
18
+ const customizeRender = config.customizeRender?.(vDom);
19
+ if (customizeRender)
20
+ return customizeRender(vDom);
21
+ if (typeof vDom === "string")
22
+ return vDom;
23
+ switch (vDom.type) {
24
+ case VNodeType.Element:
25
+ const attt = Object.entries(vDom.attributes)
26
+ .map(__assignType(([k, v]) => ` ${k}=${JSON.stringify(v)}`, ['param0', '', 'P"2!"/"']))
27
+ .join("");
28
+ const customizeChildrenRender = config.customizeChildrenRender?.(vDom);
29
+ const children = customizeChildrenRender
30
+ ? customizeChildrenRender(vDom, () => renderVDomToString(vDom.children, config))
31
+ : renderVDomToString(vDom.children, config);
32
+ const render = __assignType((children) => `<${vDom.tagName}${attt}>${children}</${vDom.tagName}>`, ['children', '', 'P&2!"/"']);
33
+ if (children instanceof Promise) {
34
+ return children.then(render);
35
+ }
36
+ return render(children);
37
+ case VNodeType.Comment:
38
+ return `<!--${vDom.conetnt}-->`;
39
+ case VNodeType.Text:
40
+ return vDom.conetnt;
41
+ case VNodeType.Outher:
42
+ return vDom.text;
43
+ }
44
+ }
45
+ renderVDomToString.__type = [() => __ΩHTMLVNode, () => __ΩHTMLVNode, 'vDom', () => __ΩHTMLVNode, 'dom', () => __ΩHTMLVNode, '', 'customizeRender', () => __ΩHTMLVElement, () => __ΩHTMLVElement, 'raw', 'customizeChildrenRender', 'config', () => ({}), 'renderVDomToString', 'PPn!n"FJ2#PPn$2%P,-Pn&2%P&&`J/\'J/\'4(8Pn)2%P,-Pn*2%P"/\'2+P&&`J/\'J/\'4,8M2->.P&&`J//'];
46
+ //# sourceMappingURL=render-v-dom-to-string.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"render-v-dom-to-string.js","sourceRoot":"","sources":["../../../src/view/html/render-v-dom-to-string.ts"],"names":[],"mappings":";;;;;8CAAmD,YAAY;AAA/D,OAAO,EAA2B,SAAS,EAAE,MAAM,YAAY,CAAC;;;AA8BhE,MAAM,UAAU,kBAAkB,CACjC,IAA6B,EAC7B,SAUI,EAAE;IAEN,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,cAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,MAAM,CAAC,wBAAC,CAAC;QAC9D,MAAM,MAAM,gBAAG,CAAC,GAAa,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,0BAAA,CAAC;QAC/C,IAAI,MAAM,CAAC,IAAI,cAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,OAAO,wBAAC;YAC3C,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,OAAO,MAAM,CAAC,MAAkB,CAAC,CAAC;IACnC,CAAC;IACD,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC;IACvD,IAAI,eAAe;QAAE,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC1C,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,SAAS,CAAC,OAAO;YACrB,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;iBAC1C,GAAG,cAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,6BAAC;iBAC7C,IAAI,CAAC,EAAE,CAAC,CAAC;YACX,MAAM,uBAAuB,GAAG,MAAM,CAAC,uBAAuB,EAAE,CAAC,IAAI,CAAC,CAAC;YACvE,MAAM,QAAQ,GAAG,uBAAuB;gBACvC,CAAC,CAAC,uBAAuB,CAAC,IAAI,EAAE,GAAG,EAAE,CACnC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CACzC;gBACF,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC7C,MAAM,MAAM,gBAAG,CAAC,QAAgB,EAAE,EAAE,CACnC,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,IAAI,QAAQ,KAAK,IAAI,CAAC,OAAO,GAAG,8BAAA,CAAC;YACzD,IAAI,QAAQ,YAAY,OAAO,EAAE,CAAC;gBACjC,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;YACD,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;QACzB,KAAK,SAAS,CAAC,OAAO;YACrB,OAAO,OAAO,IAAI,CAAC,OAAO,KAAK,CAAC;QACjC,KAAK,SAAS,CAAC,IAAI;YAClB,OAAO,IAAI,CAAC,OAAO,CAAC;QACrB,KAAK,SAAS,CAAC,MAAM;YACpB,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;AACF,CAAC"}
@@ -0,0 +1,21 @@
1
+ const __ΩRecord = ['K', 'T', 'Record', 'l\'e#"Rb!b"Pde"!N#!w#y'];
2
+ const __ΩVNodeType = ['Element', () => 1, 'Comment', () => 2, 'Text', () => 3, 'Outher', () => 999, 'VNodeType', 'PC!>"C#>$C%>&C\'>(Bw)'];
3
+ export { __ΩVNodeType as __ΩVNodeType };
4
+ export var VNodeType;
5
+ (function (VNodeType) {
6
+ VNodeType[VNodeType["Element"] = 1] = "Element";
7
+ VNodeType[VNodeType["Comment"] = 2] = "Comment";
8
+ VNodeType[VNodeType["Text"] = 3] = "Text";
9
+ VNodeType[VNodeType["Outher"] = 999] = "Outher";
10
+ })(VNodeType || (VNodeType = {}));
11
+ const __ΩHTMLVElement = [1, 'type', 'tagName', () => __ΩRecord, 'attributes', () => __ΩHTMLVNode, 'children', 'HTMLVElement', 'Pa!4"&4#&"o$#4%n&F4\'Mw(y'];
12
+ export { __ΩHTMLVElement as __ΩHTMLVElement };
13
+ const __ΩHTMLVComment = [2, 'type', 'conetnt', 'HTMLVComment', 'Pa!4"&4#Mw$y'];
14
+ export { __ΩHTMLVComment as __ΩHTMLVComment };
15
+ const __ΩHTMLVText = [3, 'type', 'conetnt', 'HTMLVText', 'Pa!4"&4#Mw$y'];
16
+ export { __ΩHTMLVText as __ΩHTMLVText };
17
+ const __ΩOtherVElement = [999, 'type', 'text', 'OtherVElement', 'Pa!4"&4#Mw$y'];
18
+ export { __ΩOtherVElement as __ΩOtherVElement };
19
+ const __ΩHTMLVNode = [() => __ΩOtherVElement, () => __ΩHTMLVElement, () => __ΩHTMLVComment, () => __ΩHTMLVText, 'HTMLVNode', 'Pn!n"n#n$&Jw%y'];
20
+ export { __ΩHTMLVNode as __ΩHTMLVNode };
21
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/view/html/types.ts"],"names":[],"mappings":";;;AAAA,MAAM,CAAN,IAAY,SAKX;AALD,WAAY,SAAS;IACpB,+CAAW,CAAA;IACX,+CAAW,CAAA;IACX,yCAAQ,CAAA;IACR,+CAAY,CAAA;AACb,CAAC,EALW,SAAS,KAAT,SAAS,QAKpB"}
@@ -0,0 +1,7 @@
1
+ export * from "./render/index.js";
2
+ export * from "./utils/index.js";
3
+ export * from "./view.js";
4
+ export * from "./layout.js";
5
+ export * from "./data-context/index.js";
6
+ export * from "./types.js";
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/view/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC"}
@@ -0,0 +1,24 @@
1
+ function __assignType(fn, args) {
2
+ fn.__type = args;
3
+ return fn;
4
+ }
5
+ import { getMetadata, initMetadata } from "@thestarweb/star-framework-utils";
6
+ /*@ts-ignore*/
7
+ import { __ΩIRender } from "./render/render.js";
8
+ /*@ts-ignore*/
9
+ import { __ΩViewInfo, __ΩViewMeta } from "./types.js";
10
+ const mateKey = "$sf:app-web:view:layout";
11
+ export function Layout(render, meta) {
12
+ return __assignType(function (target) {
13
+ (initMetadata.Ω = [[() => __ΩViewInfo, () => __ΩViewMeta, 'n"o!"F']], initMetadata(target, mateKey, undefined, [])).push({
14
+ render,
15
+ meta,
16
+ });
17
+ }, ['target', '', 'P"2!"/"']);
18
+ }
19
+ Layout.__type = [() => __ΩIRender, 'render', () => __ΩViewInfo, () => __ΩViewMeta, "meta", 'meta', 'Layout', 'Pn!2"n$o#".%f2&8!/\''];
20
+ export function getLayots(target) {
21
+ return (getMetadata.Ω = [[() => __ΩViewInfo, () => __ΩViewMeta, 'n"o!"F']], getMetadata(target, mateKey, undefined, []));
22
+ }
23
+ getLayots.__type = ['target', 'getLayots', 'P"2!"/"'];
24
+ //# sourceMappingURL=layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/view/layout.ts"],"names":[],"mappings":";;;;AAAA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;;2BACrD,oBAAoB;;yCACT,YAAY;AAE/C,MAAM,OAAO,GAAG,yBAAyB,CAAC;AAE1C,MAAM,UAAU,MAAM,CACrB,MAAe,EACf,IAAiC;IAEjC,oBAAO,UAAU,MAAM;QACtB,CAAA,YAAY,yDAAZ,YAAY,CAAuB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,EAAC,IAAI,CAAC;YACvE,MAAM;YACN,IAAI;SACJ,CAAC,CAAC;IACJ,CAAC,6BAAC;AACH,CAAC;;AACD,MAAM,UAAU,SAAS,CAAC,MAAW;IACpC,QAAO,WAAW,yDAAX,WAAW,CAAuB,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,EAAC;AAC1E,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { parseHtmlToVDom } from "../html/index.js";
2
+ import { SFVDomRender } from "./sf-v-dom-render.js";
3
+ export class HTMLRender extends SFVDomRender {
4
+ htmlFn;
5
+ constructor(htmlFn) {
6
+ super(async () => {
7
+ if (typeof this.htmlFn === "function") {
8
+ const res = await this.htmlFn();
9
+ this.html = typeof res === "string" ? res : res.default;
10
+ }
11
+ else {
12
+ this.html = this.htmlFn;
13
+ }
14
+ return parseHtmlToVDom(this.html);
15
+ });
16
+ this.htmlFn = htmlFn;
17
+ }
18
+ html = "";
19
+ static __type = [() => SFVDomRender, 'default', '', 'htmlFn', 'constructor', 'html', function () { return ""; }, 'HTMLRender', 'P7!PP&PP&P&4"MJ`/#J2$;9"0%&3&;>\'5w('];
20
+ }
21
+ //# sourceMappingURL=html-render.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"html-render.js","sourceRoot":"","sources":["../../../src/view/render/html-render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,MAAM,OAAO,UAAW,SAAQ,YAAY;IAEzB;IADlB,YACkB,MAE+B;QAEhD,KAAK,CAAC,KAAK,IAAI,EAAE;YAChB,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACvC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChC,IAAI,CAAC,IAAI,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;YACzD,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;YACzB,CAAC;YACD,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAZc,WAAM,GAAN,MAAM,CAEyB;IAWjD,CAAC;IACO,IAAI,GAAG,EAAE,CAAC;8GAAH,EAAE"}
@@ -0,0 +1,3 @@
1
+ export * from "./render.js";
2
+ export * from "./html-render.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/view/render/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC"}