diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f90cba13..ab6ba8230 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -- Nothing yet! +### Fixed + +- Ensure content globs defined in `@config` files are relative to that file ([#14314](https://github.com/tailwindlabs/tailwindcss/pull/14314)) ## [4.0.0-alpha.21] - 2024-09-02 diff --git a/integrations/cli/index.test.ts b/integrations/cli/index.test.ts index d561ec673..50842aea4 100644 --- a/integrations/cli/index.test.ts +++ b/integrations/cli/index.test.ts @@ -52,15 +52,24 @@ describe.each([ addVariant('hocus', ['&:focus', '&:hover']) } `, + 'project-a/tailwind.config.js': js` + module.exports = { + content: ['../project-b/src/**/*.js'], + } + `, 'project-a/src/index.css': css` @import 'tailwindcss/utilities'; - @source '../../project-b/src/**/*.js'; + @config '../tailwind.config.js'; + @source '../../project-b/src/**/*.html'; @plugin '../plugin.js'; `, 'project-a/src/index.js': js` const className = "content-['project-a/src/index.js']" module.exports = { className } `, + 'project-b/src/index.html': html` +
+ `, 'project-b/src/index.js': js` const className = "content-['project-b/src/index.js']" module.exports = { className } @@ -74,6 +83,7 @@ describe.each([ await fs.expectFileToContain('project-a/dist/out.css', [ candidate`underline`, + candidate`flex`, candidate`content-['project-a/src/index.js']`, candidate`content-['project-b/src/index.js']`, candidate`inverted:flex`, @@ -111,15 +121,24 @@ describe.each([ addVariant('hocus', ['&:focus', '&:hover']) } `, + 'project-a/tailwind.config.js': js` + module.exports = { + content: ['../project-b/src/**/*.js'], + } + `, 'project-a/src/index.css': css` @import 'tailwindcss/utilities'; - @source '../../project-b/src/**/*.js'; + @config '../tailwind.config.js'; + @source '../../project-b/src/**/*.html'; @plugin '../plugin.js'; `, 'project-a/src/index.js': js` const className = "content-['project-a/src/index.js']" module.exports = { className } `, + 'project-b/src/index.html': html` + + `, 'project-b/src/index.js': js` const className = "content-['project-b/src/index.js']" module.exports = { className } @@ -133,6 +152,7 @@ describe.each([ await fs.expectFileToContain('project-a/dist/out.css', [ candidate`underline`, + candidate`flex`, candidate`content-['project-a/src/index.js']`, candidate`content-['project-b/src/index.js']`, candidate`inverted:flex`, diff --git a/integrations/postcss/index.test.ts b/integrations/postcss/index.test.ts index 61948ca74..d4e4f4d39 100644 --- a/integrations/postcss/index.test.ts +++ b/integrations/postcss/index.test.ts @@ -39,15 +39,24 @@ test( addVariant('hocus', ['&:focus', '&:hover']) } `, + 'project-a/tailwind.config.js': js` + module.exports = { + content: ['../project-b/src/**/*.js'], + } + `, 'project-a/src/index.css': css` @import 'tailwindcss/utilities'; - @source '../../project-b/src/**/*.js'; + @config '../tailwind.config.js'; + @source '../../project-b/src/**/*.html'; @plugin '../plugin.js'; `, 'project-a/src/index.js': js` const className = "content-['a/src/index.js']" module.exports = { className } `, + 'project-b/src/index.html': html` + + `, 'project-b/src/index.js': js` const className = "content-['b/src/index.js']" module.exports = { className } @@ -61,6 +70,7 @@ test( await fs.expectFileToContain('project-a/dist/out.css', [ candidate`underline`, + candidate`flex`, candidate`content-['a/src/index.js']`, candidate`content-['b/src/index.js']`, candidate`inverted:flex`, @@ -106,15 +116,24 @@ test( addVariant('hocus', ['&:focus', '&:hover']) } `, + 'project-a/tailwind.config.js': js` + module.exports = { + content: ['../project-b/src/**/*.js'], + } + `, 'project-a/src/index.css': css` @import 'tailwindcss/utilities'; - @source '../../project-b/src/**/*.js'; + @config '../tailwind.config.js'; + @source '../../project-b/src/**/*.html'; @plugin '../plugin.js'; `, 'project-a/src/index.js': js` const className = "content-['a/src/index.js']" module.exports = { className } `, + 'project-b/src/index.html': html` + + `, 'project-b/src/index.js': js` const className = "content-['b/src/index.js']" module.exports = { className } @@ -128,6 +147,7 @@ test( await fs.expectFileToContain('project-a/dist/out.css', [ candidate`underline`, + candidate`flex`, candidate`content-['a/src/index.js']`, candidate`content-['b/src/index.js']`, candidate`inverted:flex`, @@ -173,15 +193,24 @@ test( addVariant('hocus', ['&:focus', '&:hover']) } `, + 'project-a/tailwind.config.js': js` + module.exports = { + content: ['../project-b/src/**/*.js'], + } + `, 'project-a/src/index.css': css` @import 'tailwindcss/utilities'; - @source '../../project-b/src/**/*.js'; + @config '../tailwind.config.js'; + @source '../../project-b/src/**/*.html'; @plugin '../plugin.js'; `, 'project-a/src/index.js': js` const className = "content-['a/src/index.js']" module.exports = { className } `, + 'project-b/src/index.html': html` + + `, 'project-b/src/index.js': js` const className = "content-['b/src/index.js']" module.exports = { className } @@ -195,6 +224,7 @@ test( await fs.expectFileToContain('project-a/dist/out.css', [ candidate`underline`, + candidate`flex`, candidate`content-['a/src/index.js']`, candidate`content-['b/src/index.js']`, candidate`inverted:flex`, @@ -241,15 +271,24 @@ test( addVariant('hocus', ['&:focus', '&:hover']) } `, + 'project-a/tailwind.config.js': js` + module.exports = { + content: ['../project-b/src/**/*.js'], + } + `, 'project-a/src/index.css': css` @import 'tailwindcss/utilities'; - @source '../../project-b/src/**/*.js'; + @config '../tailwind.config.js'; + @source '../../project-b/src/**/*.html'; @plugin '../plugin.js'; `, 'project-a/src/index.js': js` const className = "content-['a/src/index.js']" module.exports = { className } `, + 'project-b/src/index.html': html` + + `, 'project-b/src/index.js': js` const className = "content-['b/src/index.js']" module.exports = { className } @@ -265,6 +304,7 @@ test( await fs.expectFileToContain('project-a/dist/out.css', [ candidate`underline`, + candidate`flex`, candidate`content-['a/src/index.js']`, candidate`content-['b/src/index.js']`, candidate`inverted:flex`, diff --git a/integrations/vite/index.test.ts b/integrations/vite/index.test.ts index c114828bc..05b2d1185 100644 --- a/integrations/vite/index.test.ts +++ b/integrations/vite/index.test.ts @@ -52,10 +52,19 @@ test(