@wordpress/block-library 8.26.0 → 8.27.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 (254) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/avatar/edit.js +2 -2
  3. package/build/avatar/edit.js.map +1 -1
  4. package/build/block/edit.js +76 -13
  5. package/build/block/edit.js.map +1 -1
  6. package/build/block/{v1/edit.native.js → edit.native.js} +4 -4
  7. package/build/block/edit.native.js.map +1 -0
  8. package/build/block/index.js +5 -3
  9. package/build/block/index.js.map +1 -1
  10. package/build/button/edit.js +24 -6
  11. package/build/button/edit.js.map +1 -1
  12. package/build/button/index.js +1 -0
  13. package/build/button/index.js.map +1 -1
  14. package/build/button/save.js +3 -1
  15. package/build/button/save.js.map +1 -1
  16. package/build/cover/edit.native.js +1 -0
  17. package/build/cover/edit.native.js.map +1 -1
  18. package/build/embed/edit.js +3 -2
  19. package/build/embed/edit.js.map +1 -1
  20. package/build/file/index.js +0 -1
  21. package/build/file/index.js.map +1 -1
  22. package/build/footnotes/edit.js +2 -1
  23. package/build/footnotes/edit.js.map +1 -1
  24. package/build/footnotes/format.js +17 -19
  25. package/build/footnotes/format.js.map +1 -1
  26. package/build/heading/edit.js +2 -1
  27. package/build/heading/edit.js.map +1 -1
  28. package/build/heading/edit.native.js +141 -0
  29. package/build/heading/edit.native.js.map +1 -0
  30. package/build/heading/index.js +1 -0
  31. package/build/heading/index.js.map +1 -1
  32. package/build/image/edit.js +8 -4
  33. package/build/image/edit.js.map +1 -1
  34. package/build/image/image.js +33 -7
  35. package/build/image/image.js.map +1 -1
  36. package/build/image/index.js +6 -3
  37. package/build/image/index.js.map +1 -1
  38. package/build/more/index.js +4 -0
  39. package/build/more/index.js.map +1 -1
  40. package/build/navigation/edit/index.js +2 -2
  41. package/build/navigation/edit/index.js.map +1 -1
  42. package/build/navigation/index.js +0 -1
  43. package/build/navigation/index.js.map +1 -1
  44. package/build/paragraph/edit.js +2 -1
  45. package/build/paragraph/edit.js.map +1 -1
  46. package/build/paragraph/index.js +1 -2
  47. package/build/paragraph/index.js.map +1 -1
  48. package/build/paragraph/transforms.js +1 -2
  49. package/build/paragraph/transforms.js.map +1 -1
  50. package/build/post-content/edit.js +2 -2
  51. package/build/post-content/edit.js.map +1 -1
  52. package/build/post-date/edit.js +1 -1
  53. package/build/post-date/edit.js.map +1 -1
  54. package/build/post-navigation-link/edit.js +43 -2
  55. package/build/post-navigation-link/edit.js.map +1 -1
  56. package/build/post-navigation-link/index.js +8 -0
  57. package/build/post-navigation-link/index.js.map +1 -1
  58. package/build/pullquote/index.js +4 -0
  59. package/build/pullquote/index.js.map +1 -1
  60. package/build/query/edit/inspector-controls/index.js +3 -3
  61. package/build/query/edit/inspector-controls/index.js.map +1 -1
  62. package/build/query/edit/query-content.js +2 -2
  63. package/build/query/edit/query-content.js.map +1 -1
  64. package/build/query/edit/query-placeholder.js +6 -7
  65. package/build/query/edit/query-placeholder.js.map +1 -1
  66. package/build/query/index.js +1 -2
  67. package/build/query/index.js.map +1 -1
  68. package/build/query/variations.js +8 -1
  69. package/build/query/variations.js.map +1 -1
  70. package/build/query/view.js +31 -12
  71. package/build/query/view.js.map +1 -1
  72. package/build/search/index.js +0 -1
  73. package/build/search/index.js.map +1 -1
  74. package/build/table-of-contents/hooks.js +2 -2
  75. package/build/table-of-contents/hooks.js.map +1 -1
  76. package/build/template-part/edit/advanced-controls.js +1 -4
  77. package/build/template-part/edit/advanced-controls.js.map +1 -1
  78. package/build/template-part/edit/index.js +39 -17
  79. package/build/template-part/edit/index.js.map +1 -1
  80. package/build/video/edit.native.js +7 -2
  81. package/build/video/edit.native.js.map +1 -1
  82. package/build/video/transforms.js +17 -0
  83. package/build/video/transforms.js.map +1 -1
  84. package/build-module/avatar/edit.js +2 -2
  85. package/build-module/avatar/edit.js.map +1 -1
  86. package/build-module/block/edit.js +76 -13
  87. package/build-module/block/edit.js.map +1 -1
  88. package/build-module/block/{v1/edit.native.js → edit.native.js} +3 -3
  89. package/build-module/block/edit.native.js.map +1 -0
  90. package/build-module/block/index.js +5 -3
  91. package/build-module/block/index.js.map +1 -1
  92. package/build-module/button/edit.js +25 -7
  93. package/build-module/button/edit.js.map +1 -1
  94. package/build-module/button/index.js +1 -0
  95. package/build-module/button/index.js.map +1 -1
  96. package/build-module/button/save.js +4 -2
  97. package/build-module/button/save.js.map +1 -1
  98. package/build-module/cover/edit.native.js +1 -0
  99. package/build-module/cover/edit.native.js.map +1 -1
  100. package/build-module/embed/edit.js +3 -2
  101. package/build-module/embed/edit.js.map +1 -1
  102. package/build-module/file/index.js +0 -1
  103. package/build-module/file/index.js.map +1 -1
  104. package/build-module/footnotes/edit.js +2 -1
  105. package/build-module/footnotes/edit.js.map +1 -1
  106. package/build-module/footnotes/format.js +17 -19
  107. package/build-module/footnotes/format.js.map +1 -1
  108. package/build-module/heading/edit.js +3 -2
  109. package/build-module/heading/edit.js.map +1 -1
  110. package/build-module/heading/edit.native.js +132 -0
  111. package/build-module/heading/edit.native.js.map +1 -0
  112. package/build-module/heading/index.js +1 -0
  113. package/build-module/heading/index.js.map +1 -1
  114. package/build-module/image/edit.js +9 -5
  115. package/build-module/image/edit.js.map +1 -1
  116. package/build-module/image/image.js +33 -7
  117. package/build-module/image/image.js.map +1 -1
  118. package/build-module/image/index.js +6 -3
  119. package/build-module/image/index.js.map +1 -1
  120. package/build-module/more/index.js +4 -0
  121. package/build-module/more/index.js.map +1 -1
  122. package/build-module/navigation/edit/index.js +1 -1
  123. package/build-module/navigation/edit/index.js.map +1 -1
  124. package/build-module/navigation/index.js +0 -1
  125. package/build-module/navigation/index.js.map +1 -1
  126. package/build-module/paragraph/edit.js +3 -2
  127. package/build-module/paragraph/edit.js.map +1 -1
  128. package/build-module/paragraph/index.js +1 -2
  129. package/build-module/paragraph/index.js.map +1 -1
  130. package/build-module/paragraph/transforms.js +1 -2
  131. package/build-module/paragraph/transforms.js.map +1 -1
  132. package/build-module/post-content/edit.js +1 -1
  133. package/build-module/post-content/edit.js.map +1 -1
  134. package/build-module/post-date/edit.js +1 -1
  135. package/build-module/post-date/edit.js.map +1 -1
  136. package/build-module/post-navigation-link/edit.js +44 -3
  137. package/build-module/post-navigation-link/edit.js.map +1 -1
  138. package/build-module/post-navigation-link/index.js +8 -0
  139. package/build-module/post-navigation-link/index.js.map +1 -1
  140. package/build-module/pullquote/index.js +4 -0
  141. package/build-module/pullquote/index.js.map +1 -1
  142. package/build-module/query/edit/inspector-controls/index.js +4 -4
  143. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  144. package/build-module/query/edit/query-content.js +2 -2
  145. package/build-module/query/edit/query-content.js.map +1 -1
  146. package/build-module/query/edit/query-placeholder.js +7 -8
  147. package/build-module/query/edit/query-placeholder.js.map +1 -1
  148. package/build-module/query/index.js +1 -2
  149. package/build-module/query/index.js.map +1 -1
  150. package/build-module/query/variations.js +8 -1
  151. package/build-module/query/variations.js.map +1 -1
  152. package/build-module/query/view.js +30 -9
  153. package/build-module/query/view.js.map +1 -1
  154. package/build-module/search/index.js +0 -1
  155. package/build-module/search/index.js.map +1 -1
  156. package/build-module/table-of-contents/hooks.js +2 -2
  157. package/build-module/table-of-contents/hooks.js.map +1 -1
  158. package/build-module/template-part/edit/advanced-controls.js +1 -4
  159. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  160. package/build-module/template-part/edit/index.js +38 -16
  161. package/build-module/template-part/edit/index.js.map +1 -1
  162. package/build-module/video/edit.native.js +7 -2
  163. package/build-module/video/edit.native.js.map +1 -1
  164. package/build-module/video/transforms.js +17 -0
  165. package/build-module/video/transforms.js.map +1 -1
  166. package/build-style/common-rtl.css +4 -2
  167. package/build-style/common.css +4 -2
  168. package/build-style/cover/style-rtl.css +1 -2
  169. package/build-style/cover/style.css +1 -2
  170. package/build-style/editor-rtl.css +6 -4
  171. package/build-style/editor.css +6 -4
  172. package/build-style/gallery/style-rtl.css +2 -4
  173. package/build-style/gallery/style.css +2 -4
  174. package/build-style/image/editor-rtl.css +6 -0
  175. package/build-style/image/editor.css +6 -0
  176. package/build-style/page-list/editor-rtl.css +0 -4
  177. package/build-style/page-list/editor.css +0 -4
  178. package/build-style/pullquote/style-rtl.css +10 -1
  179. package/build-style/pullquote/style.css +10 -1
  180. package/build-style/search/style-rtl.css +2 -1
  181. package/build-style/search/style.css +2 -1
  182. package/build-style/style-rtl.css +19 -11
  183. package/build-style/style.css +19 -11
  184. package/build-style/video/style-rtl.css +1 -2
  185. package/build-style/video/style.css +1 -2
  186. package/package.json +34 -32
  187. package/src/avatar/edit.js +16 -18
  188. package/src/block/block.json +3 -0
  189. package/src/block/edit.js +102 -20
  190. package/src/block/{v1/edit.native.js → edit.native.js} +4 -4
  191. package/src/block/index.js +2 -3
  192. package/src/block/index.php +3 -31
  193. package/src/button/block.json +1 -0
  194. package/src/button/edit.js +76 -43
  195. package/src/button/save.js +3 -0
  196. package/src/buttons/test/__snapshots__/edit.native.js.snap +6 -0
  197. package/src/buttons/test/edit.native.js +49 -0
  198. package/src/cover/edit.native.js +1 -0
  199. package/src/embed/edit.js +3 -2
  200. package/src/file/block.json +0 -1
  201. package/src/file/index.php +11 -57
  202. package/src/footnotes/edit.js +2 -1
  203. package/src/footnotes/format.js +34 -31
  204. package/src/footnotes/index.php +20 -11
  205. package/src/gallery/index.php +0 -3
  206. package/src/heading/block.json +1 -0
  207. package/src/heading/edit.js +18 -14
  208. package/src/heading/edit.native.js +144 -0
  209. package/src/image/block.json +7 -3
  210. package/src/image/edit.js +19 -6
  211. package/src/image/editor.scss +6 -1
  212. package/src/image/image.js +101 -42
  213. package/src/image/index.js +6 -0
  214. package/src/image/index.php +14 -51
  215. package/src/more/index.js +6 -0
  216. package/src/navigation/block.json +0 -1
  217. package/src/navigation/edit/index.js +2 -2
  218. package/src/navigation/index.php +777 -28
  219. package/src/navigation-link/index.php +78 -16
  220. package/src/page-list/editor.scss +0 -4
  221. package/src/paragraph/block.json +1 -2
  222. package/src/paragraph/edit.js +23 -19
  223. package/src/post-content/edit.js +2 -2
  224. package/src/post-date/edit.js +38 -33
  225. package/src/post-navigation-link/block.json +8 -0
  226. package/src/post-navigation-link/edit.js +63 -1
  227. package/src/post-navigation-link/index.php +17 -3
  228. package/src/post-terms/index.php +13 -4
  229. package/src/pullquote/block.json +4 -0
  230. package/src/pullquote/style.scss +13 -1
  231. package/src/query/block.json +1 -2
  232. package/src/query/edit/inspector-controls/index.js +137 -146
  233. package/src/query/edit/query-content.js +9 -7
  234. package/src/query/edit/query-placeholder.js +11 -11
  235. package/src/query/index.php +33 -71
  236. package/src/query/variations.js +4 -0
  237. package/src/query/view.js +24 -19
  238. package/src/search/block.json +0 -1
  239. package/src/search/index.php +18 -36
  240. package/src/table-of-contents/hooks.js +2 -2
  241. package/src/template-part/edit/advanced-controls.js +2 -3
  242. package/src/template-part/edit/index.js +77 -50
  243. package/src/template-part/index.php +2 -2
  244. package/src/video/edit.native.js +5 -2
  245. package/src/video/test/edit.native.js +38 -0
  246. package/src/video/transforms.js +32 -0
  247. package/tsconfig.json +1 -0
  248. package/build/block/v1/edit.js +0 -116
  249. package/build/block/v1/edit.js.map +0 -1
  250. package/build/block/v1/edit.native.js.map +0 -1
  251. package/build-module/block/v1/edit.js +0 -108
  252. package/build-module/block/v1/edit.js.map +0 -1
  253. package/build-module/block/v1/edit.native.js.map +0 -1
  254. package/src/block/v1/edit.js +0 -163
