@wordpress/block-library 7.4.0 → 7.5.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.
Files changed (269) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/audio/edit.js +3 -15
  3. package/build/audio/edit.js.map +1 -1
  4. package/build/button/edit.native.js +7 -3
  5. package/build/button/edit.native.js.map +1 -1
  6. package/build/comment-template/edit.js +1 -3
  7. package/build/comment-template/edit.js.map +1 -1
  8. package/build/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
  9. package/{build-module/comments-query-loop → build/comments}/edit/comments-inspector-controls.js.map +1 -1
  10. package/build/{comments-query-loop → comments}/edit.js +3 -3
  11. package/build/comments/edit.js.map +1 -0
  12. package/build/{comments-query-loop → comments}/index.js +1 -1
  13. package/build/comments/index.js.map +1 -0
  14. package/build/{comments-query-loop → comments}/save.js +2 -2
  15. package/build/comments/save.js.map +1 -0
  16. package/build/comments-title/edit.js +7 -5
  17. package/build/comments-title/edit.js.map +1 -1
  18. package/build/cover/edit.js +4 -71
  19. package/build/cover/edit.js.map +1 -1
  20. package/build/cover/edit.native.js +36 -15
  21. package/build/cover/edit.native.js.map +1 -1
  22. package/build/cover/transforms.js +77 -6
  23. package/build/cover/transforms.js.map +1 -1
  24. package/build/cover/use-cover-is-dark.js +81 -0
  25. package/build/cover/use-cover-is-dark.js.map +1 -0
  26. package/build/cover/use-cover-is-dark.native.js +60 -0
  27. package/build/cover/use-cover-is-dark.native.js.map +1 -0
  28. package/build/group/index.js +1 -0
  29. package/build/group/index.js.map +1 -1
  30. package/build/heading/transforms.js +8 -4
  31. package/build/heading/transforms.js.map +1 -1
  32. package/build/index.js +4 -6
  33. package/build/index.js.map +1 -1
  34. package/build/latest-posts/edit.native.js +49 -0
  35. package/build/latest-posts/edit.native.js.map +1 -1
  36. package/build/navigation/edit/index.js +5 -28
  37. package/build/navigation/edit/index.js.map +1 -1
  38. package/build/navigation/edit/inner-blocks.js +5 -7
  39. package/build/navigation/edit/inner-blocks.js.map +1 -1
  40. package/build/navigation/index.js +0 -1
  41. package/build/navigation/index.js.map +1 -1
  42. package/build/navigation/view-modal.js +25 -0
  43. package/build/navigation/view-modal.js.map +1 -1
  44. package/build/navigation-link/edit.js +29 -30
  45. package/build/navigation-link/edit.js.map +1 -1
  46. package/build/navigation-submenu/edit.js +14 -14
  47. package/build/navigation-submenu/edit.js.map +1 -1
  48. package/build/paragraph/edit.js +10 -0
  49. package/build/paragraph/edit.js.map +1 -1
  50. package/build/paragraph/use-enter.js +94 -0
  51. package/build/paragraph/use-enter.js.map +1 -0
  52. package/build/post-comment/index.js +1 -1
  53. package/build/post-comments/edit.js +120 -35
  54. package/build/post-comments/edit.js.map +1 -1
  55. package/build/post-comments/index.js +3 -2
  56. package/build/post-comments/index.js.map +1 -1
  57. package/build/post-comments-form/edit.js +38 -4
  58. package/build/post-comments-form/edit.js.map +1 -1
  59. package/build/post-comments-form/form.js +48 -0
  60. package/build/post-comments-form/form.js.map +1 -0
  61. package/build/post-comments-form/index.js +1 -0
  62. package/build/post-comments-form/index.js.map +1 -1
  63. package/build/post-content/edit.js +1 -1
  64. package/build/post-content/edit.js.map +1 -1
  65. package/build/post-excerpt/edit.js +1 -1
  66. package/build/post-excerpt/edit.js.map +1 -1
  67. package/build/post-terms/edit.js +25 -3
  68. package/build/post-terms/edit.js.map +1 -1
  69. package/build/post-terms/index.js +8 -0
  70. package/build/post-terms/index.js.map +1 -1
  71. package/build/query-no-results/edit.js +1 -1
  72. package/build/query-no-results/edit.js.map +1 -1
  73. package/build/quote/index.js +1 -0
  74. package/build/quote/index.js.map +1 -1
  75. package/build/separator/index.js +3 -0
  76. package/build/separator/index.js.map +1 -1
  77. package/build/video/edit.js +3 -7
  78. package/build/video/edit.js.map +1 -1
  79. package/build-module/audio/edit.js +3 -15
  80. package/build-module/audio/edit.js.map +1 -1
  81. package/build-module/button/edit.native.js +7 -3
  82. package/build-module/button/edit.native.js.map +1 -1
  83. package/build-module/comment-template/edit.js +1 -3
  84. package/build-module/comment-template/edit.js.map +1 -1
  85. package/build-module/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
  86. package/build-module/comments/edit/comments-inspector-controls.js.map +1 -0
  87. package/build-module/{comments-query-loop → comments}/edit.js +2 -2
  88. package/build-module/comments/edit.js.map +1 -0
  89. package/build-module/{comments-query-loop → comments}/index.js +1 -1
  90. package/build-module/comments/index.js.map +1 -0
  91. package/build-module/{comments-query-loop → comments}/save.js +1 -1
  92. package/build-module/comments/save.js.map +1 -0
  93. package/build-module/comments-title/edit.js +7 -5
  94. package/build-module/comments-title/edit.js.map +1 -1
  95. package/build-module/cover/edit.js +4 -71
  96. package/build-module/cover/edit.js.map +1 -1
  97. package/build-module/cover/edit.native.js +35 -16
  98. package/build-module/cover/edit.native.js.map +1 -1
  99. package/build-module/cover/transforms.js +74 -6
  100. package/build-module/cover/transforms.js.map +1 -1
  101. package/build-module/cover/use-cover-is-dark.js +70 -0
  102. package/build-module/cover/use-cover-is-dark.js.map +1 -0
  103. package/build-module/cover/use-cover-is-dark.native.js +51 -0
  104. package/build-module/cover/use-cover-is-dark.native.js.map +1 -0
  105. package/build-module/group/index.js +1 -0
  106. package/build-module/group/index.js.map +1 -1
  107. package/build-module/heading/transforms.js +8 -4
  108. package/build-module/heading/transforms.js.map +1 -1
  109. package/build-module/index.js +3 -4
  110. package/build-module/index.js.map +1 -1
  111. package/build-module/latest-posts/edit.native.js +51 -2
  112. package/build-module/latest-posts/edit.native.js.map +1 -1
  113. package/build-module/navigation/edit/index.js +6 -28
  114. package/build-module/navigation/edit/index.js.map +1 -1
  115. package/build-module/navigation/edit/inner-blocks.js +5 -7
  116. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  117. package/build-module/navigation/index.js +0 -1
  118. package/build-module/navigation/index.js.map +1 -1
  119. package/build-module/navigation/view-modal.js +24 -0
  120. package/build-module/navigation/view-modal.js.map +1 -1
  121. package/build-module/navigation-link/edit.js +29 -30
  122. package/build-module/navigation-link/edit.js.map +1 -1
  123. package/build-module/navigation-submenu/edit.js +14 -14
  124. package/build-module/navigation-submenu/edit.js.map +1 -1
  125. package/build-module/paragraph/edit.js +9 -0
  126. package/build-module/paragraph/edit.js.map +1 -1
  127. package/build-module/paragraph/use-enter.js +81 -0
  128. package/build-module/paragraph/use-enter.js.map +1 -0
  129. package/build-module/post-comment/index.js +1 -1
  130. package/build-module/post-comments/edit.js +120 -37
  131. package/build-module/post-comments/edit.js.map +1 -1
  132. package/build-module/post-comments/index.js +3 -2
  133. package/build-module/post-comments/index.js.map +1 -1
  134. package/build-module/post-comments-form/edit.js +38 -6
  135. package/build-module/post-comments-form/edit.js.map +1 -1
  136. package/build-module/post-comments-form/form.js +39 -0
  137. package/build-module/post-comments-form/form.js.map +1 -0
  138. package/build-module/post-comments-form/index.js +1 -0
  139. package/build-module/post-comments-form/index.js.map +1 -1
  140. package/build-module/post-content/edit.js +1 -1
  141. package/build-module/post-content/edit.js.map +1 -1
  142. package/build-module/post-excerpt/edit.js +1 -1
  143. package/build-module/post-excerpt/edit.js.map +1 -1
  144. package/build-module/post-terms/edit.js +26 -4
  145. package/build-module/post-terms/edit.js.map +1 -1
  146. package/build-module/post-terms/index.js +8 -0
  147. package/build-module/post-terms/index.js.map +1 -1
  148. package/build-module/query-no-results/edit.js +1 -1
  149. package/build-module/query-no-results/edit.js.map +1 -1
  150. package/build-module/quote/index.js +1 -0
  151. package/build-module/quote/index.js.map +1 -1
  152. package/build-module/separator/index.js +3 -0
  153. package/build-module/separator/index.js.map +1 -1
  154. package/build-module/video/edit.js +3 -7
  155. package/build-module/video/edit.js.map +1 -1
  156. package/build-style/comment-content/style-rtl.css +81 -0
  157. package/build-style/comment-content/style.css +81 -0
  158. package/build-style/{comments-query-loop → comments}/editor-rtl.css +0 -0
  159. package/build-style/{comments-query-loop → comments}/editor.css +0 -0
  160. package/build-style/cover/style-rtl.css +1 -5
  161. package/build-style/cover/style.css +1 -5
  162. package/build-style/editor-rtl.css +12 -4
  163. package/build-style/editor.css +12 -4
  164. package/build-style/latest-posts/style-rtl.css +2 -0
  165. package/build-style/latest-posts/style.css +4 -0
  166. package/build-style/navigation/style-rtl.css +3 -0
  167. package/build-style/navigation/style.css +3 -0
  168. package/build-style/post-comments/editor-rtl.css +79 -0
  169. package/build-style/post-comments/editor.css +79 -0
  170. package/build-style/post-comments/style-rtl.css +6 -4
  171. package/build-style/post-comments/style.css +6 -4
  172. package/build-style/post-comments-form/editor-rtl.css +79 -0
  173. package/build-style/post-comments-form/editor.css +79 -0
  174. package/build-style/style-rtl.css +12 -9
  175. package/build-style/style.css +14 -9
  176. package/package.json +28 -28
  177. package/src/audio/edit.js +2 -7
  178. package/src/button/edit.native.js +6 -3
  179. package/src/comment-author-name/index.php +7 -5
  180. package/src/comment-content/index.php +25 -3
  181. package/src/comment-content/style.scss +5 -0
  182. package/src/comment-edit-link/index.php +1 -4
  183. package/src/comment-reply-link/index.php +1 -4
  184. package/src/comment-template/edit.js +1 -5
  185. package/src/comment-template/index.php +4 -0
  186. package/src/{comments-query-loop → comments}/block.json +1 -1
  187. package/src/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
  188. package/src/{comments-query-loop → comments}/edit.js +2 -1
  189. package/src/{comments-query-loop → comments}/editor.scss +0 -0
  190. package/src/{comments-query-loop → comments}/index.js +0 -0
  191. package/src/{comments-query-loop → comments}/save.js +1 -3
  192. package/src/comments-pagination/index.php +4 -0
  193. package/src/comments-title/edit.js +20 -4
  194. package/src/comments-title/index.php +18 -7
  195. package/src/cover/edit.js +2 -67
  196. package/src/cover/edit.native.js +40 -13
  197. package/src/cover/index.php +1 -1
  198. package/src/cover/style.native.scss +4 -0
  199. package/src/cover/style.scss +1 -5
  200. package/src/cover/test/__snapshots__/edit.native.js.snap +6 -6
  201. package/src/cover/test/transforms.js +301 -0
  202. package/src/cover/transforms.js +112 -7
  203. package/src/cover/use-cover-is-dark.js +71 -0
  204. package/src/cover/use-cover-is-dark.native.js +51 -0
  205. package/src/editor.scss +3 -1
  206. package/src/group/block.json +1 -0
  207. package/src/heading/transforms.js +4 -3
  208. package/src/index.js +3 -6
  209. package/src/latest-posts/edit.native.js +56 -1
  210. package/src/latest-posts/style.scss +4 -0
  211. package/src/navigation/block.json +0 -1
  212. package/src/navigation/edit/index.js +6 -36
  213. package/src/navigation/edit/inner-blocks.js +5 -7
  214. package/src/navigation/style.scss +3 -0
  215. package/src/navigation/view-modal.js +32 -0
  216. package/src/navigation-link/edit.js +40 -43
  217. package/src/navigation-submenu/edit.js +13 -17
  218. package/src/paragraph/edit.js +6 -0
  219. package/src/paragraph/use-enter.js +103 -0
  220. package/src/post-author/index.php +1 -1
  221. package/src/post-comment/block.json +1 -1
  222. package/src/post-comments/block.json +3 -2
  223. package/src/post-comments/edit.js +174 -44
  224. package/src/post-comments/editor.scss +3 -0
  225. package/src/post-comments/index.php +2 -0
  226. package/src/post-comments/style.scss +6 -7
  227. package/src/post-comments-form/block.json +1 -0
  228. package/src/post-comments-form/edit.js +52 -23
  229. package/src/post-comments-form/editor.scss +3 -0
  230. package/src/post-comments-form/form.js +43 -0
  231. package/src/post-comments-form/index.php +9 -2
  232. package/src/post-content/edit.js +15 -1
  233. package/src/post-excerpt/edit.js +14 -1
  234. package/src/post-terms/block.json +8 -0
  235. package/src/post-terms/edit.js +28 -1
  236. package/src/post-terms/index.php +12 -2
  237. package/src/query-no-results/edit.js +1 -1
  238. package/src/quote/block.json +1 -0
  239. package/src/separator/block.json +3 -0
  240. package/src/video/edit.js +3 -4
  241. package/build/comments-query-loop/edit/comments-inspector-controls.js.map +0 -1
  242. package/build/comments-query-loop/edit.js.map +0 -1
  243. package/build/comments-query-loop/index.js.map +0 -1
  244. package/build/comments-query-loop/save.js.map +0 -1
  245. package/build/navigation-area/edit.js +0 -110
  246. package/build/navigation-area/edit.js.map +0 -1
  247. package/build/navigation-area/index.js +0 -62
  248. package/build/navigation-area/index.js.map +0 -1
  249. package/build/navigation-area/inner-blocks.js +0 -34
  250. package/build/navigation-area/inner-blocks.js.map +0 -1
  251. package/build/navigation-area/save.js +0 -18
  252. package/build/navigation-area/save.js.map +0 -1
  253. package/build-module/comments-query-loop/edit.js.map +0 -1
  254. package/build-module/comments-query-loop/index.js.map +0 -1
  255. package/build-module/comments-query-loop/save.js.map +0 -1
  256. package/build-module/navigation-area/edit.js +0 -94
  257. package/build-module/navigation-area/edit.js.map +0 -1
  258. package/build-module/navigation-area/index.js +0 -48
  259. package/build-module/navigation-area/index.js.map +0 -1
  260. package/build-module/navigation-area/inner-blocks.js +0 -26
  261. package/build-module/navigation-area/inner-blocks.js.map +0 -1
  262. package/build-module/navigation-area/save.js +0 -10
  263. package/build-module/navigation-area/save.js.map +0 -1
  264. package/src/navigation-area/block.json +0 -23
  265. package/src/navigation-area/edit.js +0 -111
  266. package/src/navigation-area/index.js +0 -26
  267. package/src/navigation-area/index.php +0 -22
  268. package/src/navigation-area/inner-blocks.js +0 -24
  269. package/src/navigation-area/save.js +0 -8
@@ -13,8 +13,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
13
13
 
14
14
  var _classnames = _interopRequireDefault(require("classnames"));
15
15
 
16
- var _fastAverageColor = _interopRequireDefault(require("fast-average-color"));
17
-
18
16
  var _colord = require("colord");
19
17
 
20
18
  var _names = _interopRequireDefault(require("colord/plugins/names"));
@@ -39,6 +37,8 @@ var _notices = require("@wordpress/notices");
39
37
 
40
38
  var _shared = require("./shared");
41
39
 
40
+ var _useCoverIsDark = _interopRequireDefault(require("./use-cover-is-dark"));
41
+
42
42
  /**
43
43
  * External dependencies
44
44
  */
@@ -51,9 +51,6 @@ var _shared = require("./shared");
51
51
  * Internal dependencies
52
52
  */
53
53
  (0, _colord.extend)([_names.default]);
