@burger-editor/blocks 4.0.0-alpha.4 → 4.0.0-alpha.43

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 (5) hide show
  1. package/README.md +56 -57
  2. package/dist/index.js +1182 -435
  3. package/package.json +13 -11
  4. package/types.d.ts +7 -0
  5. package/LICENSE +0 -21
package/README.md CHANGED
@@ -4,82 +4,81 @@
4
4
 
5
5
  ブロックエディタの標準ブロックと標準アイテムを提供するパッケージです。
6
6
 
7
- ## ブロックの仕様
8
-
9
- ### ブロックの構成
10
-
11
- ```html
12
- <div data-bge-name="{ブロック名}" data-bge-container="inline:center:wrap">
13
- <div data-bge-group>
14
- <div data-bge-item>{アイテムの01HTML}</div>
15
- <div data-bge-item>{アイテムの02HTML}</div>
16
- </div>
17
- <div data-bge-group>
18
- <div data-bge-item>{アイテムの01HTML}</div>
19
- <div data-bge-item>{アイテムの02HTML}</div>
20
- </div>
21
- <div data-bge-group>
22
- <div data-bge-item>{アイテムの01HTML}</div>
23
- <div data-bge-item>{アイテムの02HTML}</div>
24
- </div>
25
- </div>
26
- ```
7
+ > **ℹ️ ブロックの構造仕様について**
8
+ > ブロックの構造管理は[@burger-editor/core](../core/)で行われています。
9
+ > ブロック構造の詳細仕様については [@burger-editor/core のREADME](../core/README.md#ブロックの仕様) を参照してください。
10
+
11
+ ## 提供されるアイテム
27
12
 
28
- ### ブロックを構成する要素
13
+ このパッケージでは以下のアイテムを提供しています:
29
14
 
30
- #### コンテナ
15
+ - **button** - ボタン
16
+ - **details** - 折りたたみ要素
17
+ - **download-file** - ダウンロードファイル
18
+ - **google-maps** - Google Maps 埋め込み
19
+ - **hr** - 水平線
20
+ - **image** - 画像
21
+ - **table** - テーブル
22
+ - **title-h2** - 大見出し(h2)
23
+ - **title-h3** - 中見出し(h3)
24
+ - **wysiwyg** - リッチテキストエディタ
25
+ - **youtube** - YouTube 動画埋め込み
31
26
 
32
- `data-bge-container`属性はコンテナの性質を表します。ブロックのルート要素にあたります。属性値はコロン区切りで表現し、先頭はコンテナのタイプを表し、その後にオプションが続きます。
27
+ ## 提供されるブロックカタログ
33
28
 
34
- `data-bge-name`属性はブロックの名前を表します。ブロック選択の際に利用されますが、振る舞いには影響しません(⚠️ つまり、この属性を利用したスタイル変更は推奨されません)。
29
+ このパッケージではデフォルトのブロックカタログを提供しています:
35
30
 
36
- ##### コンテナタイプ
31
+ ### 見出し
37
32
 
38
- アイテムの配置方法を表します。
33
+ - **大見出し** (h2) - title-h2 アイテムを使用
34
+ - **中見出し** (h3) - title-h3 アイテムを使用
39
35
 
40
- - `grid`: グリッドに並べる( `display: block grid;` )
41
- - `inline`: インライン方向に並べる( `display: block flex;` )
42
- - `float`: 先頭のアイテムを回り込みさせる
36
+ ### 基本ブロック
43
37
 
44
- ##### `grid`オプション
38
+ - **テキスト** (wysiwyg) - wysiwyg アイテムを使用
39
+ - **画像** (image) - image アイテムを使用
40
+ - **折りたたみ** (disclosure) - details アイテムを使用
41
+ - **テーブル** (table) - table アイテムを使用
42
+ - **YouTube** (youtube) - youtube アイテムを使用
45
43
 
46
- - `[数値]`: グリッドの列数( `grid-template-columns: repeat([数値], 1fr);` ) 1〜5の範囲で指定可能
44
+ ### カード
47
45
 
48
- 例: `data-bge-container="grid:3"`
46
+ - **画像 + テキスト** (image-text) - image と wysiwyg アイテムを3列グリッドで組み合わせ
47
+ - **テキスト+画像+テキスト** (text-image-text) - wysiwyg、image、wysiwyg を3列グリッドで組み合わせ
49
48
 
50
- ##### `inline`オプション
49
+ ### 画像+テキスト
51
50
 
52
- - `center`: 中央寄せ( `justify-content: center;`
53
- - `start`: 左寄せ( `justify-content: start;`
54
- - `end`: 右寄せ( `justify-content: end;`
55
- - `between`: 両端寄せ( `justify-content: space-between;`
56
- - `around`: 左右余白均等( `justify-content: space-around;` )
57
- - `evenly`: 要素間均等( `justify-content: space-evenly;` )
58
- - `align-center`: 垂直中央寄せ( `align-items: center;` )
59
- - `align-start`: 上寄せ( `align-items: start;` )
60
- - `align-end`: 下寄せ( `align-items: end;` )
61
- - `align-stretch`: 伸縮( `align-items: stretch;` )
62
- - `align-baseline`: ベースライン( `align-items: baseline;` )
63
- - `wrap`: 折り返し( `flex-wrap: wrap;` )
64
- - `nowrap`: 折り返さない( `flex-wrap: nowrap;` )
51
+ - **画像右寄せ: テキスト回り込み** (text-float-image-end) - 画像が右に浮動し、テキストが回り込み
52
+ - **画像左寄せ: テキスト回り込み** (text-float-image-start) - 画像が左に浮動し、テキストが回り込み
53
+ - **画像右寄せ: テキスト回り込み無し** (text-start-image-end) - テキストと画像を左右に配置(回り込み無し)
54
+ - **画像左寄せ: テキスト回り込み無し** (image-start-text-end) - 画像とテキストを左右に配置(回り込み無し)
65
55
 
66
- 例: `data-bge-container="inline:space-between:wrap"`
56
+ ### ボタン
67
57
 
68
- ##### `float`オプション
58
+ - **ボタン** (button) - button アイテムを3つ横並びで配置
59
+ - **テキストリンク** (button) - リンク形式のボタンを3つ配置
60
+ - **ファイルダウンロード** (file) - download-file アイテムを3つ横並びで配置
61
+ - **コンテンツナビゲーション** (content-navigation) - ページ内リンクボタンを4列グリッドで8つ配置
69
62
 
70
- - `start`: 左寄せ( `float: inline-start;` )
71
- - `end`: 右寄せ( `float: inline-end;` )
63
+ ### その他
72
64
 
73
- 例: `data-bge-container="float:start"`
65
+ - **Google Maps** (google-maps) - google-maps アイテムを使用
66
+ - **区切り線** (hr) - hr アイテムを使用
74
67
 
75
- ##### 共通オプション
68
+ ## 使用方法
76
69
 
77
- - `immutable`: コンテナのタイプやオプションを変更できない
70
+ ```typescript
71
+ import { items, defaultCatalog } from '@burger-editor/blocks';
78
72
 
79
- #### グループ
73
+ // アイテムの使用
74
+ const wysiwygItem = items.wysiwyg;
75
+
76
+ // ブロックカタログの使用
77
+ const catalog = defaultCatalog;
78
+ ```
80
79
 
81
- グループは`data-bge-group`属性をもつ任意の要素です。コンテナ内の直下に配置され、アイテムのまとまりをつくります。このグループは「要素の追加/削除」機能で**増減することができます**。グループがない場合は「要素の追加/削除」機能が無効になります。
80
+ ## カスタムアイテムの作成
82
81
 
83
- #### アイテム
82
+ 独自のアイテムを作成する場合は、[@burger-editor/core](../core/README.md)の`createItem`関数を使用します。
84
83
 
85
- アイテムは`data-bge-item`属性をもつ要素で、コンテンツ編集可能な要素をラップします。
84
+ > **📖 エディターAPIの詳細**: アイテムエディターのAPIの使い方と実践的なユースケースについては、[アイテムエディターAPIガイド](../../../docs/item-editor-api.md)を参照してください。