From 49fa36ec12ab0504cb75780d43ec62cec53c6a0e Mon Sep 17 00:00:00 2001 From: Danila Poyarkov Date: Fri, 24 Jul 2026 00:14:41 +0300 Subject: [PATCH] fix(design-jsx): scale inline icons to their explicit w/h icons always rendered at the 24px default because the size fell back to 24 even when w/h were given. Prefer explicit w/h over the default so icon content scales to fit its frame. --- packages/core/src/design-jsx/renderer.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/core/src/design-jsx/renderer.ts b/packages/core/src/design-jsx/renderer.ts index 66d76b0e6..a8f57b017 100644 --- a/packages/core/src/design-jsx/renderer.ts +++ b/packages/core/src/design-jsx/renderer.ts @@ -251,7 +251,9 @@ async function renderSvgNode( parentId: string ): Promise { const props = tree.props - const size = (props.size as number | undefined) ?? 24 + const explicitW = typeof props.w === 'number' ? props.w : 0 + const explicitH = typeof props.h === 'number' ? props.h : 0 + const size = explicitW > 0 || explicitH > 0 ? Math.max(explicitW, explicitH) : ((props.size as number | undefined) ?? 24) const colorHex = (props.color as string | undefined) ?? '#000000' const parsedColor = parseColor(colorHex)