itmar-block-packages 2.1.2 → 3.0.2

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 (218) hide show
  1. package/README.md +18 -4
  2. package/build/cjs/AnimationBlock.js +61 -92
  3. package/build/cjs/AnimationBlock.js.map +1 -1
  4. package/build/cjs/BlockEditWrapper.js +3 -10
  5. package/build/cjs/BlockEditWrapper.js.map +1 -1
  6. package/build/cjs/BlockPlace.js +277 -482
  7. package/build/cjs/BlockPlace.js.map +1 -1
  8. package/build/cjs/BrockInserter.js +195 -191
  9. package/build/cjs/BrockInserter.js.map +1 -1
  10. package/build/cjs/DateElm.js +254 -281
  11. package/build/cjs/DateElm.js.map +1 -1
  12. package/build/cjs/DraggableBox.js +99 -129
  13. package/build/cjs/DraggableBox.js.map +1 -1
  14. package/build/cjs/GridControls.js +292 -392
  15. package/build/cjs/GridControls.js.map +1 -1
  16. package/build/cjs/IconSelectControl.js +65 -156
  17. package/build/cjs/IconSelectControl.js.map +1 -1
  18. package/build/cjs/JapaneseHolidays.js +67 -76
  19. package/build/cjs/JapaneseHolidays.js.map +1 -1
  20. package/build/cjs/MasonryControl.js +95 -100
  21. package/build/cjs/MasonryControl.js.map +1 -1
  22. package/build/cjs/PseudoElm.js +37 -50
  23. package/build/cjs/PseudoElm.js.map +1 -1
  24. package/build/cjs/ShadowStyle.js +216 -430
  25. package/build/cjs/ShadowStyle.js.map +1 -1
  26. package/build/cjs/SwiperControl.js +240 -241
  27. package/build/cjs/SwiperControl.js.map +1 -1
  28. package/build/cjs/ToggleElement.js +17 -9
  29. package/build/cjs/ToggleElement.js.map +1 -1
  30. package/build/cjs/TypographyControls.js +73 -139
  31. package/build/cjs/TypographyControls.js.map +1 -1
  32. package/build/cjs/UpdateAllPostsBlockAttributes.js +102 -119
  33. package/build/cjs/UpdateAllPostsBlockAttributes.js.map +1 -1
  34. package/build/cjs/ZipAddress.js +27 -23
  35. package/build/cjs/ZipAddress.js.map +1 -1
  36. package/build/cjs/blockStore.js +42 -47
  37. package/build/cjs/blockStore.js.map +1 -1
  38. package/build/cjs/cssPropertes.js +165 -117
  39. package/build/cjs/cssPropertes.js.map +1 -1
  40. package/build/cjs/customHooks.js +277 -0
  41. package/build/cjs/customHooks.js.map +1 -0
  42. package/build/cjs/formatCreate.js +115 -145
  43. package/build/cjs/formatCreate.js.map +1 -1
  44. package/build/cjs/hslToRgb.js +112 -116
  45. package/build/cjs/hslToRgb.js.map +1 -1
  46. package/build/cjs/index.js +15 -11
  47. package/build/cjs/index.js.map +1 -1
  48. package/build/cjs/mediaUpload.js +95 -158
  49. package/build/cjs/mediaUpload.js.map +1 -1
  50. package/build/cjs/node_modules/swiper/shared/ssr-window.esm.js +144 -0
  51. package/build/cjs/node_modules/swiper/shared/ssr-window.esm.js.map +1 -0
  52. package/build/cjs/node_modules/swiper/shared/swiper-core.js +3925 -0
  53. package/build/cjs/node_modules/swiper/shared/swiper-core.js.map +1 -0
  54. package/build/cjs/node_modules/swiper/shared/utils.js +294 -0
  55. package/build/cjs/node_modules/swiper/shared/utils.js.map +1 -0
  56. package/build/cjs/pickupStore.js +56 -54
  57. package/build/cjs/pickupStore.js.map +1 -1
  58. package/build/cjs/shopfiApi.js +127 -138
  59. package/build/cjs/shopfiApi.js.map +1 -1
  60. package/build/cjs/types/AnimationBlock.d.ts +22 -0
  61. package/build/cjs/types/BlockEditWrapper.d.ts +7 -0
  62. package/build/cjs/types/BlockPlace.d.ts +49 -0
  63. package/build/cjs/types/BrockInserter.d.ts +6 -0
  64. package/build/cjs/types/DateElm.d.ts +69 -0
  65. package/build/cjs/types/DraggableBox.d.ts +19 -0
  66. package/build/cjs/types/GridControls.d.ts +27 -0
  67. package/build/cjs/types/IconSelectControl.d.ts +17 -0
  68. package/build/cjs/types/JapaneseHolidays.d.ts +6 -0
  69. package/build/cjs/types/MasonryControl.d.ts +35 -0
  70. package/build/cjs/types/PseudoElm.d.ts +11 -0
  71. package/build/cjs/types/ShadowStyle.d.ts +33 -0
  72. package/build/cjs/types/SwiperControl.d.ts +12 -0
  73. package/build/cjs/types/ToggleElement.d.ts +13 -0
  74. package/build/cjs/types/TypographyControls.d.ts +17 -0
  75. package/build/cjs/types/UpdateAllPostsBlockAttributes.d.ts +10 -0
  76. package/build/cjs/types/ZipAddress.d.ts +18 -0
  77. package/build/cjs/types/blockStore.d.ts +15 -0
  78. package/build/cjs/types/cssPropertes.d.ts +53 -0
  79. package/build/cjs/types/customHooks.d.ts +11 -0
  80. package/build/cjs/types/formatCreate.d.ts +18 -0
  81. package/build/cjs/types/hslToRgb.d.ts +23 -0
  82. package/build/cjs/types/index.d.ts +31 -0
  83. package/build/cjs/types/mediaUpload.d.ts +29 -0
  84. package/build/cjs/types/pickupStore.d.ts +39 -0
  85. package/build/cjs/types/shopfiApi.d.ts +18 -0
  86. package/build/cjs/types/validationCheck.d.ts +5 -0
  87. package/build/cjs/types/wordpressApi.d.ts +99 -0
  88. package/build/cjs/validationCheck.js +15 -9
  89. package/build/cjs/validationCheck.js.map +1 -1
  90. package/build/cjs/wordpressApi.js +364 -576
  91. package/build/cjs/wordpressApi.js.map +1 -1
  92. package/build/esm/AnimationBlock.d.ts +22 -0
  93. package/build/esm/AnimationBlock.js +61 -92
  94. package/build/esm/AnimationBlock.js.map +1 -1
  95. package/build/esm/BlockEditWrapper.d.ts +7 -0
  96. package/build/esm/BlockEditWrapper.js +4 -11
  97. package/build/esm/BlockEditWrapper.js.map +1 -1
  98. package/build/esm/BlockPlace.d.ts +49 -0
  99. package/build/esm/BlockPlace.js +279 -484
  100. package/build/esm/BlockPlace.js.map +1 -1
  101. package/build/esm/BrockInserter.d.ts +6 -0
  102. package/build/esm/BrockInserter.js +195 -191
  103. package/build/esm/BrockInserter.js.map +1 -1
  104. package/build/esm/DateElm.d.ts +69 -0
  105. package/build/esm/DateElm.js +254 -281
  106. package/build/esm/DateElm.js.map +1 -1
  107. package/build/esm/DraggableBox.d.ts +19 -0
  108. package/build/esm/DraggableBox.js +99 -129
  109. package/build/esm/DraggableBox.js.map +1 -1
  110. package/build/esm/GridControls.d.ts +27 -0
  111. package/build/esm/GridControls.js +294 -394
  112. package/build/esm/GridControls.js.map +1 -1
  113. package/build/esm/IconSelectControl.d.ts +17 -0
  114. package/build/esm/IconSelectControl.js +65 -156
  115. package/build/esm/IconSelectControl.js.map +1 -1
  116. package/build/esm/JapaneseHolidays.d.ts +6 -0
  117. package/build/esm/JapaneseHolidays.js +67 -76
  118. package/build/esm/JapaneseHolidays.js.map +1 -1
  119. package/build/esm/MasonryControl.d.ts +35 -0
  120. package/build/esm/MasonryControl.js +95 -100
  121. package/build/esm/MasonryControl.js.map +1 -1
  122. package/build/esm/PseudoElm.d.ts +11 -0
  123. package/build/esm/PseudoElm.js +37 -50
  124. package/build/esm/PseudoElm.js.map +1 -1
  125. package/build/esm/ShadowStyle.d.ts +33 -0
  126. package/build/esm/ShadowStyle.js +217 -431
  127. package/build/esm/ShadowStyle.js.map +1 -1
  128. package/build/esm/SwiperControl.d.ts +12 -0
  129. package/build/esm/SwiperControl.js +240 -241
  130. package/build/esm/SwiperControl.js.map +1 -1
  131. package/build/esm/ToggleElement.d.ts +13 -0
  132. package/build/esm/ToggleElement.js +17 -9
  133. package/build/esm/ToggleElement.js.map +1 -1
  134. package/build/esm/TypographyControls.d.ts +17 -0
  135. package/build/esm/TypographyControls.js +73 -139
  136. package/build/esm/TypographyControls.js.map +1 -1
  137. package/build/esm/UpdateAllPostsBlockAttributes.d.ts +10 -0
  138. package/build/esm/UpdateAllPostsBlockAttributes.js +103 -120
  139. package/build/esm/UpdateAllPostsBlockAttributes.js.map +1 -1
  140. package/build/esm/ZipAddress.d.ts +18 -0
  141. package/build/esm/ZipAddress.js +27 -23
  142. package/build/esm/ZipAddress.js.map +1 -1
  143. package/build/esm/blockStore.d.ts +15 -0
  144. package/build/esm/blockStore.js +42 -47
  145. package/build/esm/blockStore.js.map +1 -1
  146. package/build/esm/cssPropertes.d.ts +53 -0
  147. package/build/esm/cssPropertes.js +165 -117
  148. package/build/esm/cssPropertes.js.map +1 -1
  149. package/build/esm/customHooks.d.ts +11 -0
  150. package/build/esm/customHooks.js +267 -0
  151. package/build/esm/customHooks.js.map +1 -0
  152. package/build/esm/formatCreate.d.ts +18 -0
  153. package/build/esm/formatCreate.js +115 -145
  154. package/build/esm/formatCreate.js.map +1 -1
  155. package/build/esm/hslToRgb.d.ts +23 -0
  156. package/build/esm/hslToRgb.js +112 -116
  157. package/build/esm/hslToRgb.js.map +1 -1
  158. package/build/esm/index.d.ts +27 -0
  159. package/build/esm/index.js +8 -1
  160. package/build/esm/index.js.map +1 -1
  161. package/build/esm/mediaUpload.d.ts +29 -0
  162. package/build/esm/mediaUpload.js +95 -158
  163. package/build/esm/mediaUpload.js.map +1 -1
  164. package/build/esm/node_modules/swiper/shared/ssr-window.esm.js +141 -0
  165. package/build/esm/node_modules/swiper/shared/ssr-window.esm.js.map +1 -0
  166. package/build/esm/node_modules/swiper/shared/swiper-core.js +3922 -0
  167. package/build/esm/node_modules/swiper/shared/swiper-core.js.map +1 -0
  168. package/build/esm/node_modules/swiper/shared/utils.js +274 -0
  169. package/build/esm/node_modules/swiper/shared/utils.js.map +1 -0
  170. package/build/esm/pickupStore.d.ts +39 -0
  171. package/build/esm/pickupStore.js +56 -54
  172. package/build/esm/pickupStore.js.map +1 -1
  173. package/build/esm/shopfiApi.d.ts +18 -0
  174. package/build/esm/shopfiApi.js +127 -138
  175. package/build/esm/shopfiApi.js.map +1 -1
  176. package/build/esm/types/AnimationBlock.d.ts +22 -0
  177. package/build/esm/types/BlockEditWrapper.d.ts +7 -0
  178. package/build/esm/types/BlockPlace.d.ts +49 -0
  179. package/build/esm/types/BrockInserter.d.ts +6 -0
  180. package/build/esm/types/DateElm.d.ts +69 -0
  181. package/build/esm/types/DraggableBox.d.ts +19 -0
  182. package/build/esm/types/GridControls.d.ts +27 -0
  183. package/build/esm/types/IconSelectControl.d.ts +17 -0
  184. package/build/esm/types/JapaneseHolidays.d.ts +6 -0
  185. package/build/esm/types/MasonryControl.d.ts +35 -0
  186. package/build/esm/types/PseudoElm.d.ts +11 -0
  187. package/build/esm/types/ShadowStyle.d.ts +33 -0
  188. package/build/esm/types/SwiperControl.d.ts +12 -0
  189. package/build/esm/types/ToggleElement.d.ts +13 -0
  190. package/build/esm/types/TypographyControls.d.ts +17 -0
  191. package/build/esm/types/UpdateAllPostsBlockAttributes.d.ts +10 -0
  192. package/build/esm/types/ZipAddress.d.ts +18 -0
  193. package/build/esm/types/blockStore.d.ts +15 -0
  194. package/build/esm/types/cssPropertes.d.ts +53 -0
  195. package/build/esm/types/customHooks.d.ts +11 -0
  196. package/build/esm/types/formatCreate.d.ts +18 -0
  197. package/build/esm/types/hslToRgb.d.ts +23 -0
  198. package/build/esm/types/index.d.ts +31 -0
  199. package/build/esm/types/mediaUpload.d.ts +29 -0
  200. package/build/esm/types/pickupStore.d.ts +39 -0
  201. package/build/esm/types/shopfiApi.d.ts +18 -0
  202. package/build/esm/types/validationCheck.d.ts +5 -0
  203. package/build/esm/types/wordpressApi.d.ts +99 -0
  204. package/build/esm/validationCheck.d.ts +5 -0
  205. package/build/esm/validationCheck.js +15 -9
  206. package/build/esm/validationCheck.js.map +1 -1
  207. package/build/esm/wordpressApi.d.ts +99 -0
  208. package/build/esm/wordpressApi.js +365 -577
  209. package/build/esm/wordpressApi.js.map +1 -1
  210. package/package.json +29 -7
  211. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -117
  212. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
  213. package/build/cjs/customFooks.js +0 -300
  214. package/build/cjs/customFooks.js.map +0 -1
  215. package/build/esm/_virtual/_rollupPluginBabelHelpers.js +0 -107
  216. package/build/esm/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
  217. package/build/esm/customFooks.js +0 -290
  218. package/build/esm/customFooks.js.map +0 -1
