sparkle-design-cli 2.4.1 → 2.5.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sparkle-design-cli",
3
- "version": "2.4.1",
3
+ "version": "2.5.0-beta.1",
4
4
  "description": "Sparkle Design CLI — プロジェクトセットアップ、CSS・フォント生成、アンチパターン検査、AI エージェント(Claude Code / Cursor / Codex)向けのガードと hook 設定まで一括で行う sparkle-design 公式 CLI。",
5
5
  "publishConfig": {
6
6
  "registry": "https://registry.npmjs.org",
@@ -55,7 +55,9 @@
55
55
  "bin/",
56
56
  "lib/",
57
57
  "templates/",
58
+ "docs/",
58
59
  "README.md",
60
+ "CONTRIBUTING.md",
59
61
  "LICENSE"
60
62
  ],
61
63
  "dependencies": {
@@ -0,0 +1,21 @@
1
+ name: Validate tokens
2
+
3
+ # トークン定義の不整合(同じ情報が 2 箇所にある / リネームの片側だけ適用 /
4
+ # 未定義変数への参照)を、変更のたびに機械で止める。
5
+ # en: Catch token-definition inconsistencies on every change.
6
+
7
+ on:
8
+ push:
9
+ branches: [main]
10
+ pull_request:
11
+
12
+ jobs:
13
+ validate:
14
+ runs-on: ubuntu-latest
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+ - uses: actions/setup-node@v4
18
+ with:
19
+ node-version: '22'
20
+ - name: Validate token definitions
21
+ run: node scripts/validate-tokens.mjs
@@ -0,0 +1,151 @@
1
+ # sparkle-variables
2
+
3
+ Sparkle Design のトークン定義。`sparkle-design-cli` と `sparkle-design-theme-settings` の
4
+ **両方から submodule として直接参照される**共有データです。
5
+
6
+ このリポジトリにビルドはありません。ファイルがそのまま消費されます。
7
+
8
+ ## どの情報の正解がどこにあるか
9
+
10
+ 同じ情報が 2 箇所にあると、必ず片方が古くなります。情報の種類ごとに**正解のファイルを 1 つ**に決めています。
11
+
12
+ | 情報 | 正解のファイル | 備考 |
13
+ |---|---|---|
14
+ | プリミティブカラー(red / orange / yellow / green / blue / purple / pink、black / white、alpha、`ring`) | `colors.json` | **`gray` はここに置かない**。`ring.normal` は旧 `--color-ring-normal` 用の beta 互換値で、移行先は セマンティックの `border/ring` |
15
+ | グレースケール | `gray.json` | primary ごとに 10 段(0–9)。CLI が `--color-gray-50`〜`900` に展開する |
16
+ | 角丸のプロファイル | `radius.csv` | 行 = プロファイル、列 = セマンティック名 |
17
+ | フォント一覧 | `fontdata.csv` | 消費側は Figma プラグイン `sparkle-design-theme-settings` のみ(CLI は読まない)。**現状 `validate-tokens.mjs` の検査対象外** |
18
+ | セマンティックトークン(色 / 角丸 / シャドウ / タイポグラフィ)と CSS 構造 | `sparkle-design.template.css` | |
19
+ | 最大幅(`--container-*`) | `sparkle-design.template.css` | Figma の `Sizing: Primitives` と 1:1。**余白(`Spacing: Primitives`)はここに置かない** — 理由は下記 |
20
+ | 上記すべての一次情報 | **Figma `Sparkle Design`** | 齟齬があれば Figma が正 |
21
+
22
+ ### なぜ `gray` を `colors.json` に置かないか
23
+
24
+ `gray` は primary の選択に応じて色味が変わるため `gray.json` が正です。
25
+ 両方に置くと CLI の `generateColorTokens` が `--color-gray-*` を二重に出力し、
26
+ 後から出る `gray.json` 側が `colors.json` 側を**サイレントに上書き**します。
27
+ 見た目は壊れないため目視では気付けません。
28
+
29
+ この事故は `scripts/validate-tokens.mjs` が検出します。
30
+
31
+ ## 変更するときの注意
32
+
33
+ ### Figma が正
34
+
35
+ Figma と定義が食い違ったときは Figma を正とします。
36
+ **確信が持てない差分は、どちらかに寄せずに `⚠️ 要確認` とコメントで残す**。
37
+ 曖昧さを消したふりをするより、曖昧だと明記したほうが誤読が減ります。
38
+
39
+ ### `radius.csv` の列名を変えるときはテンプレートも同時に
40
+
41
+ CLI の `processTemplate` は `--radius-<列名>:` への正規表現置換で
42
+ テンプレートのデフォルト値を上書きします。CSV だけリネームすると置換が効かず、
43
+ 旧名の変数が残ったまま新名の変数が生成されません。
44
+
45
+ `scripts/validate-tokens.mjs` がこの片側リネームを検出します。
46
+
47
+ ### セマンティック変数は 2 箇所に書く
48
+
49
+ テンプレートは同じセマンティック変数を「プレーンな `:root`」と「`@theme inline`」の
50
+ 2 箇所に持ちます(`sparkle-design-cli` issue #229 の設計)。
51
+ `@theme inline` 側は**同名変数の自己参照**にします。プリミティブを直接参照すると、
52
+ Tailwind が utility に値をインライン化してしまい、セマンティック変数を
53
+ ランタイムで上書きしても見た目が変わらなくなります。
54
+
55
+ 片方だけに追加する漏れは `scripts/validate-tokens.mjs` が検出します。
56
+
57
+ ### Spacing はトークンにしない、Sizing はトークンにする
58
+
59
+ Figma には `Spacing: Primitives`(`padding/0`〜`padding/120` の 17 段)と
60
+ `Sizing: Primitives`(`max-width/xs`〜`max-width/7xl` の 11 段)がありますが、
61
+ **CSS 変数として出すのは Sizing だけ**です。理由が正反対だからです。
62
+
63
+ - **Spacing を出してはいけない。** Tailwind v4 の `p-N` / `m-N` / `gap-N` は
64
+ `calc(var(--spacing) * N)` にコンパイルされます。ここに `--spacing-16: 1rem` の
65
+ ような**名前付きキー**を定義すると、その N だけ名前付きの値が優先されます。
66
+ `p-16` は本来 64px ですが、Figma の `padding/16`(16px)をそのまま変数にすると
67
+ **4 分の 1 になります**。ビルドは通り、警告も出ず、既存 consumer の余白だけが
68
+ 静かに崩れます。Figma のステップは代わりに `sparkle-design-cli` の `check`
69
+ ルール(`use-figma-spacing-scale`, severity `info`)で「使ってよい値」として
70
+ 検査する方針です。**このルールはまだリリース済みの CLI には入っていません**
71
+ ([sparkle-design-cli#76](https://github.com/goodpatch/sparkle-design-cli/pull/76)
72
+ でリリース予定)。
73
+ - **Sizing は出してよい。** Tailwind の `--container-*` 名前空間は元から
74
+ 名前付きキーだけで構成されていて、動的な計算式を持たないため衝突しません。
75
+ 現在の 11 値は Tailwind のデフォルトと同値なので出力しても実効の変化は
76
+ ありませんが、Figma が SSOT である以上ここが値の所在地になります。
77
+ Tailwind の `--container-3xs` / `--container-2xs` は Figma に対応がないため
78
+ **定義しない**(=Tailwind のデフォルトのまま残す)方針です。
79
+
80
+ #### `--container-*` だけ `@theme static` に書く理由
81
+
82
+ 他のトークンは「プレーンな `:root` + `@theme inline` の自己参照」ですが、
83
+ `--container-*` は **`@theme static` に実値**を書きます。Tailwind v4 でこの
84
+ 名前空間だけが 2 通りに展開されるためです。
85
+
86
+ | 使われ方 | 展開結果 |
87
+ |---|---|
88
+ | `max-w-*` / `w-*` / `min-w-*` | `var(--container-*)` |
89
+ | `@sm:` / `@xl:` などの container query バリアント | `@container (width >= 36rem)`(**実値がベタ書き**) |
90
+
91
+ 後者は CSS の仕様上 `var()` を書けません。実際にコンパイルして確認した結果は
92
+ 次のとおりです。
93
+
94
+ | 書き方 | `max-w-*` | container query バリアント |
95
+ |---|---|---|
96
+ | プレーンな `:root` | 追従する | **Tailwind のデフォルトのまま据え置かれる** |
97
+ | `@theme inline` の自己参照 | 追従する | **バリアント自体が生成されない** |
98
+ | `@theme` に実値 | 追従する | 追従する |
99
+
100
+ そのため、他のトークンに合わせて `:root` + `@theme inline` に「揃える」
101
+ リファクタをしてはいけません。`scripts/validate-tokens.mjs` が、
102
+ `--container-*` がそれらのブロックに現れたら失敗するようにしています。
103
+
104
+ さらに `static` を付けています。素の `@theme` は **使われていない変数を出力から
105
+ 落とす**(tree-shaking)ため、`max-w-6xl` を書いていないプロジェクトでは
106
+ 手書き CSS の `var(--container-6xl)` が解決しなくなります。他のトークンは
107
+ プレーンな `:root` にあるので常に参照でき、`--container-*` だけがそうならない
108
+ のは分かりにくいので、`@theme static` で 11 件すべてを必ず出力します。
109
+
110
+ `scripts/validate-tokens.mjs` が「`--spacing-*` を定義していないこと」と
111
+ 「`--container-*` が Figma の 11 件と過不足なく一致し、値が昇順であること」を
112
+ 検出します。
113
+
114
+ ### consumer 側のリリース順序
115
+
116
+ このリポジトリは submodule のコミット pin で参照されるため、変更しても消費側は即座には壊れません。
117
+ ただし **bump する前に**両消費側の対応を揃える必要があります。
118
+
119
+ ```text
120
+ sparkle-variables → sparkle-design-cli → sparkle-design → sparkle-design-internal
121
+ ↘ sparkle-design-theme-settings(cli と同時期)
122
+ ```
123
+
124
+ ## 検証
125
+
126
+ ```sh
127
+ node scripts/validate-tokens.mjs
128
+ ```
129
+
130
+ 以下を機械的にチェックします(CI で PR ごとに実行)。
131
+
132
+ - 入力ファイル(JSON / CSV / テンプレート)が読めること
133
+ - `gray` の source of truth が `gray.json` 一本であること
134
+ - `colors.json` と `gray.json` の色相が **双方向で** 揃っていること(片方にしか無い色は「選べそうに見えて選べない」状態になる)と、`gray.json` の各色相が 0–9 の 10 段を持つこと
135
+ - `radius.csv` の行・列構造(列数の揃い・空セル)が壊れていないこと
136
+ - `radius.csv` の列名とテンプレートの `--radius-*` 変数が **双方向で** 一致すること。後方互換エイリアスと同名の列が CSV に残っていないこと、および **CSV の各セル値が実在するプリミティブを指すこと**(これが無いと CLI が dangling な `var(--radius-*)` を生成しても素通りする)
137
+ - 角丸のプリセット値がセマンティックキー名と文字列衝突しないこと(CLI の置換が依存する不変条件)
138
+ - **全 primary 候補**でテンプレートに dangling な `var(--*)` 参照が無いこと(`var(--x, fallback)` 形式を含む)
139
+ - テンプレートが `--spacing` / `--spacing-*` を定義していないこと(Tailwind v4 の動的スペーシングを名前付きキーが上書きし、consumer の余白がサイレントに変わるため)
140
+ - `--container-*` が Figma の `Sizing: Primitives` 11 件と **過不足なく** 一致し、値が昇順で、**リテラルの rem** であること(名前は正しいのに値だけ入れ替わっている取り違えと、`var()` を書いて container query バリアントを失う事故を拾う)。`:root` や `@theme inline` 側に書かれていないこと、同名を 2 回書いて後勝ちで上書きしていないことも見る
141
+ - `rem` の値と行末コメントの `px` が一致していること(同じ値を 2 度書いている行が現在 42 行あり、そのすべてが対象。Figma の値は px で来るため、片方だけ直す事故が起きる)
142
+ - セマンティック層(color / radius / shadow)が `:root` と `@theme inline` で揃っていること
143
+ - 同一ブロック内に重複した変数宣言が無いこと(後勝ちでサイレント上書きされるため)
144
+ - `character-*` / `icon-*` クラスが **自分の変数だけを** 参照していること(クラス間の取り違えを検出する)。貼り替え漏れ(未参照の変数 / 未定義の参照)も含む
145
+ - テンプレートの波括弧の釣り合いと、プレースホルダーが CLI の期待どおりの字面であること(大文字小文字のタイポと、`/* {{COLOR_TOKENS}} */` の体裁崩れによる置換 no-op を検出する)
146
+
147
+ ### 検査設計の前提
148
+
149
+ **「0 件マッチ = 成功」を作らない。** 集合比較だけの検査は、命名変更などで対象を 1 件も拾えなくなったときに黙って合格します。各検査は「最低これだけの件数を実際に見た」ことを表明してから判定するので、検査が空振りしていること自体が失敗になります。
150
+
151
+ **検査できないこと。** これは構造の検査であって、値の妥当性は見ていません。たとえば `--color-text-high` の参照先を別のグレーに書き換えてもコントラストが壊れるだけで検査は通ります。色の値そのものの正解は Figma です。`fontdata.csv` も現状は検査対象外です。
@@ -1,115 +1,115 @@
1
1
  {
2
2
  "blue": {
3
- "50": "#e5f6ff",
4
- "100": "#ceedff",
5
- "200": "#97d3ff",
6
- "300": "#61b3ff",
7
- "400": "#218bff",
8
- "500": "#0969da",
9
- "600": "#0550ae",
10
- "700": "#033d8b",
11
- "800": "#0a3069",
12
- "900": "#002155"
3
+ "50": "#f1f8fe",
4
+ "100": "#d3e9fd",
5
+ "200": "#a7d1fc",
6
+ "300": "#7fbafa",
7
+ "400": "#4ea0f8",
8
+ "500": "#1d83f7",
9
+ "600": "#096ae7",
10
+ "700": "#0e5cbe",
11
+ "800": "#06489e",
12
+ "900": "#043676"
13
13
  },
14
14
  "red": {
15
- "50": "#fff6f5",
16
- "100": "#ffe5e4",
17
- "200": "#ffbbb9",
18
- "300": "#ff8182",
19
- "400": "#fa4549",
20
- "500": "#cf222e",
21
- "600": "#a40e26",
22
- "700": "#82071e",
23
- "800": "#660018",
24
- "900": "#4c0014"
15
+ "50": "#fff0f0",
16
+ "100": "#ffe1e0",
17
+ "200": "#ffbab8",
18
+ "300": "#f78b88",
19
+ "400": "#f06b66",
20
+ "500": "#e4534e",
21
+ "600": "#cd3832",
22
+ "700": "#b3231e",
23
+ "800": "#891d1a",
24
+ "900": "#631513"
25
25
  },
26
26
  "orange": {
27
- "50": "#fff1e5",
28
- "100": "#ffd8b5",
29
- "200": "#ffb77c",
30
- "300": "#fb8f44",
31
- "400": "#e16f24",
32
- "500": "#bc4c00",
33
- "600": "#953800",
34
- "700": "#762c00",
35
- "800": "#5c2200",
36
- "900": "#471700"
27
+ "50": "#fef6f1",
28
+ "100": "#fbe4d5",
29
+ "200": "#f9cdae",
30
+ "300": "#f3ad7c",
31
+ "400": "#f0985c",
32
+ "500": "#e3823c",
33
+ "600": "#d36922",
34
+ "700": "#ba5612",
35
+ "800": "#7c3708",
36
+ "900": "#4d2205"
37
37
  },
38
38
  "yellow": {
39
- "50": "#fffbe2",
40
- "100": "#fdedba",
41
- "200": "#fad573",
42
- "300": "#f0b800",
43
- "400": "#cc8f00",
44
- "500": "#9a6700",
45
- "600": "#7d4e00",
46
- "700": "#633c01",
47
- "800": "#4d2d00",
48
- "900": "#3b2300"
39
+ "50": "#fefcec",
40
+ "100": "#fdf7d3",
41
+ "200": "#faf0b8",
42
+ "300": "#f3e081",
43
+ "400": "#eed255",
44
+ "500": "#eac210",
45
+ "600": "#c09c09",
46
+ "700": "#8b720e",
47
+ "800": "#5e4d08",
48
+ "900": "#352a03"
49
49
  },
50
50
  "purple": {
51
- "50": "#fbefff",
52
- "100": "#ecd8ff",
53
- "200": "#d8b9ff",
54
- "300": "#c297ff",
55
- "400": "#a475f9",
56
- "500": "#8250df",
57
- "600": "#6639ba",
58
- "700": "#512a97",
59
- "800": "#3e1f79",
60
- "900": "#2e1461"
51
+ "50": "#f5f1fe",
52
+ "100": "#ece2fe",
53
+ "200": "#d8c5fc",
54
+ "300": "#c1a3fa",
55
+ "400": "#ab84f6",
56
+ "500": "#9367e4",
57
+ "600": "#7a4bd2",
58
+ "700": "#643bb0",
59
+ "800": "#523191",
60
+ "900": "#392163"
61
61
  },
62
62
  "green": {
63
- "50": "#edfdf0",
64
- "100": "#c5f7d0",
65
- "200": "#6fdd8b",
66
- "300": "#4ac26b",
67
- "400": "#2da44e",
68
- "500": "#1a7f37",
69
- "600": "#116329",
70
- "700": "#044f1e",
71
- "800": "#003d16",
72
- "900": "#002d11"
63
+ "50": "#ecf9f2",
64
+ "100": "#d3f3e1",
65
+ "200": "#afe9ca",
66
+ "300": "#81dfab",
67
+ "400": "#53d08b",
68
+ "500": "#26bb6e",
69
+ "600": "#21a15f",
70
+ "700": "#19804b",
71
+ "800": "#146139",
72
+ "900": "#0d4025"
73
73
  },
74
74
  "pink": {
75
- "50": "#ffeff7",
76
- "100": "#ffd3eb",
77
- "200": "#ffadda",
78
- "300": "#ff80c8",
79
- "400": "#e85aad",
80
- "500": "#bf3989",
81
- "600": "#99286e",
82
- "700": "#772057",
83
- "800": "#611347",
84
- "900": "#4d0336"
75
+ "50": "#fdf2f9",
76
+ "100": "#fae0ef",
77
+ "200": "#f5c1e1",
78
+ "300": "#ef9fcf",
79
+ "400": "#e873b9",
80
+ "500": "#e043a1",
81
+ "600": "#ce2289",
82
+ "700": "#992e6e",
83
+ "800": "#7e255a",
84
+ "900": "#571a3e"
85
85
  },
86
86
  "black": "#000000",
87
87
  "white": "#ffffff",
88
88
  "black-alpha": {
89
- "50": "#0000000D",
90
- "100": "#0000001A",
89
+ "50": "#0000000d",
90
+ "100": "#0000001a",
91
91
  "200": "#00000033",
92
- "300": "#0000004D",
92
+ "300": "#0000004d",
93
93
  "400": "#00000066",
94
94
  "500": "#00000080",
95
95
  "600": "#00000099",
96
- "700": "#000000B3",
97
- "800": "#000000CC",
98
- "900": "#000000E6"
96
+ "700": "#000000b2",
97
+ "800": "#000000cc",
98
+ "900": "#000000e5"
99
99
  },
100
100
  "white-alpha": {
101
- "50": "#FFFFFF0D",
102
- "100": "#FFFFFF1A",
103
- "200": "#FFFFFF33",
104
- "300": "#FFFFFF4D",
105
- "400": "#FFFFFF66",
106
- "500": "#FFFFFF80",
107
- "600": "#FFFFFF99",
108
- "700": "#FFFFFFB3",
109
- "800": "#FFFFFFCC",
110
- "900": "#FFFFFFE6"
101
+ "50": "#ffffff0d",
102
+ "100": "#ffffff1a",
103
+ "200": "#ffffff33",
104
+ "300": "#ffffff4d",
105
+ "400": "#ffffff66",
106
+ "500": "#ffffff80",
107
+ "600": "#ffffff99",
108
+ "700": "#ffffffb2",
109
+ "800": "#ffffffcc",
110
+ "900": "#ffffffe5"
111
111
  },
112
112
  "ring": {
113
- "normal": "#096cdc"
113
+ "normal": "#0e5cbe"
114
114
  }
115
115
  }
@@ -1,86 +1,86 @@
1
1
  {
2
2
  "blue": {
3
- "0": "#f6f8fa",
4
- "1": "#eaeef2",
5
- "2": "#d0d7de",
6
- "3": "#afb8c1",
7
- "4": "#8c959f",
8
- "5": "#6e7781",
9
- "6": "#57606a",
10
- "7": "#424a53",
11
- "8": "#32383f",
12
- "9": "#24292f"
3
+ "0": "#f3f5f6",
4
+ "1": "#e4e8ec",
5
+ "2": "#d6dbe1",
6
+ "3": "#b8c1cc",
7
+ "4": "#a1acba",
8
+ "5": "#8796a7",
9
+ "6": "#6b7885",
10
+ "7": "#4d5660",
11
+ "8": "#3b4249",
12
+ "9": "#292e33"
13
13
  },
14
14
  "green": {
15
- "0": "#f6f7f6",
16
- "1": "#e2e5e2",
17
- "2": "#c5cac6",
18
- "3": "#a0a8a2",
19
- "4": "#7c857e",
20
- "5": "#626a64",
21
- "6": "#49504b",
22
- "7": "#404542",
23
- "8": "#2f3230",
24
- "9": "#181b19"
15
+ "0": "#f4f5f4",
16
+ "1": "#e7e9e8",
17
+ "2": "#dadddb",
18
+ "3": "#bfc5c2",
19
+ "4": "#a9b2ad",
20
+ "5": "#929c97",
21
+ "6": "#727e78",
22
+ "7": "#525b56",
23
+ "8": "#3f4542",
24
+ "9": "#2c302e"
25
25
  },
26
26
  "yellow": {
27
- "0": "#f6f5f5",
28
- "1": "#e8e6e5",
29
- "2": "#d3d1ce",
30
- "3": "#b4b1ac",
31
- "4": "#8e8a82",
32
- "5": "#736f67",
33
- "6": "#625f58",
34
- "7": "#504e49",
35
- "8": "#3f3e3a",
36
- "9": "#282724"
27
+ "0": "#f5f5f4",
28
+ "1": "#e9e9e7",
29
+ "2": "#dddcda",
30
+ "3": "#c4c4c0",
31
+ "4": "#b1b0aa",
32
+ "5": "#9b9a93",
33
+ "6": "#7d7b73",
34
+ "7": "#5a5953",
35
+ "8": "#45443f",
36
+ "9": "#302f2c"
37
37
  },
38
38
  "orange": {
39
- "0": "#efefef",
40
- "1": "#cfcdcc",
41
- "2": "#b7b4b3",
42
- "3": "#969290",
43
- "4": "#827d7b",
44
- "5": "#635d5a",
45
- "6": "#5a5552",
46
- "7": "#464240",
47
- "8": "#363332",
48
- "9": "#2a2726"
39
+ "0": "#f5f4f4",
40
+ "1": "#e9e8e7",
41
+ "2": "#dedbd9",
42
+ "3": "#c6c1be",
43
+ "4": "#b2ada9",
44
+ "5": "#9d9691",
45
+ "6": "#7f7771",
46
+ "7": "#5c5651",
47
+ "8": "#46413e",
48
+ "9": "#312e2b"
49
49
  },
50
50
  "red": {
51
- "0": "#f4f2f3",
52
- "1": "#e2dfdf",
53
- "2": "#c7c1c1",
54
- "3": "#a79d9d",
55
- "4": "#8e8182",
56
- "5": "#7e7273",
57
- "6": "#6c6263",
58
- "7": "#585052",
59
- "8": "#443f41",
60
- "9": "#262223"
51
+ "0": "#f5f4f4",
52
+ "1": "#e9e7e7",
53
+ "2": "#dedad9",
54
+ "3": "#c6bfbe",
55
+ "4": "#b2a9a9",
56
+ "5": "#9d9191",
57
+ "6": "#7f7171",
58
+ "7": "#5c5251",
59
+ "8": "#463e3e",
60
+ "9": "#312b2b"
61
61
  },
62
62
  "purple": {
63
- "0": "#f2f1f2",
64
- "1": "#d5d4d8",
65
- "2": "#c1bfc5",
66
- "3": "#a5a2ab",
67
- "4": "#94909a",
68
- "5": "#797481",
69
- "6": "#6e6a75",
70
- "7": "#56525c",
71
- "8": "#434047",
72
- "9": "#333136"
63
+ "0": "#f4f4f5",
64
+ "1": "#e8e7e9",
65
+ "2": "#dbdadd",
66
+ "3": "#c1bfc5",
67
+ "4": "#aca9b2",
68
+ "5": "#95929c",
69
+ "6": "#76727e",
70
+ "7": "#55525b",
71
+ "8": "#413f45",
72
+ "9": "#2d2c30"
73
73
  },
74
74
  "pink": {
75
- "0": "#f1f0f1",
76
- "1": "#d5d1d4",
77
- "2": "#c0bbbf",
78
- "3": "#a49da1",
79
- "4": "#92898f",
80
- "5": "#776c73",
81
- "6": "#6c6269",
82
- "7": "#544d52",
83
- "8": "#413b3f",
84
- "9": "#322d30"
75
+ "0": "#f5f4f5",
76
+ "1": "#e9e7e8",
77
+ "2": "#dddadc",
78
+ "3": "#c5bfc3",
79
+ "4": "#b2a9ae",
80
+ "5": "#9c9298",
81
+ "6": "#7e7279",
82
+ "7": "#5b5257",
83
+ "8": "#453f43",
84
+ "9": "#302c2e"
85
85
  }
86
86
  }
@@ -1,4 +1,4 @@
1
- name,divide,minimum,notice,action,halfModal,modal,round
1
+ name,divide,minimum,notice,action,container,modal,round
2
2
  none,none,none,none,none,none,none,full
3
3
  xs,none,none,none,xs,sm,md,full
4
4
  sm,none,none,xs,sm,md,lg,full