Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
7b4e080
[SQUASHED] Mega-squash of all the previous commits on this feature br…
didoo Jun 30, 2026
e589864
[TEMP] added temporary changeset to trigger publishing of release can…
didoo Jun 29, 2026
2f0dc51
[Project Solar / Phase 1 / Follow-up] Replace static `var(--token)` v…
didoo Jun 30, 2026
a9d82e7
[Project Solar / Phase 2 / Tokens renaming] Rename `--hds-***` CSS va…
didoo Jul 2, 2026
5d69967
[Project Solar / Phase 1 / Migration] Fix dropdown item focus ring (#…
dchyun Jul 2, 2026
26692e3
[Project Solar / Phase 2 / Tokens renaming] Update tokens pipeline to…
didoo Jul 6, 2026
1e65e44
[Project Solar / Phase 2 / Tokens renaming] components/showcase/websi…
didoo Jul 6, 2026
cddfd8e
Add preliminary carbonization theme styles and tokens for TextInput, …
KristinLBradley Jun 5, 2026
2419586
Fix linting error
KristinLBradley Jun 5, 2026
47ff60d
Change form-control-padding token back to a single token, add min-hei…
KristinLBradley Jun 5, 2026
accf7c1
Update tokens and styles for Text Input states
KristinLBradley Jun 5, 2026
93b65e2
Comment out Field examples in TextInput Carbonization showcase, remov…
KristinLBradley Jun 12, 2026
cadf2e5
Refactor TextInput to wrap input element with a span tag, add Carbon …
KristinLBradley Jun 15, 2026
1c675b6
Add new token for disabled placeholder color and update naming for de…
KristinLBradley Jun 15, 2026
7654e5f
Add examples of Field control to TextInput Carbonization Showcase
KristinLBradley Jun 15, 2026
1949f57
center the visibility toggle icon vertically within text-input wrappe…
KristinLBradley Jun 17, 2026
7251f07
Add new form-text-input-date-time-width token and clean up scss
KristinLBradley Jun 17, 2026
d3250a3
Hide browser default date & time icons in disabled inputs in carbon t…
KristinLBradley Jun 17, 2026
1657e01
Add new background images for carbonized time, date, and search input…
KristinLBradley Jun 19, 2026
8c7ec71
Use pseudo element for search icon to enable color masking, update po…
KristinLBradley Jun 22, 2026
f85f707
Fix icon sizing and positioning
KristinLBradley Jun 22, 2026
e444b0e
Fix coloring of disabled search icon, clean up & simplify nested stru…
KristinLBradley Jun 22, 2026
3de3b77
Add styling for search cancel button themes, remove some Showcase Car…
KristinLBradley Jun 24, 2026
8a1cc2b
Make improvements to spacing for search cancel icon, add TODOs for so…
KristinLBradley Jun 24, 2026
fa5ac57
Start adding hard-coded fill colors to some Input icon SVGs to replac…
KristinLBradley Jun 25, 2026
cbb8fc0
Rewrite selectors to not be dependant on nested DOM structure to fix …
KristinLBradley Jun 25, 2026
f41f333
Apply suggestions from code review
KristinLBradley Jun 25, 2026
29e3089
Simplify styling for TextInput icons, update related tokens, delete i…
KristinLBradley Jun 25, 2026
c338a7d
Make adjustments to carbonized TextInput widths, hover styles for bor…
KristinLBradley Jun 25, 2026
21c2231
Add carbonization showcase page with preliminary examples for FileInput
KristinLBradley Jun 25, 2026
74680c5
Refactor button styles mixin to add mixins for states, add carbon the…
didoo Jul 6, 2026
26ac92f
Add preliminary carbonization Showcase for Checkbox
KristinLBradley Jun 30, 2026
035300c
Add tokens and additional carbon theme styles for Checkbox, update Ch…
KristinLBradley Jun 30, 2026
6436a24
Add FormSelect carbonization showcase and carbon themes, update token…
KristinLBradley Jul 1, 2026
589f4df
Update focus outline offset for Select carbon themes and consolidate …
KristinLBradley Jul 1, 2026
53ba184
Revert order of TextInput types back to previous order
KristinLBradley Jul 1, 2026
d5feabb
Fix missing background image value in FileInput token
KristinLBradley Jul 2, 2026
a3728b3
Add back missing background image value in FileInput token
KristinLBradley Jul 2, 2026
b4048e9
Fix incorrect token name for search background
KristinLBradley Jul 2, 2026
106b8af
Preliminary carbonization Showcase for FormRadio component
KristinLBradley Jul 2, 2026
efad639
Refactor design tokens shared between Checkbox and Radio controls, ad…
KristinLBradley Jul 3, 2026
9c11c3f
Add new tokens for Radio background colors, fix issues with SVG backg…
KristinLBradley Jul 6, 2026
d92a828
Add carbonization showcase page for Textarea, add Textarea carbon the…
KristinLBradley Jul 7, 2026
f603604
Fix alphabetical ordering of Showcase links
KristinLBradley Jul 7, 2026
56e8bf5
Add MaskedInput Carbonization Showcase and preliminary rough theming …
KristinLBradley Jul 7, 2026
6763f59
Regenerate files in output
KristinLBradley Jun 5, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 5 additions & 0 deletions .changeset/eleven-women-worry.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@hashicorp/design-system-components": patch
---

Replaced all internal usage of `--token` with `--hds` prefix across all the HDS components' files (no visual impact on the components)
5 changes: 5 additions & 0 deletions .changeset/loud-pants-return.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@hashicorp/design-system-tokens": major
---

Updated prefix for all CSS and Sass tokens (from `token` to `hds`)
10 changes: 10 additions & 0 deletions .changeset/rotten-trains-hear.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
"@hashicorp/flight-icons": minor
"@hashicorp/design-system-components": minor
---

<!-- START components/icon -->
`Icon`
- Changed the way that icons are loaded in from sprite, to dynamic importing and generation at runtime
- Added support for loading Carbon icons when the user is using a Carbon theme
<!-- END -->
112 changes: 112 additions & 0 deletions .changeset/twenty-ads-travel.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
---
"@hashicorp/design-system-components": major
---

<!-- START components/accordion -->
`Accordion` - Changed the component CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-accordion-item-button-focus-ring-inset-hds` β†’ `hds-var-accordion-item-button-focus-ring-inset-hds`
- `hds-accordion-item-content-padding-bottom` β†’ `hds-var-accordion-item-content-padding-bottom`
- `hds-accordion-item-content-padding-left` β†’ `hds-var-accordion-item-content-padding-left`
- `hds-accordion-item-content-padding-right` β†’ `hds-var-accordion-item-content-padding-right`
- `hds-accordion-item-content-padding-top` β†’ `hds-var-accordion-item-content-padding-top`
- `hds-accordion-item-toggle-gap` β†’ `hds-var-accordion-item-toggle-gap`
- `hds-accordion-item-toggle-icon-size` β†’ `hds-var-accordion-item-toggle-icon-size`
- `hds-accordion-item-toggle-padding-bottom` β†’ `hds-var-accordion-item-toggle-padding-bottom`
- `hds-accordion-item-toggle-padding-left` β†’ `hds-var-accordion-item-toggle-padding-left`
- `hds-accordion-item-toggle-padding-right` β†’ `hds-var-accordion-item-toggle-padding-right`
- `hds-accordion-item-toggle-padding-top` β†’ `hds-var-accordion-item-toggle-padding-top`
<!-- END -->

<!-- START components/table/advanced-table -->
`AdvancedTable` - Changed the component CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-advanced-table-sticky-column-offset` β†’ `hds-var-advanced-table-sticky-column-offset`
<!-- END -->

<!-- START components/app-footer -->
`AppFooter` - Changed the component CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-app-footer-status-icon-color` β†’ `hds-var-app-footer-status-icon-color`
<!-- END -->

<!-- START components/app-side-nav -->
`AppSideNav` - Changed the component CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-app-side-nav-animation-delay` β†’ `hds-var-app-side-nav-animation-delay`
- `hds-app-side-nav-animation-duration` β†’ `hds-var-app-side-nav-animation-duration`
- `hds-app-side-nav-animation-easing` β†’ `hds-var-app-side-nav-animation-easing`
- `hds-app-side-nav-toggle-button-width` β†’ `hds-var-app-side-nav-toggle-button-width`
- `hds-app-side-nav-width-expanded` β†’ `hds-var-app-side-nav-width-expanded`
- `hds-app-side-nav-width-fixed` β†’ `hds-var-app-side-nav-width-fixed`
- `hds-app-side-nav-width-minimized` β†’ `hds-var-app-side-nav-width-minimized`
<!-- END -->

<!-- START components/code-block -->
`CodeBlock` - Changed the component CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-code-block-color-{property}` β†’ `hds-var-code-block-color-{property}`
<!-- END -->

<!-- START components/flyout -->
`Flyout` - Changed the component CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-app-side-nav-width-minimized` β†’ `hds-var-app-side-nav-width-minimized`
<!-- END -->

<!-- START components/form -->
`Form` - Changed the component CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-form-section-max-width` β†’ `hds-var-form-section-max-width`
- `hds-form-section-multi-field-group-item-width` β†’ `hds-var-form-section-multi-field-group-item-width`
<!-- END -->

<!-- START components/form/key-value-inputs -->
`KeyValueInputs` - Changed the component CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-key-value-inputs-column-index` β†’ `hds-var-key-value-inputs-column-index`
- `hds-key-value-inputs-columns` β†’ `hds-var-key-value-inputs-columns`
<!-- END -->

<!-- START components/form/super-select -->
`SuperSelect` - Changed the component CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-form-super-select-dropdown-max-width` β†’ `hds-var-form-super-select-dropdown-max-width`
- `hds-form-super-select-selected-text` β†’ `hds-var-form-super-select-selected-text`
- `hds-form-super-select-selected-text-display` β†’ `hds-var-form-super-select-selected-text-display`
<!-- END -->

<!-- START components/stepper/nav -->
`Stepper Nav` - Changed the component CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-stepper-nav-progress-bar-width` β†’ `hds-var-stepper-nav-progress-bar-width`
<!-- END -->

<!-- START components/tag -->
`Tag` - Changed the component CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-tag-focus-ring-inset-left-cds` β†’ `hds-var-tag-focus-ring-inset-left-cds`
- `hds-tag-focus-ring-inset-right-cds` β†’ `hds-var-tag-focus-ring-inset-right-cds`
<!-- END -->

<!-- START layouts/flex -->
`Flex` - Changed the layout CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-layout-flex-column-gap` β†’ `hds-var-layout-flex-column-gap`
- `hds-layout-flex-row-gap` β†’ `hds-var-layout-flex-row-gap`
<!-- END -->

<!-- START layouts/grid -->
`Grid` - Changed the layout CSS custom property prefix from `--hds-*` to `--hds-var-*`.
- `hds-layout-grid-column-fill-type` β†’ `hds-var-layout-grid-column-fill-type`
- `hds-layout-grid-column-gap` β†’ `hds-var-layout-grid-column-gap`
- `hds-layout-grid-column-min-width` β†’ `hds-var-layout-grid-column-min-width`
- `hds-layout-grid-column-span` β†’ `hds-var-layout-grid-column-span`
- `hds-layout-grid-column-span-lg` β†’ `hds-var-layout-grid-column-span-lg`
- `hds-layout-grid-column-span-md` β†’ `hds-var-layout-grid-column-span-md`
- `hds-layout-grid-column-span-sm` β†’ `hds-var-layout-grid-column-span-sm`
- `hds-layout-grid-column-span-xl` β†’ `hds-var-layout-grid-column-span-xl`
- `hds-layout-grid-column-span-xxl` β†’ `hds-var-layout-grid-column-span-xxl`
- `hds-layout-grid-column-width-lg` β†’ `hds-var-layout-grid-column-width-lg`
- `hds-layout-grid-column-width-md` β†’ `hds-var-layout-grid-column-width-md`
- `hds-layout-grid-column-width-sm` β†’ `hds-var-layout-grid-column-width-sm`
- `hds-layout-grid-column-width-xl` β†’ `hds-var-layout-grid-column-width-xl`
- `hds-layout-grid-column-width-xxl` β†’ `hds-var-layout-grid-column-width-xxl`
- `hds-layout-grid-row-gap` β†’ `hds-var-layout-grid-row-gap`
- `hds-layout-grid-row-span` β†’ `hds-var-layout-grid-row-span`
- `hds-layout-grid-row-span-lg` β†’ `hds-var-layout-grid-row-span-lg`
- `hds-layout-grid-row-span-md` β†’ `hds-var-layout-grid-row-span-md`
- `hds-layout-grid-row-span-sm` β†’ `hds-var-layout-grid-row-span-sm`
- `hds-layout-grid-row-span-xl` β†’ `hds-var-layout-grid-row-span-xl`
- `hds-layout-grid-row-span-xxl` β†’ `hds-var-layout-grid-row-span-xxl`
<!-- END -->

_This was a one-off mechanical rename in `@hashicorp/design-system-components`. Consumers consuming or overriding HDS CSS variables will need to update `--hds-*` references to `--hds-var-*`._
7 changes: 7 additions & 0 deletions .changeset/wise-ties-tie.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
"@hashicorp/design-system-components": major
"@hashicorp/design-system-tokens": major
"@hashicorp/flight-icons": major
---

TEMP - Used to trigger publishing of release candidate packages
52 changes: 52 additions & 0 deletions copilot-plans/hds-tokens-replacement/START-HERE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Start Here β€” `--token-*` β†’ `--hds-*` Replacement

This folder holds the third step of the HDS token naming-convention effort:
replacing all `--token-*` CSS custom property usages with `--hds-*` across Ember
codebases that consume HDS design tokens.

The work is split into three separate AI sessions, each with a clean context.

## Phase 1 β€” Author the initial prompt βœ… done

- File: `initial-prompt.md`
- This is the finished specification for the plan. It is self-contained: it holds
the rename rule, safety/idempotency constraints, exclusions, target environments,
deliverables, expected plan structure, and the HDS pilot/validation context.

## Phase 2 β€” Generate the plan (do this next, in a FRESH session)

Start a new chat session (clean context) so the model reasons from the finished
prompt, not from the exploratory history that produced it. Kickoff message:

> Read `copilot-plans/hds-tokens-replacement/initial-prompt.md` in full. It is the
> specification for a plan you must generate. Follow its "Plan Structure Expected"
> and "Deliverables to Plan" sections. Before writing anything, ask me clarifying
> questions on anything low-confidence. Then generate the plan as file(s) under
> `copilot-plans/hds-tokens-replacement/` β€” Markdown for human-readable content,
> JSON/CSV only where strictly needed for execution data. Do NOT execute the
> migration yet.

Iterate on the plan the same way the initial prompt was iterated: review, request
changes, repeat. Remember the prompt's rule β€” the plan is the durable, portable
knowledge artifact; fold every new learning back into the plan file(s).

Expected output: a `generated-plan.md` (plus any `session-kit/` and `tooling/`
files the plan itself defines).

## Phase 3 β€” Execute the plan (later, in another FRESH session)

Once the plan is approved, run it in a separate clean session (or ask the AI to).
Then review the Git diff, refine the plan/tooling for any gap, `git restore` the
changed files, and re-run until the outcome is clean.

## Workflow reminders

- Lint may be run freely (`pnpm lint`, `pnpm lint:fix`). Do NOT run the test suite
from the agent β€” ask the user to run it and report back.
- The tooling must be idempotent: every re-run from a clean checkout yields the same
diff.
- Keep reusable transform logic separate from repo-specific config (roots,
extensions, exclusion globs) so it ports to the next repo with minimal changes.
- Indirect `token-` prefix coupling in JS/TS/GTS logic is NOT auto-fixed β€” it is
annotated with a `TODO [HDS-TOKEN-RENAMING]` marker for manual review after the
run.
Loading