Campus Design System (CDS) Tokens Documentatie β
Introductie β
De Campus Design System (CDS) tokens zijn een verzameling ontwerpvariabelen die zorgen voor consistentie in je applicaties. Als onderdeel van het Campus Experience System (CXS) vormen deze tokens de basis van een uniforme ontwerptaal. Ze zijn toegankelijk via het @diekeure/cds-tokens pakket en kunnen worden gebruikt in zowel SCSS als CSS.
Hoe tokens te gebruiken β
In SCSS β
Om tokens in SCSS te gebruiken, importeer je het pakket en gebruik je de get functie:
@use '@diekeure/cds-tokens' as cds;
:host {
animation-duration: cds.get('cds.sys.motion.duration.short-3');
color: rgb(cds.get('cds.sys.color.primary'));
padding: cds.get('cds.sys.spacing.m');
}In CSS β
Om tokens in CSS te gebruiken, gebruik je de custom property (CSS variabele) syntax:
.element {
animation-duration: var(--cds-sys-motion-duration-short-3);
color: rgb(var(--cds-sys-color-primary));
padding: var(--cds-sys-spacing-m);
}Token Structuur β
Tokens volgen een gestructureerde naamgevingsconventie die hun doel en gebruik verduidelijkt. Voor een gedetailleerde uitleg over de opbouw van tokens, zie onze Design Tokens documentatie.
Referentie vs Systeem Tokens β
Er zijn twee hoofdtypen tokens:
Referentie Tokens (
cds.ref.*): Dit zijn basiswaarden waarnaar andere tokens verwijzen. Ze kunnen niet direct in componenten worden gebruikt en dienen alleen als basis voor systeemtokens.Systeem Tokens (
cds.sys.*): Dit zijn de tokens die je in je componenten moet gebruiken. Ze bieden semantische betekenis en zorgen voor consistentie in je applicatie.
Kleur tokens β
| Token | Fallback | Voorbeeld |
|---|---|---|
cds.sys.color.brand | cds.ref.palette.primary.70 | |
cds.sys.color.background | cds.ref.palette.neutral.98 | |
cds.sys.color.on-background | cds.ref.palette.neutral.10 | |
cds.sys.color.surface | cds.ref.palette.neutral.100 | |
cds.sys.color.on-surface | cds.ref.palette.neutral.10 | |
cds.sys.color.on-surface-variant | cds.ref.palette.neutral-variant.40 | |
cds.sys.color.surface-variant | cds.ref.palette.neutral-variant.90 | |
cds.sys.color.surface-container-lowest | cds.ref.palette.neutral.98 | |
cds.sys.color.surface-container-low | cds.ref.palette.neutral.96 | |
cds.sys.color.surface-container | cds.ref.palette.neutral.94 | |
cds.sys.color.surface-container-high | cds.ref.palette.neutral.92 | |
cds.sys.color.surface-container-highest | cds.ref.palette.neutral.90 | |
cds.sys.color.surface-inverse | cds.ref.palette.neutral.20 | |
cds.sys.color.on-surface-inverse | cds.ref.palette.neutral.95 | |
cds.sys.color.primary | cds.ref.palette.primary.40 | |
cds.sys.color.on-primary | cds.ref.palette.primary.100 | |
cds.sys.color.primary-container | cds.ref.palette.primary.90 | |
cds.sys.color.on-primary-container | cds.ref.palette.primary.30 | |
cds.sys.color.primary-fixed | cds.ref.palette.primary.90 | |
cds.sys.color.on-primary-fixed | cds.ref.palette.primary.10 | |
cds.sys.color.primary-fixed-dim | cds.ref.palette.primary.80 | |
cds.sys.color.on-primary-fixed-variant | cds.ref.palette.primary.30 | |
cds.sys.color.primary-inverse | cds.ref.palette.primary.80 | |
cds.sys.color.secondary | cds.ref.palette.secondary.40 | |
cds.sys.color.on-secondary | cds.ref.palette.secondary.100 | |
cds.sys.color.secondary-container | cds.ref.palette.secondary.90 | |
cds.sys.color.on-secondary-container | cds.ref.palette.secondary.30 | |
cds.sys.color.secondary-fixed | cds.ref.palette.secondary.90 | |
cds.sys.color.on-secondary-fixed | cds.ref.palette.secondary.10 | |
cds.sys.color.secondary-fixed-dim | cds.ref.palette.secondary.80 | |
cds.sys.color.on-secondary-fixed-variant | cds.ref.palette.secondary.30 | |
cds.sys.color.tertiary | cds.ref.palette.tertiary.40 | |
cds.sys.color.on-tertiary | cds.ref.palette.tertiary.100 | |
cds.sys.color.tertiary-container | cds.ref.palette.tertiary.90 | |
cds.sys.color.on-tertiary-container | cds.ref.palette.tertiary.30 | |
cds.sys.color.tertiary-fixed | cds.ref.palette.tertiary.90 | |
cds.sys.color.on-tertiary-fixed | cds.ref.palette.tertiary.10 | |
cds.sys.color.tertiary-fixed-dim | cds.ref.palette.tertiary.80 | |
cds.sys.color.on-tertiary-fixed-variant | cds.ref.palette.tertiary.30 | |
cds.sys.color.error | cds.ref.palette.error.40 | |
cds.sys.color.on-error | cds.ref.palette.error.100 | |
cds.sys.color.error-container | cds.ref.palette.error.90 | |
cds.sys.color.on-error-container | cds.ref.palette.error.30 | |
cds.sys.color.warn | cds.ref.palette.warn.40 | |
cds.sys.color.on-warn | cds.ref.palette.warn.100 | |
cds.sys.color.warn-container | cds.ref.palette.warn.90 | |
cds.sys.color.on-warn-container | cds.ref.palette.warn.30 | |
cds.sys.color.success | cds.ref.palette.success.40 | |
cds.sys.color.on-success | cds.ref.palette.success.100 | |
cds.sys.color.success-container | cds.ref.palette.success.90 | |
cds.sys.color.on-success-container | cds.ref.palette.success.30 | |
cds.sys.color.highlight | cds.ref.palette.highlight.40 | |
cds.sys.color.on-highlight | cds.ref.palette.highlight.100 | |
cds.sys.color.highlight-container | cds.ref.palette.highlight.90 | |
cds.sys.color.on-highlight-container | cds.ref.palette.highlight.30 | |
cds.sys.color.ai | cds.ref.palette.ai.40 | |
cds.sys.color.on-ai | cds.ref.palette.ai.100 | |
cds.sys.color.ai-container | cds.ref.palette.ai.90 | |
cds.sys.color.on-ai-container | cds.ref.palette.ai.30 | |
cds.sys.color.stroke | cds.ref.palette.neutral-variant.50 | |
cds.sys.color.stroke-variant | cds.ref.palette.neutral-variant.80 | |
cds.sys.color.scrim | cds.ref.palette.neutral.0 | |
cds.sys.color.shadow | cds.ref.palette.neutral.0 | |
cds.sys.color.glass | cds.ref.palette.neutral.100 | |
cds.sys.color.ai-aura-start | cds.ref.palette.ai.100 | |
cds.sys.color.ai-aura-end | cds.ref.palette.ai.92 | |
cds.sys.color.ai-stroke-start | cds.ref.palette.ai.70 | |
cds.sys.color.ai-stroke-end | cds.ref.palette.ai.50 | |
cds.sys.color.ai-shadow | cds.ref.palette.ai.50 |
Spacing Tokens β
| Token | Fallback |
|---|---|
cds.sys.spacing.3xs | clamp(0,2rem, 0,19rem + 0,07vw, 0,25rem) |
cds.sys.spacing.2xs | clamp(0,41rem, 0,38rem + 0,13vw, 0,5rem) |
cds.sys.spacing.xs | clamp(0,61rem, 0,57rem + 0,2vw, 0,75rem) |
cds.sys.spacing.s | clamp(0,81rem, 0,76rem + 0,27vw, 1rem) |
cds.sys.spacing.m | clamp(1,22rem, 1,14rem + 0,4vw, 1,5rem) |
cds.sys.spacing.l | clamp(1,63rem, 1,52rem + 0,53vw, 2rem) |
cds.sys.spacing.xl | clamp(2,44rem, 2,28rem + 0,8vw, 3rem) |
cds.sys.spacing.2xl | clamp(3,25rem, 3,04rem + 1,07vw, 4rem) |
cds.sys.spacing.3xl | clamp(4,88rem, 4,56rem + 1,6vw, 6rem) |
cds.sys.spacing.none | 0 |
Shape Tokens (border-radius) β
| Token | Fallback |
|---|---|
cds.sys.shape.none | 0px |
cds.sys.shape.3xs | 1px |
cds.sys.shape.2xs | 2px |
cds.sys.shape.xs | 4px |
cds.sys.shape.s | 8px |
cds.sys.shape.m | 12px |
cds.sys.shape.l | 16px |
cds.sys.shape.xl | 28px |
cds.sys.shape.full | 9999px |
Motion Tokens β
| Token | Fallback |
|---|---|
cds.sys.motion.duration.short-1 | 50ms |
cds.sys.motion.duration.short-2 | 100ms |
cds.sys.motion.duration.short-3 | 150ms |
cds.sys.motion.duration.short-4 | 200ms |
cds.sys.motion.duration.medium-1 | 250ms |
cds.sys.motion.duration.medium-2 | 300ms |
cds.sys.motion.duration.medium-3 | 350ms |
cds.sys.motion.duration.medium-4 | 400ms |
cds.sys.motion.duration.long-1 | 450ms |
cds.sys.motion.duration.long-2 | 500ms |
cds.sys.motion.duration.long-3 | 550ms |
cds.sys.motion.duration.long-4 | 600ms |
cds.sys.motion.duration.extra-long-1 | 700ms |
cds.sys.motion.duration.extra-long-2 | 800ms |
cds.sys.motion.duration.extra-long-3 | 900ms |
cds.sys.motion.duration.extra-long-4 | 1000ms |
cds.sys.motion.duration.default | 350ms |
cds.sys.motion.ease.linear | cubic-bezier(0, 0, 1, 1) |
cds.sys.motion.ease.standard | cubic-bezier(0.2, 0, 0, 1) |
cds.sys.motion.ease.standard-accelerate | cubic-bezier(0.3, 0, 0, 1) |
cds.sys.motion.ease.standard-decelerate | cubic-bezier(0, 0, 0, 1) |
cds.sys.motion.ease.emphasized | cubic-bezier(0.2, 0, 0, 1) |
cds.sys.motion.ease.emphasized-accelerate | cubic-bezier(0.3, 0, 0.8, 0.15) |
cds.sys.motion.ease.emphasized-decelerate | cubic-bezier(0.05, 0.7, 0.1, 1) |
Elevation Tokens β
| Token | Fallback |
|---|---|
cds.sys.elevation.level.1 | 0px 1px 2px rgba(0, 0, 0, 0.3), 0px 1px 1px 1px rgba(0, 0, 0, 0.15) |
cds.sys.elevation.level.2 | 0px 1px 2px rgba(0, 0, 0, 0.3), 0px 2px 6px 2px rgba(0, 0, 0, 0.15) |
cds.sys.elevation.level.3 | 0px 1px 3px rgba(0, 0, 0, 0.3), 0px 4px 8px 3px rgba(0, 0, 0, 0.15) |
cds.sys.elevation.level.4 | 0px 1px 3px rgba(0, 0, 0, 0.3), 0px 6px 10px 4px rgba(0, 0, 0, 0.15) |
cds.sys.elevation.level.5 | 0px 1px 4px rgba(0, 0, 0, 0.3), 0px 8px 12px 6px rgba(0, 0, 0, 0.15) |
cds.sys.elevation.ai.level.1 | 0px 1px 2px rgba(38, 124, 188, 0.3), 0px 1px 1px 1px rgba(38, 124, 188, 0.15) |
cds.sys.elevation.ai.level.2 | 0px 1px 2px rgba(38, 124, 188, 0.3), 0px 2px 6px 2px rgba(38, 124, 188, 0.15) |
cds.sys.elevation.ai.level.3 | 0px 1px 3px rgba(38, 124, 188, 0.3), 0px 4px 8px 3px rgba(38, 124, 188, 0.15) |
cds.sys.elevation.ai.level.4 | 0px 1px 3px rgba(38, 124, 188, 0.3), 0px 6px 10px 4px rgba(38, 124, 188, 0.15) |
cds.sys.elevation.ai.level.5 | 0px 1px 4px rgba(38, 124, 188, 0.3), 0px 8px 12px 6px rgba(38, 124, 188, 0.15) |
Dimension Tokens β
| Token | Fallback |
|---|---|
cds.sys.dimension.base.3xs | 192px |
cds.sys.dimension.base.2xs | 256px |
cds.sys.dimension.base.xs | 320px |
cds.sys.dimension.base.s | 384px |
cds.sys.dimension.base.m | 448px |
cds.sys.dimension.base.l | 512px |
cds.sys.dimension.base.xl | 576px |
cds.sys.dimension.base.2xl | 672px |
cds.sys.dimension.base.3xl | 768px |
cds.sys.dimension.base.4xl | 896px |
cds.sys.dimension.base.5xl | 1024px |
cds.sys.dimension.base.6xl | 1152px |
cds.sys.dimension.base.7xl | 1280px |
cds.sys.dimension.container.max | 896px |
cds.sys.dimension.icon.2xs | 12px |
cds.sys.dimension.icon.xs | 16px |
cds.sys.dimension.icon.s | 20px |
cds.sys.dimension.icon.m | 24px |
cds.sys.dimension.icon.l | 32px |
cds.sys.dimension.icon.xl | 40px |
cds.sys.dimension.icon.2xl | 48px |
cds.sys.dimension.icon.3xl | 64px |
cds.sys.dimension.icon.4xl | 96px |
cds.sys.dimension.column.xs | 32px |
cds.sys.dimension.column.s | 48px |
cds.sys.dimension.column.m | 64px |
cds.sys.dimension.column.l | 96px |
cds.sys.dimension.column.xl | 128px |
cds.sys.dimension.column.2xl | 160px |
cds.sys.dimension.column.3xl | 192px |
cds.sys.dimension.column.4xl | 256px |
cds.sys.dimension.column.5xl | 320px |
cds.sys.dimension.column.6xl | 384px |
cds.sys.dimension.column.7xl | 448px |
cds.sys.dimension.row.xs | 32px |
cds.sys.dimension.row.s | 48px |
cds.sys.dimension.row.m | 56px |
cds.sys.dimension.row.l | 64px |
cds.sys.dimension.row.xl | 72px |
cds.sys.dimension.row.2xl | 80px |
cds.sys.dimension.row.3xl | 96px |
cds.sys.dimension.touch.target | 48px |
cds.sys.dimension.touch.content | 40px |
cds.sys.dimension.touch.content-min | 32px |
Opacity Tokens β
| Token | Fallback |
|---|---|
cds.sys.opacity.full | 1 |
cds.sys.opacity.high | 0,87 |
cds.sys.opacity.medium | 0,6 |
cds.sys.opacity.low | 0,38 |
cds.sys.opacity.disabled | 0,38 |
cds.sys.opacity.hover | 0,04 |
cds.sys.opacity.focus | 0,08 |
cds.sys.opacity.press | 0,12 |
cds.sys.opacity.drag | 0,16 |
cds.sys.opacity.none | 0 |
Filter Tokens β
| Token | Fallback |
|---|---|
cds.sys.filter.blur.none | 0px |
cds.sys.filter.blur.3xs | 1px |
cds.sys.filter.blur.2xs | 2px |
cds.sys.filter.blur.xs | 4px |
cds.sys.filter.blur.s | 8px |
cds.sys.filter.blur.m | 12px |
cds.sys.filter.blur.l | 16px |
cds.sys.filter.blur.xl | 24px |
cds.sys.filter.blur.2xl | 32px |
cds.sys.filter.blur.3xl | 64px |
Typografie Tokens β
π‘ Tip
Om snel typografie toe te passen, kan je gebruik maken van de font mixin van cds. Bv om een label large toe te passen op een css-class, gebruik je de mixin font met de parameter label-large.
@use '@diekeure/cds-tokens' as cds;
.label {
@include cds.font('label.large');
}Dit resulteert in css:
.label {
font-family: var(--cds-sys-typescale-label-large-brand, 'Open Sans');
font-size: var(--cds-sys-typescale-label-large-font-size, clamp(0.61rem, 0.57rem + 0.2vw, 0.75rem));
line-height: var(--cds-sys-typescale-label-large-line-height, clamp(0.81rem, 0.76rem + 0.27vw, 1rem));
font-weight: var(--cds-sys-typescale-label-large-font-weight, 500);
font-style: var(--cds-sys-typescale-label-large-font-style, normal);
letter-spacing: var(--cds-sys-typescale-label-large-tracking, 0.000625);
}| Token | Fallback |
|---|---|
cds.sys.typescale.display.large.font-size | clamp(2.44rem, 2.28rem + 0.8vw, 3rem) |
cds.sys.typescale.display.large.line-height | clamp(3.25rem, 3.04rem + 1.07vw, 4rem) |
cds.sys.typescale.display.large.tracking | -0.01625 |
cds.sys.typescale.display.large.brand | Asap |
cds.sys.typescale.display.large.weight | 600 |
cds.sys.typescale.display.medium.font-size | clamp(1.63rem, 1.52rem + 0.53vw, 2rem) |
cds.sys.typescale.display.medium.line-height | clamp(2.64rem, 2.47rem + 0.87vw, 3.25rem) |
cds.sys.typescale.display.medium.tracking | 0 |
cds.sys.typescale.display.medium.brand | Asap |
cds.sys.typescale.display.medium.weight | 600 |
cds.sys.typescale.display.small.font-size | clamp(1.42rem, 1.33rem + 0.47vw, 1.75rem) |
cds.sys.typescale.display.small.line-height | clamp(2.18rem, 2.03rem + 0.73vw, 2.69rem) |
cds.sys.typescale.display.small.tracking | 0 |
cds.sys.typescale.display.small.brand | Asap |
cds.sys.typescale.display.small.weight | 600 |
cds.sys.typescale.headline.large.font-size | clamp(1.22rem, 1.14rem + 0.4vw, 1.5rem) |
cds.sys.typescale.headline.large.line-height | clamp(2.03rem, 1.9rem + 0.67vw, 2.5rem) |
cds.sys.typescale.headline.large.tracking | 0 |
cds.sys.typescale.headline.large.brand | Asap |
cds.sys.typescale.headline.large.weight | 600 |
cds.sys.typescale.headline.medium.font-size | clamp(1.12rem, 1.05rem + 0.37vw, 1.38rem) |
cds.sys.typescale.headline.medium.line-height | clamp(1.83rem, 1.71rem + 0.6vw, 2.25rem) |
cds.sys.typescale.headline.medium.tracking | 0 |
cds.sys.typescale.headline.medium.brand | Asap |
cds.sys.typescale.headline.medium.weight | 600 |
cds.sys.typescale.headline.small.font-size | clamp(1.02rem, 0.95rem + 0.33vw, 1.25rem) |
cds.sys.typescale.headline.small.line-height | clamp(1.63rem, 1.52rem + 0.53vw, 2rem) |
cds.sys.typescale.headline.small.tracking | 0 |
cds.sys.typescale.headline.small.brand | Asap |
cds.sys.typescale.headline.small.weight | 600 |
cds.sys.typescale.title.large.font-size | clamp(0.91rem, 0.85rem + 0.31vw, 1.13rem) |
cds.sys.typescale.title.large.line-height | clamp(1.42rem, 1.33rem + 0.47vw, 1.75rem) |
cds.sys.typescale.title.large.tracking | 0 |
cds.sys.typescale.title.large.brand | Asap |
cds.sys.typescale.title.large.weight | 600 |
cds.sys.typescale.title.medium.font-size | clamp(0.81rem, 0.76rem + 0.27vw, 1rem) |
cds.sys.typescale.title.medium.line-height | clamp(1.22rem, 1.14rem + 0.4vw, 1.5rem) |
cds.sys.typescale.title.medium.tracking | 0 |
cds.sys.typescale.title.medium.brand | Asap |
cds.sys.typescale.title.medium.weight | 600 |
cds.sys.typescale.title.small.font-size | clamp(0.71rem, 0.66rem + 0.24vw, 0.88rem) |
cds.sys.typescale.title.small.line-height | clamp(1.02rem, 0.95rem + 0.33vw, 1.25rem) |
cds.sys.typescale.title.small.tracking | 0 |
cds.sys.typescale.title.small.brand | Asap |
cds.sys.typescale.title.small.weight | 600 |
cds.sys.typescale.body.large.font-size | clamp(0.81rem, 0.76rem + 0.27vw, 1rem) |
cds.sys.typescale.body.large.line-height | clamp(1.22rem, 1.14rem + 0.4vw, 1.5rem) |
cds.sys.typescale.body.large.tracking | 0.03125 |
cds.sys.typescale.body.large.brand | Open Sans |
cds.sys.typescale.body.large.weight | 400 |
cds.sys.typescale.body.medium.font-size | clamp(0.71rem, 0.66rem + 0.24vw, 0.88rem) |
cds.sys.typescale.body.medium.line-height | clamp(1.02rem, 0.95rem + 0.33vw, 1.25rem) |
cds.sys.typescale.body.medium.tracking | 0.015625 |
cds.sys.typescale.body.medium.brand | Open Sans |
cds.sys.typescale.body.medium.weight | 400 |
cds.sys.typescale.body.small.font-size | clamp(0.61rem, 0.57rem + 0.2vw, 0.75rem) |
cds.sys.typescale.body.small.line-height | clamp(0.81rem, 0.76rem + 0.27vw, 1rem) |
cds.sys.typescale.body.small.tracking | 0.025 |
cds.sys.typescale.body.small.brand | Open Sans |
cds.sys.typescale.body.small.weight | 400 |
cds.sys.typescale.label.large.font-size | clamp(0.61rem, 0.57rem + 0.2vw, 0.75rem) |
cds.sys.typescale.label.large.line-height | clamp(0.81rem, 0.76rem + 0.27vw, 1rem) |
cds.sys.typescale.label.large.tracking | 0.000625 |
cds.sys.typescale.label.large.brand | Open Sans |
cds.sys.typescale.label.large.weight | 500 |
cds.sys.typescale.label.medium.font-size | clamp(0.51rem, 0.48rem + 0.17vw, 0.63rem) |
cds.sys.typescale.label.medium.line-height | clamp(0.71rem, 0.66rem + 0.24vw, 0.88rem) |
cds.sys.typescale.label.medium.tracking | 0.03125 |
cds.sys.typescale.label.medium.brand | Open Sans |
cds.sys.typescale.label.medium.weight | 500 |
cds.sys.typescale.label.small.font-size | clamp(0.46rem, 0.43rem + 0.14vw, 0.56rem) |
cds.sys.typescale.label.small.line-height | clamp(0.61rem, 0.57rem + 0.2vw, 0.75rem) |
cds.sys.typescale.label.small.tracking | 0.03125 |
cds.sys.typescale.label.small.brand | Open Sans |
cds.sys.typescale.label.small.weight | 500 |
cds.sys.typescale.label.overline.font-size | clamp(0.51rem, 0.48rem + 0.17vw, 0.63rem) |
cds.sys.typescale.label.overline.line-height | clamp(0.71rem, 0.66rem + 0.24vw, 0.88rem) |
cds.sys.typescale.label.overline.tracking | 0.2 |
cds.sys.typescale.label.overline.brand | Open Sans |
cds.sys.typescale.label.overline.weight | 200 |
Referentie Typografie Tokens β
| Token | Fallback |
|---|---|
cds.ref.typeface.brand | Asap |
cds.ref.typeface.plain | Open Sans |
cds.ref.typeface.weight.thin | 100 |
cds.ref.typeface.weight.extra-light | 200 |
cds.ref.typeface.weight.light | 300 |
cds.ref.typeface.weight.regular | 400 |
cds.ref.typeface.weight.medium | 500 |
cds.ref.typeface.weight.semi-bold | 600 |
cds.ref.typeface.weight.bold | 700 |
cds.ref.typeface.weight.extra-bold | 800 |
cds.ref.typeface.weight.black | 900 |
Referentie Palette Tokens β
INFO
Elk palette token heeft een tonal waarde die een kleurcode bevat. Deze tonal waarde bepaalt de luminantie van de kleur.
Elk palette token heeft als structuur: cds.sys.palette.[category].[tonal].
De [category] is telkens de naam van de kolom in de tabel hieronder.
| tonal | primary | neutral | neutral-variant | secondary | tertiary | error | success | warning | highlight | ai | stage.review | stage.queue |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 0, 0, 0 | 0, 0, 0 | 0, 0, 0 | 0, 0, 0 | 0, 0, 0 | 0, 0, 0 | 0, 0, 0 | 0, 0, 0 | 0, 0, 0 | 0, 0, 0 | 0, 0, 0 | 0, 0, 0 |
| 4 | - | 18, 13, 12 | - | - | - | - | - | - | - | - | - | 11, 15, 15 |
| 5 | 44, 1, 0 | - | - | 32, 11, 7 | 24, 16, 0 | 45, 0, 1 | 0, 21, 2 | 31, 12, 0 | 23, 16, 0 | 0, 18, 35 | 0, 18, 34 | - |
| 6 | - | 24, 18, 17 | - | - | - | - | - | - | - | - | - | 16, 20, 21 |
| 8 | 56, 1, 0 | - | - | 40, 17, 13 | 32, 22, 0 | 57, 0, 1 | 0, 29, 4 | 41, 17, 0 | 31, 23, 0 | 0, 25, 45 | 0, 25, 44 | - |
| 10 | 64, 2, 0 | 32, 26, 25 | 37, 25, 22 | 44, 21, 17 | 37, 26, 0 | 65, 0, 2 | 0, 34, 5 | 47, 21, 0 | 36, 26, 0 | 0, 29, 51 | 0, 29, 50 | 25, 28, 29 |
| 12 | - | 37, 30, 29 | - | - | - | - | - | - | - | - | - | 29, 32, 33 |
| 13 | 75, 3, 0 | - | - | 51, 27, 23 | 44, 32, 0 | 77, 0, 2 | 0, 40, 6 | 56, 26, 0 | 43, 32, 0 | 0, 35, 61 | 0, 36, 60 | - |
| 17 | 87, 12, 4 | 47, 40, 39 | - | 61, 35, 31 | 54, 40, 0 | 92, 0, 4 | 0, 50, 10 | 68, 33, 0 | 53, 40, 0 | 0, 44, 74 | 0, 44, 73 | 39, 43, 43 |
| 20 | 96, 19, 9 | 54, 47, 45 | 59, 45, 43 | 68, 42, 37 | 61, 46, 4 | 105, 0, 5 | 0, 57, 12 | 78, 38, 0 | 61, 47, 0 | 0, 51, 84 | 0, 51, 83 | 46, 49, 50 |
| 22 | - | 59, 51, 50 | - | - | - | - | - | - | - | - | - | 50, 53, 54 |
| 23 | 106, 26, 15 | - | - | 76, 48, 43 | 69, 53, 10 | 117, 0, 6 | 0, 65, 15 | 87, 43, 0 | 68, 53, 0 | 0, 58, 94 | 0, 58, 93 | - |
| 30 | 127, 41, 28 | 77, 69, 67 | 83, 67, 64 | 93, 63, 58 | 86, 69, 25 | 147, 0, 10 | 0, 83, 22 | 111, 56, 0 | 87, 68, 0 | 0, 74, 119 | 0, 74, 117 | 68, 71, 72 |
| 31 | 130, 44, 30 | - | - | 96, 66, 60 | 88, 71, 27 | 152, 0, 10 | 0, 86, 23 | 114, 58, 0 | 90, 71, 0 | 0, 76, 123 | 0, 77, 121 | - |
| 40 | 159, 64, 49 | 101, 92, 91 | 108, 91, 88 | 119, 86, 81 | 111, 92, 46 | 186, 26, 26 | 0, 110, 32 | 146, 76, 0 | 116, 91, 0 | 0, 99, 157 | 0, 99, 154 | 92, 95, 95 |
| 50 | 190, 88, 71 | 127, 117, 115 | 133, 115, 112 | 146, 111, 104 | 137, 117, 68 | 222, 55, 48 | 33, 137, 51 | 182, 97, 0 | 145, 116, 0 | 38, 124, 188 | 32, 124, 187 | 116, 120, 120 |
| 55 | - | - | 147, 128, 124 | - | - | - | - | - | - | - | - | - |
| 60 | 222, 113, 94 | 153, 142, 140 | 160, 140, 137 | 174, 136, 129 | 165, 142, 91 | 255, 84, 73 | 65, 164, 74 | 220, 118, 0 | 176, 140, 0 | 73, 150, 215 | 69, 151, 214 | 142, 145, 146 |
| 67 | - | - | 179, 159, 155 | - | - | - | - | - | - | - | - | - |
| 70 | 255, 138, 118 | 180, 169, 167 | 188, 167, 163 | 202, 162, 155 | 192, 169, 115 | 255, 137, 125 | 93, 192, 98 | 255, 142, 30 | 208, 166, 0 | 102, 177, 244 | 99, 177, 243 | 169, 172, 172 |
| 80 | 255, 180, 167 | 208, 196, 194 | 216, 194, 190 | 231, 189, 181 | 221, 196, 140 | 255, 180, 171 | 120, 220, 122 | 255, 183, 127 | 239, 193, 28 | 152, 203, 255 | 150, 204, 255 | 196, 199, 199 |
| 82 | 255, 188, 176 | - | 222, 199, 195 | 237, 194, 187 | 227, 201, 145 | 255, 188, 179 | 126, 226, 127 | 255, 191, 142 | 245, 199, 36 | 164, 208, 255 | 161, 209, 255 | - |
| 90 | 255, 218, 212 | 237, 224, 221 | 245, 221, 217 | 255, 218, 212 | 250, 224, 166 | 255, 218, 214 | 148, 249, 148 | 255, 220, 196 | 255, 224, 137 | 207, 229, 255 | 206, 229, 255 | 225, 227, 227 |
| 92 | 255, 226, 221 | 243, 229, 227 | - | 255, 226, 221 | 255, 230, 175 | 255, 226, 222 | 154, 255, 153 | 255, 227, 208 | 255, 230, 165 | 217, 234, 255 | 216, 234, 255 | 230, 232, 233 |
| 94 | - | 248, 235, 233 | - | - | - | - | - | - | - | - | - | 236, 238, 239 |
| 95 | 255, 237, 234 | 251, 238, 235 | - | 255, 237, 234 | 255, 239, 209 | 255, 237, 234 | 200, 255, 193 | 255, 237, 227 | 255, 239, 204 | 232, 241, 255 | 232, 242, 255 | 239, 241, 241 |
| 96 | - | 254, 241, 238 | - | - | - | - | - | - | - | - | - | 242, 244, 244 |
| 98 | 255, 248, 246 | 255, 248, 246 | - | 255, 248, 246 | 255, 248, 241 | 255, 248, 247 | 236, 255, 229 | 255, 248, 245 | 255, 248, 240 | 247, 249, 255 | 247, 249, 255 | 248, 250, 250 |
| 99 | 255, 251, 255 | 255, 251, 255 | 255, 251, 255 | 255, 251, 255 | 253, 252, 252 | 255, 251, 255 | 246, 255, 240 | 255, 251, 255 | 255, 251, 255 | 252, 252, 255 | 252, 252, 255 | 250, 253, 253 |
| 100 | 255, 255, 255 | 255, 255, 255 | 255, 255, 255 | 255, 255, 255 | 255, 255, 255 | 255, 255, 255 | 255, 255, 255 | 255, 255, 255 | 255, 255, 255 | 255, 255, 255 | 255, 255, 255 | 255, 255, 255 |
Best Practices β
Gebruik Systeem Tokens: Gebruik altijd
cds.sys.*tokens in je componenten, niet referentietokens.Semantisch Gebruik: Kies tokens op basis van hun semantische betekenis, niet alleen op hun visuele verschijning.
Responsief Ontwerp: Veel tokens gebruiken
clamp()voor responsieve schaling - maak gebruik van deze ingebouwde responsiviteit.Kleurgebruik: Bij het gebruik van kleurtokens moet je onthouden dat ze worden geleverd als RGB-waarden en moeten worden gebruikt met de
rgb()functie.Consistentie: Gebruik het tokensysteem consequent om een uniforme ontwerptaal in je applicatie te behouden.
Vermijd Referentie Tokens: Onthoud dat
cds.ref.*tokens niet kunnen worden gebruikt in componenten en alleen dienen als referentiewaarden voor andere tokens.
Voorbeeld Gebruik β
Button Component β
@use '@diekeure/cds-tokens' as cds;
.button {
@include cds.font('label.large');
background-color: rgb(cds.get('cds.sys.color.primary'));
color: rgb(cds.get('cds.sys.color.on-primary'));
padding: cds.get('cds.sys.spacing.xs') cds.get('cds.sys.spacing.m');
border-radius: cds.get('cds.sys.shape.s');
transition: background-color cds.get('cds.sys.motion.duration.short-3') cds.get('cds.sys.motion.ease.standard');
&:hover {
background-color: rgba(cds.get('cds.sys.color.primary'), cds.get('cds.sys.opacity.hover'));
}
&:disabled {
opacity: cds.get('cds.sys.opacity.disabled');
}
}