54
- const {
55
- __Visualizer: BoxControlVisualizer
56
- } = _components.__experimentalBoxControl;
57
54
 
58
55
  function getInnerBlocksTemplate(attributes) {
59
56
  return [['core/paragraph', {
@@ -63,14 +60,6 @@ function getInnerBlocksTemplate(attributes) {
63
60
  }]];
64
61
  }
65
62
 
66
- function retrieveFastAverageColor() {
67
- if (!retrieveFastAverageColor.fastAverageColor) {
68
- retrieveFastAverageColor.fastAverageColor = new _fastAverageColor.default();
69
- }
70
-
71
- return retrieveFastAverageColor.fastAverageColor;
72
- }
73
-
74
63
  function CoverHeightInput(_ref) {
75
64
  let {
76
65
  onChange,
@@ -167,57 +156,6 @@ function ResizableCover(_ref2) {
167
156
  }
168
157
  }, props));
169
158
  }
170
- /**
171
- * useCoverIsDark is a hook that returns a boolean variable specifying if the cover
172
- * background is dark or not.
173
- *
174
- * @param {?string} url Url of the media background.
175
- * @param {?number} dimRatio Transparency of the overlay color. If an image and
176
- * color are set, dimRatio is used to decide what is used
177
- * for background darkness checking purposes.
178
- * @param {?string} overlayColor String containing the overlay color value if one exists.
179
- * @param {?Object} elementRef If a media background is set, elementRef should contain a reference to a
180
- * dom element that renders that media.
181
- *
182
- * @return {boolean} True if the cover background is considered "dark" and false otherwise.
183
- */
184
-
185
-
186
- function useCoverIsDark(url) {
187
- let dimRatio = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 50;
188
- let overlayColor = arguments.length > 2 ? arguments[2] : undefined;
189
- let elementRef = arguments.length > 3 ? arguments[3] : undefined;
190
- const [isDark, setIsDark] = (0, _element.useState)(false);
191
- (0, _element.useEffect)(() => {
192
- // If opacity is lower than 50 the dominant color is the image or video color,
193
- // so use that color for the dark mode computation.
194
- if (url && dimRatio <= 50 && elementRef.current) {
195
- retrieveFastAverageColor().getColorAsync(elementRef.current, color => {
196
- setIsDark(color.isDark);
197
- });
198
- }
199
- }, [url, url && dimRatio <= 50 && elementRef.current, setIsDark]);
200
- (0, _element.useEffect)(() => {
201
- // If opacity is greater than 50 the dominant color is the overlay color,
202
- // so use that color for the dark mode computation.
203
- if (dimRatio > 50 || !url) {
204
- if (!overlayColor) {
205
- // If no overlay color exists the overlay color is black (isDark )
206
- setIsDark(true);
207
- return;
208
- }
209
-
210
- setIsDark((0, _colord.colord)(overlayColor).isDark());
211
- }
212
- }, [overlayColor, dimRatio > 50 || !url, setIsDark]);
213
- (0, _element.useEffect)(() => {
214
- if (!url && !overlayColor) {
215
- // Reset isDark.
216
- setIsDark(false);
217
- }
218
- }, [!url && !overlayColor, setIsDark]);
219
- return isDark;
220
- }
221
159
 
