From 2cac46fda26e5fb9da371a170d2300d8d129339b Mon Sep 17 00:00:00 2001 From: null Date: Fri, 3 Jul 2026 23:11:36 -0500 Subject: [PATCH] fix(ts): scan .ts/.tsx in Tailwind content globs (B2 follow-up) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Root cause of the B2 e2e regression: tailwind's `content` was `./client/**/*.{js,jsx}`, so once a component became .tsx, Tailwind stopped scanning it and never generated CSS for any class used *only* there. The release-notes dialog broke because its `left-[50%] top-[50%]` centering classes (unique to the now-.tsx dialog) produced no CSS — the modal rendered off-screen (transform applied, but `left/top` were 0/2359px), covering the tracker so the auth-setup probe couldn't reach "Add Bill". Fix: include `ts,tsx` in the content globs. Verified via computed style — the dialog is centered again (left:640px top:360px, on-screen) and the 17/17 e2e probe passes. This should have shipped with the TS foundation (T1); it silently affected every .tsx conversion (they only looked fine because their classes also appeared in some .jsx file). Co-Authored-By: Claude Opus 4.8 --- tailwind.config.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tailwind.config.js b/tailwind.config.js index 9627566..8ba07eb 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -1,7 +1,7 @@ /** @type {import('tailwindcss').Config} */ module.exports = { darkMode: ['class'], - content: ['./index.html', './client/**/*.{js,jsx}'], + content: ['./index.html', './client/**/*.{js,jsx,ts,tsx}'], theme: { container: { center: true, padding: '2rem', screens: { '2xl': '1400px' } }, extend: {