lib/heartml/server_effects.rb in heartml-1.0.0.beta17 vs lib/heartml/server_effects.rb in heartml-1.0.0.beta18

- old
+ new

@@ -56,9 +56,19 @@ } directive :attribute, ->(_, node, name, value) { node[name] = value if name.match?(%r{^aria[A-Z-]}) || value } + + directive :appendUnsafe, ->(_, node, value) { + node.swap(value.is_a?(Nokolexbor::Node) ? value : value.to_s) + } + + directive :append, ->(_, node, value) { + span = node.document.create_element("span") + span.content = value.to_s + node.swap(span.inner_html) + } end end def _server_effect_binding(attribute:, node:) _iso_effect_binding(attribute:, node:)