222
160
  function mediaPosition(_ref3) {
223
161
  let {
@@ -265,7 +203,7 @@ function CoverPlaceholder(_ref4) {
265
203
  }
266
204
 
267
205
  function CoverEdit(_ref5) {
268
- var _useSetting, _styleAttribute$spaci, _styleAttribute$visua;
206
+ var _useSetting;
269
207
 
270
208
  let {
271
209
  attributes,
@@ -291,7 +229,6 @@ function CoverEdit(_ref5) {
291
229
  isRepeated,
292
230
  minHeight,
293
231
  minHeightUnit,
294
- style: styleAttribute,
295
232
  alt,
296
233
  allowedBlocks,
297
234
  templateLock
@@ -379,7 +316,7 @@ function CoverEdit(_ref5) {
379
316
  };
380
317
 
381
318
  const isDarkElement = (0, _element.useRef)();
382
- const isCoverDark = useCoverIsDark(url, dimRatio, overlayColor.color, isDarkElement);
319
+ const isCoverDark = (0, _useCoverIsDark.default)(url, dimRatio, overlayColor.color, isDarkElement);
383
320
  (0, _element.useEffect)(() => {
384
321
  // This side-effect should not create an undo level.
385
322
  __unstableMarkNextChangeAsNotPersistent();
@@ -596,10 +533,6 @@ function CoverEdit(_ref5) {
596
533
  ...blockProps.style
597
534
  },
598
535
  "data-url": url
599
- }), (0, _element.createElement)(BoxControlVisualizer, {
600
- values: styleAttribute === null || styleAttribute === void 0 ? void 0 : (_styleAttribute$spaci = styleAttribute.spacing) === null || _styleAttribute$spaci === void 0 ? void 0 : _styleAttribute$spaci.padding,
601
- showValues: styleAttribute === null || styleAttribute === void 0 ? void 0 : (_styleAttribute$visua = styleAttribute.visualizers) === null || _styleAttribute$visua === void 0 ? void 0 : _styleAttribute$visua.padding,
602
- className: "block-library-cover__padding-visualizer"
603
536
  }), (0, _element.createElement)(ResizableCover, {
604
537
  className: "block-library-cover__resize-container",
605
538
  onResizeStart: () => {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/cover/edit.js"],"names":["namesPlugin","__Visualizer","BoxControlVisualizer","BoxControl","getInnerBlocksTemplate","attributes","align","placeholder","retrieveFastAverageColor","fastAverageColor","FastAverageColor","CoverHeightInput","onChange","onUnitChange","unit","value","instanceId","UnitControl","inputId","isPx","units","availableUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","computedValue","parsedQuantity","join","min","COVER_MIN_HEIGHT","maxWidth","RESIZABLE_BOX_ENABLE_OPTION","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","ResizableCover","className","onResizeStart","onResize","onResizeStop","props","isResizing","setIsResizing","_event","_direction","elt","clientHeight","useCoverIsDark","url","dimRatio","overlayColor","elementRef","isDark","setIsDark","current","getColorAsync","color","mediaPosition","x","y","Math","round","isTemporaryMedia","id","CoverPlaceholder","disableMediaButtons","children","onSelectMedia","onError","style","icon","title","instructions","ALLOWED_MEDIA_TYPES","CoverEdit","clientId","isSelected","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","contentPosition","useFeaturedImage","focalPoint","hasParallax","isRepeated","minHeight","minHeightUnit","styleAttribute","alt","allowedBlocks","templateLock","featuredImage","media","select","coreStore","getMedia","mediaUrl","source_url","backgroundType","IMAGE_BACKGROUND_TYPE","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","createErrorNotice","noticesStore","gradientClass","gradientValue","setGradient","isUploadingMedia","prevMinHeightValue","setPrevMinHeightValue","prevMinHeightUnit","setPrevMinHeightUnit","isMinFullHeight","toggleMinFullHeight","toggleParallax","toggleIsRepeated","toggleUseFeaturedImage","onUploadError","message","Array","isArray","type","isDarkElement","isCoverDark","isImageBackground","isVideoBackground","VIDEO_BACKGROUND_TYPE","minHeightWithUnit","isImgElement","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","ref","hasInnerBlocks","getBlock","innerBlocks","length","controls","nextPosition","postFeaturedImage","newFocalPoint","newAlt","colorValue","onColorChange","onGradientChange","label","newDimRation","newMinHeight","nextUnit","blockProps","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","template","templateInsertUpdatesSelection","classes","spacing","padding","visualizers","class","backgroundImage"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport FastAverageColor from 'fast-average-color';\nimport { colord, extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport {\n\tFragment,\n\tuseEffect,\n\tuseRef,\n\tuseState,\n\tuseMemo,\n} from '@wordpress/element';\nimport {\n\tBaseControl,\n\tButton,\n\tExternalLink,\n\tFocalPointPicker,\n\tPanelBody,\n\tPanelRow,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tToggleControl,\n\tToolbarButton,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalBoxControl as BoxControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { compose, useInstanceId } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSetting,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\t__experimentalPanelColorGradientSettings as PanelColorGradientSettings,\n\t__experimentalBlockAlignmentMatrixControl as BlockAlignmentMatrixControl,\n\t__experimentalBlockFullHeightAligmentControl as FullHeightAlignmentControl,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { postFeaturedImage, cover as icon } from '@wordpress/icons';\nimport { isBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport {\n\tALLOWED_MEDIA_TYPES,\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tCOVER_MIN_HEIGHT,\n\tbackgroundImageStyles,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n} from './shared';\n\nextend( [ namesPlugin ] );\n\nconst { __Visualizer: BoxControlVisualizer } = BoxControl;\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\nfunction retrieveFastAverageColor() {\n\tif ( ! retrieveFastAverageColor.fastAverageColor ) {\n\t\tretrieveFastAverageColor.fastAverageColor = new FastAverageColor();\n\t}\n\treturn retrieveFastAverageColor.fastAverageColor;\n}\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t\t'vh',\n\t\t],\n\t\tdefaultValues: { px: 430, '%': 20, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tonChange( inputValue );\n\t};\n\n\tconst computedValue = useMemo( () => {\n\t\tconst [ parsedQuantity ] = parseQuantityAndUnitFromRawValue( value );\n\t\treturn [ parsedQuantity, unit ].join( '' );\n\t}, [ unit, value ] );\n\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<BaseControl label={ __( 'Minimum height of cover' ) } id={ inputId }>\n\t\t\t<UnitControl\n\t\t\t\tid={ inputId }\n\t\t\t\tisResetValueOnUnitChange\n\t\t\t\tmin={ min }\n\t\t\t\tonChange={ handleOnChange }\n\t\t\t\tonUnitChange={ onUnitChange }\n\t\t\t\tstyle={ { maxWidth: 80 } }\n\t\t\t\tunits={ units }\n\t\t\t\tvalue={ computedValue }\n\t\t\t/>\n\t\t</BaseControl>\n\t);\n}\n\nconst RESIZABLE_BOX_ENABLE_OPTION = {\n\ttop: false,\n\tright: false,\n\tbottom: true,\n\tleft: false,\n\ttopRight: false,\n\tbottomRight: false,\n\tbottomLeft: false,\n\ttopLeft: false,\n};\n\nfunction ResizableCover( {\n\tclassName,\n\tonResizeStart,\n\tonResize,\n\tonResizeStop,\n\t...props\n} ) {\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ classnames( className, {\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t} ) }\n\t\t\tenable={ RESIZABLE_BOX_ENABLE_OPTION }\n\t\t\tonResizeStart={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStart( elt.clientHeight );\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t} }\n\t\t\tonResize={ ( _event, _direction, elt ) => {\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t\tif ( ! isResizing ) {\n\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResizeStop={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStop( elt.clientHeight );\n\t\t\t\tsetIsResizing( false );\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\n/**\n * useCoverIsDark is a hook that returns a boolean variable specifying if the cover\n * background is dark or not.\n *\n * @param {?string} url Url of the media background.\n * @param {?number} dimRatio Transparency of the overlay color. If an image and\n * color are set, dimRatio is used to decide what is used\n * for background darkness checking purposes.\n * @param {?string} overlayColor String containing the overlay color value if one exists.\n * @param {?Object} elementRef If a media background is set, elementRef should contain a reference to a\n * dom element that renders that media.\n *\n * @return {boolean} True if the cover background is considered \"dark\" and false otherwise.\n */\nfunction useCoverIsDark( url, dimRatio = 50, overlayColor, elementRef ) {\n\tconst [ isDark, setIsDark ] = useState( false );\n\tuseEffect( () => {\n\t\t// If opacity is lower than 50 the dominant color is the image or video color,\n\t\t// so use that color for the dark mode computation.\n\t\tif ( url && dimRatio <= 50 && elementRef.current ) {\n\t\t\tretrieveFastAverageColor().getColorAsync(\n\t\t\t\telementRef.current,\n\t\t\t\t( color ) => {\n\t\t\t\t\tsetIsDark( color.isDark );\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}, [ url, url && dimRatio <= 50 && elementRef.current, setIsDark ] );\n\tuseEffect( () => {\n\t\t// If opacity is greater than 50 the dominant color is the overlay color,\n\t\t// so use that color for the dark mode computation.\n\t\tif ( dimRatio > 50 || ! url ) {\n\t\t\tif ( ! overlayColor ) {\n\t\t\t\t// If no overlay color exists the overlay color is black (isDark )\n\t\t\t\tsetIsDark( true );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetIsDark( colord( overlayColor ).isDark() );\n\t\t}\n\t}, [ overlayColor, dimRatio > 50 || ! url, setIsDark ] );\n\tuseEffect( () => {\n\t\tif ( ! url && ! overlayColor ) {\n\t\t\t// Reset isDark.\n\t\t\tsetIsDark( false );\n\t\t}\n\t}, [ ! url && ! overlayColor, setIsDark ] );\n\treturn isDark;\n}\n\nfunction mediaPosition( { x, y } ) {\n\treturn `${ Math.round( x * 100 ) }% ${ Math.round( y * 100 ) }%`;\n}\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while\n * the media (image or video) is being uploaded and will not have an id allocated yet.\n *\n * @param {number} id The id of the media.\n * @param {string} url The url of the media.\n *\n * @return {boolean} Is the URL a Blob URL.\n */\nconst isTemporaryMedia = ( id, url ) => ! id && isBlobURL( url );\n\nfunction CoverPlaceholder( {\n\tdisableMediaButtons = false,\n\tchildren,\n\tonSelectMedia,\n\tonError,\n\tstyle,\n} ) {\n\treturn (\n\t\t<MediaPlaceholder\n\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\tlabels={ {\n\t\t\t\ttitle: __( 'Cover' ),\n\t\t\t\tinstructions: __(\n\t\t\t\t\t'Drag and drop onto this block, upload, or select existing media from your library.'\n\t\t\t\t),\n\t\t\t} }\n\t\t\tonSelect={ onSelectMedia }\n\t\t\taccept=\"image/*,video/*\"\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\tdisableMediaButtons={ disableMediaButtons }\n\t\t\tonError={ onError }\n\t\t\tstyle={ style }\n\t\t>\n\t\t\t{ children }\n\t\t</MediaPlaceholder>\n\t);\n}\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\tstyle: styleAttribute,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\tconst media = useSelect(\n\t\t( select ) =>\n\t\t\tfeaturedImage &&\n\t\t\tselect( coreStore ).getMedia( featuredImage, { context: 'view' } ),\n\t\t[ featuredImage ]\n\t);\n\tconst mediaUrl = media?.source_url;\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage ? mediaUrl : attributes.url;\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: attributes.backgroundType;\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tgradientClass,\n\t\tgradientValue,\n\t\tsetGradient,\n\t} = __experimentalUseGradient();\n\tconst onSelectMedia = attributesFromMedia( setAttributes, dimRatio );\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst [ prevMinHeightValue, setPrevMinHeightValue ] = useState( minHeight );\n\tconst [ prevMinHeightUnit, setPrevMinHeightUnit ] = useState(\n\t\tminHeightUnit\n\t);\n\tconst isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100;\n\n\tconst toggleMinFullHeight = () => {\n\t\tif ( isMinFullHeight ) {\n\t\t\t// If there aren't previous values, take the default ones.\n\t\t\tif ( prevMinHeightUnit === 'vh' && prevMinHeightValue === 100 ) {\n\t\t\t\treturn setAttributes( {\n\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Set the previous values of height.\n\t\t\treturn setAttributes( {\n\t\t\t\tminHeight: prevMinHeightValue,\n\t\t\t\tminHeightUnit: prevMinHeightUnit,\n\t\t\t} );\n\t\t}\n\n\t\tsetPrevMinHeightValue( minHeight );\n\t\tsetPrevMinHeightUnit( minHeightUnit );\n\n\t\t// Set full height.\n\t\treturn setAttributes( {\n\t\t\tminHeight: 100,\n\t\t\tminHeightUnit: 'vh',\n\t\t} );\n\t};\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst toggleUseFeaturedImage = () => {\n\t\tsetAttributes( {\n\t\t\tuseFeaturedImage: ! useFeaturedImage,\n\t\t\tdimRatio: dimRatio === 100 ? 50 : dimRatio,\n\t\t} );\n\t};\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( Array.isArray( message ) ? message[ 2 ] : message, {\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst isDarkElement = useRef();\n\tconst isCoverDark = useCoverIsDark(\n\t\turl,\n\t\tdimRatio,\n\t\toverlayColor.color,\n\t\tisDarkElement\n\t);\n\n\tuseEffect( () => {\n\t\t// This side-effect should not create an undo level.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetAttributes( { isDark: isCoverDark } );\n\t}, [ isCoverDark ] );\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\n\n\tconst minHeightWithUnit =\n\t\tminHeight && minHeightUnit\n\t\t\t? `${ minHeight }${ minHeightUnit }`\n\t\t\t: minHeight;\n\n\tconst isImgElement = ! ( hasParallax || isRepeated );\n\n\tconst style = {\n\t\t...( isImageBackground && ! isImgElement\n\t\t\t? backgroundImageStyles( url )\n\t\t\t: undefined ),\n\t\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst bgStyle = { backgroundColor: overlayColor.color };\n\tconst mediaStyle = {\n\t\tobjectPosition:\n\t\t\tfocalPoint && isImgElement\n\t\t\t\t? mediaPosition( focalPoint )\n\t\t\t\t: undefined,\n\t};\n\n\tconst hasBackground = !! ( url || overlayColor.color || gradientValue );\n\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = isDarkElement.current\n\t\t\t? [ isDarkElement.current.style, 'objectPosition' ]\n\t\t\t: [ ref.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\n\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlock( clientId ).innerBlocks.length >\n\t\t\t0,\n\t\t[ clientId ]\n\t);\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<BlockAlignmentMatrixControl\n\t\t\t\t\tlabel={ __( 'Change content position' ) }\n\t\t\t\t\tvalue={ contentPosition }\n\t\t\t\t\tonChange={ ( nextPosition ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tcontentPosition: nextPosition,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t\t<FullHeightAlignmentControl\n\t\t\t\t\tisActive={ isMinFullHeight }\n\t\t\t\t\tonToggle={ toggleMinFullHeight }\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<ToolbarButton\n\t\t\t\t\ticon={ postFeaturedImage }\n\t\t\t\t\tlabel={ __( 'Use featured image' ) }\n\t\t\t\t\tisPressed={ useFeaturedImage }\n\t\t\t\t\tonClick={ toggleUseFeaturedImage }\n\t\t\t\t/>\n\t\t\t\t{ ! useFeaturedImage && (\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*,video/*\"\n\t\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\t\tname={ ! url ? __( 'Add Media' ) : __( 'Replace' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<PanelBody title={ __( 'Media settings' ) }>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point picker' ) }\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! useFeaturedImage &&\n\t\t\t\t\t\t\turl &&\n\t\t\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t\t\tisImgElement && (\n\t\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t\t'Alt text (alternative text)'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if the image is purely decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\tclassName=\"block-library-cover__reset-button\"\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\turl: undefined,\n\t\t\t\t\t\t\t\t\t\tid: undefined,\n\t\t\t\t\t\t\t\t\t\tbackgroundType: undefined,\n\t\t\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\t\t\thasParallax: undefined,\n\t\t\t\t\t\t\t\t\t\tisRepeated: undefined,\n\t\t\t\t\t\t\t\t\t\tuseFeaturedImage: false,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Clear Media' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</PanelRow>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t<PanelColorGradientSettings\n\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\ttitle={ __( 'Overlay' ) }\n\t\t\t\t\tinitialOpen={ true }\n\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\tlabel: __( 'Color' ),\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Opacity' ) }\n\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\tonChange={ ( newDimRation ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdimRatio: newDimRation,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t</PanelColorGradientSettings>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={ minHeight }\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst ref = useRef();\n\tconst blockProps = useBlockProps( { ref } );\n\n\t// Check for fontSize support before we pass a fontSize attribute to the innerBlocks.\n\tconst hasFontSizes = !! useSetting( 'typography.fontSizes' )?.length;\n\tconst innerBlocksTemplate = getInnerBlocksTemplate( {\n\t\tfontSize: hasFontSizes ? 'large' : undefined,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t},\n\t\t{\n\t\t\ttemplate: innerBlocksTemplate,\n\t\t\ttemplateInsertUpdatesSelection: true,\n\t\t\tallowedBlocks,\n\t\t\ttemplateLock,\n\t\t}\n\t);\n\n\tif ( ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'is-placeholder',\n\t\t\t\t\t\tblockProps.className\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<CoverPlaceholder\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\tminHeight: minHeightWithUnit || undefined,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"wp-block-cover__placeholder-background-options\">\n\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\tdisableCustomColors={ true }\n\t\t\t\t\t\t\t\tvalue={ overlayColor.color }\n\t\t\t\t\t\t\t\tonChange={ setOverlayColor }\n\t\t\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</CoverPlaceholder>\n\t\t\t\t\t<ResizableCover\n\t\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst classes = classnames(\n\t\t{\n\t\t\t'is-dark-theme': isDark,\n\t\t\t'is-light': ! isDark,\n\t\t\t'is-transient': isUploadingMedia,\n\t\t\t'has-parallax': hasParallax,\n\t\t\t'is-repeated': isRepeated,\n\t\t\t'has-custom-content-position': ! isContentPositionCenter(\n\t\t\t\tcontentPosition\n\t\t\t),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ controls }\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t<BoxControlVisualizer\n\t\t\t\t\tvalues={ styleAttribute?.spacing?.padding }\n\t\t\t\t\tshowValues={ styleAttribute?.visualizers?.padding }\n\t\t\t\t\tclassName=\"block-library-cover__padding-visualizer\"\n\t\t\t\t/>\n\t\t\t\t<ResizableCover\n\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t} }\n\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t} }\n\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t/>\n\n\t\t\t\t<span\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t}\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t/>\n\n\t\t\t\t{ url && isImageBackground && isImgElement && (\n\t\t\t\t\t<img\n\t\t\t\t\t\tref={ isDarkElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ url && isVideoBackground && (\n\t\t\t\t\t<video\n\t\t\t\t\t\tref={ isDarkElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__video-background\"\n\t\t\t\t\t\tautoPlay\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tloop\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isUploadingMedia && <Spinner /> }\n\t\t\t\t<CoverPlaceholder\n\t\t\t\t\tdisableMediaButtons\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( CoverEdit );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/cover/edit.js"],"names":["namesPlugin","getInnerBlocksTemplate","attributes","align","placeholder","CoverHeightInput","onChange","onUnitChange","unit","value","instanceId","UnitControl","inputId","isPx","units","availableUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","computedValue","parsedQuantity","join","min","COVER_MIN_HEIGHT","maxWidth","RESIZABLE_BOX_ENABLE_OPTION","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","ResizableCover","className","onResizeStart","onResize","onResizeStop","props","isResizing","setIsResizing","_event","_direction","elt","clientHeight","mediaPosition","x","y","Math","round","isTemporaryMedia","id","url","CoverPlaceholder","disableMediaButtons","children","onSelectMedia","onError","style","icon","title","instructions","ALLOWED_MEDIA_TYPES","CoverEdit","clientId","isSelected","overlayColor","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","contentPosition","useFeaturedImage","dimRatio","focalPoint","hasParallax","isDark","isRepeated","minHeight","minHeightUnit","alt","allowedBlocks","templateLock","featuredImage","media","select","coreStore","getMedia","mediaUrl","source_url","backgroundType","IMAGE_BACKGROUND_TYPE","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","createErrorNotice","noticesStore","gradientClass","gradientValue","setGradient","isUploadingMedia","prevMinHeightValue","setPrevMinHeightValue","prevMinHeightUnit","setPrevMinHeightUnit","isMinFullHeight","toggleMinFullHeight","toggleParallax","toggleIsRepeated","toggleUseFeaturedImage","onUploadError","message","Array","isArray","type","isDarkElement","isCoverDark","color","isImageBackground","isVideoBackground","VIDEO_BACKGROUND_TYPE","minHeightWithUnit","isImgElement","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","current","ref","hasInnerBlocks","getBlock","innerBlocks","length","controls","nextPosition","postFeaturedImage","newFocalPoint","newAlt","colorValue","onColorChange","onGradientChange","label","newDimRation","newMinHeight","nextUnit","blockProps","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","template","templateInsertUpdatesSelection","classes","class","backgroundImage"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport {\n\tFragment,\n\tuseEffect,\n\tuseRef,\n\tuseState,\n\tuseMemo,\n} from '@wordpress/element';\nimport {\n\tBaseControl,\n\tButton,\n\tExternalLink,\n\tFocalPointPicker,\n\tPanelBody,\n\tPanelRow,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tToggleControl,\n\tToolbarButton,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { compose, useInstanceId } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSetting,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\t__experimentalPanelColorGradientSettings as PanelColorGradientSettings,\n\t__experimentalBlockAlignmentMatrixControl as BlockAlignmentMatrixControl,\n\t__experimentalBlockFullHeightAligmentControl as FullHeightAlignmentControl,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { postFeaturedImage, cover as icon } from '@wordpress/icons';\nimport { isBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport {\n\tALLOWED_MEDIA_TYPES,\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tCOVER_MIN_HEIGHT,\n\tbackgroundImageStyles,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n} from './shared';\nimport useCoverIsDark from './use-cover-is-dark';\n\nextend( [ namesPlugin ] );\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t\t'vh',\n\t\t],\n\t\tdefaultValues: { px: 430, '%': 20, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tonChange( inputValue );\n\t};\n\n\tconst computedValue = useMemo( () => {\n\t\tconst [ parsedQuantity ] = parseQuantityAndUnitFromRawValue( value );\n\t\treturn [ parsedQuantity, unit ].join( '' );\n\t}, [ unit, value ] );\n\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<BaseControl label={ __( 'Minimum height of cover' ) } id={ inputId }>\n\t\t\t<UnitControl\n\t\t\t\tid={ inputId }\n\t\t\t\tisResetValueOnUnitChange\n\t\t\t\tmin={ min }\n\t\t\t\tonChange={ handleOnChange }\n\t\t\t\tonUnitChange={ onUnitChange }\n\t\t\t\tstyle={ { maxWidth: 80 } }\n\t\t\t\tunits={ units }\n\t\t\t\tvalue={ computedValue }\n\t\t\t/>\n\t\t</BaseControl>\n\t);\n}\n\nconst RESIZABLE_BOX_ENABLE_OPTION = {\n\ttop: false,\n\tright: false,\n\tbottom: true,\n\tleft: false,\n\ttopRight: false,\n\tbottomRight: false,\n\tbottomLeft: false,\n\ttopLeft: false,\n};\n\nfunction ResizableCover( {\n\tclassName,\n\tonResizeStart,\n\tonResize,\n\tonResizeStop,\n\t...props\n} ) {\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ classnames( className, {\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t} ) }\n\t\t\tenable={ RESIZABLE_BOX_ENABLE_OPTION }\n\t\t\tonResizeStart={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStart( elt.clientHeight );\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t} }\n\t\t\tonResize={ ( _event, _direction, elt ) => {\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t\tif ( ! isResizing ) {\n\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResizeStop={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStop( elt.clientHeight );\n\t\t\t\tsetIsResizing( false );\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nfunction mediaPosition( { x, y } ) {\n\treturn `${ Math.round( x * 100 ) }% ${ Math.round( y * 100 ) }%`;\n}\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while\n * the media (image or video) is being uploaded and will not have an id allocated yet.\n *\n * @param {number} id The id of the media.\n * @param {string} url The url of the media.\n *\n * @return {boolean} Is the URL a Blob URL.\n */\nconst isTemporaryMedia = ( id, url ) => ! id && isBlobURL( url );\n\nfunction CoverPlaceholder( {\n\tdisableMediaButtons = false,\n\tchildren,\n\tonSelectMedia,\n\tonError,\n\tstyle,\n} ) {\n\treturn (\n\t\t<MediaPlaceholder\n\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\tlabels={ {\n\t\t\t\ttitle: __( 'Cover' ),\n\t\t\t\tinstructions: __(\n\t\t\t\t\t'Drag and drop onto this block, upload, or select existing media from your library.'\n\t\t\t\t),\n\t\t\t} }\n\t\t\tonSelect={ onSelectMedia }\n\t\t\taccept=\"image/*,video/*\"\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\tdisableMediaButtons={ disableMediaButtons }\n\t\t\tonError={ onError }\n\t\t\tstyle={ style }\n\t\t>\n\t\t\t{ children }\n\t\t</MediaPlaceholder>\n\t);\n}\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\tconst media = useSelect(\n\t\t( select ) =>\n\t\t\tfeaturedImage &&\n\t\t\tselect( coreStore ).getMedia( featuredImage, { context: 'view' } ),\n\t\t[ featuredImage ]\n\t);\n\tconst mediaUrl = media?.source_url;\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage ? mediaUrl : attributes.url;\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: attributes.backgroundType;\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tgradientClass,\n\t\tgradientValue,\n\t\tsetGradient,\n\t} = __experimentalUseGradient();\n\tconst onSelectMedia = attributesFromMedia( setAttributes, dimRatio );\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst [ prevMinHeightValue, setPrevMinHeightValue ] = useState( minHeight );\n\tconst [ prevMinHeightUnit, setPrevMinHeightUnit ] = useState(\n\t\tminHeightUnit\n\t);\n\tconst isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100;\n\n\tconst toggleMinFullHeight = () => {\n\t\tif ( isMinFullHeight ) {\n\t\t\t// If there aren't previous values, take the default ones.\n\t\t\tif ( prevMinHeightUnit === 'vh' && prevMinHeightValue === 100 ) {\n\t\t\t\treturn setAttributes( {\n\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Set the previous values of height.\n\t\t\treturn setAttributes( {\n\t\t\t\tminHeight: prevMinHeightValue,\n\t\t\t\tminHeightUnit: prevMinHeightUnit,\n\t\t\t} );\n\t\t}\n\n\t\tsetPrevMinHeightValue( minHeight );\n\t\tsetPrevMinHeightUnit( minHeightUnit );\n\n\t\t// Set full height.\n\t\treturn setAttributes( {\n\t\t\tminHeight: 100,\n\t\t\tminHeightUnit: 'vh',\n\t\t} );\n\t};\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst toggleUseFeaturedImage = () => {\n\t\tsetAttributes( {\n\t\t\tuseFeaturedImage: ! useFeaturedImage,\n\t\t\tdimRatio: dimRatio === 100 ? 50 : dimRatio,\n\t\t} );\n\t};\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( Array.isArray( message ) ? message[ 2 ] : message, {\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst isDarkElement = useRef();\n\tconst isCoverDark = useCoverIsDark(\n\t\turl,\n\t\tdimRatio,\n\t\toverlayColor.color,\n\t\tisDarkElement\n\t);\n\n\tuseEffect( () => {\n\t\t// This side-effect should not create an undo level.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetAttributes( { isDark: isCoverDark } );\n\t}, [ isCoverDark ] );\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\n\n\tconst minHeightWithUnit =\n\t\tminHeight && minHeightUnit\n\t\t\t? `${ minHeight }${ minHeightUnit }`\n\t\t\t: minHeight;\n\n\tconst isImgElement = ! ( hasParallax || isRepeated );\n\n\tconst style = {\n\t\t...( isImageBackground && ! isImgElement\n\t\t\t? backgroundImageStyles( url )\n\t\t\t: undefined ),\n\t\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst bgStyle = { backgroundColor: overlayColor.color };\n\tconst mediaStyle = {\n\t\tobjectPosition:\n\t\t\tfocalPoint && isImgElement\n\t\t\t\t? mediaPosition( focalPoint )\n\t\t\t\t: undefined,\n\t};\n\n\tconst hasBackground = !! ( url || overlayColor.color || gradientValue );\n\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = isDarkElement.current\n\t\t\t? [ isDarkElement.current.style, 'objectPosition' ]\n\t\t\t: [ ref.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\n\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlock( clientId ).innerBlocks.length >\n\t\t\t0,\n\t\t[ clientId ]\n\t);\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<BlockAlignmentMatrixControl\n\t\t\t\t\tlabel={ __( 'Change content position' ) }\n\t\t\t\t\tvalue={ contentPosition }\n\t\t\t\t\tonChange={ ( nextPosition ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tcontentPosition: nextPosition,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t\t<FullHeightAlignmentControl\n\t\t\t\t\tisActive={ isMinFullHeight }\n\t\t\t\t\tonToggle={ toggleMinFullHeight }\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<ToolbarButton\n\t\t\t\t\ticon={ postFeaturedImage }\n\t\t\t\t\tlabel={ __( 'Use featured image' ) }\n\t\t\t\t\tisPressed={ useFeaturedImage }\n\t\t\t\t\tonClick={ toggleUseFeaturedImage }\n\t\t\t\t/>\n\t\t\t\t{ ! useFeaturedImage && (\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*,video/*\"\n\t\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\t\tname={ ! url ? __( 'Add Media' ) : __( 'Replace' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<PanelBody title={ __( 'Media settings' ) }>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point picker' ) }\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! useFeaturedImage &&\n\t\t\t\t\t\t\turl &&\n\t\t\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t\t\tisImgElement && (\n\t\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t\t'Alt text (alternative text)'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if the image is purely decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\tclassName=\"block-library-cover__reset-button\"\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\turl: undefined,\n\t\t\t\t\t\t\t\t\t\tid: undefined,\n\t\t\t\t\t\t\t\t\t\tbackgroundType: undefined,\n\t\t\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\t\t\thasParallax: undefined,\n\t\t\t\t\t\t\t\t\t\tisRepeated: undefined,\n\t\t\t\t\t\t\t\t\t\tuseFeaturedImage: false,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Clear Media' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</PanelRow>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t<PanelColorGradientSettings\n\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\ttitle={ __( 'Overlay' ) }\n\t\t\t\t\tinitialOpen={ true }\n\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\tlabel: __( 'Color' ),\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Opacity' ) }\n\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\tonChange={ ( newDimRation ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdimRatio: newDimRation,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t</PanelColorGradientSettings>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={ minHeight }\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst ref = useRef();\n\tconst blockProps = useBlockProps( { ref } );\n\n\t// Check for fontSize support before we pass a fontSize attribute to the innerBlocks.\n\tconst hasFontSizes = !! useSetting( 'typography.fontSizes' )?.length;\n\tconst innerBlocksTemplate = getInnerBlocksTemplate( {\n\t\tfontSize: hasFontSizes ? 'large' : undefined,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t},\n\t\t{\n\t\t\ttemplate: innerBlocksTemplate,\n\t\t\ttemplateInsertUpdatesSelection: true,\n\t\t\tallowedBlocks,\n\t\t\ttemplateLock,\n\t\t}\n\t);\n\n\tif ( ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'is-placeholder',\n\t\t\t\t\t\tblockProps.className\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<CoverPlaceholder\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\tminHeight: minHeightWithUnit || undefined,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"wp-block-cover__placeholder-background-options\">\n\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\tdisableCustomColors={ true }\n\t\t\t\t\t\t\t\tvalue={ overlayColor.color }\n\t\t\t\t\t\t\t\tonChange={ setOverlayColor }\n\t\t\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</CoverPlaceholder>\n\t\t\t\t\t<ResizableCover\n\t\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst classes = classnames(\n\t\t{\n\t\t\t'is-dark-theme': isDark,\n\t\t\t'is-light': ! isDark,\n\t\t\t'is-transient': isUploadingMedia,\n\t\t\t'has-parallax': hasParallax,\n\t\t\t'is-repeated': isRepeated,\n\t\t\t'has-custom-content-position': ! isContentPositionCenter(\n\t\t\t\tcontentPosition\n\t\t\t),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ controls }\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t<ResizableCover\n\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t} }\n\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t} }\n\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t/>\n\n\t\t\t\t<span\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t}\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t/>\n\n\t\t\t\t{ url && isImageBackground && isImgElement && (\n\t\t\t\t\t<img\n\t\t\t\t\t\tref={ isDarkElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ url && isVideoBackground && (\n\t\t\t\t\t<video\n\t\t\t\t\t\tref={ isDarkElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__video-background\"\n\t\t\t\t\t\tautoPlay\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tloop\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isUploadingMedia && <Spinner /> }\n\t\t\t\t<CoverPlaceholder\n\t\t\t\t\tdisableMediaButtons\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( CoverEdit );\n"]}
@@ -15,6 +15,8 @@ var _reactNative = require("react-native");
15
15
 
16
16
  var _reactNativeVideo = _interopRequireDefault(require("react-native-video"));
17
17
 
18
+ var _dedupe = _interopRequireDefault(require("classnames/dedupe"));
19
+
18
20
  var _reactNativeBridge = require("@wordpress/react-native-bridge");
19
21
 
20
22
  var _i18n = require("@wordpress/i18n");
@@ -39,6 +41,8 @@ var _shared = require("./shared");
39
41
 
40
42
  var _controls = _interopRequireDefault(require("./controls"));
41
43
 
44
+ var _useCoverIsDark = _interopRequireDefault(require("./use-cover-is-dark"));
45
+
42
46
  /**
43
47
  * External dependencies
44
48
  */
@@ -89,7 +93,8 @@ const Cover = _ref => {
89
93
  templateLock,
90
94
  customGradient,
91
95
  gradient,
92
- overlayColor
96
+ overlayColor,
97
+ isDark
93
98
  } = attributes;
94
99
  const [isScreenReaderEnabled, setIsScreenReaderEnabled] = (0, _element.useState)(false);
95
100
  (0, _element.useEffect)(() => {
@@ -125,20 +130,7 @@ const Cover = _ref => {
125
130
  const hasBackground = !!(url || style && style.color && style.color.background || attributes.overlayColor || overlayColorValue.color || customOverlayColor || gradientValue);
126
131
  const hasOnlyColorBackground = !url && (hasBackground || hasInnerBlocks);
127
132
  const [isCustomColorPickerShowing, setCustomColorPickerShowing] = (0, _element.useState)(false);
128
- const openMediaOptionsRef = (0, _element.useRef)(); // Used to set a default color for its InnerBlocks
129
- // since there's no system to inherit styles yet
130
- // the RichText component will check if there are
131
- // parent styles for the current block. If there are,
132
- // it will use that color instead.
133
-
134
- (0, _element.useEffect)(() => {
135
- // While we don't support theme colors.
136
- if (!attributes.overlayColor || !attributes.overlay && url) {
137
- setAttributes({
138
- childrenStyles: _style.default.defaultColor
139
- });
140
- }
141
- }, [setAttributes]); // Initialize uploading flag to false, awaiting sync.
133
+ const openMediaOptionsRef = (0, _element.useRef)(); // Initialize uploading flag to false, awaiting sync.
142
134
 
143
135
  const [isUploadInProgress, setIsUploadInProgress] = (0, _element.useState)(false); // Initialize upload failure flag to true if url is local.
144
136
 
@@ -201,6 +193,35 @@ const Cover = _ref => {
201
193
  openGeneralSidebar();
202
194
  }
203
195
 
196
+ const {
197
+ __unstableMarkNextChangeAsNotPersistent
198
+ } = (0, _data.useDispatch)(_blockEditor.store);
199
+ const isCoverDark = (0, _useCoverIsDark.default)(isDark, url, dimRatio, overlayColorValue === null || overlayColorValue === void 0 ? void 0 : overlayColorValue.color);
200
+ (0, _element.useEffect)(() => {
201
+ var _attributes$className;
202
+
203
+ // This side-effect should not create an undo level.
204
+ __unstableMarkNextChangeAsNotPersistent(); // Used to set a default color for its InnerBlocks
205
+ // since there's no system to inherit styles yet
206
+ // the RichText component will check if there are
207
+ // parent styles for the current block. If there are,
208
+ // it will use that color instead.
209
+
210
+
211
+ setAttributes({
212
+ isDark: isCoverDark,
213
+ childrenStyles: isCoverDark ? _style.default.defaultColor : _style.default.defaultColorLightMode
214
+ }); // Ensure that "is-light" is removed from "className" attribute if cover background is dark.
215
+
216
+ if (isCoverDark && (_attributes$className = attributes.className) !== null && _attributes$className !== void 0 && _attributes$className.includes('is-light')) {
217
+ const className = (0, _dedupe.default)(attributes.className, {
218
+ 'is-light': false
219
+ });
220
+ setAttributes({
221
+ className: className !== '' ? className : undefined
222
+ });
223
+ }
224
+ }, [isCoverDark]);
204
225
  const backgroundColor = getStylesFromColorScheme(_style.default.backgroundSolid, _style.default.backgroundSolidDark);
205
226
  const overlayStyles = [_style.default.overlay, url && {
206
227
  opacity: dimRatio / 100
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/cover/edit.native.js"],"names":["INNER_BLOCKS_TEMPLATE","align","placeholder","Cover","attributes","getStylesFromColorScheme","isParentSelected","onFocus","setAttributes","openGeneralSidebar","closeSettingsBottomSheet","isSelected","selectBlock","blockWidth","hasInnerBlocks","backgroundType","dimRatio","focalPoint","minHeight","url","id","style","customOverlayColor","minHeightUnit","allowedBlocks","templateLock","customGradient","gradient","overlayColor","isScreenReaderEnabled","setIsScreenReaderEnabled","isCurrent","a11yInfoChangeSubscription","AccessibilityInfo","addEventListener","then","remove","convertedMinHeight","COVER_DEFAULT_HEIGHT","isImage","MEDIA_TYPE_IMAGE","THEME_COLORS_COUNT","colorsDefault","coverDefaultPalette","colors","slice","gradients","gradientValue","overlayColorValue","hasBackground","color","background","hasOnlyColorBackground","isCustomColorPickerShowing","setCustomColorPickerShowing","openMediaOptionsRef","overlay","childrenStyles","styles","defaultColor","isUploadInProgress","setIsUploadInProgress","didUploadFail","setDidUploadFail","shouldShowFailure","onSelectMedia","media","onSelect","onMediaPressed","isVideoLoading","setIsVideoLoading","onVideoLoadStart","onVideoLoad","onClearMedia","undefined","hasParallax","setColor","colorValue","slug","openColorPicker","backgroundColor","backgroundSolid","backgroundSolidDark","overlayStyles","opacity","overlaySelected","placeholderIconStyle","icon","iconDark","placeholderIcon","toolbarControls","open","replace","accessibilityHint","Platform","OS","addMediaButton","current","selectImageContainer","selectImage","image","selectImageIcon","onBottomSheetClosed","InteractionManager","runAfterInteractions","colorPickerControls","shouldEnableBottomSheetScroll","shouldEnableBottomSheetMaxHeight","onHandleClosingBottomSheet","onHandleHardwareButtonPress","isBottomSheetContentScrolling","renderContent","getMediaOptions","renderBackground","VIDEO_BACKGROUND_TYPE","mediaServerId","mediaUrl","IMAGE_BACKGROUND_TYPE","imageContainer","IMAGE_DEFAULT_FOCAL_POINT","width","uri","mediaPlaceholderEmptyStateContainer","height","title","ALLOWED_MEDIA_TYPES","colorPaletteWrapper","paletteColorIndicator","paletteCustomIndicatorWrapper","backgroundContainer","content","overlayContainer","imageEditButton","destructiveButton","label","onPress","separated","value","uploadFailedContainer","uploadFailed","warning","uploadFailedIcon","select","clientId","getSelectedBlockClientId","getBlock","blockEditorStore","selectedBlockClientId","getSettings","innerBlocks","length","settings","dispatch","editPostStore","closeGeneralSidebar","withPreferredColorScheme"],"mappings":";;;;;;;;;AAkDA;;;;AA/CA;;AAOA;;AAKA;;AAMA;;AACA;;AAaA;;AAaA;;AACA;;AAQA;;AACA;;AACA;;AAKA;;AACA;;AAOA;;AAxEA;AACA;AACA;;AAUA;AACA;AACA;;AA+CA;AACA;AACA;;AAWA;AACA;AACA;AACA,MAAMA,qBAAqB,GAAG,CAC7B,CACC,gBADD,EAEC;AACCC,EAAAA,KAAK,EAAE,QADR;AAECC,EAAAA,WAAW,EAAE,cAAI,cAAJ;AAFd,CAFD,CAD6B,CAA9B;;AAUA,MAAMC,KAAK,GAAG,QAYP;AAAA;;AAAA,MAZS;AACfC,IAAAA,UADe;AAEfC,IAAAA,wBAFe;AAGfC,IAAAA,gBAHe;AAIfC,IAAAA,OAJe;AAKfC,IAAAA,aALe;AAMfC,IAAAA,kBANe;AAOfC,IAAAA,wBAPe;AAQfC,IAAAA,UARe;AASfC,IAAAA,WATe;AAUfC,IAAAA,UAVe;AAWfC,IAAAA;AAXe,GAYT;AACN,QAAM;AACLC,IAAAA,cADK;AAELC,IAAAA,QAFK;AAGLC,IAAAA,UAHK;AAILC,IAAAA,SAJK;AAKLC,IAAAA,GALK;AAMLC,IAAAA,EANK;AAOLC,IAAAA,KAPK;AAQLC,IAAAA,kBARK;AASLC,IAAAA,aAAa,GAAG,IATX;AAULC,IAAAA,aAVK;AAWLC,IAAAA,YAXK;AAYLC,IAAAA,cAZK;AAaLC,IAAAA,QAbK;AAcLC,IAAAA;AAdK,MAeFxB,UAfJ;AAgBA,QAAM,CAAEyB,qBAAF,EAAyBC,wBAAzB,IAAsD,uBAC3D,KAD2D,CAA5D;AAIA,0BAAW,MAAM;AAChB,QAAIC,SAAS,GAAG,IAAhB,CADgB,CAGhB;;AACA;;AACA,UAAMC,0BAA0B,GAAGC,+BAAkBC,gBAAlB,CAClC,qBADkC,EAElCJ,wBAFkC,CAAnC;;AAKAG,mCAAkBJ,qBAAlB,GAA0CM,IAA1C,CAAgD,MAAM;AACrD,UAAKJ,SAAL,EAAiB;AAChBD,QAAAA,wBAAwB;AACxB;AACD,KAJD;;AAMA,WAAO,MAAM;AACZC,MAAAA,SAAS,GAAG,KAAZ;AACAC,MAAAA,0BAA0B,CAACI,MAA3B;AACA,KAHD;AAIA,GApBD,EAoBG,EApBH;AAsBA,QAAMC,kBAAkB,GAAG,wCAC1BnB,SAAS,IAAIoB,4BADa,EAE1Bf,aAF0B,CAA3B;AAKA,QAAMgB,OAAO,GAAGxB,cAAc,KAAKyB,6BAAnC;AAEA,QAAMC,kBAAkB,GAAG,CAA3B;AACA,QAAMC,aAAa,GAAG,8CAAtB;AACA,QAAMC,mBAAmB,GAAG,sBAAS,MAAM;AAC1C,WAAO;AACNC,MAAAA,MAAM,EAAEF,aAAa,CAACG,KAAd,CAAqB,CAArB,EAAwBJ,kBAAxB;AADF,KAAP;AAGA,GAJ2B,EAIzB,CAAEC,aAAF,CAJyB,CAA5B;AAKA,QAAMI,SAAS,GAAG,6CAA6B,WAA7B,CAAlB;AACA,QAAMC,aAAa,GAClBrB,cAAc,IAAI,yCAAwBoB,SAAxB,EAAmCnB,QAAnC,CADnB;AAEA,QAAMqB,iBAAiB,GAAG,kDACzBN,aADyB,EAEzBd,YAFyB,CAA1B;AAKA,QAAMqB,aAAa,GAAG,CAAC,EACtB9B,GAAG,IACDE,KAAK,IAAIA,KAAK,CAAC6B,KAAf,IAAwB7B,KAAK,CAAC6B,KAAN,CAAYC,UADtC,IAEA/C,UAAU,CAACwB,YAFX,IAGAoB,iBAAiB,CAACE,KAHlB,IAIA5B,kBAJA,IAKAyB,aANsB,CAAvB;AASA,QAAMK,sBAAsB,GAAG,CAAEjC,GAAF,KAAW8B,aAAa,IAAInC,cAA5B,CAA/B;AAEA,QAAM,CACLuC,0BADK,EAELC,2BAFK,IAGF,uBAAU,KAAV,CAHJ;AAKA,QAAMC,mBAAmB,GAAG,sBAA5B,CAjFM,CAmFN;AACA;AACA;AACA;AACA;;AACA,0BAAW,MAAM;AAChB;AACA,QAAK,CAAEnD,UAAU,CAACwB,YAAb,IAA+B,CAAExB,UAAU,CAACoD,OAAb,IAAwBrC,GAA5D,EAAoE;AACnEX,MAAAA,aAAa,CAAE;AAAEiD,QAAAA,cAAc,EAAEC,eAAOC;AAAzB,OAAF,CAAb;AACA;AACD,GALD,EAKG,CAAEnD,aAAF,CALH,EAxFM,CA+FN;;AACA,QAAM,CAAEoD,kBAAF,EAAsBC,qBAAtB,IAAgD,uBAAU,KAAV,CAAtD,CAhGM,CAkGN;;AACA,QAAM,CAAEC,aAAF,EAAiBC,gBAAjB,IAAsC,uBAC3C3C,EAAE,IAAI,sBAAaD,GAAb,MAAuB,OADc,CAA5C,CAnGM,CAuGN;;AACA,QAAM6C,iBAAiB,GAAGF,aAAa,IAAI,CAAEF,kBAA7C;;AAEA,QAAMK,aAAa,GAAKC,KAAF,IAAa;AAClCH,IAAAA,gBAAgB,CAAE,KAAF,CAAhB;AACA,UAAMI,QAAQ,GAAG,iCAAqB3D,aAArB,EAAoCQ,QAApC,CAAjB;AACAmD,IAAAA,QAAQ,CAAED,KAAF,CAAR;AACA,GAJD;;AAMA,QAAME,cAAc,GAAG,MAAM;AAC5B,QAAKR,kBAAL,EAA0B;AACzB,6DAAgCxC,EAAhC;AACA,KAFD,MAEO,IAAK4C,iBAAL,EAAyB;AAC/B,4DAA+B5C,EAA/B;AACA,KAFM,MAEA,IAAKmB,OAAO,IAAIpB,GAAhB,EAAsB;AAC5B,4DAA+BA,GAA/B;AACA;AACD,GARD;;AAUA,QAAM,CAAEkD,cAAF,EAAkBC,iBAAlB,IAAwC,uBAAU,IAAV,CAA9C;;AAEA,QAAMC,gBAAgB,GAAG,MAAM;AAC9BD,IAAAA,iBAAiB,CAAE,IAAF,CAAjB;AACA,GAFD;;AAIA,QAAME,WAAW,GAAG,MAAM;AACzBF,IAAAA,iBAAiB,CAAE,KAAF,CAAjB;AACA,GAFD;;AAIA,QAAMG,YAAY,GAAG,0BAAa,MAAM;AACvCjE,IAAAA,aAAa,CAAE;AACdS,MAAAA,UAAU,EAAEyD,SADE;AAEdC,MAAAA,WAAW,EAAED,SAFC;AAGdtD,MAAAA,EAAE,EAAEsD,SAHU;AAIdvD,MAAAA,GAAG,EAAEuD;AAJS,KAAF,CAAb;AAMAhE,IAAAA,wBAAwB;AACxB,GARoB,EAQlB,CAAEA,wBAAF,CARkB,CAArB;;AAUA,WAASkE,QAAT,CAAmB1B,KAAnB,EAA2B;AAAA;;AAC1B,UAAM2B,UAAU,GAAG,6CAA4BnC,aAA5B,EAA2CQ,KAA3C,CAAnB;AAEA1C,IAAAA,aAAa,CAAE;AACd;AACAoB,MAAAA,YAAY,sBAAEiD,UAAF,aAAEA,UAAF,uBAAEA,UAAU,CAAEC,IAAd,+DAAsBJ,SAFpB;AAGdpD,MAAAA,kBAAkB,WAAI,EAAEuD,UAAF,aAAEA,UAAF,eAAEA,UAAU,CAAEC,IAAd,KAAsB5B,KAA1B,yCAAqCwB,SAHzC;AAId/C,MAAAA,QAAQ,EAAE+C,SAJI;AAKdhD,MAAAA,cAAc,EAAEgD;AALF,KAAF,CAAb;AAOA;;AAED,WAASK,eAAT,GAA2B;AAC1BnE,IAAAA,WAAW;AACX0C,IAAAA,2BAA2B,CAAE,IAAF,CAA3B;AACA7C,IAAAA,kBAAkB;AAClB;;AAED,QAAMuE,eAAe,GAAG3E,wBAAwB,CAC/CqD,eAAOuB,eADwC,EAE/CvB,eAAOwB,mBAFwC,CAAhD;AAKA,QAAMC,aAAa,GAAG,CACrBzB,eAAOF,OADc,EAErBrC,GAAG,IAAI;AAAEiE,IAAAA,OAAO,EAAEpE,QAAQ,GAAG;AAAtB,GAFc,EAGrB,CAAE+B,aAAF,IAAmB;AAClBiC,IAAAA,eAAe,EACd1D,kBAAkB,KAClB0B,iBADkB,aAClBA,iBADkB,uBAClBA,iBAAiB,CAAEE,KADD,CAAlB,KAEA7B,KAFA,aAEAA,KAFA,uCAEAA,KAAK,CAAE6B,KAFP,iDAEA,aAAcC,UAFd,yBAGAO,eAAOF,OAHP,oDAGA,gBAAgBN,KAHhB;AAFiB,GAHE,EAUrB;AACA,GAAEF,iBAAiB,CAACE,KAApB,IAA6B,CAAE/B,GAA/B,GAAqC6D,eAArC,GAAuD,EAXlC,EAYrBzC,OAAO,IACNjC,gBADD,IAEC,CAAEsD,kBAFH,IAGC,CAAEE,aAHH,IAICJ,eAAO2B,eAhBa,CAAtB;AAmBA,QAAMC,oBAAoB,GAAGjF,wBAAwB,CACpDqD,eAAO6B,IAD6C,EAEpD7B,eAAO8B,QAF6C,CAArD;AAKA,QAAMC,eAAe,GAAG,4BAAC,gBAAD;AAAM,IAAA,IAAI,EAAGF;AAAb,KAAyBD,oBAAzB,EAAxB;;AAEA,QAAMI,eAAe,GAAKC,IAAF,IACvB,4BAAC,0BAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,kBAAJ,CADT;AAEC,IAAA,IAAI,EAAGC,cAFR;AAGC,IAAA,OAAO,EAAGD;AAHX,IADD,CADD;;AAUA,QAAME,iBAAiB,GACtBC,sBAASC,EAAT,KAAgB,KAAhB,GACG,cAAI,uDAAJ,CADH,GAEG,cAAI,uDAAJ,CAHJ;;AAKA,QAAMC,cAAc,GAAG,MACtB,4BAAC,qCAAD;AACC,IAAA,iBAAiB,EAAGH,iBADrB;AAEC,IAAA,kBAAkB,EAAG,cAAI,oBAAJ,CAFtB;AAGC,IAAA,iBAAiB,EAAC,QAHnB;AAIC,IAAA,OAAO,EAAGtC,mBAAmB,CAAC0C;AAJ/B,KAMC,4BAAC,iBAAD;AAAM,IAAA,KAAK,EAAGvC,eAAOwC;AAArB,KACC,4BAAC,iBAAD;AAAM,IAAA,KAAK,EAAGxC,eAAOyC;AAArB,KACC,4BAAC,gBAAD;AACC,IAAA,IAAI,EAAG,EADR;AAEC,IAAA,IAAI,EAAGC;AAFR,KAGM1C,eAAO2C,eAHb,EADD,CADD,CAND,CADD;;AAmBA,QAAMC,mBAAmB,GAAG,0BAAa,MAAM;AAC9CC,oCAAmBC,oBAAnB,CAAyC,MAAM;AAC9ClD,MAAAA,2BAA2B,CAAE,KAAF,CAA3B;AACA,KAFD;AAGA,GAJ2B,EAIzB,EAJyB,CAA5B;AAMA,QAAMmD,mBAAmB,GACxB,4BAAC,8BAAD,QACC,4BAAC,+BAAD,QACG;AAAA,QAAE;AACHC,MAAAA,6BADG;AAEHC,MAAAA,gCAFG;AAGHC,MAAAA,0BAHG;AAIHC,MAAAA,2BAJG;AAKHC,MAAAA;AALG,KAAF;AAAA,WAOD,4BAAC,uBAAD;AACC,MAAA,6BAA6B,EAC5BJ,6BAFF;AAIC,MAAA,gCAAgC,EAC/BC,gCALF;AAOC,MAAA,QAAQ,EAAG/B,QAPZ;AAQC,MAAA,gBAAgB,EAAGlE,wBARpB;AASC,MAAA,0BAA0B,EACzBkG,0BAVF;AAYC,MAAA,2BAA2B,EAC1BC,2BAbF;AAeC,MAAA,mBAAmB,EAAGP,mBAfvB;AAgBC,MAAA,6BAA6B,EAC5BQ,6BAjBF;AAmBC,MAAA,eAAe,EAAG,cAAI,gBAAJ;AAnBnB,MAPC;AAAA,GADH,CADD,CADD;;AAoCA,QAAMC,aAAa,GAAKC,eAAF,IACrB,qDACGC,gBAAgB,CAAED,eAAF,CADnB,EAEG1G,gBAAgB,IAAI8C,sBAApB,IAA8C4C,cAAc,EAF/D,CADD;;AAOA,QAAMiB,gBAAgB,GAAKD,eAAF;AAAA;;AAAA,WACxB,4BAAC,qCAAD;AACC,MAAA,UAAU,EAAG,CAAE1G,gBADhB;AAEC,MAAA,OAAO,EAAG8D,cAFX;AAGC,MAAA,WAAW,EAAGb,mBAAmB,CAAC0C,OAHnC;AAIC,MAAA,QAAQ,EAAG,CAAE3F;AAJd,OAMC,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAG,CAAEoD,eAAOP,UAAT,EAAqB6B,eAArB;AAAd,OACGgC,eAAe,EADlB,EAEG1G,gBAAgB,IACjBS,cAAc,KAAKmG,6BADlB,IAEDxB,eAAe,CAAEnC,mBAAmB,CAAC0C,OAAtB,CAJjB,EAKC,4BAAC,gCAAD;AACC,MAAA,OAAO,EAAG7E,EADX;AAEC,MAAA,qBAAqB,EAAG,MAAM;AAC7ByC,QAAAA,qBAAqB,CAAE,IAAF,CAArB;AACA,OAJF;AAKC,MAAA,8BAA8B,EAAG,SAG1B;AAAA,YAH4B;AAClCsD,UAAAA,aADkC;AAElCC,UAAAA;AAFkC,SAG5B;AACNvD,QAAAA,qBAAqB,CAAE,KAAF,CAArB;AACAE,QAAAA,gBAAgB,CAAE,KAAF,CAAhB;AACAvD,QAAAA,aAAa,CAAE;AACdY,UAAAA,EAAE,EAAE+F,aADU;AAEdhG,UAAAA,GAAG,EAAEiG,QAFS;AAGdrG,UAAAA;AAHc,SAAF,CAAb;AAKA,OAhBF;AAiBC,MAAA,8BAA8B,EAAG,MAAM;AACtC8C,QAAAA,qBAAqB,CAAE,KAAF,CAArB;AACAE,QAAAA,gBAAgB,CAAE,IAAF,CAAhB;AACA,OApBF;AAqBC,MAAA,uBAAuB,EAAG,MAAM;AAC/BF,QAAAA,qBAAqB,CAAE,KAAF,CAArB;AACAE,QAAAA,gBAAgB,CAAE,KAAF,CAAhB;AACAvD,QAAAA,aAAa,CAAE;AAAEY,UAAAA,EAAE,EAAEsD,SAAN;AAAiBvD,UAAAA,GAAG,EAAEuD;AAAtB,SAAF,CAAb;AACA;AAzBF,MALD,EAiCG2C,kCAA0BtG,cAA1B,IACD,4BAAC,iBAAD;AAAM,MAAA,KAAK,EAAG2C,eAAO4D;AAArB,OACC,4BAAC,iBAAD;AACC,MAAA,UAAU,EAAG,KADd;AAEC,MAAA,UAAU,EACTrG,UAAU,IAAIsG,qCAHhB;AAKC,MAAA,UAAU,EAAGjH,gBALd;AAMC,MAAA,cAAc,EAAGwD,aANlB;AAOC,MAAA,kBAAkB,EAAGF,kBAPtB;AAQC,MAAA,yBAAyB,EAAGK,aAR7B;AASC,MAAA,gBAAgB,EAAGV,mBAAmB,CAAC0C,OATxC;AAUC,MAAA,GAAG,EAAG9E,GAVP;AAWC,MAAA,KAAK,mBAAGuC,eAAO0C,KAAV,kDAAG,cAAcoB;AAXvB,MADD,CAlCF,EAmDGN,kCAA0BnG,cAA1B,IACD,4BAAC,yBAAD;AACC,MAAA,KAAK,MADN;AAEC,MAAA,YAAY,MAFb;AAGC,MAAA,MAAM,MAHP;AAIC,MAAA,UAAU,EAAG,OAJd;AAKC,MAAA,MAAM,EAAG;AAAE0G,QAAAA,GAAG,EAAEtG;AAAP,OALV;AAMC,MAAA,MAAM,EAAGqD,WANV;AAOC,MAAA,WAAW,EAAGD,gBAPf;AAQC,MAAA,KAAK,EAAG,CACPb,eAAOP,UADA,EAEP;AACA;AAAEiC,QAAAA,OAAO,EAAEf,cAAc,GAAG,CAAH,GAAO;AAAhC,OAHO;AART,MApDF,CAND,CADwB;AAAA,GAAzB;;AA8EA,MACG,CAAEpB,aAAF,IAAmB,CAAEnC,cAAvB,IACAuC,0BAFD,EAGE;AAAA;;AACD,WACC,4BAAC,iBAAD,QACGA,0BAA0B,IAAIoD,mBADjC,EAEC,4BAAC,6BAAD;AACC,MAAA,MAAM,2BACL/C,eAAOgE,mCADF,0DACL,sBAA4CC,MAF9C;AAIC,MAAA,eAAe,EAAGrG,kBAJnB;AAKC,MAAA,WAAW,EACVA,kBAAkB,KAAK,EAAvB,IACAA,kBAAkB,KAAKoD,SAPzB;AASC,MAAA,IAAI,EAAGe,eATR;AAUC,MAAA,MAAM,EAAG;AACRmC,QAAAA,KAAK,EAAE,cAAI,OAAJ;AADC,OAVV;AAaC,MAAA,QAAQ,EAAG3D,aAbZ;AAcC,MAAA,YAAY,EAAG4D,2BAdhB;AAeC,MAAA,OAAO,EAAGtH;AAfX,OAiBC,4BAAC,iBAAD;AACC,MAAA,KAAK,EAAGmD,eAAOoE,mBADhB;AAEC,MAAA,aAAa,EACZjG,qBAAqB,GAAG,MAAH,GAAY;AAHnC,OAMC,4BAAC,+BAAD,QACG;AAAA,UAAE;AAAE6E,QAAAA;AAAF,OAAF;AAAA,aACD,4BAAC,wBAAD;AACC,QAAA,0BAA0B,EACzBhD,eAAOqE,qBAFT;AAIC,QAAA,4BAA4B,EAC3BrE,eAAOsE,6BALT;AAOC,QAAA,QAAQ,EAAGpD,QAPZ;AAQC,QAAA,aAAa,EAAGG,eARjB;AASC,QAAA,eAAe,EAAGpC,mBATnB;AAUC,QAAA,qBAAqB,EAAG,KAVzB;AAWC,QAAA,iCAAiC,EAAG,KAXrC;AAYC,QAAA,6BAA6B,EAC5B+D;AAbF,QADC;AAAA,KADH,CAND,CAjBD,CAFD,CADD;AAkDA;;AAED,SACC,4BAAC,iBAAD;AAAM,IAAA,KAAK,EAAGhD,eAAOuE;AAArB,KACGtH,UAAU,IACX,4BAAC,8BAAD,QACC,4BAAC,iBAAD;AACC,IAAA,UAAU,EAAGP,UADd;AAEC,IAAA,aAAa,EAAG0D,aAFjB;AAGC,IAAA,sBAAsB,EAAGV,sBAH1B;AAIC,IAAA,kBAAkB,EAAGQ,kBAJtB;AAKC,IAAA,YAAY,EAAGa,YALhB;AAMC,IAAA,aAAa,EAAGR,aANjB;AAOC,IAAA,aAAa,EAAGzD;AAPjB,IADD,CAFF,EAeC,4BAAC,iBAAD;AACC,IAAA,aAAa,EAAC,UADf;AAEC,IAAA,KAAK,EAAG,CAAEkD,eAAOwE,OAAT,EAAkB;AAAEhH,MAAAA,SAAS,EAAEmB;AAAb,KAAlB;AAFT,KAIC,4BAAC,wBAAD;AACC,IAAA,aAAa,EAAGb,aADjB;AAEC,IAAA,QAAQ,EAAGxB,qBAFZ;AAGC,IAAA,YAAY,EAAGyB,YAHhB;AAIC,IAAA,8BAA8B,MAJ/B;AAKC,IAAA,UAAU,EAAGZ;AALd,IAJD,CAfD,EA4BC,4BAAC,iBAAD;AAAM,IAAA,aAAa,EAAC,MAApB;AAA2B,IAAA,KAAK,EAAG6C,eAAOyE;AAA1C,KACC,4BAAC,iBAAD;AAAM,IAAA,KAAK,EAAGhD;AAAd,KACGpC,aAAa,IACd,4BAAC,oBAAD;AACC,IAAA,aAAa,EAAGA,aADjB;AAEC,IAAA,KAAK,EAAGW,eAAOP;AAFhB,IAFF,CADD,CA5BD,EAuCC,4BAAC,wBAAD;AACC,IAAA,YAAY,EAAG0E,2BADhB;AAEC,IAAA,gBAAgB,EAAG,CAAEzE,sBAFtB;AAGC,IAAA,QAAQ,EAAGa,aAHZ;AAIC,IAAA,MAAM,EAAG,SAAiC;AAAA,UAA/B;AAAE0B,QAAAA,IAAF;AAAQqB,QAAAA;AAAR,OAA+B;AACzCzD,MAAAA,mBAAmB,CAAC0C,OAApB,GAA8BN,IAA9B;AACA,aAAOoB,aAAa,CAAEC,eAAF,CAApB;AACA;AAPF,IAvCD,EAiDGzE,OAAO,IACRpB,GADC,IAEDoC,mBAAmB,CAAC0C,OAFnB,IAGD3F,gBAHC,IAID,CAAEsD,kBAJD,IAKD,CAAEE,aALD,IAMA,4BAAC,iBAAD;AAAM,IAAA,KAAK,EAAGJ,eAAO0E;AAArB,KACC,4BAAC,8BAAD;AACC,IAAA,yBAAyB,EAAGnE,aAD7B;AAEC,IAAA,gBAAgB,EAAGV,mBAAmB,CAAC0C,OAFxC;AAGC,IAAA,aAAa,EAAG,CACf;AACCoC,MAAAA,iBAAiB,EAAE,IADpB;AAECjH,MAAAA,EAAE,EAAE,YAFL;AAGCkH,MAAAA,KAAK,EAAE,cAAI,aAAJ,CAHR;AAICC,MAAAA,OAAO,EAAE9D,YAJV;AAKC+D,MAAAA,SAAS,EAAE,IALZ;AAMCC,MAAAA,KAAK,EAAE;AANR,KADe,CAHjB;AAaC,IAAA,GAAG,EAAGtH;AAbP,IADD,CAvDH,EA0EG6C,iBAAiB,IAClB,4BAAC,iBAAD;AACC,IAAA,aAAa,EAAC,MADf;AAEC,IAAA,KAAK,EAAGN,eAAOgF;AAFhB,KAIC,4BAAC,iBAAD;AAAM,IAAA,KAAK,EAAGhF,eAAOiF;AAArB,KACC,4BAAC,gBAAD;AAAM,IAAA,IAAI,EAAGC;AAAb,KAA4BlF,eAAOmF,gBAAnC,EADD,CAJD,CA3EF,CADD;AAuFA,CA3fD;;eA6fe,sBAAS,CACvB,sBAAY,CAAEC,MAAF,YAA4B;AAAA;;AAAA,MAAlB;AAAEC,IAAAA;AAAF,GAAkB;AACvC,QAAM;AAAEC,IAAAA,wBAAF;AAA4BC,IAAAA;AAA5B,MAAyCH,MAAM,CACpDI,kBADoD,CAArD;AAIA,QAAMC,qBAAqB,GAAGH,wBAAwB,EAAtD;AAEA,QAAM;AAAEI,IAAAA;AAAF,MAAkBN,MAAM,CAAEI,kBAAF,CAA9B;AAEA,QAAMpI,cAAc,GAAG,cAAAmI,QAAQ,CAAEF,QAAF,CAAR,wDAAsBM,WAAtB,CAAkCC,MAAlC,IAA2C,CAAlE;AAEA,SAAO;AACNC,IAAAA,QAAQ,EAAEH,WAAW,EADf;AAEN9I,IAAAA,gBAAgB,EAAE6I,qBAAqB,KAAKJ,QAFtC;AAGNjI,IAAAA;AAHM,GAAP;AAKA,CAhBD,CADuB,EAkBvB,wBAAc,CAAE0I,QAAF,YAA8B;AAAA,MAAlB;AAAET,IAAAA;AAAF,GAAkB;AAC3C,QAAM;AAAEtI,IAAAA;AAAF,MAAyB+I,QAAQ,CAAEC,eAAF,CAAvC;AACA,QAAM;AAAE7I,IAAAA;AAAF,MAAkB4I,QAAQ,CAAEN,kBAAF,CAAhC;AAEA,SAAO;AACNzI,IAAAA,kBAAkB,EAAE,MAAMA,kBAAkB,CAAE,iBAAF,CADtC;;AAENC,IAAAA,wBAAwB,GAAG;AAC1B8I,MAAAA,QAAQ,CAAEC,eAAF,CAAR,CAA0BC,mBAA1B;AACA,KAJK;;AAKN9I,IAAAA,WAAW,EAAE,MAAMA,WAAW,CAAEmI,QAAF;AALxB,GAAP;AAOA,CAXD,CAlBuB,EA8BvBY,iCA9BuB,CAAT,EA+BVxJ,KA/BU,C","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tTouchableWithoutFeedback,\n\tInteractionManager,\n\tAccessibilityInfo,\n\tPlatform,\n} from 'react-native';\nimport Video from 'react-native-video';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestImageFailedRetryDialog,\n\trequestImageUploadCancelDialog,\n\trequestImageFullscreenPreview,\n\tmediaUploadSync,\n} from '@wordpress/react-native-bridge';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tIcon,\n\tImage,\n\tImageEditingButton,\n\tIMAGE_DEFAULT_FOCAL_POINT,\n\tToolbarButton,\n\tGradient,\n\tColorPalette,\n\tColorPicker,\n\tBottomSheetConsumer,\n\tuseConvertUnitToMobile,\n\tuseMobileGlobalStylesColors,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tInnerBlocks,\n\tInspectorControls,\n\tMEDIA_TYPE_IMAGE,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tgetColorObjectByColorValue,\n\tgetColorObjectByAttributeValues,\n\tgetGradientValueBySlug,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport {\n\tuseEffect,\n\tuseState,\n\tuseRef,\n\tuseCallback,\n\tuseMemo,\n} from '@wordpress/element';\nimport { cover as icon, replace, image, warning } from '@wordpress/icons';\nimport { getProtocol } from '@wordpress/url';\nimport { store as editPostStore } from '@wordpress/edit-post';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport {\n\tattributesFromMedia,\n\tALLOWED_MEDIA_TYPES,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tCOVER_DEFAULT_HEIGHT,\n} from './shared';\nimport Controls from './controls';\n\n/**\n * Constants\n */\nconst INNER_BLOCKS_TEMPLATE = [\n\t[\n\t\t'core/paragraph',\n\t\t{\n\t\t\talign: 'center',\n\t\t\tplaceholder: __( 'Write title…' ),\n\t\t},\n\t],\n];\n\nconst Cover = ( {\n\tattributes,\n\tgetStylesFromColorScheme,\n\tisParentSelected,\n\tonFocus,\n\tsetAttributes,\n\topenGeneralSidebar,\n\tcloseSettingsBottomSheet,\n\tisSelected,\n\tselectBlock,\n\tblockWidth,\n\thasInnerBlocks,\n} ) => {\n\tconst {\n\t\tbackgroundType,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\tminHeight,\n\t\turl,\n\t\tid,\n\t\tstyle,\n\t\tcustomOverlayColor,\n\t\tminHeightUnit = 'px',\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t\tcustomGradient,\n\t\tgradient,\n\t\toverlayColor,\n\t} = attributes;\n\tconst [ isScreenReaderEnabled, setIsScreenReaderEnabled ] = useState(\n\t\tfalse\n\t);\n\n\tuseEffect( () => {\n\t\tlet isCurrent = true;\n\n\t\t// Sync with local media store.\n\t\tmediaUploadSync();\n\t\tconst a11yInfoChangeSubscription = AccessibilityInfo.addEventListener(\n\t\t\t'screenReaderChanged',\n\t\t\tsetIsScreenReaderEnabled\n\t\t);\n\n\t\tAccessibilityInfo.isScreenReaderEnabled().then( () => {\n\t\t\tif ( isCurrent ) {\n\t\t\t\tsetIsScreenReaderEnabled();\n\t\t\t}\n\t\t} );\n\n\t\treturn () => {\n\t\t\tisCurrent = false;\n\t\t\ta11yInfoChangeSubscription.remove();\n\t\t};\n\t}, [] );\n\n\tconst convertedMinHeight = useConvertUnitToMobile(\n\t\tminHeight || COVER_DEFAULT_HEIGHT,\n\t\tminHeightUnit\n\t);\n\n\tconst isImage = backgroundType === MEDIA_TYPE_IMAGE;\n\n\tconst THEME_COLORS_COUNT = 4;\n\tconst colorsDefault = useMobileGlobalStylesColors();\n\tconst coverDefaultPalette = useMemo( () => {\n\t\treturn {\n\t\t\tcolors: colorsDefault.slice( 0, THEME_COLORS_COUNT ),\n\t\t};\n\t}, [ colorsDefault ] );\n\tconst gradients = useMobileGlobalStylesColors( 'gradients' );\n\tconst gradientValue =\n\t\tcustomGradient || getGradientValueBySlug( gradients, gradient );\n\tconst overlayColorValue = getColorObjectByAttributeValues(\n\t\tcolorsDefault,\n\t\toverlayColor\n\t);\n\n\tconst hasBackground = !! (\n\t\turl ||\n\t\t( style && style.color && style.color.background ) ||\n\t\tattributes.overlayColor ||\n\t\toverlayColorValue.color ||\n\t\tcustomOverlayColor ||\n\t\tgradientValue\n\t);\n\n\tconst hasOnlyColorBackground = ! url && ( hasBackground || hasInnerBlocks );\n\n\tconst [\n\t\tisCustomColorPickerShowing,\n\t\tsetCustomColorPickerShowing,\n\t] = useState( false );\n\n\tconst openMediaOptionsRef = useRef();\n\n\t// Used to set a default color for its InnerBlocks\n\t// since there's no system to inherit styles yet\n\t// the RichText component will check if there are\n\t// parent styles for the current block. If there are,\n\t// it will use that color instead.\n\tuseEffect( () => {\n\t\t// While we don't support theme colors.\n\t\tif ( ! attributes.overlayColor || ( ! attributes.overlay && url ) ) {\n\t\t\tsetAttributes( { childrenStyles: styles.defaultColor } );\n\t\t}\n\t}, [ setAttributes ] );\n\n\t// Initialize uploading flag to false, awaiting sync.\n\tconst [ isUploadInProgress, setIsUploadInProgress ] = useState( false );\n\n\t// Initialize upload failure flag to true if url is local.\n\tconst [ didUploadFail, setDidUploadFail ] = useState(\n\t\tid && getProtocol( url ) === 'file:'\n\t);\n\n\t// Don't show failure if upload is in progress.\n\tconst shouldShowFailure = didUploadFail && ! isUploadInProgress;\n\n\tconst onSelectMedia = ( media ) => {\n\t\tsetDidUploadFail( false );\n\t\tconst onSelect = attributesFromMedia( setAttributes, dimRatio );\n\t\tonSelect( media );\n\t};\n\n\tconst onMediaPressed = () => {\n\t\tif ( isUploadInProgress ) {\n\t\t\trequestImageUploadCancelDialog( id );\n\t\t} else if ( shouldShowFailure ) {\n\t\t\trequestImageFailedRetryDialog( id );\n\t\t} else if ( isImage && url ) {\n\t\t\trequestImageFullscreenPreview( url );\n\t\t}\n\t};\n\n\tconst [ isVideoLoading, setIsVideoLoading ] = useState( true );\n\n\tconst onVideoLoadStart = () => {\n\t\tsetIsVideoLoading( true );\n\t};\n\n\tconst onVideoLoad = () => {\n\t\tsetIsVideoLoading( false );\n\t};\n\n\tconst onClearMedia = useCallback( () => {\n\t\tsetAttributes( {\n\t\t\tfocalPoint: undefined,\n\t\t\thasParallax: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t} );\n\t\tcloseSettingsBottomSheet();\n\t}, [ closeSettingsBottomSheet ] );\n\n\tfunction setColor( color ) {\n\t\tconst colorValue = getColorObjectByColorValue( colorsDefault, color );\n\n\t\tsetAttributes( {\n\t\t\t// Clear all related attributes (only one should be set).\n\t\t\toverlayColor: colorValue?.slug ?? undefined,\n\t\t\tcustomOverlayColor: ( ! colorValue?.slug && color ) ?? undefined,\n\t\t\tgradient: undefined,\n\t\t\tcustomGradient: undefined,\n\t\t} );\n\t}\n\n\tfunction openColorPicker() {\n\t\tselectBlock();\n\t\tsetCustomColorPickerShowing( true );\n\t\topenGeneralSidebar();\n\t}\n\n\tconst backgroundColor = getStylesFromColorScheme(\n\t\tstyles.backgroundSolid,\n\t\tstyles.backgroundSolidDark\n\t);\n\n\tconst overlayStyles = [\n\t\tstyles.overlay,\n\t\turl && { opacity: dimRatio / 100 },\n\t\t! gradientValue && {\n\t\t\tbackgroundColor:\n\t\t\t\tcustomOverlayColor ||\n\t\t\t\toverlayColorValue?.color ||\n\t\t\t\tstyle?.color?.background ||\n\t\t\t\tstyles.overlay?.color,\n\t\t},\n\t\t// While we don't support theme colors we add a default bg color.\n\t\t! overlayColorValue.color && ! url ? backgroundColor : {},\n\t\tisImage &&\n\t\t\tisParentSelected &&\n\t\t\t! isUploadInProgress &&\n\t\t\t! didUploadFail &&\n\t\t\tstyles.overlaySelected,\n\t];\n\n\tconst placeholderIconStyle = getStylesFromColorScheme(\n\t\tstyles.icon,\n\t\tstyles.iconDark\n\t);\n\n\tconst placeholderIcon = <Icon icon={ icon } { ...placeholderIconStyle } />;\n\n\tconst toolbarControls = ( open ) => (\n\t\t<BlockControls group=\"other\">\n\t\t\t<ToolbarButton\n\t\t\t\ttitle={ __( 'Edit cover media' ) }\n\t\t\t\ticon={ replace }\n\t\t\t\tonClick={ open }\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\n\tconst accessibilityHint =\n\t\tPlatform.OS === 'ios'\n\t\t\t? __( 'Double tap to open Action Sheet to add image or video' )\n\t\t\t: __( 'Double tap to open Bottom Sheet to add image or video' );\n\n\tconst addMediaButton = () => (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessibilityHint={ accessibilityHint }\n\t\t\taccessibilityLabel={ __( 'Add image or video' ) }\n\t\t\taccessibilityRole=\"button\"\n\t\t\tonPress={ openMediaOptionsRef.current }\n\t\t>\n\t\t\t<View style={ styles.selectImageContainer }>\n\t\t\t\t<View style={ styles.selectImage }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tsize={ 16 }\n\t\t\t\t\t\ticon={ image }\n\t\t\t\t\t\t{ ...styles.selectImageIcon }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n\n\tconst onBottomSheetClosed = useCallback( () => {\n\t\tInteractionManager.runAfterInteractions( () => {\n\t\t\tsetCustomColorPickerShowing( false );\n\t\t} );\n\t}, [] );\n\n\tconst colorPickerControls = (\n\t\t<InspectorControls>\n\t\t\t<BottomSheetConsumer>\n\t\t\t\t{ ( {\n\t\t\t\t\tshouldEnableBottomSheetScroll,\n\t\t\t\t\tshouldEnableBottomSheetMaxHeight,\n\t\t\t\t\tonHandleClosingBottomSheet,\n\t\t\t\t\tonHandleHardwareButtonPress,\n\t\t\t\t\tisBottomSheetContentScrolling,\n\t\t\t\t} ) => (\n\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\tshouldEnableBottomSheetScroll={\n\t\t\t\t\t\t\tshouldEnableBottomSheetScroll\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshouldEnableBottomSheetMaxHeight={\n\t\t\t\t\t\t\tshouldEnableBottomSheetMaxHeight\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetColor={ setColor }\n\t\t\t\t\t\tonNavigationBack={ closeSettingsBottomSheet }\n\t\t\t\t\t\tonHandleClosingBottomSheet={\n\t\t\t\t\t\t\tonHandleClosingBottomSheet\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonHandleHardwareButtonPress={\n\t\t\t\t\t\t\tonHandleHardwareButtonPress\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonBottomSheetClosed={ onBottomSheetClosed }\n\t\t\t\t\t\tisBottomSheetContentScrolling={\n\t\t\t\t\t\t\tisBottomSheetContentScrolling\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbottomLabelText={ __( 'Select a color' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BottomSheetConsumer>\n\t\t</InspectorControls>\n\t);\n\n\tconst renderContent = ( getMediaOptions ) => (\n\t\t<>\n\t\t\t{ renderBackground( getMediaOptions ) }\n\t\t\t{ isParentSelected && hasOnlyColorBackground && addMediaButton() }\n\t\t</>\n\t);\n\n\tconst renderBackground = ( getMediaOptions ) => (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessible={ ! isParentSelected }\n\t\t\tonPress={ onMediaPressed }\n\t\t\tonLongPress={ openMediaOptionsRef.current }\n\t\t\tdisabled={ ! isParentSelected }\n\t\t>\n\t\t\t<View style={ [ styles.background, backgroundColor ] }>\n\t\t\t\t{ getMediaOptions() }\n\t\t\t\t{ isParentSelected &&\n\t\t\t\t\tbackgroundType === VIDEO_BACKGROUND_TYPE &&\n\t\t\t\t\ttoolbarControls( openMediaOptionsRef.current ) }\n\t\t\t\t<MediaUploadProgress\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tonUpdateMediaProgress={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( true );\n\t\t\t\t\t} }\n\t\t\t\t\tonFinishMediaUploadWithSuccess={ ( {\n\t\t\t\t\t\tmediaServerId,\n\t\t\t\t\t\tmediaUrl,\n\t\t\t\t\t} ) => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( false );\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tid: mediaServerId,\n\t\t\t\t\t\t\turl: mediaUrl,\n\t\t\t\t\t\t\tbackgroundType,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tonFinishMediaUploadWithFailure={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( true );\n\t\t\t\t\t} }\n\t\t\t\t\tonMediaUploadStateReset={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( false );\n\t\t\t\t\t\tsetAttributes( { id: undefined, url: undefined } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\n\t\t\t\t{ IMAGE_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t<View style={ styles.imageContainer }>\n\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\teditButton={ false }\n\t\t\t\t\t\t\tfocalPoint={\n\t\t\t\t\t\t\t\tfocalPoint || IMAGE_DEFAULT_FOCAL_POINT\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisSelected={ isParentSelected }\n\t\t\t\t\t\t\tisUploadFailed={ didUploadFail }\n\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\tonSelectMediaUploadOption={ onSelectMedia }\n\t\t\t\t\t\t\topenMediaOptions={ openMediaOptionsRef.current }\n\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\twidth={ styles.image?.width }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\n\t\t\t\t{ VIDEO_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t<Video\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tdisableFocus\n\t\t\t\t\t\trepeat\n\t\t\t\t\t\tresizeMode={ 'cover' }\n\t\t\t\t\t\tsource={ { uri: url } }\n\t\t\t\t\t\tonLoad={ onVideoLoad }\n\t\t\t\t\t\tonLoadStart={ onVideoLoadStart }\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\tstyles.background,\n\t\t\t\t\t\t\t// Hide Video component since it has black background while loading the source.\n\t\t\t\t\t\t\t{ opacity: isVideoLoading ? 0 : 1 },\n\t\t\t\t\t\t] }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n\n\tif (\n\t\t( ! hasBackground && ! hasInnerBlocks ) ||\n\t\tisCustomColorPickerShowing\n\t) {\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t{ isCustomColorPickerShowing && colorPickerControls }\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\theight={\n\t\t\t\t\t\tstyles.mediaPlaceholderEmptyStateContainer?.height\n\t\t\t\t\t}\n\t\t\t\t\tbackgroundColor={ customOverlayColor }\n\t\t\t\t\thideContent={\n\t\t\t\t\t\tcustomOverlayColor !== '' &&\n\t\t\t\t\t\tcustomOverlayColor !== undefined\n\t\t\t\t\t}\n\t\t\t\t\ticon={ placeholderIcon }\n\t\t\t\t\tlabels={ {\n\t\t\t\t\t\ttitle: __( 'Cover' ),\n\t\t\t\t\t} }\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ styles.colorPaletteWrapper }\n\t\t\t\t\t\tpointerEvents={\n\t\t\t\t\t\t\tisScreenReaderEnabled ? 'none' : 'auto'\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<BottomSheetConsumer>\n\t\t\t\t\t\t\t{ ( { shouldEnableBottomSheetScroll } ) => (\n\t\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\t\tcustomColorIndicatorStyles={\n\t\t\t\t\t\t\t\t\t\tstyles.paletteColorIndicator\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tcustomIndicatorWrapperStyles={\n\t\t\t\t\t\t\t\t\t\tstyles.paletteCustomIndicatorWrapper\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tsetColor={ setColor }\n\t\t\t\t\t\t\t\t\tonCustomPress={ openColorPicker }\n\t\t\t\t\t\t\t\t\tdefaultSettings={ coverDefaultPalette }\n\t\t\t\t\t\t\t\t\tshouldShowCustomLabel={ false }\n\t\t\t\t\t\t\t\t\tshouldShowCustomVerticalSeparator={ false }\n\t\t\t\t\t\t\t\t\tshouldEnableBottomSheetScroll={\n\t\t\t\t\t\t\t\t\t\tshouldEnableBottomSheetScroll\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BottomSheetConsumer>\n\t\t\t\t\t</View>\n\t\t\t\t</MediaPlaceholder>\n\t\t\t</View>\n\t\t);\n\t}\n\n\treturn (\n\t\t<View style={ styles.backgroundContainer }>\n\t\t\t{ isSelected && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<Controls\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tdidUploadFail={ didUploadFail }\n\t\t\t\t\t\thasOnlyColorBackground={ hasOnlyColorBackground }\n\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\tonClearMedia={ onClearMedia }\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\n\t\t\t<View\n\t\t\t\tpointerEvents=\"box-none\"\n\t\t\t\tstyle={ [ styles.content, { minHeight: convertedMinHeight } ] }\n\t\t\t>\n\t\t\t\t<InnerBlocks\n\t\t\t\t\tallowedBlocks={ allowedBlocks }\n\t\t\t\t\ttemplate={ INNER_BLOCKS_TEMPLATE }\n\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\ttemplateInsertUpdatesSelection\n\t\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\t/>\n\t\t\t</View>\n\n\t\t\t<View pointerEvents=\"none\" style={ styles.overlayContainer }>\n\t\t\t\t<View style={ overlayStyles }>\n\t\t\t\t\t{ gradientValue && (\n\t\t\t\t\t\t<Gradient\n\t\t\t\t\t\t\tgradientValue={ gradientValue }\n\t\t\t\t\t\t\tstyle={ styles.background }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</View>\n\t\t\t</View>\n\n\t\t\t<MediaUpload\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tisReplacingMedia={ ! hasOnlyColorBackground }\n\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\topenMediaOptionsRef.current = open;\n\t\t\t\t\treturn renderContent( getMediaOptions );\n\t\t\t\t} }\n\t\t\t/>\n\n\t\t\t{ isImage &&\n\t\t\t\turl &&\n\t\t\t\topenMediaOptionsRef.current &&\n\t\t\t\tisParentSelected &&\n\t\t\t\t! isUploadInProgress &&\n\t\t\t\t! didUploadFail && (\n\t\t\t\t\t<View style={ styles.imageEditButton }>\n\t\t\t\t\t\t<ImageEditingButton\n\t\t\t\t\t\t\tonSelectMediaUploadOption={ onSelectMedia }\n\t\t\t\t\t\t\topenMediaOptions={ openMediaOptionsRef.current }\n\t\t\t\t\t\t\tpickerOptions={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdestructiveButton: true,\n\t\t\t\t\t\t\t\t\tid: 'clearMedia',\n\t\t\t\t\t\t\t\t\tlabel: __( 'Clear Media' ),\n\t\t\t\t\t\t\t\t\tonPress: onClearMedia,\n\t\t\t\t\t\t\t\t\tseparated: true,\n\t\t\t\t\t\t\t\t\tvalue: 'clearMedia',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\n\t\t\t{ shouldShowFailure && (\n\t\t\t\t<View\n\t\t\t\t\tpointerEvents=\"none\"\n\t\t\t\t\tstyle={ styles.uploadFailedContainer }\n\t\t\t\t>\n\t\t\t\t\t<View style={ styles.uploadFailed }>\n\t\t\t\t\t\t<Icon icon={ warning } { ...styles.uploadFailedIcon } />\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t) }\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getSelectedBlockClientId, getBlock } = select(\n\t\t\tblockEditorStore\n\t\t);\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\n\t\tconst { getSettings } = select( blockEditorStore );\n\n\t\tconst hasInnerBlocks = getBlock( clientId )?.innerBlocks.length > 0;\n\n\t\treturn {\n\t\t\tsettings: getSettings(),\n\t\t\tisParentSelected: selectedBlockClientId === clientId,\n\t\t\thasInnerBlocks,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { clientId } ) => {\n\t\tconst { openGeneralSidebar } = dispatch( editPostStore );\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\n\t\treturn {\n\t\t\topenGeneralSidebar: () => openGeneralSidebar( 'edit-post/block' ),\n\t\t\tcloseSettingsBottomSheet() {\n\t\t\t\tdispatch( editPostStore ).closeGeneralSidebar();\n\t\t\t},\n\t\t\tselectBlock: () => selectBlock( clientId ),\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( Cover );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/cover/edit.native.js"],"names":["INNER_BLOCKS_TEMPLATE","align","placeholder","Cover","attributes","getStylesFromColorScheme","isParentSelected","onFocus","setAttributes","openGeneralSidebar","closeSettingsBottomSheet","isSelected","selectBlock","blockWidth","hasInnerBlocks","backgroundType","dimRatio","focalPoint","minHeight","url","id","style","customOverlayColor","minHeightUnit","allowedBlocks","templateLock","customGradient","gradient","overlayColor","isDark","isScreenReaderEnabled","setIsScreenReaderEnabled","isCurrent","a11yInfoChangeSubscription","AccessibilityInfo","addEventListener","then","remove","convertedMinHeight","COVER_DEFAULT_HEIGHT","isImage","MEDIA_TYPE_IMAGE","THEME_COLORS_COUNT","colorsDefault","coverDefaultPalette","colors","slice","gradients","gradientValue","overlayColorValue","hasBackground","color","background","hasOnlyColorBackground","isCustomColorPickerShowing","setCustomColorPickerShowing","openMediaOptionsRef","isUploadInProgress","setIsUploadInProgress","didUploadFail","setDidUploadFail","shouldShowFailure","onSelectMedia","media","onSelect","onMediaPressed","isVideoLoading","setIsVideoLoading","onVideoLoadStart","onVideoLoad","onClearMedia","undefined","hasParallax","setColor","colorValue","slug","openColorPicker","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","isCoverDark","childrenStyles","styles","defaultColor","defaultColorLightMode","className","includes","backgroundColor","backgroundSolid","backgroundSolidDark","overlayStyles","overlay","opacity","overlaySelected","placeholderIconStyle","icon","iconDark","placeholderIcon","toolbarControls","open","replace","accessibilityHint","Platform","OS","addMediaButton","current","selectImageContainer","selectImage","image","selectImageIcon","onBottomSheetClosed","InteractionManager","runAfterInteractions","colorPickerControls","shouldEnableBottomSheetScroll","shouldEnableBottomSheetMaxHeight","onHandleClosingBottomSheet","onHandleHardwareButtonPress","isBottomSheetContentScrolling","renderContent","getMediaOptions","renderBackground","VIDEO_BACKGROUND_TYPE","mediaServerId","mediaUrl","IMAGE_BACKGROUND_TYPE","imageContainer","IMAGE_DEFAULT_FOCAL_POINT","width","uri","mediaPlaceholderEmptyStateContainer","height","title","ALLOWED_MEDIA_TYPES","colorPaletteWrapper","paletteColorIndicator","paletteCustomIndicatorWrapper","backgroundContainer","content","overlayContainer","imageEditButton","destructiveButton","label","onPress","separated","value","uploadFailedContainer","uploadFailed","warning","uploadFailedIcon","select","clientId","getSelectedBlockClientId","getBlock","selectedBlockClientId","getSettings","innerBlocks","length","settings","dispatch","editPostStore","closeGeneralSidebar","withPreferredColorScheme"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tTouchableWithoutFeedback,\n\tInteractionManager,\n\tAccessibilityInfo,\n\tPlatform,\n} from 'react-native';\nimport Video from 'react-native-video';\nimport classnames from 'classnames/dedupe';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestImageFailedRetryDialog,\n\trequestImageUploadCancelDialog,\n\trequestImageFullscreenPreview,\n\tmediaUploadSync,\n} from '@wordpress/react-native-bridge';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tIcon,\n\tImage,\n\tImageEditingButton,\n\tIMAGE_DEFAULT_FOCAL_POINT,\n\tToolbarButton,\n\tGradient,\n\tColorPalette,\n\tColorPicker,\n\tBottomSheetConsumer,\n\tuseConvertUnitToMobile,\n\tuseMobileGlobalStylesColors,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tInnerBlocks,\n\tInspectorControls,\n\tMEDIA_TYPE_IMAGE,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tgetColorObjectByColorValue,\n\tgetColorObjectByAttributeValues,\n\tgetGradientValueBySlug,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { useDispatch, withSelect, withDispatch } from '@wordpress/data';\nimport {\n\tuseEffect,\n\tuseState,\n\tuseRef,\n\tuseCallback,\n\tuseMemo,\n} from '@wordpress/element';\nimport { cover as icon, replace, image, warning } from '@wordpress/icons';\nimport { getProtocol } from '@wordpress/url';\nimport { store as editPostStore } from '@wordpress/edit-post';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport {\n\tattributesFromMedia,\n\tALLOWED_MEDIA_TYPES,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tCOVER_DEFAULT_HEIGHT,\n} from './shared';\nimport Controls from './controls';\nimport useCoverIsDark from './use-cover-is-dark';\n\n/**\n * Constants\n */\nconst INNER_BLOCKS_TEMPLATE = [\n\t[\n\t\t'core/paragraph',\n\t\t{\n\t\t\talign: 'center',\n\t\t\tplaceholder: __( 'Write title…' ),\n\t\t},\n\t],\n];\n\nconst Cover = ( {\n\tattributes,\n\tgetStylesFromColorScheme,\n\tisParentSelected,\n\tonFocus,\n\tsetAttributes,\n\topenGeneralSidebar,\n\tcloseSettingsBottomSheet,\n\tisSelected,\n\tselectBlock,\n\tblockWidth,\n\thasInnerBlocks,\n} ) => {\n\tconst {\n\t\tbackgroundType,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\tminHeight,\n\t\turl,\n\t\tid,\n\t\tstyle,\n\t\tcustomOverlayColor,\n\t\tminHeightUnit = 'px',\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t\tcustomGradient,\n\t\tgradient,\n\t\toverlayColor,\n\t\tisDark,\n\t} = attributes;\n\tconst [ isScreenReaderEnabled, setIsScreenReaderEnabled ] = useState(\n\t\tfalse\n\t);\n\n\tuseEffect( () => {\n\t\tlet isCurrent = true;\n\n\t\t// Sync with local media store.\n\t\tmediaUploadSync();\n\t\tconst a11yInfoChangeSubscription = AccessibilityInfo.addEventListener(\n\t\t\t'screenReaderChanged',\n\t\t\tsetIsScreenReaderEnabled\n\t\t);\n\n\t\tAccessibilityInfo.isScreenReaderEnabled().then( () => {\n\t\t\tif ( isCurrent ) {\n\t\t\t\tsetIsScreenReaderEnabled();\n\t\t\t}\n\t\t} );\n\n\t\treturn () => {\n\t\t\tisCurrent = false;\n\t\t\ta11yInfoChangeSubscription.remove();\n\t\t};\n\t}, [] );\n\n\tconst convertedMinHeight = useConvertUnitToMobile(\n\t\tminHeight || COVER_DEFAULT_HEIGHT,\n\t\tminHeightUnit\n\t);\n\n\tconst isImage = backgroundType === MEDIA_TYPE_IMAGE;\n\n\tconst THEME_COLORS_COUNT = 4;\n\tconst colorsDefault = useMobileGlobalStylesColors();\n\tconst coverDefaultPalette = useMemo( () => {\n\t\treturn {\n\t\t\tcolors: colorsDefault.slice( 0, THEME_COLORS_COUNT ),\n\t\t};\n\t}, [ colorsDefault ] );\n\tconst gradients = useMobileGlobalStylesColors( 'gradients' );\n\tconst gradientValue =\n\t\tcustomGradient || getGradientValueBySlug( gradients, gradient );\n\tconst overlayColorValue = getColorObjectByAttributeValues(\n\t\tcolorsDefault,\n\t\toverlayColor\n\t);\n\n\tconst hasBackground = !! (\n\t\turl ||\n\t\t( style && style.color && style.color.background ) ||\n\t\tattributes.overlayColor ||\n\t\toverlayColorValue.color ||\n\t\tcustomOverlayColor ||\n\t\tgradientValue\n\t);\n\n\tconst hasOnlyColorBackground = ! url && ( hasBackground || hasInnerBlocks );\n\n\tconst [\n\t\tisCustomColorPickerShowing,\n\t\tsetCustomColorPickerShowing,\n\t] = useState( false );\n\n\tconst openMediaOptionsRef = useRef();\n\n\t// Initialize uploading flag to false, awaiting sync.\n\tconst [ isUploadInProgress, setIsUploadInProgress ] = useState( false );\n\n\t// Initialize upload failure flag to true if url is local.\n\tconst [ didUploadFail, setDidUploadFail ] = useState(\n\t\tid && getProtocol( url ) === 'file:'\n\t);\n\n\t// Don't show failure if upload is in progress.\n\tconst shouldShowFailure = didUploadFail && ! isUploadInProgress;\n\n\tconst onSelectMedia = ( media ) => {\n\t\tsetDidUploadFail( false );\n\t\tconst onSelect = attributesFromMedia( setAttributes, dimRatio );\n\t\tonSelect( media );\n\t};\n\n\tconst onMediaPressed = () => {\n\t\tif ( isUploadInProgress ) {\n\t\t\trequestImageUploadCancelDialog( id );\n\t\t} else if ( shouldShowFailure ) {\n\t\t\trequestImageFailedRetryDialog( id );\n\t\t} else if ( isImage && url ) {\n\t\t\trequestImageFullscreenPreview( url );\n\t\t}\n\t};\n\n\tconst [ isVideoLoading, setIsVideoLoading ] = useState( true );\n\n\tconst onVideoLoadStart = () => {\n\t\tsetIsVideoLoading( true );\n\t};\n\n\tconst onVideoLoad = () => {\n\t\tsetIsVideoLoading( false );\n\t};\n\n\tconst onClearMedia = useCallback( () => {\n\t\tsetAttributes( {\n\t\t\tfocalPoint: undefined,\n\t\t\thasParallax: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t} );\n\t\tcloseSettingsBottomSheet();\n\t}, [ closeSettingsBottomSheet ] );\n\n\tfunction setColor( color ) {\n\t\tconst colorValue = getColorObjectByColorValue( colorsDefault, color );\n\n\t\tsetAttributes( {\n\t\t\t// Clear all related attributes (only one should be set).\n\t\t\toverlayColor: colorValue?.slug ?? undefined,\n\t\t\tcustomOverlayColor: ( ! colorValue?.slug && color ) ?? undefined,\n\t\t\tgradient: undefined,\n\t\t\tcustomGradient: undefined,\n\t\t} );\n\t}\n\n\tfunction openColorPicker() {\n\t\tselectBlock();\n\t\tsetCustomColorPickerShowing( true );\n\t\topenGeneralSidebar();\n\t}\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tconst isCoverDark = useCoverIsDark(\n\t\tisDark,\n\t\turl,\n\t\tdimRatio,\n\t\toverlayColorValue?.color\n\t);\n\n\tuseEffect( () => {\n\t\t// This side-effect should not create an undo level.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t// Used to set a default color for its InnerBlocks\n\t\t// since there's no system to inherit styles yet\n\t\t// the RichText component will check if there are\n\t\t// parent styles for the current block. If there are,\n\t\t// it will use that color instead.\n\t\tsetAttributes( {\n\t\t\tisDark: isCoverDark,\n\t\t\tchildrenStyles: isCoverDark\n\t\t\t\t? styles.defaultColor\n\t\t\t\t: styles.defaultColorLightMode,\n\t\t} );\n\n\t\t// Ensure that \"is-light\" is removed from \"className\" attribute if cover background is dark.\n\t\tif ( isCoverDark && attributes.className?.includes( 'is-light' ) ) {\n\t\t\tconst className = classnames( attributes.className, {\n\t\t\t\t'is-light': false,\n\t\t\t} );\n\t\t\tsetAttributes( {\n\t\t\t\tclassName: className !== '' ? className : undefined,\n\t\t\t} );\n\t\t}\n\t}, [ isCoverDark ] );\n\n\tconst backgroundColor = getStylesFromColorScheme(\n\t\tstyles.backgroundSolid,\n\t\tstyles.backgroundSolidDark\n\t);\n\n\tconst overlayStyles = [\n\t\tstyles.overlay,\n\t\turl && { opacity: dimRatio / 100 },\n\t\t! gradientValue && {\n\t\t\tbackgroundColor:\n\t\t\t\tcustomOverlayColor ||\n\t\t\t\toverlayColorValue?.color ||\n\t\t\t\tstyle?.color?.background ||\n\t\t\t\tstyles.overlay?.color,\n\t\t},\n\t\t// While we don't support theme colors we add a default bg color.\n\t\t! overlayColorValue.color && ! url ? backgroundColor : {},\n\t\tisImage &&\n\t\t\tisParentSelected &&\n\t\t\t! isUploadInProgress &&\n\t\t\t! didUploadFail &&\n\t\t\tstyles.overlaySelected,\n\t];\n\n\tconst placeholderIconStyle = getStylesFromColorScheme(\n\t\tstyles.icon,\n\t\tstyles.iconDark\n\t);\n\n\tconst placeholderIcon = <Icon icon={ icon } { ...placeholderIconStyle } />;\n\n\tconst toolbarControls = ( open ) => (\n\t\t<BlockControls group=\"other\">\n\t\t\t<ToolbarButton\n\t\t\t\ttitle={ __( 'Edit cover media' ) }\n\t\t\t\ticon={ replace }\n\t\t\t\tonClick={ open }\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\n\tconst accessibilityHint =\n\t\tPlatform.OS === 'ios'\n\t\t\t? __( 'Double tap to open Action Sheet to add image or video' )\n\t\t\t: __( 'Double tap to open Bottom Sheet to add image or video' );\n\n\tconst addMediaButton = () => (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessibilityHint={ accessibilityHint }\n\t\t\taccessibilityLabel={ __( 'Add image or video' ) }\n\t\t\taccessibilityRole=\"button\"\n\t\t\tonPress={ openMediaOptionsRef.current }\n\t\t>\n\t\t\t<View style={ styles.selectImageContainer }>\n\t\t\t\t<View style={ styles.selectImage }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tsize={ 16 }\n\t\t\t\t\t\ticon={ image }\n\t\t\t\t\t\t{ ...styles.selectImageIcon }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n\n\tconst onBottomSheetClosed = useCallback( () => {\n\t\tInteractionManager.runAfterInteractions( () => {\n\t\t\tsetCustomColorPickerShowing( false );\n\t\t} );\n\t}, [] );\n\n\tconst colorPickerControls = (\n\t\t<InspectorControls>\n\t\t\t<BottomSheetConsumer>\n\t\t\t\t{ ( {\n\t\t\t\t\tshouldEnableBottomSheetScroll,\n\t\t\t\t\tshouldEnableBottomSheetMaxHeight,\n\t\t\t\t\tonHandleClosingBottomSheet,\n\t\t\t\t\tonHandleHardwareButtonPress,\n\t\t\t\t\tisBottomSheetContentScrolling,\n\t\t\t\t} ) => (\n\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\tshouldEnableBottomSheetScroll={\n\t\t\t\t\t\t\tshouldEnableBottomSheetScroll\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshouldEnableBottomSheetMaxHeight={\n\t\t\t\t\t\t\tshouldEnableBottomSheetMaxHeight\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetColor={ setColor }\n\t\t\t\t\t\tonNavigationBack={ closeSettingsBottomSheet }\n\t\t\t\t\t\tonHandleClosingBottomSheet={\n\t\t\t\t\t\t\tonHandleClosingBottomSheet\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonHandleHardwareButtonPress={\n\t\t\t\t\t\t\tonHandleHardwareButtonPress\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonBottomSheetClosed={ onBottomSheetClosed }\n\t\t\t\t\t\tisBottomSheetContentScrolling={\n\t\t\t\t\t\t\tisBottomSheetContentScrolling\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbottomLabelText={ __( 'Select a color' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BottomSheetConsumer>\n\t\t</InspectorControls>\n\t);\n\n\tconst renderContent = ( getMediaOptions ) => (\n\t\t<>\n\t\t\t{ renderBackground( getMediaOptions ) }\n\t\t\t{ isParentSelected && hasOnlyColorBackground && addMediaButton() }\n\t\t</>\n\t);\n\n\tconst renderBackground = ( getMediaOptions ) => (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessible={ ! isParentSelected }\n\t\t\tonPress={ onMediaPressed }\n\t\t\tonLongPress={ openMediaOptionsRef.current }\n\t\t\tdisabled={ ! isParentSelected }\n\t\t>\n\t\t\t<View style={ [ styles.background, backgroundColor ] }>\n\t\t\t\t{ getMediaOptions() }\n\t\t\t\t{ isParentSelected &&\n\t\t\t\t\tbackgroundType === VIDEO_BACKGROUND_TYPE &&\n\t\t\t\t\ttoolbarControls( openMediaOptionsRef.current ) }\n\t\t\t\t<MediaUploadProgress\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tonUpdateMediaProgress={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( true );\n\t\t\t\t\t} }\n\t\t\t\t\tonFinishMediaUploadWithSuccess={ ( {\n\t\t\t\t\t\tmediaServerId,\n\t\t\t\t\t\tmediaUrl,\n\t\t\t\t\t} ) => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( false );\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tid: mediaServerId,\n\t\t\t\t\t\t\turl: mediaUrl,\n\t\t\t\t\t\t\tbackgroundType,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tonFinishMediaUploadWithFailure={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( true );\n\t\t\t\t\t} }\n\t\t\t\t\tonMediaUploadStateReset={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( false );\n\t\t\t\t\t\tsetAttributes( { id: undefined, url: undefined } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\n\t\t\t\t{ IMAGE_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t<View style={ styles.imageContainer }>\n\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\teditButton={ false }\n\t\t\t\t\t\t\tfocalPoint={\n\t\t\t\t\t\t\t\tfocalPoint || IMAGE_DEFAULT_FOCAL_POINT\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisSelected={ isParentSelected }\n\t\t\t\t\t\t\tisUploadFailed={ didUploadFail }\n\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\tonSelectMediaUploadOption={ onSelectMedia }\n\t\t\t\t\t\t\topenMediaOptions={ openMediaOptionsRef.current }\n\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\twidth={ styles.image?.width }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\n\t\t\t\t{ VIDEO_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t<Video\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tdisableFocus\n\t\t\t\t\t\trepeat\n\t\t\t\t\t\tresizeMode={ 'cover' }\n\t\t\t\t\t\tsource={ { uri: url } }\n\t\t\t\t\t\tonLoad={ onVideoLoad }\n\t\t\t\t\t\tonLoadStart={ onVideoLoadStart }\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\tstyles.background,\n\t\t\t\t\t\t\t// Hide Video component since it has black background while loading the source.\n\t\t\t\t\t\t\t{ opacity: isVideoLoading ? 0 : 1 },\n\t\t\t\t\t\t] }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n\n\tif (\n\t\t( ! hasBackground && ! hasInnerBlocks ) ||\n\t\tisCustomColorPickerShowing\n\t) {\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t{ isCustomColorPickerShowing && colorPickerControls }\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\theight={\n\t\t\t\t\t\tstyles.mediaPlaceholderEmptyStateContainer?.height\n\t\t\t\t\t}\n\t\t\t\t\tbackgroundColor={ customOverlayColor }\n\t\t\t\t\thideContent={\n\t\t\t\t\t\tcustomOverlayColor !== '' &&\n\t\t\t\t\t\tcustomOverlayColor !== undefined\n\t\t\t\t\t}\n\t\t\t\t\ticon={ placeholderIcon }\n\t\t\t\t\tlabels={ {\n\t\t\t\t\t\ttitle: __( 'Cover' ),\n\t\t\t\t\t} }\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ styles.colorPaletteWrapper }\n\t\t\t\t\t\tpointerEvents={\n\t\t\t\t\t\t\tisScreenReaderEnabled ? 'none' : 'auto'\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<BottomSheetConsumer>\n\t\t\t\t\t\t\t{ ( { shouldEnableBottomSheetScroll } ) => (\n\t\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\t\tcustomColorIndicatorStyles={\n\t\t\t\t\t\t\t\t\t\tstyles.paletteColorIndicator\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tcustomIndicatorWrapperStyles={\n\t\t\t\t\t\t\t\t\t\tstyles.paletteCustomIndicatorWrapper\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tsetColor={ setColor }\n\t\t\t\t\t\t\t\t\tonCustomPress={ openColorPicker }\n\t\t\t\t\t\t\t\t\tdefaultSettings={ coverDefaultPalette }\n\t\t\t\t\t\t\t\t\tshouldShowCustomLabel={ false }\n\t\t\t\t\t\t\t\t\tshouldShowCustomVerticalSeparator={ false }\n\t\t\t\t\t\t\t\t\tshouldEnableBottomSheetScroll={\n\t\t\t\t\t\t\t\t\t\tshouldEnableBottomSheetScroll\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BottomSheetConsumer>\n\t\t\t\t\t</View>\n\t\t\t\t</MediaPlaceholder>\n\t\t\t</View>\n\t\t);\n\t}\n\n\treturn (\n\t\t<View style={ styles.backgroundContainer }>\n\t\t\t{ isSelected && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<Controls\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tdidUploadFail={ didUploadFail }\n\t\t\t\t\t\thasOnlyColorBackground={ hasOnlyColorBackground }\n\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\tonClearMedia={ onClearMedia }\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\n\t\t\t<View\n\t\t\t\tpointerEvents=\"box-none\"\n\t\t\t\tstyle={ [ styles.content, { minHeight: convertedMinHeight } ] }\n\t\t\t>\n\t\t\t\t<InnerBlocks\n\t\t\t\t\tallowedBlocks={ allowedBlocks }\n\t\t\t\t\ttemplate={ INNER_BLOCKS_TEMPLATE }\n\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\ttemplateInsertUpdatesSelection\n\t\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\t/>\n\t\t\t</View>\n\n\t\t\t<View pointerEvents=\"none\" style={ styles.overlayContainer }>\n\t\t\t\t<View style={ overlayStyles }>\n\t\t\t\t\t{ gradientValue && (\n\t\t\t\t\t\t<Gradient\n\t\t\t\t\t\t\tgradientValue={ gradientValue }\n\t\t\t\t\t\t\tstyle={ styles.background }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</View>\n\t\t\t</View>\n\n\t\t\t<MediaUpload\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tisReplacingMedia={ ! hasOnlyColorBackground }\n\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\topenMediaOptionsRef.current = open;\n\t\t\t\t\treturn renderContent( getMediaOptions );\n\t\t\t\t} }\n\t\t\t/>\n\n\t\t\t{ isImage &&\n\t\t\t\turl &&\n\t\t\t\topenMediaOptionsRef.current &&\n\t\t\t\tisParentSelected &&\n\t\t\t\t! isUploadInProgress &&\n\t\t\t\t! didUploadFail && (\n\t\t\t\t\t<View style={ styles.imageEditButton }>\n\t\t\t\t\t\t<ImageEditingButton\n\t\t\t\t\t\t\tonSelectMediaUploadOption={ onSelectMedia }\n\t\t\t\t\t\t\topenMediaOptions={ openMediaOptionsRef.current }\n\t\t\t\t\t\t\tpickerOptions={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdestructiveButton: true,\n\t\t\t\t\t\t\t\t\tid: 'clearMedia',\n\t\t\t\t\t\t\t\t\tlabel: __( 'Clear Media' ),\n\t\t\t\t\t\t\t\t\tonPress: onClearMedia,\n\t\t\t\t\t\t\t\t\tseparated: true,\n\t\t\t\t\t\t\t\t\tvalue: 'clearMedia',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\n\t\t\t{ shouldShowFailure && (\n\t\t\t\t<View\n\t\t\t\t\tpointerEvents=\"none\"\n\t\t\t\t\tstyle={ styles.uploadFailedContainer }\n\t\t\t\t>\n\t\t\t\t\t<View style={ styles.uploadFailed }>\n\t\t\t\t\t\t<Icon icon={ warning } { ...styles.uploadFailedIcon } />\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t) }\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getSelectedBlockClientId, getBlock } = select(\n\t\t\tblockEditorStore\n\t\t);\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\n\t\tconst { getSettings } = select( blockEditorStore );\n\n\t\tconst hasInnerBlocks = getBlock( clientId )?.innerBlocks.length > 0;\n\n\t\treturn {\n\t\t\tsettings: getSettings(),\n\t\t\tisParentSelected: selectedBlockClientId === clientId,\n\t\t\thasInnerBlocks,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { clientId } ) => {\n\t\tconst { openGeneralSidebar } = dispatch( editPostStore );\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\n\t\treturn {\n\t\t\topenGeneralSidebar: () => openGeneralSidebar( 'edit-post/block' ),\n\t\t\tcloseSettingsBottomSheet() {\n\t\t\t\tdispatch( editPostStore ).closeGeneralSidebar();\n\t\t\t},\n\t\t\tselectBlock: () => selectBlock( clientId ),\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( Cover );\n"]}