From 0d28936160dcd0ed475cb29b63ac0fbbb83886d2 Mon Sep 17 00:00:00 2001 From: Yuwang Cai Date: Fri, 6 Sep 2024 20:09:40 +0800 Subject: [PATCH] fix: suppress Tailwind duplication warning (#22) --- src/config.ts | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/src/config.ts b/src/config.ts index 3483b26..0431f08 100644 --- a/src/config.ts +++ b/src/config.ts @@ -49,6 +49,8 @@ function resolvePalette( options.aliases ?? {}, ); + const normalizedTailwindPalette = normalizeTailwindPalette(tailwindPalette); + const checkInclusion = createInclusionChecker(options); const filteredRadixPalette = Object.fromEntries( Object.entries(aliasedRadixPalette).filter(([colorName]) => @@ -56,7 +58,7 @@ function resolvePalette( ), ); const filteredTailwindPalette = Object.fromEntries( - Object.entries(tailwindPalette).filter(([colorName]) => + Object.entries(normalizedTailwindPalette).filter(([colorName]) => checkInclusion(colorName), ), ); @@ -140,6 +142,26 @@ function aliasRadixPalette( return aliasedPalette; } +/** + * Remove deprecated color names from the Tailwind palette. + */ +function normalizeTailwindPalette(tailwindPalette: Palette): Palette { + const deprecatedColorNames = [ + "lightBlue", + "warmGray", + "trueGray", + "coolGray", + "blueGray", + ]; + + return Object.keys(tailwindPalette) + .filter((colorName) => !deprecatedColorNames.includes(colorName)) + .reduce((palette, colorName) => { + palette[colorName] = tailwindPalette[colorName]!; + return palette; + }, {}); +} + /** * Create a function that checks whether a Radix color name should be included, * i.e. be transformed and added to the new palette.