itmar-block-packages 1.3.7 → 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 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コンポーネント
@@ -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' => '48507471d4cc04eabfc2');
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');