From 11e6552edb05772c6dd8baac2655a32ba64d2de5 Mon Sep 17 00:00:00 2001 From: Hayleigh Thompson Date: Sun, 19 May 2024 17:44:44 +0100 Subject: :sparkles: Emit ints and float properties. --- src/lustre/internals/vdom.gleam | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/lustre/internals/vdom.gleam b/src/lustre/internals/vdom.gleam index 5d03b2b..c4cab69 100644 --- a/src/lustre/internals/vdom.gleam +++ b/src/lustre/internals/vdom.gleam @@ -2,6 +2,7 @@ import gleam/dict.{type Dict} import gleam/dynamic.{type Decoder, type Dynamic} +import gleam/float import gleam/int import gleam/json.{type Json} import gleam/list @@ -391,6 +392,9 @@ fn attribute_to_string_parts( "Atom" | "Bool" | "Boolean" if value == true_atom -> Ok(#(name, "")) "Atom" | "Bool" | "Boolean" -> Error(Nil) + "Int" -> Ok(#(name, int.to_string(dynamic.unsafe_coerce(value)))) + "Float" -> Ok(#(name, float.to_string(dynamic.unsafe_coerce(value)))) + // For everything else, we care whether or not the attribute is actually // a property. Properties are *Javascript* values that aren't necessarily // reflected in the DOM. -- cgit v1.2.3