@wordpress/block-library 7.9.0 → 7.10.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 (205) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/comment-template/index.js +1 -1
  3. package/build/comments/deprecated.js +65 -0
  4. package/build/comments/deprecated.js.map +1 -0
  5. package/build/comments/index.js +5 -2
  6. package/build/comments/index.js.map +1 -1
  7. package/build/comments-pagination/index.js +1 -1
  8. package/build/comments-title/deprecated.js +1 -1
  9. package/build/comments-title/index.js +1 -1
  10. package/build/cover/edit/block-controls.js +2 -12
  11. package/build/cover/edit/block-controls.js.map +1 -1
  12. package/build/cover/edit/cover-placeholder.js +3 -1
  13. package/build/cover/edit/cover-placeholder.js.map +1 -1
  14. package/build/cover/edit/index.js +19 -4
  15. package/build/cover/edit/index.js.map +1 -1
  16. package/build/gallery/edit.js +9 -17
  17. package/build/gallery/edit.js.map +1 -1
  18. package/build/gallery/transforms.js +30 -20
  19. package/build/gallery/transforms.js.map +1 -1
  20. package/build/gallery/use-get-media.js +7 -18
  21. package/build/gallery/use-get-media.js.map +1 -1
  22. package/build/group/edit.js +1 -3
  23. package/build/group/edit.js.map +1 -1
  24. package/build/heading/heading-level-dropdown.js +2 -1
  25. package/build/heading/heading-level-dropdown.js.map +1 -1
  26. package/build/heading/index.js +9 -4
  27. package/build/heading/index.js.map +1 -1
  28. package/build/latest-posts/edit.js +1 -1
  29. package/build/latest-posts/edit.js.map +1 -1
  30. package/build/more/edit.js +2 -4
  31. package/build/more/edit.js.map +1 -1
  32. package/build/navigation/view.js +7 -4
  33. package/build/navigation/view.js.map +1 -1
  34. package/build/navigation-link/hooks.js +0 -16
  35. package/build/navigation-link/hooks.js.map +1 -1
  36. package/build/navigation-link/index.js +1 -1
  37. package/build/navigation-link/index.js.map +1 -1
  38. package/build/navigation-submenu/view.js +7 -4
  39. package/build/navigation-submenu/view.js.map +1 -1
  40. package/build/nextpage/edit.js +1 -3
  41. package/build/nextpage/edit.js.map +1 -1
  42. package/build/page-list/edit.js +2 -2
  43. package/build/page-list/edit.js.map +1 -1
  44. package/build/post-comments-form/edit.js +2 -4
  45. package/build/post-comments-form/edit.js.map +1 -1
  46. package/build/post-terms/index.js +1 -1
  47. package/build/post-terms/index.js.map +1 -1
  48. package/build/post-title/index.js +1 -0
  49. package/build/post-title/index.js.map +1 -1
  50. package/build/query/edit/inspector-controls/index.js +1 -1
  51. package/build/query/edit/inspector-controls/index.js.map +1 -1
  52. package/build/query/index.js +1 -1
  53. package/build/query/index.js.map +1 -1
  54. package/build/site-logo/edit.js +5 -13
  55. package/build/site-logo/edit.js.map +1 -1
  56. package/build/site-title/edit/level-toolbar.js +2 -1
  57. package/build/site-title/edit/level-toolbar.js.map +1 -1
  58. package/build/template-part/index.js +1 -1
  59. package/build/template-part/index.js.map +1 -1
  60. package/build/template-part/variations.js +0 -16
  61. package/build/template-part/variations.js.map +1 -1
  62. package/build/utils/clean-empty-object.js +5 -3
  63. package/build/utils/clean-empty-object.js.map +1 -1
  64. package/build/video/tracks-editor.js +9 -11
  65. package/build/video/tracks-editor.js.map +1 -1
  66. package/build-module/comment-template/index.js +1 -1
  67. package/build-module/comments/deprecated.js +54 -0
  68. package/build-module/comments/deprecated.js.map +1 -0
  69. package/build-module/comments/index.js +4 -2
  70. package/build-module/comments/index.js.map +1 -1
  71. package/build-module/comments-pagination/index.js +1 -1
  72. package/build-module/comments-title/deprecated.js +1 -1
  73. package/build-module/comments-title/index.js +1 -1
  74. package/build-module/cover/edit/block-controls.js +3 -13
  75. package/build-module/cover/edit/block-controls.js.map +1 -1
  76. package/build-module/cover/edit/cover-placeholder.js +3 -1
  77. package/build-module/cover/edit/cover-placeholder.js.map +1 -1
  78. package/build-module/cover/edit/index.js +19 -4
  79. package/build-module/cover/edit/index.js.map +1 -1
  80. package/build-module/gallery/edit.js +9 -16
  81. package/build-module/gallery/edit.js.map +1 -1
  82. package/build-module/gallery/transforms.js +30 -20
  83. package/build-module/gallery/transforms.js.map +1 -1
  84. package/build-module/gallery/use-get-media.js +6 -16
  85. package/build-module/gallery/use-get-media.js.map +1 -1
  86. package/build-module/group/edit.js +1 -3
  87. package/build-module/group/edit.js.map +1 -1
  88. package/build-module/heading/heading-level-dropdown.js +2 -1
  89. package/build-module/heading/heading-level-dropdown.js.map +1 -1
  90. package/build-module/heading/index.js +9 -4
  91. package/build-module/heading/index.js.map +1 -1
  92. package/build-module/latest-posts/edit.js +2 -2
  93. package/build-module/latest-posts/edit.js.map +1 -1
  94. package/build-module/more/edit.js +2 -4
  95. package/build-module/more/edit.js.map +1 -1
  96. package/build-module/navigation/view.js +7 -4
  97. package/build-module/navigation/view.js.map +1 -1
  98. package/build-module/navigation-link/hooks.js +0 -13
  99. package/build-module/navigation-link/hooks.js.map +1 -1
  100. package/build-module/navigation-link/index.js +1 -1
  101. package/build-module/navigation-link/index.js.map +1 -1
  102. package/build-module/navigation-submenu/view.js +7 -4
  103. package/build-module/navigation-submenu/view.js.map +1 -1
  104. package/build-module/nextpage/edit.js +1 -3
  105. package/build-module/nextpage/edit.js.map +1 -1
  106. package/build-module/page-list/edit.js +2 -2
  107. package/build-module/page-list/edit.js.map +1 -1
  108. package/build-module/post-comments-form/edit.js +2 -4
  109. package/build-module/post-comments-form/edit.js.map +1 -1
  110. package/build-module/post-terms/index.js +1 -1
  111. package/build-module/post-terms/index.js.map +1 -1
  112. package/build-module/post-title/index.js +1 -0
  113. package/build-module/post-title/index.js.map +1 -1
  114. package/build-module/query/edit/inspector-controls/index.js +1 -1
  115. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  116. package/build-module/query/index.js +1 -1
  117. package/build-module/query/index.js.map +1 -1
  118. package/build-module/site-logo/edit.js +5 -13
  119. package/build-module/site-logo/edit.js.map +1 -1
  120. package/build-module/site-title/edit/level-toolbar.js +2 -1
  121. package/build-module/site-title/edit/level-toolbar.js.map +1 -1
  122. package/build-module/template-part/index.js +1 -1
  123. package/build-module/template-part/index.js.map +1 -1
  124. package/build-module/template-part/variations.js +0 -13
  125. package/build-module/template-part/variations.js.map +1 -1
  126. package/build-module/utils/clean-empty-object.js +5 -2
  127. package/build-module/utils/clean-empty-object.js.map +1 -1
  128. package/build-module/video/tracks-editor.js +9 -11
  129. package/build-module/video/tracks-editor.js.map +1 -1
  130. package/build-style/comment-template/style-rtl.css +12 -0
  131. package/build-style/comment-template/style.css +12 -0
  132. package/build-style/editor-rtl.css +1 -1
  133. package/build-style/editor.css +1 -1
  134. package/build-style/elements-rtl.css +82 -0
  135. package/build-style/elements.css +82 -0
  136. package/build-style/query/editor-rtl.css +1 -1
  137. package/build-style/query/editor.css +1 -1
  138. package/build-style/search/theme-rtl.css +5 -0
  139. package/build-style/search/theme.css +5 -0
  140. package/build-style/style-rtl.css +19 -0
  141. package/build-style/style.css +19 -0
  142. package/build-style/theme-rtl.css +5 -0
  143. package/build-style/theme.css +5 -0
  144. package/package.json +28 -28
  145. package/src/comment-template/block.json +1 -1
  146. package/src/comment-template/style.scss +14 -0
  147. package/src/comments/block.json +1 -1
  148. package/src/comments/deprecated.js +53 -0
  149. package/src/comments/index.js +2 -0
  150. package/src/comments-pagination/block.json +1 -1
  151. package/src/comments-title/block.json +1 -1
  152. package/src/cover/edit/block-controls.js +4 -20
  153. package/src/cover/edit/cover-placeholder.js +2 -0
  154. package/src/cover/edit/index.js +16 -0
  155. package/src/elements.scss +6 -0
  156. package/src/gallery/edit.js +8 -21
  157. package/src/gallery/index.php +1 -1
  158. package/src/gallery/transforms.js +25 -10
  159. package/src/gallery/use-get-media.js +11 -28
  160. package/src/group/edit.js +1 -3
  161. package/src/heading/heading-level-dropdown.js +1 -0
  162. package/src/heading/index.js +8 -2
  163. package/src/latest-posts/edit.js +2 -6
  164. package/src/more/edit.js +9 -11
  165. package/src/navigation/style.scss +1 -1
  166. package/src/navigation/view.js +6 -6
  167. package/src/navigation-link/hooks.js +0 -14
  168. package/src/navigation-link/index.js +1 -1
  169. package/src/navigation-link/test/__snapshots__/hooks.js.snap +0 -93
  170. package/src/navigation-link/test/hooks.js +0 -12
  171. package/src/navigation-submenu/view.js +6 -6
  172. package/src/nextpage/edit.js +1 -3
  173. package/src/page-list/edit.js +3 -5
  174. package/src/post-comments-form/edit.js +4 -7
  175. package/src/post-template/index.php +8 -14
  176. package/src/post-terms/index.js +1 -1
  177. package/src/post-title/block.json +1 -0
  178. package/src/query/edit/inspector-controls/index.js +1 -1
  179. package/src/query/editor.scss +1 -1
  180. package/src/query/index.js +1 -1
  181. package/src/query-no-results/index.php +10 -8
  182. package/src/search/theme.scss +5 -0
  183. package/src/site-logo/edit.js +2 -11
  184. package/src/site-title/edit/level-toolbar.js +1 -0
  185. package/src/social-link/index.php +16 -0
  186. package/src/style.scss +1 -0
  187. package/src/template-part/index.js +1 -1
  188. package/src/template-part/variations.js +0 -11
  189. package/src/utils/clean-empty-object.js +8 -2
  190. package/src/video/tracks-editor.js +1 -1
  191. package/build/gallery/use-short-code-transform.js +0 -64
  192. package/build/gallery/use-short-code-transform.js.map +0 -1
  193. package/build/navigation-link/fallback-variations.js +0 -75
  194. package/build/navigation-link/fallback-variations.js.map +0 -1
  195. package/build/template-part/fallback-variations.js +0 -59
  196. package/build/template-part/fallback-variations.js.map +0 -1
  197. package/build-module/gallery/use-short-code-transform.js +0 -54
  198. package/build-module/gallery/use-short-code-transform.js.map +0 -1
  199. package/build-module/navigation-link/fallback-variations.js +0 -65
  200. package/build-module/navigation-link/fallback-variations.js.map +0 -1
  201. package/build-module/template-part/fallback-variations.js +0 -47
  202. package/build-module/template-part/fallback-variations.js.map +0 -1
  203. package/src/gallery/use-short-code-transform.js +0 -55
  204. package/src/navigation-link/fallback-variations.js +0 -65
  205. package/src/template-part/fallback-variations.js +0 -51
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/video/tracks-editor.js"],"names":["ALLOWED_TYPES","DEFAULT_KIND","KIND_OPTIONS","label","value","captionIcon","TrackList","tracks","onEditPress","content","length","map","track","index","SingleTrackEditor","onChange","onClose","onRemove","src","srcLang","kind","fileName","startsWith","newLabel","newSrcLang","newKind","changes","hasChanges","undefined","TracksEditor","mediaUpload","select","blockEditorStore","getSettings","trackBeingEdited","setTrackBeingEdited","isOpen","onToggle","newTrack","newTracks","filter","_track","url","trackIndex","open","media","event","files","target","allowedTypes","filesList","onFileChange","openFileDialog","upload"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tNavigableMenu,\n\tMenuItem,\n\tFormFileUpload,\n\tMenuGroup,\n\tToolbarButton,\n\tDropdown,\n\tSVG,\n\tRect,\n\tPath,\n\tButton,\n\tTextControl,\n\tSelectControl,\n} from '@wordpress/components';\nimport {\n\tMediaUpload,\n\tMediaUploadCheck,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { upload, media } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { getFilename } from '@wordpress/url';\n\nconst ALLOWED_TYPES = [ 'text/vtt' ];\n\nconst DEFAULT_KIND = 'subtitles';\n\nconst KIND_OPTIONS = [\n\t{ label: __( 'Subtitles' ), value: 'subtitles' },\n\t{ label: __( 'Captions' ), value: 'captions' },\n\t{ label: __( 'Descriptions' ), value: 'descriptions' },\n\t{ label: __( 'Chapters' ), value: 'chapters' },\n\t{ label: __( 'Metadata' ), value: 'metadata' },\n];\n\nconst captionIcon = (\n\t<SVG width=\"18\" height=\"14\" viewBox=\"0 0 18 14\" role=\"img\" fill=\"none\">\n\t\t<Rect\n\t\t\tx=\"0.75\"\n\t\t\ty=\"0.75\"\n\t\t\twidth=\"16.5\"\n\t\t\theight=\"12.5\"\n\t\t\trx=\"1.25\"\n\t\t\tstroke=\"black\"\n\t\t\tstrokeWidth=\"1.5\"\n\t\t\tfill=\"none\"\n\t\t/>\n\t\t<Path d=\"M3 7H15\" stroke=\"black\" strokeWidth=\"1.5\" />\n\t\t<Path d=\"M3 10L15 10\" stroke=\"black\" strokeWidth=\"1.5\" />\n\t</SVG>\n);\n\nfunction TrackList( { tracks, onEditPress } ) {\n\tlet content;\n\tif ( tracks.length === 0 ) {\n\t\tcontent = (\n\t\t\t<p className=\"block-library-video-tracks-editor__tracks-informative-message\">\n\t\t\t\t{ __(\n\t\t\t\t\t'Tracks can be subtitles, captions, chapters, or descriptions. They help make your content more accessible to a wider range of users.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t);\n\t} else {\n\t\tcontent = tracks.map( ( track, index ) => {\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tkey={ index }\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__track-list-track\"\n\t\t\t\t>\n\t\t\t\t\t<span>{ track.label } </span>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => onEditPress( index ) }\n\t\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the video text track e.g: \"French subtitles\" */\n\t\t\t\t\t\t\t__( 'Edit %s' ),\n\t\t\t\t\t\t\ttrack.label\n\t\t\t\t\t\t) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t);\n\t\t} );\n\t}\n\treturn (\n\t\t<MenuGroup\n\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\tclassName=\"block-library-video-tracks-editor__track-list\"\n\t\t>\n\t\t\t{ content }\n\t\t</MenuGroup>\n\t);\n}\n\nfunction SingleTrackEditor( { track, onChange, onClose, onRemove } ) {\n\tconst { src = '', label = '', srcLang = '', kind = DEFAULT_KIND } = track;\n\tconst fileName = src.startsWith( 'blob:' ) ? '' : getFilename( src ) || '';\n\treturn (\n\t\t<NavigableMenu>\n\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor\">\n\t\t\t\t<span className=\"block-library-video-tracks-editor__single-track-editor-edit-track-label\">\n\t\t\t\t\t{ __( 'Edit track' ) }\n\t\t\t\t</span>\n\t\t\t\t<span>\n\t\t\t\t\t{ __( 'File' ) }: <b>{ fileName }</b>\n\t\t\t\t</span>\n\t\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor-label-language\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tautoFocus\n\t\t\t\t\t\t/* eslint-enable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tlabel: newLabel,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\thelp={ __( 'Title of track' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tonChange={ ( newSrcLang ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tsrcLang: newSrcLang,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Source language' ) }\n\t\t\t\t\t\tvalue={ srcLang }\n\t\t\t\t\t\thelp={ __( 'Language tag (en, fr, etc.)' ) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<SelectControl\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor-kind-select\"\n\t\t\t\t\toptions={ KIND_OPTIONS }\n\t\t\t\t\tvalue={ kind }\n\t\t\t\t\tlabel={ __( 'Kind' ) }\n\t\t\t\t\tonChange={ ( newKind ) => {\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\tkind: newKind,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor-buttons-container\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tconst changes = {};\n\t\t\t\t\t\t\tlet hasChanges = false;\n\t\t\t\t\t\t\tif ( label === '' ) {\n\t\t\t\t\t\t\t\tchanges.label = __( 'English' );\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( srcLang === '' ) {\n\t\t\t\t\t\t\t\tchanges.srcLang = 'en';\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( track.kind === undefined ) {\n\t\t\t\t\t\t\t\tchanges.kind = DEFAULT_KIND;\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( hasChanges ) {\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\t\t...changes,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Close' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button isDestructive variant=\"link\" onClick={ onRemove }>\n\t\t\t\t\t\t{ __( 'Remove track' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</NavigableMenu>\n\t);\n}\n\nexport default function TracksEditor( { tracks = [], onChange } ) {\n\tconst mediaUpload = useSelect( ( select ) => {\n\t\treturn select( blockEditorStore ).getSettings().mediaUpload;\n\t}, [] );\n\tconst [ trackBeingEdited, setTrackBeingEdited ] = useState( null );\n\n\tif ( ! mediaUpload ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Dropdown\n\t\t\tcontentClassName=\"block-library-video-tracks-editor\"\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\t\t\tshowTooltip\n\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\ticon={ captionIcon }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\trenderContent={ ( {} ) => {\n\t\t\t\tif ( trackBeingEdited !== null ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<SingleTrackEditor\n\t\t\t\t\t\t\ttrack={ tracks[ trackBeingEdited ] }\n\t\t\t\t\t\t\tonChange={ ( newTrack ) => {\n\t\t\t\t\t\t\t\tconst newTracks = [ ...tracks ];\n\t\t\t\t\t\t\t\tnewTracks[ trackBeingEdited ] = newTrack;\n\t\t\t\t\t\t\t\tonChange( newTracks );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonClose={ () => setTrackBeingEdited( null ) }\n\t\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\ttracks.filter(\n\t\t\t\t\t\t\t\t\t\t( _track, index ) =>\n\t\t\t\t\t\t\t\t\t\t\tindex !== trackBeingEdited\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\tsetTrackBeingEdited( null );\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}\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<NavigableMenu>\n\t\t\t\t\t\t\t<TrackList\n\t\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\t\tonEditPress={ setTrackBeingEdited }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<MenuGroup\n\t\t\t\t\t\t\t\tclassName=\"block-library-video-tracks-editor__add-tracks-container\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Add tracks' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\t\tonSelect={ ( { url } ) => {\n\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\tonChange( [ ...tracks, { src: url } ] );\n\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited( trackIndex );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_TYPES }\n\t\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\ticon={ media }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\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\t<MediaUploadCheck>\n\t\t\t\t\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\t\t\t\t\tonChange={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\t\tconst files = event.target.files;\n\t\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\t\tmediaUpload( {\n\t\t\t\t\t\t\t\t\t\t\t\tallowedTypes: ALLOWED_TYPES,\n\t\t\t\t\t\t\t\t\t\t\t\tfilesList: files,\n\t\t\t\t\t\t\t\t\t\t\t\tonFileChange: ( [\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ url },\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\tconst newTracks = [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks,\n\t\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\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t! newTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\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) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\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}\n\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[ trackIndex ] = {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks[ trackIndex ],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsrc: url,\n\t\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\tonChange( newTracks );\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\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},\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\taccept=\".vtt,text/vtt\"\n\t\t\t\t\t\t\t\t\t\trender={ ( { openFileDialog } ) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\topenFileDialog();\n\t\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>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'Upload' ) }\n\t\t\t\t\t\t\t\t\t\t\t\t</MenuItem>\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</MediaUploadCheck>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t</>\n\t\t\t\t);\n\t\t\t} }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/video/tracks-editor.js"],"names":["ALLOWED_TYPES","DEFAULT_KIND","KIND_OPTIONS","label","value","captionIcon","TrackList","tracks","onEditPress","content","length","map","track","index","SingleTrackEditor","onChange","onClose","onRemove","src","srcLang","kind","fileName","startsWith","newLabel","newSrcLang","newKind","changes","hasChanges","undefined","TracksEditor","mediaUpload","select","blockEditorStore","getSettings","trackBeingEdited","setTrackBeingEdited","isOpen","onToggle","newTrack","newTracks","filter","_track","url","trackIndex","open","media","event","files","target","allowedTypes","filesList","onFileChange","openFileDialog","upload"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tNavigableMenu,\n\tMenuItem,\n\tFormFileUpload,\n\tMenuGroup,\n\tToolbarButton,\n\tDropdown,\n\tSVG,\n\tRect,\n\tPath,\n\tButton,\n\tTextControl,\n\tSelectControl,\n} from '@wordpress/components';\nimport {\n\tMediaUpload,\n\tMediaUploadCheck,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { upload, media } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { getFilename } from '@wordpress/url';\n\nconst ALLOWED_TYPES = [ 'text/vtt' ];\n\nconst DEFAULT_KIND = 'subtitles';\n\nconst KIND_OPTIONS = [\n\t{ label: __( 'Subtitles' ), value: 'subtitles' },\n\t{ label: __( 'Captions' ), value: 'captions' },\n\t{ label: __( 'Descriptions' ), value: 'descriptions' },\n\t{ label: __( 'Chapters' ), value: 'chapters' },\n\t{ label: __( 'Metadata' ), value: 'metadata' },\n];\n\nconst captionIcon = (\n\t<SVG width=\"18\" height=\"14\" viewBox=\"0 0 18 14\" role=\"img\" fill=\"none\">\n\t\t<Rect\n\t\t\tx=\"0.75\"\n\t\t\ty=\"0.75\"\n\t\t\twidth=\"16.5\"\n\t\t\theight=\"12.5\"\n\t\t\trx=\"1.25\"\n\t\t\tstroke=\"black\"\n\t\t\tstrokeWidth=\"1.5\"\n\t\t\tfill=\"none\"\n\t\t/>\n\t\t<Path d=\"M3 7H15\" stroke=\"black\" strokeWidth=\"1.5\" />\n\t\t<Path d=\"M3 10L15 10\" stroke=\"black\" strokeWidth=\"1.5\" />\n\t</SVG>\n);\n\nfunction TrackList( { tracks, onEditPress } ) {\n\tlet content;\n\tif ( tracks.length === 0 ) {\n\t\tcontent = (\n\t\t\t<p className=\"block-library-video-tracks-editor__tracks-informative-message\">\n\t\t\t\t{ __(\n\t\t\t\t\t'Tracks can be subtitles, captions, chapters, or descriptions. They help make your content more accessible to a wider range of users.'\n\t\t\t\t) }\n\t\t\t</p>\n\t\t);\n\t} else {\n\t\tcontent = tracks.map( ( track, index ) => {\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tkey={ index }\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__track-list-track\"\n\t\t\t\t>\n\t\t\t\t\t<span>{ track.label } </span>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\tonClick={ () => onEditPress( index ) }\n\t\t\t\t\t\taria-label={ sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the video text track e.g: \"French subtitles\" */\n\t\t\t\t\t\t\t__( 'Edit %s' ),\n\t\t\t\t\t\t\ttrack.label\n\t\t\t\t\t\t) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t);\n\t\t} );\n\t}\n\treturn (\n\t\t<MenuGroup\n\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\tclassName=\"block-library-video-tracks-editor__track-list\"\n\t\t>\n\t\t\t{ content }\n\t\t</MenuGroup>\n\t);\n}\n\nfunction SingleTrackEditor( { track, onChange, onClose, onRemove } ) {\n\tconst { src = '', label = '', srcLang = '', kind = DEFAULT_KIND } = track;\n\tconst fileName = src.startsWith( 'blob:' ) ? '' : getFilename( src ) || '';\n\treturn (\n\t\t<NavigableMenu>\n\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor\">\n\t\t\t\t<span className=\"block-library-video-tracks-editor__single-track-editor-edit-track-label\">\n\t\t\t\t\t{ __( 'Edit track' ) }\n\t\t\t\t</span>\n\t\t\t\t<span>\n\t\t\t\t\t{ __( 'File' ) }: <b>{ fileName }</b>\n\t\t\t\t</span>\n\t\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor-label-language\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t/* eslint-disable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tautoFocus\n\t\t\t\t\t\t/* eslint-enable jsx-a11y/no-autofocus */\n\t\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tlabel: newLabel,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Label' ) }\n\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\thelp={ __( 'Title of track' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tonChange={ ( newSrcLang ) =>\n\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\tsrcLang: newSrcLang,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tlabel={ __( 'Source language' ) }\n\t\t\t\t\t\tvalue={ srcLang }\n\t\t\t\t\t\thelp={ __( 'Language tag (en, fr, etc.)' ) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<SelectControl\n\t\t\t\t\tclassName=\"block-library-video-tracks-editor__single-track-editor-kind-select\"\n\t\t\t\t\toptions={ KIND_OPTIONS }\n\t\t\t\t\tvalue={ kind }\n\t\t\t\t\tlabel={ __( 'Kind' ) }\n\t\t\t\t\tonChange={ ( newKind ) => {\n\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\tkind: newKind,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t<div className=\"block-library-video-tracks-editor__single-track-editor-buttons-container\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tconst changes = {};\n\t\t\t\t\t\t\tlet hasChanges = false;\n\t\t\t\t\t\t\tif ( label === '' ) {\n\t\t\t\t\t\t\t\tchanges.label = __( 'English' );\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( srcLang === '' ) {\n\t\t\t\t\t\t\t\tchanges.srcLang = 'en';\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( track.kind === undefined ) {\n\t\t\t\t\t\t\t\tchanges.kind = DEFAULT_KIND;\n\t\t\t\t\t\t\t\thasChanges = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif ( hasChanges ) {\n\t\t\t\t\t\t\t\tonChange( {\n\t\t\t\t\t\t\t\t\t...track,\n\t\t\t\t\t\t\t\t\t...changes,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Close' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button isDestructive variant=\"link\" onClick={ onRemove }>\n\t\t\t\t\t\t{ __( 'Remove track' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</NavigableMenu>\n\t);\n}\n\nexport default function TracksEditor( { tracks = [], onChange } ) {\n\tconst mediaUpload = useSelect( ( select ) => {\n\t\treturn select( blockEditorStore ).getSettings().mediaUpload;\n\t}, [] );\n\tconst [ trackBeingEdited, setTrackBeingEdited ] = useState( null );\n\n\tif ( ! mediaUpload ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Dropdown\n\t\t\tcontentClassName=\"block-library-video-tracks-editor\"\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<ToolbarButton\n\t\t\t\t\tlabel={ __( 'Text tracks' ) }\n\t\t\t\t\tshowTooltip\n\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\ticon={ captionIcon }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\trenderContent={ () => {\n\t\t\t\tif ( trackBeingEdited !== null ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<SingleTrackEditor\n\t\t\t\t\t\t\ttrack={ tracks[ trackBeingEdited ] }\n\t\t\t\t\t\t\tonChange={ ( newTrack ) => {\n\t\t\t\t\t\t\t\tconst newTracks = [ ...tracks ];\n\t\t\t\t\t\t\t\tnewTracks[ trackBeingEdited ] = newTrack;\n\t\t\t\t\t\t\t\tonChange( newTracks );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tonClose={ () => setTrackBeingEdited( null ) }\n\t\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\t\tonChange(\n\t\t\t\t\t\t\t\t\ttracks.filter(\n\t\t\t\t\t\t\t\t\t\t( _track, index ) =>\n\t\t\t\t\t\t\t\t\t\t\tindex !== trackBeingEdited\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\tsetTrackBeingEdited( null );\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}\n\t\t\t\treturn (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<NavigableMenu>\n\t\t\t\t\t\t\t<TrackList\n\t\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\t\tonEditPress={ setTrackBeingEdited }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<MenuGroup\n\t\t\t\t\t\t\t\tclassName=\"block-library-video-tracks-editor__add-tracks-container\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Add tracks' ) }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\t\tonSelect={ ( { url } ) => {\n\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\tonChange( [ ...tracks, { src: url } ] );\n\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited( trackIndex );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_TYPES }\n\t\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\ticon={ media }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Open Media Library' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\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\t<MediaUploadCheck>\n\t\t\t\t\t\t\t\t\t<FormFileUpload\n\t\t\t\t\t\t\t\t\t\tonChange={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\t\tconst files = event.target.files;\n\t\t\t\t\t\t\t\t\t\t\tconst trackIndex = tracks.length;\n\t\t\t\t\t\t\t\t\t\t\tmediaUpload( {\n\t\t\t\t\t\t\t\t\t\t\t\tallowedTypes: ALLOWED_TYPES,\n\t\t\t\t\t\t\t\t\t\t\t\tfilesList: files,\n\t\t\t\t\t\t\t\t\t\t\t\tonFileChange: ( [\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ url },\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\tconst newTracks = [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks,\n\t\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\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t! newTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\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) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\t\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}\n\t\t\t\t\t\t\t\t\t\t\t\t\tnewTracks[ trackIndex ] = {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t...tracks[ trackIndex ],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsrc: url,\n\t\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\tonChange( newTracks );\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetTrackBeingEdited(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttrackIndex\n\t\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},\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\taccept=\".vtt,text/vtt\"\n\t\t\t\t\t\t\t\t\t\trender={ ( { openFileDialog } ) => {\n\t\t\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\topenFileDialog();\n\t\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>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'Upload' ) }\n\t\t\t\t\t\t\t\t\t\t\t\t</MenuItem>\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</MediaUploadCheck>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t</NavigableMenu>\n\t\t\t\t\t</>\n\t\t\t\t);\n\t\t\t} }\n\t\t/>\n\t);\n}\n"]}
@@ -12,7 +12,7 @@ const metadata = {
12
12
  name: "core/comment-template",
13
13
  title: "Comment Template",
14
14
  category: "design",
15
- parent: ["core/comments-query-loop"],
15
+ parent: ["core/comments"],
16
16
  description: "Contains the block elements used to display a comment, like the title, date, author, avatar and more.",
17
17
  textdomain: "default",
18
18
  usesContext: ["postId"],
@@ -0,0 +1,54 @@
1
+ import { createElement } from "@wordpress/element";
2
+
3
+ /**
4
+ * WordPress dependencies
5
+ */
6
+ import { InnerBlocks, useBlockProps } from '@wordpress/block-editor'; // v1: Deprecate the initial version of the block which was called "Comments
7
+ // Query Loop" instead of "Comments".
8
+
9
+ const v1 = {
10
+ attributes: {
11
+ tagName: {
12
+ type: 'string',
13
+ default: 'div'
14
+ }
15
+ },
16
+ apiVersion: 2,
17
+ supports: {
18
+ align: ['wide', 'full'],
19
+ html: false,
20
+ color: {
21
+ gradients: true,
22
+ link: true,
23
+ __experimentalDefaultControls: {
24
+ background: true,
25
+ text: true,
26
+ link: true
27
+ }
28
+ }
29
+ },
30
+
31
+ save(_ref) {
32
+ let {
33
+ attributes: {
34
+ tagName: Tag
35
+ }
36
+ } = _ref;
37
+ const blockProps = useBlockProps.save();
38
+ const {
39
+ className
40
+ } = blockProps;
41
+ const classes = (className === null || className === void 0 ? void 0 : className.split(' ')) || []; // The ID of the previous version of the block
42
+ // didn't have the `wp-block-comments` class,
43
+ // so we need to remove it here in order to mimic it.
44
+
45
+ const newClasses = classes === null || classes === void 0 ? void 0 : classes.filter(cls => cls !== 'wp-block-comments');
46
+ const newBlockProps = { ...blockProps,
47
+ className: newClasses.join(' ')
48
+ };
49
+ return createElement(Tag, newBlockProps, createElement(InnerBlocks.Content, null));
50
+ }
51
+
52
+ };
53
+ export default [v1];
54
+ //# sourceMappingURL=deprecated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/block-library/src/comments/deprecated.js"],"names":["InnerBlocks","useBlockProps","v1","attributes","tagName","type","default","apiVersion","supports","align","html","color","gradients","link","__experimentalDefaultControls","background","text","save","Tag","blockProps","className","classes","split","newClasses","filter","cls","newBlockProps","join"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,WAAT,EAAsBC,aAAtB,QAA2C,yBAA3C,C,CAEA;AACA;;AACA,MAAMC,EAAE,GAAG;AACVC,EAAAA,UAAU,EAAE;AACXC,IAAAA,OAAO,EAAE;AACRC,MAAAA,IAAI,EAAE,QADE;AAERC,MAAAA,OAAO,EAAE;AAFD;AADE,GADF;AAOVC,EAAAA,UAAU,EAAE,CAPF;AAQVC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,KAAK,EAAE,CAAE,MAAF,EAAU,MAAV,CADE;AAETC,IAAAA,IAAI,EAAE,KAFG;AAGTC,IAAAA,KAAK,EAAE;AACNC,MAAAA,SAAS,EAAE,IADL;AAENC,MAAAA,IAAI,EAAE,IAFA;AAGNC,MAAAA,6BAA6B,EAAE;AAC9BC,QAAAA,UAAU,EAAE,IADkB;AAE9BC,QAAAA,IAAI,EAAE,IAFwB;AAG9BH,QAAAA,IAAI,EAAE;AAHwB;AAHzB;AAHE,GARA;;AAqBVI,EAAAA,IAAI,OAAqC;AAAA,QAAnC;AAAEd,MAAAA,UAAU,EAAE;AAAEC,QAAAA,OAAO,EAAEc;AAAX;AAAd,KAAmC;AACxC,UAAMC,UAAU,GAAGlB,aAAa,CAACgB,IAAd,EAAnB;AACA,UAAM;AAAEG,MAAAA;AAAF,QAAgBD,UAAtB;AACA,UAAME,OAAO,GAAG,CAAAD,SAAS,SAAT,IAAAA,SAAS,WAAT,YAAAA,SAAS,CAAEE,KAAX,CAAkB,GAAlB,MAA2B,EAA3C,CAHwC,CAKxC;AACA;AACA;;AACA,UAAMC,UAAU,GAAGF,OAAH,aAAGA,OAAH,uBAAGA,OAAO,CAAEG,MAAT,CAChBC,GAAF,IAAWA,GAAG,KAAK,mBADD,CAAnB;AAGA,UAAMC,aAAa,GAAG,EACrB,GAAGP,UADkB;AAErBC,MAAAA,SAAS,EAAEG,UAAU,CAACI,IAAX,CAAiB,GAAjB;AAFU,KAAtB;AAKA,WACC,cAAC,GAAD,EAAUD,aAAV,EACC,cAAC,WAAD,CAAa,OAAb,OADD,CADD;AAKA;;AA1CS,CAAX;AA6CA,eAAe,CAAExB,EAAF,CAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { InnerBlocks, useBlockProps } from '@wordpress/block-editor';\n\n// v1: Deprecate the initial version of the block which was called \"Comments\n// Query Loop\" instead of \"Comments\".\nconst v1 = {\n\tattributes: {\n\t\ttagName: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'div',\n\t\t},\n\t},\n\tapiVersion: 2,\n\tsupports: {\n\t\talign: [ 'wide', 'full' ],\n\t\thtml: false,\n\t\tcolor: {\n\t\t\tgradients: true,\n\t\t\tlink: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tbackground: true,\n\t\t\t\ttext: true,\n\t\t\t\tlink: true,\n\t\t\t},\n\t\t},\n\t},\n\tsave( { attributes: { tagName: Tag } } ) {\n\t\tconst blockProps = useBlockProps.save();\n\t\tconst { className } = blockProps;\n\t\tconst classes = className?.split( ' ' ) || [];\n\n\t\t// The ID of the previous version of the block\n\t\t// didn't have the `wp-block-comments` class,\n\t\t// so we need to remove it here in order to mimic it.\n\t\tconst newClasses = classes?.filter(\n\t\t\t( cls ) => cls !== 'wp-block-comments'\n\t\t);\n\t\tconst newBlockProps = {\n\t\t\t...blockProps,\n\t\t\tclassName: newClasses.join( ' ' ),\n\t\t};\n\n\t\treturn (\n\t\t\t<Tag { ...newBlockProps }>\n\t\t\t\t<InnerBlocks.Content />\n\t\t\t</Tag>\n\t\t);\n\t},\n};\n\nexport default [ v1 ];\n"]}
@@ -9,7 +9,7 @@ import { postComments as icon } from '@wordpress/icons';
9
9
  const metadata = {
10
10
  $schema: "https://schemas.wp.org/trunk/block.json",
11
11
  apiVersion: 2,
12
- name: "core/comments-query-loop",
12
+ name: "core/comments",
13
13
  title: "Comments",
14
14
  category: "theme",
15
15
  description: "An advanced block that allows displaying post comments using different visual configurations.",
@@ -35,6 +35,7 @@ const metadata = {
35
35
  },
36
36
  editorStyle: "wp-block-comments-editor"
37
37
  };
38
+ import deprecated from './deprecated';
38
39
  import edit from './edit';
39
40
  import save from './save';
40
41
  const {
@@ -44,6 +45,7 @@ export { metadata, name };
44
45
  export const settings = {
45
46
  icon,
46
47
  edit,
47
- save
48
+ save,
49
+ deprecated
48
50
  };
49
51
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/comments/index.js"],"names":["postComments","icon","edit","save","name","metadata","settings"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAY,IAAIC,IAAzB,QAAqC,kBAArC;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,IAAP,MAAiB,QAAjB;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 { postComments as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport save from './save';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tsave,\n};\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/comments/index.js"],"names":["postComments","icon","deprecated","edit","save","name","metadata","settings"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,YAAY,IAAIC,IAAzB,QAAqC,kBAArC;AAEA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,IAAP,MAAiB,QAAjB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AACA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBN,EAAAA,IADuB;AAEvBE,EAAAA,IAFuB;AAGvBC,EAAAA,IAHuB;AAIvBF,EAAAA;AAJuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { postComments as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport save from './save';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n"]}
@@ -12,7 +12,7 @@ const metadata = {
12
12
  name: "core/comments-pagination",
13
13
  title: "Comments Pagination",
14
14
  category: "theme",
15
- parent: ["core/comments-query-loop"],
15
+ parent: ["core/comments"],
16
16
  description: "Displays a paginated navigation to next/previous set of comments, when applicable.",
17
17
  textdomain: "default",
18
18
  attributes: {
@@ -7,7 +7,7 @@ const metadata = {
7
7
  name: "core/comments-title",
8
8
  title: "Comments Title",
9
9
  category: "theme",
10
- ancestor: ["core/comments-query-loop"],
10
+ ancestor: ["core/comments"],
11
11
  description: "Displays a title with the number of comments",
12
12
  textdomain: "default",
13
13
  usesContext: ["postId", "postType"],
@@ -12,7 +12,7 @@ const metadata = {
12
12
  name: "core/comments-title",
13
13
  title: "Comments Title",
14
14
  category: "theme",
15
- ancestor: ["core/comments-query-loop"],
15
+ ancestor: ["core/comments"],
16
16
  description: "Displays a title with the number of comments",
17
17
  textdomain: "default",
18
18
  usesContext: ["postId", "postType"],
@@ -10,19 +10,19 @@ import { __ } from '@wordpress/i18n';
10
10
  * Internal dependencies
11
11
  */
12
12
 
13
- import { ALLOWED_MEDIA_TYPES, IMAGE_BACKGROUND_TYPE } from '../shared';
13
+ import { ALLOWED_MEDIA_TYPES } from '../shared';
14
14
  export default function CoverBlockControls(_ref) {
15
15
  let {
16
16
  attributes,
17
17
  setAttributes,
18
18
  onSelectMedia,
19
- currentSettings
19
+ currentSettings,
20
+ toggleUseFeaturedImage
20
21
  } = _ref;
21
22
  const {
22
23
  contentPosition,
23
24
  id,
24
25
  useFeaturedImage,
25
- dimRatio,
26
26
  minHeight,
27
27
  minHeightUnit
28
28
  } = attributes;
@@ -60,16 +60,6 @@ export default function CoverBlockControls(_ref) {
60
60
  });
61
61
  };
62
62
 
63
- const toggleUseFeaturedImage = () => {
64
- setAttributes({
65
- id: undefined,
66
- url: undefined,
67
- useFeaturedImage: !useFeaturedImage,
68
- dimRatio: dimRatio === 100 ? 50 : dimRatio,
69
- backgroundType: useFeaturedImage ? IMAGE_BACKGROUND_TYPE : undefined
70
- });
71
- };
72
-
73
63
  return createElement(Fragment, null, createElement(BlockControls, {
74
64
  group: "block"
75
65
  }, createElement(BlockAlignmentMatrixControl, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/cover/edit/block-controls.js"],"names":["useState","BlockControls","MediaReplaceFlow","__experimentalBlockAlignmentMatrixControl","BlockAlignmentMatrixControl","__experimentalBlockFullHeightAligmentControl","FullHeightAlignmentControl","__","ALLOWED_MEDIA_TYPES","IMAGE_BACKGROUND_TYPE","CoverBlockControls","attributes","setAttributes","onSelectMedia","currentSettings","contentPosition","id","useFeaturedImage","dimRatio","minHeight","minHeightUnit","hasInnerBlocks","url","prevMinHeightValue","setPrevMinHeightValue","prevMinHeightUnit","setPrevMinHeightUnit","isMinFullHeight","toggleMinFullHeight","undefined","toggleUseFeaturedImage","backgroundType","nextPosition"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\n\nimport {\n\tBlockControls,\n\tMediaReplaceFlow,\n\t__experimentalBlockAlignmentMatrixControl as BlockAlignmentMatrixControl,\n\t__experimentalBlockFullHeightAligmentControl as FullHeightAlignmentControl,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_MEDIA_TYPES, IMAGE_BACKGROUND_TYPE } from '../shared';\n\nexport default function CoverBlockControls( {\n\tattributes,\n\tsetAttributes,\n\tonSelectMedia,\n\tcurrentSettings,\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t} = attributes;\n\tconst { hasInnerBlocks, url } = currentSettings;\n\n\tconst [ prevMinHeightValue, setPrevMinHeightValue ] = useState( minHeight );\n\tconst [ prevMinHeightUnit, setPrevMinHeightUnit ] =\n\t\tuseState( minHeightUnit );\n\tconst isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100;\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 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\treturn (\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<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"image/*,video/*\"\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\tonToggleFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t\tuseFeaturedImage={ useFeaturedImage }\n\t\t\t\t\tname={ ! url ? __( 'Add Media' ) : __( 'Replace' ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/cover/edit/block-controls.js"],"names":["useState","BlockControls","MediaReplaceFlow","__experimentalBlockAlignmentMatrixControl","BlockAlignmentMatrixControl","__experimentalBlockFullHeightAligmentControl","FullHeightAlignmentControl","__","ALLOWED_MEDIA_TYPES","CoverBlockControls","attributes","setAttributes","onSelectMedia","currentSettings","toggleUseFeaturedImage","contentPosition","id","useFeaturedImage","minHeight","minHeightUnit","hasInnerBlocks","url","prevMinHeightValue","setPrevMinHeightValue","prevMinHeightUnit","setPrevMinHeightUnit","isMinFullHeight","toggleMinFullHeight","undefined","nextPosition"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,QAAT,QAAyB,oBAAzB;AAEA,SACCC,aADD,EAECC,gBAFD,EAGCC,yCAAyC,IAAIC,2BAH9C,EAICC,4CAA4C,IAAIC,0BAJjD,QAKO,yBALP;AAMA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,SAASC,mBAAT,QAAoC,WAApC;AAEA,eAAe,SAASC,kBAAT,OAMX;AAAA,MANwC;AAC3CC,IAAAA,UAD2C;AAE3CC,IAAAA,aAF2C;AAG3CC,IAAAA,aAH2C;AAI3CC,IAAAA,eAJ2C;AAK3CC,IAAAA;AAL2C,GAMxC;AACH,QAAM;AAAEC,IAAAA,eAAF;AAAmBC,IAAAA,EAAnB;AAAuBC,IAAAA,gBAAvB;AAAyCC,IAAAA,SAAzC;AAAoDC,IAAAA;AAApD,MACLT,UADD;AAEA,QAAM;AAAEU,IAAAA,cAAF;AAAkBC,IAAAA;AAAlB,MAA0BR,eAAhC;AAEA,QAAM,CAAES,kBAAF,EAAsBC,qBAAtB,IAAgDvB,QAAQ,CAAEkB,SAAF,CAA9D;AACA,QAAM,CAAEM,iBAAF,EAAqBC,oBAArB,IACLzB,QAAQ,CAAEmB,aAAF,CADT;AAEA,QAAMO,eAAe,GAAGP,aAAa,KAAK,IAAlB,IAA0BD,SAAS,KAAK,GAAhE;;AACA,QAAMS,mBAAmB,GAAG,MAAM;AACjC,QAAKD,eAAL,EAAuB;AACtB;AACA,UAAKF,iBAAiB,KAAK,IAAtB,IAA8BF,kBAAkB,KAAK,GAA1D,EAAgE;AAC/D,eAAOX,aAAa,CAAE;AACrBO,UAAAA,SAAS,EAAEU,SADU;AAErBT,UAAAA,aAAa,EAAES;AAFM,SAAF,CAApB;AAIA,OAPqB,CAStB;;;AACA,aAAOjB,aAAa,CAAE;AACrBO,QAAAA,SAAS,EAAEI,kBADU;AAErBH,QAAAA,aAAa,EAAEK;AAFM,OAAF,CAApB;AAIA;;AAEDD,IAAAA,qBAAqB,CAAEL,SAAF,CAArB;AACAO,IAAAA,oBAAoB,CAAEN,aAAF,CAApB,CAlBiC,CAoBjC;;AACA,WAAOR,aAAa,CAAE;AACrBO,MAAAA,SAAS,EAAE,GADU;AAErBC,MAAAA,aAAa,EAAE;AAFM,KAAF,CAApB;AAIA,GAzBD;;AA2BA,SACC,8BACC,cAAC,aAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,cAAC,2BAAD;AACC,IAAA,KAAK,EAAGZ,EAAE,CAAE,yBAAF,CADX;AAEC,IAAA,KAAK,EAAGQ,eAFT;AAGC,IAAA,QAAQ,EAAKc,YAAF,IACVlB,aAAa,CAAE;AACdI,MAAAA,eAAe,EAAEc;AADH,KAAF,CAJf;AAQC,IAAA,UAAU,EAAG,CAAET;AARhB,IADD,EAWC,cAAC,0BAAD;AACC,IAAA,QAAQ,EAAGM,eADZ;AAEC,IAAA,QAAQ,EAAGC,mBAFZ;AAGC,IAAA,UAAU,EAAG,CAAEP;AAHhB,IAXD,CADD,EAkBC,cAAC,aAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,cAAC,gBAAD;AACC,IAAA,OAAO,EAAGJ,EADX;AAEC,IAAA,QAAQ,EAAGK,GAFZ;AAGC,IAAA,YAAY,EAAGb,mBAHhB;AAIC,IAAA,MAAM,EAAC,iBAJR;AAKC,IAAA,QAAQ,EAAGI,aALZ;AAMC,IAAA,qBAAqB,EAAGE,sBANzB;AAOC,IAAA,gBAAgB,EAAGG,gBAPpB;AAQC,IAAA,IAAI,EAAG,CAAEI,GAAF,GAAQd,EAAE,CAAE,WAAF,CAAV,GAA4BA,EAAE,CAAE,SAAF;AARtC,IADD,CAlBD,CADD;AAiCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\n\nimport {\n\tBlockControls,\n\tMediaReplaceFlow,\n\t__experimentalBlockAlignmentMatrixControl as BlockAlignmentMatrixControl,\n\t__experimentalBlockFullHeightAligmentControl as FullHeightAlignmentControl,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_MEDIA_TYPES } from '../shared';\n\nexport default function CoverBlockControls( {\n\tattributes,\n\tsetAttributes,\n\tonSelectMedia,\n\tcurrentSettings,\n\ttoggleUseFeaturedImage,\n} ) {\n\tconst { contentPosition, id, useFeaturedImage, minHeight, minHeightUnit } =\n\t\tattributes;\n\tconst { hasInnerBlocks, url } = currentSettings;\n\n\tconst [ prevMinHeightValue, setPrevMinHeightValue ] = useState( minHeight );\n\tconst [ prevMinHeightUnit, setPrevMinHeightUnit ] =\n\t\tuseState( minHeightUnit );\n\tconst isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100;\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\treturn (\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<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"image/*,video/*\"\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\tonToggleFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t\tuseFeaturedImage={ useFeaturedImage }\n\t\t\t\t\tname={ ! url ? __( 'Add Media' ) : __( 'Replace' ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t</>\n\t);\n}\n"]}
@@ -17,7 +17,8 @@ export default function CoverPlaceholder(_ref) {
17
17
  children,
18
18
  onSelectMedia,
19
19
  onError,
20
- style
20
+ style,
21
+ toggleUseFeaturedImage
21
22
  } = _ref;
22
23
  return createElement(MediaPlaceholder, {
23
24
  icon: createElement(BlockIcon, {
@@ -31,6 +32,7 @@ export default function CoverPlaceholder(_ref) {
31
32
  accept: "image/*,video/*",
32
33
  allowedTypes: ALLOWED_MEDIA_TYPES,
33
34
  disableMediaButtons: disableMediaButtons,
35
+ onToggleFeaturedImage: toggleUseFeaturedImage,
34
36
  onError: onError,
35
37
  style: style
36
38
  }, children);
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/cover/edit/cover-placeholder.js"],"names":["BlockIcon","MediaPlaceholder","__","cover","icon","ALLOWED_MEDIA_TYPES","CoverPlaceholder","disableMediaButtons","children","onSelectMedia","onError","style","title","instructions"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,gBAApB,QAA4C,yBAA5C;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,KAAK,IAAIC,IAAlB,QAA8B,kBAA9B;AAEA;AACA;AACA;;AACA,SAASC,mBAAT,QAAoC,WAApC;AAEA,eAAe,SAASC,gBAAT,OAMX;AAAA,MANsC;AACzCC,IAAAA,mBAAmB,GAAG,KADmB;AAEzCC,IAAAA,QAFyC;AAGzCC,IAAAA,aAHyC;AAIzCC,IAAAA,OAJyC;AAKzCC,IAAAA;AALyC,GAMtC;AACH,SACC,cAAC,gBAAD;AACC,IAAA,IAAI,EAAG,cAAC,SAAD;AAAW,MAAA,IAAI,EAAGP;AAAlB,MADR;AAEC,IAAA,MAAM,EAAG;AACRQ,MAAAA,KAAK,EAAEV,EAAE,CAAE,OAAF,CADD;AAERW,MAAAA,YAAY,EAAEX,EAAE,CACf,oFADe;AAFR,KAFV;AAQC,IAAA,QAAQ,EAAGO,aARZ;AASC,IAAA,MAAM,EAAC,iBATR;AAUC,IAAA,YAAY,EAAGJ,mBAVhB;AAWC,IAAA,mBAAmB,EAAGE,mBAXvB;AAYC,IAAA,OAAO,EAAGG,OAZX;AAaC,IAAA,KAAK,EAAGC;AAbT,KAeGH,QAfH,CADD;AAmBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { BlockIcon, MediaPlaceholder } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { cover as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_MEDIA_TYPES } from '../shared';\n\nexport default function 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"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/cover/edit/cover-placeholder.js"],"names":["BlockIcon","MediaPlaceholder","__","cover","icon","ALLOWED_MEDIA_TYPES","CoverPlaceholder","disableMediaButtons","children","onSelectMedia","onError","style","toggleUseFeaturedImage","title","instructions"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,SAAT,EAAoBC,gBAApB,QAA4C,yBAA5C;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,KAAK,IAAIC,IAAlB,QAA8B,kBAA9B;AAEA;AACA;AACA;;AACA,SAASC,mBAAT,QAAoC,WAApC;AAEA,eAAe,SAASC,gBAAT,OAOX;AAAA,MAPsC;AACzCC,IAAAA,mBAAmB,GAAG,KADmB;AAEzCC,IAAAA,QAFyC;AAGzCC,IAAAA,aAHyC;AAIzCC,IAAAA,OAJyC;AAKzCC,IAAAA,KALyC;AAMzCC,IAAAA;AANyC,GAOtC;AACH,SACC,cAAC,gBAAD;AACC,IAAA,IAAI,EAAG,cAAC,SAAD;AAAW,MAAA,IAAI,EAAGR;AAAlB,MADR;AAEC,IAAA,MAAM,EAAG;AACRS,MAAAA,KAAK,EAAEX,EAAE,CAAE,OAAF,CADD;AAERY,MAAAA,YAAY,EAAEZ,EAAE,CACf,oFADe;AAFR,KAFV;AAQC,IAAA,QAAQ,EAAGO,aARZ;AASC,IAAA,MAAM,EAAC,iBATR;AAUC,IAAA,YAAY,EAAGJ,mBAVhB;AAWC,IAAA,mBAAmB,EAAGE,mBAXvB;AAYC,IAAA,qBAAqB,EAAGK,sBAZzB;AAaC,IAAA,OAAO,EAAGF,OAbX;AAcC,IAAA,KAAK,EAAGC;AAdT,KAgBGH,QAhBH,CADD;AAoBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { BlockIcon, MediaPlaceholder } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { cover as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_MEDIA_TYPES } from '../shared';\n\nexport default function CoverPlaceholder( {\n\tdisableMediaButtons = false,\n\tchildren,\n\tonSelectMedia,\n\tonError,\n\tstyle,\n\ttoggleUseFeaturedImage,\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\tonToggleFeaturedImage={ toggleUseFeaturedImage }\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"]}
@@ -168,11 +168,23 @@ function CoverEdit(_ref) {
168
168
  isImgElement,
169
169
  overlayColor
170
170
  };
171
+
172
+ const toggleUseFeaturedImage = () => {
173
+ setAttributes({
174
+ id: undefined,
175
+ url: undefined,
176
+ useFeaturedImage: !useFeaturedImage,
177
+ dimRatio: dimRatio === 100 ? 50 : dimRatio,
178
+ backgroundType: useFeaturedImage ? IMAGE_BACKGROUND_TYPE : undefined
179
+ });
180
+ };
181
+
171
182
  const blockControls = createElement(CoverBlockControls, {
172
183
  attributes: attributes,
173
184
  setAttributes: setAttributes,
174
185
  onSelectMedia: onSelectMedia,
175
- currentSettings: currentSettings
186
+ currentSettings: currentSettings,
187
+ toggleUseFeaturedImage: toggleUseFeaturedImage
176
188
  });
177
189
  const inspectorControls = createElement(CoverInspectorControls, {
178
190
  attributes: attributes,
@@ -180,7 +192,8 @@ function CoverEdit(_ref) {
180
192
  clientId: clientId,
181
193
  setOverlayColor: setOverlayColor,
182
194
  coverRef: ref,
183
- currentSettings: currentSettings
195
+ currentSettings: currentSettings,
196
+ toggleUseFeaturedImage: toggleUseFeaturedImage
184
197
  });
185
198
 
186
199
  if (!useFeaturedImage && !hasInnerBlocks && !hasBackground) {
@@ -191,7 +204,8 @@ function CoverEdit(_ref) {
191
204
  onError: onUploadError,
192
205
  style: {
193
206
  minHeight: minHeightWithUnit || undefined
194
- }
207
+ },
208
+ toggleUseFeaturedImage: toggleUseFeaturedImage
195
209
  }, createElement("div", {
196
210
  className: "wp-block-cover__placeholder-background-options"
197
211
  }, createElement(ColorPalette, {
@@ -300,7 +314,8 @@ function CoverEdit(_ref) {
300
314
  }), isUploadingMedia && createElement(Spinner, null), createElement(CoverPlaceholder, {
301
315
  disableMediaButtons: true,
302
316
  onSelectMedia: onSelectMedia,
303
- onError: onUploadError
317
+ onError: onUploadError,
318
+ toggleUseFeaturedImage: toggleUseFeaturedImage
304
319
  }), createElement("div", innerBlocksProps)));
305
320
  }
306
321
 
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/cover/edit/index.js"],"names":["classnames","extend","namesPlugin","useEntityProp","store","coreStore","useEffect","useRef","Placeholder","Spinner","compose","withColors","ColorPalette","useBlockProps","useSetting","useInnerBlocksProps","__experimentalUseGradient","blockEditorStore","__","useSelect","useDispatch","isBlobURL","noticesStore","attributesFromMedia","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","dimRatioToClass","isContentPositionCenter","getPositionClassName","mediaPosition","useCoverIsDark","CoverInspectorControls","CoverBlockControls","CoverPlaceholder","ResizableCover","getInnerBlocksTemplate","attributes","align","placeholder","isTemporaryMedia","id","url","CoverEdit","clientId","isSelected","overlayColor","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","contentPosition","useFeaturedImage","dimRatio","focalPoint","hasParallax","isDark","isRepeated","minHeight","minHeightUnit","alt","allowedBlocks","templateLock","featuredImage","media","select","getMedia","mediaUrl","source_url","backgroundType","__unstableMarkNextChangeAsNotPersistent","createErrorNotice","gradientClass","gradientValue","onSelectMedia","isUploadingMedia","onUploadError","message","type","mediaElement","isCoverDark","color","isImageBackground","isVideoBackground","minHeightWithUnit","isImgElement","style","undefined","backgroundImage","backgroundPosition","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","hasInnerBlocks","getBlock","innerBlocks","length","ref","blockProps","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","className","template","templateInsertUpdatesSelection","currentSettings","blockControls","inspectorControls","value","newMinHeight","classes","class"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AACA,SAASC,MAAT,QAAuB,QAAvB;AACA,OAAOC,WAAP,MAAwB,sBAAxB;AAEA;AACA;AACA;;AACA,SAASC,aAAT,EAAwBC,KAAK,IAAIC,SAAjC,QAAkD,sBAAlD;AACA,SAASC,SAAT,EAAoBC,MAApB,QAAkC,oBAAlC;AACA,SAASC,WAAT,EAAsBC,OAAtB,QAAqC,uBAArC;AACA,SAASC,OAAT,QAAwB,oBAAxB;AACA,SACCC,UADD,EAECC,YAFD,EAGCC,aAHD,EAICC,UAJD,EAKCC,mBALD,EAMCC,yBAND,EAOCZ,KAAK,IAAIa,gBAPV,QAQO,yBARP;AASA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,SAAT,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASjB,KAAK,IAAIkB,YAAlB,QAAsC,oBAAtC;AAEA;AACA;AACA;;AACA,SACCC,mBADD,EAECC,qBAFD,EAGCC,qBAHD,EAICC,eAJD,EAKCC,uBALD,EAMCC,oBAND,EAOCC,aAPD,QAQO,WARP;AASA,OAAOC,cAAP,MAA2B,qBAA3B;AACA,OAAOC,sBAAP,MAAmC,sBAAnC;AACA,OAAOC,kBAAP,MAA+B,kBAA/B;AACA,OAAOC,gBAAP,MAA6B,qBAA7B;AACA,OAAOC,cAAP,MAA2B,mBAA3B;AAEAjC,MAAM,CAAE,CAAEC,WAAF,CAAF,CAAN;;AAEA,SAASiC,sBAAT,CAAiCC,UAAjC,EAA8C;AAC7C,SAAO,CACN,CACC,gBADD,EAEC;AACCC,IAAAA,KAAK,EAAE,QADR;AAECC,IAAAA,WAAW,EAAEpB,EAAE,CAAE,cAAF,CAFhB;AAGC,OAAGkB;AAHJ,GAFD,CADM,CAAP;AAUA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,MAAMG,gBAAgB,GAAG,CAAEC,EAAF,EAAMC,GAAN,KAAe,CAAED,EAAF,IAAQnB,SAAS,CAAEoB,GAAF,CAAzD;;AAEA,SAASC,SAAT,OASI;AAAA;;AAAA,MATgB;AACnBN,IAAAA,UADmB;AAEnBO,IAAAA,QAFmB;AAGnBC,IAAAA,UAHmB;AAInBC,IAAAA,YAJmB;AAKnBC,IAAAA,aALmB;AAMnBC,IAAAA,eANmB;AAOnBC,IAAAA,eAPmB;AAQnBC,IAAAA,OAAO,EAAE;AAAEC,MAAAA,MAAF;AAAUC,MAAAA;AAAV;AARU,GAShB;AACH,QAAM;AACLC,IAAAA,eADK;AAELZ,IAAAA,EAFK;AAGLa,IAAAA,gBAHK;AAILC,IAAAA,QAJK;AAKLC,IAAAA,UALK;AAMLC,IAAAA,WANK;AAOLC,IAAAA,MAPK;AAQLC,IAAAA,UARK;AASLC,IAAAA,SATK;AAULC,IAAAA,aAVK;AAWLC,IAAAA,GAXK;AAYLC,IAAAA,aAZK;AAaLC,IAAAA;AAbK,MAcF3B,UAdJ;AAgBA,QAAM,CAAE4B,aAAF,IAAoB7D,aAAa,CACtC,UADsC,EAEtCgD,QAFsC,EAGtC,gBAHsC,EAItCD,MAJsC,CAAvC;AAOA,QAAMe,KAAK,GAAG9C,SAAS,CACpB+C,MAAF,IACCF,aAAa,IACbE,MAAM,CAAE7D,SAAF,CAAN,CAAoB8D,QAApB,CAA8BH,aAA9B,EAA6C;AAAEf,IAAAA,OAAO,EAAE;AAAX,GAA7C,CAHqB,EAItB,CAAEe,aAAF,CAJsB,CAAvB;AAMA,QAAMI,QAAQ,GAAGH,KAAH,aAAGA,KAAH,uBAAGA,KAAK,CAAEI,UAAxB,CA9BG,CAgCH;AACA;AACA;AACA;;AACA,QAAM5B,GAAG,GAAGY,gBAAgB,GAAGe,QAAH,GAAchC,UAAU,CAACK,GAArD;AACA,QAAM6B,cAAc,GAAGjB,gBAAgB,GACpC7B,qBADoC,GAEpCY,UAAU,CAACkC,cAFd;AAIA,QAAM;AAAEC,IAAAA;AAAF,MACLnD,WAAW,CAAEH,gBAAF,CADZ;AAEA,QAAM;AAAEuD,IAAAA;AAAF,MAAwBpD,WAAW,CAAEE,YAAF,CAAzC;;AACA,QAAM;AAAEmD,IAAAA,aAAF;AAAiBC,IAAAA;AAAjB,MAAmC1D,yBAAyB,EAAlE;;AACA,QAAM2D,aAAa,GAAGpD,mBAAmB,CAAEuB,aAAF,EAAiBQ,QAAjB,CAAzC;AACA,QAAMsB,gBAAgB,GAAGrC,gBAAgB,CAAEC,EAAF,EAAMC,GAAN,CAAzC;;AAEA,QAAMoC,aAAa,GAAKC,OAAF,IAAe;AACpCN,IAAAA,iBAAiB,CAAEM,OAAF,EAAW;AAAEC,MAAAA,IAAI,EAAE;AAAR,KAAX,CAAjB;AACA,GAFD;;AAIA,QAAMC,YAAY,GAAGzE,MAAM,EAA3B;AACA,QAAM0E,WAAW,GAAGnD,cAAc,CACjCW,GADiC,EAEjCa,QAFiC,EAGjCT,YAAY,CAACqC,KAHoB,EAIjCF,YAJiC,CAAlC;AAOA1E,EAAAA,SAAS,CAAE,MAAM;AAChB;AACAiE,IAAAA,uCAAuC;;AACvCzB,IAAAA,aAAa,CAAE;AAAEW,MAAAA,MAAM,EAAEwB;AAAV,KAAF,CAAb;AACA,GAJQ,EAIN,CAAEA,WAAF,CAJM,CAAT;AAMA,QAAME,iBAAiB,GAAG3D,qBAAqB,KAAK8C,cAApD;AACA,QAAMc,iBAAiB,GAAG3D,qBAAqB,KAAK6C,cAApD;AAEA,QAAMe,iBAAiB,GACtB1B,SAAS,IAAIC,aAAb,GACI,GAAGD,SAAW,GAAGC,aAAe,EADpC,GAEGD,SAHJ;AAKA,QAAM2B,YAAY,GAAG,EAAI9B,WAAW,IAAIE,UAAnB,CAArB;AAEA,QAAM6B,KAAK,GAAG;AACb5B,IAAAA,SAAS,EAAE0B,iBAAiB,IAAIG;AADnB,GAAd;AAIA,QAAMC,eAAe,GAAGhD,GAAG,GAAI,OAAOA,GAAK,GAAhB,GAAqB+C,SAAhD;AAEA,QAAME,kBAAkB,GAAG7D,aAAa,CAAE0B,UAAF,CAAxC;AAEA,QAAMoC,OAAO,GAAG;AAAEC,IAAAA,eAAe,EAAE/C,YAAY,CAACqC;AAAhC,GAAhB;AACA,QAAMW,UAAU,GAAG;AAClBC,IAAAA,cAAc,EACbvC,UAAU,IAAI+B,YAAd,GACGzD,aAAa,CAAE0B,UAAF,CADhB,GAEGiC;AAJc,GAAnB;AAOA,QAAMO,aAAa,GAAG,CAAC,EAAItD,GAAG,IAAII,YAAY,CAACqC,KAApB,IAA6BR,aAAjC,CAAvB;AAEA,QAAMsB,cAAc,GAAG7E,SAAS,CAC7B+C,MAAF,IACCA,MAAM,CAAEjD,gBAAF,CAAN,CAA2BgF,QAA3B,CAAqCtD,QAArC,EAAgDuD,WAAhD,CAA4DC,MAA5D,GACA,CAH8B,EAI/B,CAAExD,QAAF,CAJ+B,CAAhC;AAOA,QAAMyD,GAAG,GAAG7F,MAAM,EAAlB;AACA,QAAM8F,UAAU,GAAGxF,aAAa,CAAE;AAAEuF,IAAAA;AAAF,GAAF,CAAhC,CAtGG,CAwGH;;AACA,QAAME,YAAY,GAAG,CAAC,iBAAExF,UAAU,CAAE,sBAAF,CAAZ,wCAAE,YAAsCqF,MAAxC,CAAtB;AACA,QAAMI,mBAAmB,GAAGpE,sBAAsB,CAAE;AACnDqE,IAAAA,QAAQ,EAAEF,YAAY,GAAG,OAAH,GAAad;AADgB,GAAF,CAAlD;AAIA,QAAMiB,gBAAgB,GAAG1F,mBAAmB,CAC3C;AACC2F,IAAAA,SAAS,EAAE;AADZ,GAD2C,EAI3C;AACCC,IAAAA,QAAQ,EAAEJ,mBADX;AAECK,IAAAA,8BAA8B,EAAE,IAFjC;AAGC9C,IAAAA,aAHD;AAICC,IAAAA;AAJD,GAJ2C,CAA5C;AAYA,QAAM8C,eAAe,GAAG;AACvBzB,IAAAA,iBADuB;AAEvBD,IAAAA,iBAFuB;AAGvBH,IAAAA,YAHuB;AAIvBgB,IAAAA,cAJuB;AAKvBvD,IAAAA,GALuB;AAMvB6C,IAAAA,YANuB;AAOvBzC,IAAAA;AAPuB,GAAxB;AAUA,QAAMiE,aAAa,GAClB,cAAC,kBAAD;AACC,IAAA,UAAU,EAAG1E,UADd;AAEC,IAAA,aAAa,EAAGU,aAFjB;AAGC,IAAA,aAAa,EAAG6B,aAHjB;AAIC,IAAA,eAAe,EAAGkC;AAJnB,IADD;AASA,QAAME,iBAAiB,GACtB,cAAC,sBAAD;AACC,IAAA,UAAU,EAAG3E,UADd;AAEC,IAAA,aAAa,EAAGU,aAFjB;AAGC,IAAA,QAAQ,EAAGH,QAHZ;AAIC,IAAA,eAAe,EAAGI,eAJnB;AAKC,IAAA,QAAQ,EAAGqD,GALZ;AAMC,IAAA,eAAe,EAAGS;AANnB,IADD;;AAWA,MAAK,CAAExD,gBAAF,IAAsB,CAAE2C,cAAxB,IAA0C,CAAED,aAAjD,EAAiE;AAChE,WACC,8BACGe,aADH,EAEGC,iBAFH,EAGC,kCACMV,UADN;AAEC,MAAA,SAAS,EAAGrG,UAAU,CACrB,gBADqB,EAErBqG,UAAU,CAACK,SAFU;AAFvB,QAOC,cAAC,gBAAD;AACC,MAAA,aAAa,EAAG/B,aADjB;AAEC,MAAA,OAAO,EAAGE,aAFX;AAGC,MAAA,KAAK,EAAG;AACPlB,QAAAA,SAAS,EAAE0B,iBAAiB,IAAIG;AADzB;AAHT,OAOC;AAAK,MAAA,SAAS,EAAC;AAAf,OACC,cAAC,YAAD;AACC,MAAA,mBAAmB,EAAG,IADvB;AAEC,MAAA,KAAK,EAAG3C,YAAY,CAACqC,KAFtB;AAGC,MAAA,QAAQ,EAAGnC,eAHZ;AAIC,MAAA,SAAS,EAAG;AAJb,MADD,CAPD,CAPD,EAuBC,cAAC,cAAD;AACC,MAAA,SAAS,EAAC,uCADX;AAEC,MAAA,aAAa,EAAG,MAAM;AACrBD,QAAAA,aAAa,CAAE;AAAEc,UAAAA,aAAa,EAAE;AAAjB,SAAF,CAAb;AACAZ,QAAAA,eAAe,CAAE,KAAF,CAAf;AACA,OALF;AAMC,MAAA,QAAQ,EAAKgE,KAAF,IAAa;AACvBlE,QAAAA,aAAa,CAAE;AAAEa,UAAAA,SAAS,EAAEqD;AAAb,SAAF,CAAb;AACA,OARF;AASC,MAAA,YAAY,EAAKC,YAAF,IAAoB;AAClCjE,QAAAA,eAAe,CAAE,IAAF,CAAf;AACAF,QAAAA,aAAa,CAAE;AAAEa,UAAAA,SAAS,EAAEsD;AAAb,SAAF,CAAb;AACA,OAZF;AAaC,MAAA,UAAU,EAAGrE;AAbd,MAvBD,CAHD,CADD;AA6CA;;AAED,QAAMsE,OAAO,GAAGlH,UAAU,CACzB;AACC,qBAAiByD,MADlB;AAEC,gBAAY,CAAEA,MAFf;AAGC,oBAAgBmB,gBAHjB;AAIC,oBAAgBpB,WAJjB;AAKC,mBAAeE,UALhB;AAMC,mCACC,CAAE/B,uBAAuB,CAAEyB,eAAF;AAP3B,GADyB,EAUzBxB,oBAAoB,CAAEwB,eAAF,CAVK,CAA1B;AAaA,SACC,8BACG0D,aADH,EAEGC,iBAFH,EAGC,kCACMV,UADN;AAEC,IAAA,SAAS,EAAGrG,UAAU,CAAEkH,OAAF,EAAWb,UAAU,CAACK,SAAtB,CAFvB;AAGC,IAAA,KAAK,EAAG,EAAE,GAAGnB,KAAL;AAAY,SAAGc,UAAU,CAACd;AAA1B,KAHT;AAIC,gBAAW9C;AAJZ,MAMC,cAAC,cAAD;AACC,IAAA,SAAS,EAAC,uCADX;AAEC,IAAA,aAAa,EAAG,MAAM;AACrBK,MAAAA,aAAa,CAAE;AAAEc,QAAAA,aAAa,EAAE;AAAjB,OAAF,CAAb;AACAZ,MAAAA,eAAe,CAAE,KAAF,CAAf;AACA,KALF;AAMC,IAAA,QAAQ,EAAKgE,KAAF,IAAa;AACvBlE,MAAAA,aAAa,CAAE;AAAEa,QAAAA,SAAS,EAAEqD;AAAb,OAAF,CAAb;AACA,KARF;AASC,IAAA,YAAY,EAAKC,YAAF,IAAoB;AAClCjE,MAAAA,eAAe,CAAE,IAAF,CAAf;AACAF,MAAAA,aAAa,CAAE;AAAEa,QAAAA,SAAS,EAAEsD;AAAb,OAAF,CAAb;AACA,KAZF;AAaC,IAAA,UAAU,EAAGrE;AAbd,IAND,EAsBG,CAAE,CAAES,gBAAF,IAAsBZ,GAAxB,KACD;AACC,mBAAY,MADb;AAEC,IAAA,SAAS,EAAGzC,UAAU,CACrB,4BADqB,EAErB0B,eAAe,CAAE4B,QAAF,CAFM,EAGrB;AACC,OAAET,YAAY,CAACsE,KAAf,GAAwBtE,YAAY,CAACsE,KADtC;AAEC,4BAAsB7D,QAAQ,KAAKkC,SAFpC;AAGC;AACA;AACA;AACA,6CACC/C,GAAG,IAAIiC,aAAP,IAAwBpB,QAAQ,KAAK,CAPvC;AAQC,iCAA2BoB,aAR5B;AASC,OAAED,aAAF,GAAmBA;AATpB,KAHqB,CAFvB;AAiBC,IAAA,KAAK,EAAG;AAAEgB,MAAAA,eAAe,EAAEf,aAAnB;AAAkC,SAAGiB;AAArC;AAjBT,IAvBF,EA4CG,CAAElD,GAAF,IAASY,gBAAT,IACD,cAAC,WAAD;AACC,IAAA,SAAS,EAAC,0CADX;AAEC,IAAA,gBAAgB,EAAG;AAFpB,IA7CF,EAmDGZ,GAAG,IACJ0C,iBADC,KAECG,YAAY,GACb;AACC,IAAA,GAAG,EAAGN,YADP;AAEC,IAAA,SAAS,EAAC,kCAFX;AAGC,IAAA,GAAG,EAAGnB,GAHP;AAIC,IAAA,GAAG,EAAGpB,GAJP;AAKC,IAAA,KAAK,EAAGoD;AALT,IADa,GASb;AACC,IAAA,GAAG,EAAGb,YADP;AAEC,IAAA,IAAI,EAAC,KAFN;AAGC,IAAA,SAAS,EAAGhF,UAAU,CACrBkH,OADqB,EAErB,kCAFqB,CAHvB;AAOC,IAAA,KAAK,EAAG;AAAEzB,MAAAA,eAAF;AAAmBC,MAAAA;AAAnB;AAPT,IAXA,CAnDH,EAwEGjD,GAAG,IAAI2C,iBAAP,IACD;AACC,IAAA,GAAG,EAAGJ,YADP;AAEC,IAAA,SAAS,EAAC,kCAFX;AAGC,IAAA,QAAQ,MAHT;AAIC,IAAA,KAAK,MAJN;AAKC,IAAA,IAAI,MALL;AAMC,IAAA,GAAG,EAAGvC,GANP;AAOC,IAAA,KAAK,EAAGoD;AAPT,IAzEF,EAmFGjB,gBAAgB,IAAI,cAAC,OAAD,OAnFvB,EAoFC,cAAC,gBAAD;AACC,IAAA,mBAAmB,MADpB;AAEC,IAAA,aAAa,EAAGD,aAFjB;AAGC,IAAA,OAAO,EAAGE;AAHX,IApFD,EAyFC,qBAAU4B,gBAAV,CAzFD,CAHD,CADD;AAiGA;;AAED,eAAe/F,OAAO,CAAE,CACvBC,UAAU,CAAE;AAAEkC,EAAAA,YAAY,EAAE;AAAhB,CAAF,CADa,CAAF,CAAP,CAEVH,SAFU,CAAf","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { Placeholder, Spinner } from '@wordpress/components';\nimport { compose } from '@wordpress/compose';\nimport {\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSetting,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { isBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport {\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n\tmediaPosition,\n} from '../shared';\nimport useCoverIsDark from './use-cover-is-dark';\nimport CoverInspectorControls from './inspector-controls';\nimport CoverBlockControls from './block-controls';\nimport CoverPlaceholder from './cover-placeholder';\nimport ResizableCover from './resizable-cover';\n\nextend( [ namesPlugin ] );\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\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 CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\tconst media = useSelect(\n\t\t( select ) =>\n\t\t\tfeaturedImage &&\n\t\t\tselect( coreStore ).getMedia( featuredImage, { context: 'view' } ),\n\t\t[ featuredImage ]\n\t);\n\tconst mediaUrl = media?.source_url;\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage ? mediaUrl : attributes.url;\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: attributes.backgroundType;\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { gradientClass, gradientValue } = __experimentalUseGradient();\n\tconst onSelectMedia = attributesFromMedia( setAttributes, dimRatio );\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst mediaElement = useRef();\n\tconst isCoverDark = useCoverIsDark(\n\t\turl,\n\t\tdimRatio,\n\t\toverlayColor.color,\n\t\tmediaElement\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\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst backgroundImage = url ? `url(${ url })` : undefined;\n\n\tconst backgroundPosition = mediaPosition( focalPoint );\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\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 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\tconst currentSettings = {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\thasInnerBlocks,\n\t\turl,\n\t\tisImgElement,\n\t\toverlayColor,\n\t};\n\n\tconst blockControls = (\n\t\t<CoverBlockControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t/>\n\t);\n\n\tconst inspectorControls = (\n\t\t<CoverInspectorControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tclientId={ clientId }\n\t\t\tsetOverlayColor={ setOverlayColor }\n\t\t\tcoverRef={ ref }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t/>\n\t);\n\n\tif ( ! useFeaturedImage && ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ blockControls }\n\t\t\t\t{ inspectorControls }\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':\n\t\t\t\t! isContentPositionCenter( contentPosition ),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t<ResizableCover\n\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t} }\n\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t} }\n\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t/>\n\n\t\t\t\t{ ( ! useFeaturedImage || url ) && (\n\t\t\t\t\t<span\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\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\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ ! url && useFeaturedImage && (\n\t\t\t\t\t<Placeholder\n\t\t\t\t\t\tclassName=\"wp-block-cover__image--placeholder-image\"\n\t\t\t\t\t\twithIllustration={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ url &&\n\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t( isImgElement ? (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t'wp-block-cover__image-background'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ { backgroundImage, backgroundPosition } }\n\t\t\t\t\t\t/>\n\t\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={ mediaElement }\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/index.js"],"names":["classnames","extend","namesPlugin","useEntityProp","store","coreStore","useEffect","useRef","Placeholder","Spinner","compose","withColors","ColorPalette","useBlockProps","useSetting","useInnerBlocksProps","__experimentalUseGradient","blockEditorStore","__","useSelect","useDispatch","isBlobURL","noticesStore","attributesFromMedia","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","dimRatioToClass","isContentPositionCenter","getPositionClassName","mediaPosition","useCoverIsDark","CoverInspectorControls","CoverBlockControls","CoverPlaceholder","ResizableCover","getInnerBlocksTemplate","attributes","align","placeholder","isTemporaryMedia","id","url","CoverEdit","clientId","isSelected","overlayColor","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","contentPosition","useFeaturedImage","dimRatio","focalPoint","hasParallax","isDark","isRepeated","minHeight","minHeightUnit","alt","allowedBlocks","templateLock","featuredImage","media","select","getMedia","mediaUrl","source_url","backgroundType","__unstableMarkNextChangeAsNotPersistent","createErrorNotice","gradientClass","gradientValue","onSelectMedia","isUploadingMedia","onUploadError","message","type","mediaElement","isCoverDark","color","isImageBackground","isVideoBackground","minHeightWithUnit","isImgElement","style","undefined","backgroundImage","backgroundPosition","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","hasInnerBlocks","getBlock","innerBlocks","length","ref","blockProps","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","className","template","templateInsertUpdatesSelection","currentSettings","toggleUseFeaturedImage","blockControls","inspectorControls","value","newMinHeight","classes","class"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { Placeholder, Spinner } from '@wordpress/components';\nimport { compose } from '@wordpress/compose';\nimport {\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSetting,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { isBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport {\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n\tmediaPosition,\n} from '../shared';\nimport useCoverIsDark from './use-cover-is-dark';\nimport CoverInspectorControls from './inspector-controls';\nimport CoverBlockControls from './block-controls';\nimport CoverPlaceholder from './cover-placeholder';\nimport ResizableCover from './resizable-cover';\n\nextend( [ namesPlugin ] );\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\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 CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\tconst media = useSelect(\n\t\t( select ) =>\n\t\t\tfeaturedImage &&\n\t\t\tselect( coreStore ).getMedia( featuredImage, { context: 'view' } ),\n\t\t[ featuredImage ]\n\t);\n\tconst mediaUrl = media?.source_url;\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage ? mediaUrl : attributes.url;\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: attributes.backgroundType;\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { gradientClass, gradientValue } = __experimentalUseGradient();\n\tconst onSelectMedia = attributesFromMedia( setAttributes, dimRatio );\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst mediaElement = useRef();\n\tconst isCoverDark = useCoverIsDark(\n\t\turl,\n\t\tdimRatio,\n\t\toverlayColor.color,\n\t\tmediaElement\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\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst backgroundImage = url ? `url(${ url })` : undefined;\n\n\tconst backgroundPosition = mediaPosition( focalPoint );\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\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 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\tconst currentSettings = {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\thasInnerBlocks,\n\t\turl,\n\t\tisImgElement,\n\t\toverlayColor,\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 blockControls = (\n\t\t<CoverBlockControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t/>\n\t);\n\n\tconst inspectorControls = (\n\t\t<CoverInspectorControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tclientId={ clientId }\n\t\t\tsetOverlayColor={ setOverlayColor }\n\t\t\tcoverRef={ ref }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t/>\n\t);\n\n\tif ( ! useFeaturedImage && ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ blockControls }\n\t\t\t\t{ inspectorControls }\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\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\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':\n\t\t\t\t! isContentPositionCenter( contentPosition ),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t<ResizableCover\n\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t} }\n\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t} }\n\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t/>\n\n\t\t\t\t{ ( ! useFeaturedImage || url ) && (\n\t\t\t\t\t<span\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\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\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ ! url && useFeaturedImage && (\n\t\t\t\t\t<Placeholder\n\t\t\t\t\t\tclassName=\"wp-block-cover__image--placeholder-image\"\n\t\t\t\t\t\twithIllustration={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ url &&\n\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t( isImgElement ? (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\trole=\"img\"\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t'wp-block-cover__image-background'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ { backgroundImage, backgroundPosition } }\n\t\t\t\t\t\t/>\n\t\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={ mediaElement }\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\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\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"]}
@@ -32,7 +32,6 @@ import { getUpdatedLinkTargetSettings, getImageSizeAttributes } from '../image/u
32
32
  import Gallery from './gallery';
33
33
  import { LINK_DESTINATION_ATTACHMENT, LINK_DESTINATION_MEDIA, LINK_DESTINATION_NONE } from './constants';
34
34
  import useImageSizes from './use-image-sizes';
35
- import useShortCodeTransform from './use-short-code-transform';
36
35
  import useGetNewImages from './use-get-new-images';
37
36
  import useGetMedia from './use-get-media';
38
37
  import GapStyles from './gap-styles';
@@ -71,7 +70,6 @@ function GalleryEdit(props) {
71
70
  imageCrop,
72
71
  linkTarget,
73
72
  linkTo,
74
- shortCodeTransforms,
75
73
  sizeSlug
76
74
  } = attributes;
77
75
  const {
@@ -118,6 +116,9 @@ function GalleryEdit(props) {
118
116
  const newImages = useGetNewImages(images, imageData);
119
117
  useEffect(() => {
120
118
  newImages === null || newImages === void 0 ? void 0 : newImages.forEach(newImage => {
119
+ // Update the images data without creating new undo levels.
120
+ __unstableMarkNextChangeAsNotPersistent();
121
+
121
122
  updateBlockAttributes(newImage.clientId, { ...buildImageAttributes(newImage.attributes),
122
123
  id: newImage.id,
123
124
  align: undefined
@@ -128,17 +129,6 @@ function GalleryEdit(props) {
128
129
  clearSelectedBlock();
129
130
  }
130
131
  }, [newImages]);
131
- const shortCodeImages = useShortCodeTransform(shortCodeTransforms);
132
- useEffect(() => {
133
- if (!shortCodeTransforms || !shortCodeImages) {
134
- return;
135
- }
136
-
137
- updateImages(shortCodeImages);
138
- setAttributes({
139
- shortCodeTransforms: undefined
140
- });
141
- }, [shortCodeTransforms, shortCodeImages]);
142
132
  const imageSizeOptions = useImageSizes(imageData, isSelected, getSettings);
143
133
  /**
144
134
  * Determines the image attributes that should be applied to an image block
@@ -154,6 +144,8 @@ function GalleryEdit(props) {
154
144
  */
155
145
 
156
146
  function buildImageAttributes(imageAttributes) {
147
+ var _image$caption;
148
+
157
149
  const image = imageAttributes.id ? find(imageData, {
158
150
  id: imageAttributes.id
159
151
  }) : null;
@@ -169,8 +161,9 @@ function GalleryEdit(props) {
169
161
  ...getHrefAndDestination(image, linkTo),
170
162
  ...getUpdatedLinkTargetSettings(linkTarget, attributes),
171
163
  className: newClassName,
172
- caption: imageAttributes.caption,
173
- sizeSlug
164
+ sizeSlug,
165
+ caption: imageAttributes.caption || ((_image$caption = image.caption) === null || _image$caption === void 0 ? void 0 : _image$caption.raw),
166
+ alt: imageAttributes.alt || image.alt_text
174
167
  };
175
168
  }
176
169
 
@@ -421,7 +414,7 @@ function GalleryEdit(props) {
421
414
  onSelect: updateImages,
422
415
  name: __('Add'),
423
416
  multiple: true,
424
- mediaIds: images.map(image => image.id),
417
+ mediaIds: images.filter(image => image.id).map(image => image.id),
425
418
  addToGallery: hasImageIds
426
419
  })), noticeUI, Platform.isWeb && createElement(GapStyles, {
427
420
  blockGap: (_attributes$style = attributes.style) === null || _attributes$style === void 0 ? void 0 : (_attributes$style$spa = _attributes$style.spacing) === null || _attributes$style$spa === void 0 ? void 0 : _attributes$style$spa.blockGap,