diff --git a/src/blueprint/html.cr b/src/blueprint/html.cr
index a34332f..2468bed 100644
--- a/src/blueprint/html.cr
+++ b/src/blueprint/html.cr
@@ -78,7 +78,7 @@ module Blueprint::HTML
def element(tag_name : String | Symbol, **attributes, &) : Nil
buffer << "<"
buffer << tag_name
- AttributesRenderer.render(attributes, to: buffer)
+ render_attributes(attributes, to: buffer)
buffer << ">"
BufferRenderer.render(to: buffer) { yield }
buffer << ""
@@ -89,7 +89,7 @@ module Blueprint::HTML
def void_element(tag_name : String | Symbol, **attributes) : Nil
buffer << "<"
buffer << tag_name
- AttributesRenderer.render(attributes, to: buffer)
+ render_attributes(attributes, to: buffer)
buffer << ">"
end
@@ -134,4 +134,8 @@ module Blueprint::HTML
def escape_once(value) : Blueprint::SafeValue
safe EscapeOnce.escape(value)
end
+
+ private def render_attributes(attributes : Hash | NamedTuple, to buffer : String::Builder) : Nil
+ AttributesRenderer.render(attributes, to: buffer)
+ end
end
diff --git a/src/blueprint/html/element_registrar.cr b/src/blueprint/html/element_registrar.cr
index 238867b..32bd7e2 100644
--- a/src/blueprint/html/element_registrar.cr
+++ b/src/blueprint/html/element_registrar.cr
@@ -12,7 +12,7 @@ module Blueprint::HTML::ElementRegistrar
def {{method_name.id}}(attributes : NamedTuple | Hash, &block) : Nil
buffer << "<{{tag.id}}"
- AttributesRenderer.render(attributes, to: buffer)
+ render_attributes(attributes, to: buffer)
buffer << ">"
BufferRenderer.render(to: buffer) { yield }
buffer << "{{tag.id}}>"
@@ -20,7 +20,7 @@ module Blueprint::HTML::ElementRegistrar
def {{method_name.id}}(attributes : NamedTuple | Hash) : Nil
buffer << "<{{tag.id}}"
- AttributesRenderer.render(attributes, to: buffer)
+ render_attributes(attributes, to: buffer)
buffer << ">{{tag.id}}>"
end
end
@@ -34,7 +34,7 @@ module Blueprint::HTML::ElementRegistrar
def {{method_name.id}}(attributes : NamedTuple | Hash) : Nil
buffer << "<{{tag.id}}"
- AttributesRenderer.render(attributes, to: buffer)
+ render_attributes(attributes, to: buffer)
buffer << ">{{tag.id}}>"
end
end
@@ -48,7 +48,7 @@ module Blueprint::HTML::ElementRegistrar
def {{method_name.id}}(attributes : NamedTuple | Hash) : Nil
buffer << "<{{tag.id}}"
- AttributesRenderer.render(attributes, to: buffer)
+ render_attributes(attributes, to: buffer)
buffer << ">"
end
end