@@ -1,447 +1,233 @@
1
- import { objectSpread2 as _objectSpread2 } from './_virtual/_rollupPluginBabelHelpers.js';
1
+ import { useState, useEffect, createElement, Fragment } from '@wordpress/element';
2
2
  import { __ } from '@wordpress/i18n';
3
- import { __experimentalPanelColorGradientSettings } from '@wordpress/block-editor';
3
+ import { PanelColorSettings } from '@wordpress/block-editor';
4
4
  import { PanelBody, RadioControl, RangeControl, PanelRow, ToggleControl } from '@wordpress/components';
5
- import { useState, useEffect } from '@wordpress/element';
6
5
  import { dispatch } from '@wordpress/data';
7
6
  import { rgb16ToHsl, hslToRgb16, HexToRGB } from './hslToRgb.js';
8
7
 
9
- //方向と距離
10
- var dirctionDigit = (direction, distance) => {
11
- var destTopLeft, destTopRight, destBottomLeft, destBottomRight;
12
- switch (direction) {
13
- case "top_left":
14
- destTopLeft = distance;
15
- destTopRight = distance;
16
- destBottomLeft = distance * -1;
17
- destBottomRight = distance * -1;
18
- break;
19
- case "top_right":
20
- destTopLeft = distance * -1;
21
- destTopRight = distance;
22
- destBottomLeft = distance;
23
- destBottomRight = distance * -1;
24
- break;
25
- case "bottom_left":
26
- destTopLeft = distance;
27
- destTopRight = distance * -1;
28
- destBottomLeft = distance * -1;
29
- destBottomRight = distance;
30
- break;
31
- case "bottom_right":
32
- destTopLeft = distance * -1;
33
- destTopRight = distance * -1;
34
- destBottomLeft = distance;
35
- destBottomRight = distance;
36
- break;
37
- case "right_bottom":
38
- destTopLeft = distance;
39
- destTopRight = distance * -1;
40
- destBottomLeft = distance * -1;
41
- destBottomRight = distance;
42
- break;
43
- case "top":
44
- destTopLeft = 0;
45
- destTopRight = 0;
46
- destBottomLeft = distance * -1;
47
- destBottomRight = distance;
48
- break;
49
- }
50
- return {
51
- topLeft: destTopLeft,
52
- topRight: destTopRight,
53
- bottomLeft: destBottomLeft,
54
- bottmRight: destBottomRight
55
- };
8
+ /**
9
+ * 方向と距離に基づいて、各頂点の数値を算出する
10
+ */
11
+ const dirctionDigit = (direction, distance) => {
12
+ // 初期値(デフォルト)を設定しておくことで、switch 漏れを防ぐ
13
+ let destTopLeft = 0;
14
+ let destTopRight = 0;
15
+ let destBottomLeft = 0;
16
+ let destBottomRight = 0;
17
+ switch (direction) {
18
+ case "top_left":
19
+ destTopLeft = distance;
20
+ destTopRight = distance;
21
+ destBottomLeft = distance * -1;
22
+ destBottomRight = distance * -1;
23
+ break;
24
+ case "top_right":
25
+ destTopLeft = distance * -1;
26
+ destTopRight = distance;
27
+ destBottomLeft = distance;
28
+ destBottomRight = distance * -1;
29
+ break;
30
+ case "bottom_left":
31
+ destTopLeft = distance;
32
+ destTopRight = distance * -1;
33
+ destBottomLeft = distance * -1;
34
+ destBottomRight = distance;
35
+ break;
36
+ case "bottom_right":
37
+ destTopLeft = distance * -1;
38
+ destTopRight = distance * -1;
39
+ destBottomLeft = distance;
40
+ destBottomRight = distance;
41
+ break;
42
+ case "right_bottom":
43
+ destTopLeft = distance;
44
+ destTopRight = distance * -1;
45
+ destBottomLeft = distance * -1;
46
+ destBottomRight = distance;
47
+ break;
48
+ case "top":
49
+ destTopLeft = 0;
50
+ destTopRight = 0;
51
+ destBottomLeft = distance * -1;
52
+ destBottomRight = distance;
53
+ break;
54
+ }
55
+ return {
56
+ topLeft: destTopLeft,
57
+ topRight: destTopRight,
58
+ bottomLeft: destBottomLeft,
59
+ bottomRight: destBottomRight,
60
+ };
56
61
  };
57
-
58
62
  // グラデーションの色値は通常'linear-gradient'または'radial-gradient'で始まるので、
59
63
  // これらのキーワードを探すことでグラデーションかどうかを判断します。
60
64
  function isGradient(colorValue) {
61
- return colorValue.includes("linear-gradient") || colorValue.includes("radial-gradient");
65
+ // 1. 値が存在しない、または文字列でない場合は false
66
+ if (typeof colorValue !== "string") {
67
+ return false;
68
+ }
69
+ return (colorValue.includes("linear-gradient") ||
70
+ colorValue.includes("radial-gradient"));
62
71
  }
63
- var ShadowElm = shadowState => {
64
- //let baseColor;
65
- var {
66
- shadowType,
67
- spread,
68
- lateral,
69
- longitude,
70
- nomalBlur,
71
- shadowColor,
72
- blur,
73
- intensity,
74
- distance,
75
- newDirection,
76
- clayDirection,
77
- embos,
78
- opacity,
79
- depth,
80
- bdBlur,
81
- expand,
82
- glassblur,
83
- glassopa,
84
- hasOutline,
85
- baseColor
86
- } = shadowState;
87
-
88
- //ノーマル
89
- if (shadowType === "nomal") {
90
- //boxshadowの生成
91
- var _ShadowStyle = embos === "dent" ? {
92
- style: {
93
- boxShadow: "".concat(lateral, "px ").concat(longitude, "px ").concat(nomalBlur, "px ").concat(spread, "px transparent, inset ").concat(lateral, "px ").concat(longitude, "px ").concat(nomalBlur, "px ").concat(spread, "px ").concat(shadowColor)
94
- }
95
- } : {
96
- style: {
97
- boxShadow: "".concat(lateral, "px ").concat(longitude, "px ").concat(nomalBlur, "px ").concat(spread, "px ").concat(shadowColor, ", inset ").concat(lateral, "px ").concat(longitude, "px ").concat(nomalBlur, "px ").concat(spread, "px transparent")
98
- }
99
- };
100
- //Shadowのスタイルを返す
101
- return _ShadowStyle;
102
- }
103
- //ニューモフィズム
104
- else if (shadowType === "newmor") {
105
- //背景がグラデーションのときはセットしない
106
- if (isGradient(baseColor)) {
107
- dispatch("core/notices").createNotice("error", __("Neumorphism cannot be set when the background color is a gradient. ", "itmar_guest_contact_block"), {
108
- type: "snackbar",
109
- isDismissible: true
110
- });
111
- return null;
72
+ const ShadowElm = (shadowState) => {
73
+ //let baseColor;
74
+ const { shadowType, spread, lateral, longitude, nomalBlur, shadowColor, blur, intensity, distance, newDirection, clayDirection, embos, opacity, depth, bdBlur, expand, glassblur, glassopa, hasOutline, baseColor, } = shadowState;
75
+ //ノーマル
76
+ if (shadowType === "nomal") {
77
+ //boxshadowの生成
78
+ const ShadowStyle = embos === "dent"
79
+ ? {
80
+ style: {
81
+ boxShadow: `${lateral}px ${longitude}px ${nomalBlur}px ${spread}px transparent, inset ${lateral}px ${longitude}px ${nomalBlur}px ${spread}px ${shadowColor}`,
82
+ },
83
+ }
84
+ : {
85
+ style: {
86
+ boxShadow: `${lateral}px ${longitude}px ${nomalBlur}px ${spread}px ${shadowColor}, inset ${lateral}px ${longitude}px ${nomalBlur}px ${spread}px transparent`,
87
+ },
88
+ };
89
+ //Shadowのスタイルを返す
90
+ return ShadowStyle;
112
91
  }
113
- //ボタン背景色のHSL値
114
- var hslValue = rgb16ToHsl(baseColor);
115
- //影の明るさを変更
116
- var lightVal = hslValue.lightness + intensity < 100 ? hslValue.lightness + intensity : 100;
117
- var darkVal = hslValue.lightness - intensity > 0 ? hslValue.lightness - intensity : 0;
118
- var lightValue = hslToRgb16(hslValue.hue, hslValue.saturation, lightVal);
119
- var darkValue = hslToRgb16(hslValue.hue, hslValue.saturation, darkVal);
120
- //boxshadowの生成
121
- //立体の方向
122
- var dircObj = dirctionDigit(newDirection, distance);
123
- var baseStyle = {
124
- style: {
125
- border: "none",
126
- background: baseColor
127
- }
128
- };
129
- var newmorStyle = embos === "swell" ? {
130
- style: _objectSpread2(_objectSpread2({}, baseStyle.style), {}, {
131
- boxShadow: "".concat(dircObj.topLeft, "px ").concat(dircObj.topRight, "px ").concat(blur, "px ").concat(darkValue, ", ").concat(dircObj.bottomLeft, "px ").concat(dircObj.bottmRight, "px ").concat(blur, "px ").concat(lightValue, ", inset ").concat(dircObj.topLeft, "px ").concat(dircObj.topRight, "px ").concat(blur, "px transparent, inset ").concat(dircObj.bottomLeft, "px ").concat(dircObj.bottmRight, "px ").concat(blur, "px transparent")
132
- })
133
- } : {
134
- style: _objectSpread2(_objectSpread2({}, baseStyle.style), {}, {
135
- boxShadow: "".concat(dircObj.topLeft, "px ").concat(dircObj.topRight, "px ").concat(blur, "px transparent, ").concat(dircObj.bottomLeft, "px ").concat(dircObj.bottmRight, "px ").concat(blur, "px transparent, inset ").concat(dircObj.topLeft, "px ").concat(dircObj.topRight, "px ").concat(blur, "px ").concat(darkValue, ", inset ").concat(dircObj.bottomLeft, "px ").concat(dircObj.bottmRight, "px ").concat(blur, "px ").concat(lightValue)
136
- })
137
- };
138
-
139
- //Shadowのスタイルを返す
140
- return newmorStyle;
141
- }
142
-
143
- //クレイモーフィズム
144
- else if (shadowType === "claymor") {
145
- //背景がグラデーションのときはセットしない
146
- if (isGradient(baseColor)) {
147
- dispatch("core/notices").createNotice("error", __("claymorphism cannot be set when the background color is a gradient. ", "itmar_guest_contact_block"), {
148
- type: "snackbar",
149
- isDismissible: true
150
- });
151
- return null;
92
+ //ニューモフィズム
93
+ // --- ニューモフィズム ---
94
+ else if (shadowType === "newmor") {
95
+ if (isGradient(baseColor)) {
96
+ dispatch("core/notices").createNotice("error", __("Neumorphism cannot be set when the background color is a gradient.", "itmar_guest_contact_block"), { type: "snackbar", isDismissible: true });
97
+ return null;
98
+ }
99
+ const hslValue = rgb16ToHsl(baseColor);
100
+ if (!hslValue)
101
+ return null; // カラー変換失敗時のガード
102
+ const lightVal = Math.min(hslValue.lightness + intensity, 100);
103
+ const darkVal = Math.max(hslValue.lightness - intensity, 0);
104
+ const lightValue = hslToRgb16(hslValue.hue, hslValue.saturation, lightVal);
105
+ const darkValue = hslToRgb16(hslValue.hue, hslValue.saturation, darkVal);
106
+ const dircObj = dirctionDigit(newDirection, distance);
107
+ const baseBoxShadow = embos === "swell"
108
+ ? `${dircObj.topLeft}px ${dircObj.topRight}px ${blur}px ${darkValue}, ${dircObj.bottomLeft}px ${dircObj.bottomRight}px ${blur}px ${lightValue}, inset ${dircObj.topLeft}px ${dircObj.topRight}px ${blur}px transparent, inset ${dircObj.bottomLeft}px ${dircObj.bottomRight}px ${blur}px transparent`
109
+ : `${dircObj.topLeft}px ${dircObj.topRight}px ${blur}px transparent, ${dircObj.bottomLeft}px ${dircObj.bottomRight}px ${blur}px transparent, inset ${dircObj.topLeft}px ${dircObj.topRight}px ${blur}px ${darkValue}, inset ${dircObj.bottomLeft}px ${dircObj.bottomRight}px ${blur}px ${lightValue}`;
110
+ return {
111
+ style: {
112
+ border: "none",
113
+ background: baseColor,
114
+ boxShadow: baseBoxShadow,
115
+ },
116
+ };
152
117
  }
153
- var rgbValue = HexToRGB(baseColor);
154
- var outsetObj = dirctionDigit(clayDirection, expand);
155
- var insetObj = dirctionDigit(clayDirection, depth);
156
- var _baseStyle = {
157
- style: {
158
- background: "rgba(255, 255, 255, ".concat(opacity, ")"),
159
- backdropFilter: "blur(".concat(bdBlur, "px)"),
160
- border: "none"
161
- }
162
- };
163
- var claymorStyle = _objectSpread2(_objectSpread2({}, _baseStyle), {}, {
164
- style: _objectSpread2(_objectSpread2({}, _baseStyle.style), {}, {
165
- boxShadow: "".concat(outsetObj.topLeft, "px ").concat(outsetObj.bottmRight, "px ").concat(expand * 2, "px 0px rgba(").concat(rgbValue.red, ", ").concat(rgbValue.green, ", ").concat(rgbValue.blue, ", 0.5), inset ").concat(insetObj.topRight, "px ").concat(insetObj.bottomLeft, "px 16px 0px rgba(").concat(rgbValue.red, ", ").concat(rgbValue.green, ", ").concat(rgbValue.blue, ", 0.6), inset 0px 11px 28px 0px rgb(255, 255, 255)")
166
- })
167
- });
168
- //attributesに保存
169
- return claymorStyle;
170
- }
171
-
172
- //グラスモーフィズム
173
- else if (shadowType === "glassmor") {
174
- var _baseStyle2 = {
175
- style: _objectSpread2(_objectSpread2({
176
- backgroundColor: "rgba(255, 255, 255, ".concat(glassopa, ")")
177
- }, hasOutline ? {
178
- border: "1px solid rgba(255, 255, 255, 0.4)"
179
- } : {}), {}, {
180
- borderRightColor: "rgba(255, 255, 255, 0.2)",
181
- borderBottomColor: "rgba(255, 255, 255, 0.2)",
182
- backdropFilter: "blur( ".concat(glassblur, "px )")
183
- })
184
- };
185
- var glassmorStyle = embos === "swell" ? _objectSpread2(_objectSpread2({}, _baseStyle2), {}, {
186
- style: _objectSpread2(_objectSpread2({}, _baseStyle2.style), {}, {
187
- boxShadow: "0 8px 12px 0 rgba( 31, 38, 135, 0.37 ), inset 0 8px 12px 0 transparent"
188
- })
189
- }) : _objectSpread2(_objectSpread2({}, _baseStyle2), {}, {
190
- style: _objectSpread2(_objectSpread2({}, _baseStyle2.style), {}, {
191
- boxShadow: "0 8px 12px 0 transparent, inset 0 8px 12px 0 rgba( 31, 38, 135, 0.37 )"
192
- })
193
- });
194
-
195
- //attributesに保存
196
- return glassmorStyle;
197
- }
118
+ // --- クレイモーフィズム ---
119
+ else if (shadowType === "claymor") {
120
+ if (isGradient(baseColor)) {
121
+ dispatch("core/notices").createNotice("error", __("claymorphism cannot be set when the background color is a gradient.", "itmar_guest_contact_block"), { type: "snackbar", isDismissible: true });
122
+ return null;
123
+ }
124
+ const rgbValue = HexToRGB(baseColor);
125
+ if (!rgbValue)
126
+ return null;
127
+ const outsetObj = dirctionDigit(clayDirection, expand);
128
+ const insetObj = dirctionDigit(clayDirection, depth);
129
+ return {
130
+ style: {
131
+ background: `rgba(255, 255, 255, ${opacity})`,
132
+ backdropFilter: `blur(${bdBlur}px)`,
133
+ border: "none",
134
+ boxShadow: `${outsetObj.topLeft}px ${outsetObj.bottomRight}px ${expand * 2}px 0px rgba(${rgbValue.red}, ${rgbValue.green}, ${rgbValue.blue}, 0.5), inset ${insetObj.topRight}px ${insetObj.bottomLeft}px 16px 0px rgba(${rgbValue.red}, ${rgbValue.green}, ${rgbValue.blue}, 0.6), inset 0px 11px 28px 0px rgb(255, 255, 255)`,
135
+ },
136
+ };
137
+ }
138
+ // --- グラスモーフィズム ---
139
+ else if (shadowType === "glassmor") {
140
+ const glassBoxShadow = embos === "swell"
141
+ ? `0 8px 12px 0 rgba( 31, 38, 135, 0.37 ), inset 0 8px 12px 0 transparent`
142
+ : `0 8px 12px 0 transparent, inset 0 8px 12px 0 rgba( 31, 38, 135, 0.37 )`;
143
+ return {
144
+ style: {
145
+ backgroundColor: `rgba(255, 255, 255, ${glassopa})`,
146
+ ...(hasOutline ? { border: `1px solid rgba(255, 255, 255, 0.4)` } : {}),
147
+ borderRightColor: `rgba(255, 255, 255, 0.2)`,
148
+ borderBottomColor: `rgba(255, 255, 255, 0.2)`,
149
+ backdropFilter: `blur(${glassblur}px)`,
150
+ boxShadow: glassBoxShadow,
151
+ },
152
+ };
153
+ }
154
+ return null;
198
155
  };
199
- var ShadowStyle = _ref => {
200
- var {
201
- shadowStyle,
202
- onChange
203
- } = _ref;
204
- var [shadowState, setShadowState] = useState(shadowStyle);
205
- var {
206
- shadowType,
207
- spread,
208
- lateral,
209
- longitude,
210
- nomalBlur,
211
- shadowColor,
212
- blur,
213
- intensity,
214
- distance,
215
- newDirection,
216
- clayDirection,
217
- embos,
218
- opacity,
219
- depth,
220
- bdBlur,
221
- expand,
222
- glassblur,
223
- glassopa,
224
- hasOutline
225
- } = shadowState;
226
-
227
- //シャドーのスタイル変更と背景色変更に伴う親コンポーネントの変更
228
- useEffect(() => {
229
- var shadowElm = ShadowElm(shadowState);
230
- if (shadowElm) onChange(shadowElm, shadowState);
231
- }, [shadowState]);
232
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(PanelBody, {
233
- title: __("Shadow Type", "block-collections"),
234
- initialOpen: true
235
- }, /*#__PURE__*/React.createElement("div", {
236
- className: "itmar_shadow_type"
237
- }, /*#__PURE__*/React.createElement(RadioControl, {
238
- selected: shadowType,
239
- options: [{
240
- label: __("Nomal", "block-collections"),
241
- value: "nomal"
242
- }, {
243
- label: __("Neumorphism", "block-collections"),
244
- value: "newmor"
245
- }, {
246
- label: __("Claymorphism", "block-collections"),
247
- value: "claymor"
248
- }, {
249
- label: __("Grassmophism", "block-collections"),
250
- value: "glassmor"
251
- }],
252
- onChange: changeOption => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
253
- shadowType: changeOption
254
- }))
255
- })), shadowType !== "claymor" && /*#__PURE__*/React.createElement("div", {
256
- className: "embos"
257
- }, /*#__PURE__*/React.createElement(RadioControl, {
258
- label: __("unevenness", "block-collections"),
259
- selected: embos,
260
- options: [{
261
- value: "swell"
262
- }, {
263
- value: "dent"
264
- }],
265
- onChange: changeOption => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
266
- embos: changeOption
267
- }))
268
- }))), shadowType === "nomal" && /*#__PURE__*/React.createElement(PanelBody, {
269
- title: __("Nomal settings", "block-collections"),
270
- initialOpen: false
271
- }, /*#__PURE__*/React.createElement(RangeControl, {
272
- value: spread,
273
- label: __("Spread", "block-collections"),
274
- max: 50,
275
- min: 0,
276
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
277
- spread: val
278
- })),
279
- withInputField: false
280
- }), /*#__PURE__*/React.createElement(RangeControl, {
281
- value: lateral,
282
- label: __("Lateral direction", "block-collections"),
283
- max: 50,
284
- min: 0,
285
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
286
- lateral: val
287
- })),
288
- withInputField: false
289
- }), /*#__PURE__*/React.createElement(RangeControl, {
290
- value: longitude,
291
- label: __("Longitudinal direction", "block-collections"),
292
- max: 50,
293
- min: 0,
294
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
295
- longitude: val
296
- })),
297
- withInputField: false
298
- }), /*#__PURE__*/React.createElement(RangeControl, {
299
- value: nomalBlur,
300
- label: __("Blur", "block-collections"),
301
- max: 20,
302
- min: 0,
303
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
304
- nomalBlur: val
305
- })),
306
- withInputField: false
307
- }), /*#__PURE__*/React.createElement(__experimentalPanelColorGradientSettings, {
308
- title: __("Shadow Color Setting", "block-collections"),
309
- settings: [{
310
- colorValue: shadowColor,
311
- label: __("Choose Shadow color", "block-collections"),
312
- onColorChange: newValue => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
313
- shadowColor: newValue
314
- }))
315
- }]
316
- })), shadowType === "newmor" && /*#__PURE__*/React.createElement(PanelBody, {
317
- title: __("Neumorphism settings", "block-collections"),
318
- initialOpen: false
319
- }, /*#__PURE__*/React.createElement(RangeControl, {
320
- value: distance,
321
- label: __("Distance", "block-collections"),
322
- max: 50,
323
- min: 0,
324
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
325
- distance: val
326
- })),
327
- withInputField: false
328
- }), /*#__PURE__*/React.createElement(RangeControl, {
329
- value: intensity,
330
- label: __("Intensity", "block-collections"),
331
- max: 100,
332
- min: 0,
333
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
334
- intensity: val
335
- })),
336
- withInputField: false
337
- }), /*#__PURE__*/React.createElement(RangeControl, {
338
- value: blur,
339
- label: __("Blur", "block-collections"),
340
- max: 20,
341
- min: 0,
342
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
343
- blur: val
344
- })),
345
- withInputField: false
346
- }), /*#__PURE__*/React.createElement(PanelRow, null, /*#__PURE__*/React.createElement("div", {
347
- className: "light_direction"
348
- }, /*#__PURE__*/React.createElement(RadioControl, {
349
- selected: newDirection,
350
- options: [{
351
- value: "top_left"
352
- }, {
353
- value: "top_right"
354
- }, {
355
- value: "bottom_left"
356
- }, {
357
- value: "bottom_right"
358
- }],
359
- onChange: changeOption => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
360
- newDirection: changeOption
361
- }))
362
- })))), shadowType === "claymor" && /*#__PURE__*/React.createElement(PanelBody, {
363
- title: __("Claymorphism settings", "block-collections"),
364
- initialOpen: false
365
- }, /*#__PURE__*/React.createElement(RangeControl, {
366
- value: opacity,
367
- label: __("Opacity", "block-collections"),
368
- max: 1,
369
- min: 0,
370
- step: 0.1,
371
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
372
- opacity: val
373
- })),
374
- withInputField: false
375
- }), /*#__PURE__*/React.createElement(RangeControl, {
376
- value: depth,
377
- label: "Depth",
378
- max: 20,
379
- min: 0,
380
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
381
- depth: val
382
- })),
383
- withInputField: false
384
- }), /*#__PURE__*/React.createElement(RangeControl, {
385
- value: expand,
386
- label: "Expand",
387
- max: 50,
388
- min: 0,
389
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
390
- expand: val
391
- })),
392
- withInputField: false
393
- }), /*#__PURE__*/React.createElement(RangeControl, {
394
- value: bdBlur,
395
- label: "Background Blur",
396
- max: 10,
397
- min: 0,
398
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
399
- bdBlur: val
400
- })),
401
- withInputField: false
402
- }), /*#__PURE__*/React.createElement("div", {
403
- className: "light_direction claymor"
404
- }, /*#__PURE__*/React.createElement(RadioControl, {
405
- selected: clayDirection,
406
- options: [{
407
- value: "right_bottom"
408
- }, {
409
- value: "top_right"
410
- }, {
411
- value: "top"
412
- }],
413
- onChange: changeOption => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
414
- clayDirection: changeOption
415
- }))
416
- }))), shadowType === "glassmor" && /*#__PURE__*/React.createElement(PanelBody, {
417
- title: __("Grassmophism settings", "block-collections"),
418
- initialOpen: false
419
- }, /*#__PURE__*/React.createElement(RangeControl, {
420
- value: glassblur,
421
- label: __("Glass blur", "block-collections"),
422
- max: 20,
423
- min: 0,
424
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
425
- glassblur: val
426
- })),
427
- withInputField: false
428
- }), /*#__PURE__*/React.createElement(RangeControl, {
429
- value: glassopa,
430
- label: __("Glass Opacity", "block-collections"),
431
- max: 1,
432
- min: 0,
433
- step: 0.1,
434
- onChange: val => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
435
- glassopa: val
436
- })),
437
- withInputField: false
438
- }), /*#__PURE__*/React.createElement("fieldset", null, /*#__PURE__*/React.createElement(ToggleControl, {
439
- label: __("Show outline", "block-collections"),
440
- checked: hasOutline,
441
- onChange: () => setShadowState(_objectSpread2(_objectSpread2({}, shadowState), {}, {
442
- hasOutline: !hasOutline
443
- }))
444
- }))));
156
+ const ShadowStyle = ({ shadowStyle, onChange }) => {
157
+ const [shadowState, setShadowState] = useState(shadowStyle);
158
+ const { shadowType, spread, lateral, longitude, nomalBlur, shadowColor, blur, intensity, distance, newDirection, clayDirection, embos, opacity, depth, bdBlur, expand, glassblur, glassopa, hasOutline, } = shadowState;
159
+ //シャドーのスタイル変更と背景色変更に伴う親コンポーネントの変更
160
+ useEffect(() => {
161
+ const shadowElm = ShadowElm(shadowState);
162
+ if (shadowElm)
163
+ onChange(shadowElm, shadowState);
164
+ }, [shadowState, onChange]);
165
+ // ヘルパー: ステートの一部を更新
166
+ const updateState = (partial) => {
167
+ setShadowState((prev) => ({ ...prev, ...partial }));
168
+ };
169
+ return (createElement(Fragment, null,
170
+ createElement(PanelBody, { title: __("Shadow Type", "block-collections"), initialOpen: true },
171
+ createElement("div", { className: "itmar_shadow_type" },
172
+ createElement(RadioControl, { selected: shadowType, options: [
173
+ { label: __("Normal", "block-collections"), value: "nomal" },
174
+ {
175
+ label: __("Neumorphism", "block-collections"),
176
+ value: "newmor",
177
+ },
178
+ {
179
+ label: __("Claymorphism", "block-collections"),
180
+ value: "claymor",
181
+ },
182
+ {
183
+ label: __("Glassmorphism", "block-collections"),
184
+ value: "glassmor",
185
+ },
186
+ ], onChange: (val) => updateState({ shadowType: val }) })),
187
+ shadowType !== "claymor" && (createElement("div", { className: "embos" },
188
+ createElement(RadioControl, { label: __("unevenness", "block-collections"), selected: embos, options: [
189
+ { label: "Swell", value: "swell" },
190
+ { label: "Dent", value: "dent" },
191
+ ], onChange: (val) => updateState({ embos: val }) })))),
192
+ shadowType === "nomal" && (createElement(PanelBody, { title: __("Normal settings", "block-collections"), initialOpen: false },
193
+ createElement(RangeControl, { value: spread, label: __("Spread", "block-collections"), max: 50, min: 0, onChange: (val) => updateState({ spread: val ?? 0 }) }),
194
+ createElement(RangeControl, { value: lateral, label: __("Lateral direction", "block-collections"), max: 50, min: 0, onChange: (val) => updateState({ lateral: val ?? 0 }) }),
195
+ createElement(RangeControl, { value: longitude, label: __("Longitudinal direction", "block-collections"), max: 50, min: 0, onChange: (val) => updateState({ longitude: val ?? 0 }) }),
196
+ createElement(RangeControl, { value: nomalBlur, label: __("Blur", "block-collections"), max: 20, min: 0, onChange: (val) => updateState({ nomalBlur: val ?? 0 }) }),
197
+ createElement(PanelColorSettings, { title: __("Shadow Color Setting", "block-collections"), colorSettings: [
198
+ {
199
+ value: shadowColor,
200
+ label: __("Choose Shadow color", "block-collections"),
201
+ onChange: (val) => updateState({ shadowColor: val || "" }),
202
+ },
203
+ ] }))),
204
+ shadowType === "newmor" && (createElement(PanelBody, { title: __("Neumorphism settings", "block-collections"), initialOpen: false },
205
+ createElement(RangeControl, { value: distance, label: __("Distance", "block-collections"), max: 50, min: 0, onChange: (val) => updateState({ distance: val ?? 0 }) }),
206
+ createElement(RangeControl, { value: intensity, label: __("Intensity", "block-collections"), max: 100, min: 0, onChange: (val) => updateState({ intensity: val ?? 0 }) }),
207
+ createElement(RangeControl, { value: blur, label: __("Blur", "block-collections"), max: 20, min: 0, onChange: (val) => updateState({ blur: val ?? 0 }) }),
208
+ createElement(PanelRow, null,
209
+ createElement("div", { className: "light_direction" },
210
+ createElement(RadioControl, { selected: newDirection, options: [
211
+ { label: "Top Left", value: "top_left" },
212
+ { label: "Top Right", value: "top_right" },
213
+ { label: "Bottom Left", value: "bottom_left" },
214
+ { label: "Bottom Right", value: "bottom_right" },
215
+ ], onChange: (val) => updateState({ newDirection: val }) }))))),
216
+ shadowType === "claymor" && (createElement(PanelBody, { title: __("Claymorphism settings", "block-collections"), initialOpen: false },
217
+ createElement(RangeControl, { value: opacity, label: __("Opacity", "block-collections"), max: 1, min: 0, step: 0.1, onChange: (val) => updateState({ opacity: val ?? 1 }) }),
218
+ createElement(RangeControl, { value: depth, label: "Depth", max: 20, min: 0, onChange: (val) => updateState({ depth: val ?? 0 }) }),
219
+ createElement(RangeControl, { value: expand, label: "Expand", max: 50, min: 0, onChange: (val) => updateState({ expand: val ?? 0 }) }),
220
+ createElement(RangeControl, { value: bdBlur, label: "Background Blur", max: 10, min: 0, onChange: (val) => updateState({ bdBlur: val ?? 0 }) }),
221
+ createElement("div", { className: "light_direction claymor" },
222
+ createElement(RadioControl, { selected: clayDirection, options: [
223
+ { label: "Right Bottom", value: "right_bottom" },
224
+ { label: "Top Right", value: "top_right" },
225
+ { label: "Top", value: "top" },
226
+ ], onChange: (val) => updateState({ clayDirection: val }) })))),
227
+ shadowType === "glassmor" && (createElement(PanelBody, { title: __("Grassmophism settings", "block-collections"), initialOpen: false },
228
+ createElement(RangeControl, { value: glassblur, label: __("Glass blur", "block-collections"), max: 20, min: 0, onChange: (val) => updateState({ glassblur: val ?? 0 }) }),
229
+ createElement(RangeControl, { value: glassopa, label: __("Glass Opacity", "block-collections"), max: 1, min: 0, step: 0.1, onChange: (val) => updateState({ glassopa: val ?? 0.5 }) }),
230
+ createElement(ToggleControl, { label: __("Show outline", "block-collections"), checked: hasOutline, onChange: (val) => updateState({ hasOutline: val }) })))));
445
231
  };
446
232
 
447
233
  export { ShadowElm, ShadowStyle as default };