@lism-css/mcp 0.12.0 → 0.13.0

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.
Files changed (43) hide show
  1. package/README.ja.md +1 -1
  2. package/dist/data/docs-index.json +202 -151
  3. package/dist/data/guides/SKILL.md +95 -54
  4. package/dist/data/guides/base-styles.md +2 -2
  5. package/dist/data/guides/components-core.md +84 -130
  6. package/dist/data/guides/components-ui.md +3 -3
  7. package/dist/data/guides/css-rules.md +41 -21
  8. package/dist/data/guides/primitive-class.md +148 -0
  9. package/dist/data/guides/primitives/a--decorator.md +45 -0
  10. package/dist/data/guides/primitives/a--divider.md +69 -0
  11. package/dist/data/guides/primitives/a--icon.md +105 -0
  12. package/dist/data/guides/primitives/a--spacer.md +63 -0
  13. package/dist/data/guides/primitives/is--boxLink.md +97 -0
  14. package/dist/data/guides/primitives/is--container.md +46 -0
  15. package/dist/data/guides/primitives/is--layer.md +71 -0
  16. package/dist/data/guides/primitives/is--vertical.md +52 -0
  17. package/dist/data/guides/primitives/is--wrapper.md +87 -0
  18. package/dist/data/guides/primitives/l--box.md +31 -0
  19. package/dist/data/guides/primitives/l--center.md +55 -0
  20. package/dist/data/guides/primitives/l--cluster.md +38 -0
  21. package/dist/data/guides/primitives/l--columns.md +72 -0
  22. package/dist/data/guides/primitives/l--flex.md +74 -0
  23. package/dist/data/guides/primitives/l--flow.md +134 -0
  24. package/dist/data/guides/primitives/l--fluidCols.md +68 -0
  25. package/dist/data/guides/primitives/l--frame.md +94 -0
  26. package/dist/data/guides/primitives/l--grid.md +68 -0
  27. package/dist/data/guides/primitives/l--sideMain.md +102 -0
  28. package/dist/data/guides/primitives/l--stack.md +56 -0
  29. package/dist/data/guides/primitives/l--switchCols.md +69 -0
  30. package/dist/data/guides/primitives/l--tileGrid.md +61 -0
  31. package/dist/data/guides/property-class.md +6 -5
  32. package/dist/data/guides/set-class.md +11 -9
  33. package/dist/data/guides/tokens.md +18 -0
  34. package/dist/data/guides/utility-class.md +9 -8
  35. package/dist/data/meta.js +2 -2
  36. package/dist/lib/load-markdown.d.ts +3 -2
  37. package/dist/lib/load-markdown.js +23 -5
  38. package/dist/lib/search.js +20 -1
  39. package/dist/tools/get-component.js +119 -30
  40. package/dist/tools/get-guide.js +1 -1
  41. package/dist/tools/search-docs.js +1 -1
  42. package/package.json +1 -1
  43. package/dist/data/guides/module-class.md +0 -162
