@lism-css/mcp 0.11.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.
- package/README.ja.md +4 -2
- package/README.md +4 -2
- package/dist/data/docs-index.json +456 -178
- package/dist/data/guides/SKILL.md +154 -0
- package/dist/data/guides/base-styles.md +106 -0
- package/dist/data/guides/components-core.md +292 -0
- package/dist/data/guides/components-ui.md +351 -0
- package/dist/data/guides/css-rules.md +166 -0
- package/dist/data/guides/primitive-class.md +148 -0
- package/dist/data/guides/primitives/a--decorator.md +45 -0
- package/dist/data/guides/primitives/a--divider.md +69 -0
- package/dist/data/guides/primitives/a--icon.md +105 -0
- package/dist/data/guides/primitives/a--spacer.md +63 -0
- package/dist/data/guides/primitives/is--boxLink.md +97 -0
- package/dist/data/guides/primitives/is--container.md +46 -0
- package/dist/data/guides/primitives/is--layer.md +71 -0
- package/dist/data/guides/primitives/is--vertical.md +52 -0
- package/dist/data/guides/primitives/is--wrapper.md +87 -0
- package/dist/data/guides/primitives/l--box.md +31 -0
- package/dist/data/guides/primitives/l--center.md +55 -0
- package/dist/data/guides/primitives/l--cluster.md +38 -0
- package/dist/data/guides/primitives/l--columns.md +72 -0
- package/dist/data/guides/primitives/l--flex.md +74 -0
- package/dist/data/guides/primitives/l--flow.md +134 -0
- package/dist/data/guides/primitives/l--fluidCols.md +68 -0
- package/dist/data/guides/primitives/l--frame.md +94 -0
- package/dist/data/guides/primitives/l--grid.md +68 -0
- package/dist/data/guides/primitives/l--sideMain.md +102 -0
- package/dist/data/guides/primitives/l--stack.md +56 -0
- package/dist/data/guides/primitives/l--switchCols.md +69 -0
- package/dist/data/guides/primitives/l--tileGrid.md +61 -0
- package/dist/data/guides/prop-responsive.md +54 -0
- package/dist/data/guides/property-class.md +401 -0
- package/dist/data/guides/set-class.md +192 -0
- package/dist/data/guides/tokens.md +228 -0
- package/dist/data/guides/utility-class.md +82 -0
- package/dist/data/meta.js +2 -2
- package/dist/index.js +4 -0
- package/dist/lib/load-data.js +2 -11
- package/dist/lib/load-markdown.d.ts +7 -0
- package/dist/lib/load-markdown.js +47 -0
- package/dist/lib/markdown-utils.d.ts +42 -0
- package/dist/lib/markdown-utils.js +158 -0
- package/dist/lib/schemas.d.ts +0 -242
- package/dist/lib/schemas.js +0 -64
- package/dist/lib/search.d.ts +2 -16
- package/dist/lib/search.js +29 -69
- package/dist/lib/types.d.ts +0 -64
- package/dist/tools/convert-css.js +96 -55
- package/dist/tools/get-component.js +150 -30
- package/dist/tools/get-guide.d.ts +2 -0
- package/dist/tools/get-guide.js +45 -0
- package/dist/tools/get-overview.js +26 -39
- package/dist/tools/get-props-system.js +45 -33
- package/dist/tools/get-tokens.js +9 -14
- package/dist/tools/search-docs.js +28 -10
- package/package.json +2 -2
- package/dist/data/components.json +0 -564
- package/dist/data/overview.json +0 -114
- package/dist/data/props-system.json +0 -1147
- package/dist/data/tokens.json +0 -148
|
@@ -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
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# レスポンシブ対応
|
|
2
|
+
|
|
3
|
+
Lism CSS はコンテナクエリをデフォルトで採用しています。
|
|
4
|
+
ブレークポイント: `sm: 480px`, `md: 800px`(`lg: 1120px` はカスタマイズにより利用可能)
|
|
5
|
+
|
|
6
|
+
## TOC
|
|
7
|
+
|
|
8
|
+
- [HTML / Property Class での指定](#html--property-class-での指定)
|
|
9
|
+
- [Lism コンポーネントでの指定](#lism-コンポーネントでの指定)
|
|
10
|
+
|
|
11
|
+
[詳細](https://lism-css.com/docs/responsive/)
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## HTML / Property Class での指定
|
|
16
|
+
|
|
17
|
+
ブレークポイント用のクラス `-{prop}_{bp}` と CSS変数 `--{prop}_{bp}` を組み合わせます。
|
|
18
|
+
|
|
19
|
+
```html
|
|
20
|
+
<!-- sm 以上で p:30, md 以上で p:40 に切り替え -->
|
|
21
|
+
<div class="-p:20 -p_sm -p_md" style="--p_sm: var(--s30); --p_md: var(--s40)">
|
|
22
|
+
...
|
|
23
|
+
</div>
|
|
24
|
+
|
|
25
|
+
<!-- sm 以上で fz を l に切り替え -->
|
|
26
|
+
<div class="-fz:s -fz_sm" style="--fz_sm: var(--fz--l)">
|
|
27
|
+
...
|
|
28
|
+
</div>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
**仕組み:**
|
|
32
|
+
1. `-p_sm` クラスは `@container (min-width: 480px)` 内で `padding: var(--p_sm)` を適用
|
|
33
|
+
2. `--p_sm` 変数で切り替え先の値を指定
|
|
34
|
+
3. `overwriteBaseVar` 対応の Prop はベース変数(`--p`)も上書きされる
|
|
35
|
+
|
|
36
|
+
## Lism コンポーネントでの指定
|
|
37
|
+
|
|
38
|
+
配列形式またはオブジェクト形式でレスポンシブ値を指定します。
|
|
39
|
+
|
|
40
|
+
```jsx
|
|
41
|
+
// 配列形式: [デフォルト, sm, md]
|
|
42
|
+
<Box p={[20, 30, 40]} fz={['s', 'm', 'l']} />
|
|
43
|
+
|
|
44
|
+
// オブジェクト形式
|
|
45
|
+
<Box p={{ base: '20', sm: '30', md: '40' }} />
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
出力される HTML:
|
|
49
|
+
|
|
50
|
+
```html
|
|
51
|
+
<div class="l--box -p:20 -p_sm -p_md -fz:s -fz_sm -fz_md"
|
|
52
|
+
style="--p_sm: var(--s30); --p_md: var(--s40); --fz_sm: var(--fz--m); --fz_md: var(--fz--l)">
|
|
53
|
+
</div>
|
|
54
|
+
```
|