カラーパレット
概要
Camome デザインシステムのカラーパレットは以下の 3 つに分類されます。
- Shade
- Semantic
- Template
この 3 つの中で Shade が最もプリミティブで、下に向かうにつれより高レベルな意味を持ちます。
使用方法
基本的には Shade をコードの中で使わないでください。Shade を直接使用すると、例えばダークテーマに対応する際に :root[data-theme="dark"] のようなセレクターを大量に書くことになります。
代わりに Semantic と Template を使ってください。そうすればテーマの変更などにも柔軟に対応できます。
Semantic と Template の違い
- Semantic – 汎用的にどこでも使えるトークン。
- Template – 特定の UI パターンのためのトークン。 例えば Button は複数の Template を実装しており、
variantプロパティによって切り替えられる。Radio は 1 つの Template (soft) のみを実装している例。
多くの UI コンポーネントはこれらの Template (つまり UI パターン)のいずれかに当てはまることが多いため、そのトークンを継承するのが便利な場合があります。あなたのアプリケーションの独自コンポーネントにも取り入れることができるはずです。
Shade
Primary
primary.0primary.1primary.2primary.3primary.4primary.5primary.6primary.7primary.8primary.9Neutral
neutral.0neutral.1neutral.2neutral.3neutral.4neutral.5neutral.6neutral.7neutral.8neutral.9Info
info.0info.1info.2info.3info.4info.5info.6info.7info.8info.9Success
success.0success.1success.2success.3success.4success.5success.6success.7success.8success.9Warn
warn.0warn.1warn.2warn.3warn.4warn.5warn.6warn.7warn.8warn.9Danger
danger.0danger.1danger.2danger.3danger.4danger.5danger.6danger.7danger.8danger.9Semantic
Font
Aa
font.baseAa
font.mutedAa
font.subtleAa
font.onEmphasisSurface
surface.0surface.1surface.2surface.3surface.4Border
border.baseborder.subtlePrimary
Aa
primary.fontprimary.mutedprimary.subtleprimary.emphasisNeutral
Aa
neutral.fontneutral.mutedneutral.subtleneutral.emphasisInfo
Aa
info.fontinfo.mutedinfo.subtleinfo.emphasisSuccess
Aa
success.fontsuccess.mutedsuccess.subtlesuccess.emphasisWarn
Aa
warn.fontwarn.mutedwarn.subtlewarn.emphasisDanger
Aa
danger.fontdanger.muteddanger.subtledanger.emphasisTemplate
Primary
primary.solid.bgprimary.solid.bgHoverAa
primary.solid.fontprimary.soft.bgprimary.soft.bgHoverAa
primary.soft.fontprimary.outline.bgprimary.outline.bgHoverAa
primary.outline.fontprimary.outline.borderprimary.ghost.bgprimary.ghost.bgHoverAa
primary.ghost.fontNeutral
neutral.solid.bgneutral.solid.bgHoverAa
neutral.solid.fontneutral.soft.bgneutral.soft.bgHoverAa
neutral.soft.fontneutral.outline.bgneutral.outline.bgHoverAa
neutral.outline.fontneutral.outline.borderneutral.ghost.bgneutral.ghost.bgHoverAa
neutral.ghost.fontInfo
info.solid.bginfo.solid.bgHoverAa
info.solid.fontinfo.soft.bginfo.soft.bgHoverAa
info.soft.fontinfo.outline.bginfo.outline.bgHoverAa
info.outline.fontinfo.outline.borderinfo.ghost.bginfo.ghost.bgHoverAa
info.ghost.fontSuccess
success.solid.bgsuccess.solid.bgHoverAa
success.solid.fontsuccess.soft.bgsuccess.soft.bgHoverAa
success.soft.fontsuccess.outline.bgsuccess.outline.bgHoverAa
success.outline.fontsuccess.outline.bordersuccess.ghost.bgsuccess.ghost.bgHoverAa
success.ghost.fontWarn
warn.solid.bgwarn.solid.bgHoverAa
warn.solid.fontwarn.soft.bgwarn.soft.bgHoverAa
warn.soft.fontwarn.outline.bgwarn.outline.bgHoverAa
warn.outline.fontwarn.outline.borderwarn.ghost.bgwarn.ghost.bgHoverAa
warn.ghost.fontDanger
danger.solid.bgdanger.solid.bgHoverAa
danger.solid.fontdanger.soft.bgdanger.soft.bgHoverAa
danger.soft.fontdanger.outline.bgdanger.outline.bgHoverAa
danger.outline.fontdanger.outline.borderdanger.ghost.bgdanger.ghost.bgHoverAa
danger.ghost.font