feat(light): add semantic shadow and accent-focus tokens for DIAL UI Kit - #156
Open
PolinaGurinovich97 wants to merge 1 commit into
Open
PolinaGurinovich97 wants to merge 1 commit into
PolinaGurinovich97 wants to merge 1 commit into
Conversation
The UI Kit reads its shadow scale from `--shadow-xs-1`, `--shadow-xs-2`,
`--shadow-sm`, `--shadow-md` and `--shadow-lg` (tailwind.config.js
`boxShadow`), and its accent focus ring from `--stroke-accent-focus`.
None of those names existed in the light theme: the same values were
exposed only under palette-style names (`shadow-blue-500-alpha-20`,
`shadow-grey-1000`, `stroke-focus-blue`), which the kit never looks up.
Every shadow and the accent-focus outline therefore fell back to the
hardcoded defaults baked into the kit and could not be themed.
Values match the kit's own fallbacks, so rendering is unchanged:
- shadow-xs-1 #2764D933 (= shadow-blue-500-alpha-20)
- shadow-xs-2 #161B2D08 (= shadow-grey-1000)
- shadow-sm #2764D914 (= shadow-blue-500-alpha-8)
- shadow-md #2764D90F (6% blue-500; the nearest existing alias
shadow-blue-500-alpha-4 is 4%, so it was
not an exact match)
- shadow-lg #2764D914 (= shadow-blue-500-alpha-8)
- stroke-accent-focus #6785FB (= stroke-focus-blue)
Additive only — no existing key is renamed or removed, so consumers
still reading the palette-style names keep working.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
PolinaGurinovich97
requested review from
Alexander-Kezik and
denys-kolomiitsev
as code owners
September 14, 2026 16:04
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
@epam/ai-dial-ui-kitreads six colour tokens that the light theme never defined:--shadow-xs-1boxShadow.xsshadow-blue-500-alpha-20--shadow-xs-2boxShadow.xsshadow-grey-1000--shadow-smboxShadow.smshadow-blue-500-alpha-8--shadow-mdboxShadow.mdshadow-blue-500-alpha-4is 4%, kit wants 6%)--shadow-lgboxShadow.lgshadow-blue-500-alpha-8--stroke-accent-focusborderColorsstroke-focus-blueThe theme exposed the values under palette-style names, which the kit never looks up. Result: every shadow step and the accent focus ring in the light theme silently fell back to the hardcoded defaults compiled into the kit — a host could not retheme them.
Found by diffing
themes[id=light].colorsagainst the CSS variables referenced by the kit'stailwind.config.js, excluding the deprecated*ColorsToRemovesets.Change
Six keys added to
themes[id=light].colors:Values are taken from the kit's own fallbacks, so rendering is unchanged — this only moves the shadow scale and accent focus ring from hardcoded to themable.
shadow-mdis the one value with no exact existing alias (6% vs the 4% ofshadow-blue-500-alpha-4); it follows the kit.Compatibility
Purely additive — no key renamed or removed. Consumers still reading
shadow-blue-500-alpha-*,shadow-grey-1000orstroke-focus-blueare unaffected.Not included
Five kit variables remain undefined in the light theme, all deliberately — each is a second-level fallback whose primary name is already present:
--bg-control-accent-gradient-from/-to/-hover-from/-active-to→ primaries--bg-gradient-1/-2(+ hover/active) are defined.--bg-control-neutral-hover→ primary--bg-control-neutral-hover-mutedis defined, anddevelopmentremoved this alias on purpose in the 0.14.0 alignment.The dark theme is out of scope here: it is missing the whole 2.0 token layer (69 keys vs 142), which is a separate piece of work.
Verification
JSON.parseon the full file passes.🤖 Generated with Claude Code