Changelog
Unreleased
Section titled βUnreleasedβ6.3.2 (2026-07-30)
Section titled β6.3.2 (2026-07-30)β- π [reset] restore the legacy Bootstrap responsive grid tiers (
.col-sm-*β¦.col-xl-*) inside.tng-legacy-apply. 6.3.1 re-applied only the base.col-1β¦.col-12; because@layerorder is resolved before specificity and media queries, that base.col-12 { max-width: 100% }(in theapply-legacylayer) outranked the clientlibβs@media β¦ { .col-lg-3 { max-width: 25% } }and collapsed every responsive column to full width β a legacy dealer/map grid stacked instead of sitting side by side.apply.cssnow re-declares the.col-{sm,md,lg,xl}-*widths in that same layer so they override the base at each breakpoint
6.3.1 (2026-07-30)
Section titled β6.3.1 (2026-07-30)β- π [reset] restore the legacy Bootstrap
.col-1β¦.col-12grid inside.tng-legacy-apply. The container/grid reset started reverting those classes (so they canβt leak onto ourcol-*span utilities), but the symmetric re-apply was never added β a legacy component using thecol-*grid collapsed to unstyled columns when wrapped in.tng-legacy-apply.apply.cssnow re-declares the clientlib grid values so nested legacy components keep their original layout
6.3.0 (2026-07-29)
Section titled β6.3.0 (2026-07-29)β- β¨ [media-button] apply the Lexus copper gradient to the progress arc and the hover / active ring. The resting button keeps its flat grey ring; on Lexus the swept progress arc and the ring on hover / active both paint copper, reusing the shared
--tng-color-border-gradient-*tokens the rectangular gradient borders draw from, so arc and ring resolve one colour and share one outer edge (hover recolours the ring without thickening it). The circular ring is alinear-gradientmasked into an annulus β nobackground-clip: border-areaβ so it renders in every browser; contrast uses the copper-200 β copper-500 stops. Also fixes the recipeβs play / pause toggle so.tng-iconhonours[hidden] - ποΈ [icon] move
ai-sparklefrom the operations category to technology
6.2.0 (2026-07-17)
Section titled β6.2.0 (2026-07-17)β- β¨ [segmented-control] add a pure-CSS, zero-JS segmented control β a single-select group built on a native
<fieldset>+ same-name<input type="radio">segments, so grouping, single-select, roving arrow-key navigation and the accessible name come from the platform (no ARIA, no JS). The selected / hover / disabled / focus looks key off:has(input:*); ships.is-sm/.is-md/.is-lgsizes, an icon-only.is-iconvariant, neutral /.is-contrastschemes, and equal-width 2β5 segments. Quarantine
6.1.0 (2026-07-16)
Section titled β6.1.0 (2026-07-16)β- β¨ [gradient] add brand-aware gradient strokes & fills β paint a brandβs stroke or fill as a colour gradient instead of a flat swatch, animated restedβhover. Lexus copper auto-applies to secondary / tertiary borders, the selected EV tab, and the slider EV track; the
.tng-gradient-borderhook and.border-secondary/.border-secondary-emphasis/.border-evutilities opt any element in; brands with no bespoke stops get a gradient derived from their secondary accent - π [field] stop the button-control label floating to the top under load
- π [typography]
.tng-text-body(and siblings) no longer set a background β the token was never set, so it resolved totransparentand clobbered the.tng-schemebackground - π₯ [icon] remove the duplicate Lexus
ai-sparkleicon (kept elsewhere in the set) - β¬οΈ update figma tokens (14.0.0)
- π¦ [package] figma-tokens is build-time inlined into the CSS and moved to
devDependencies, so the published styleguide is self-contained and no longer pulls@tmedxp/figma-tokensinto consumersβ dependency trees
6.0.0 (2026-07-10)
Section titled β6.0.0 (2026-07-10)β- β¨ [container] add
.tng-container-v2β an opt-in full-width page frame with responsive side margins (20/40/56/80/96px at base/sm/md/lg/xl), no max-width, and the.tng-container-fullbleedhelper to reach the viewport edge. Pair it with the separate.tng-gridprimitive for a full-width, 12-column page layout; the default.tng-containerstays the centred/capped wrapper - π₯ [responsiveness] realign breakpoints to the shared grid tiers β
sm576β390,lg992β1024,xl1200β1440,2xl1600β1920 (mdunchanged); the3xlbreakpoint and its.hidden-3xl*display utilities are dropped - β¨ [tabs] add a tab picker semantic β wrap a native
<input type="radio">in a.tng-tabs-item<label>and the tab strip becomes a single-select radio group; the selected / disabled / focus looks key off:has(input:*)and the radio is visually hidden but stays focusable, so it needs no JS and no ARIA. The existing tab panel is unchanged - β¨ [grid] add
.tng-gridβ a fresh, self-contained 12-column grid for laying columns out inside components/cards; children place with thecol-*span utilities. Theis-2-up/is-3-upmodifiers make it responsive (stack on mobile, snap to N-up frommd/lg), and an explicitcol-*on a child opts it out as a full-width feature cell. Supersedes the legacy.tng-simple-grid - β¨ [grid] add
col-*column-span utilities β numericcol-1βcol-12plus named fractions (col-half,col-1-third,col-2-third,col-1-fourth,col-3-fourth) for placing children on a.tng-grid; siblings auto-flow, so spans that sum to 12 tile a row with no explicit positioning - β¨ [container] expose
--tng-container-inline-sizeon the.tng-container-v2frame (the content width β viewport minus margins) for descendants that need to fit the page content area, with avar(β¦, fallback)for when theyβre used standalone - π [field] fix Chrome autofill β the input now fits the controlβs border box so the autofill background no longer bleeds past the border
- β»οΈ [responsiveness] remove the unused
--tng-viewport-size-*custom properties
Container
Section titled βContainerβ.tng-container is unchanged β the default centred, max-width-capped wrapper (1140px / 1440px). Alongside it, .tng-container-v2 is a new opt-in full-width page frame: a full-browser-width block whose only job is the responsive side margin β 20 / 40 / 56 / 80 / 96px at base / sm / md / lg / xl β that keeps content off the viewport edges. It has no max-width and draws no columns; the 12-column rhythm lives in the separate .tng-grid primitive you nest inside.
Adopt the full-width grid by opting into .tng-container-v2 and nesting a .tng-grid, placing children with col-* spans:
<div class="tng-container-v2"> <div class="tng-grid"> <div class="col-8">main</div> <div class="col-4">aside</div> </div></div>Edge-to-edge content inside the frame uses the standalone .tng-container-fullbleed helper (it composes onto a child at any depth). The default .tng-container keeps its .is-fullbleed child modifier for the same intent.
Breakpoints & display utilities
Section titled βBreakpoints & display utilitiesβThe breakpoint values were realigned to designβs shared grid tiers (ADR 0003). The two-letter token vocabulary (sm / md / lg / xl / 2xl) is unchanged β only the widths move β so any consumer reading a --tng-breakpoint-* token or a --tng-media-gte-* custom-media picks up the new trigger points automatically, and the display utilities (.hidden-sm, .hidden-lg, β¦) now switch at the new widths:
| Tier | Old | New |
|---|---|---|
xs |
375px | β (default) |
sm |
576px | 390px |
md |
768px | 768px (unchanged) |
lg |
992px | 1024px |
xl |
1200px | 1440px |
2xl |
1600px | 1920px |
There are no classes to rename, but audit any layout that depends on a specific switch point β a .hidden-lg block now hides from 1024px instead of 992px, and sm-gated styles now begin at 390px instead of 576px.
The 3xl band is gone
Section titled βThe 3xl band is goneβ2xl (1920px) is now the topmost band. The 3xl breakpoint β its --tng-breakpoint-3xl token, the --tng-media-gte-3xl custom-media, and the .hidden-3xl, .hidden-3xl-only and .hidden-no-3xl display utilities β is removed with no replacement. Because there is no wider band for it to reappear in, .hidden-2xl-only now behaves identically to .hidden-2xl; prefer the latter:
<div class="hidden-2xl-only">β¦</div><div class="hidden-2xl">β¦</div>The spacing scaleβs 3xl step (.gap-3xl, .pb-3xl, β¦) is a separate scale and is untouched.
5.8.0 (2026-07-29)
Section titled β5.8.0 (2026-07-29)β- β¨ [media-button] apply the Lexus copper gradient to the progress arc and the hover / active ring. The resting button keeps its flat grey ring; on Lexus the swept progress arc and the ring on hover / active both paint copper, reusing the shared
--tng-color-border-gradient-*tokens the rectangular gradient borders draw from, so arc and ring resolve one colour and share one outer edge (hover recolours the ring without thickening it). The circular ring is alinear-gradientmasked into an annulus β nobackground-clip: border-areaβ so it renders in every browser; contrast uses the copper-200 β copper-500 stops. Also fixes the recipeβs play / pause toggle so.tng-iconhonours[hidden] - ποΈ [icon] move
ai-sparklefrom the operations category to technology
5.7.0 (2026-07-17)
Section titled β5.7.0 (2026-07-17)β- β¨ [segmented-control] add a pure-CSS, zero-JS segmented control β a single-select group built on a native
<fieldset>+ same-name<input type="radio">segments, so grouping, single-select, roving arrow-key navigation and the accessible name come from the platform (no ARIA, no JS). The selected / hover / disabled / focus looks key off:has(input:*); ships.is-sm/.is-md/.is-lgsizes, an icon-only.is-iconvariant, neutral /.is-contrastschemes, and equal-width 2β5 segments. Quarantine
5.6.1 (2026-07-16)
Section titled β5.6.1 (2026-07-16)β- π₯ [icon] remove the duplicate Lexus
ai-sparkleicon (kept elsewhere in the set) - β¬οΈ update figma tokens (14.0.0)
5.6.0 (2026-07-15)
Section titled β5.6.0 (2026-07-15)β- β¨ [tabs] add a tab picker semantic β wrap a native
<input type="radio">in a.tng-tabs-item<label>and the tab strip becomes a single-select radio group; the selected / disabled / focus looks key off:has(input:*)and the radio is visually hidden but stays focusable, so it needs no JS and no ARIA. The existing tab panel is unchanged - β¨ [gradient] add brand-aware gradient strokes & fills β paint a brandβs stroke or fill as a colour gradient instead of a flat swatch, animated restedβhover. Lexus copper auto-applies to secondary / tertiary borders, the selected EV tab, and the slider EV track; the
.tng-gradient-borderhook and.border-secondary/.border-secondary-emphasis/.border-evutilities opt any element in; brands with no bespoke stops get a gradient derived from their secondary accent - π [field] stop the button-control label floating to the top under load
- π [field] fix autofill
- π [typography]
.tng-text-body(and siblings) no longer set a background β the token was never set, so it resolved totransparentand clobbered the.tng-schemebackground - π¦ [package] figma-tokens is build-time inlined into the CSS and moved to
devDependencies, so the published styleguide is self-contained and no longer pulls@tmedxp/figma-tokensinto consumersβ dependency trees
5.5.1 (2026-07-03)
Section titled β5.5.1 (2026-07-03)β- π©Ή [reset] target app-root children instead of the root element
- π©Ή [legacy] fix heading selector
5.5.0 (2026-07-01)
Section titled β5.5.0 (2026-07-01)β- β»οΈ [package] inline component tokens β per-component entries move to
{brand}/components/*(alsoforms,cards) with the brandβs tokens baked in; the brand-neutralcomponents/*,forms/*,cards/*entries anddependencies.jsonare removed - β»οΈ [field] merge
control+fieldinto one component - β»οΈ [field] name the component
field; control classes are nowtng-field-control*(oldtng-control*kept as compat aliases) - β¬οΈ update figma tokens
5.4.0 (2026-06-25)
Section titled β5.4.0 (2026-06-25)β- β¨ [package] add chunked exports
- β¨ [chat-messages] add component
- β¨ [chip] add suggestion variant
- π [chip] use active tokens
- π [alert] fix header typography
- π [carousel] fix control typography
- β¬οΈ update figma tokens
5.3.0 (2026-06-23)
Section titled β5.3.0 (2026-06-23)β- β¨ [label] add component
- β¨ [model-card] add component
- β¨ [varia] add
.tng-no-touch-target - β»οΈ [list] use label component
- π [date-picker] remove selected hover button token
- β¬οΈ update figma tokens
The powertrain subtitle marker now uses the new Label component (.tng-label.is-blue) instead of a bare <em>. The .tng-list-powertrain styles are unchanged, so existing markup keeps working β but new code should reach for the Label component.
<em> <i class="tng-icon icon-plug-droplet"></i> <span>Powertrain</span></em><span class="tng-label is-blue"> <i class="tng-icon icon-plug-droplet" aria-hidden="true"></i> <span>Powertrain</span></span>5.2.2 (2026-06-18)
Section titled β5.2.2 (2026-06-18)β5.2.1 (2026-06-17)
Section titled β5.2.1 (2026-06-17)β- π [popover] fix contrast background
- π [accordion] improve group spacings
- β¬οΈ update figma tokens
5.2.0 (2026-06-17)
Section titled β5.2.0 (2026-06-17)β- β¨ [skeleton] add component
- π [accordion] improve group spacings
- π [count-indicator] fix RTL icons
- π add font-family sans-serif fallback
5.1.0 (2026-06-08)
Section titled β5.1.0 (2026-06-08)β- β¨ [frame] support iframe and picture
- β¨ [divider] add edge start/end variants
- π [content] set default foreground
- π [popover] fix arrow gap
- π fix flex column childrenβs inline sizing
- β¬οΈ update figma tokens
5.0.0 (2026-05-27)
Section titled β5.0.0 (2026-05-27)β- π₯ β¨ [count-indicator] rework component
- π [popover] simplify contrast surface
- β¬οΈ update figma tokens
Count indicator
Section titled βCount indicatorβThe dots pagination has been removed. The component is now an inline flex wrapper around an optional label pill (.tng-count-indicator-label) and any combination of .tng-icon-button siblings. The internal layout sub-elements β .tng-count-indicator-helper, .tng-count-indicator-dots, .tng-count-indicator-buttons β are gone; mark up the label and icon buttons as direct children of .tng-count-indicator.
<div class="tng-count-indicator"> <div class="tng-count-indicator-helper">1 of 6</div> <div class="tng-count-indicator-dots"> <div class="is-current"></div> <div></div> <div></div> <div></div> <div></div> <div></div> </div> <div class="tng-count-indicator-buttons"> <button class="tng-icon-button is-sm" aria-label="Previous"> <i class="tng-icon icon-chevron-left" aria-hidden="true"></i> </button> <button class="tng-icon-button is-sm" aria-label="Next"> <i class="tng-icon icon-chevron-right" aria-hidden="true"></i> </button> </div> <span class="tng-count-indicator-label">1 of 6</span> <button class="tng-icon-button is-sm" aria-label="Previous"> <i class="tng-icon icon-chevron-left" aria-hidden="true"></i> </button> <button class="tng-icon-button is-sm" aria-label="Next"> <i class="tng-icon icon-chevron-right" aria-hidden="true"></i> </button></div>The label may sit at the start, in the middle, or at the end of the wrapper; spacing adapts to its position. Its block size tracks the sibling .tng-icon-button size (.is-xs, .is-sm, .is-md, .is-lg), so the label and buttons stay aligned without manual sizing.
4.0.2 (2026-05-22)
Section titled β4.0.2 (2026-05-22)β4.0.1 (2026-05-19)
Section titled β4.0.1 (2026-05-19)β- π [button] fix primary border
4.0.0 (2026-05-19)
Section titled β4.0.0 (2026-05-19)β- π₯ β¬οΈ update figma tokens
- π₯ π [social-media-button] rename from
social-share-button - β¨ [icon-button] add xs size
- β¨ [chip] add on-image variant
- β¨ [border] add soft, primary-emphasis and secondary-emphasis utilities
- β»οΈ [stepper] use new tokens
Social media button
Section titled βSocial media buttonβThe component class has been renamed to align with the Figma component name.
<button class="tng-social-button tng-social-media-button"> <span class="tng-icon icon-facebook"></span></button>.tng-social-button is kept as a backwards-compatible alias of .tng-social-media-button.
The Figma tokens upgrade renames several token custom properties. Consumers that reference styleguide classes are unaffected; if you read tokens directly:
- Variant / scheme order swapped on icon-button tokens:
--tng-buttons-icon-button-{variant}-{scheme}-*becomes--tng-buttons-icon-button-{scheme}-{variant}-*(e.g.--tng-buttons-icon-button-filled-neutral-rested-fill-colorβ--tng-buttons-icon-button-neutral-filled-rested-fill-color). disabled-background-coloris nowdisabled-fill-coloron chips and on the secondary main buttonβs contrast scheme.
3.2.0 (2026-05-11)
Section titled β3.2.0 (2026-05-11)β- β¨ [asset-download] implement
- β¨ [split-content] implement
- β¨ [alternate-content] implement module
- β¨ [divider] add has-edge modifier
- π [media-button] fix icon sizes
- π [chip] remove textbox trim
3.1.0 (2026-05-07)
Section titled β3.1.0 (2026-05-07)β- [popover] fix chrome
- β¨ [media-button] implement
- π [content] improve
- β¬οΈ update figma tokens
3.0.0 (2026-05-04)
Section titled β3.0.0 (2026-05-04)β- π remove root container
- π [content] fix some typography
- π₯ β¨ [divider] remove ev / sizes
- π [list] fix plain list typography
- β¨ [assets] add assets
- β¨ restructure pages
Divider
Section titled βDividerβEV removed
Section titled βEV removedβThe EV styles have been removed.
<div class="tng-divider is-ev"></div>Contrast
Section titled βContrastβThe primary color no longer switches to contrast mode.
Intrinsic sizing has been removed. You have to add your own sizing declaration if you need any size other than 100%.
<header class="tng-stack"> <h2 class="mbe-4xl | tng-text-title is-5">Title Heading</h2> <div class="tng-divider is-primary" style="inline-size: 40px"></div></header>Title Heading
2.3.0 (2026-04-22)
Section titled β2.3.0 (2026-04-22)β- π [size] update stretch to 100%
- π [carousel] update documentation
- π update drafts
- π₯ clean up badges < 2 months
- β¨ [chip] implement
- π [carousel] fix prefers-reduced-motion
- π₯ [carousel] remove recipe custom types
- π₯ [overflow] remove unneeded property
2.2.4 (2026-04-12)
Section titled β2.2.4 (2026-04-12)β- π [toggle] input shrink 0
- π [stepper] fix label
- π [checkbox] input shrink 0
- π [radio] input shrink 0
- π [size] fix size-full on firefox/webkit
- β¬οΈ update figma tokens
2.2.3 (2026-04-10)
Section titled β2.2.3 (2026-04-10)β- π [size] fix size-full on firefox/webkit
- π update DX playbook domains
- β¨ [carousel] implement
- β‘οΈ [cds] contain layout paint
2.2.2 (2026-04-08)
Section titled β2.2.2 (2026-04-08)β2.2.1 (2026-04-07)
Section titled β2.2.1 (2026-04-07)β- π± [stepper] improve mobile / tablet
- π [icon] fix non-monochrome icon examples
- π [z-index] improve example
- π [background] fix decorative backgrounds
- β¨ [overflow] hide scroll bars within indicators
- π [control] fix control button focus outline
2.2.0 (2026-03-26)
Section titled β2.2.0 (2026-03-26)β- π [modal] fix maximum on small viewport
- β¨ [date-picker] implement
2.1.0 (2026-03-25)
Section titled β2.1.0 (2026-03-25)β- β¨ [stepper] implement
- β¨ update figma tokens
- π [tabs] add number label example
- β¨ [overflow] improve indicators
- π [cds] fix inset demo
- π [count-indicator] review documentation
2.0.0 (2026-03-17)
Section titled β2.0.0 (2026-03-17)β- π [modal] fix chrome close render flash
- π [control] review
- β¨ [z-index] add above
- β»οΈ [focus] review
- π₯ [control] remove is-valid variant
- β¨ [radio] implement
- β¨ [checkbox] implement
- β¨ [simple-card] implement
- π align forms with figma
- π₯ π restructure exports
Exports
Section titled βExportsβThe exports have a breaking change in this release.
| Export | Before | After |
|---|---|---|
assets.css |
none | Export assets |
styles.css |
Export styles + assets | Export styles |
no-icons.css |
Export styles | none |
Meaning we now have mutually exclusive exports for styles and assets.
1.3.0 (2026-03-05)
Section titled β1.3.0 (2026-03-05)β- π [usage] improve layers documentation
- π rename
tng-boxtotng-scheme - β»οΈ remove
tng-boxreliance - π clean up documentation
- β»οΈ [color-utilities] refactor out custom properties
- β¨ [layouts] add flex nowrap
- β»οΈ [position] refactor out custom properties
- β»οΈ [layouts] refactor out custom properties
- π [modal] remove unused background color
- π©Ή [position] donβt assume size
- β»οΈ [spacing] refactor out custom properties
- β»οΈ [elevation] refactor out custom property
- π [cds] fix selector
1.2.0 (2026-03-04)
Section titled β1.2.0 (2026-03-04)β- β¨ [platform-badge] add platform badges
- β»οΈ [figma] render dedicated text styles variables
- π [figma] fix content
- π [figma] render box border size
- π [cds] render dimension fallback
- π [figma] tweak components
- π [figma] review documentation
- π [buttons] align cross-topic button structure
- π· [gh] non-prod always builds preview mode
- π [apply] re-apply revert
1.1.1 (2026-02-25)
Section titled β1.1.1 (2026-02-25)β- π [figma] add radio button documentation
- π [figma] add input field documentation
- π [figma] add sticky bottom bar documentation
- π [figma] group forms documentation
- π [figma] add checkbox documentation
- π [figma] add stepper documentation
- π [figma] add tag documentation
- π [figma] add popover documentation
- π [figma] add tabs documentation
- π [figma] add modal documentation
- π [figma] add list documentation
- π [figma] add slider documentation
- π [figma] add dropdown documentation
- π [figma] add count indicator documentation
- π [figma] add divider documentation
- π [figma] add link documentation
- π [figma] add social media button documentation
- π [figma] add pill button documentation
- π [figma] add icon button documentation
- π [figma] add main button documentation
- π [figma] add backdrop documentation
- π [cds] add agent figma component mapping documentation
- π [figma] review accordion documentation
- π [link] document sizes
- π [figma] review typography documentation
- π [figma] review color documentation
- π [revert] set
initialfor inherited properties
1.1.0 (2026-02-25)
Section titled β1.1.0 (2026-02-25)β- π± [cds] responsive hero
- π [cds] update brand select to buttons
- π [cds] tweak titles
- π [reset] document
.tng-legacy-apply - π [cds] expand utility documentation
- β¨ [z-index] add semantic stacking
- β¨ [slider] implement slider
- π [cds] fix markdown li max-inline-size
1.0.1 (2026-02-24)
Section titled β1.0.1 (2026-02-24)β- π©Ή [cds] disable RTL / dark mode for now
- π [cds] redesign splash hero
- π₯ [cds] remove GitHub links
- π§ͺ [count-indicator] add visual tests
- π [sticky-bottom-bar] fix documentation demo
- π [cds] increase content width
- π [cds] pluralize foundations
- π [cds] tweak components
- π [cds] use own tokens
- π [cds] hide related pages on splash page
- β¨ [cds] switch logos with theme select
- π [cds] donβt structure content around teams
- π₯ [cds] remove archive
1.0.0 (2026-02-20)
Section titled β1.0.0 (2026-02-20)β- βΏοΈ prefer
aria-labeloversr-only - βΏοΈ improve recipe a11y
- β¨ [checkbox] add fieldset / reset
- π expand a11y documentation
- π [sticky-bottom-bar] add module and recipe
- β¨ [count-indicator] update implementation
- β¨ add
aemglobalCSS layer - π [count-indicator] rename pagination to count indicator
0.31.0 (2026-02-18)
Section titled β0.31.0 (2026-02-18)β- π₯ β»οΈ [list] deprecate internal dividers
- π [usage] add CSS layers caveats
- π [varia] add focus documentation
- π align color utilities
- π« document and implement consistent animations
- π©Ή [reset] improve border box
- π₯ β»οΈ [accordion] use divider component
- π [tabs] fix overflow gradient
- π₯ β»οΈ [box] refactor surface into box and utlities
- π₯ [stroke] deprecate
- π [list] fix padding on interactive control
- β¨ introduce related pages
Surface β‘οΈ Box
Section titled βSurface β‘οΈ BoxβWe used to have a Surface foundations core component that could handle some things like backgrounds and borders. Now we have implemented color utilities for background, border, and foreground.
These utilities include all semantic tokens for backgrounds, surfaces, and fills. Consequently the component needed to be renamed.
Accordion / List Dividers
Section titled βAccordion / List DividersβThe Accordion and List components no longer have their own with dividers variant. All divider responsibility is now handled by the Divider component.
<div class="tng-stack | tng-has-dividers"> <details class="tng-accordion has-divider"> <summary class="tng-accordion-trigger"> <span>Personal information</span> <i class="tng-icon icon-chevron-down" aria-hidden="true"></i> </summary> <p class="tng-text-body"> Your personal information is kept private and secure. </p> </details></div>Deprecate .stroke-β¦
Section titled βDeprecate .stroke-β¦βThe stroke classes have been removed from the documentation a long time ago but have remained in the styles.
Use (eg.) .border-xs in favour of stroke-xs.
0.30.0 (2026-02-10)
Section titled β0.30.0 (2026-02-10)β- β¨ [dropdown] implement control
- β¨ [field/control] implement
- β»οΈ [text-box] remove default display
- π [modal] fix at maximum sizing
- β¨ [icons] add ISO
List Option
Section titled βList OptionβIt used to be list options still require a lot of manual styles to position its contents. The List Option now can handle leading/trailing icons and interactive content.
<li class="tng-list-option"> <a href="#"> <i aria-hidden="true" class="tng-icon icon-car is-md"></i> <span>Option</span> <i aria-hidden="true" class="tng-icon icon-chevron-right tng-rtl-flip-x" ></i> </a> <i aria-hidden="true" class="tng-icon icon-chevron-right tng-rtl-flip-x"></i></li>If you want your whole list option to be interface (a / button) make sure to have all icons inside of the element. The list option will delegate its layout rendering to its interactive child.
<li class="tng-list-option"> <a href="#"> <i aria-hidden="true" class="tng-icon icon-car is-md"></i> <span>Option</span> <i aria-hidden="true" class="tng-icon icon-chevron-right tng-rtl-flip-x" ></i> </a> <i aria-hidden="true" class="tng-icon icon-chevron-right tng-rtl-flip-x"></i></li>0.29.2 (2026-02-13)
Section titled β0.29.2 (2026-02-13)β- π [icons] move ai-search to brandless
0.29.1 (2026-02-11)
Section titled β0.29.1 (2026-02-11)β- π [modal] fix at maximum sizing
0.29.0 (2026-02-04)
Section titled β0.29.0 (2026-02-04)β- π± [modal] improve small viewports
- π [modal] document overflow
- β¨ [list] add select list with links
- π [figma] add accordion component documentation
- π [figma] add foundations typography documentation
- π [figma] add foundations color documentation
- β¨ add token descriptions
0.28.1 (2026-02-02)
Section titled β0.28.1 (2026-02-02)β- π©Ή [button] rename pill active state to selected
- β¬οΈ bump figma tokens
0.28.0 (2026-01-30)
Section titled β0.28.0 (2026-01-30)β- β¨ [popover] add backdrop
0.27.2 (2026-01-29)
Section titled β0.27.2 (2026-01-29)β0.27.1 (2026-01-29)
Section titled β0.27.1 (2026-01-29)β- π [popover] fix close button RTL
0.27.0 (2026-01-28)
Section titled β0.27.0 (2026-01-28)β- β¨ [button] finish pill button
- π [button] fix icon button border color states
- β¨ [icons] add UI pause / spinner
0.26.5 (2026-01-27)
Section titled β0.26.5 (2026-01-27)β- π [button] remove main tertiary inline padding
0.26.4 (2026-01-27)
Section titled β0.26.4 (2026-01-27)β- π©Ή [root] apply automatically to Storybook
- π [modal] fixed maximized modal
0.26.3 (2026-01-26)
Section titled β0.26.3 (2026-01-26)β- π [table] fix color
0.26.2 (2026-01-26)
Section titled β0.26.2 (2026-01-26)β- π [table] fix inline size
- π [teams] update teams
- π [teams] spruce up page
0.26.1 (2026-01-22)
Section titled β0.26.1 (2026-01-22)β- π [modal] remove aria-modal true(scroll lock)
0.26.0 (2026-01-16)
Section titled β0.26.0 (2026-01-16)β- π [modal] fix touch target interop
- π [RTL] document flip X utility
- π [modal] fix and automate scroll lock
- π [modal] fix backdrop
- β¨ [varia] add focus-within utility
- π [toggle] fix RTL
- β¨ [varia] add touch target
- π update glossary
0.25.1 (2026-01-15)
Section titled β0.25.1 (2026-01-15)β- π· [icons] fix ICONS type array literal
- π [icons] fix categories
- π· [icons] expose categories
- π [icons] document import path change
- π« [modal] fix close transition
0.25.0 (2026-01-14)
Section titled β0.25.0 (2026-01-14)β- π [accordion] fix webkit render
- π©Ή [icons] optimize
- π· [icons] provide build without inlined icons
- π group form components
0.24.0 (2026-01-14)
Section titled β0.24.0 (2026-01-14)β0.23.0 (2026-01-13)
Section titled β0.23.0 (2026-01-13)β- π [table] fix overflow breaking
- π [table] fix font size
- π [table] fix header alignment
- π demo Georgian unicode range
- π [icon] fix operations view on / off
- π [icons] move to shared
- π [icons] fix rating star color
- π₯ [slot] make default variant implicit
- π₯ [popover] remove header element
- π₯ β¬οΈ bump figma tokens
- π [modal] fix scroll to top
- π [modal] fix Safari
- π [popover] document different parts
- π [popover] move shadow to outer element
- π§ͺ [popover] add title
The import paths for icons have changed.
import { ICONS, type Icon } from '@tmedxp/styleguide/toyota/icons';import { ICONS, type Icon } from '@tmedxp/styleguide/toyota';Or you can get the full namespace from either the root or the brand entry point.
import { Toyota } from '@tmedxp/styleguide';import * as Toyota from '@tmedxp/styleguide/toyota';let Toyota.ICONS: Toyota.Icon[];Popover
Section titled βPopoverβThe header element is not necessary anymore. The title can exists on its own and should be placed after the close icon, if present.
<div class="tng-popover-bubble"> <div class="tng-popover-header"> <div class="tng-text-title">${lorem0}</div> </div> <button class="tng-icon-button is-ghost" aria-label="Close"> <i class="tng-icon icon-close" aria-hidden="true"></i> </button> <div class="tng-text-title">${lorem0}</div> <p class="tng-text-body">${lorem2}</p></div>0.22.0 (2025-12-15)
Section titled β0.22.0 (2025-12-15)β- β¨ update divider implementation
- π [utilities] rename visibility to display
- π [typography] fix selection psuedo element
0.21.0 (2025-12-10)
Section titled β0.21.0 (2025-12-10)β- π [typography] update heading inferred sizes
- π [icons] fix branded icons
- β¨ add tabs component
- π§ͺ [visual test] add dir support
- π [rtl] fix issues
- β¨ add RTL toggle
- π₯ π rename
with-*tohas-* - π [text box] document
Breaking
Section titled βBreakingβ- List component modifier renamed
with-dividertohas-divider.
0.20.0 (2025-12-08)
Section titled β0.20.0 (2025-12-08)β- β¨ add accordion component
- β¨ update reset / root rendering
- π [content] fix heading typography
- β¨ implement energy labels
- π implement text box
- π₯ π [core] rename LexusType back to Nobel
- β»οΈ replace content hr with divider
- π₯ β¨ rework typography
Breaking
Section titled βBreakingβTypography
Section titled βTypographyβ- Typography has converged all its classes under
tng-text-bodyandtng-text-titleand switched to an ordinal scale. - Lexus font family has been renamed from βLexus Typeβ back to βNobelβ. Make sure to update your
@font-facedirectives.
0.19.0 (2025-12-03)
Section titled β0.19.0 (2025-12-03)β0.18.0 (2025-12-03)
Section titled β0.18.0 (2025-12-03)β- β¨ implement modal
- π fix maximum positioning demo
- π₯ β»οΈ rebrand placeholder as slot
- β¨ add select list
- π add checkbox list recipe
- π fix col/row gap usage
- β»οΈ rework focus reusage
- π₯ render tokens reference per brand
- π₯ update typography
- π¨ fix icons format
- π· auto deploy releases to prev
- π [icon] rotate toyota trade-cycle-management
- π fix icons reference UI and copy
- β¨ add CloseWatcher to tooltip recipe
- π add visual link button tests
- β¨ setup visual regression testing
Breaking
Section titled βBreakingβ- Figma tokens update (
^6 && ^7) has some small structural changes. tng-placeholderhas been renamed totng-slot.
0.17.0 (2025-11-24)
Section titled β0.17.0 (2025-11-24)β- β¨ add explicit default classes
- π₯ β»οΈ prefix internal components
- π [button] fix lexus borders
- π₯ β¨ [popover] add border
- π [popover] fix contrast styles
- π [popover] fix typography
- π [link] remove default padding
Breaking
Section titled βBreakingβPopover
Section titled βPopoverβThe HTML structure for popover has been updated.
<div class="tng-popover"> <div class="arrow"></div> <div class="header"> <!-- --> </div> <p class="tng-text-body"> <!-- --> </p></div><div class="tng-popover"> <div class="tng-popover-arrow"></div> <div class="tng-popover-header"> <!-- --> </div> <div class="tng-popover-bubble"> <p class="tng-text-body"> <!-- --> </p> </div></div>0.16.0 (2025-11-20)
Section titled β0.16.0 (2025-11-20)β- π document primitive tokens
- β¨ finish icon button
- π₯ β¨ finish link / link button
- π [button] expand overflow documentation
- β¨ finish social media button
- π merge recipes into components
- β¨ [button] add overflow constraints
Breaking
Section titled βBreakingβtng-text-link has been renamed to tng-link.
0.15.0 (2025-11-19)
Section titled β0.15.0 (2025-11-19)β- π rename modules to recipes
- π [content] fix blockquote contrast scheme
- β¨ implement popover
- β»οΈ move schemes to mixin
- π add teams structure
- π©Ή [alert] simplify demo
- π§βπ» [surface] add release note
0.14.1 (2025-11-17)
Section titled β0.14.1 (2025-11-17)β0.14.0 (2025-11-14)
Section titled β0.14.0 (2025-11-14)β- π§βπ» add token values to reference
- π₯ π§βπ» merge border utilities
- β»οΈ update tokens reference
- π move changelog into reference guide
- π₯ β»οΈ merge box and scheme into surface
- π₯ β¨ add margin utilities
Breaking
Section titled βBreakingβstroke-<size> has been renamed to border-<size>.
Surface
Section titled βSurfaceβtng-box and tng-scheme have been merged into tng-surface.
- Thereβs no default padding anymore, add
p-mdto add the old default. - Thereβs no default text styling mixin anymore. Add
tng-text-bodyor which-ever typography class you want to the element or any of its children.
We have added margin utilities analog to the existing padding utilities.
- Margin can be applied to the Wrapper layout component.
- Padding can be applied to the Surface (previously Box) core component.
- The
is-centeredvariant is removed from the Wrapper layout component. You can use the margin utilitymi-autonow.
0.13.0 (2025-11-13)
Section titled β0.13.0 (2025-11-13)β- π split AEM / React documentation
- β¨ rework tokens
Breaking
Section titled βBreakingβRenamed tokens
Section titled βRenamed tokensβ- All primitive font tokens (
--tng-font-*) have been heavily restructured. - All semantic color tokens (
--tng-(border|foreground|surface)-*) have been heavily restructured. - All component tokens (
--tng-(buttons)-*) have been heavily restructured. is-dangeris renamed tois-errorto match the terminology of the tokens.(is|on)-inverseis renamed to(is|on)-contrastto match the terminology of the tokens.
0.12.2 (2025-11-06)
Section titled β0.12.2 (2025-11-06)β- π explicit icon scheme support
- π improve list styles
- πΈ enhance animations on no preferred motion
- β»οΈ tweak styleguide export
0.12.1 (2025-11-05)
Section titled β0.12.1 (2025-11-05)β- π fix icons export types
0.12.0 (2025-11-04)
Section titled β0.12.0 (2025-11-04)β- β¨ align font families, subfamiles and weights document icon differences
0.11.0 (2025-10-30)
Section titled β0.11.0 (2025-10-30)β- π Updated and restructured documentation
- π Rename CSS layer
tng.modulestotng.userstyles - β¨ add list component
- β¨ Added icons from scratch from Figma