diff options
Diffstat (limited to 'htmtl/parsers')
| -rw-r--r-- | htmtl/parsers/generic_value.py | 6 | ||||
| -rw-r--r-- | htmtl/parsers/inner_html.py | 5 | ||||
| -rw-r--r-- | htmtl/parsers/inner_partial.py | 6 | ||||
| -rw-r--r-- | htmtl/parsers/inner_text.py | 5 | ||||
| -rw-r--r-- | htmtl/parsers/iterate.py | 11 | ||||
| -rw-r--r-- | htmtl/parsers/outer_html.py | 6 | ||||
| -rw-r--r-- | htmtl/parsers/outer_partial.py | 6 | ||||
| -rw-r--r-- | htmtl/parsers/outer_text.py | 4 | ||||
| -rw-r--r-- | htmtl/parsers/when.py | 4 | ||||
| -rw-r--r-- | htmtl/parsers/when_not.py | 4 |
10 files changed, 34 insertions, 23 deletions
diff --git a/htmtl/parsers/generic_value.py b/htmtl/parsers/generic_value.py index 87b0d63..bac9577 100644 --- a/htmtl/parsers/generic_value.py +++ b/htmtl/parsers/generic_value.py @@ -9,10 +9,10 @@ class GenericValue(Parser): for key, val in node.attributes.items(): if key.startswith(":"): - new_attrs[key[1:]] = self.expression(val) + new_attrs[key[1:]] = self.parse_expression(val) else: new_attrs[key] = val node.attributes = new_attrs - - return node
\ No newline at end of file + + return node diff --git a/htmtl/parsers/inner_html.py b/htmtl/parsers/inner_html.py index 60e90ca..df5f0f4 100644 --- a/htmtl/parsers/inner_html.py +++ b/htmtl/parsers/inner_html.py @@ -9,8 +9,9 @@ from ..parser import Parser class InnerHtml(Parser): def traverse(self, node: Node) -> Optional[Node]: if "inner-html" in node.attributes: - child_nodes = Dompa(self.expression(node.attributes["inner-html"])).nodes() + exp = self.parse_expression(node.attributes["inner-html"]) + child_nodes = Dompa(exp).get_nodes() node.children = child_nodes node.attributes.pop("inner-html") - return node
\ No newline at end of file + return node diff --git a/htmtl/parsers/inner_partial.py b/htmtl/parsers/inner_partial.py index 80020aa..e2c0842 100644 --- a/htmtl/parsers/inner_partial.py +++ b/htmtl/parsers/inner_partial.py @@ -6,12 +6,14 @@ from dompa.nodes import Node from ..parser import Parser import htmtl + class InnerPartial(Parser): def traverse(self, node: Node) -> Optional[Node]: if "inner-partial" in node.attributes: - template = htmtl.Htmtl(self.expression(node.attributes["inner-partial"]), self.data()) + exp = self.parse_expression(node.attributes["inner-partial"]) + template = htmtl.Htmtl(exp, self.get_data()) child_nodes = Dompa(template.to_html()).get_nodes() node.children = child_nodes node.attributes.pop("inner-partial") - return node
\ No newline at end of file + return node diff --git a/htmtl/parsers/inner_text.py b/htmtl/parsers/inner_text.py index 52fc0b4..c147b12 100644 --- a/htmtl/parsers/inner_text.py +++ b/htmtl/parsers/inner_text.py @@ -7,7 +7,8 @@ from ..parser import Parser class InnerText(Parser): def traverse(self, node: Node) -> Optional[Node]: if "inner-text" in node.attributes: - node.children = [TextNode(value=self.expression(node.attributes["inner-text"]))] + exp = self.parse_expression(node.attributes["inner-text"]) + node.children = [TextNode(value=exp)] node.attributes.pop("inner-text") - return node
\ No newline at end of file + return node diff --git a/htmtl/parsers/iterate.py b/htmtl/parsers/iterate.py index a70d026..cc70491 100644 --- a/htmtl/parsers/iterate.py +++ b/htmtl/parsers/iterate.py @@ -1,11 +1,12 @@ from collections.abc import Iterable from typing import Optional -from dompa.nodes.actions import ToHtml +from dompa.nodes.serializers import ToHtml from dompa.nodes import Node, FragmentNode from ..parser import Parser import htmtl + class IterateOp: var: str iter_var_as: Optional[str] @@ -22,11 +23,11 @@ class Iterate(Parser): if "iterate" in node.attributes: replacement_nodes = [] iterate_op = self.__parse_exp(node.attributes["iterate"]) - collection = self.expression(iterate_op.var) + collection = self.parse_expression(iterate_op.var) node.attributes.pop("iterate") if isinstance(collection, Iterable): - data = self.data() + data = self.get_data() for idx, item in enumerate(collection): if iterate_op.iter_var_as: @@ -35,8 +36,8 @@ class Iterate(Parser): if iterate_op.iter_index_as: data[iterate_op.iter_index_as] = idx - template = htmtl.Htmtl(node.action(ToHtml), data) - template_nodes = template.nodes() + template = htmtl.Htmtl(node.serialize(ToHtml), data) + template_nodes = template.get_nodes() if len(template_nodes) > 0: replacement_nodes.append(template_nodes[0]) diff --git a/htmtl/parsers/outer_html.py b/htmtl/parsers/outer_html.py index 72df638..27d2daf 100644 --- a/htmtl/parsers/outer_html.py +++ b/htmtl/parsers/outer_html.py @@ -9,6 +9,8 @@ from ..parser import Parser class OuterHtml(Parser): def traverse(self, node: Node) -> Optional[Node]: if "outer-html" in node.attributes: - return FragmentNode(children=Dompa(self.expression(node.attributes["outer-html"])).nodes()) + exp = self.parse_expression(node.attributes["outer-html"]) - return node
\ No newline at end of file + return FragmentNode(children=Dompa(exp).get_nodes()) + + return node diff --git a/htmtl/parsers/outer_partial.py b/htmtl/parsers/outer_partial.py index 69866ad..3e1109a 100644 --- a/htmtl/parsers/outer_partial.py +++ b/htmtl/parsers/outer_partial.py @@ -6,12 +6,14 @@ from dompa.nodes import Node, FragmentNode from ..parser import Parser import htmtl + class OuterPartial(Parser): def traverse(self, node: Node) -> Optional[Node]: if "outer-partial" in node.attributes: - template = htmtl.Htmtl(self.expression(node.attributes["outer-partial"]), self.data()) + exp = self.parse_expression(node.attributes["outer-partial"]) + template = htmtl.Htmtl(exp, self.get_data()) replacement_nodes = Dompa(template.to_html()).get_nodes() return FragmentNode(children=replacement_nodes) - return node
\ No newline at end of file + return node diff --git a/htmtl/parsers/outer_text.py b/htmtl/parsers/outer_text.py index 78b0fce..0b21d3a 100644 --- a/htmtl/parsers/outer_text.py +++ b/htmtl/parsers/outer_text.py @@ -7,6 +7,8 @@ from ..parser import Parser class OuterText(Parser): def traverse(self, node: Node) -> Optional[Node]: if "outer-text" in node.attributes: - return TextNode(value=self.expression(node.attributes["outer-text"])) + exp = self.parse_expression(node.attributes["outer-text"]) + + return TextNode(value=exp) return node diff --git a/htmtl/parsers/when.py b/htmtl/parsers/when.py index 57a965a..249e5b0 100644 --- a/htmtl/parsers/when.py +++ b/htmtl/parsers/when.py @@ -6,9 +6,9 @@ from ..parser import Parser class When(Parser): def traverse(self, node: Node) -> Optional[Node]: if "when" in node.attributes: - if not self.expression(node.attributes["when"]): + if not self.parse_expression(node.attributes["when"]): return None node.attributes.pop("when") - return node
\ No newline at end of file + return node diff --git a/htmtl/parsers/when_not.py b/htmtl/parsers/when_not.py index 68e3d09..96383b7 100644 --- a/htmtl/parsers/when_not.py +++ b/htmtl/parsers/when_not.py @@ -6,9 +6,9 @@ from ..parser import Parser class WhenNot(Parser): def traverse(self, node: Node) -> Optional[Node]: if "when-not" in node.attributes: - if self.expression(node.attributes["when-not"]): + if self.parse_expression(node.attributes["when-not"]): return None node.attributes.pop("when-not") - return node
\ No newline at end of file + return node |