@@ -19,6 +19,9 @@ const metadata = {
19
19
  attributes: {
20
20
  ref: {
21
21
  type: "number"
22
+ },
23
+ overrides: {
24
+ type: "object"
22
25
  }
23
26
  },
24
27
  supports: {
@@ -28,14 +31,13 @@ const metadata = {
28
31
  renaming: false
29
32
  }
30
33
  };
31
- import editV1 from './v1/edit';
32
- import editV2 from './edit';
34
+ import edit from './edit';
33
35
  const {
34
36
  name
35
37
  } = metadata;
36
38
  export { metadata, name };
37
39
  export const settings = {
38
- edit: window.__experimentalPatternPartialSyncing ? editV2 : editV1,
40
+ edit,
39
41
  icon
40
42
  };
41
43
  export const init = () => initBlock({
@@ -1 +1 @@
1
- {"version":3,"names":["symbol","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","ref","type","supports","customClassName","html","inserter","renaming","editV1","editV2","settings","edit","window","__experimentalPatternPartialSyncing","init"],"sources":["@wordpress/block-library/src/block/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { symbol as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport editV1 from './v1/edit';\nimport editV2 from './edit';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit: window.__experimentalPatternPartialSyncing ? editV2 : editV1,\n\ticon,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAM,IAAIC,IAAI,QAAQ,kBAAkB;;AAEjD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,GAAA;MAAAC,IAAA;IAAA;EAAA;EAAAC,QAAA;IAAAC,eAAA;IAAAC,IAAA;IAAAC,QAAA;IAAAC,QAAA;EAAA;AAAA;AAE5C,OAAOC,MAAM,MAAM,WAAW;AAC9B,OAAOC,MAAM,MAAM,QAAQ;AAE3B,MAAM;EAAEf;AAAK,CAAC,GAAGH,QAAQ;AAEzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAMgB,QAAQ,GAAG;EACvBC,IAAI,EAAEC,MAAM,CAACC,mCAAmC,GAAGJ,MAAM,GAAGD,MAAM;EAClEnB;AACD,CAAC;AAED,OAAO,MAAMyB,IAAI,GAAGA,CAAA,KAAMxB,SAAS,CAAE;EAAEI,IAAI;EAAEH,QAAQ;EAAEmB;AAAS,CAAE,CAAC"}
1
+ {"version":3,"names":["symbol","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","ref","type","overrides","supports","customClassName","html","inserter","renaming","edit","settings","init"],"sources":["@wordpress/block-library/src/block/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { symbol as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\tedit,\n\ticon,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAM,IAAIC,IAAI,QAAQ,kBAAkB;;AAEjD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,GAAA;MAAAC,IAAA;IAAA;IAAAC,SAAA;MAAAD,IAAA;IAAA;EAAA;EAAAE,QAAA;IAAAC,eAAA;IAAAC,IAAA;IAAAC,QAAA;IAAAC,QAAA;EAAA;AAAA;AAE5C,OAAOC,IAAI,MAAM,QAAQ;AAEzB,MAAM;EAAEf;AAAK,CAAC,GAAGH,QAAQ;AAEzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAMgB,QAAQ,GAAG;EACvBD,IAAI;EACJpB;AACD,CAAC;AAED,OAAO,MAAMsB,IAAI,GAAGA,CAAA,KAAMrB,SAAS,CAAE;EAAEI,IAAI;EAAEH,QAAQ;EAAEmB;AAAS,CAAE,CAAC"}
@@ -10,6 +10,7 @@ import classnames from 'classnames';
10
10
  import { NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';
11
11
  import { getUpdatedLinkAttributes } from './get-updated-link-attributes';
12
12
  import removeAnchorTag from '../utils/remove-anchor-tag';
13
+ import { unlock } from '../lock-unlock';
13
14
 
14
15
  /**
15
16
  * WordPress dependencies
@@ -17,7 +18,7 @@ import removeAnchorTag from '../utils/remove-anchor-tag';
17
18
  import { __ } from '@wordpress/i18n';
18
19
  import { useEffect, useState, useRef, useMemo } from '@wordpress/element';
19
20
  import { Button, ButtonGroup, PanelBody, TextControl, ToolbarButton, Popover } from '@wordpress/components';
20
- import { AlignmentControl, BlockControls, InspectorControls, RichText, useBlockProps, __experimentalUseBorderProps as useBorderProps, __experimentalUseColorProps as useColorProps, __experimentalGetSpacingClassesAndStyles as useSpacingProps, __experimentalLinkControl as LinkControl, __experimentalGetElementClassName, store as blockEditorStore } from '@wordpress/block-editor';
21
+ import { AlignmentControl, BlockControls, InspectorControls, RichText, useBlockProps, __experimentalUseBorderProps as useBorderProps, __experimentalUseColorProps as useColorProps, __experimentalGetSpacingClassesAndStyles as useSpacingProps, __experimentalUseShadowProps as useShadowProps, __experimentalLinkControl as LinkControl, __experimentalGetElementClassName, store as blockEditorStore, useBlockEditingMode } from '@wordpress/block-editor';
21
22
  import { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';
22
23
  import { link, linkOff } from '@wordpress/icons';
23
24
  import { createBlock, cloneBlock, getDefaultBlockName } from '@wordpress/blocks';
@@ -120,7 +121,8 @@ function ButtonEdit(props) {
120
121
  style,
121
122
  text,
122
123
  url,
123
- width
124
+ width,
125
+ metadata
124
126
  } = attributes;
125
127
  const TagName = tagName || 'a';
126
128
  function onKeyDown(event) {
@@ -138,12 +140,14 @@ function ButtonEdit(props) {
138
140
  const borderProps = useBorderProps(attributes);
139
141
  const colorProps = useColorProps(attributes);
140
142
  const spacingProps = useSpacingProps(attributes);
143
+ const shadowProps = useShadowProps(attributes);
141
144
  const ref = useRef();
142
145
  const richTextRef = useRef();
143
146
  const blockProps = useBlockProps({
144
147
  ref: useMergeRefs([setPopoverAnchor, ref]),
145
148
  onKeyDown
146
149
  });
150
+ const blockEditingMode = useBlockEditingMode();
147
151
  const [isEditingURL, setIsEditingURL] = useState(false);
148
152
  const isURLSet = !!url;
149
153
  const opensInNewTab = linkTarget === NEW_TAB_TARGET;
@@ -179,6 +183,19 @@ function ButtonEdit(props) {
179
183
  clientId
180
184
  });
181
185
  const mergedRef = useMergeRefs([useEnterRef, richTextRef]);
186
+ const {
187
+ lockUrlControls = false
188
+ } = useSelect(select => {
189
+ if (!isSelected) {
190
+ return {};
191
+ }
192
+ const {
193
+ getBlockBindingsSource
194
+ } = unlock(select(blockEditorStore));
195
+ return {
196
+ lockUrlControls: !!metadata?.bindings?.url && getBlockBindingsSource(metadata?.bindings?.url?.source?.name)?.lockAttributesEditing === true
197
+ };
198
+ }, [isSelected]);
182
199
  return createElement(Fragment, null, createElement("div", {
183
200
  ...blockProps,
184
201
  className: classnames(blockProps.className, {
@@ -203,7 +220,8 @@ function ButtonEdit(props) {
203
220
  style: {
204
221
  ...borderProps.style,
205
222
  ...colorProps.style,
206
- ...spacingProps.style
223
+ ...spacingProps.style,
224
+ ...shadowProps.style
207
225
  },
208
226
  onSplit: value => createBlock('core/button', {
209
227
  ...attributes,
@@ -214,27 +232,27 @@ function ButtonEdit(props) {
214
232
  identifier: "text"
215
233
  })), createElement(BlockControls, {
216
234
  group: "block"
217
- }, createElement(AlignmentControl, {
235
+ }, blockEditingMode === 'default' && createElement(AlignmentControl, {
218
236
  value: textAlign,
219
237
  onChange: nextAlign => {
220
238
  setAttributes({
221
239
  textAlign: nextAlign
222
240
  });
223
241
  }
224
- }), !isURLSet && isLinkTag && createElement(ToolbarButton, {
242
+ }), !isURLSet && isLinkTag && !lockUrlControls && createElement(ToolbarButton, {
225
243
  name: "link",
226
244
  icon: link,
227
245
  title: __('Link'),
228
246
  shortcut: displayShortcut.primary('k'),
229
247
  onClick: startEditing
230
- }), isURLSet && isLinkTag && createElement(ToolbarButton, {
248
+ }), isURLSet && isLinkTag && !lockUrlControls && createElement(ToolbarButton, {
231
249
  name: "link",
232
250
  icon: linkOff,
233
251
  title: __('Unlink'),
234
252
  shortcut: displayShortcut.primaryShift('k'),
235
253
  onClick: unlink,
236
254
  isActive: true
237
- })), isLinkTag && isSelected && (isEditingURL || isURLSet) && createElement(Popover, {
255
+ })), isLinkTag && isSelected && (isEditingURL || isURLSet) && !lockUrlControls && createElement(Popover, {
238
256
  placement: "bottom",
239
257
  onClose: () => {
240
258
  setIsEditingURL(false);
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","NEW_TAB_TARGET","NOFOLLOW_REL","getUpdatedLinkAttributes","removeAnchorTag","__","useEffect","useState","useRef","useMemo","Button","ButtonGroup","PanelBody","TextControl","ToolbarButton","Popover","AlignmentControl","BlockControls","InspectorControls","RichText","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalUseColorProps","useColorProps","__experimentalGetSpacingClassesAndStyles","useSpacingProps","__experimentalLinkControl","LinkControl","__experimentalGetElementClassName","store","blockEditorStore","displayShortcut","isKeyboardEvent","ENTER","link","linkOff","createBlock","cloneBlock","getDefaultBlockName","useMergeRefs","useRefEffect","useSelect","useDispatch","LINK_SETTINGS","DEFAULT_LINK_SETTINGS","id","title","useEnter","props","replaceBlocks","selectionChange","getBlock","getBlockRootClientId","getBlockIndex","propsRef","current","element","onKeyDown","event","defaultPrevented","keyCode","content","clientId","length","preventDefault","topParentListBlock","blockIndex","head","innerBlocks","slice","middle","after","tail","addEventListener","removeEventListener","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","createElement","map","widthValue","key","size","variant","onClick","ButtonEdit","attributes","className","isSelected","onReplace","mergeBlocks","tagName","textAlign","linkTarget","placeholder","rel","style","text","url","TagName","primary","startEditing","primaryShift","unlink","richTextRef","focus","popoverAnchor","setPopoverAnchor","borderProps","colorProps","spacingProps","ref","blockProps","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","nofollow","includes","isLinkTag","linkValue","useEnterRef","mergedRef","Fragment","fontSize","value","onChange","withoutInteractiveFormatting","border","radius","onSplit","onMerge","identifier","group","nextAlign","name","icon","shortcut","isActive","placement","onClose","anchor","focusOnMount","__unstableSlotName","shift","newURL","newOpensInNewTab","newNofollow","onRemove","forceIsEditingLink","settings","__nextHasNoMarginBottom","label","newRel"],"sources":["@wordpress/block-library/src/button/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * Internal dependencies\n */\nimport { NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';\nimport { getUpdatedLinkAttributes } from './get-updated-link-attributes';\nimport removeAnchorTag from '../utils/remove-anchor-tag';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport {\n\tcreateBlock,\n\tcloneBlock,\n\tgetDefaultBlockName,\n} from '@wordpress/blocks';\nimport { useMergeRefs, useRefEffect } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\nconst LINK_SETTINGS = [\n\t...LinkControl.DEFAULT_LINK_SETTINGS,\n\t{\n\t\tid: 'nofollow',\n\t\ttitle: __( 'Mark as nofollow' ),\n\t},\n];\n\nfunction useEnter( props ) {\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlock, getBlockRootClientId, getBlockIndex } =\n\t\tuseSelect( blockEditorStore );\n\tconst propsRef = useRef( props );\n\tpropsRef.current = props;\n\treturn useRefEffect( ( element ) => {\n\t\tfunction onKeyDown( event ) {\n\t\t\tif ( event.defaultPrevented || event.keyCode !== ENTER ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { content, clientId } = propsRef.current;\n\t\t\tif ( content.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tevent.preventDefault();\n\t\t\tconst topParentListBlock = getBlock(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\tconst blockIndex = getBlockIndex( clientId );\n\t\t\tconst head = cloneBlock( {\n\t\t\t\t...topParentListBlock,\n\t\t\t\tinnerBlocks: topParentListBlock.innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\tblockIndex\n\t\t\t\t),\n\t\t\t} );\n\t\t\tconst middle = createBlock( getDefaultBlockName() );\n\t\t\tconst after = topParentListBlock.innerBlocks.slice(\n\t\t\t\tblockIndex + 1\n\t\t\t);\n\t\t\tconst tail = after.length\n\t\t\t\t? [\n\t\t\t\t\t\tcloneBlock( {\n\t\t\t\t\t\t\t...topParentListBlock,\n\t\t\t\t\t\t\tinnerBlocks: after,\n\t\t\t\t\t\t} ),\n\t\t\t\t ]\n\t\t\t\t: [];\n\t\t\treplaceBlocks(\n\t\t\t\ttopParentListBlock.clientId,\n\t\t\t\t[ head, middle, ...tail ],\n\t\t\t\t1\n\t\t\t);\n\t\t\t// We manually change the selection here because we are replacing\n\t\t\t// a different block than the selected one.\n\t\t\tselectionChange( middle.clientId );\n\t\t}\n\n\t\telement.addEventListener( 'keydown', onKeyDown );\n\t\treturn () => {\n\t\t\telement.removeEventListener( 'keydown', onKeyDown );\n\t\t};\n\t}, [] );\n}\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t\tclientId,\n\t} = props;\n\tconst {\n\t\ttagName,\n\t\ttextAlign,\n\t\tlinkTarget,\n\t\tplaceholder,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\turl,\n\t\twidth,\n\t} = attributes;\n\n\tconst TagName = tagName || 'a';\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === NEW_TAB_TARGET;\n\tconst nofollow = !! rel?.includes( NOFOLLOW_REL );\n\tconst isLinkTag = 'a' === TagName;\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/51256.\n\tconst linkValue = useMemo(\n\t\t() => ( { url, opensInNewTab, nofollow } ),\n\t\t[ url, opensInNewTab, nofollow ]\n\t);\n\n\tconst useEnterRef = useEnter( { content: text, clientId } );\n\tconst mergedRef = useMergeRefs( [ useEnterRef, richTextRef ] );\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ mergedRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\ttext: removeAnchorTag( value ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ ! isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && isLinkTag && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isLinkTag && isSelected && ( isEditingURL || isURLSet ) && (\n\t\t\t\t<Popover\n\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\tshift\n\t\t\t\t>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\tvalue={ linkValue }\n\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\tnofollow: newNofollow,\n\t\t\t\t\t\t} ) =>\n\t\t\t\t\t\t\tsetAttributes(\n\t\t\t\t\t\t\t\tgetUpdatedLinkAttributes( {\n\t\t\t\t\t\t\t\t\trel,\n\t\t\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\t\t\tnofollow: newNofollow,\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\tonRemove={ () => {\n\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t\tsettings={ LINK_SETTINGS }\n\t\t\t\t\t/>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t{ isLinkTag && (\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":"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"}
1
+ {"version":3,"names":["classnames","NEW_TAB_TARGET","NOFOLLOW_REL","getUpdatedLinkAttributes","removeAnchorTag","unlock","__","useEffect","useState","useRef","useMemo","Button","ButtonGroup","PanelBody","TextControl","ToolbarButton","Popover","AlignmentControl","BlockControls","InspectorControls","RichText","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalUseColorProps","useColorProps","__experimentalGetSpacingClassesAndStyles","useSpacingProps","__experimentalUseShadowProps","useShadowProps","__experimentalLinkControl","LinkControl","__experimentalGetElementClassName","store","blockEditorStore","useBlockEditingMode","displayShortcut","isKeyboardEvent","ENTER","link","linkOff","createBlock","cloneBlock","getDefaultBlockName","useMergeRefs","useRefEffect","useSelect","useDispatch","LINK_SETTINGS","DEFAULT_LINK_SETTINGS","id","title","useEnter","props","replaceBlocks","selectionChange","getBlock","getBlockRootClientId","getBlockIndex","propsRef","current","element","onKeyDown","event","defaultPrevented","keyCode","content","clientId","length","preventDefault","topParentListBlock","blockIndex","head","innerBlocks","slice","middle","after","tail","addEventListener","removeEventListener","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","createElement","map","widthValue","key","size","variant","onClick","ButtonEdit","attributes","className","isSelected","onReplace","mergeBlocks","tagName","textAlign","linkTarget","placeholder","rel","style","text","url","metadata","TagName","primary","startEditing","primaryShift","unlink","richTextRef","focus","popoverAnchor","setPopoverAnchor","borderProps","colorProps","spacingProps","shadowProps","ref","blockProps","blockEditingMode","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","nofollow","includes","isLinkTag","linkValue","useEnterRef","mergedRef","lockUrlControls","select","getBlockBindingsSource","bindings","source","name","lockAttributesEditing","Fragment","fontSize","value","onChange","withoutInteractiveFormatting","border","radius","onSplit","onMerge","identifier","group","nextAlign","icon","shortcut","isActive","placement","onClose","anchor","focusOnMount","__unstableSlotName","shift","newURL","newOpensInNewTab","newNofollow","onRemove","forceIsEditingLink","settings","__nextHasNoMarginBottom","label","newRel"],"sources":["@wordpress/block-library/src/button/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * Internal dependencies\n */\nimport { NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';\nimport { getUpdatedLinkAttributes } from './get-updated-link-attributes';\nimport removeAnchorTag from '../utils/remove-anchor-tag';\nimport { unlock } from '../lock-unlock';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalUseShadowProps as useShadowProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n\tstore as blockEditorStore,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport {\n\tcreateBlock,\n\tcloneBlock,\n\tgetDefaultBlockName,\n} from '@wordpress/blocks';\nimport { useMergeRefs, useRefEffect } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\nconst LINK_SETTINGS = [\n\t...LinkControl.DEFAULT_LINK_SETTINGS,\n\t{\n\t\tid: 'nofollow',\n\t\ttitle: __( 'Mark as nofollow' ),\n\t},\n];\n\nfunction useEnter( props ) {\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlock, getBlockRootClientId, getBlockIndex } =\n\t\tuseSelect( blockEditorStore );\n\tconst propsRef = useRef( props );\n\tpropsRef.current = props;\n\treturn useRefEffect( ( element ) => {\n\t\tfunction onKeyDown( event ) {\n\t\t\tif ( event.defaultPrevented || event.keyCode !== ENTER ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { content, clientId } = propsRef.current;\n\t\t\tif ( content.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tevent.preventDefault();\n\t\t\tconst topParentListBlock = getBlock(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\tconst blockIndex = getBlockIndex( clientId );\n\t\t\tconst head = cloneBlock( {\n\t\t\t\t...topParentListBlock,\n\t\t\t\tinnerBlocks: topParentListBlock.innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\tblockIndex\n\t\t\t\t),\n\t\t\t} );\n\t\t\tconst middle = createBlock( getDefaultBlockName() );\n\t\t\tconst after = topParentListBlock.innerBlocks.slice(\n\t\t\t\tblockIndex + 1\n\t\t\t);\n\t\t\tconst tail = after.length\n\t\t\t\t? [\n\t\t\t\t\t\tcloneBlock( {\n\t\t\t\t\t\t\t...topParentListBlock,\n\t\t\t\t\t\t\tinnerBlocks: after,\n\t\t\t\t\t\t} ),\n\t\t\t\t ]\n\t\t\t\t: [];\n\t\t\treplaceBlocks(\n\t\t\t\ttopParentListBlock.clientId,\n\t\t\t\t[ head, middle, ...tail ],\n\t\t\t\t1\n\t\t\t);\n\t\t\t// We manually change the selection here because we are replacing\n\t\t\t// a different block than the selected one.\n\t\t\tselectionChange( middle.clientId );\n\t\t}\n\n\t\telement.addEventListener( 'keydown', onKeyDown );\n\t\treturn () => {\n\t\t\telement.removeEventListener( 'keydown', onKeyDown );\n\t\t};\n\t}, [] );\n}\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t\tclientId,\n\t} = props;\n\tconst {\n\t\ttagName,\n\t\ttextAlign,\n\t\tlinkTarget,\n\t\tplaceholder,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\turl,\n\t\twidth,\n\t\tmetadata,\n\t} = attributes;\n\n\tconst TagName = tagName || 'a';\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst shadowProps = useShadowProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === NEW_TAB_TARGET;\n\tconst nofollow = !! rel?.includes( NOFOLLOW_REL );\n\tconst isLinkTag = 'a' === TagName;\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/51256.\n\tconst linkValue = useMemo(\n\t\t() => ( { url, opensInNewTab, nofollow } ),\n\t\t[ url, opensInNewTab, nofollow ]\n\t);\n\n\tconst useEnterRef = useEnter( { content: text, clientId } );\n\tconst mergedRef = useMergeRefs( [ useEnterRef, richTextRef ] );\n\n\tconst { lockUrlControls = false } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\n\t\t\tconst { getBlockBindingsSource } = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! metadata?.bindings?.url &&\n\t\t\t\t\tgetBlockBindingsSource(\n\t\t\t\t\t\tmetadata?.bindings?.url?.source?.name\n\t\t\t\t\t)?.lockAttributesEditing === true,\n\t\t\t};\n\t\t},\n\t\t[ isSelected ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ mergedRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\ttext: removeAnchorTag( value ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t\t...shadowProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ blockEditingMode === 'default' && (\n\t\t\t\t\t<AlignmentControl\n\t\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! isURLSet && isLinkTag && ! lockUrlControls && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && isLinkTag && ! lockUrlControls && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isLinkTag &&\n\t\t\t\tisSelected &&\n\t\t\t\t( isEditingURL || isURLSet ) &&\n\t\t\t\t! lockUrlControls && (\n\t\t\t\t\t<Popover\n\t\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\t\tshift\n\t\t\t\t\t>\n\t\t\t\t\t\t<LinkControl\n\t\t\t\t\t\t\tvalue={ linkValue }\n\t\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\t\tnofollow: newNofollow,\n\t\t\t\t\t\t\t} ) =>\n\t\t\t\t\t\t\t\tsetAttributes(\n\t\t\t\t\t\t\t\t\tgetUpdatedLinkAttributes( {\n\t\t\t\t\t\t\t\t\t\trel,\n\t\t\t\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\t\t\t\tnofollow: newNofollow,\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\tonRemove={ () => {\n\t\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t\t\tsettings={ LINK_SETTINGS }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Popover>\n\t\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t{ isLinkTag && (\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":"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"}
@@ -20,6 +20,7 @@ const metadata = {
20
20
  description: "Prompt visitors to take action with a button-style link.",
21
21
  keywords: ["link"],
22
22
  textdomain: "default",
23
+ usesContext: ["pattern/overrides"],
23
24
  attributes: {
24
25
  tagName: {
25
26
  type: "string",
@@ -1 +1 @@
1
- {"version":3,"names":["__","button","icon","initBlock","deprecated","edit","metadata","$schema","apiVersion","name","title","category","parent","description","keywords","textdomain","attributes","tagName","type","textAlign","url","source","selector","attribute","__experimentalRole","text","linkTarget","rel","placeholder","backgroundColor","textColor","gradient","width","supports","anchor","align","alignWide","color","__experimentalSkipSerialization","gradients","__experimentalDefaultControls","background","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","reusable","shadow","spacing","padding","__experimentalBorder","radius","style","__experimentalSelector","styles","label","isDefault","editorStyle","save","settings","example","className","merge","a","init"],"sources":["@wordpress/block-library/src/button/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { button as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tclassName: 'is-style-fill',\n\t\t\ttext: __( 'Call to Action' ),\n\t\t},\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n\tmerge: ( a, { text = '' } ) => ( {\n\t\t...a,\n\t\ttext: ( a.text || '' ) + text,\n\t} ),\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"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"}
1
+ {"version":3,"names":["__","button","icon","initBlock","deprecated","edit","metadata","$schema","apiVersion","name","title","category","parent","description","keywords","textdomain","usesContext","attributes","tagName","type","textAlign","url","source","selector","attribute","__experimentalRole","text","linkTarget","rel","placeholder","backgroundColor","textColor","gradient","width","supports","anchor","align","alignWide","color","__experimentalSkipSerialization","gradients","__experimentalDefaultControls","background","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","reusable","shadow","spacing","padding","__experimentalBorder","radius","style","__experimentalSelector","styles","label","isDefault","editorStyle","save","settings","example","className","merge","a","init"],"sources":["@wordpress/block-library/src/button/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { button as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tclassName: 'is-style-fill',\n\t\t\ttext: __( 'Call to Action' ),\n\t\t},\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n\tmerge: ( a, { text = '' } ) => ( {\n\t\t...a,\n\t\ttext: ( a.text || '' ) + text,\n\t} ),\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"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"}
@@ -7,7 +7,7 @@ import classnames from 'classnames';
7
7
  /**
8
8
  * WordPress dependencies
9
9
  */
10
- import { RichText, useBlockProps, __experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles, __experimentalGetColorClassesAndStyles as getColorClassesAndStyles, __experimentalGetSpacingClassesAndStyles as getSpacingClassesAndStyles, __experimentalGetElementClassName } from '@wordpress/block-editor';
10
+ import { RichText, useBlockProps, __experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles, __experimentalGetColorClassesAndStyles as getColorClassesAndStyles, __experimentalGetSpacingClassesAndStyles as getSpacingClassesAndStyles, __experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles, __experimentalGetElementClassName } from '@wordpress/block-editor';
11
11
  export default function save({
12
12
  attributes,
13
13
  className
@@ -34,6 +34,7 @@ export default function save({
34
34
  const borderProps = getBorderClassesAndStyles(attributes);
35
35
  const colorProps = getColorClassesAndStyles(attributes);
36
36
  const spacingProps = getSpacingClassesAndStyles(attributes);
37
+ const shadowProps = getShadowClassesAndStyles(attributes);
37
38
  const buttonClasses = classnames('wp-block-button__link', colorProps.className, borderProps.className, {
38
39
  [`has-text-align-${textAlign}`]: textAlign,
39
40
  // For backwards compatibility add style that isn't provided via
@@ -43,7 +44,8 @@ export default function save({
43
44
  const buttonStyle = {
44
45
  ...borderProps.style,
45
46
  ...colorProps.style,
46
- ...spacingProps.style
47
+ ...spacingProps.style,
48
+ ...shadowProps.style
47
49
  };
48
50
 
49
51
  // The use of a `title` attribute here is soft-deprecated, but still applied
@@ -1 +1 @@
1
- {"version":3,"names":["classnames","RichText","useBlockProps","__experimentalGetBorderClassesAndStyles","getBorderClassesAndStyles","__experimentalGetColorClassesAndStyles","getColorClassesAndStyles","__experimentalGetSpacingClassesAndStyles","getSpacingClassesAndStyles","__experimentalGetElementClassName","save","attributes","className","tagName","type","textAlign","fontSize","linkTarget","rel","style","text","title","url","width","isEmpty","TagName","isButtonTag","buttonType","borderProps","colorProps","spacingProps","buttonClasses","border","radius","buttonStyle","wrapperClasses","typography","createElement","Content","href","value","target"],"sources":["@wordpress/block-library/src/button/save.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n\t__experimentalGetSpacingClassesAndStyles as getSpacingClassesAndStyles,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\n\nexport default function save( { attributes, className } ) {\n\tconst {\n\t\ttagName,\n\t\ttype,\n\t\ttextAlign,\n\t\tfontSize,\n\t\tlinkTarget,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\ttitle,\n\t\turl,\n\t\twidth,\n\t} = attributes;\n\n\tif ( RichText.isEmpty( text ) ) {\n\t\treturn null;\n\t}\n\n\tconst TagName = tagName || 'a';\n\tconst isButtonTag = 'button' === TagName;\n\tconst buttonType = type || 'button';\n\tconst borderProps = getBorderClassesAndStyles( attributes );\n\tconst colorProps = getColorClassesAndStyles( attributes );\n\tconst spacingProps = getSpacingClassesAndStyles( attributes );\n\tconst buttonClasses = classnames(\n\t\t'wp-block-button__link',\n\t\tcolorProps.className,\n\t\tborderProps.className,\n\t\t{\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t// For backwards compatibility add style that isn't provided via\n\t\t\t// block support.\n\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t},\n\t\t__experimentalGetElementClassName( 'button' )\n\t);\n\tconst buttonStyle = {\n\t\t...borderProps.style,\n\t\t...colorProps.style,\n\t\t...spacingProps.style,\n\t};\n\n\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t// if it had already been assigned, for the sake of backward-compatibility.\n\t// A title will no longer be assigned for new or updated button block links.\n\n\tconst wrapperClasses = classnames( className, {\n\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t[ `has-custom-font-size` ]: fontSize || style?.typography?.fontSize,\n\t} );\n\n\treturn (\n\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t<RichText.Content\n\t\t\t\ttagName={ TagName }\n\t\t\t\ttype={ isButtonTag ? buttonType : null }\n\t\t\t\tclassName={ buttonClasses }\n\t\t\t\thref={ isButtonTag ? null : url }\n\t\t\t\ttitle={ title }\n\t\t\t\tstyle={ buttonStyle }\n\t\t\t\tvalue={ text }\n\t\t\t\ttarget={ isButtonTag ? null : linkTarget }\n\t\t\t\trel={ isButtonTag ? null : rel }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,UAAU,MAAM,YAAY;;AAEnC;AACA;AACA;AACA,SACCC,QAAQ,EACRC,aAAa,EACbC,uCAAuC,IAAIC,yBAAyB,EACpEC,sCAAsC,IAAIC,wBAAwB,EAClEC,wCAAwC,IAAIC,0BAA0B,EACtEC,iCAAiC,QAC3B,yBAAyB;AAEhC,eAAe,SAASC,IAAIA,CAAE;EAAEC,UAAU;EAAEC;AAAU,CAAC,EAAG;EACzD,MAAM;IACLC,OAAO;IACPC,IAAI;IACJC,SAAS;IACTC,QAAQ;IACRC,UAAU;IACVC,GAAG;IACHC,KAAK;IACLC,IAAI;IACJC,KAAK;IACLC,GAAG;IACHC;EACD,CAAC,GAAGZ,UAAU;EAEd,IAAKV,QAAQ,CAACuB,OAAO,CAAEJ,IAAK,CAAC,EAAG;IAC/B,OAAO,IAAI;EACZ;EAEA,MAAMK,OAAO,GAAGZ,OAAO,IAAI,GAAG;EAC9B,MAAMa,WAAW,GAAG,QAAQ,KAAKD,OAAO;EACxC,MAAME,UAAU,GAAGb,IAAI,IAAI,QAAQ;EACnC,MAAMc,WAAW,GAAGxB,yBAAyB,CAAEO,UAAW,CAAC;EAC3D,MAAMkB,UAAU,GAAGvB,wBAAwB,CAAEK,UAAW,CAAC;EACzD,MAAMmB,YAAY,GAAGtB,0BAA0B,CAAEG,UAAW,CAAC;EAC7D,MAAMoB,aAAa,GAAG/B,UAAU,CAC/B,uBAAuB,EACvB6B,UAAU,CAACjB,SAAS,EACpBgB,WAAW,CAAChB,SAAS,EACrB;IACC,CAAG,kBAAkBG,SAAW,EAAC,GAAIA,SAAS;IAC9C;IACA;IACA,kBAAkB,EAAEI,KAAK,EAAEa,MAAM,EAAEC,MAAM,KAAK;EAC/C,CAAC,EACDxB,iCAAiC,CAAE,QAAS,CAC7C,CAAC;EACD,MAAMyB,WAAW,GAAG;IACnB,GAAGN,WAAW,CAACT,KAAK;IACpB,GAAGU,UAAU,CAACV,KAAK;IACnB,GAAGW,YAAY,CAACX;EACjB,CAAC;;EAED;EACA;EACA;;EAEA,MAAMgB,cAAc,GAAGnC,UAAU,CAAEY,SAAS,EAAE;IAC7C,CAAG,2CAA2CW,KAAO,EAAC,GAAIA,KAAK;IAC/D,CAAG,sBAAqB,GAAIP,QAAQ,IAAIG,KAAK,EAAEiB,UAAU,EAAEpB;EAC5D,CAAE,CAAC;EAEH,OACCqB,aAAA;IAAA,GAAUnC,aAAa,CAACQ,IAAI,CAAE;MAAEE,SAAS,EAAEuB;IAAe,CAAE;EAAC,GAC5DE,aAAA,CAACpC,QAAQ,CAACqC,OAAO;IAChBzB,OAAO,EAAGY,OAAS;IACnBX,IAAI,EAAGY,WAAW,GAAGC,UAAU,GAAG,IAAM;IACxCf,SAAS,EAAGmB,aAAe;IAC3BQ,IAAI,EAAGb,WAAW,GAAG,IAAI,GAAGJ,GAAK;IACjCD,KAAK,EAAGA,KAAO;IACfF,KAAK,EAAGe,WAAa;IACrBM,KAAK,EAAGpB,IAAM;IACdqB,MAAM,EAAGf,WAAW,GAAG,IAAI,GAAGT,UAAY;IAC1CC,GAAG,EAAGQ,WAAW,GAAG,IAAI,GAAGR;EAAK,CAChC,CACG,CAAC;AAER"}
1
+ {"version":3,"names":["classnames","RichText","useBlockProps","__experimentalGetBorderClassesAndStyles","getBorderClassesAndStyles","__experimentalGetColorClassesAndStyles","getColorClassesAndStyles","__experimentalGetSpacingClassesAndStyles","getSpacingClassesAndStyles","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","__experimentalGetElementClassName","save","attributes","className","tagName","type","textAlign","fontSize","linkTarget","rel","style","text","title","url","width","isEmpty","TagName","isButtonTag","buttonType","borderProps","colorProps","spacingProps","shadowProps","buttonClasses","border","radius","buttonStyle","wrapperClasses","typography","createElement","Content","href","value","target"],"sources":["@wordpress/block-library/src/button/save.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\t__experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n\t__experimentalGetSpacingClassesAndStyles as getSpacingClassesAndStyles,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\n\nexport default function save( { attributes, className } ) {\n\tconst {\n\t\ttagName,\n\t\ttype,\n\t\ttextAlign,\n\t\tfontSize,\n\t\tlinkTarget,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\ttitle,\n\t\turl,\n\t\twidth,\n\t} = attributes;\n\n\tif ( RichText.isEmpty( text ) ) {\n\t\treturn null;\n\t}\n\n\tconst TagName = tagName || 'a';\n\tconst isButtonTag = 'button' === TagName;\n\tconst buttonType = type || 'button';\n\tconst borderProps = getBorderClassesAndStyles( attributes );\n\tconst colorProps = getColorClassesAndStyles( attributes );\n\tconst spacingProps = getSpacingClassesAndStyles( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst buttonClasses = classnames(\n\t\t'wp-block-button__link',\n\t\tcolorProps.className,\n\t\tborderProps.className,\n\t\t{\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t// For backwards compatibility add style that isn't provided via\n\t\t\t// block support.\n\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t},\n\t\t__experimentalGetElementClassName( 'button' )\n\t);\n\tconst buttonStyle = {\n\t\t...borderProps.style,\n\t\t...colorProps.style,\n\t\t...spacingProps.style,\n\t\t...shadowProps.style,\n\t};\n\n\t// The use of a `title` attribute here is soft-deprecated, but still applied\n\t// if it had already been assigned, for the sake of backward-compatibility.\n\t// A title will no longer be assigned for new or updated button block links.\n\n\tconst wrapperClasses = classnames( className, {\n\t\t[ `has-custom-width wp-block-button__width-${ width }` ]: width,\n\t\t[ `has-custom-font-size` ]: fontSize || style?.typography?.fontSize,\n\t} );\n\n\treturn (\n\t\t<div { ...useBlockProps.save( { className: wrapperClasses } ) }>\n\t\t\t<RichText.Content\n\t\t\t\ttagName={ TagName }\n\t\t\t\ttype={ isButtonTag ? buttonType : null }\n\t\t\t\tclassName={ buttonClasses }\n\t\t\t\thref={ isButtonTag ? null : url }\n\t\t\t\ttitle={ title }\n\t\t\t\tstyle={ buttonStyle }\n\t\t\t\tvalue={ text }\n\t\t\t\ttarget={ isButtonTag ? null : linkTarget }\n\t\t\t\trel={ isButtonTag ? null : rel }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,OAAOA,UAAU,MAAM,YAAY;;AAEnC;AACA;AACA;AACA,SACCC,QAAQ,EACRC,aAAa,EACbC,uCAAuC,IAAIC,yBAAyB,EACpEC,sCAAsC,IAAIC,wBAAwB,EAClEC,wCAAwC,IAAIC,0BAA0B,EACtEC,uCAAuC,IAAIC,yBAAyB,EACpEC,iCAAiC,QAC3B,yBAAyB;AAEhC,eAAe,SAASC,IAAIA,CAAE;EAAEC,UAAU;EAAEC;AAAU,CAAC,EAAG;EACzD,MAAM;IACLC,OAAO;IACPC,IAAI;IACJC,SAAS;IACTC,QAAQ;IACRC,UAAU;IACVC,GAAG;IACHC,KAAK;IACLC,IAAI;IACJC,KAAK;IACLC,GAAG;IACHC;EACD,CAAC,GAAGZ,UAAU;EAEd,IAAKZ,QAAQ,CAACyB,OAAO,CAAEJ,IAAK,CAAC,EAAG;IAC/B,OAAO,IAAI;EACZ;EAEA,MAAMK,OAAO,GAAGZ,OAAO,IAAI,GAAG;EAC9B,MAAMa,WAAW,GAAG,QAAQ,KAAKD,OAAO;EACxC,MAAME,UAAU,GAAGb,IAAI,IAAI,QAAQ;EACnC,MAAMc,WAAW,GAAG1B,yBAAyB,CAAES,UAAW,CAAC;EAC3D,MAAMkB,UAAU,GAAGzB,wBAAwB,CAAEO,UAAW,CAAC;EACzD,MAAMmB,YAAY,GAAGxB,0BAA0B,CAAEK,UAAW,CAAC;EAC7D,MAAMoB,WAAW,GAAGvB,yBAAyB,CAAEG,UAAW,CAAC;EAC3D,MAAMqB,aAAa,GAAGlC,UAAU,CAC/B,uBAAuB,EACvB+B,UAAU,CAACjB,SAAS,EACpBgB,WAAW,CAAChB,SAAS,EACrB;IACC,CAAG,kBAAkBG,SAAW,EAAC,GAAIA,SAAS;IAC9C;IACA;IACA,kBAAkB,EAAEI,KAAK,EAAEc,MAAM,EAAEC,MAAM,KAAK;EAC/C,CAAC,EACDzB,iCAAiC,CAAE,QAAS,CAC7C,CAAC;EACD,MAAM0B,WAAW,GAAG;IACnB,GAAGP,WAAW,CAACT,KAAK;IACpB,GAAGU,UAAU,CAACV,KAAK;IACnB,GAAGW,YAAY,CAACX,KAAK;IACrB,GAAGY,WAAW,CAACZ;EAChB,CAAC;;EAED;EACA;EACA;;EAEA,MAAMiB,cAAc,GAAGtC,UAAU,CAAEc,SAAS,EAAE;IAC7C,CAAG,2CAA2CW,KAAO,EAAC,GAAIA,KAAK;IAC/D,CAAG,sBAAqB,GAAIP,QAAQ,IAAIG,KAAK,EAAEkB,UAAU,EAAErB;EAC5D,CAAE,CAAC;EAEH,OACCsB,aAAA;IAAA,GAAUtC,aAAa,CAACU,IAAI,CAAE;MAAEE,SAAS,EAAEwB;IAAe,CAAE;EAAC,GAC5DE,aAAA,CAACvC,QAAQ,CAACwC,OAAO;IAChB1B,OAAO,EAAGY,OAAS;IACnBX,IAAI,EAAGY,WAAW,GAAGC,UAAU,GAAG,IAAM;IACxCf,SAAS,EAAGoB,aAAe;IAC3BQ,IAAI,EAAGd,WAAW,GAAG,IAAI,GAAGJ,GAAK;IACjCD,KAAK,EAAGA,KAAO;IACfF,KAAK,EAAGgB,WAAa;IACrBM,KAAK,EAAGrB,IAAM;IACdsB,MAAM,EAAGhB,WAAW,GAAG,IAAI,GAAGT,UAAY;IAC1CC,GAAG,EAAGQ,WAAW,GAAG,IAAI,GAAGR;EAAK,CAChC,CACG,CAAC;AAER"}
@@ -335,6 +335,7 @@ const Cover = ({
335
335
  }, createElement(BottomSheetConsumer, null, ({
336
336
  shouldEnableBottomSheetScroll
337
337
  }) => createElement(ColorPalette, {
338
+ enableCustomColor: true,
338
339
  customColorIndicatorStyles: styles.paletteColorIndicator,
339
340
  customIndicatorWrapperStyles: styles.paletteCustomIndicatorWrapper,
340
341
  setColor: setColor,
@@ -1 +1 @@
1
- {"version":3,"names":["View","TouchableWithoutFeedback","InteractionManager","AccessibilityInfo","Text","Platform","Video","classnames","requestImageFailedRetryDialog","requestImageUploadCancelDialog","requestImageFullscreenPreview","mediaUploadSync","__","Icon","Image","ImageEditingButton","IMAGE_DEFAULT_FOCAL_POINT","ToolbarButton","Gradient","ColorPalette","ColorPicker","BottomSheetConsumer","useConvertUnitToMobile","useMobileGlobalStylesColors","BlockControls","InnerBlocks","InspectorControls","MEDIA_TYPE_IMAGE","MediaPlaceholder","MediaUpload","MediaUploadProgress","getColorObjectByColorValue","getColorObjectByAttributeValues","getGradientValueBySlug","store","blockEditorStore","compose","withPreferredColorScheme","useDispatch","withSelect","withDispatch","useEffect","useState","useRef","useCallback","useMemo","cover","icon","replace","image","warning","getProtocol","editPostStore","styles","attributesFromMedia","ALLOWED_MEDIA_TYPES","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","COVER_DEFAULT_HEIGHT","Controls","useCoverIsDark","INNER_BLOCKS_TEMPLATE","align","placeholder","useIsScreenReaderEnabled","isScreenReaderEnabled","setIsScreenReaderEnabled","mounted","changeListener","addEventListener","enabled","then","screenReaderEnabled","remove","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","convertedMinHeight","isImage","THEME_COLORS_COUNT","colorsDefault","coverDefaultPalette","colors","slice","gradients","gradientValue","overlayColorValue","hasBackground","color","background","hasOnlyColorBackground","isCustomColorPickerShowing","setCustomColorPickerShowing","openMediaOptionsRef","isUploadInProgress","setIsUploadInProgress","didUploadFail","setDidUploadFail","shouldShowFailure","onSelectMedia","media","mediaAttributes","undefined","useFeaturedImage","onMediaPressed","isVideoLoading","setIsVideoLoading","onVideoLoadStart","onVideoLoad","onClearMedia","hasParallax","setColor","_colorValue$slug","_ref","colorValue","slug","openColorPicker","__unstableMarkNextChangeAsNotPersistent","isCoverDark","childrenStyles","defaultColor","defaultColorLightMode","className","includes","backgroundColor","backgroundSolid","backgroundSolidDark","overlayStyles","overlay","opacity","overlaySelected","placeholderIconStyle","iconDark","placeholderIcon","createElement","toolbarControls","open","group","title","onClick","accessibilityHint","OS","addMediaButton","accessibilityLabel","accessibilityRole","onPress","current","selectImageContainer","selectImage","size","selectImageIcon","onBottomSheetClosed","runAfterInteractions","selectedColorText","selectedColorTextDark","bottomLabelText","toUpperCase","colorPickerControls","shouldEnableBottomSheetScroll","shouldEnableBottomSheetMaxHeight","onHandleClosingBottomSheet","onHandleHardwareButtonPress","isBottomSheetContentScrolling","onNavigationBack","renderContent","getMediaOptions","Fragment","renderBackground","accessible","disabled","mediaId","onUpdateMediaProgress","onFinishMediaUploadWithSuccess","mediaServerId","mediaUrl","onFinishMediaUploadWithFailure","onMediaUploadStateReset","imageContainer","editButton","isUploadFailed","onSelectMediaUploadOption","openMediaOptions","width","muted","disableFocus","repeat","resizeMode","source","uri","onLoad","onLoadStart","height","mediaPlaceholderEmptyStateContainer","hideContent","labels","onSelect","allowedTypes","colorPaletteWrapper","pointerEvents","customColorIndicatorStyles","paletteColorIndicator","customIndicatorWrapperStyles","paletteCustomIndicatorWrapper","onCustomPress","defaultSettings","shouldShowCustomLabel","shouldShowCustomVerticalSeparator","backgroundContainer","content","template","templateInsertUpdatesSelection","overlayContainer","isReplacingMedia","render","imageEditButton","pickerOptions","destructiveButton","label","separated","value","uploadFailedContainer","uploadFailed","uploadFailedIcon","select","clientId","getSelectedBlockClientId","getBlock","selectedBlockClientId","innerBlocks","length","dispatch","closeGeneralSidebar"],"sources":["@wordpress/block-library/src/cover/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tTouchableWithoutFeedback,\n\tInteractionManager,\n\tAccessibilityInfo,\n\tText,\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';\n// eslint-disable-next-line no-restricted-imports\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\nfunction useIsScreenReaderEnabled() {\n\tconst [ isScreenReaderEnabled, setIsScreenReaderEnabled ] =\n\t\tuseState( false );\n\n\tuseEffect( () => {\n\t\tlet mounted = true;\n\n\t\tconst changeListener = AccessibilityInfo.addEventListener(\n\t\t\t'screenReaderChanged',\n\t\t\t( enabled ) => setIsScreenReaderEnabled( enabled )\n\t\t);\n\n\t\tAccessibilityInfo.isScreenReaderEnabled().then(\n\t\t\t( screenReaderEnabled ) => {\n\t\t\t\tif ( mounted && screenReaderEnabled ) {\n\t\t\t\t\tsetIsScreenReaderEnabled( screenReaderEnabled );\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\treturn () => {\n\t\t\tmounted = false;\n\n\t\t\tchangeListener.remove();\n\t\t};\n\t}, [] );\n\n\treturn isScreenReaderEnabled;\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 = useIsScreenReaderEnabled();\n\n\tuseEffect( () => {\n\t\t// Sync with local media store.\n\t\tmediaUploadSync();\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 [ isCustomColorPickerShowing, setCustomColorPickerShowing ] =\n\t\tuseState( 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\n\t\tconst mediaAttributes = attributesFromMedia( media );\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\tfocalPoint: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tdimRatio: dimRatio === 100 ? 50 : dimRatio,\n\t\t\tisDark: undefined,\n\t\t} );\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 } =\n\t\tuseDispatch( blockEditorStore );\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 selectedColorText = getStylesFromColorScheme(\n\t\tstyles.selectedColorText,\n\t\tstyles.selectedColorTextDark\n\t);\n\n\tconst bottomLabelText = customOverlayColor ? (\n\t\t<Text style={ selectedColorText }>\n\t\t\t{ customOverlayColor.toUpperCase() }\n\t\t</Text>\n\t) : (\n\t\t__( 'Select a color' )\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={ bottomLabelText }\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\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 } =\n\t\t\tselect( blockEditorStore );\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\n\t\tconst hasInnerBlocks = getBlock( clientId )?.innerBlocks.length > 0;\n\n\t\treturn {\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"],"mappings":"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"}
1
+ {"version":3,"names":["View","TouchableWithoutFeedback","InteractionManager","AccessibilityInfo","Text","Platform","Video","classnames","requestImageFailedRetryDialog","requestImageUploadCancelDialog","requestImageFullscreenPreview","mediaUploadSync","__","Icon","Image","ImageEditingButton","IMAGE_DEFAULT_FOCAL_POINT","ToolbarButton","Gradient","ColorPalette","ColorPicker","BottomSheetConsumer","useConvertUnitToMobile","useMobileGlobalStylesColors","BlockControls","InnerBlocks","InspectorControls","MEDIA_TYPE_IMAGE","MediaPlaceholder","MediaUpload","MediaUploadProgress","getColorObjectByColorValue","getColorObjectByAttributeValues","getGradientValueBySlug","store","blockEditorStore","compose","withPreferredColorScheme","useDispatch","withSelect","withDispatch","useEffect","useState","useRef","useCallback","useMemo","cover","icon","replace","image","warning","getProtocol","editPostStore","styles","attributesFromMedia","ALLOWED_MEDIA_TYPES","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","COVER_DEFAULT_HEIGHT","Controls","useCoverIsDark","INNER_BLOCKS_TEMPLATE","align","placeholder","useIsScreenReaderEnabled","isScreenReaderEnabled","setIsScreenReaderEnabled","mounted","changeListener","addEventListener","enabled","then","screenReaderEnabled","remove","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","convertedMinHeight","isImage","THEME_COLORS_COUNT","colorsDefault","coverDefaultPalette","colors","slice","gradients","gradientValue","overlayColorValue","hasBackground","color","background","hasOnlyColorBackground","isCustomColorPickerShowing","setCustomColorPickerShowing","openMediaOptionsRef","isUploadInProgress","setIsUploadInProgress","didUploadFail","setDidUploadFail","shouldShowFailure","onSelectMedia","media","mediaAttributes","undefined","useFeaturedImage","onMediaPressed","isVideoLoading","setIsVideoLoading","onVideoLoadStart","onVideoLoad","onClearMedia","hasParallax","setColor","_colorValue$slug","_ref","colorValue","slug","openColorPicker","__unstableMarkNextChangeAsNotPersistent","isCoverDark","childrenStyles","defaultColor","defaultColorLightMode","className","includes","backgroundColor","backgroundSolid","backgroundSolidDark","overlayStyles","overlay","opacity","overlaySelected","placeholderIconStyle","iconDark","placeholderIcon","createElement","toolbarControls","open","group","title","onClick","accessibilityHint","OS","addMediaButton","accessibilityLabel","accessibilityRole","onPress","current","selectImageContainer","selectImage","size","selectImageIcon","onBottomSheetClosed","runAfterInteractions","selectedColorText","selectedColorTextDark","bottomLabelText","toUpperCase","colorPickerControls","shouldEnableBottomSheetScroll","shouldEnableBottomSheetMaxHeight","onHandleClosingBottomSheet","onHandleHardwareButtonPress","isBottomSheetContentScrolling","onNavigationBack","renderContent","getMediaOptions","Fragment","renderBackground","accessible","disabled","mediaId","onUpdateMediaProgress","onFinishMediaUploadWithSuccess","mediaServerId","mediaUrl","onFinishMediaUploadWithFailure","onMediaUploadStateReset","imageContainer","editButton","isUploadFailed","onSelectMediaUploadOption","openMediaOptions","width","muted","disableFocus","repeat","resizeMode","source","uri","onLoad","onLoadStart","height","mediaPlaceholderEmptyStateContainer","hideContent","labels","onSelect","allowedTypes","colorPaletteWrapper","pointerEvents","enableCustomColor","customColorIndicatorStyles","paletteColorIndicator","customIndicatorWrapperStyles","paletteCustomIndicatorWrapper","onCustomPress","defaultSettings","shouldShowCustomLabel","shouldShowCustomVerticalSeparator","backgroundContainer","content","template","templateInsertUpdatesSelection","overlayContainer","isReplacingMedia","render","imageEditButton","pickerOptions","destructiveButton","label","separated","value","uploadFailedContainer","uploadFailed","uploadFailedIcon","select","clientId","getSelectedBlockClientId","getBlock","selectedBlockClientId","innerBlocks","length","dispatch","closeGeneralSidebar"],"sources":["@wordpress/block-library/src/cover/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tTouchableWithoutFeedback,\n\tInteractionManager,\n\tAccessibilityInfo,\n\tText,\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';\n// eslint-disable-next-line no-restricted-imports\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\nfunction useIsScreenReaderEnabled() {\n\tconst [ isScreenReaderEnabled, setIsScreenReaderEnabled ] =\n\t\tuseState( false );\n\n\tuseEffect( () => {\n\t\tlet mounted = true;\n\n\t\tconst changeListener = AccessibilityInfo.addEventListener(\n\t\t\t'screenReaderChanged',\n\t\t\t( enabled ) => setIsScreenReaderEnabled( enabled )\n\t\t);\n\n\t\tAccessibilityInfo.isScreenReaderEnabled().then(\n\t\t\t( screenReaderEnabled ) => {\n\t\t\t\tif ( mounted && screenReaderEnabled ) {\n\t\t\t\t\tsetIsScreenReaderEnabled( screenReaderEnabled );\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\treturn () => {\n\t\t\tmounted = false;\n\n\t\t\tchangeListener.remove();\n\t\t};\n\t}, [] );\n\n\treturn isScreenReaderEnabled;\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 = useIsScreenReaderEnabled();\n\n\tuseEffect( () => {\n\t\t// Sync with local media store.\n\t\tmediaUploadSync();\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 [ isCustomColorPickerShowing, setCustomColorPickerShowing ] =\n\t\tuseState( 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\n\t\tconst mediaAttributes = attributesFromMedia( media );\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\tfocalPoint: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tdimRatio: dimRatio === 100 ? 50 : dimRatio,\n\t\t\tisDark: undefined,\n\t\t} );\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 } =\n\t\tuseDispatch( blockEditorStore );\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 selectedColorText = getStylesFromColorScheme(\n\t\tstyles.selectedColorText,\n\t\tstyles.selectedColorTextDark\n\t);\n\n\tconst bottomLabelText = customOverlayColor ? (\n\t\t<Text style={ selectedColorText }>\n\t\t\t{ customOverlayColor.toUpperCase() }\n\t\t</Text>\n\t) : (\n\t\t__( 'Select a color' )\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={ bottomLabelText }\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\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\tenableCustomColor={ true }\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 } =\n\t\t\tselect( blockEditorStore );\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\n\t\tconst hasInnerBlocks = getBlock( clientId )?.innerBlocks.length > 0;\n\n\t\treturn {\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"],"mappings":"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"}
@@ -109,9 +109,10 @@ const EmbedEdit = props => {
109
109
  });
110
110
  };
111
111
  useEffect(() => {
112
- if (!preview?.html || !cannotEmbed || fetching) {
112
+ if (preview?.html || !cannotEmbed || fetching) {
113
113
  return;
114
114
  }
115
+
115
116
  // At this stage, we're not fetching the preview and know it can't be embedded,
116
117
  // so try removing any trailing slash, and resubmit.
117
118
  const newURL = attributesUrl.replace(/\/$/, '');
@@ -120,7 +121,7 @@ const EmbedEdit = props => {
120
121
  setAttributes({
121
122
  url: newURL
122
123
  });
123
- }, [preview?.html, attributesUrl, cannotEmbed, fetching]);
124
+ }, [preview?.html, attributesUrl, cannotEmbed, fetching, setAttributes]);
124
125
 
125
126
  // Try a different provider in case the embed url is not supported.
126
127
  useEffect(() => {