From 4b347f6b00de4729a1d463a93137c4380b58ba16 Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Wed, 3 Jan 2024 12:27:35 -0500 Subject: [PATCH 1/3] =?UTF-8?q?Don=E2=80=99t=20break=20gradient=20function?= =?UTF-8?q?s=20when=20following=20`calc()`?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/util/dataTypes.js | 7 +++++++ tests/normalize-data-types.test.js | 6 ++++++ 2 files changed, 13 insertions(+) diff --git a/src/util/dataTypes.js b/src/util/dataTypes.js index 7d8224606958..e65a517106aa 100644 --- a/src/util/dataTypes.js +++ b/src/util/dataTypes.js @@ -107,6 +107,13 @@ function normalizeMathOperatorSpacing(value) { 'keyboard-inset-left', 'keyboard-inset-width', 'keyboard-inset-height', + + 'radial-gradient', + 'linear-gradient', + 'conic-gradient', + 'repeating-radial-gradient', + 'repeating-linear-gradient', + 'repeating-conic-gradient', ] return value.replace(/(calc|min|max|clamp)\(.+\)/g, (match) => { diff --git a/tests/normalize-data-types.test.js b/tests/normalize-data-types.test.js index f01efa5e608b..241ad78b506e 100644 --- a/tests/normalize-data-types.test.js +++ b/tests/normalize-data-types.test.js @@ -86,6 +86,12 @@ let table = [ // Prevent formatting keywords ['minmax(min-content,25%)', 'minmax(min-content,25%)'], + // Prevent formatting keywords + [ + 'radial-gradient(calc(1+2)),radial-gradient(calc(1+2))', + 'radial-gradient(calc(1 + 2)),radial-gradient(calc(1 + 2))', + ], + // Misc ['color(0_0_0/1.0)', 'color(0 0 0/1.0)'], ['color(0_0_0_/_1.0)', 'color(0 0 0 / 1.0)'], From aaf2abc34d54a841e7c3f699df6f70b5fa4380ac Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Wed, 3 Jan 2024 12:42:04 -0500 Subject: [PATCH 2/3] =?UTF-8?q?Don=E2=80=99t=20break=20CSS=20grid=20track?= =?UTF-8?q?=20names?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/util/dataTypes.js | 5 +++++ tests/normalize-data-types.test.js | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/src/util/dataTypes.js b/src/util/dataTypes.js index e65a517106aa..6705f10ca230 100644 --- a/src/util/dataTypes.js +++ b/src/util/dataTypes.js @@ -169,6 +169,11 @@ function normalizeMathOperatorSpacing(value) { result += consumeUntil([')']) } + // Don't break CSS grid track names + else if (peek('[')) { + result += consumeUntil([']']) + } + // Handle operators else if ( ['+', '-', '*', '/'].includes(char) && diff --git a/tests/normalize-data-types.test.js b/tests/normalize-data-types.test.js index 241ad78b506e..224203ffe14c 100644 --- a/tests/normalize-data-types.test.js +++ b/tests/normalize-data-types.test.js @@ -91,6 +91,10 @@ let table = [ 'radial-gradient(calc(1+2)),radial-gradient(calc(1+2))', 'radial-gradient(calc(1 + 2)),radial-gradient(calc(1 + 2))', ], + [ + '[content-start]_calc(100%-1px)_[content-end]_minmax(1rem,1fr)', + '[content-start] calc(100% - 1px) [content-end] minmax(1rem,1fr)', + ], // Misc ['color(0_0_0/1.0)', 'color(0 0 0/1.0)'], From 3a42e7566cf0a5ebd793942c5dfbaffb0443f3c8 Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Wed, 3 Jan 2024 12:52:43 -0500 Subject: [PATCH 3/3] Update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index d4db9a8759f1..a6e987d0e19b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed - Don't remove keyframe stops when using important utilities ([#12639](https://github.com/tailwindlabs/tailwindcss/pull/12639)) +- Don't add spaces to gradients and grid track names when followed by `calc()` ([#12704](https://github.com/tailwindlabs/tailwindcss/pull/12704)) ### Added