@typed/template 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/LICENSE +21 -0
- package/README.md +5 -0
- package/dist/cjs/Directive.js +76 -0
- package/dist/cjs/Directive.js.map +1 -0
- package/dist/cjs/ElementRef.js +83 -0
- package/dist/cjs/ElementRef.js.map +1 -0
- package/dist/cjs/ElementSource.js +244 -0
- package/dist/cjs/ElementSource.js.map +1 -0
- package/dist/cjs/Entry.js +6 -0
- package/dist/cjs/Entry.js.map +1 -0
- package/dist/cjs/EventHandler.js +65 -0
- package/dist/cjs/EventHandler.js.map +1 -0
- package/dist/cjs/Html.js +169 -0
- package/dist/cjs/Html.js.map +1 -0
- package/dist/cjs/HtmlChunk.js +257 -0
- package/dist/cjs/HtmlChunk.js.map +1 -0
- package/dist/cjs/Hydrate.js +49 -0
- package/dist/cjs/Hydrate.js.map +1 -0
- package/dist/cjs/Many.js +45 -0
- package/dist/cjs/Many.js.map +1 -0
- package/dist/cjs/Meta.js +37 -0
- package/dist/cjs/Meta.js.map +1 -0
- package/dist/cjs/Parser.js +331 -0
- package/dist/cjs/Parser.js.map +1 -0
- package/dist/cjs/Part.js +6 -0
- package/dist/cjs/Part.js.map +1 -0
- package/dist/cjs/Placeholder.js +38 -0
- package/dist/cjs/Placeholder.js.map +1 -0
- package/dist/cjs/Platform.js +64 -0
- package/dist/cjs/Platform.js.map +1 -0
- package/dist/cjs/Render.js +39 -0
- package/dist/cjs/Render.js.map +1 -0
- package/dist/cjs/RenderContext.js +130 -0
- package/dist/cjs/RenderContext.js.map +1 -0
- package/dist/cjs/RenderEvent.js +44 -0
- package/dist/cjs/RenderEvent.js.map +1 -0
- package/dist/cjs/RenderTemplate.js +41 -0
- package/dist/cjs/RenderTemplate.js.map +1 -0
- package/dist/cjs/Renderable.js +6 -0
- package/dist/cjs/Renderable.js.map +1 -0
- package/dist/cjs/Template.js +266 -0
- package/dist/cjs/Template.js.map +1 -0
- package/dist/cjs/TemplateInstance.js +51 -0
- package/dist/cjs/TemplateInstance.js.map +1 -0
- package/dist/cjs/Test.js +90 -0
- package/dist/cjs/Test.js.map +1 -0
- package/dist/cjs/Token.js +270 -0
- package/dist/cjs/Token.js.map +1 -0
- package/dist/cjs/Tokenizer.js +18 -0
- package/dist/cjs/Tokenizer.js.map +1 -0
- package/dist/cjs/Vitest.js +44 -0
- package/dist/cjs/Vitest.js.map +1 -0
- package/dist/cjs/index.js +147 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/internal/HydrateContext.js +13 -0
- package/dist/cjs/internal/HydrateContext.js.map +1 -0
- package/dist/cjs/internal/browser.js +109 -0
- package/dist/cjs/internal/browser.js.map +1 -0
- package/dist/cjs/internal/chunks.js +54 -0
- package/dist/cjs/internal/chunks.js.map +1 -0
- package/dist/cjs/internal/errors.js +23 -0
- package/dist/cjs/internal/errors.js.map +1 -0
- package/dist/cjs/internal/hydrate.js +197 -0
- package/dist/cjs/internal/hydrate.js.map +1 -0
- package/dist/cjs/internal/indexRefCounter.js +32 -0
- package/dist/cjs/internal/indexRefCounter.js.map +1 -0
- package/dist/cjs/internal/module-augmentation.js +6 -0
- package/dist/cjs/internal/module-augmentation.js.map +1 -0
- package/dist/cjs/internal/parser.js +492 -0
- package/dist/cjs/internal/parser.js.map +1 -0
- package/dist/cjs/internal/parts.js +350 -0
- package/dist/cjs/internal/parts.js.map +1 -0
- package/dist/cjs/internal/readAttribute.js +34 -0
- package/dist/cjs/internal/readAttribute.js.map +1 -0
- package/dist/cjs/internal/render.js +332 -0
- package/dist/cjs/internal/render.js.map +1 -0
- package/dist/cjs/internal/server.js +219 -0
- package/dist/cjs/internal/server.js.map +1 -0
- package/dist/cjs/internal/tokenizer.js +264 -0
- package/dist/cjs/internal/tokenizer.js.map +1 -0
- package/dist/cjs/internal/utils.js +68 -0
- package/dist/cjs/internal/utils.js.map +1 -0
- package/dist/dts/Directive.d.ts +70 -0
- package/dist/dts/Directive.d.ts.map +1 -0
- package/dist/dts/ElementRef.d.ts +40 -0
- package/dist/dts/ElementRef.d.ts.map +1 -0
- package/dist/dts/ElementSource.d.ts +72 -0
- package/dist/dts/ElementSource.d.ts.map +1 -0
- package/dist/dts/Entry.d.ts +26 -0
- package/dist/dts/Entry.d.ts.map +1 -0
- package/dist/dts/EventHandler.d.ts +61 -0
- package/dist/dts/EventHandler.d.ts.map +1 -0
- package/dist/dts/Html.d.ts +17 -0
- package/dist/dts/Html.d.ts.map +1 -0
- package/dist/dts/HtmlChunk.d.ts +56 -0
- package/dist/dts/HtmlChunk.d.ts.map +1 -0
- package/dist/dts/Hydrate.d.ts +20 -0
- package/dist/dts/Hydrate.d.ts.map +1 -0
- package/dist/dts/Many.d.ts +32 -0
- package/dist/dts/Many.d.ts.map +1 -0
- package/dist/dts/Meta.d.ts +24 -0
- package/dist/dts/Meta.d.ts.map +1 -0
- package/dist/dts/Parser.d.ts +16 -0
- package/dist/dts/Parser.d.ts.map +1 -0
- package/dist/dts/Part.d.ts +147 -0
- package/dist/dts/Part.d.ts.map +1 -0
- package/dist/dts/Placeholder.d.ts +51 -0
- package/dist/dts/Placeholder.d.ts.map +1 -0
- package/dist/dts/Platform.d.ts +23 -0
- package/dist/dts/Platform.d.ts.map +1 -0
- package/dist/dts/Render.d.ts +23 -0
- package/dist/dts/Render.d.ts.map +1 -0
- package/dist/dts/RenderContext.d.ts +88 -0
- package/dist/dts/RenderContext.d.ts.map +1 -0
- package/dist/dts/RenderEvent.d.ts +37 -0
- package/dist/dts/RenderEvent.d.ts.map +1 -0
- package/dist/dts/RenderTemplate.d.ts +38 -0
- package/dist/dts/RenderTemplate.d.ts.map +1 -0
- package/dist/dts/Renderable.d.ts +28 -0
- package/dist/dts/Renderable.d.ts.map +1 -0
- package/dist/dts/Template.d.ts +218 -0
- package/dist/dts/Template.d.ts.map +1 -0
- package/dist/dts/TemplateInstance.d.ts +32 -0
- package/dist/dts/TemplateInstance.d.ts.map +1 -0
- package/dist/dts/Test.d.ts +58 -0
- package/dist/dts/Test.d.ts.map +1 -0
- package/dist/dts/Token.d.ts +202 -0
- package/dist/dts/Token.d.ts.map +1 -0
- package/dist/dts/Tokenizer.d.ts +6 -0
- package/dist/dts/Tokenizer.d.ts.map +1 -0
- package/dist/dts/Vitest.d.ts +28 -0
- package/dist/dts/Vitest.d.ts.map +1 -0
- package/dist/dts/index.d.ts +65 -0
- package/dist/dts/index.d.ts.map +1 -0
- package/dist/dts/internal/HydrateContext.d.ts +2 -0
- package/dist/dts/internal/HydrateContext.d.ts.map +1 -0
- package/dist/dts/internal/browser.d.ts +8 -0
- package/dist/dts/internal/browser.d.ts.map +1 -0
- package/dist/dts/internal/chunks.d.ts +22 -0
- package/dist/dts/internal/chunks.d.ts.map +1 -0
- package/dist/dts/internal/errors.d.ts +9 -0
- package/dist/dts/internal/errors.d.ts.map +1 -0
- package/dist/dts/internal/hydrate.d.ts +37 -0
- package/dist/dts/internal/hydrate.d.ts.map +1 -0
- package/dist/dts/internal/indexRefCounter.d.ts +6 -0
- package/dist/dts/internal/indexRefCounter.d.ts.map +1 -0
- package/dist/dts/internal/module-augmentation.d.ts +36 -0
- package/dist/dts/internal/module-augmentation.d.ts.map +1 -0
- package/dist/dts/internal/parser.d.ts +12 -0
- package/dist/dts/internal/parser.d.ts.map +1 -0
- package/dist/dts/internal/parts.d.ts +304 -0
- package/dist/dts/internal/parts.d.ts.map +1 -0
- package/dist/dts/internal/readAttribute.d.ts +9 -0
- package/dist/dts/internal/readAttribute.d.ts.map +1 -0
- package/dist/dts/internal/render.d.ts +30 -0
- package/dist/dts/internal/render.d.ts.map +1 -0
- package/dist/dts/internal/server.d.ts +31 -0
- package/dist/dts/internal/server.d.ts.map +1 -0
- package/dist/dts/internal/tokenizer.d.ts +3 -0
- package/dist/dts/internal/tokenizer.d.ts.map +1 -0
- package/dist/dts/internal/utils.d.ts +15 -0
- package/dist/dts/internal/utils.d.ts.map +1 -0
- package/dist/esm/Directive.js +64 -0
- package/dist/esm/Directive.js.map +1 -0
- package/dist/esm/ElementRef.js +72 -0
- package/dist/esm/ElementRef.js.map +1 -0
- package/dist/esm/ElementSource.js +237 -0
- package/dist/esm/ElementSource.js.map +1 -0
- package/dist/esm/Entry.js +2 -0
- package/dist/esm/Entry.js.map +1 -0
- package/dist/esm/EventHandler.js +52 -0
- package/dist/esm/EventHandler.js.map +1 -0
- package/dist/esm/Html.js +167 -0
- package/dist/esm/Html.js.map +1 -0
- package/dist/esm/HtmlChunk.js +274 -0
- package/dist/esm/HtmlChunk.js.map +1 -0
- package/dist/esm/Hydrate.js +37 -0
- package/dist/esm/Hydrate.js.map +1 -0
- package/dist/esm/Many.js +33 -0
- package/dist/esm/Many.js.map +1 -0
- package/dist/esm/Meta.js +29 -0
- package/dist/esm/Meta.js.map +1 -0
- package/dist/esm/Parser.js +342 -0
- package/dist/esm/Parser.js.map +1 -0
- package/dist/esm/Part.js +5 -0
- package/dist/esm/Part.js.map +1 -0
- package/dist/esm/Placeholder.js +30 -0
- package/dist/esm/Placeholder.js.map +1 -0
- package/dist/esm/Platform.js +41 -0
- package/dist/esm/Platform.js.map +1 -0
- package/dist/esm/Render.js +27 -0
- package/dist/esm/Render.js.map +1 -0
- package/dist/esm/RenderContext.js +113 -0
- package/dist/esm/RenderContext.js.map +1 -0
- package/dist/esm/RenderEvent.js +36 -0
- package/dist/esm/RenderEvent.js.map +1 -0
- package/dist/esm/RenderTemplate.js +26 -0
- package/dist/esm/RenderTemplate.js.map +1 -0
- package/dist/esm/Renderable.js +2 -0
- package/dist/esm/Renderable.js.map +1 -0
- package/dist/esm/Template.js +239 -0
- package/dist/esm/Template.js.map +1 -0
- package/dist/esm/TemplateInstance.js +43 -0
- package/dist/esm/TemplateInstance.js.map +1 -0
- package/dist/esm/Test.js +68 -0
- package/dist/esm/Test.js.map +1 -0
- package/dist/esm/Token.js +264 -0
- package/dist/esm/Token.js.map +1 -0
- package/dist/esm/Tokenizer.js +9 -0
- package/dist/esm/Tokenizer.js.map +1 -0
- package/dist/esm/Vitest.js +29 -0
- package/dist/esm/Vitest.js.map +1 -0
- package/dist/esm/index.js +65 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/internal/HydrateContext.js +7 -0
- package/dist/esm/internal/HydrateContext.js.map +1 -0
- package/dist/esm/internal/browser.js +102 -0
- package/dist/esm/internal/browser.js.map +1 -0
- package/dist/esm/internal/chunks.js +47 -0
- package/dist/esm/internal/chunks.js.map +1 -0
- package/dist/esm/internal/errors.js +15 -0
- package/dist/esm/internal/errors.js.map +1 -0
- package/dist/esm/internal/hydrate.js +165 -0
- package/dist/esm/internal/hydrate.js.map +1 -0
- package/dist/esm/internal/indexRefCounter.js +24 -0
- package/dist/esm/internal/indexRefCounter.js.map +1 -0
- package/dist/esm/internal/module-augmentation.js +2 -0
- package/dist/esm/internal/module-augmentation.js.map +1 -0
- package/dist/esm/internal/parser.js +493 -0
- package/dist/esm/internal/parser.js.map +1 -0
- package/dist/esm/internal/parts.js +291 -0
- package/dist/esm/internal/parts.js.map +1 -0
- package/dist/esm/internal/readAttribute.js +24 -0
- package/dist/esm/internal/readAttribute.js.map +1 -0
- package/dist/esm/internal/render.js +329 -0
- package/dist/esm/internal/render.js.map +1 -0
- package/dist/esm/internal/server.js +174 -0
- package/dist/esm/internal/server.js.map +1 -0
- package/dist/esm/internal/tokenizer.js +296 -0
- package/dist/esm/internal/tokenizer.js.map +1 -0
- package/dist/esm/internal/utils.js +52 -0
- package/dist/esm/internal/utils.js.map +1 -0
- package/dist/esm/package.json +4 -0
- package/package.json +242 -0
- package/src/Directive.ts +114 -0
- package/src/ElementRef.ts +123 -0
- package/src/ElementSource.ts +417 -0
- package/src/Entry.ts +28 -0
- package/src/EventHandler.ts +104 -0
- package/src/Html.ts +258 -0
- package/src/HtmlChunk.ts +346 -0
- package/src/Hydrate.ts +53 -0
- package/src/Many.ts +128 -0
- package/src/Meta.ts +32 -0
- package/src/Parser.ts +457 -0
- package/src/Part.ts +186 -0
- package/src/Placeholder.ts +70 -0
- package/src/Platform.ts +71 -0
- package/src/Render.ts +45 -0
- package/src/RenderContext.ts +221 -0
- package/src/RenderEvent.ts +67 -0
- package/src/RenderTemplate.ts +88 -0
- package/src/Renderable.ts +34 -0
- package/src/Template.ts +284 -0
- package/src/TemplateInstance.ts +83 -0
- package/src/Test.ts +151 -0
- package/src/Token.ts +269 -0
- package/src/Tokenizer.ts +10 -0
- package/src/Vitest.ts +61 -0
- package/src/index.ts +66 -0
- package/src/internal/HydrateContext.ts +23 -0
- package/src/internal/browser.ts +132 -0
- package/src/internal/chunks.ts +73 -0
- package/src/internal/errors.ts +11 -0
- package/src/internal/external.d.ts +11 -0
- package/src/internal/hydrate.ts +262 -0
- package/src/internal/indexRefCounter.ts +33 -0
- package/src/internal/module-augmentation.ts +48 -0
- package/src/internal/parser.ts +637 -0
- package/src/internal/parts.ts +527 -0
- package/src/internal/readAttribute.ts +28 -0
- package/src/internal/render.ts +529 -0
- package/src/internal/server.ts +293 -0
- package/src/internal/tokenizer.ts +338 -0
- package/src/internal/utils.ts +73 -0
|
@@ -0,0 +1,331 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.parser = void 0;
|
|
7
|
+
var Chunk = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Chunk"));
|
|
8
|
+
var _GlobalValue = /*#__PURE__*/require("effect/GlobalValue");
|
|
9
|
+
var _parser = /*#__PURE__*/require("./internal/parser");
|
|
10
|
+
var Template = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./Template"));
|
|
11
|
+
var _Tokenizer = /*#__PURE__*/require("./Tokenizer");
|
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
14
|
+
/**
|
|
15
|
+
* @since 1.0.0
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
const iterator = iterable => iterable[Symbol.iterator]();
|
|
19
|
+
const dropLast = /*#__PURE__*/Chunk.dropRight(1);
|
|
20
|
+
class ParserImpl {
|
|
21
|
+
_template = [];
|
|
22
|
+
_tokenStream;
|
|
23
|
+
_lookahead;
|
|
24
|
+
_stack;
|
|
25
|
+
_parts;
|
|
26
|
+
_skipWhitespace;
|
|
27
|
+
parse(template, tokenStream = iterator((0, _Tokenizer.tokenize)(template))) {
|
|
28
|
+
this._template = template;
|
|
29
|
+
this._tokenStream = tokenStream;
|
|
30
|
+
this._lookahead = this.getNextToken();
|
|
31
|
+
this._stack = Chunk.empty();
|
|
32
|
+
this._parts = [];
|
|
33
|
+
this._skipWhitespace = true;
|
|
34
|
+
const ast = this.Template((0, _parser.templateHash)(template));
|
|
35
|
+
return ast;
|
|
36
|
+
}
|
|
37
|
+
Template(hash) {
|
|
38
|
+
const template = new Template.Template(this.Children(), hash, this._parts);
|
|
39
|
+
return template;
|
|
40
|
+
}
|
|
41
|
+
Node() {
|
|
42
|
+
const token = this.findTokenOfType("opening-tag", "text", "comment", "comment-start", "part-token", "closing-tag");
|
|
43
|
+
if (token._tag === "closing-tag") return null;
|
|
44
|
+
if (token._tag === "text") {
|
|
45
|
+
if (this._skipWhitespace && token.value.trim() === "") return null;
|
|
46
|
+
return new Template.TextNode(token.value);
|
|
47
|
+
}
|
|
48
|
+
if (token._tag === "comment") {
|
|
49
|
+
return new Template.CommentNode(token.value);
|
|
50
|
+
}
|
|
51
|
+
if (token._tag === "comment-start") {
|
|
52
|
+
const node = this.Comment("");
|
|
53
|
+
return node;
|
|
54
|
+
}
|
|
55
|
+
// Some annoyances here for generating the correct path for node parts
|
|
56
|
+
if (token._tag === "part-token") {
|
|
57
|
+
this._skipWhitespace = false;
|
|
58
|
+
return this.addPartWithoutCurrent(new Template.NodePart(token.index));
|
|
59
|
+
}
|
|
60
|
+
this._skipWhitespace = true;
|
|
61
|
+
if (token.isSelfClosing) {
|
|
62
|
+
return this.SelfClosingElementNode(token.name);
|
|
63
|
+
} else if (token.textOnly) {
|
|
64
|
+
return this.TextOnlyElement(token.name);
|
|
65
|
+
} else {
|
|
66
|
+
return this.ElementNode(token.name);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
ElementNode(tagName) {
|
|
70
|
+
const attrs = [];
|
|
71
|
+
const children = [];
|
|
72
|
+
const element = new Template.ElementNode(tagName, attrs, children);
|
|
73
|
+
this.Attributes(attrs);
|
|
74
|
+
this.Children(children);
|
|
75
|
+
return element;
|
|
76
|
+
}
|
|
77
|
+
SelfClosingElementNode(tagName) {
|
|
78
|
+
const attrs = [];
|
|
79
|
+
const element = new Template.SelfClosingElementNode(tagName, attrs);
|
|
80
|
+
this.Attributes(attrs);
|
|
81
|
+
return element;
|
|
82
|
+
}
|
|
83
|
+
TextOnlyElement(tagName) {
|
|
84
|
+
const attrs = [];
|
|
85
|
+
const children = [];
|
|
86
|
+
const element = new Template.TextOnlyElement(tagName, attrs, children);
|
|
87
|
+
this.Attributes(attrs);
|
|
88
|
+
this.TextChildren(children);
|
|
89
|
+
return element;
|
|
90
|
+
}
|
|
91
|
+
Attributes(attributes = []) {
|
|
92
|
+
while (this._lookahead !== null) {
|
|
93
|
+
if (this._lookahead._tag === "opening-tag-end") {
|
|
94
|
+
this._lookahead = this.getNextToken();
|
|
95
|
+
break;
|
|
96
|
+
} else {
|
|
97
|
+
const attr = this.Attribute();
|
|
98
|
+
if (attr) {
|
|
99
|
+
attributes.push(attr);
|
|
100
|
+
} else {
|
|
101
|
+
break;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
return attributes;
|
|
106
|
+
}
|
|
107
|
+
Attribute() {
|
|
108
|
+
const token = this.findTokenOfType("attribute", "attribute-start", "boolean-attribute", "boolean-attribute-start", "className-attribute-start", "data-attribute-start", "event-attribute-start", "property-attribute-start", "ref-attribute-start", "text");
|
|
109
|
+
switch (token._tag) {
|
|
110
|
+
case "attribute":
|
|
111
|
+
return new Template.AttributeNode(token.name, token.value);
|
|
112
|
+
case "attribute-start":
|
|
113
|
+
return this.SparseAttrNode(token.name);
|
|
114
|
+
case "boolean-attribute":
|
|
115
|
+
return new Template.BooleanNode(token.name);
|
|
116
|
+
case "boolean-attribute-start":
|
|
117
|
+
return this.BooleanNode(token.name);
|
|
118
|
+
case "className-attribute-start":
|
|
119
|
+
return this.SparseClassNameNode();
|
|
120
|
+
case "data-attribute-start":
|
|
121
|
+
return this.DataNode();
|
|
122
|
+
case "event-attribute-start":
|
|
123
|
+
return this.EventNode(token.name);
|
|
124
|
+
case "property-attribute-start":
|
|
125
|
+
return this.PropertyNode(token.name);
|
|
126
|
+
case "ref-attribute-start":
|
|
127
|
+
return this.RefNode();
|
|
128
|
+
case "text":
|
|
129
|
+
return null;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
SparseAttrNode(name) {
|
|
133
|
+
const nodes = [];
|
|
134
|
+
while (this._lookahead !== null) {
|
|
135
|
+
const token = this.findTokenOfType("text", "part-token", "attribute-end");
|
|
136
|
+
if (token._tag === "text") {
|
|
137
|
+
if (token.value === "") continue;
|
|
138
|
+
nodes.push(new Template.TextNode(token.value));
|
|
139
|
+
} else if (token._tag === "part-token") {
|
|
140
|
+
nodes.push(new Template.AttrPartNode(name, token.index));
|
|
141
|
+
} else {
|
|
142
|
+
if (nodes.length === 0) {
|
|
143
|
+
return new Template.BooleanNode(name);
|
|
144
|
+
}
|
|
145
|
+
break;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
if (nodes.length === 1) {
|
|
149
|
+
return this.addPart(nodes[0]);
|
|
150
|
+
}
|
|
151
|
+
if (nodes.length === 0) {
|
|
152
|
+
return new Template.BooleanNode(name);
|
|
153
|
+
}
|
|
154
|
+
return this.addPart(new Template.SparseAttrNode(name, nodes));
|
|
155
|
+
}
|
|
156
|
+
BooleanNode(name) {
|
|
157
|
+
// We know that the next token MUST be a part-token
|
|
158
|
+
const part = this.predictNextToken("part-token");
|
|
159
|
+
// We don't need to do anything with a boolean-attribute-end token, skip it
|
|
160
|
+
this.skipIfNextToken("boolean-attribute-end");
|
|
161
|
+
return this.addPart(new Template.BooleanPartNode(name, part.index));
|
|
162
|
+
}
|
|
163
|
+
SparseClassNameNode() {
|
|
164
|
+
const nodes = [];
|
|
165
|
+
while (this._lookahead !== null) {
|
|
166
|
+
const token = this.findTokenOfType("text", "part-token", "className-attribute-end");
|
|
167
|
+
if (token._tag === "text") {
|
|
168
|
+
if (token.value.trim() === "") continue;
|
|
169
|
+
nodes.push(new Template.TextNode(token.value));
|
|
170
|
+
} else if (token._tag === "part-token") {
|
|
171
|
+
nodes.push(new Template.ClassNamePartNode(token.index));
|
|
172
|
+
} else {
|
|
173
|
+
break;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
if (nodes.length === 0) {
|
|
177
|
+
throw new SyntaxError("Expected at least one node in class name attribute");
|
|
178
|
+
}
|
|
179
|
+
if (nodes.length === 1) {
|
|
180
|
+
return this.addPart(nodes[0]);
|
|
181
|
+
}
|
|
182
|
+
return this.addPart(new Template.SparseClassNameNode(nodes));
|
|
183
|
+
}
|
|
184
|
+
DataNode() {
|
|
185
|
+
const part = this.predictNextToken("part-token");
|
|
186
|
+
// We don't need to do anything with a data-attribute-end token, skip it
|
|
187
|
+
this.skipIfNextToken("data-attribute-end");
|
|
188
|
+
return this.addPart(new Template.DataPartNode(part.index));
|
|
189
|
+
}
|
|
190
|
+
EventNode(name) {
|
|
191
|
+
const part = this.predictNextToken("part-token");
|
|
192
|
+
// We don't need to do anything with a event-attribute-end token, skip it
|
|
193
|
+
this.skipIfNextToken("event-attribute-end");
|
|
194
|
+
return this.addPart(new Template.EventPartNode(name, part.index));
|
|
195
|
+
}
|
|
196
|
+
PropertyNode(name) {
|
|
197
|
+
const part = this.predictNextToken("part-token");
|
|
198
|
+
// We don't need to do anything with a property-attribute-end token, skip it
|
|
199
|
+
this.skipIfNextToken("property-attribute-end");
|
|
200
|
+
return this.addPart(new Template.PropertyPartNode(name, part.index));
|
|
201
|
+
}
|
|
202
|
+
RefNode() {
|
|
203
|
+
const part = this.predictNextToken("part-token");
|
|
204
|
+
// We don't need to do anything with a ref-attribute-end token, skip it
|
|
205
|
+
this.skipIfNextToken("ref-attribute-end");
|
|
206
|
+
return this.addPart(new Template.RefPartNode(part.index));
|
|
207
|
+
}
|
|
208
|
+
TextPartNode() {
|
|
209
|
+
const token = this.predictNextToken("part-token");
|
|
210
|
+
return this.addPart(new Template.TextPartNode(token.index));
|
|
211
|
+
}
|
|
212
|
+
Children(children = []) {
|
|
213
|
+
let i = 0;
|
|
214
|
+
while (this._lookahead) {
|
|
215
|
+
if (this._lookahead._tag === "closing-tag") {
|
|
216
|
+
this._lookahead = this.getNextToken();
|
|
217
|
+
this._skipWhitespace = true;
|
|
218
|
+
break;
|
|
219
|
+
} else if (this._skipWhitespace && this._lookahead._tag === "text" && this._lookahead.value.trim() === "") {
|
|
220
|
+
this._lookahead = this.getNextToken();
|
|
221
|
+
} else {
|
|
222
|
+
this._stack = Chunk.append(this._stack, i++);
|
|
223
|
+
const child = this.Node();
|
|
224
|
+
this._stack = Chunk.dropRight(this._stack, 1);
|
|
225
|
+
if (child) {
|
|
226
|
+
children.push(child);
|
|
227
|
+
} else {
|
|
228
|
+
break;
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
return children;
|
|
233
|
+
}
|
|
234
|
+
TextChildren(children = []) {
|
|
235
|
+
while (this._lookahead !== null) {
|
|
236
|
+
const token = this.findTokenOfType("text", "part-token", "closing-tag");
|
|
237
|
+
if (token._tag === "text") {
|
|
238
|
+
if (token.value) children.push(new Template.TextNode(token.value));
|
|
239
|
+
} else if (token._tag === `part-token`) {
|
|
240
|
+
children.push(this.addPart(new Template.TextPartNode(token.index)));
|
|
241
|
+
} else {
|
|
242
|
+
this._skipWhitespace = true;
|
|
243
|
+
break;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
return children;
|
|
247
|
+
}
|
|
248
|
+
Comment(before) {
|
|
249
|
+
const nodes = [];
|
|
250
|
+
if (before) {
|
|
251
|
+
nodes.push(new Template.TextNode(before));
|
|
252
|
+
}
|
|
253
|
+
while (this._lookahead !== null) {
|
|
254
|
+
const token = this.findTokenOfType("part-token", "text", "comment-end");
|
|
255
|
+
if (token._tag === "part-token") {
|
|
256
|
+
nodes.push(new Template.CommentPartNode(token.index));
|
|
257
|
+
} else if (token._tag === "text") {
|
|
258
|
+
nodes.push(new Template.TextNode(token.value));
|
|
259
|
+
} else {
|
|
260
|
+
break;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
if (nodes.length === 1) {
|
|
264
|
+
const node = nodes[0];
|
|
265
|
+
if (node._tag === "comment-part") {
|
|
266
|
+
return new Template.CommentPartNode(node.index);
|
|
267
|
+
} else {
|
|
268
|
+
return new Template.CommentNode(node.value);
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
return this.addPart(new Template.SparseCommentNode(nodes));
|
|
272
|
+
}
|
|
273
|
+
findTokenOfType(...tokenTypes) {
|
|
274
|
+
const token = this._lookahead;
|
|
275
|
+
if (token === null) {
|
|
276
|
+
throw new SyntaxError(`Unexpected end of template. Expected one of types ${tokenTypes.join(", ")}.`);
|
|
277
|
+
}
|
|
278
|
+
for (let i = 0; i < tokenTypes.length; i++) {
|
|
279
|
+
if (token._tag === tokenTypes[i]) {
|
|
280
|
+
this._lookahead = this.getNextToken();
|
|
281
|
+
return token;
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
throw new SyntaxError(`Unexpected token ${token._tag}. Expected one of types ${tokenTypes.join(", ")}.`);
|
|
285
|
+
}
|
|
286
|
+
predictNextToken(type) {
|
|
287
|
+
const token = this._lookahead;
|
|
288
|
+
if (token === null) {
|
|
289
|
+
throw new SyntaxError(`Unexpected end of template. Expected ${type}.`);
|
|
290
|
+
}
|
|
291
|
+
if (token._tag !== type) {
|
|
292
|
+
throw new SyntaxError(`Unexpected token ${token._tag}. Expected ${type}.`);
|
|
293
|
+
}
|
|
294
|
+
this._lookahead = this.getNextToken();
|
|
295
|
+
return token;
|
|
296
|
+
}
|
|
297
|
+
skipIfNextToken(type) {
|
|
298
|
+
const token = this._lookahead;
|
|
299
|
+
if (token === null) {
|
|
300
|
+
return false;
|
|
301
|
+
}
|
|
302
|
+
if (token._tag !== type) {
|
|
303
|
+
return false;
|
|
304
|
+
}
|
|
305
|
+
this._lookahead = this.getNextToken();
|
|
306
|
+
return true;
|
|
307
|
+
}
|
|
308
|
+
getNextToken() {
|
|
309
|
+
const {
|
|
310
|
+
done,
|
|
311
|
+
value
|
|
312
|
+
} = this._tokenStream.next();
|
|
313
|
+
if (done) {
|
|
314
|
+
return null;
|
|
315
|
+
}
|
|
316
|
+
return value;
|
|
317
|
+
}
|
|
318
|
+
addPart(part) {
|
|
319
|
+
this._parts.push([part, this._stack]);
|
|
320
|
+
return part;
|
|
321
|
+
}
|
|
322
|
+
addPartWithoutCurrent(part) {
|
|
323
|
+
this._parts.push([part, dropLast(this._stack)]);
|
|
324
|
+
return part;
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* @since 1.0.0
|
|
329
|
+
*/
|
|
330
|
+
const parser = exports.parser = /*#__PURE__*/(0, _GlobalValue.globalValue)( /*#__PURE__*/Symbol.for("./Parser"), () => new ParserImpl());
|
|
331
|
+
//# sourceMappingURL=Parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Parser.js","names":["Chunk","_interopRequireWildcard","require","_GlobalValue","_parser","Template","_Tokenizer","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","iterator","iterable","Symbol","dropLast","dropRight","ParserImpl","_template","_tokenStream","_lookahead","_stack","_parts","_skipWhitespace","parse","template","tokenStream","tokenize","getNextToken","empty","ast","templateHash","hash","Children","Node","token","findTokenOfType","_tag","value","trim","TextNode","CommentNode","node","Comment","addPartWithoutCurrent","NodePart","index","isSelfClosing","SelfClosingElementNode","name","textOnly","TextOnlyElement","ElementNode","tagName","attrs","children","element","Attributes","TextChildren","attributes","attr","Attribute","push","AttributeNode","SparseAttrNode","BooleanNode","SparseClassNameNode","DataNode","EventNode","PropertyNode","RefNode","nodes","AttrPartNode","length","addPart","part","predictNextToken","skipIfNextToken","BooleanPartNode","ClassNamePartNode","SyntaxError","DataPartNode","EventPartNode","PropertyPartNode","RefPartNode","TextPartNode","append","child","before","CommentPartNode","SparseCommentNode","tokenTypes","join","type","done","next","parser","exports","globalValue","for"],"sources":["../../src/Parser.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/dist/cjs/Part.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Part.js","names":[],"sources":["../../src/Part.ts"],"sourcesContent":[null],"mappings":""}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PlaceholderTypeId = exports.Placeholder = void 0;
|
|
7
|
+
require("./internal/module-augmentation");
|
|
8
|
+
var _Fx = /*#__PURE__*/require("@typed/fx/Fx");
|
|
9
|
+
var RefSubject = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@typed/fx/RefSubject"));
|
|
10
|
+
var _effect = /*#__PURE__*/require("effect");
|
|
11
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
12
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
13
|
+
/**
|
|
14
|
+
* @since 1.0.0
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* @since 1.0.0
|
|
19
|
+
*/
|
|
20
|
+
const PlaceholderTypeId = exports.PlaceholderTypeId = /*#__PURE__*/Symbol.for("./Placholder");
|
|
21
|
+
/**
|
|
22
|
+
* @since 1.0.0
|
|
23
|
+
*/
|
|
24
|
+
var Placeholder;
|
|
25
|
+
(function (Placeholder) {
|
|
26
|
+
/**
|
|
27
|
+
* @since 1.0.0
|
|
28
|
+
*/
|
|
29
|
+
function asRef(placeholder) {
|
|
30
|
+
if ((0, _Fx.isFx)(placeholder) || _effect.Effect.isEffect(placeholder)) {
|
|
31
|
+
return RefSubject.make(placeholder);
|
|
32
|
+
} else {
|
|
33
|
+
return RefSubject.of(placeholder);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
Placeholder.asRef = asRef;
|
|
37
|
+
})(Placeholder || (exports.Placeholder = Placeholder = {}));
|
|
38
|
+
//# sourceMappingURL=Placeholder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Placeholder.js","names":["require","_Fx","RefSubject","_interopRequireWildcard","_effect","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","PlaceholderTypeId","exports","Symbol","for","Placeholder","asRef","placeholder","isFx","Effect","isEffect","make","of"],"sources":["../../src/Placeholder.ts"],"sourcesContent":[null],"mappings":";;;;;;AAIAA,OAAA;AAEA,IAAAC,GAAA,gBAAAD,OAAA;AACA,IAAAE,UAAA,gBAAAC,uBAAA,eAAAH,OAAA;AAEA,IAAAI,OAAA,gBAAAJ,OAAA;AAA+B,SAAAK,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAT/B;;;;AAWA;;;AAGO,MAAMY,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,gBAAGE,MAAM,CAACC,GAAG,CAAC,cAAc,CAAC;AAiB3D;;;AAGM,IAAWC,WAAW;AAA5B,WAAiBA,WAAW;EAuB1B;;;EAGA,SAAgBC,KAAKA,CACnBC,WAAiC;IAEjC,IAAI,IAAAC,QAAI,EAAUD,WAAW,CAAC,IAAIE,cAAM,CAACC,QAAQ,CAACH,WAAW,CAAC,EAAE;MAC9D,OAAO9B,UAAU,CAACkC,IAAI,CAACJ,WAA0B,CAAC;IACpD,CAAC,MAAM;MACL,OAAO9B,UAAU,CAACmC,EAAE,CAACL,WAAgB,CAAC;IACxC;EACF;EARgBF,WAAA,CAAAC,KAAK,GAAAA,KAQpB;AACH,CAAC,EAnCgBD,WAAW,KAAAH,OAAA,CAAAG,WAAA,GAAXA,WAAW"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getUrlFromServerRequest = getUrlFromServerRequest;
|
|
7
|
+
exports.htmlResponse = htmlResponse;
|
|
8
|
+
exports.htmlResponseString = htmlResponseString;
|
|
9
|
+
var Headers = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/Http/Headers"));
|
|
10
|
+
var HttpServer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/platform/HttpServer"));
|
|
11
|
+
var _Stream = /*#__PURE__*/require("@typed/fx/Stream");
|
|
12
|
+
var _effect = /*#__PURE__*/require("effect");
|
|
13
|
+
var _Html = /*#__PURE__*/require("./Html");
|
|
14
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
16
|
+
/**
|
|
17
|
+
* @since 1.0.0
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
const HTML_CONTENT_TYPE = "text/html";
|
|
21
|
+
const CAMEL_CASE_CONTENT_TYPE = {
|
|
22
|
+
contentType: HTML_CONTENT_TYPE
|
|
23
|
+
};
|
|
24
|
+
const HYPHENATED_CONTENT_TYPE = {
|
|
25
|
+
"content-type": HTML_CONTENT_TYPE
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* @since 1.0.0
|
|
29
|
+
*/
|
|
30
|
+
function htmlResponse(fx, options) {
|
|
31
|
+
return _effect.Effect.contextWithEffect(ctx => HttpServer.response.stream(_effect.Stream.provideContext(_effect.Stream.encodeText((0, _Stream.toStream)((0, _Html.renderToHtml)(fx))), ctx), {
|
|
32
|
+
...CAMEL_CASE_CONTENT_TYPE,
|
|
33
|
+
...options,
|
|
34
|
+
headers: {
|
|
35
|
+
...HYPHENATED_CONTENT_TYPE,
|
|
36
|
+
...options?.headers
|
|
37
|
+
}
|
|
38
|
+
}));
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* @since 1.0.0
|
|
42
|
+
*/
|
|
43
|
+
function htmlResponseString(html, options) {
|
|
44
|
+
return HttpServer.response.raw(html, {
|
|
45
|
+
...CAMEL_CASE_CONTENT_TYPE,
|
|
46
|
+
...options,
|
|
47
|
+
headers: {
|
|
48
|
+
...HYPHENATED_CONTENT_TYPE,
|
|
49
|
+
...options?.headers
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* @since 1.0.0
|
|
55
|
+
*/
|
|
56
|
+
function getUrlFromServerRequest(request) {
|
|
57
|
+
const {
|
|
58
|
+
headers
|
|
59
|
+
} = request;
|
|
60
|
+
const host = Headers.get(headers, "x-forwarded-host").pipe(_effect.Option.orElse(() => Headers.get(headers, "host")), _effect.Option.getOrElse(() => "localhost"));
|
|
61
|
+
const protocol = Headers.get(headers, "x-forwarded-proto").pipe(_effect.Option.orElse(() => Headers.get(headers, "protocol")), _effect.Option.getOrElse(() => "http"));
|
|
62
|
+
return new URL(request.url, `${protocol}://${host}`);
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=Platform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Platform.js","names":["Headers","_interopRequireWildcard","require","HttpServer","_Stream","_effect","_Html","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","HTML_CONTENT_TYPE","CAMEL_CASE_CONTENT_TYPE","contentType","HYPHENATED_CONTENT_TYPE","htmlResponse","fx","options","Effect","contextWithEffect","ctx","response","stream","Stream","provideContext","encodeText","toStream","renderToHtml","headers","htmlResponseString","html","raw","getUrlFromServerRequest","request","host","pipe","Option","orElse","getOrElse","protocol","URL","url"],"sources":["../../src/Platform.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.render = render;
|
|
7
|
+
exports.renderLayer = renderLayer;
|
|
8
|
+
var Context = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@typed/context"));
|
|
9
|
+
var _Document = /*#__PURE__*/require("@typed/dom/Document");
|
|
10
|
+
var _RootElement = /*#__PURE__*/require("@typed/dom/RootElement");
|
|
11
|
+
var Fx = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@typed/fx/Fx"));
|
|
12
|
+
var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
|
|
13
|
+
var _render = /*#__PURE__*/require("./internal/render");
|
|
14
|
+
var _RenderContext = /*#__PURE__*/require("./RenderContext");
|
|
15
|
+
var _RenderTemplate = /*#__PURE__*/require("./RenderTemplate");
|
|
16
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
|
+
/**
|
|
19
|
+
* @since 1.0.0
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* @since 1.0.0
|
|
24
|
+
*/
|
|
25
|
+
function render(rendered) {
|
|
26
|
+
return Fx.fromFxEffect(Effect.contextWith(context => {
|
|
27
|
+
const [document, ctx, {
|
|
28
|
+
rootElement
|
|
29
|
+
}] = Context.getMany(context, _Document.Document, _RenderContext.RenderContext, _RootElement.RootElement);
|
|
30
|
+
return Fx.provideService(Fx.mapEffect(rendered, what => (0, _render.attachRoot)(ctx.renderCache, rootElement, what)), _RenderTemplate.RenderTemplate, (0, _render.renderTemplate)(document, ctx));
|
|
31
|
+
}));
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @since 1.0.0
|
|
35
|
+
*/
|
|
36
|
+
function renderLayer(rendered) {
|
|
37
|
+
return Fx.drainLayer(Fx.switchMapCause(render(rendered), Effect.logError));
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=Render.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Render.js","names":["Context","_interopRequireWildcard","require","_Document","_RootElement","Fx","Effect","_render","_RenderContext","_RenderTemplate","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","render","rendered","fromFxEffect","contextWith","context","document","ctx","rootElement","getMany","Document","RenderContext","RootElement","provideService","mapEffect","what","attachRoot","renderCache","RenderTemplate","renderTemplate","renderLayer","drainLayer","switchMapCause","logError"],"sources":["../../src/Render.ts"],"sourcesContent":[null],"mappings":";;;;;;;AAIA,IAAAA,OAAA,gBAAAC,uBAAA,eAAAC,OAAA;AACA,IAAAC,SAAA,gBAAAD,OAAA;AACA,IAAAE,YAAA,gBAAAF,OAAA;AACA,IAAAG,EAAA,gBAAAJ,uBAAA,eAAAC,OAAA;AAEA,IAAAI,MAAA,gBAAAL,uBAAA,eAAAC,OAAA;AACA,IAAAK,OAAA,gBAAAL,OAAA;AACA,IAAAM,cAAA,gBAAAN,OAAA;AAEA,IAAAO,eAAA,gBAAAP,OAAA;AAAiD,SAAAQ,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAV,wBAAAU,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAbjD;;;;AAoBA;;;AAGM,SAAUY,MAAMA,CACpBC,QAAwB;EAExB,OAAO3B,EAAE,CAAC4B,YAAY,CAAC3B,MAAM,CAAC4B,WAAW,CAAEC,OAAO,IAAI;IACpD,MAAM,CAACC,QAAQ,EAAEC,GAAG,EAAE;MAAEC;IAAW,CAAE,CAAC,GAAGtC,OAAO,CAACuC,OAAO,CAACJ,OAAO,EAAEK,kBAAQ,EAAEC,4BAAa,EAAEC,wBAAW,CAAC;IAEvG,OAAOrC,EAAE,CAACsC,cAAc,CACtBtC,EAAE,CAACuC,SAAS,CAACZ,QAAQ,EAAGa,IAAI,IAAK,IAAAC,kBAAU,EAACT,GAAG,CAACU,WAAW,EAAET,WAAW,EAAEO,IAAI,CAAC,CAAC,EAChFG,8BAAc,EACd,IAAAC,sBAAc,EAACb,QAAQ,EAAEC,GAAG,CAAC,CAC9B;EACH,CAAC,CAAC,CAAC;AACL;AAEA;;;AAGM,SAAUa,WAAWA,CACzBlB,QAAwB;EAExB,OAAO3B,EAAE,CAAC8C,UAAU,CAAC9C,EAAE,CAAC+C,cAAc,CAACrB,MAAM,CAACC,QAAQ,CAAC,EAAE1B,MAAM,CAAC+C,QAAQ,CAAC,CAAC;AAC5E"}
|