diff --git a/CHANGELOG.md b/CHANGELOG.md index a450dc6b7200..ccf7e3ce1997 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Add container queries plugin to standalone CLI ([#9865](https://github.com/tailwindlabs/tailwindcss/pull/9865)) - Support renaming of output files by `PostCSS` plugin. ([#9944](https://github.com/tailwindlabs/tailwindcss/pull/9944)) - Improve return value of `resolveConfig`, unwrap `ResolvableTo` ([#9972](https://github.com/tailwindlabs/tailwindcss/pull/9972)) +- Clip unbalanced brackets in arbitrary values ([#9973](https://github.com/tailwindlabs/tailwindcss/pull/9973)) ## [3.2.4] - 2022-11-11 diff --git a/src/lib/defaultExtractor.js b/src/lib/defaultExtractor.js index 15d27aca4348..b06c37e9eb52 100644 --- a/src/lib/defaultExtractor.js +++ b/src/lib/defaultExtractor.js @@ -184,7 +184,7 @@ function clipAtBalancedParens(input) { // This means that there was an extra closing `]` // We'll clip to just before it if (depth < 0) { - return input.substring(0, match.index) + return input.substring(0, match.index - 1) } // We've finished balancing the brackets but there still may be characters that can be included diff --git a/tests/default-extractor.test.js b/tests/default-extractor.test.js index e0a39431a0bc..e96b04bbb1f2 100644 --- a/tests/default-extractor.test.js +++ b/tests/default-extractor.test.js @@ -482,3 +482,9 @@ test('a lot of data', () => { expect(extractions).toContain(`underline`) }) + +test('ruby percent string array', () => { + let extractions = defaultExtractor('%w[text-[#bada55]]') + + expect(extractions).toContain(`text-[#bada55]`) +})