Fix: Handle tagged floats before plain object check in renderCellContent

Tagged floats (`{value: N, isFloat: true}`) were matched by
`isPlainObject` and rendered as a two-column table with "value" and
"isFloat" headers instead of as a formatted number. This is now fixed.

Signed-off-by: Matouš Jan Fialka <mjf@mjf.cz>
This commit is contained in:
Matouš Jan Fialka
2026-03-09 12:57:53 +01:00
parent 2aaa797bda
commit 9c9ca047f0
+3
View File
@@ -309,6 +309,9 @@ function renderCellContent(
renderInline: InlineRenderer,
): Promise<string> {
if (isEmpty(v)) return Promise.resolve("");
if (isTaggedFloat(v)) {
return Promise.resolve(renderInline(luaFormatNumber(v.value, "float")));
}
if (v instanceof LuaTable) {
if (v.empty()) return Promise.resolve(`<table data-table-empty></table>`);
return renderLuaTableToHtml(v, renderInline);