@@ -0,0 +1,68 @@
1
+ # l--fluidCols / `<FluidCols>`
2
+
3
+ カラム要素が指定した幅より小さくならないように自動で折り返す、**ブレイクポイント非依存の段組みクラス**。`auto-fit` / `auto-fill` を使った流動カラムを簡潔に記述できます。
4
+
5
+ ## 基本情報
6
+
7
+ - クラス名: `l--fluidCols`
8
+ - コンポーネント: `<FluidCols>`
9
+ - SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/layout/_fluidCols.scss
10
+ - ドキュメント(人間向け): https://lism-css.com/docs/primitives/l--fluidCols/
11
+
12
+ ## 専用Props
13
+
14
+ | Prop | CSS変数 | 説明 |
15
+ |------|--------|------|
16
+ | `cols` | `--cols` | カラムが維持する最小幅を指定(`12rem`, `320px` など) |
17
+ | `autoFill` | `--autoMode` | `auto-fill` モードに切り替え(デフォルトは `auto-fit`) |
18
+
19
+ ## Usage
20
+
21
+ ### デフォルト幅で利用する
22
+
23
+ ```jsx
24
+ <FluidCols g="20">
25
+ <Box bxsh="20" p="20"><p>カード1のコンテンツ</p></Box>
26
+ <Box bxsh="20" p="20"><p>カード2のコンテンツ</p></Box>
27
+ <Box bxsh="20" p="20"><p>カード3のコンテンツ</p></Box>
28
+ </FluidCols>
29
+ ```
30
+
31
+ ```html
32
+ <div class="l--fluidCols -g:20">
33
+ <div class="l--box -bxsh:20 -p:20"><p>カード1のコンテンツ</p></div>
34
+ <div class="l--box -bxsh:20 -p:20"><p>カード2のコンテンツ</p></div>
35
+ <div class="l--box -bxsh:20 -p:20"><p>カード3のコンテンツ</p></div>
36
+ </div>
37
+ ```
38
+
39
+ ### カラム最小幅と `auto-fill` の指定
40
+
41
+ ```jsx
42
+ <FluidCols cols="12rem" autoFill g="20" fz="s">
43
+ <Box bxsh="20" p="20"><p>A</p></Box>
44
+ <Box bxsh="20" p="20"><p>B</p></Box>
45
+ <Box bxsh="20" p="20"><p>C</p></Box>
46
+ </FluidCols>
47
+ ```
48
+
49
+ ### 2列 → 1列
50
+
51
+ カラム最小幅を大きめに設定すれば「2列 → コンテナが狭まれば 1列」のような段階的段組も自然に作れます。
52
+
53
+ ```jsx
54
+ <FluidCols cols="320px" g="20">
55
+ <Frame ar="16/9">
56
+ <img src="/img/a-1.jpg" width="600" height="400" />
57
+ </Frame>
58
+ <Frame ar="16/9">
59
+ <img src="/img/a-3.jpg" width="600" height="400" />
60
+ </Frame>
61
+ </FluidCols>
62
+ ```
63
+
64
+ ## 関連プリミティブ
65
+
66
+ - [l--columns](./l--columns.md) — ブレイクポイント指定の等幅カラム
67
+ - [l--switchCols](./l--switchCols.md) — 複数列 ↔ 1列の2段階切り替え
68
+ - [l--sideMain](./l--sideMain.md) — メイン幅ベースの2カラム自動切替
@@ -0,0 +1,94 @@
1
+ # l--frame / `<Frame>`
2
+
3
+ 直下のメディア要素(`img`, `video`, `iframe`)を自身のサイズにフィットさせて表示するクラス。アスペクト比固定のメディア枠を簡単に作れます。
4
+
5
+ ## 基本情報
6
+
7
+ - クラス名: `l--frame`
8
+ - コンポーネント: `<Frame>`
9
+ - SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/layout/_frame.scss
10
+ - ドキュメント(人間向け): https://lism-css.com/docs/primitives/l--frame/
11
+
12
+ ## 専用Props
13
+
14
+ | Prop | 説明 |
15
+ |------|------|
16
+ | `ar` | フレームのアスペクト比を指定(`16/9` など)。`ar` 自体はどのコンポーネントにも指定できる汎用 CSS Prop |
17
+
18
+ ## Usage
19
+
20
+ ### アスペクト比の指定
21
+
22
+ ```jsx
23
+ <Frame ar="16/9">
24
+ <img src="/img/a-1.jpg" alt="" width="960" height="640" />
25
+ </Frame>
26
+ ```
27
+
28
+ ```html
29
+ <div class="l--frame -ar:16/9">
30
+ <img src="/img/a-1.jpg" alt="" width="960" height="640" />
31
+ </div>
32
+ ```
33
+
34
+ ### `figure` / `figcaption` の使用
35
+
36
+ `as="figure"` を指定してセマンティックな `<figure>` 要素として出力できます。
37
+
38
+ ```jsx
39
+ <Frame as="figure" ar="16/9" pos="relative">
40
+ <img src="/img/a-1.jpg" alt="" width="960" height="640" />
41
+ <Flex as="figcaption" pos="absolute" b="0" w="100%" jc="center" p="10" c="white" bgc="rgb(0 0 0 / 40%)">
42
+ Caption text
43
+ </Flex>
44
+ </Frame>
45
+ ```
46
+
47
+ ### `iframe` / `video` の使用
48
+
49
+ `iframe`(YouTube 埋め込みなど)や `video` も同様に `l--frame` 直下に配置すれば自動的にフィットします。
50
+
51
+ ```jsx
52
+ <Frame ar="16/9">
53
+ <iframe src="https://www.youtube.com/embed/xxx" allowfullscreen />
54
+ </Frame>
55
+ ```
56
+
57
+ ### Layer 系を活用したオーバーレイ
58
+
59
+ `<Layer>` と組み合わせると、メディア上にテキストやオーバーレイを重ねられます。
60
+
61
+ ```jsx
62
+ <Frame ar="3/2" pos="relative" c="#fff">
63
+ <img src="/img/a-1.jpg" alt="" width="960" height="640" />
64
+ <Layer bgc="rgb(0 0 0 / 40%)" />
65
+ <Layer p="30">
66
+ <Center min-h="100%" g="15">
67
+ <h2>Heading</h2>
68
+ <Text>オーバーレイ内のテキスト...</Text>
69
+ </Center>
70
+ </Layer>
71
+ </Frame>
72
+ ```
73
+
74
+ ### レスポンシブな `ar`
75
+
76
+ `ar` はブレイクポイント別に配列で指定できます。
77
+
78
+ ```jsx
79
+ <Frame ar={['1/1', '3/2', '16/9']} pos="relative">
80
+ <img src="/img/a-1.jpg" alt="" width="960" height="640" />
81
+ </Frame>
82
+ ```
83
+
84
+ ```html
85
+ <div class="l--frame -ar:1/1 -ar_sm -ar_md" style="--ar_sm: 3/2; --ar_md: 16/9">
86
+ <img src="/img/a-1.jpg" alt="" />
87
+ </div>
88
+ ```
89
+
90
+ ## 関連プリミティブ
91
+
92
+ - [is--layer](./is--layer.md) — `l--frame` 内のオーバーレイ配置に使用
93
+ - [l--center](./l--center.md) — フレーム内でテキストを中央配置する時に組み合わせる
94
+ - [a--icon](./a--icon.md) — アイコン画像の表示(`src` 指定)
@@ -0,0 +1,68 @@
1
+ # l--grid / `<Grid>`
2
+
3
+ コンテンツを CSS Grid レイアウトで配置するクラス。`gtc` / `gta` / `ga` などの Grid プロパティと組み合わせて使います。
4
+
5
+ ## 基本情報
6
+
7
+ - クラス名: `l--grid`
8
+ - コンポーネント: `<Grid>`
9
+ - SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/layout/_grid.scss
10
+ - ドキュメント(人間向け): https://lism-css.com/docs/primitives/l--grid/
11
+
12
+ ## Usage
13
+
14
+ ### 基本的な使い方
15
+
16
+ `gtc`(`grid-template-columns`)で列を定義します。
17
+
18
+ ```jsx
19
+ <Grid gtc="auto 1fr auto" g="15">
20
+ <Center p="20" bgc="base-2">L</Center>
21
+ <Center p="20" bd>Center</Center>
22
+ <Center p="20" bgc="base-2">R</Center>
23
+ </Grid>
24
+ ```
25
+
26
+ ```html
27
+ <div class="l--grid -gtc -g:15" style="--gtc: auto 1fr auto">
28
+ <div class="l--center -p:20 -bgc:base-2">L</div>
29
+ <div class="l--center -p:20 -bd">Center</div>
30
+ <div class="l--center -p:20 -bgc:base-2">R</div>
31
+ </div>
32
+ ```
33
+
34
+ ### ブレイクポイントでエリアを切り替える
35
+
36
+ `gta`(`grid-template-areas`)と `gtc` を配列で渡すと、ブレイクポイントごとに別レイアウトを定義できます。子要素には `ga`(`grid-area`)で対応するエリア名を指定します。
37
+
38
+ ```jsx
39
+ <Grid g="15" gtc={['1fr 1fr', '8em 1fr 8em']} gta={[`'main main' 'left right'`, `'left main right'`]}>
40
+ <Box ga="left" p="15" bgc="base-2">Left</Box>
41
+ <Box ga="main" p="15" bd>Center</Box>
42
+ <Box ga="right" p="15" bgc="base-2">Right</Box>
43
+ </Grid>
44
+ ```
45
+
46
+ ### 子要素を重ねて表示する(`ga="1/1"`)
47
+
48
+ `position: absolute` を使わず、`grid-area: 1/1` を複数子要素に指定することで要素を重ねられます。
49
+
50
+ ```jsx
51
+ <Grid ar="16/9">
52
+ <Frame ga="1/1" w="100%" h="100%" pos="relative">
53
+ <Media src="/img/a-1.jpg" alt="" inferSize />
54
+ <Layer bgc="rgb(0 0 0 / 40%)" />
55
+ </Frame>
56
+ <Center ga="1/1" fz="3xl" z="1" c="white">SAMPLE TEXT</Center>
57
+ </Grid>
58
+ ```
59
+
60
+ ### subgrid の活用
61
+
62
+ `gtc="subgrid"` を入れ子の Grid に指定することで親 Grid のトラックを継承し、複数行を揃えたレイアウトが作れます。記事一覧やテーブル風レイアウトに活用できます。
63
+
64
+ ## 関連プリミティブ
65
+
66
+ - [l--tileGrid](./l--tileGrid.md) — 自動繰り返しのタイル型 Grid
67
+ - [l--columns](./l--columns.md) — 等幅カラム専用
68
+ - [l--sideMain](./l--sideMain.md) — コンテンツ幅自動切り替え型 2 カラム
@@ -0,0 +1,102 @@
1
+ # l--sideMain / `<SideMain>`
2
+
3
+ メディアクエリ・コンテナクエリに依存せず、**維持したいコンテンツ幅を基準にして横並び・縦並びが自動で切り替わる2カラムレイアウト**。「画像 + コンテンツ」「メインエリア + サイドバー」などに活用できる。
4
+
5
+ ## 基本情報
6
+
7
+ - クラス名: `l--sideMain`
8
+ - コンポーネント: `<SideMain>`
9
+ - SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/layout/_sideMain.scss
10
+ - ドキュメント(人間向け): https://lism-css.com/docs/primitives/l--sideMain/
11
+
12
+ ## 動作の仕組み
13
+
14
+ - サイド側の横幅を `--sideW` で、メイン側で維持したい最小横幅を `--mainW` で指定
15
+ - メイン側が `--mainW` を維持できる範囲内では横並びを保ち、下回ると自動で縦並びに切り替わる
16
+ - 子要素の**一方に `is--side` を付ける必要がある**(コンポーネントでは `isSide` prop)
17
+
18
+ ## 専用Props
19
+
20
+ | Prop | 出力 | 説明 |
21
+ |------|------|------|
22
+ | `sideW` | `--sideW` | サイド要素の横幅 |
23
+ | `mainW` | `--mainW` | メイン要素で維持したい最小幅 |
24
+
25
+ ## HTML構造
26
+
27
+ ```html
28
+ <div class="l--sideMain">
29
+ <div>Main Content</div>
30
+ <div class="is--side">Side Content</div>
31
+ </div>
32
+ ```
33
+
34
+ ## Usage
35
+
36
+ ### 基本的な使い方
37
+
38
+ ```jsx
39
+ <SideMain sideW="12rem" mainW="20rem" g="20">
40
+ <Box p="15" bd bdc="blue">
41
+ <p>Main Content</p>
42
+ <p>メインコンテンツ本文...</p>
43
+ </Box>
44
+ <Box isSide p="15" bd bdc="red">
45
+ <p>Side Content</p>
46
+ </Box>
47
+ </SideMain>
48
+ ```
49
+
50
+ ```html
51
+ <div class="l--sideMain -g:20" style="--sideW:12rem;--mainW:20rem">
52
+ <div class="l--box -p:15 -bd" style="--bdc:var(--blue)">
53
+ <p>Main Content</p>
54
+ <p>メインコンテンツ本文...</p>
55
+ </div>
56
+ <div class="l--box is--side -p:15 -bd" style="--bdc:var(--red)">
57
+ <p>Side Content</p>
58
+ </div>
59
+ </div>
60
+ ```
61
+
62
+ ### Side 要素の位置を反転(`-fxd:row-reverse`)
63
+
64
+ `flex-direction: row-reverse` を併用することで、横並びの時だけ順序を反転できます。**横並びで左側・縦並びで下側に Side を配置**したいときに便利。
65
+
66
+ ```jsx
67
+ <SideMain fxd="row-reverse" sideW="10rem" mainW="16rem" g="20">
68
+ <Box>
69
+ <p>Main content...</p>
70
+ </Box>
71
+ <Box isSide bgc="blue:20%">Side Content</Box>
72
+ </SideMain>
73
+ ```
74
+
75
+ ```html
76
+ <div class="l--sideMain -fxd:row-reverse -g:20" style="--sideW:10rem;--mainW:16rem">
77
+ <div class="l--box">
78
+ <p>Main content...</p>
79
+ </div>
80
+ <div class="l--box is--side">Side Content</div>
81
+ </div>
82
+ ```
83
+
84
+ ## `l--grid` との使い分け
85
+
86
+ - **`l--sideMain`**: ブレイクポイントに依存せず、コンテンツ幅で自動切り替え
87
+ - **`l--grid`** (`<Grid gta={[...]} gtc={[...]} />`): ブレイクポイント(`sm`/`md`)で明示的に切り替えたい場合
88
+
89
+ ```jsx
90
+ // ブレイクポイント依存で似たレイアウトを構築する例
91
+ <Grid gta={[`'.' 'side'`, `'. side'`]} gtc={[null, '1fr 10rem']} g="20">
92
+ <Box>メインコンテンツ</Box>
93
+ <Box ga="side">サイドコンテンツ</Box>
94
+ </Grid>
95
+ ```
96
+
97
+ ## 関連プリミティブ
98
+
99
+ - [l--grid](./l--grid.md) — ブレイクポイント切り替え型の2カラム構築に使用
100
+ - [l--fluidCols](./l--fluidCols.md) — カラム幅ベースの自動段組
101
+ - [l--switchCols](./l--switchCols.md) — ブレイクポイント一括切り替え型カラム
102
+ - [is--container](./is--container.md) — レスポンシブ Property Class 利用時に必要
@@ -0,0 +1,56 @@
1
+ # l--stack / `<Stack>`
2
+
3
+ 複数の要素を Flex レイアウトで縦並びに配置するクラス。`gap` で余白を管理します。
4
+
5
+ ## 基本情報
6
+
7
+ - クラス名: `l--stack`
8
+ - コンポーネント: `<Stack>`
9
+ - SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/layout/_stack.scss
10
+ - ドキュメント(人間向け): https://lism-css.com/docs/primitives/l--stack/
11
+
12
+ ## Usage
13
+
14
+ ### 基本的な使い方
15
+
16
+ ```jsx
17
+ <Stack g="20">
18
+ <p>コンテンツ</p>
19
+ <p>コンテンツ</p>
20
+ <p>コンテンツ</p>
21
+ </Stack>
22
+ ```
23
+
24
+ ```html
25
+ <div class="l--stack -g:20">
26
+ <p>コンテンツ</p>
27
+ <p>コンテンツ</p>
28
+ <p>コンテンツ</p>
29
+ </div>
30
+ ```
31
+
32
+ ### 内在的な中央寄せ(`ai="center"`)
33
+
34
+ `ai="center"` を併用すると、Every Layout で言うところの**内在的な中央寄せ**(コンテンツ幅が短い要素だけ中央揃え、長い要素はそのまま)になります。
35
+
36
+ ```jsx
37
+ <Stack ai="center" g="20" p="30">
38
+ <h3>見出し</h3>
39
+ <p>短いテキスト</p>
40
+ <p>長めのテキスト...</p>
41
+ </Stack>
42
+ ```
43
+
44
+ ```html
45
+ <div class="l--stack -ai:center -p:30 -g:20">
46
+ <h3>見出し</h3>
47
+ <p>短いテキスト</p>
48
+ <p>長めのテキスト...</p>
49
+ </div>
50
+ ```
51
+
52
+ ## 関連プリミティブ
53
+
54
+ - [l--flex](./l--flex.md) — 汎用 Flex 横並び
55
+ - [l--flow](./l--flow.md) — `margin-block-start` で余白を管理するテキスト向けフロー
56
+ - [l--cluster](./l--cluster.md) — 折り返し前提の横並び
@@ -0,0 +1,69 @@
1
+ # l--switchCols / `<SwitchCols>`
2
+
3
+ 複数列 ↔ 1列の切り替えをコンテナクエリやメディアクエリを使わずに実装するクラス。Flexbox ベースで、親コンテナ幅に応じて自動的に折り返します。
4
+
5
+ ## 基本情報
6
+
7
+ - クラス名: `l--switchCols`
8
+ - コンポーネント: `<SwitchCols>`
9
+ - SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/layout/_switchCols.scss
10
+ - ドキュメント(人間向け): https://lism-css.com/docs/primitives/l--switchCols/
11
+
12
+ ## 専用Props
13
+
14
+ | Prop | CSS変数 | 説明 |
15
+ |------|--------|------|
16
+ | `breakSize` | `--breakSize` | 横並びを維持するのに必要な親コンテナ幅を指定。`sz` トークンが使える |
17
+
18
+ ## Usage
19
+
20
+ ### デフォルト幅で利用する
21
+
22
+ ```jsx
23
+ <SwitchCols g="20">
24
+ <div class="-bgc:base-2 -p:20">Box</div>
25
+ <div class="-bgc:base-2 -p:20">Box</div>
26
+ <div class="-bgc:base-2 -p:20">Box</div>
27
+ </SwitchCols>
28
+ ```
29
+
30
+ ```html
31
+ <div class="l--switchCols -g:20">
32
+ <div class="-bgc:base-2 -p:20">Box</div>
33
+ <div class="-bgc:base-2 -p:20">Box</div>
34
+ <div class="-bgc:base-2 -p:20">Box</div>
35
+ </div>
36
+ ```
37
+
38
+ ### `breakSize` の指定
39
+
40
+ ```jsx
41
+ <SwitchCols breakSize="s" g="20">
42
+ <div class="-bgc:base-2 -p:20">Box</div>
43
+ <div class="-bgc:base-2 -p:20">Box</div>
44
+ </SwitchCols>
45
+ ```
46
+
47
+ ```html
48
+ <div class="l--switchCols -g:20" style="--breakSize: var(--sz--s)">
49
+ <div class="-bgc:base-2 -p:20">Box</div>
50
+ <div class="-bgc:base-2 -p:20">Box</div>
51
+ </div>
52
+ ```
53
+
54
+ ### `flex-grow` で比率を調整
55
+
56
+ 子要素に `flex-grow` を指定すると、横並び時の幅の比率を個別に調整できます。
57
+
58
+ ```jsx
59
+ <SwitchCols breakSize="s" g="20">
60
+ <div class="-bgc:base-2 -p:20">Box</div>
61
+ <div class="-bgc:base-2 -p:20" style={{ flexGrow: 2 }}>Box</div>
62
+ </SwitchCols>
63
+ ```
64
+
65
+ ## 関連プリミティブ
66
+
67
+ - [l--fluidCols](./l--fluidCols.md) — 最小幅ベースの自動段組
68
+ - [l--columns](./l--columns.md) — ブレイクポイント指定の等幅カラム
69
+ - [l--sideMain](./l--sideMain.md) — コンテンツ幅基準の2カラム切り替え
@@ -0,0 +1,61 @@
1
+ # l--tileGrid / `<TileGrid>`
2
+
3
+ `cols`(列数)と `rows`(行数)を指定して、**均等なタイル型グリッドレイアウト**を構成するクラス。内部的には `grid-template: repeat(rows, minmax(0, 1fr)) / repeat(cols, minmax(0, 1fr))` を使用します。
4
+
5
+ ## 基本情報
6
+
7
+ - クラス名: `l--tileGrid`
8
+ - コンポーネント: `<TileGrid>`
9
+ - SCSSソース: https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/primitives/layout/_tileGrid.scss
10
+ - ドキュメント(人間向け): https://lism-css.com/docs/primitives/l--tileGrid/
11
+
12
+ ## 専用Props
13
+
14
+ | Prop | CSS変数 | 説明 | デフォルト |
15
+ |------|--------|------|------------|
16
+ | `cols` | `--cols` | 列数を指定。配列でブレイクポイント指定可 | `1` |
17
+ | `rows` | `--rows` | 行数を指定。配列でブレイクポイント指定可 | `1` |
18
+
19
+ ## Usage
20
+
21
+ ### 基本的な使い方
22
+
23
+ ```jsx
24
+ <TileGrid cols="3" rows="3" g="5" min-h="50svh">
25
+ <Box p="20" bgc="base-2">item1</Box>
26
+ <Box p="20" bgc="base-2">item2</Box>
27
+ <Box p="20" bgc="base-2">item3</Box>
28
+ <Box p="20" bgc="base-2">item4</Box>
29
+ <Box p="20" bgc="base-2" gc="span 2">item5</Box>
30
+ <Center gc="3" gr="1 / -1" p="20" bgc="blue">item6</Center>
31
+ </TileGrid>
32
+ ```
33
+
34
+ ```html
35
+ <div class="l--tileGrid -g:5 -min-h:50svh" style="--cols: 3; --rows: 3">
36
+ <div class="l--box -p:20 -bgc:base-2">item1</div>
37
+ <div class="l--box -p:20 -bgc:base-2">item2</div>
38
+ <div class="l--box -p:20 -bgc:base-2">item3</div>
39
+ <div class="l--box -p:20 -bgc:base-2">item4</div>
40
+ <div class="l--box -p:20 -bgc:base-2 -gc:span 2">item5</div>
41
+ <div class="l--center -p:20 -bgc:blue" style="grid-column: 3; grid-row: 1 / -1">item6</div>
42
+ </div>
43
+ ```
44
+
45
+ ### ブレイクポイント別指定
46
+
47
+ `cols` / `rows` をブレイクポイントで切り替え、`gaf`(`grid-auto-flow`)と組み合わせて動的レイアウトも構築できます。
48
+
49
+ ```jsx
50
+ <TileGrid cols={['2', '3']} rows="4" min-h="50svh" gaf="row dense">
51
+ <Box gc={['1 / -1', 'span 2']} gr={['span 2', '1 / -1']} p="20" bgc="base-2">A</Box>
52
+ <Box p="20" bgc="green:20%">B</Box>
53
+ <Box p="20" bgc="blue:20%">C</Box>
54
+ </TileGrid>
55
+ ```
56
+
57
+ ## 関連プリミティブ
58
+
59
+ - [l--columns](./l--columns.md) — 等幅列のみ(1D)のカラム
60
+ - [l--fluidCols](./l--fluidCols.md) — 自動折り返し型段組
61
+ - [l--grid](./l--grid.md) — 汎用 CSS Grid
@@ -53,7 +53,7 @@ CSS Layer の外(最も高い詳細度)に配置され、`-{prop}(:{value})`
53
53
 
