From 64525a4359dbccaad719f2a930c591155f6a644f Mon Sep 17 00:00:00 2001 From: "Henry Q. Dineen" Date: Sat, 7 Nov 2026 20:24:43 -0500 Subject: [PATCH] [babel-plugin] Treat initialLetter as a unitless number `initialLetter: 3` compiled to `initial-letter:3px`, which is invalid CSS, so browsers dropped the declaration. The size argument is a plain ``, so it should never get a `px` suffix. The Flow/TS types and the eslint valid-styles rule already reject numeric `initialLetter`, so this only affects untyped, unlinted code. Fixes #2019 Co-Authored-By: Claude Opus 5.5 --- .../__tests__/transform-value-normalization-test.js | 5 +++++ .../babel-plugin/src/shared/utils/transform-value.js | 1 + 2 files changed, 6 insertions(+) diff --git a/packages/@stylexjs/babel-plugin/__tests__/transform-value-normalization-test.js b/packages/@stylexjs/babel-plugin/__tests__/transform-value-normalization-test.js index 9ab0eb1d3..22e56dd51 100644 --- a/packages/@stylexjs/babel-plugin/__tests__/transform-value-normalization-test.js +++ b/packages/@stylexjs/babel-plugin/__tests__/transform-value-normalization-test.js @@ -291,6 +291,7 @@ describe('@stylexjs/babel-plugin', () => { unitless: { fontSizeAdjust: 0.545, fontWeight: 500, + initialLetter: 3.5, lineHeight: 1.5, opacity: 0.5, zoom: 2, @@ -321,6 +322,10 @@ describe('@stylexjs/babel-plugin', () => { ltr: ".xk50ysn{font-weight:500}", priority: 3000 }); + _inject2({ + ltr: ".x1veszal{initial-letter:3.5}", + priority: 3000 + }); _inject2({ ltr: ".x1evy7pa{line-height:1.5}", priority: 3000 diff --git a/packages/@stylexjs/babel-plugin/src/shared/utils/transform-value.js b/packages/@stylexjs/babel-plugin/src/shared/utils/transform-value.js index a5d5aef90..f95250177 100644 --- a/packages/@stylexjs/babel-plugin/src/shared/utils/transform-value.js +++ b/packages/@stylexjs/babel-plugin/src/shared/utils/transform-value.js @@ -146,6 +146,7 @@ const unitlessNumberProperties = new Set([ 'fontSizeAdjust', 'fontWeight', 'hyphenateLimitChars', + 'initialLetter', 'lineClamp', 'lineHeight', 'maskBorderOutset',