From 7422a6c1a309eb8da0d79edb076af0321a7da880 Mon Sep 17 00:00:00 2001
From: Lukas Oppermann <lukasoppermann@github.com>
Date: Fri, 17 Jan 2025 10:18:51 +0100
Subject: [PATCH 1/3] rm fallback themes for overrides

---
 scripts/buildFigma.ts  | 5 ++---
 scripts/buildTokens.ts | 5 ++---
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/scripts/buildFigma.ts b/scripts/buildFigma.ts
index 33c0bd4cb..7eef43c0c 100644
--- a/scripts/buildFigma.ts
+++ b/scripts/buildFigma.ts
@@ -3,7 +3,6 @@ import {PrimerStyleDictionary} from '../src/primerStyleDictionary.js'
 import {themes} from './themes.config.js'
 import {figma} from '../src/platforms/index.js'
 import type {ConfigGeneratorOptions} from '../src/types/styleDictionaryConfigGenerator.js'
-import {getFallbackTheme} from './utilities/getFallbackTheme.js'
 
 const buildFigma = async (buildOptions: ConfigGeneratorOptions): Promise<void> => {
   /** -----------------------------------
@@ -68,7 +67,7 @@ const buildFigma = async (buildOptions: ConfigGeneratorOptions): Promise<void> =
       include,
       platforms: {
         figma: figma(`figma/themes/${filename}.json`, buildOptions.prefix, buildOptions.buildPath, {
-          theme: [theme, getFallbackTheme(theme)],
+          theme,
         }),
       },
     })
@@ -252,7 +251,7 @@ const buildFigma = async (buildOptions: ConfigGeneratorOptions): Promise<void> =
       },
       platforms: {
         figma: figma(`figma/shadows/${name}.json`, buildOptions.prefix, buildOptions.buildPath, {
-          theme: [theme, getFallbackTheme(theme)],
+          theme,
         }),
       },
     })
diff --git a/scripts/buildTokens.ts b/scripts/buildTokens.ts
index f5cf2c0af..cb65f8afe 100644
--- a/scripts/buildTokens.ts
+++ b/scripts/buildTokens.ts
@@ -10,7 +10,6 @@ import type {TokenBuildInput} from '../src/types/tokenBuildInput.js'
 import glob from 'fast-glob'
 import {themes} from './themes.config.js'
 import fs from 'fs'
-import {getFallbackTheme} from './utilities/getFallbackTheme.js'
 
 /**
  * getStyleDictionaryConfig
@@ -67,7 +66,7 @@ export const buildDesignTokens = async (buildOptions: ConfigGeneratorOptions): P
         platforms: {
           css: css(`internalCss/${filename}.css`, buildOptions.prefix, buildOptions.buildPath, {
             themed: true,
-            theme: [theme, getFallbackTheme(theme)],
+            theme: [theme],
           }),
         },
       })
@@ -89,7 +88,7 @@ export const buildDesignTokens = async (buildOptions: ConfigGeneratorOptions): P
           `functional/themes/${filename}`,
           source,
           include,
-          {...buildOptions, themed: true, theme: [theme, getFallbackTheme(theme)]},
+          {...buildOptions, themed: true, theme},
           // disable fallbacks for themes
           {fallbacks: undefined},
         ),

From c6153b8264dfc2f08d0ddc950774cbbc490a487a Mon Sep 17 00:00:00 2001
From: Lukas Oppermann <lukasoppermann@github.com>
Date: Fri, 17 Jan 2025 14:41:13 +0100
Subject: [PATCH 2/3] fix for fgColors

---
 src/tokens/functional/color/bgColor.json5 | 51 ++++++++++++++---------
 src/tokens/functional/color/fgColor.json5 | 45 ++++++++++++--------
 2 files changed, 59 insertions(+), 37 deletions(-)

diff --git a/src/tokens/functional/color/bgColor.json5 b/src/tokens/functional/color/bgColor.json5
index 12437038e..56d9c1a94 100644
--- a/src/tokens/functional/color/bgColor.json5
+++ b/src/tokens/functional/color/bgColor.json5
@@ -14,7 +14,7 @@
         },
         'org.primer.overrides': {
           dark: '{base.color.neutral.1}',
-          "dark-high-contrast": "{base.color.neutral.0}",
+          'dark-high-contrast': '{base.color.neutral.0}',
         },
       },
     },
@@ -32,8 +32,8 @@
         },
         'org.primer.overrides': {
           dark: '{base.color.neutral.2}',
-          "light-high-contrast": "{base.color.neutral.3}",
-          "dark-high-contrast": "{base.color.neutral.2}",
+          'light-high-contrast': '{base.color.neutral.3}',
+          'dark-high-contrast': '{base.color.neutral.2}',
         },
       },
     },
@@ -51,7 +51,7 @@
         },
         'org.primer.overrides': {
           dark: '{base.color.neutral.0}',
-          "light-high-contrast": "{base.color.neutral.2}",
+          'light-high-contrast': '{base.color.neutral.2}',
         },
       },
     },
@@ -125,8 +125,8 @@
         },
         'org.primer.overrides': {
           dark: '{base.color.neutral.3}',
-          "light-high-contrast": "{base.color.neutral.4}",
-          "dark-high-contrast": "{base.color.neutral.4}",
+          'light-high-contrast': '{base.color.neutral.4}',
+          'dark-high-contrast': '{base.color.neutral.4}',
         },
       },
     },
@@ -163,8 +163,12 @@
               $value: '{base.color.neutral.8}',
               alpha: 0.2,
             },
-            "light-high-contrast": "{base.color.neutral.4}",
-            "dark-high-contrast": "{base.color.neutral.3}",
+            'light-high-contrast': '{base.color.neutral.4}',
+            'dark-high-contrast': '{base.color.neutral.3}',
+            'light-tritanopia': {
+              $value: '{base.color.neutral.8}',
+              alpha: 0.12,
+            },
           },
         },
       },
@@ -179,8 +183,8 @@
           },
           'org.primer.overrides': {
             dark: '{base.color.neutral.8}',
-            "light-high-contrast": "{base.color.neutral.10}",
-            "dark-high-contrast": "{base.color.neutral.7}",
+            'light-high-contrast': '{base.color.neutral.10}',
+            'dark-high-contrast': '{base.color.neutral.7}',
           },
         },
       },
@@ -203,6 +207,10 @@
               $value: '{base.color.blue.4}',
               alpha: 0.1,
             },
+            "dark-protanopia-deuteranopia": {
+              $value: '{base.color.blue.4}',
+              alpha: 0.1,
+            },
           },
         },
       },
@@ -220,7 +228,7 @@
           },
           'org.primer.overrides': {
             dark: '{base.color.blue.5}',
-            "dark-high-contrast": "{base.color.blue.9}",
+            'dark-high-contrast': '{base.color.blue.9}',
           },
         },
       },
@@ -253,7 +261,6 @@
               $value: '{base.color.blue.4}',
               alpha: 0.2,
             },
-            
           },
         },
       },
@@ -275,8 +282,8 @@
             'dark-tritanopia': '{base.color.blue.5}',
             'light-protanopia-deuteranopia': '{base.color.blue.5}',
             'dark-protanopia-deuteranopia': '{base.color.blue.5}',
-            "light-high-contrast": "{base.color.green.5}",
-            "dark-high-contrast": "{base.color.green.9}",
+            'light-high-contrast': '{base.color.green.5}',
+            'dark-high-contrast': '{base.color.green.9}',
           },
         },
       },
@@ -340,6 +347,10 @@
               $value: '{base.color.yellow.4}',
               alpha: 0.15,
             },
+            "dark-protanopia-deuteranopia": {
+              $value: '{base.color.yellow.4}',
+              alpha: 0.15,
+            },
           },
         },
       },
@@ -356,7 +367,7 @@
             },
           },
           'org.primer.overrides': {
-            "dark-high-contrast": "{base.color.yellow.9}",
+            'dark-high-contrast': '{base.color.yellow.9}',
           },
         },
       },
@@ -402,7 +413,7 @@
           'org.primer.overrides': {
             'light-tritanopia': '{base.color.red.5}',
             'dark-tritanopia': '{base.color.red.5}',
-            "dark-high-contrast": "{base.color.orange.9}",
+            'dark-high-contrast': '{base.color.orange.9}',
           },
         },
       },
@@ -447,8 +458,8 @@
           },
           'org.primer.overrides': {
             'light-protanopia-deuteranopia': '{base.color.orange.5}',
-            "dark-protanopia-deuteranopia": "{base.color.orange.5}",
-            "dark-high-contrast": "{base.color.red.9}",
+            'dark-protanopia-deuteranopia': '{base.color.orange.5}',
+            'dark-high-contrast': '{base.color.red.9}',
           },
         },
       },
@@ -535,7 +546,7 @@
             },
           },
           'org.primer.overrides': {
-            "dark-high-contrast": "{base.color.purple.9}",
+            'dark-high-contrast': '{base.color.purple.9}',
           },
         },
       },
@@ -608,7 +619,7 @@
             },
           },
           'org.primer.overrides': {
-"dark-high-contrast": "{base.color.pink.9}",
+            'dark-high-contrast': '{base.color.pink.9}',
           },
         },
       },
diff --git a/src/tokens/functional/color/fgColor.json5 b/src/tokens/functional/color/fgColor.json5
index 0965ee500..4b5b3cb9b 100644
--- a/src/tokens/functional/color/fgColor.json5
+++ b/src/tokens/functional/color/fgColor.json5
@@ -14,8 +14,8 @@
         },
         'org.primer.overrides': {
           dark: '{base.color.neutral.12}',
-          "dark-high-contrast": '{base.color.neutral.13}',
-          "dark-dimmed": '{base.color.neutral.11}',
+          'dark-high-contrast': '{base.color.neutral.13}',
+          'dark-dimmed': '{base.color.neutral.11}',
         },
       },
     },
@@ -51,7 +51,10 @@
         },
         'org.primer.overrides': {
           dark: '{base.color.neutral.13}',
-          "dark-dimmed": '{base.color.neutral.12}',
+          'dark-dimmed': '{base.color.neutral.12}',
+          'dark-high-contrast': '{base.color.neutral.13}',
+          'dark-tritanopia': '{base.color.neutral.13}',
+          'dark-protanopia-deuteranopia': '{base.color.neutral.13}',
         },
       },
     },
@@ -77,6 +80,10 @@
         },
         'org.primer.overrides': {
           dark: '{base.color.neutral.13}',
+          'dark-dimmed': '{base.color.neutral.13}',
+          'dark-high-contrast': '{base.color.neutral.13}',
+          'dark-tritanopia': '{base.color.neutral.13}',
+          'dark-protanopia-deuteranopia': '{base.color.neutral.13}',
         },
       },
     },
@@ -91,6 +98,10 @@
         },
         'org.primer.overrides': {
           dark: '{base.color.neutral.0}',
+          'dark-dimmed': '{base.color.neutral.0}',
+          'dark-high-contrast': '{base.color.neutral.0}',
+          'dark-tritanopia': '{base.color.neutral.0}',
+          'dark-protanopia-deuteranopia': '{base.color.neutral.0}',
         },
       },
     },
@@ -108,7 +119,7 @@
             $value: '{base.color.neutral.8}',
             alpha: 0.6,
           },
-          "dark-dimmed": '{base.color.neutral.8}',
+          'dark-dimmed': '{base.color.neutral.8}',
           'light-high-contrast': '{base.color.neutral.9}',
           'dark-high-contrast': '{base.color.neutral.8}',
         },
@@ -157,7 +168,7 @@
         },
         'org.primer.overrides': {
           dark: '#4493F8',
-          "dark-dimmed": '#478be6',
+          'dark-dimmed': '#478be6',
           'dark-high-contrast': '#74B9FF',
           'light-high-contrast': '{base.color.blue.6}',
         },
@@ -179,10 +190,10 @@
           dark: '{base.color.green.3}',
           'dark-high-contrast': '#2BD853',
           'light-high-contrast': '{base.color.green.6}',
-          "dark-protanopia-deuteranopia": '{base.color.blue.3}',
+          'dark-protanopia-deuteranopia': '{base.color.blue.3}',
           'light-protanopia-deuteranopia': '{base.color.blue.5}',
-          "dark-tritanopia": '{base.color.blue.3}',
-          "light-tritanopia": '{base.color.blue.5}',
+          'dark-tritanopia': '{base.color.blue.3}',
+          'light-tritanopia': '{base.color.blue.5}',
         },
       },
     },
@@ -199,10 +210,10 @@
           },
         },
         'org.primer.overrides': {
-          "dark-protanopia-deuteranopia": '{base.color.blue.3}',
+          'dark-protanopia-deuteranopia': '{base.color.blue.3}',
           'light-protanopia-deuteranopia': '{base.color.blue.5}',
-          "dark-tritanopia": '{base.color.red.4}',
-          "light-tritanopia": '{base.color.red.5}',
+          'dark-tritanopia': '{base.color.red.4}',
+          'light-tritanopia': '{base.color.red.5}',
         },
       },
     },
@@ -240,8 +251,8 @@
           dark: '{base.color.orange.4}',
           'dark-high-contrast': '{base.color.orange.3}',
           'light-high-contrast': '{base.color.orange.6}',
-          "dark-tritanopia": '{base.color.red.4}',
-          "light-tritanopia": '{base.color.red.5}',
+          'dark-tritanopia': '{base.color.red.4}',
+          'light-tritanopia': '{base.color.red.5}',
         },
       },
     },
@@ -259,7 +270,7 @@
         },
         'org.primer.overrides': {
           dark: '{base.color.red.4}',
-          "dark-protanopia-deuteranopia": '{base.color.orange.3}',
+          'dark-protanopia-deuteranopia': '{base.color.orange.3}',
           'light-protanopia-deuteranopia': '{base.color.orange.5}',
           'dark-high-contrast': '{base.color.red.3}',
           'light-high-contrast': '{base.color.red.6}',
@@ -279,10 +290,10 @@
           },
         },
         'org.primer.overrides': {
-          "dark-protanopia-deuteranopia": '{fgColor.muted}',
+          'dark-protanopia-deuteranopia': '{fgColor.muted}',
           'light-protanopia-deuteranopia': '{fgColor.muted}',
-          "dark-tritanopia": '{fgColor.muted}',
-          "light-tritanopia": '{fgColor.muted}',
+          'dark-tritanopia': '{fgColor.muted}',
+          'light-tritanopia': '{fgColor.muted}',
         },
       },
     },

From ea7e88d607654bb49962cf5681fc798491c7799c Mon Sep 17 00:00:00 2001
From: Lukas Oppermann <lukasoppermann@github.com>
Date: Fri, 17 Jan 2025 22:35:44 +0100
Subject: [PATCH 3/3] fixes

---
 src/tokens/functional/color/bgColor.json5 | 28 +++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/src/tokens/functional/color/bgColor.json5 b/src/tokens/functional/color/bgColor.json5
index 56d9c1a94..1c848fbde 100644
--- a/src/tokens/functional/color/bgColor.json5
+++ b/src/tokens/functional/color/bgColor.json5
@@ -97,6 +97,10 @@
         },
         'org.primer.overrides': {
           dark: '{base.color.neutral.13}',
+          "dark-dimmed": '{base.color.neutral.13}',
+          "dark-high-contrast": '{base.color.neutral.13}',
+          "dark-tritanopia": '{base.color.neutral.13}',
+          "dark-protanopia-deuteranopia": '{base.color.neutral.13}',
         },
       },
     },
@@ -111,6 +115,10 @@
         },
         'org.primer.overrides': {
           dark: '{base.color.neutral.0}',
+          "dark-dimmed": '{base.color.neutral.0}',
+          "dark-high-contrast": '{base.color.neutral.0}',
+          "dark-tritanopia": '{base.color.neutral.0}',
+          "dark-protanopia-deuteranopia": '{base.color.neutral.0}',
         },
       },
     },
@@ -169,6 +177,10 @@
               $value: '{base.color.neutral.8}',
               alpha: 0.12,
             },
+            "light-protanopia-deuteranopia": {
+              $value: '{base.color.neutral.8}',
+              alpha: 0.12,
+            },
           },
         },
       },
@@ -530,6 +542,22 @@
               $value: '{base.color.purple.4}',
               alpha: 0.15,
             },
+            "dark-dimmed": {
+              $value: '{base.color.purple.4}',
+              alpha: 0.15,
+            },
+            "dark-high-contrast": {
+              $value: '{base.color.purple.4}',
+              alpha: 0.15,
+            },
+            "dark-tritanopia": {
+              $value: '{base.color.purple.4}',
+              alpha: 0.15,
+            },
+            "dark-protanopia-deuteranopia": {
+              $value: '{base.color.purple.4}',
+              alpha: 0.15,
+            },
           },
         },
       },