Open
Description
Description
Addresses the final, or second phase, of our design token integration from #6558.
Majority of the effort will be performed in June and July, targeted for early August for additional documentation and pages for the September main release.
cc @alisonailea @jcfranco
Acceptance Criteria
- Token Studio and Style Dictionary are UTD with the most recent major release versions Convert Tokens to Style Dictionary 4 and Token Studio 1 #11391
- All relevant components have been refactored to use CSS variables which match component design tokens.
- Token Jam Session 01/12/2024
- Design Tokens Standup
- Tracking in Monday
- All relevant components have E2E tests to automate testing of token application. (remaining estimate 1-week)
- All relevant components have one been added to the custom theme Chromatic test page to visually confirm token application. (remaining estimate 1 day)
- All relevant components pass final QA (remaining estimate 5 days)
- Design confirmation design-tokens are in alignment between Figma and Web platforms.
- Design tokens: Refactor for alignment across the design system #9524 (remaining estimate < 1 day)
- @alisonailea, @ashetland, and @SkyeSeitz to do final review of component tokens names to confirm pattern alignment. (remaining estimate 1 day)
- Engineering confirmation that tokens work does not cause breaking changes in Calcite-Components (remaining estimate > 1 day)
- @DitwanP and @geospatialem to do manual check of all themed demos on a local instance in all major browsers to confirm tokens are applied correctly to the component.
- Docs confirmation (remaining estimate > 1 day)
- Each token as a CSS Custom Property/CSS Variable is listed in the relevant Calcite Component
.scss
file as a JSDocs@prop "token name": "description"
- Each token listed in the component's JSDoc section is used in the component code.
- Each token listed in the component's JSDoc section is listed in the e2e tests under "themed"
- If a CSS Variable is deprecated, it should be noted in the JSDoc as
@prop "token name": [Deprecated] Use "new token name" instead. "description"
- If a CSS Variable is deprecated, it should be noted in the JSDoc as
- Confirm any CSS Variables listed as deprecated are tested in E2E tests under a
describe("deprecated", () => {})
section
- Each token as a CSS Custom Property/CSS Variable is listed in the relevant Calcite Component
- Design confirmation design-tokens are in alignment between Figma and Web platforms.
Relevant Info
- Component Token Developer Docs
- For specific component issues, we can use the
design-tokens
label. - add your name and status next to component you're working on (start with
high
❗ priority components)
Components
- Global tokens - verified by KH on 10/30/24 ✔️
-
accordion-item
@alisonailea merged - 2.12.0 ✔️- Expose CSS variable to style accordion item header in active state #4060
- feat(accordion-item): style accordion item header in expanded state #10181 merged - 2.13.0 ✔️
- calcite-accordion-item content padding #4012
- Note: this is a 2-part request with tokens and default component styling
-
accordion
@alisonailea merged - 2.12.0 ✔️ -
action-bar
@alisonailea merged - 2.12.0 ✔️ -
action-group
@alisonailea merged - 2.12.0 ✔️ -
action-menu
@alisonailea merged - 2.12.0 ✔️ -
action-pad
@alisonailea merged - 2.12.0 ✔️ -
action
@alisonailea merged - 2.12.0 and 2.13.0 verified by KH on 9/24/24 ✔️ -
alert
@aPreciado88 merged - 2.13.0 - verified by DP on 9/26/24 ✔️ -
avatar
high
❗ @alisonailea merged - 2.13.0 - verified by DP on 9/26/24 ✔️ -
block-section
@Elijbet merged - 3.0.0 -KH follow-up with EK on--calcite-block-section-background-color
on 12/27/24 creating [block-section] Make gap around header uniform when outline offset is applied. #11175 ✔️ -
block
@Elijbet merged - 3.0.0 KH follow-up with EK on--calcite-block-header-text-color
on 1/14/25 ✔️ -
button
high
❗ @alisonailea merged -3.0.0
verified by KH on 2/6/25 ✔️- feat(button): add component tokens #10358
- PR - feat(button): add component tokens #10358 waiting for VRT
- Required for split-button
- feat(button, fab): add component tokens #8922
-
card
@alisonailea merged - 2.13.0 - verified by DP on 9/26/24 ✔️ -
card group
@alisonailea merged - 2.13.0 - verified by DP on 9/26/24 ✔️ -
checkbox
@aPreciado88 merged - 2.13.0 - verified by DP on 9/26/24 ✔️ -
chip-group
@alisonailea _merged - 2.13.0 - verified by DP on 9/27/24 (Follow-up question) ✔️ -
chip
@alisonailea merged - 2.13.0 - verified by DP on 9/27/24 (Resulted in this issue for patch release) ✔️ -
color-picker-hex-input
~ not applicable -
not applicablecolor-picker-swatch
-
color-picker
-
combobox-item-group
_installed- 3.1.0-next.27 @anveshmekala verified by KH on 3/25/25 ✔️ -
combobox-item
_installed- 3.1.0-next.27 @anveshmekala verified by KH on 3/25/25 ✔️ -
combobox
_installed- 3.1.0-next.27 @anveshmekala verified by KH on 3/25/25 ✔️ -
date-picker-day
installed -3.0.0-next.130 @anveshmekala verified by KH on 2/6/25 ✔️ -
date-picker-month-header
installed -3.0.0-next.130 @anveshmekala verified by KH on 2/6/25 ✔️ -
date-picker-month
installed -3.0.0-next.130 @anveshmekala verified by KH on 2/6/25 ✔️ -
date-picker
installed -3.0.0-next.130 @anveshmekala verified by KH on 2/6/25 ✔️ -
dialog
high
❗ -
dropdown-group
high
❗ @alisonailea - PR installed for3.1
feat(dropdown): add component tokens #11465 - verified by KH on 2/12/25 with3.1.0-next.1
✔️- Required for split-button
-
dropdown-item
high
❗@alisonailea - PR installed for3.1
feat(dropdown): add component tokens #11465 - verified by KH on 2/12/25 with3.1.0-next.1
✔️- Required for split-button
-
dropdown
high
❗@alisonailea - PR installed for3.1
feat(dropdown): add component tokens #11465 - verified by KH on 2/12/25 with3.1.0-next.1
✔️- Required for split-button
-
fab
- feat(fab): add component tokens #11838 @Elijbet _merged @3.2.0-next.1
-
filter
- @driskull feat(filter): add component tokens #11885 verified by DP on 4/30/25 -
flow-item
@driskull merged feat(flow, flow-item): add component tokens #11365 _verified with `3.0.3 by KH on 2/24/25 ✔️ -
flow
@driskull merged feat(flow, flow-item): add component tokens #11365 verified with `3.0.3 by KH on 2/24/25 ✔️ -
graph
@driskull feat(graph): add component tokens #11355 verified by DP on 4/30/25 -
handle
@Elijbet - merged 2.13.0 verified by KH on 9/25/24 ✔️ -
icon
@alisonailea - merged - 2.12.0 verified by DP on 11/25/24 ✔️ -
inline-editable
@driskull feat(inline-editable): add component tokens #11357 verified by KH on 02/06/25 ✔️ -
input-date-picker
-
input-message
verified by DP on 4/30/25 -
input-number
@anveshmekala -
input-text
-
input-time-picker
-
input
high
❗@macandcheese merged 3.0.0 verified by KH on 1/14/25 ✔️- Provide CSS variable for input placeholder color #8967
- [Input] Allow customization of prefix-text and suffix-text width #8688
- Allow for rounding of inputs by variable #8673
- [Tokens Epic] Restore Input corner-radius behavior #9083
- input with slotted content (e.g. calcite-button) has a mismatch of component heights when root-font size has changed #7411
- Placeholder text in all Inputs and Text Area does not pass AA #10361
-
label
@driskull feat(label): add component tokens #10688 verified by DP on 11/25/24 ✔️ -
link
@driskull feat(link): add component tokens #10689 verified by DP on 11/25/24 ✔️ -
list-item-group
@driskull feat(list, list-item, list-item-group): add component tokens #10669 verified by DP on 11/25/24 ✔️ -
list-item
@driskull feat(list, list-item, list-item-group): add component tokens #10669 verified by DP on 11/25/24 ✔️ -
list
@driskull feat(list, list-item, list-item-group): add component tokens #10669 verified by DP on 11/25/24 ✔️ -
loader
high
❗@DitwanP merged 3.0.0-next.61 - verified by KH on 12/13/24 ✔️ -
menu-item
high
❗ @anveshmekala merged 3.0.0-next.92 - verified by KH on 1/14/25 ✔️ -
menu
high
❗ @anveshmekala ( no tokens required ) - verified by KH on 1/14/25 ✔️ -
meter
@macandcheese feat(meter): Add component tokens #11757 -
navigation-logo
high
❗ @anveshmekala _merged 3.0.0-next.23 verified by DP on 11/25/24 ✔️ -
navigation-user
high
❗ @anveshmekala _merged 3.0.0-next.23 verified by DP on 11/25/24 ✔️ -
navigation
high
❗ @anveshmekala _merged 3.0.0-next.0 verified by DP on 11/25/24 ✔️ -
notice
@Elijbet _merged 3.0.0-next.91 verified by KH on 1/14/25 ✔️ -
pagination
@aPreciado88 merged - 3.0.0 verified by KH on 1/14/25 ✔️ -
panel
high
❗@macandcheese _merged PR verified by DP on 11/25/24 ✔️- Separate background color variables for the calcite-dialog would be very helpful #8614
- [Panel] Add
-space
css properties forheader-content
slot #8907 - [Panel] Add themeable tokens for
corner-radius
#8675 - Panel: should a collapsed panel's header have a border bottom? #8726
- Panel: tokens to target header actions not working #11491
- feat(dialog, panel): Add css properties for background-color #10387
-
popover
@Elijbet - merged 2.13.0 - verified by KH on 9/24/24 ✔️ -
progress
@Elijbet - merged 2.13.0 - verified by KH on 9/24/24 ✔️ -
radio-button
- @driskull feat(radio-button): add component tokens #11891 -
radio-button-group
- @driskull feat(radio-button-group): add component tokens #11897 -
rating
@aPreciado88 merged - 3.0.0 verified by KH on 1/14/25 ✔️ -
scrim
feat(scrim): Add component tokens #8662 verified by KH on 2/6/25 ✔️ -
segmented-control-item
@driskull feat(segmented-control, segmented-control-item): add component tokens #11359 verified by KH on 2/6/25 ✔️ -
segmented-control
@driskull feat(segmented-control, segmented-control-item): add component tokens #11359 verified by KH on 2/6/25 ✔️ -
select
@aPreciado88 merged - 3.0.0 verified by KH on 1/14/25 ✔️ - sheet @driskull feat(sheet): add component tokens #12023
-
(deprecated)shell-center-row
-
shell-panel
- @driskull feat(shell-panel): add component tokens #11926 -
shell
- @driskull feat(shell): add component tokens #11908 -
slider
high
❗ @DitwanP verified by DP on 11/25/24 ✔️ - Split-Button: Add component design tokens #11210
split-button
@alisonailea with feat(split-button): add component tokens #11474- Requires button, dropdown, dropdown-item, and dropdown-group
- Add round property to Split Button #7458
- Dropdown width css var isn't being applied in the Split Button #9227
-
stepper-item
@aPreciado88 - In progress -
stepper
@aPreciado88 - In progress -
switch
high
❗ @driskull feat(switch): add component tokens #10647 verified by DP on 11/25/24 ✔️ -
tab-nav
@aPreciado88 merged 3.2.0-next.7 -
tab-title
@aPreciado88 merged 3.2.0-next.7 -
tab
@aPreciado88 merged 3.2.0-next.7 -
table
@macandcheese -
tabs
@aPreciado88 merged 3.2.0-next.7 -
text-area
high
❗ @benelan merged2.13.0
- verified by KH on 9/27/24 ✔️ -
tile
@eriklharper merged3.0.0
verified by DP on 11/25/24 ✔️ -
time-picker
- @driskull feat(time-picker): add component tokens #11942 -
tooltip
@driskull feat(tooltip): add component tokens #10687 verified by DP on 11/25/24 ✔️ -
tree-item
@DitwanP feat(tree, tree-items): add component tokens #11884 verified by DP on 4/30/25 ✔️ -
tree
@DitwanP verified by DP on 4/30/25 ✔️ -
future deprecated)tip-manager
(feat(tip-manager): add component tokens #8782 -
(deprecated)modal
-
not applicableoption-group
-
not applicableoption
-
pick-list-group
(deprecated) -
pick-list-item
(deprecated) -
pick-list
(deprecated) -
stack
-
(future deprecated bytile-select-group
tile-group
) -
(future deprecated bytile-select
tile-group
) -
(future deprecated))tip-group
(8781 -
future deprecated)tip
(feat(tip): add component tokens #8641 -
(deprecated)value-list-item
-
(deprecated)value-list
- functional
- ExpandToggle
- FloatingArrow - Note: tooltip and popover will need adjustments for the floating arrow.
- Heading
- XButton
Example Use Case
/**
* CSS Custom Properties
*
* These properties can be overridden using the component's tag as selector.
*
* @prop --calcite-my-component-background-color: Specifies the background color of the component.
* @prop --calcite-el-color-background: [Deprecated] Use `--calcite-my-component-background-color` instead. Specifies the background color of the component.
* @prop --calcite-my-component-icon-color: Specifies the color of the icon sub-component.
*/
div {
background-color: var(--calcite-my-component-background-color, var(--calcite-el-color-background, var(--calcite-color-brand)));
}
// calcite-icon
.icon {
--calcite-icon-color: var(--calcite-my-component-icon-color, var(--calcite-color-brand));
}
describe("theme", () => {
describe("default", () => {
themed(`calcite-my-component`, {
"--calcite-my-component-background-color": {
shadowSelector: `div`,
targetProp: "backgroundColor",
},
"--calcite-my-component-icon-color": {
shadowSelector: `.${CSS.icon}`,
targetProp: "--calcite-icon-color",
},
});
});
describe("deprecated", () => {
themed(`calcite-my-component`, {
"--calcite-el-color-background": {
shadowSelector: `div`,
targetProp: "backgroundColor",
},
});
});
});
Priority impact
impact - p2 - want for an upcoming milestone
Esri team
Calcite (design)
Metadata
Metadata
Assignees
Labels
Issues that are actively being worked on.Issues logged by Calcite designers.Issues requiring design tokens.Issues tied to a new feature or request.Large scale issues to be broken up into sub-issues and tracked via sprints and/or project.Requires planning and input from team, consider smaller steps.User set priority impact status of p2 - want for an upcoming milestoneIssue should be addressed in the current milestone, impacts component or core functionality