54
54
  ## 全 Prop 一覧
55
55
 
56
- ソース: [props.ts](https://github.com/lism-css/lism-css/blob/main/packages/lism-css/config/defaults/props.ts)
56
+ ソース: [props.ts](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/config/defaults/props.ts)
57
57
 
58
58
  ### タイポグラフィ
59
59
 
@@ -125,7 +125,8 @@ CSS Layer の外(最も高い詳細度)に配置され、`-{prop}(:{value})`
125
125
  | `keycolor` | `--keycolor` 変数のみ | — | — |
126
126
 
127
127
  セマンティックカラー: `base`, `base-2`, `text`, `text-2`, `divider`, `link`, `brand`, `accent`
128
- パレットカラー: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `gray`, `white`, `black`, `keycolor`
128
+ パレットカラー: `red`, `blue`, `green`, `yellow`, `purple`, `orange`, `pink`, `gray`, `white`, `black`
129
+ キーカラー変数: `keycolor`(ユーザー定義の `--keycolor` を参照する独立変数。詳細は `tokens.md` を参照)
129
130
 
130
131
  ### 角丸
131
132
 
@@ -270,7 +271,7 @@ SPACE トークン(全値): `5`, `10`, `15`, `20`, `30`, `40`, `50`, `60`, `
270
271
 
271
272
  ### ボーダー(`bd` 系)
272
273
 
273
- [詳細](https://lism-css.com/docs/props/bd/)
274
+ [詳細](https://lism-css.com/docs/property-class/bd/)
274
275
 
275
276
  Lism CSS のボーダーは CSS 変数(`--bds`, `--bdw`, `--bdc`)で管理される特殊な仕様です。
276
277
  `-bd` または `-bd-{side}` クラスを付けると、初期値(`--bds: solid`, `--bdw: 1px`, `--bdc: var(--divider)`)がセットされ、`bds`, `bdc`, `bdw` Prop で個別に上書きできます。
@@ -311,7 +312,7 @@ Lism CSS のボーダーは CSS 変数(`--bds`, `--bdw`, `--bdc`)で管理
311
312
 
312
313
  ### ホバー(`hov` 系)
313
314
 
314
- [詳細](https://lism-css.com/docs/props/hov/)
315
+ [詳細](https://lism-css.com/docs/property-class/hov/)
315
316
 
316
317
  ホバーエフェクト用のクラスです。`-hov:{prop}` 系と `-hov:to:*` 系の2種類があります。
317
318
 
@@ -349,7 +350,7 @@ Lism CSS のボーダーは CSS 変数(`--bds`, `--bdw`, `--bdc`)で管理
349
350
 
350
351
  ```jsx
351
352
  // set--hov + set--transition が必要
352
- <Box set={['hov', 'transition']}>
353
+ <Box set="hov transition">
353
354
  <Box hov={{ to: 'show' }}>ホバーで表示</Box>
354
355
  </Box>
355
356
  ```
@@ -3,6 +3,8 @@
3
3
  `@layer lism-base` に属し、特定の機能を有効にするために CSS変数やベーススタイルをセットアップするクラス群です。
4
4
  HTML では直接クラスを付与し、Lism コンポーネントでは `set` prop(`set="plain"`, `set="shadow"` 等)で指定します。
5
5
 
6
+ `set` prop の記法(複数値指定・`-` prefix による除外)は [components-core.md](./components-core.md#共通-props) を参照してください。
7
+
6
8
  ## TOC
7
9
 
8
10
  - [`set--plain`](#set--plain)
@@ -13,7 +15,7 @@ HTML では直接クラスを付与し、Lism コンポーネントでは `set`
13
15
  - [`set--innerRs`](#set--innerrs)
14
16
  - [`set--bp`](#set--bp)
15
17
 
16
- [詳細](https://lism-css.com/docs/set/)
18
+ [詳細](https://lism-css.com/docs/set-class/)
17
19
 
18
20
  ---
19
21
 
@@ -23,13 +25,13 @@ HTML では直接クラスを付与し、Lism コンポーネントでは `set`
23
25
 
24
26
  | クラス | ソースファイル |
25
27
  |--------|---------------|
26
- | `set--plain` | [`_plain.scss`](https://github.com/lism-css/lism-css/blob/main/packages/lism-css/src/scss/base/set/_plain.scss) |
27
- | `set--shadow` | [`_shadow.scss`](https://github.com/lism-css/lism-css/blob/main/packages/lism-css/src/scss/base/tokens/_shadow.scss) |
28
- | `set--hov` | [`_hov.scss`](https://github.com/lism-css/lism-css/blob/main/packages/lism-css/src/scss/base/set/_hov.scss) |
29
- | `set--transition` | [`_transition.scss`](https://github.com/lism-css/lism-css/blob/main/packages/lism-css/src/scss/base/set/_transition.scss) |
30
- | `set--gutter` | [`_gutter.scss`](https://github.com/lism-css/lism-css/blob/main/packages/lism-css/src/scss/base/set/_gutter.scss) |
31
- | `set--innerRs` | [`_innerRs.scss`](https://github.com/lism-css/lism-css/blob/main/packages/lism-css/src/scss/base/set/_innerRs.scss) |
32
- | `set--bp` | [`_bp.scss`](https://github.com/lism-css/lism-css/blob/main/packages/lism-css/src/scss/base/set/_bp.scss) |
28
+ | `set--plain` | [`_plain.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/set/_plain.scss) |
29
+ | `set--shadow` | [`_shadow.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/tokens/_shadow.scss) |
30
+ | `set--hov` | [`_hov.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/set/_hov.scss) |
31
+ | `set--transition` | [`_transition.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/set/_transition.scss) |
32
+ | `set--gutter` | [`_gutter.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/set/_gutter.scss) |
33
+ | `set--innerRs` | [`_innerRs.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/set/_innerRs.scss) |
34
+ | `set--bp` | [`_bp.scss`](https://raw.githubusercontent.com/lism-css/lism-css/main/packages/lism-css/src/scss/base/set/_bp.scss) |
33
35
 
34
36
  ---
35
37
 
@@ -93,7 +95,7 @@ HTML では直接クラスを付与し、Lism コンポーネントでは `set`
93
95
  例えば、親のボックスがhoverされたら、その内部の画像をズームするようなケースで活用でき、`-hov:to:zoom`クラスが標準で用意されています。
94
96
 
95
97
  ```html
96
- <a href="###" class="l--frame is--linkBox set--hov -ar:21/9 -ov:hidden">
98
+ <a href="###" class="l--frame is--boxLink set--hov -ar:21/9 -ov:hidden">
97
99
  <img class="set--transition -hov:to:zoom" src="https://cdn.lism-css.com/img/a-2.jpg" width="960" height="640" loading="lazy" />
98
100
  <div class="is--layer -bgc" style="--c: #fff; --bgc: rgb(0 0 0 / 50%)"></div>
99
101
  <div class="l--center is--layer -c" style="--c: #fff;">
@@ -198,6 +198,24 @@ OKLCH で定義されたカラーパレット。`--L`(明度)と `--C`(彩
198
198
  | `--black` | `#000` |
199
199
  | `--white` | `#fff` |
200
200
 
201
+ ### キーカラー変数 (`--keycolor`)
202
+
203
+ `--keycolor` は、カラートークンとは性質が異なる。初めから値があるわけではない。ボックス全体のカラーリングなどを行う際の「軸となる色」を指定するための変数。
204
+
205
+ `--keycolor: var(--red)` のように指定しておくことで、そのボックス自身や子要素のカラー Props(`c`, `bgc`, `bdc` など)で 特定の色をハードコーディングせずに `--keycolor` 経由で参照できるようにすることができる。代表的な使用例は `u--cbox` ユーティリティクラス。
206
+
207
+ ```html
208
+ <!-- ボックスにキーカラーを設定、テキストをキーカラーに連動させる例 -->
209
+ <div class="u--cbox" style="--keycolor: var(--red)">
210
+ <p class="-c" style="-c:var(--keycolor)">...</p>
211
+ </div>
212
+ ```
213
+ ```jsx
214
+ <Lism class="u--cbox" keycolor="var(--red)">
215
+ <Text c="keycolor">...</Text>
216
+ </Lism>
217
+ ```
218
+
201
219
  - `c`, `bgc` 等のカラー系 Props では、セマンティックカラー → パレットカラーの順で検索される
202
220
  - どちらも最終的に `var(--{name})` に変換される
203
221