@wordpress/block-library 7.3.5 → 7.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/build/comments-title/deprecated.js +110 -0
  2. package/build/comments-title/deprecated.js.map +1 -0
  3. package/build/comments-title/edit.js +35 -37
  4. package/build/comments-title/edit.js.map +1 -1
  5. package/build/comments-title/index.js +4 -7
  6. package/build/comments-title/index.js.map +1 -1
  7. package/build/cover/edit.js +4 -1
  8. package/build/cover/edit.js.map +1 -1
  9. package/build/index.js +1 -3
  10. package/build/index.js.map +1 -1
  11. package/build/navigation/edit/index.js +5 -28
  12. package/build/navigation/edit/index.js.map +1 -1
  13. package/build/navigation/index.js +0 -1
  14. package/build/navigation/index.js.map +1 -1
  15. package/build/post-comments/edit.js +33 -15
  16. package/build/post-comments/edit.js.map +1 -1
  17. package/build-module/comments-title/deprecated.js +102 -0
  18. package/build-module/comments-title/deprecated.js.map +1 -0
  19. package/build-module/comments-title/edit.js +38 -40
  20. package/build-module/comments-title/edit.js.map +1 -1
  21. package/build-module/comments-title/index.js +3 -7
  22. package/build-module/comments-title/index.js.map +1 -1
  23. package/build-module/cover/edit.js +4 -1
  24. package/build-module/cover/edit.js.map +1 -1
  25. package/build-module/index.js +1 -2
  26. package/build-module/index.js.map +1 -1
  27. package/build-module/navigation/edit/index.js +6 -28
  28. package/build-module/navigation/edit/index.js.map +1 -1
  29. package/build-module/navigation/index.js +0 -1
  30. package/build-module/navigation/index.js.map +1 -1
  31. package/build-module/post-comments/edit.js +34 -15
  32. package/build-module/post-comments/edit.js.map +1 -1
  33. package/build-style/post-comments/style-rtl.css +7 -0
  34. package/build-style/post-comments/style.css +7 -0
  35. package/build-style/post-comments-form/style-rtl.css +1 -3
  36. package/build-style/post-comments-form/style.css +1 -3
  37. package/build-style/style-rtl.css +8 -3
  38. package/build-style/style.css +8 -3
  39. package/package.json +7 -7
  40. package/src/comment-template/index.php +4 -0
  41. package/src/comments-pagination/index.php +4 -0
  42. package/src/comments-title/block.json +0 -6
  43. package/src/comments-title/deprecated.js +34 -0
  44. package/src/comments-title/edit.js +44 -100
  45. package/src/comments-title/index.js +2 -0
  46. package/src/comments-title/index.php +43 -22
  47. package/src/cover/edit.js +5 -0
  48. package/src/cover/index.php +20 -37
  49. package/src/index.js +0 -2
  50. package/src/latest-posts/index.php +12 -6
  51. package/src/navigation/block.json +0 -1
  52. package/src/navigation/edit/index.js +6 -36
  53. package/src/navigation/index.php +40 -0
  54. package/src/post-author/index.php +1 -1
  55. package/src/post-comments/edit.js +53 -21
  56. package/src/post-comments/style.scss +8 -0
  57. package/src/post-comments-form/index.php +5 -1
  58. package/src/post-comments-form/style.scss +1 -4
  59. package/src/post-template/index.php +30 -0
  60. package/build/navigation-area/edit.js +0 -110
  61. package/build/navigation-area/edit.js.map +0 -1
  62. package/build/navigation-area/index.js +0 -62
  63. package/build/navigation-area/index.js.map +0 -1
  64. package/build/navigation-area/inner-blocks.js +0 -34
  65. package/build/navigation-area/inner-blocks.js.map +0 -1
  66. package/build/navigation-area/save.js +0 -18
  67. package/build/navigation-area/save.js.map +0 -1
  68. package/build-module/navigation-area/edit.js +0 -94
  69. package/build-module/navigation-area/edit.js.map +0 -1
  70. package/build-module/navigation-area/index.js +0 -48
  71. package/build-module/navigation-area/index.js.map +0 -1
  72. package/build-module/navigation-area/inner-blocks.js +0 -26
  73. package/build-module/navigation-area/inner-blocks.js.map +0 -1
  74. package/build-module/navigation-area/save.js +0 -10
  75. package/build-module/navigation-area/save.js.map +0 -1
  76. package/src/navigation-area/block.json +0 -23
  77. package/src/navigation-area/edit.js +0 -111
  78. package/src/navigation-area/index.js +0 -26
  79. package/src/navigation-area/index.php +0 -22
  80. package/src/navigation-area/inner-blocks.js +0 -24
  81. package/src/navigation-area/save.js +0 -8
@@ -0,0 +1,102 @@
1
+ /**
2
+ * Internal dependencies
3
+ */
4
+ const metadata = {
5
+ $schema: "https://schemas.wp.org/trunk/block.json",
6
+ apiVersion: 2,
7
+ name: "core/comments-title",
8
+ title: "Comments Title",
9
+ category: "theme",
10
+ ancestor: ["core/comments-query-loop"],
11
+ description: "Displays a title with the number of comments",
12
+ textdomain: "default",
13
+ usesContext: ["postId", "postType"],
14
+ attributes: {
15
+ textAlign: {
16
+ type: "string"
17
+ },
18
+ showPostTitle: {
19
+ type: "boolean",
20
+ "default": true
21
+ },
22
+ showCommentsCount: {
23
+ type: "boolean",
24
+ "default": true
25
+ },
26
+ level: {
27
+ type: "number",
28
+ "default": 2
29
+ }
30
+ },
31
+ supports: {
32
+ anchor: false,
33
+ align: true,
34
+ html: false,
35
+ __experimentalBorder: {
36
+ radius: true,
37
+ color: true,
38
+ width: true,
39
+ style: true
40
+ },
41
+ color: {
42
+ gradients: true,
43
+ __experimentalDefaultControls: {
44
+ background: true,
45
+ text: true
46
+ }
47
+ },
48
+ spacing: {
49
+ margin: true,
50
+ padding: true
51
+ },
52
+ typography: {
53
+ fontSize: true,
54
+ lineHeight: true,
55
+ __experimentalFontStyle: true,
56
+ __experimentalFontWeight: true,
57
+ __experimentalFontFamily: true,
58
+ __experimentalTextTransform: true,
59
+ __experimentalDefaultControls: {
60
+ fontSize: true,
61
+ __experimentalFontFamily: true,
62
+ __experimentalFontStyle: true,
63
+ __experimentalFontWeight: true
64
+ }
65
+ }
66
+ }
67
+ };
68
+ const {
69
+ attributes,
70
+ supports
71
+ } = metadata;
72
+ export default [{
73
+ attributes: { ...attributes,
74
+ singleCommentLabel: {
75
+ type: 'string'
76
+ },
77
+ multipleCommentsLabel: {
78
+ type: 'string'
79
+ }
80
+ },
81
+ supports,
82
+ migrate: oldAttributes => {
83
+ /* eslint-disable no-unused-vars */
84
+ const {
85
+ singleCommentLabel,
86
+ multipleCommentsLabel,
87
+ ...newAttributes
88
+ } = oldAttributes;
89
+ /* eslint-enable no-unused-vars */
90
+
91
+ return newAttributes;
92
+ },
93
+ isEligible: _ref => {
94
+ let {
95
+ multipleCommentsLabel,
96
+ singleCommentLabel
97
+ } = _ref;
98
+ return multipleCommentsLabel || singleCommentLabel;
99
+ },
100
+ save: () => null
101
+ }];
102
+ //# sourceMappingURL=deprecated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/comments-title/deprecated.js"],"names":["attributes","supports","metadata","singleCommentLabel","type","multipleCommentsLabel","migrate","oldAttributes","newAttributes","isEligible","save"],"mappings":"AAAA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,MAAM;AAAEA,EAAAA,UAAF;AAAcC,EAAAA;AAAd,IAA2BC,QAAjC;AAEA,eAAe,CACd;AACCF,EAAAA,UAAU,EAAE,EACX,GAAGA,UADQ;AAEXG,IAAAA,kBAAkB,EAAE;AACnBC,MAAAA,IAAI,EAAE;AADa,KAFT;AAKXC,IAAAA,qBAAqB,EAAE;AACtBD,MAAAA,IAAI,EAAE;AADgB;AALZ,GADb;AAUCH,EAAAA,QAVD;AAWCK,EAAAA,OAAO,EAAIC,aAAF,IAAqB;AAC7B;AACA,UAAM;AACLJ,MAAAA,kBADK;AAELE,MAAAA,qBAFK;AAGL,SAAGG;AAHE,QAIFD,aAJJ;AAKA;;AACA,WAAOC,aAAP;AACA,GApBF;AAqBCC,EAAAA,UAAU,EAAE;AAAA,QAAE;AAAEJ,MAAAA,qBAAF;AAAyBF,MAAAA;AAAzB,KAAF;AAAA,WACXE,qBAAqB,IAAIF,kBADd;AAAA,GArBb;AAuBCO,EAAAA,IAAI,EAAE,MAAM;AAvBb,CADc,CAAf","sourcesContent":["/**\n * Internal dependencies\n */\nimport metadata from './block.json';\n\nconst { attributes, supports } = metadata;\n\nexport default [\n\t{\n\t\tattributes: {\n\t\t\t...attributes,\n\t\t\tsingleCommentLabel: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tmultipleCommentsLabel: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tsupports,\n\t\tmigrate: ( oldAttributes ) => {\n\t\t\t/* eslint-disable no-unused-vars */\n\t\t\tconst {\n\t\t\t\tsingleCommentLabel,\n\t\t\t\tmultipleCommentsLabel,\n\t\t\t\t...newAttributes\n\t\t\t} = oldAttributes;\n\t\t\t/* eslint-enable no-unused-vars */\n\t\t\treturn newAttributes;\n\t\t},\n\t\tisEligible: ( { multipleCommentsLabel, singleCommentLabel } ) =>\n\t\t\tmultipleCommentsLabel || singleCommentLabel,\n\t\tsave: () => null,\n\t},\n];\n"]}
@@ -8,10 +8,10 @@ import classnames from 'classnames';
8
8
  * WordPress dependencies
