itmar-block-packages 1.3.6 → 1.3.8
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.md +54 -2
- package/build/index.asset.php +1 -1
- package/build/index.js +3 -3
- package/package.json +1 -1
- package/src/BlockPlace.js +57 -23
- package/src/DateElm.js +354 -0
- package/src/IconSelectControl.js +64 -57
- package/src/blockStore.js +10 -0
- package/src/cssPropertes.js +10 -2
- package/src/customFooks.js +108 -0
- package/src/index.js +17 -0
- package/src/wordpressApi.js +73 -20
package/README.md
CHANGED
|
@@ -14,6 +14,10 @@ import {関数名又はコンポーネント名} from "itmar-block-packages"
|
|
|
14
14
|
npm i @wordpress/scripts@^27.6.0 --save-dev
|
|
15
15
|
|
|
16
16
|
## 更新履歴
|
|
17
|
+
= 1.3.8 =
|
|
18
|
+
- WordPressのデータをRest APIを通して取得する関数等のFieldChoiceControlの機能として、choiceFieldsに登録されるフィールド名がmetaによるカスタムフィールドかacfによるカスタムフィールドかを峻別できるようにフィールド名にmeta_又はacf_という接頭辞を付加するようにした。
|
|
19
|
+
- カスタムフックとしてuseBlockAttributeChangesを追加。このフックはitmar/design-group内のブロックで、指定のブロック名とクラス名のブロックの属性に変化があったとき、その変化の内容を通知する機能をもつ。同一のブロック名とクラス名をもつブロックに対して、変化した属性を自動的に設定する機能もある。
|
|
20
|
+
|
|
17
21
|
= 1.3.4 =
|
|
18
22
|
- BlockPlaceコンポーネントの高さにフリーサイズを追加し、デスクトップとモバイルでそれぞれ設定を可能うにした。それに伴ってcssPropertesのheight_prmのシグニチャーを変更。
|
|
19
23
|
|
|
@@ -75,12 +79,47 @@ const is_mobile=useIsMobile();
|
|
|
75
79
|
useDeepCompareEffect(() => {
|
|
76
80
|
・・・
|
|
77
81
|
},
|
|
78
|
-
[attributes]
|
|
82
|
+
[attributes])
|
|
79
83
|
|
|
80
84
|
```
|
|
81
85
|
### useFontawesomeIframe
|
|
82
86
|
iframeにfontawesomeを読み込むカスタムフック
|
|
83
87
|
|
|
88
|
+
### useBlockAttributeChanges
|
|
89
|
+
特定のブロックの属性が変更されたとき、その変更内容を返すカスタムフック。引数に指定されたブロック名のブロックで指定されたクラス名をもつブロックの属性の変更内容を返す。第3引数のフラグにtrueを指定すると同じブロック名で同じクラス名をもつブロックの属性を変更されたブロックの属性で自動的に更新する。ただし、変更内容については、指定された属性名の属性を変更及び比較の対象からはずすことができる。
|
|
90
|
+
|
|
91
|
+
#### 引数
|
|
92
|
+
- `clientId` string
|
|
93
|
+
変更されたことを監視する範囲となるitmar/design-groupブロックのclientId
|
|
94
|
+
- `blockName` string
|
|
95
|
+
変更の監視対象となるブロック名
|
|
96
|
+
- `className` string
|
|
97
|
+
変更の監視対象となるブロックが有するクラス名
|
|
98
|
+
- `modFlg` boolean
|
|
99
|
+
同種ブロックを更新するかどうかのフラグ。デフォルトはfalse
|
|
100
|
+
- `excludeAttributes` object
|
|
101
|
+
自動更新の対象から除外する属性をオブジェクトで指定する。オブジェクトは属性名をキーとし、値を適宜のデフォルト値とする。ここで指定された属性は更新チェックの対象からも除外される。使わないときは指定しない。
|
|
102
|
+
```
|
|
103
|
+
//clientIdで指定されたブロックの属性変更の内容を返す
|
|
104
|
+
const changedAttributes = useBlockAttributeChanges(
|
|
105
|
+
clientId,
|
|
106
|
+
"itmar/design-checkbox",
|
|
107
|
+
"itmar_filter_checkbox",
|
|
108
|
+
);
|
|
109
|
+
|
|
110
|
+
//clientIdで指定されたブロックの属性変更の内容でitmar/design-checkboxという名前のブロックで
|
|
111
|
+
//itmar_filter_checkboxというクラス名をもつブロックの属性を自動更新する。
|
|
112
|
+
//ただし、labelContentという属性とinputValueという属性については更新対象から除外する
|
|
113
|
+
useBlockAttributeChanges(
|
|
114
|
+
clientId,
|
|
115
|
+
"itmar/design-checkbox",
|
|
116
|
+
"itmar_filter_checkbox",
|
|
117
|
+
true,
|
|
118
|
+
{ labelContent: "", inputValue: false },
|
|
119
|
+
);
|
|
120
|
+
|
|
121
|
+
```
|
|
122
|
+
|
|
84
123
|
## styled-componet用のcssプロパティ生成関数
|
|
85
124
|
styled-componetのcssヘルパー関数内で使用するcssのパラメーターやプロパティを返します。
|
|
86
125
|
### radius_prm
|
|
@@ -141,13 +180,20 @@ px値
|
|
|
141
180
|
|
|
142
181
|
### align_prm
|
|
143
182
|
marginによる横方向の配置のためのCSSを返します。
|
|
183
|
+
また、camelFlgを設定することで、インナースタイル用のオブジェクトを返します。
|
|
144
184
|
#### 引数
|
|
145
|
-
- `align` string
|
|
185
|
+
- `align` string
|
|
186
|
+
- `camelFLg` boolean
|
|
146
187
|
center,rightの文字列
|
|
147
188
|
#### 戻り値
|
|
189
|
+
camelFLgがfalse又は設定されていないとき
|
|
148
190
|
- centerのとき`margin-left: auto; margin-right: auto;`
|
|
149
191
|
- rightのとき`margin-left: auto; margin-right: 0`
|
|
150
192
|
- その他の文字列`margin-right: auto; margin-left: 0`
|
|
193
|
+
camelFLgがtrueのとき
|
|
194
|
+
- centerのとき` { marginLeft: "auto", marginRight: "auto" }`
|
|
195
|
+
- rightのとき` { marginLeft: "auto" }`
|
|
196
|
+
- その他の文字列`{}`
|
|
151
197
|
|
|
152
198
|
|
|
153
199
|
### convertToScss
|
|
@@ -491,13 +537,19 @@ WordPressのブロックエディタのサイドバーにFont awesomのアイコ
|
|
|
491
537
|
icon_size: "24px",
|
|
492
538
|
icon_color: "var(--wp--preset--color--content)",
|
|
493
539
|
icon_space: "5px",
|
|
540
|
+
icon_family: "Font Awesome 6 Free",
|
|
541
|
+
|
|
494
542
|
}
|
|
543
|
+
setPosition={true}
|
|
495
544
|
onChange={(newValue) => {
|
|
496
545
|
setAttributes({icon_style: newValue})
|
|
497
546
|
}}
|
|
498
547
|
/>
|
|
499
548
|
```
|
|
500
549
|
|
|
550
|
+
iconStyleオブジェクトを再設定します。
|
|
551
|
+
setPositionプロプスをtrueにするとicon_posとicon_spaceの各オブジェクトを設定するコントロールが表示されます。
|
|
552
|
+
|
|
501
553
|
<img src="./img/iconControl.png" alt="IconSelectControlのスクリーンショット" width="100" height="200">
|
|
502
554
|
|
|
503
555
|
## DOM要素をラップしてレンダリングを変化させるReactコンポーネント
|
package/build/index.asset.php
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<?php return array('dependencies' => array('react', 'react-dom', 'wp-api-fetch', 'wp-block-editor', 'wp-components', 'wp-data', 'wp-element', 'wp-i18n', 'wp-primitives'), 'version' => '
|
|
1
|
+
<?php return array('dependencies' => array('react', 'react-dom', 'wp-api-fetch', 'wp-block-editor', 'wp-components', 'wp-data', 'wp-element', 'wp-i18n', 'wp-primitives'), 'version' => '63724134691ed0572ff5');
|