9
9
  */
10
10
 
11
- import { AlignmentControl, BlockControls, useBlockProps, PlainText, InspectorControls } from '@wordpress/block-editor';
12
- import { __ } from '@wordpress/i18n';
11
+ import { AlignmentControl, BlockControls, useBlockProps, InspectorControls } from '@wordpress/block-editor';
12
+ import { __, _n, sprintf } from '@wordpress/i18n';
13
13
  import { useEntityProp } from '@wordpress/core-data';
14
- import { PanelBody, ToggleControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption } from '@wordpress/components';
14
+ import { PanelBody, ToggleControl } from '@wordpress/components';
15
15
  import { useState, useEffect } from '@wordpress/element';
16
16
  import apiFetch from '@wordpress/api-fetch';
17
17
  import { addQueryArgs } from '@wordpress/url';
@@ -24,8 +24,6 @@ export default function Edit(_ref) {
24
24
  let {
25
25
  attributes: {
26
26
  textAlign,
27
- singleCommentLabel,
28
- multipleCommentsLabel,
29
27
  showPostTitle,
30
28
  showCommentsCount,
31
29
  level
@@ -38,7 +36,6 @@ export default function Edit(_ref) {
38
36
  } = _ref;
39
37
  const TagName = 'h' + level;
40
38
  const [commentsCount, setCommentsCount] = useState();
41
- const [editingMode, setEditingMode] = useState('plural');
42
39
  const [rawTitle] = useEntityProp('postType', postType, 'title', postId);
43
40
  const isSiteEditor = typeof postId === 'undefined';
44
41
  const blockProps = useBlockProps({
@@ -84,17 +81,7 @@ export default function Edit(_ref) {
84
81
  }));
85
82
  const inspectorControls = createElement(InspectorControls, null, createElement(PanelBody, {
86
83
  title: __('Settings')
87
- }, isSiteEditor && createElement(ToggleGroupControl, {
88
- label: __('Editing mode'),
89
- onChange: setEditingMode,
90
- value: editingMode
91
- }, createElement(ToggleGroupControlOption, {
92
- label: __('Singular'),
93
- value: "singular"
94
- }), createElement(ToggleGroupControlOption, {
95
- label: __('Plural'),
96
- value: "plural"
97
- })), createElement(ToggleControl, {
84
+ }, createElement(ToggleControl, {
98
85
  label: __('Show post title'),
99
86
  checked: showPostTitle,
100
87
  onChange: value => setAttributes({
@@ -108,28 +95,39 @@ export default function Edit(_ref) {
108
95
  })
109
96
  })));
110
97
  const postTitle = isSiteEditor ? __('"Post Title"') : `"${rawTitle}"`;
111
- const singlePlaceholder = showPostTitle ? __('One response to ') : __('One response');
112
- const singlePlaceholderNoCount = showPostTitle ? __('Response to ') : __('Response');
113
- const multiplePlaceholder = showPostTitle ? __('responses to ') : __('responses');
114
- const multiplePlaceholderNoCount = showPostTitle ? __('Responses to ') : __('Responses');
115
- return createElement(Fragment, null, blockControls, inspectorControls, createElement(TagName, blockProps, editingMode === 'singular' || commentsCount === 1 ? createElement(Fragment, null, createElement(PlainText, {
116
- __experimentalVersion: 2,
117
- tagName: "span",
118
- "aria-label": showCommentsCount ? singlePlaceholder : singlePlaceholderNoCount,
119
- placeholder: showCommentsCount ? singlePlaceholder : singlePlaceholderNoCount,
120
- value: singleCommentLabel,
121
- onChange: newLabel => setAttributes({
122
- singleCommentLabel: newLabel
123
- })
124
- }), showPostTitle ? postTitle : null) : createElement(Fragment, null, showCommentsCount ? commentsCount : null, createElement(PlainText, {
125
- __experimentalVersion: 2,
126
- tagName: "span",
127
- "aria-label": showCommentsCount ? ` ${multiplePlaceholder}` : multiplePlaceholderNoCount,
128
- placeholder: showCommentsCount ? ` ${multiplePlaceholder}` : multiplePlaceholderNoCount,
129
- value: multipleCommentsLabel,
130
- onChange: newLabel => setAttributes({
131
- multipleCommentsLabel: newLabel
132
- })
133
- }), showPostTitle ? postTitle : null)));
98
+ let placeholder;
99
+
100
+ if (showCommentsCount && commentsCount !== undefined) {
101
+ if (showPostTitle) {
102
+ if (commentsCount === 1) {
103
+ /* translators: %s: Post title. */
104
+ placeholder = sprintf(__('One response to %s'), postTitle);
105
+ } else {
106
+ placeholder = sprintf(
107
+ /* translators: 1: Number of comments, 2: Post title. */
108
+ _n('%1$s response to %2$s', '%1$s responses to %2$s', commentsCount), commentsCount, postTitle);
109
+ }
110
+ } else if (commentsCount === 1) {
111
+ placeholder = __('One response');
112
+ } else {
113
+ placeholder = sprintf(
114
+ /* translators: %s: Number of comments. */
115
+ _n('%s responses', '%s responses', commentsCount), commentsCount);
116
+ }
117
+ } else if (showPostTitle) {
118
+ if (commentsCount === 1) {
119
+ /* translators: %s: Post title. */
120
+ placeholder = sprintf(__('Response to %s'), postTitle);
121
+ } else {
122
+ /* translators: %s: Post title. */
123
+ placeholder = sprintf(__('Responses to %s'), postTitle);
124
+ }
125
+ } else if (commentsCount === 1) {
126
+ placeholder = __('Response');
127
+ } else {
128
+ placeholder = __('Responses');
129
+ }
130
+
131
+ return createElement(Fragment, null, blockControls, inspectorControls, createElement(TagName, blockProps, placeholder));
134
132
  }
135
133
  //# sourceMappingURL=edit.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comments-title/edit.js"],"names":["classnames","AlignmentControl","BlockControls","useBlockProps","PlainText","InspectorControls","__","useEntityProp","PanelBody","ToggleControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","useState","useEffect","apiFetch","addQueryArgs","HeadingLevelDropdown","Edit","attributes","textAlign","singleCommentLabel","multipleCommentsLabel","showPostTitle","showCommentsCount","level","setAttributes","context","postType","postId","TagName","commentsCount","setCommentsCount","editingMode","setEditingMode","rawTitle","isSiteEditor","blockProps","className","currentPostId","path","post","_fields","method","parse","then","res","parseInt","headers","get","catch","blockControls","newAlign","newLevel","inspectorControls","value","postTitle","singlePlaceholder","singlePlaceholderNoCount","multiplePlaceholder","multiplePlaceholderNoCount","newLabel"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tuseBlockProps,\n\tPlainText,\n\tInspectorControls,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useEntityProp } from '@wordpress/core-data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n} from '@wordpress/components';\nimport { useState, useEffect } from '@wordpress/element';\nimport apiFetch from '@wordpress/api-fetch';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport HeadingLevelDropdown from '../heading/heading-level-dropdown';\n\nexport default function Edit( {\n\tattributes: {\n\t\ttextAlign,\n\t\tsingleCommentLabel,\n\t\tmultipleCommentsLabel,\n\t\tshowPostTitle,\n\t\tshowCommentsCount,\n\t\tlevel,\n\t},\n\tsetAttributes,\n\tcontext: { postType, postId },\n} ) {\n\tconst TagName = 'h' + level;\n\tconst [ commentsCount, setCommentsCount ] = useState();\n\tconst [ editingMode, setEditingMode ] = useState( 'plural' );\n\tconst [ rawTitle ] = useEntityProp( 'postType', postType, 'title', postId );\n\tconst isSiteEditor = typeof postId === 'undefined';\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( isSiteEditor ) {\n\t\t\tsetCommentsCount( 3 );\n\t\t\treturn;\n\t\t}\n\t\tconst currentPostId = postId;\n\t\tapiFetch( {\n\t\t\tpath: addQueryArgs( '/wp/v2/comments', {\n\t\t\t\tpost: postId,\n\t\t\t\t_fields: 'id',\n\t\t\t} ),\n\t\t\tmethod: 'HEAD',\n\t\t\tparse: false,\n\t\t} )\n\t\t\t.then( ( res ) => {\n\t\t\t\t// Stale requests will have the `currentPostId` of an older closure.\n\t\t\t\tif ( currentPostId === postId ) {\n\t\t\t\t\tsetCommentsCount(\n\t\t\t\t\t\tparseInt( res.headers.get( 'X-WP-Total' ) )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( () => {\n\t\t\t\tsetCommentsCount( 0 );\n\t\t\t} );\n\t}, [ postId ] );\n\n\tconst blockControls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<AlignmentControl\n\t\t\t\tvalue={ textAlign }\n\t\t\t\tonChange={ ( newAlign ) =>\n\t\t\t\t\tsetAttributes( { textAlign: newAlign } )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t<HeadingLevelDropdown\n\t\t\t\tselectedLevel={ level }\n\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t}\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t{ isSiteEditor && (\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\tlabel={ __( 'Editing mode' ) }\n\t\t\t\t\t\tonChange={ setEditingMode }\n\t\t\t\t\t\tvalue={ editingMode }\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tlabel={ __( 'Singular' ) }\n\t\t\t\t\t\t\tvalue=\"singular\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tlabel={ __( 'Plural' ) }\n\t\t\t\t\t\t\tvalue=\"plural\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t) }\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Show post title' ) }\n\t\t\t\t\tchecked={ showPostTitle }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { showPostTitle: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Show comments count' ) }\n\t\t\t\t\tchecked={ showCommentsCount }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { showCommentsCount: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst postTitle = isSiteEditor ? __( '\"Post Title\"' ) : `\"${ rawTitle }\"`;\n\n\tconst singlePlaceholder = showPostTitle\n\t\t? __( 'One response to ' )\n\t\t: __( 'One response' );\n\n\tconst singlePlaceholderNoCount = showPostTitle\n\t\t? __( 'Response to ' )\n\t\t: __( 'Response' );\n\n\tconst multiplePlaceholder = showPostTitle\n\t\t? __( 'responses to ' )\n\t\t: __( 'responses' );\n\n\tconst multiplePlaceholderNoCount = showPostTitle\n\t\t? __( 'Responses to ' )\n\t\t: __( 'Responses' );\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t{ editingMode === 'singular' || commentsCount === 1 ? (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<PlainText\n\t\t\t\t\t\t\t__experimentalVersion={ 2 }\n\t\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\t\tshowCommentsCount\n\t\t\t\t\t\t\t\t\t? singlePlaceholder\n\t\t\t\t\t\t\t\t\t: singlePlaceholderNoCount\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tplaceholder={\n\t\t\t\t\t\t\t\tshowCommentsCount\n\t\t\t\t\t\t\t\t\t? singlePlaceholder\n\t\t\t\t\t\t\t\t\t: singlePlaceholderNoCount\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvalue={ singleCommentLabel }\n\t\t\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tsingleCommentLabel: newLabel,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ showPostTitle ? postTitle : null }\n\t\t\t\t\t</>\n\t\t\t\t) : (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{ showCommentsCount ? commentsCount : null }\n\t\t\t\t\t\t<PlainText\n\t\t\t\t\t\t\t__experimentalVersion={ 2 }\n\t\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\t\tshowCommentsCount\n\t\t\t\t\t\t\t\t\t? ` ${ multiplePlaceholder }`\n\t\t\t\t\t\t\t\t\t: multiplePlaceholderNoCount\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tplaceholder={\n\t\t\t\t\t\t\t\tshowCommentsCount\n\t\t\t\t\t\t\t\t\t? ` ${ multiplePlaceholder }`\n\t\t\t\t\t\t\t\t\t: multiplePlaceholderNoCount\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvalue={ multipleCommentsLabel }\n\t\t\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tmultipleCommentsLabel: newLabel,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ showPostTitle ? postTitle : null }\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</TagName>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comments-title/edit.js"],"names":["classnames","AlignmentControl","BlockControls","useBlockProps","InspectorControls","__","_n","sprintf","useEntityProp","PanelBody","ToggleControl","useState","useEffect","apiFetch","addQueryArgs","HeadingLevelDropdown","Edit","attributes","textAlign","showPostTitle","showCommentsCount","level","setAttributes","context","postType","postId","TagName","commentsCount","setCommentsCount","rawTitle","isSiteEditor","blockProps","className","currentPostId","path","post","_fields","method","parse","then","res","parseInt","headers","get","catch","blockControls","newAlign","newLevel","inspectorControls","value","postTitle","placeholder","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tuseBlockProps,\n\tInspectorControls,\n} from '@wordpress/block-editor';\nimport { __, _n, sprintf } from '@wordpress/i18n';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { useState, useEffect } from '@wordpress/element';\nimport apiFetch from '@wordpress/api-fetch';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport HeadingLevelDropdown from '../heading/heading-level-dropdown';\n\nexport default function Edit( {\n\tattributes: { textAlign, showPostTitle, showCommentsCount, level },\n\tsetAttributes,\n\tcontext: { postType, postId },\n} ) {\n\tconst TagName = 'h' + level;\n\tconst [ commentsCount, setCommentsCount ] = useState();\n\tconst [ rawTitle ] = useEntityProp( 'postType', postType, 'title', postId );\n\tconst isSiteEditor = typeof postId === 'undefined';\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( isSiteEditor ) {\n\t\t\tsetCommentsCount( 3 );\n\t\t\treturn;\n\t\t}\n\t\tconst currentPostId = postId;\n\t\tapiFetch( {\n\t\t\tpath: addQueryArgs( '/wp/v2/comments', {\n\t\t\t\tpost: postId,\n\t\t\t\t_fields: 'id',\n\t\t\t} ),\n\t\t\tmethod: 'HEAD',\n\t\t\tparse: false,\n\t\t} )\n\t\t\t.then( ( res ) => {\n\t\t\t\t// Stale requests will have the `currentPostId` of an older closure.\n\t\t\t\tif ( currentPostId === postId ) {\n\t\t\t\t\tsetCommentsCount(\n\t\t\t\t\t\tparseInt( res.headers.get( 'X-WP-Total' ) )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.catch( () => {\n\t\t\t\tsetCommentsCount( 0 );\n\t\t\t} );\n\t}, [ postId ] );\n\n\tconst blockControls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<AlignmentControl\n\t\t\t\tvalue={ textAlign }\n\t\t\t\tonChange={ ( newAlign ) =>\n\t\t\t\t\tsetAttributes( { textAlign: newAlign } )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t<HeadingLevelDropdown\n\t\t\t\tselectedLevel={ level }\n\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t}\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Show post title' ) }\n\t\t\t\t\tchecked={ showPostTitle }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { showPostTitle: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Show comments count' ) }\n\t\t\t\t\tchecked={ showCommentsCount }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { showCommentsCount: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst postTitle = isSiteEditor ? __( '\"Post Title\"' ) : `\"${ rawTitle }\"`;\n\n\tlet placeholder;\n\tif ( showCommentsCount && commentsCount !== undefined ) {\n\t\tif ( showPostTitle ) {\n\t\t\tif ( commentsCount === 1 ) {\n\t\t\t\t/* translators: %s: Post title. */\n\t\t\t\tplaceholder = sprintf( __( 'One response to %s' ), postTitle );\n\t\t\t} else {\n\t\t\t\tplaceholder = sprintf(\n\t\t\t\t\t/* translators: 1: Number of comments, 2: Post title. */\n\t\t\t\t\t_n(\n\t\t\t\t\t\t'%1$s response to %2$s',\n\t\t\t\t\t\t'%1$s responses to %2$s',\n\t\t\t\t\t\tcommentsCount\n\t\t\t\t\t),\n\t\t\t\t\tcommentsCount,\n\t\t\t\t\tpostTitle\n\t\t\t\t);\n\t\t\t}\n\t\t} else if ( commentsCount === 1 ) {\n\t\t\tplaceholder = __( 'One response' );\n\t\t} else {\n\t\t\tplaceholder = sprintf(\n\t\t\t\t/* translators: %s: Number of comments. */\n\t\t\t\t_n( '%s responses', '%s responses', commentsCount ),\n\t\t\t\tcommentsCount\n\t\t\t);\n\t\t}\n\t} else if ( showPostTitle ) {\n\t\tif ( commentsCount === 1 ) {\n\t\t\t/* translators: %s: Post title. */\n\t\t\tplaceholder = sprintf( __( 'Response to %s' ), postTitle );\n\t\t} else {\n\t\t\t/* translators: %s: Post title. */\n\t\t\tplaceholder = sprintf( __( 'Responses to %s' ), postTitle );\n\t\t}\n\t} else if ( commentsCount === 1 ) {\n\t\tplaceholder = __( 'Response' );\n\t} else {\n\t\tplaceholder = __( 'Responses' );\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<TagName { ...blockProps }>{ placeholder }</TagName>\n\t\t</>\n\t);\n}\n"]}
@@ -20,12 +20,6 @@ const metadata = {
20
20
  textAlign: {
21
21
  type: "string"
22
22
  },
23
- singleCommentLabel: {
24
- type: "string"
25
- },
26
- multipleCommentsLabel: {
27
- type: "string"
28
- },
29
23
  showPostTitle: {
30
24
  type: "boolean",
31
25
  "default": true
@@ -77,12 +71,14 @@ const metadata = {
77
71
  }
78
72
  };
79
73
  import edit from './edit';
74
+ import deprecated from './deprecated';
80
75
  const {
81
76
  name
82
77
  } = metadata;
83
78
  export { metadata, name };
84
79
  export const settings = {
85
80
  icon,
86
- edit
81
+ edit,
82
+ deprecated
87
83
  };
88
84
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comments-title/index.js"],"names":["commentTitle","icon","edit","name","metadata","settings"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAY,IAAIC,IAAzB,QAAqC,kBAArC;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBJ,EAAAA,IADuB;AAEvBC,EAAAA;AAFuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { commentTitle as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comments-title/index.js"],"names":["commentTitle","icon","edit","deprecated","name","metadata","settings"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAY,IAAIC,IAAzB,QAAqC,kBAArC;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBL,EAAAA,IADuB;AAEvBC,EAAAA,IAFuB;AAGvBC,EAAAA;AAHuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { commentTitle as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport deprecated from './deprecated';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tdeprecated,\n};\n"]}
@@ -346,8 +346,11 @@ function CoverEdit(_ref5) {
346
346
 
347
347
  const toggleUseFeaturedImage = () => {
348
348
  setAttributes({
349
+ id: undefined,
350
+ url: undefined,
349
351
  useFeaturedImage: !useFeaturedImage,
350
- dimRatio: dimRatio === 100 ? 50 : dimRatio
352
+ dimRatio: dimRatio === 100 ? 50 : dimRatio,
353
+ backgroundType: useFeaturedImage ? IMAGE_BACKGROUND_TYPE : undefined
351
354
  });
352
355
  };
353
356
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/cover/edit.js"],"names":["classnames","FastAverageColor","colord","extend","namesPlugin","useEntityProp","store","coreStore","Fragment","useEffect","useRef","useState","useMemo","BaseControl","Button","ExternalLink","FocalPointPicker","PanelBody","PanelRow","RangeControl","ResizableBox","Spinner","TextareaControl","ToggleControl","ToolbarButton","__experimentalUseCustomUnits","useCustomUnits","__experimentalBoxControl","BoxControl","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalUnitControl","UnitControl","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","compose","useInstanceId","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaReplaceFlow","withColors","ColorPalette","useBlockProps","useSetting","useInnerBlocksProps","__experimentalUseGradient","__experimentalPanelColorGradientSettings","PanelColorGradientSettings","__experimentalBlockAlignmentMatrixControl","BlockAlignmentMatrixControl","__experimentalBlockFullHeightAligmentControl","FullHeightAlignmentControl","blockEditorStore","__","useSelect","useDispatch","postFeaturedImage","cover","icon","isBlobURL","noticesStore","ALLOWED_MEDIA_TYPES","attributesFromMedia","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","COVER_MIN_HEIGHT","backgroundImageStyles","dimRatioToClass","isContentPositionCenter","getPositionClassName","__Visualizer","BoxControlVisualizer","getInnerBlocksTemplate","attributes","align","placeholder","retrieveFastAverageColor","fastAverageColor","CoverHeightInput","onChange","onUnitChange","unit","value","instanceId","inputId","isPx","units","availableUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","computedValue","parsedQuantity","join","min","maxWidth","RESIZABLE_BOX_ENABLE_OPTION","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","ResizableCover","className","onResizeStart","onResize","onResizeStop","props","isResizing","setIsResizing","_event","_direction","elt","clientHeight","useCoverIsDark","url","dimRatio","overlayColor","elementRef","isDark","setIsDark","current","getColorAsync","color","mediaPosition","x","y","Math","round","isTemporaryMedia","id","CoverPlaceholder","disableMediaButtons","children","onSelectMedia","onError","style","title","instructions","CoverEdit","clientId","isSelected","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","contentPosition","useFeaturedImage","focalPoint","hasParallax","isRepeated","minHeight","minHeightUnit","styleAttribute","alt","allowedBlocks","templateLock","featuredImage","media","select","getMedia","mediaUrl","source_url","backgroundType","__unstableMarkNextChangeAsNotPersistent","createErrorNotice","gradientClass","gradientValue","setGradient","isUploadingMedia","prevMinHeightValue","setPrevMinHeightValue","prevMinHeightUnit","setPrevMinHeightUnit","isMinFullHeight","toggleMinFullHeight","toggleParallax","toggleIsRepeated","toggleUseFeaturedImage","onUploadError","message","Array","isArray","type","isDarkElement","isCoverDark","isImageBackground","isVideoBackground","minHeightWithUnit","isImgElement","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","ref","hasInnerBlocks","getBlock","innerBlocks","length","controls","nextPosition","newFocalPoint","newAlt","colorValue","onColorChange","onGradientChange","label","newDimRation","newMinHeight","nextUnit","blockProps","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","template","templateInsertUpdatesSelection","classes","spacing","padding","visualizers","class","backgroundImage"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport FastAverageColor from 'fast-average-color';\nimport { colord, extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport {\n\tFragment,\n\tuseEffect,\n\tuseRef,\n\tuseState,\n\tuseMemo,\n} from '@wordpress/element';\nimport {\n\tBaseControl,\n\tButton,\n\tExternalLink,\n\tFocalPointPicker,\n\tPanelBody,\n\tPanelRow,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tToggleControl,\n\tToolbarButton,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalBoxControl as BoxControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { compose, useInstanceId } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSetting,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\t__experimentalPanelColorGradientSettings as PanelColorGradientSettings,\n\t__experimentalBlockAlignmentMatrixControl as BlockAlignmentMatrixControl,\n\t__experimentalBlockFullHeightAligmentControl as FullHeightAlignmentControl,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { postFeaturedImage, cover as icon } from '@wordpress/icons';\nimport { isBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport {\n\tALLOWED_MEDIA_TYPES,\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tCOVER_MIN_HEIGHT,\n\tbackgroundImageStyles,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n} from './shared';\n\nextend( [ namesPlugin ] );\n\nconst { __Visualizer: BoxControlVisualizer } = BoxControl;\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\nfunction retrieveFastAverageColor() {\n\tif ( ! retrieveFastAverageColor.fastAverageColor ) {\n\t\tretrieveFastAverageColor.fastAverageColor = new FastAverageColor();\n\t}\n\treturn retrieveFastAverageColor.fastAverageColor;\n}\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t\t'vh',\n\t\t],\n\t\tdefaultValues: { px: 430, '%': 20, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tonChange( inputValue );\n\t};\n\n\tconst computedValue = useMemo( () => {\n\t\tconst [ parsedQuantity ] = parseQuantityAndUnitFromRawValue( value );\n\t\treturn [ parsedQuantity, unit ].join( '' );\n\t}, [ unit, value ] );\n\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<BaseControl label={ __( 'Minimum height of cover' ) } id={ inputId }>\n\t\t\t<UnitControl\n\t\t\t\tid={ inputId }\n\t\t\t\tisResetValueOnUnitChange\n\t\t\t\tmin={ min }\n\t\t\t\tonChange={ handleOnChange }\n\t\t\t\tonUnitChange={ onUnitChange }\n\t\t\t\tstyle={ { maxWidth: 80 } }\n\t\t\t\tunits={ units }\n\t\t\t\tvalue={ computedValue }\n\t\t\t/>\n\t\t</BaseControl>\n\t);\n}\n\nconst RESIZABLE_BOX_ENABLE_OPTION = {\n\ttop: false,\n\tright: false,\n\tbottom: true,\n\tleft: false,\n\ttopRight: false,\n\tbottomRight: false,\n\tbottomLeft: false,\n\ttopLeft: false,\n};\n\nfunction ResizableCover( {\n\tclassName,\n\tonResizeStart,\n\tonResize,\n\tonResizeStop,\n\t...props\n} ) {\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ classnames( className, {\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t} ) }\n\t\t\tenable={ RESIZABLE_BOX_ENABLE_OPTION }\n\t\t\tonResizeStart={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStart( elt.clientHeight );\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t} }\n\t\t\tonResize={ ( _event, _direction, elt ) => {\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t\tif ( ! isResizing ) {\n\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResizeStop={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStop( elt.clientHeight );\n\t\t\t\tsetIsResizing( false );\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\n/**\n * useCoverIsDark is a hook that returns a boolean variable specifying if the cover\n * background is dark or not.\n *\n * @param {?string} url Url of the media background.\n * @param {?number} dimRatio Transparency of the overlay color. If an image and\n * color are set, dimRatio is used to decide what is used\n * for background darkness checking purposes.\n * @param {?string} overlayColor String containing the overlay color value if one exists.\n * @param {?Object} elementRef If a media background is set, elementRef should contain a reference to a\n * dom element that renders that media.\n *\n * @return {boolean} True if the cover background is considered \"dark\" and false otherwise.\n */\nfunction useCoverIsDark( url, dimRatio = 50, overlayColor, elementRef ) {\n\tconst [ isDark, setIsDark ] = useState( false );\n\tuseEffect( () => {\n\t\t// If opacity is lower than 50 the dominant color is the image or video color,\n\t\t// so use that color for the dark mode computation.\n\t\tif ( url && dimRatio <= 50 && elementRef.current ) {\n\t\t\tretrieveFastAverageColor().getColorAsync(\n\t\t\t\telementRef.current,\n\t\t\t\t( color ) => {\n\t\t\t\t\tsetIsDark( color.isDark );\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}, [ url, url && dimRatio <= 50 && elementRef.current, setIsDark ] );\n\tuseEffect( () => {\n\t\t// If opacity is greater than 50 the dominant color is the overlay color,\n\t\t// so use that color for the dark mode computation.\n\t\tif ( dimRatio > 50 || ! url ) {\n\t\t\tif ( ! overlayColor ) {\n\t\t\t\t// If no overlay color exists the overlay color is black (isDark )\n\t\t\t\tsetIsDark( true );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetIsDark( colord( overlayColor ).isDark() );\n\t\t}\n\t}, [ overlayColor, dimRatio > 50 || ! url, setIsDark ] );\n\tuseEffect( () => {\n\t\tif ( ! url && ! overlayColor ) {\n\t\t\t// Reset isDark.\n\t\t\tsetIsDark( false );\n\t\t}\n\t}, [ ! url && ! overlayColor, setIsDark ] );\n\treturn isDark;\n}\n\nfunction mediaPosition( { x, y } ) {\n\treturn `${ Math.round( x * 100 ) }% ${ Math.round( y * 100 ) }%`;\n}\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while\n * the media (image or video) is being uploaded and will not have an id allocated yet.\n *\n * @param {number} id The id of the media.\n * @param {string} url The url of the media.\n *\n * @return {boolean} Is the URL a Blob URL.\n */\nconst isTemporaryMedia = ( id, url ) => ! id && isBlobURL( url );\n\nfunction CoverPlaceholder( {\n\tdisableMediaButtons = false,\n\tchildren,\n\tonSelectMedia,\n\tonError,\n\tstyle,\n} ) {\n\treturn (\n\t\t<MediaPlaceholder\n\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\tlabels={ {\n\t\t\t\ttitle: __( 'Cover' ),\n\t\t\t\tinstructions: __(\n\t\t\t\t\t'Drag and drop onto this block, upload, or select existing media from your library.'\n\t\t\t\t),\n\t\t\t} }\n\t\t\tonSelect={ onSelectMedia }\n\t\t\taccept=\"image/*,video/*\"\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\tdisableMediaButtons={ disableMediaButtons }\n\t\t\tonError={ onError }\n\t\t\tstyle={ style }\n\t\t>\n\t\t\t{ children }\n\t\t</MediaPlaceholder>\n\t);\n}\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\tstyle: styleAttribute,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\tconst media = useSelect(\n\t\t( select ) =>\n\t\t\tfeaturedImage &&\n\t\t\tselect( coreStore ).getMedia( featuredImage, { context: 'view' } ),\n\t\t[ featuredImage ]\n\t);\n\tconst mediaUrl = media?.source_url;\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage ? mediaUrl : attributes.url;\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: attributes.backgroundType;\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tgradientClass,\n\t\tgradientValue,\n\t\tsetGradient,\n\t} = __experimentalUseGradient();\n\tconst onSelectMedia = attributesFromMedia( setAttributes, dimRatio );\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst [ prevMinHeightValue, setPrevMinHeightValue ] = useState( minHeight );\n\tconst [ prevMinHeightUnit, setPrevMinHeightUnit ] = useState(\n\t\tminHeightUnit\n\t);\n\tconst isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100;\n\n\tconst toggleMinFullHeight = () => {\n\t\tif ( isMinFullHeight ) {\n\t\t\t// If there aren't previous values, take the default ones.\n\t\t\tif ( prevMinHeightUnit === 'vh' && prevMinHeightValue === 100 ) {\n\t\t\t\treturn setAttributes( {\n\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Set the previous values of height.\n\t\t\treturn setAttributes( {\n\t\t\t\tminHeight: prevMinHeightValue,\n\t\t\t\tminHeightUnit: prevMinHeightUnit,\n\t\t\t} );\n\t\t}\n\n\t\tsetPrevMinHeightValue( minHeight );\n\t\tsetPrevMinHeightUnit( minHeightUnit );\n\n\t\t// Set full height.\n\t\treturn setAttributes( {\n\t\t\tminHeight: 100,\n\t\t\tminHeightUnit: 'vh',\n\t\t} );\n\t};\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst toggleUseFeaturedImage = () => {\n\t\tsetAttributes( {\n\t\t\tuseFeaturedImage: ! useFeaturedImage,\n\t\t\tdimRatio: dimRatio === 100 ? 50 : dimRatio,\n\t\t} );\n\t};\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( Array.isArray( message ) ? message[ 2 ] : message, {\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst isDarkElement = useRef();\n\tconst isCoverDark = useCoverIsDark(\n\t\turl,\n\t\tdimRatio,\n\t\toverlayColor.color,\n\t\tisDarkElement\n\t);\n\n\tuseEffect( () => {\n\t\t// This side-effect should not create an undo level.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetAttributes( { isDark: isCoverDark } );\n\t}, [ isCoverDark ] );\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\n\n\tconst minHeightWithUnit =\n\t\tminHeight && minHeightUnit\n\t\t\t? `${ minHeight }${ minHeightUnit }`\n\t\t\t: minHeight;\n\n\tconst isImgElement = ! ( hasParallax || isRepeated );\n\n\tconst style = {\n\t\t...( isImageBackground && ! isImgElement\n\t\t\t? backgroundImageStyles( url )\n\t\t\t: undefined ),\n\t\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst bgStyle = { backgroundColor: overlayColor.color };\n\tconst mediaStyle = {\n\t\tobjectPosition:\n\t\t\tfocalPoint && isImgElement\n\t\t\t\t? mediaPosition( focalPoint )\n\t\t\t\t: undefined,\n\t};\n\n\tconst hasBackground = !! ( url || overlayColor.color || gradientValue );\n\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = isDarkElement.current\n\t\t\t? [ isDarkElement.current.style, 'objectPosition' ]\n\t\t\t: [ ref.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\n\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlock( clientId ).innerBlocks.length >\n\t\t\t0,\n\t\t[ clientId ]\n\t);\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<BlockAlignmentMatrixControl\n\t\t\t\t\tlabel={ __( 'Change content position' ) }\n\t\t\t\t\tvalue={ contentPosition }\n\t\t\t\t\tonChange={ ( nextPosition ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tcontentPosition: nextPosition,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t\t<FullHeightAlignmentControl\n\t\t\t\t\tisActive={ isMinFullHeight }\n\t\t\t\t\tonToggle={ toggleMinFullHeight }\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<ToolbarButton\n\t\t\t\t\ticon={ postFeaturedImage }\n\t\t\t\t\tlabel={ __( 'Use featured image' ) }\n\t\t\t\t\tisPressed={ useFeaturedImage }\n\t\t\t\t\tonClick={ toggleUseFeaturedImage }\n\t\t\t\t/>\n\t\t\t\t{ ! useFeaturedImage && (\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*,video/*\"\n\t\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\t\tname={ ! url ? __( 'Add Media' ) : __( 'Replace' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<PanelBody title={ __( 'Media settings' ) }>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point picker' ) }\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! useFeaturedImage &&\n\t\t\t\t\t\t\turl &&\n\t\t\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t\t\tisImgElement && (\n\t\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t\t'Alt text (alternative text)'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if the image is purely decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\tclassName=\"block-library-cover__reset-button\"\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\turl: undefined,\n\t\t\t\t\t\t\t\t\t\tid: undefined,\n\t\t\t\t\t\t\t\t\t\tbackgroundType: undefined,\n\t\t\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\t\t\thasParallax: undefined,\n\t\t\t\t\t\t\t\t\t\tisRepeated: undefined,\n\t\t\t\t\t\t\t\t\t\tuseFeaturedImage: false,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Clear Media' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</PanelRow>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t<PanelColorGradientSettings\n\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\ttitle={ __( 'Overlay' ) }\n\t\t\t\t\tinitialOpen={ true }\n\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\tlabel: __( 'Color' ),\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Opacity' ) }\n\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\tonChange={ ( newDimRation ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdimRatio: newDimRation,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t</PanelColorGradientSettings>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={ minHeight }\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst ref = useRef();\n\tconst blockProps = useBlockProps( { ref } );\n\n\t// Check for fontSize support before we pass a fontSize attribute to the innerBlocks.\n\tconst hasFontSizes = !! useSetting( 'typography.fontSizes' )?.length;\n\tconst innerBlocksTemplate = getInnerBlocksTemplate( {\n\t\tfontSize: hasFontSizes ? 'large' : undefined,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t},\n\t\t{\n\t\t\ttemplate: innerBlocksTemplate,\n\t\t\ttemplateInsertUpdatesSelection: true,\n\t\t\tallowedBlocks,\n\t\t\ttemplateLock,\n\t\t}\n\t);\n\n\tif ( ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'is-placeholder',\n\t\t\t\t\t\tblockProps.className\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<CoverPlaceholder\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\tminHeight: minHeightWithUnit || undefined,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"wp-block-cover__placeholder-background-options\">\n\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\tdisableCustomColors={ true }\n\t\t\t\t\t\t\t\tvalue={ overlayColor.color }\n\t\t\t\t\t\t\t\tonChange={ setOverlayColor }\n\t\t\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</CoverPlaceholder>\n\t\t\t\t\t<ResizableCover\n\t\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst classes = classnames(\n\t\t{\n\t\t\t'is-dark-theme': isDark,\n\t\t\t'is-light': ! isDark,\n\t\t\t'is-transient': isUploadingMedia,\n\t\t\t'has-parallax': hasParallax,\n\t\t\t'is-repeated': isRepeated,\n\t\t\t'has-custom-content-position': ! isContentPositionCenter(\n\t\t\t\tcontentPosition\n\t\t\t),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ controls }\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t<BoxControlVisualizer\n\t\t\t\t\tvalues={ styleAttribute?.spacing?.padding }\n\t\t\t\t\tshowValues={ styleAttribute?.visualizers?.padding }\n\t\t\t\t\tclassName=\"block-library-cover__padding-visualizer\"\n\t\t\t\t/>\n\t\t\t\t<ResizableCover\n\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t} }\n\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t} }\n\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t/>\n\n\t\t\t\t<span\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t}\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t/>\n\n\t\t\t\t{ url && isImageBackground && isImgElement && (\n\t\t\t\t\t<img\n\t\t\t\t\t\tref={ isDarkElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ url && isVideoBackground && (\n\t\t\t\t\t<video\n\t\t\t\t\t\tref={ isDarkElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__video-background\"\n\t\t\t\t\t\tautoPlay\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tloop\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isUploadingMedia && <Spinner /> }\n\t\t\t\t<CoverPlaceholder\n\t\t\t\t\tdisableMediaButtons\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( CoverEdit );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/cover/edit.js"],"names":["classnames","FastAverageColor","colord","extend","namesPlugin","useEntityProp","store","coreStore","Fragment","useEffect","useRef","useState","useMemo","BaseControl","Button","ExternalLink","FocalPointPicker","PanelBody","PanelRow","RangeControl","ResizableBox","Spinner","TextareaControl","ToggleControl","ToolbarButton","__experimentalUseCustomUnits","useCustomUnits","__experimentalBoxControl","BoxControl","__experimentalToolsPanelItem","ToolsPanelItem","__experimentalUnitControl","UnitControl","__experimentalParseQuantityAndUnitFromRawValue","parseQuantityAndUnitFromRawValue","compose","useInstanceId","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaReplaceFlow","withColors","ColorPalette","useBlockProps","useSetting","useInnerBlocksProps","__experimentalUseGradient","__experimentalPanelColorGradientSettings","PanelColorGradientSettings","__experimentalBlockAlignmentMatrixControl","BlockAlignmentMatrixControl","__experimentalBlockFullHeightAligmentControl","FullHeightAlignmentControl","blockEditorStore","__","useSelect","useDispatch","postFeaturedImage","cover","icon","isBlobURL","noticesStore","ALLOWED_MEDIA_TYPES","attributesFromMedia","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","COVER_MIN_HEIGHT","backgroundImageStyles","dimRatioToClass","isContentPositionCenter","getPositionClassName","__Visualizer","BoxControlVisualizer","getInnerBlocksTemplate","attributes","align","placeholder","retrieveFastAverageColor","fastAverageColor","CoverHeightInput","onChange","onUnitChange","unit","value","instanceId","inputId","isPx","units","availableUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","computedValue","parsedQuantity","join","min","maxWidth","RESIZABLE_BOX_ENABLE_OPTION","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","ResizableCover","className","onResizeStart","onResize","onResizeStop","props","isResizing","setIsResizing","_event","_direction","elt","clientHeight","useCoverIsDark","url","dimRatio","overlayColor","elementRef","isDark","setIsDark","current","getColorAsync","color","mediaPosition","x","y","Math","round","isTemporaryMedia","id","CoverPlaceholder","disableMediaButtons","children","onSelectMedia","onError","style","title","instructions","CoverEdit","clientId","isSelected","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","contentPosition","useFeaturedImage","focalPoint","hasParallax","isRepeated","minHeight","minHeightUnit","styleAttribute","alt","allowedBlocks","templateLock","featuredImage","media","select","getMedia","mediaUrl","source_url","backgroundType","__unstableMarkNextChangeAsNotPersistent","createErrorNotice","gradientClass","gradientValue","setGradient","isUploadingMedia","prevMinHeightValue","setPrevMinHeightValue","prevMinHeightUnit","setPrevMinHeightUnit","isMinFullHeight","toggleMinFullHeight","toggleParallax","toggleIsRepeated","toggleUseFeaturedImage","onUploadError","message","Array","isArray","type","isDarkElement","isCoverDark","isImageBackground","isVideoBackground","minHeightWithUnit","isImgElement","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","ref","hasInnerBlocks","getBlock","innerBlocks","length","controls","nextPosition","newFocalPoint","newAlt","colorValue","onColorChange","onGradientChange","label","newDimRation","newMinHeight","nextUnit","blockProps","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","template","templateInsertUpdatesSelection","classes","spacing","padding","visualizers","class","backgroundImage"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport FastAverageColor from 'fast-average-color';\nimport { colord, extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport {\n\tFragment,\n\tuseEffect,\n\tuseRef,\n\tuseState,\n\tuseMemo,\n} from '@wordpress/element';\nimport {\n\tBaseControl,\n\tButton,\n\tExternalLink,\n\tFocalPointPicker,\n\tPanelBody,\n\tPanelRow,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tToggleControl,\n\tToolbarButton,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalBoxControl as BoxControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { compose, useInstanceId } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSetting,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\t__experimentalPanelColorGradientSettings as PanelColorGradientSettings,\n\t__experimentalBlockAlignmentMatrixControl as BlockAlignmentMatrixControl,\n\t__experimentalBlockFullHeightAligmentControl as FullHeightAlignmentControl,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { postFeaturedImage, cover as icon } from '@wordpress/icons';\nimport { isBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport {\n\tALLOWED_MEDIA_TYPES,\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tCOVER_MIN_HEIGHT,\n\tbackgroundImageStyles,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n} from './shared';\n\nextend( [ namesPlugin ] );\n\nconst { __Visualizer: BoxControlVisualizer } = BoxControl;\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\nfunction retrieveFastAverageColor() {\n\tif ( ! retrieveFastAverageColor.fastAverageColor ) {\n\t\tretrieveFastAverageColor.fastAverageColor = new FastAverageColor();\n\t}\n\treturn retrieveFastAverageColor.fastAverageColor;\n}\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t\t'vh',\n\t\t],\n\t\tdefaultValues: { px: 430, '%': 20, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tonChange( inputValue );\n\t};\n\n\tconst computedValue = useMemo( () => {\n\t\tconst [ parsedQuantity ] = parseQuantityAndUnitFromRawValue( value );\n\t\treturn [ parsedQuantity, unit ].join( '' );\n\t}, [ unit, value ] );\n\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<BaseControl label={ __( 'Minimum height of cover' ) } id={ inputId }>\n\t\t\t<UnitControl\n\t\t\t\tid={ inputId }\n\t\t\t\tisResetValueOnUnitChange\n\t\t\t\tmin={ min }\n\t\t\t\tonChange={ handleOnChange }\n\t\t\t\tonUnitChange={ onUnitChange }\n\t\t\t\tstyle={ { maxWidth: 80 } }\n\t\t\t\tunits={ units }\n\t\t\t\tvalue={ computedValue }\n\t\t\t/>\n\t\t</BaseControl>\n\t);\n}\n\nconst RESIZABLE_BOX_ENABLE_OPTION = {\n\ttop: false,\n\tright: false,\n\tbottom: true,\n\tleft: false,\n\ttopRight: false,\n\tbottomRight: false,\n\tbottomLeft: false,\n\ttopLeft: false,\n};\n\nfunction ResizableCover( {\n\tclassName,\n\tonResizeStart,\n\tonResize,\n\tonResizeStop,\n\t...props\n} ) {\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ classnames( className, {\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t} ) }\n\t\t\tenable={ RESIZABLE_BOX_ENABLE_OPTION }\n\t\t\tonResizeStart={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStart( elt.clientHeight );\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t} }\n\t\t\tonResize={ ( _event, _direction, elt ) => {\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t\tif ( ! isResizing ) {\n\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResizeStop={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStop( elt.clientHeight );\n\t\t\t\tsetIsResizing( false );\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\n/**\n * useCoverIsDark is a hook that returns a boolean variable specifying if the cover\n * background is dark or not.\n *\n * @param {?string} url Url of the media background.\n * @param {?number} dimRatio Transparency of the overlay color. If an image and\n * color are set, dimRatio is used to decide what is used\n * for background darkness checking purposes.\n * @param {?string} overlayColor String containing the overlay color value if one exists.\n * @param {?Object} elementRef If a media background is set, elementRef should contain a reference to a\n * dom element that renders that media.\n *\n * @return {boolean} True if the cover background is considered \"dark\" and false otherwise.\n */\nfunction useCoverIsDark( url, dimRatio = 50, overlayColor, elementRef ) {\n\tconst [ isDark, setIsDark ] = useState( false );\n\tuseEffect( () => {\n\t\t// If opacity is lower than 50 the dominant color is the image or video color,\n\t\t// so use that color for the dark mode computation.\n\t\tif ( url && dimRatio <= 50 && elementRef.current ) {\n\t\t\tretrieveFastAverageColor().getColorAsync(\n\t\t\t\telementRef.current,\n\t\t\t\t( color ) => {\n\t\t\t\t\tsetIsDark( color.isDark );\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}, [ url, url && dimRatio <= 50 && elementRef.current, setIsDark ] );\n\tuseEffect( () => {\n\t\t// If opacity is greater than 50 the dominant color is the overlay color,\n\t\t// so use that color for the dark mode computation.\n\t\tif ( dimRatio > 50 || ! url ) {\n\t\t\tif ( ! overlayColor ) {\n\t\t\t\t// If no overlay color exists the overlay color is black (isDark )\n\t\t\t\tsetIsDark( true );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetIsDark( colord( overlayColor ).isDark() );\n\t\t}\n\t}, [ overlayColor, dimRatio > 50 || ! url, setIsDark ] );\n\tuseEffect( () => {\n\t\tif ( ! url && ! overlayColor ) {\n\t\t\t// Reset isDark.\n\t\t\tsetIsDark( false );\n\t\t}\n\t}, [ ! url && ! overlayColor, setIsDark ] );\n\treturn isDark;\n}\n\nfunction mediaPosition( { x, y } ) {\n\treturn `${ Math.round( x * 100 ) }% ${ Math.round( y * 100 ) }%`;\n}\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while\n * the media (image or video) is being uploaded and will not have an id allocated yet.\n *\n * @param {number} id The id of the media.\n * @param {string} url The url of the media.\n *\n * @return {boolean} Is the URL a Blob URL.\n */\nconst isTemporaryMedia = ( id, url ) => ! id && isBlobURL( url );\n\nfunction CoverPlaceholder( {\n\tdisableMediaButtons = false,\n\tchildren,\n\tonSelectMedia,\n\tonError,\n\tstyle,\n} ) {\n\treturn (\n\t\t<MediaPlaceholder\n\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\tlabels={ {\n\t\t\t\ttitle: __( 'Cover' ),\n\t\t\t\tinstructions: __(\n\t\t\t\t\t'Drag and drop onto this block, upload, or select existing media from your library.'\n\t\t\t\t),\n\t\t\t} }\n\t\t\tonSelect={ onSelectMedia }\n\t\t\taccept=\"image/*,video/*\"\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\tdisableMediaButtons={ disableMediaButtons }\n\t\t\tonError={ onError }\n\t\t\tstyle={ style }\n\t\t>\n\t\t\t{ children }\n\t\t</MediaPlaceholder>\n\t);\n}\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\tstyle: styleAttribute,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\tconst media = useSelect(\n\t\t( select ) =>\n\t\t\tfeaturedImage &&\n\t\t\tselect( coreStore ).getMedia( featuredImage, { context: 'view' } ),\n\t\t[ featuredImage ]\n\t);\n\tconst mediaUrl = media?.source_url;\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage ? mediaUrl : attributes.url;\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: attributes.backgroundType;\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst {\n\t\tgradientClass,\n\t\tgradientValue,\n\t\tsetGradient,\n\t} = __experimentalUseGradient();\n\tconst onSelectMedia = attributesFromMedia( setAttributes, dimRatio );\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst [ prevMinHeightValue, setPrevMinHeightValue ] = useState( minHeight );\n\tconst [ prevMinHeightUnit, setPrevMinHeightUnit ] = useState(\n\t\tminHeightUnit\n\t);\n\tconst isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100;\n\n\tconst toggleMinFullHeight = () => {\n\t\tif ( isMinFullHeight ) {\n\t\t\t// If there aren't previous values, take the default ones.\n\t\t\tif ( prevMinHeightUnit === 'vh' && prevMinHeightValue === 100 ) {\n\t\t\t\treturn setAttributes( {\n\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Set the previous values of height.\n\t\t\treturn setAttributes( {\n\t\t\t\tminHeight: prevMinHeightValue,\n\t\t\t\tminHeightUnit: prevMinHeightUnit,\n\t\t\t} );\n\t\t}\n\n\t\tsetPrevMinHeightValue( minHeight );\n\t\tsetPrevMinHeightUnit( minHeightUnit );\n\n\t\t// Set full height.\n\t\treturn setAttributes( {\n\t\t\tminHeight: 100,\n\t\t\tminHeightUnit: 'vh',\n\t\t} );\n\t};\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst toggleUseFeaturedImage = () => {\n\t\tsetAttributes( {\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tuseFeaturedImage: ! useFeaturedImage,\n\t\t\tdimRatio: dimRatio === 100 ? 50 : dimRatio,\n\t\t\tbackgroundType: useFeaturedImage\n\t\t\t\t? IMAGE_BACKGROUND_TYPE\n\t\t\t\t: undefined,\n\t\t} );\n\t};\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( Array.isArray( message ) ? message[ 2 ] : message, {\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst isDarkElement = useRef();\n\tconst isCoverDark = useCoverIsDark(\n\t\turl,\n\t\tdimRatio,\n\t\toverlayColor.color,\n\t\tisDarkElement\n\t);\n\n\tuseEffect( () => {\n\t\t// This side-effect should not create an undo level.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetAttributes( { isDark: isCoverDark } );\n\t}, [ isCoverDark ] );\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\n\n\tconst minHeightWithUnit =\n\t\tminHeight && minHeightUnit\n\t\t\t? `${ minHeight }${ minHeightUnit }`\n\t\t\t: minHeight;\n\n\tconst isImgElement = ! ( hasParallax || isRepeated );\n\n\tconst style = {\n\t\t...( isImageBackground && ! isImgElement\n\t\t\t? backgroundImageStyles( url )\n\t\t\t: undefined ),\n\t\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst bgStyle = { backgroundColor: overlayColor.color };\n\tconst mediaStyle = {\n\t\tobjectPosition:\n\t\t\tfocalPoint && isImgElement\n\t\t\t\t? mediaPosition( focalPoint )\n\t\t\t\t: undefined,\n\t};\n\n\tconst hasBackground = !! ( url || overlayColor.color || gradientValue );\n\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = isDarkElement.current\n\t\t\t? [ isDarkElement.current.style, 'objectPosition' ]\n\t\t\t: [ ref.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\n\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlock( clientId ).innerBlocks.length >\n\t\t\t0,\n\t\t[ clientId ]\n\t);\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<BlockAlignmentMatrixControl\n\t\t\t\t\tlabel={ __( 'Change content position' ) }\n\t\t\t\t\tvalue={ contentPosition }\n\t\t\t\t\tonChange={ ( nextPosition ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tcontentPosition: nextPosition,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t\t<FullHeightAlignmentControl\n\t\t\t\t\tisActive={ isMinFullHeight }\n\t\t\t\t\tonToggle={ toggleMinFullHeight }\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<ToolbarButton\n\t\t\t\t\ticon={ postFeaturedImage }\n\t\t\t\t\tlabel={ __( 'Use featured image' ) }\n\t\t\t\t\tisPressed={ useFeaturedImage }\n\t\t\t\t\tonClick={ toggleUseFeaturedImage }\n\t\t\t\t/>\n\t\t\t\t{ ! useFeaturedImage && (\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*,video/*\"\n\t\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\t\tname={ ! url ? __( 'Add Media' ) : __( 'Replace' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<PanelBody title={ __( 'Media settings' ) }>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point picker' ) }\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! useFeaturedImage &&\n\t\t\t\t\t\t\turl &&\n\t\t\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t\t\tisImgElement && (\n\t\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t\t'Alt text (alternative text)'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image'\n\t\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if the image is purely decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\tclassName=\"block-library-cover__reset-button\"\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\turl: undefined,\n\t\t\t\t\t\t\t\t\t\tid: undefined,\n\t\t\t\t\t\t\t\t\t\tbackgroundType: undefined,\n\t\t\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\t\t\thasParallax: undefined,\n\t\t\t\t\t\t\t\t\t\tisRepeated: undefined,\n\t\t\t\t\t\t\t\t\t\tuseFeaturedImage: false,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Clear Media' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</PanelRow>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t<PanelColorGradientSettings\n\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\ttitle={ __( 'Overlay' ) }\n\t\t\t\t\tinitialOpen={ true }\n\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\tlabel: __( 'Color' ),\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Opacity' ) }\n\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\tonChange={ ( newDimRation ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdimRatio: newDimRation,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t</PanelColorGradientSettings>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={ minHeight }\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst ref = useRef();\n\tconst blockProps = useBlockProps( { ref } );\n\n\t// Check for fontSize support before we pass a fontSize attribute to the innerBlocks.\n\tconst hasFontSizes = !! useSetting( 'typography.fontSizes' )?.length;\n\tconst innerBlocksTemplate = getInnerBlocksTemplate( {\n\t\tfontSize: hasFontSizes ? 'large' : undefined,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t},\n\t\t{\n\t\t\ttemplate: innerBlocksTemplate,\n\t\t\ttemplateInsertUpdatesSelection: true,\n\t\t\tallowedBlocks,\n\t\t\ttemplateLock,\n\t\t}\n\t);\n\n\tif ( ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'is-placeholder',\n\t\t\t\t\t\tblockProps.className\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<CoverPlaceholder\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\tminHeight: minHeightWithUnit || undefined,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"wp-block-cover__placeholder-background-options\">\n\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\tdisableCustomColors={ true }\n\t\t\t\t\t\t\t\tvalue={ overlayColor.color }\n\t\t\t\t\t\t\t\tonChange={ setOverlayColor }\n\t\t\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</CoverPlaceholder>\n\t\t\t\t\t<ResizableCover\n\t\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst classes = classnames(\n\t\t{\n\t\t\t'is-dark-theme': isDark,\n\t\t\t'is-light': ! isDark,\n\t\t\t'is-transient': isUploadingMedia,\n\t\t\t'has-parallax': hasParallax,\n\t\t\t'is-repeated': isRepeated,\n\t\t\t'has-custom-content-position': ! isContentPositionCenter(\n\t\t\t\tcontentPosition\n\t\t\t),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ controls }\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t<BoxControlVisualizer\n\t\t\t\t\tvalues={ styleAttribute?.spacing?.padding }\n\t\t\t\t\tshowValues={ styleAttribute?.visualizers?.padding }\n\t\t\t\t\tclassName=\"block-library-cover__padding-visualizer\"\n\t\t\t\t/>\n\t\t\t\t<ResizableCover\n\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t} }\n\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t} }\n\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t/>\n\n\t\t\t\t<span\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t}\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t/>\n\n\t\t\t\t{ url && isImageBackground && isImgElement && (\n\t\t\t\t\t<img\n\t\t\t\t\t\tref={ isDarkElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ url && isVideoBackground && (\n\t\t\t\t\t<video\n\t\t\t\t\t\tref={ isDarkElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__video-background\"\n\t\t\t\t\t\tautoPlay\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tloop\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isUploadingMedia && <Spinner /> }\n\t\t\t\t<CoverPlaceholder\n\t\t\t\t\tdisableMediaButtons\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( CoverEdit );\n"]}
@@ -48,7 +48,6 @@ import * as mediaText from './media-text';
48
48
  import * as missing from './missing';
49
49
  import * as more from './more';
50
50
  import * as navigation from './navigation';
51
- import * as navigationArea from './navigation-area';
52
51
  import * as navigationLink from './navigation-link';
53
52
  import * as navigationSubmenu from './navigation-submenu';
54
53
  import * as nextpage from './nextpage';
@@ -184,6 +183,6 @@ export const __experimentalRegisterExperimentalCoreBlocks = process.env.IS_GUTEN
184
183
  } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
185
184
  [// Experimental blocks.
186
185
  postAuthorName, ...(window.__experimentalEnableListBlockV2 ? [listItem] : []), // Full Site Editing blocks.
187
- ...(enableFSEBlocks ? [commentAuthorAvatar, navigationArea, postComment, postCommentsCount, postCommentsLink] : [])].forEach(registerBlock);
186
+ ...(enableFSEBlocks ? [commentAuthorAvatar, postComment, postCommentsCount, postCommentsLink] : [])].forEach(registerBlock);
188
187
  } : undefined;
189
188
  //# sourceMappingURL=index.js.map