@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":["__","sprintf","NavigableMenu","MenuItem","FormFileUpload","MenuGroup","ToolbarButton","Dropdown","SVG","Rect","Path","Button","TextControl","SelectControl","MediaUpload","MediaUploadCheck","store","blockEditorStore","upload","media","useSelect","useState","getFilename","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","getSettings","trackBeingEdited","setTrackBeingEdited","isOpen","onToggle","newTrack","newTracks","filter","_track","url","trackIndex","open","event","files","target","allowedTypes","filesList","onFileChange","openFileDialog"],"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":["__","sprintf","NavigableMenu","MenuItem","FormFileUpload","MenuGroup","ToolbarButton","Dropdown","SVG","Rect","Path","Button","TextControl","SelectControl","MediaUpload","MediaUploadCheck","store","blockEditorStore","upload","media","useSelect","useState","getFilename","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","getSettings","trackBeingEdited","setTrackBeingEdited","isOpen","onToggle","newTrack","newTracks","filter","_track","url","trackIndex","open","event","files","target","allowedTypes","filesList","onFileChange","openFileDialog"],"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"]}
@@ -88,4 +88,16 @@
88
88
  max-width: 100%;
89
89
  list-style: none;
90
90
  padding-right: 2rem;
91
+ }
92
+ .wp-block-comment-template.alignleft {
93
+ float: right;
94
+ }
95
+ .wp-block-comment-template.aligncenter {
96
+ margin-right: auto;
97
+ margin-left: auto;
98
+ width: -moz-fit-content;
99
+ width: fit-content;
100
+ }
101
+ .wp-block-comment-template.alignright {
102
+ float: left;
91
103
  }
@@ -88,4 +88,16 @@
88
88
  max-width: 100%;
89
89
  list-style: none;
90
90
  padding-left: 2rem;
91
+ }
92
+ .wp-block-comment-template.alignleft {
93
+ float: left;
94
+ }
95
+ .wp-block-comment-template.aligncenter {
96
+ margin-left: auto;
97
+ margin-right: auto;
98
+ width: -moz-fit-content;
99
+ width: fit-content;
100
+ }
101
+ .wp-block-comment-template.alignright {
102
+ float: right;
91
103
  }
@@ -2530,8 +2530,8 @@ body.editor-styles-wrapper .wp-block-navigation__responsive-container.is-menu-op
2530
2530
  }
2531
2531
 
2532
2532
  .block-editor-query-pattern__selection-modal .components-modal__content {
2533
- overflow: hidden;
2534
2533
  padding: 0;
2534
+ margin-bottom: 60px;
2535
2535
  }
2536
2536
  .block-editor-query-pattern__selection-modal .components-modal__content::before {
2537
2537
  margin-bottom: 0;
@@ -2538,8 +2538,8 @@ body.editor-styles-wrapper .wp-block-navigation__responsive-container.is-menu-op
2538
2538
  }
2539
2539
 
2540
2540
  .block-editor-query-pattern__selection-modal .components-modal__content {
2541
- overflow: hidden;
2542
2541
  padding: 0;
2542
+ margin-bottom: 60px;
2543
2543
  }
2544
2544
  .block-editor-query-pattern__selection-modal .components-modal__content::before {
2545
2545
  margin-bottom: 0;
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Colors
3
+ */
4
+ /**
5
+ * Breakpoints & Media Queries
6
+ */
7
+ /**
8
+ * SCSS Variables.
9
+ *
10
+ * Please use variables from this sheet to ensure consistency across the UI.
11
+ * Don't add to this sheet unless you're pretty sure the value will be reused in many places.
12
+ * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
13
+ */
14
+ /**
15
+ * Colors
16
+ */
17
+ /**
18
+ * Fonts & basic variables.
19
+ */
20
+ /**
21
+ * Grid System.
22
+ * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
23
+ */
24
+ /**
25
+ * Dimensions.
26
+ */
27
+ /**
28
+ * Shadows.
29
+ */
30
+ /**
31
+ * Editor widths.
32
+ */
33
+ /**
34
+ * Block & Editor UI.
35
+ */
36
+ /**
37
+ * Block paddings.
38
+ */
39
+ /**
40
+ * React Native specific.
41
+ * These variables do not appear to be used anywhere else.
42
+ */
43
+ /**
44
+ * Converts a hex value into the rgb equivalent.
45
+ *
46
+ * @param {string} hex - the hexadecimal value to convert
47
+ * @return {string} comma separated rgb values
48
+ */
49
+ /**
50
+ * Breakpoint mixins
51
+ */
52
+ /**
53
+ * Long content fade mixin
54
+ *
55
+ * Creates a fading overlay to signify that the content is longer
56
+ * than the space allows.
57
+ */
58
+ /**
59
+ * Focus styles.
60
+ */
61
+ /**
62
+ * Applies editor left position to the selector passed as argument
63
+ */
64
+ /**
65
+ * Styles that are reused verbatim in a few places
66
+ */
67
+ /**
68
+ * Allows users to opt-out of animations via OS-level preferences.
69
+ */
70
+ /**
71
+ * Reset default styles for JavaScript UI based pages.
72
+ * This is a WP-admin agnostic reset
73
+ */
74
+ /**
75
+ * Reset the WP Admin page styles for Gutenberg-like pages.
76
+ */
77
+ /**
78
+ * Element styles.
79
+ */
80
+ .wp-element-button {
81
+ cursor: pointer;
82
+ }
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Colors
3
+ */
4
+ /**
5
+ * Breakpoints & Media Queries
6
+ */
7
+ /**
8
+ * SCSS Variables.
9
+ *
10
+ * Please use variables from this sheet to ensure consistency across the UI.
11
+ * Don't add to this sheet unless you're pretty sure the value will be reused in many places.
12
+ * For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
13
+ */
14
+ /**
15
+ * Colors
16
+ */
17
+ /**
18
+ * Fonts & basic variables.
19
+ */
20
+ /**
21
+ * Grid System.
22
+ * https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
23
+ */
24
+ /**
25
+ * Dimensions.
26
+ */
27
+ /**
28
+ * Shadows.
29
+ */
30
+ /**
31
+ * Editor widths.
32
+ */
33
+ /**
34
+ * Block & Editor UI.
35
+ */
36
+ /**
37
+ * Block paddings.
38
+ */
39
+ /**
40
+ * React Native specific.
41
+ * These variables do not appear to be used anywhere else.
42
+ */
43
+ /**
44
+ * Converts a hex value into the rgb equivalent.
45
+ *
46
+ * @param {string} hex - the hexadecimal value to convert
47
+ * @return {string} comma separated rgb values
48
+ */
49
+ /**
50
+ * Breakpoint mixins
51
+ */
52
+ /**
53
+ * Long content fade mixin
54
+ *
55
+ * Creates a fading overlay to signify that the content is longer
56
+ * than the space allows.
57
+ */
58
+ /**
59
+ * Focus styles.
60
+ */
61
+ /**
62
+ * Applies editor left position to the selector passed as argument
63
+ */
64
+ /**
65
+ * Styles that are reused verbatim in a few places
66
+ */
67
+ /**
68
+ * Allows users to opt-out of animations via OS-level preferences.
69
+ */
70
+ /**
71
+ * Reset default styles for JavaScript UI based pages.
72
+ * This is a WP-admin agnostic reset
73
+ */
74
+ /**
75
+ * Reset the WP Admin page styles for Gutenberg-like pages.
76
+ */
77
+ /**
78
+ * Element styles.
79
+ */
80
+ .wp-element-button {
81
+ cursor: pointer;
82
+ }
@@ -95,8 +95,8 @@
95
95
  }
96
96
 
97
97
  .block-editor-query-pattern__selection-modal .components-modal__content {
98
- overflow: hidden;
99
98
  padding: 0;
99
+ margin-bottom: 60px;
100
100
  }
101
101
  .block-editor-query-pattern__selection-modal .components-modal__content::before {
102
102
  margin-bottom: 0;
@@ -95,8 +95,8 @@
95
95
  }
96
96
 
97
97
  .block-editor-query-pattern__selection-modal .components-modal__content {
98
- overflow: hidden;
99
98
  padding: 0;
99
+ margin-bottom: 60px;
100
100
  }
101
101
  .block-editor-query-pattern__selection-modal .components-modal__content::before {
102
102
  margin-bottom: 0;
@@ -76,4 +76,9 @@
76
76
  */
77
77
  .wp-block-search .wp-block-search__label {
78
78
  font-weight: bold;
79
+ }
80
+
81
+ .wp-block-search__button {
82
+ border: 1px solid #ccc;
83
+ padding: 0.375em 0.625em;
79
84
  }
@@ -76,4 +76,9 @@
76
76
  */
77
77
  .wp-block-search .wp-block-search__label {
78
78
  font-weight: bold;
79
+ }
80
+
81
+ .wp-block-search__button {
82
+ border: 1px solid #ccc;
83
+ padding: 0.375em 0.625em;
79
84
  }
@@ -386,6 +386,18 @@
386
386
  list-style: none;
387
387
  padding-right: 2rem;
388
388
  }
389
+ .wp-block-comment-template.alignleft {
390
+ float: right;
391
+ }
392
+ .wp-block-comment-template.aligncenter {
393
+ margin-right: auto;
394
+ margin-left: auto;
395
+ width: -moz-fit-content;
396
+ width: fit-content;
397
+ }
398
+ .wp-block-comment-template.alignright {
399
+ float: left;
400
+ }
389
401
 
390
402
  .wp-block-cover-image,
391
403
  .wp-block-cover {
@@ -3392,4 +3404,11 @@ html :where([style*="border-left-width"]) {
3392
3404
  html :where(img[class*="wp-image-"]) {
3393
3405
  height: auto;
3394
3406
  max-width: 100%;
3407
+ }
3408
+
3409
+ /**
3410
+ * Element styles.
3411
+ */
3412
+ .wp-element-button {
3413
+ cursor: pointer;
3395
3414
  }
@@ -391,6 +391,18 @@
391
391
  list-style: none;
392
392
  padding-left: 2rem;
393
393
  }
394
+ .wp-block-comment-template.alignleft {
395
+ float: left;
396
+ }
397
+ .wp-block-comment-template.aligncenter {
398
+ margin-left: auto;
399
+ margin-right: auto;
400
+ width: -moz-fit-content;
401
+ width: fit-content;
402
+ }
403
+ .wp-block-comment-template.alignright {
404
+ float: right;
405
+ }
394
406
 
395
407
  .wp-block-cover-image,
396
408
  .wp-block-cover {
@@ -3425,4 +3437,11 @@ html :where([style*="border-left-width"]) {
3425
3437
  html :where(img[class*="wp-image-"]) {
3426
3438
  height: auto;
3427
3439
  max-width: 100%;
3440
+ }
3441
+
3442
+ /**
3443
+ * Element styles.
3444
+ */
3445
+ .wp-element-button {
3446
+ cursor: pointer;
3428
3447
  }
@@ -161,6 +161,11 @@
161
161
  font-weight: bold;
162
162
  }
163
163
 
164
+ .wp-block-search__button {
165
+ border: 1px solid #ccc;
166
+ padding: 0.375em 0.625em;
167
+ }
168
+
164
169
  :where(.wp-block-group.has-background) {
165
170
  padding: 1.25em 2.375em;
166
171
  }
@@ -161,6 +161,11 @@
161
161
  font-weight: bold;
162
162
  }
163
163
 
164
+ .wp-block-search__button {
165
+ border: 1px solid #ccc;
166
+ padding: 0.375em 0.625em;
167
+ }
168
+
164
169
  :where(.wp-block-group.has-background) {
165
170
  padding: 1.25em 2.375em;
166
171
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wordpress/block-library",
3
- "version": "7.9.0",
3
+ "version": "7.10.0",
4
4
  "description": "Block library for the WordPress editor.",
5
5
  "author": "The WordPress Contributors",
6
6
  "license": "GPL-2.0-or-later",
@@ -34,32 +34,32 @@
34
34
  ],
35
35
  "dependencies": {
36
36
  "@babel/runtime": "^7.16.0",
37
- "@wordpress/a11y": "^3.12.0",
38
- "@wordpress/api-fetch": "^6.9.0",
39
- "@wordpress/autop": "^3.12.0",
40
- "@wordpress/blob": "^3.12.0",
41
- "@wordpress/block-editor": "^9.4.0",
42
- "@wordpress/blocks": "^11.11.0",
43
- "@wordpress/components": "^19.14.0",
44
- "@wordpress/compose": "^5.10.0",
45
- "@wordpress/core-data": "^4.10.0",
46
- "@wordpress/data": "^6.12.0",
47
- "@wordpress/date": "^4.12.0",
48
- "@wordpress/deprecated": "^3.12.0",
49
- "@wordpress/dom": "^3.12.0",
50
- "@wordpress/element": "^4.10.0",
51
- "@wordpress/hooks": "^3.12.0",
52
- "@wordpress/html-entities": "^3.12.0",
53
- "@wordpress/i18n": "^4.12.0",
54
- "@wordpress/icons": "^9.3.0",
55
- "@wordpress/keycodes": "^3.12.0",
56
- "@wordpress/notices": "^3.12.0",
57
- "@wordpress/primitives": "^3.10.0",
58
- "@wordpress/reusable-blocks": "^3.10.0",
59
- "@wordpress/rich-text": "^5.10.0",
60
- "@wordpress/server-side-render": "^3.10.0",
61
- "@wordpress/url": "^3.13.0",
62
- "@wordpress/viewport": "^4.10.0",
37
+ "@wordpress/a11y": "^3.13.0",
38
+ "@wordpress/api-fetch": "^6.10.0",
39
+ "@wordpress/autop": "^3.13.0",
40
+ "@wordpress/blob": "^3.13.0",
41
+ "@wordpress/block-editor": "^9.5.0",
42
+ "@wordpress/blocks": "^11.12.0",
43
+ "@wordpress/components": "^19.15.0",
44
+ "@wordpress/compose": "^5.11.0",
45
+ "@wordpress/core-data": "^4.11.0",
46
+ "@wordpress/data": "^6.13.0",
47
+ "@wordpress/date": "^4.13.0",
48
+ "@wordpress/deprecated": "^3.13.0",
49
+ "@wordpress/dom": "^3.13.0",
50
+ "@wordpress/element": "^4.11.0",
51
+ "@wordpress/hooks": "^3.13.0",
52
+ "@wordpress/html-entities": "^3.13.0",
53
+ "@wordpress/i18n": "^4.13.0",
54
+ "@wordpress/icons": "^9.4.0",
55
+ "@wordpress/keycodes": "^3.13.0",
56
+ "@wordpress/notices": "^3.13.0",
57
+ "@wordpress/primitives": "^3.11.0",
58
+ "@wordpress/reusable-blocks": "^3.11.0",
59
+ "@wordpress/rich-text": "^5.11.0",
60
+ "@wordpress/server-side-render": "^3.11.0",
61
+ "@wordpress/url": "^3.14.0",
62
+ "@wordpress/viewport": "^4.11.0",
63
63
  "classnames": "^2.3.1",
64
64
  "colord": "^2.7.0",
65
65
  "fast-average-color": "4.3.0",
@@ -76,5 +76,5 @@
76
76
  "publishConfig": {
77
77
  "access": "public"
78
78
  },
79
- "gitHead": "a80eeb62ec7cb1418b9915c277e084a29d6665e3"
79
+ "gitHead": "9d9d33bbdf317a4381b8ca1713e43bb50df653b3"
80
80
  }
@@ -4,7 +4,7 @@
4
4
  "name": "core/comment-template",
5
5
  "title": "Comment Template",
6
6
  "category": "design",
7
- "parent": [ "core/comments-query-loop" ],
7
+ "parent": [ "core/comments" ],
8
8
  "description": "Contains the block elements used to display a comment, like the title, date, author, avatar and more.",
9
9
  "textdomain": "default",
10
10
  "usesContext": [ "postId" ],
@@ -14,4 +14,18 @@
14
14
  list-style: none;
15
15
  padding-left: 2rem;
16
16
  }
17
+
18
+ &.alignleft {
19
+ float: left;
20
+ }
21
+
22
+ &.aligncenter {
23
+ margin-left: auto;
24
+ margin-right: auto;
25
+ width: fit-content;
26
+ }
27
+
28
+ &.alignright {
29
+ float: right;
30
+ }
17
31
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://schemas.wp.org/trunk/block.json",
3
3
  "apiVersion": 2,
4
- "name": "core/comments-query-loop",
4
+ "name": "core/comments",
5
5
  "title": "Comments",
6
6
  "category": "theme",
7
7
  "description": "An advanced block that allows displaying post comments using different visual configurations.",
@@ -0,0 +1,53 @@
1
+ /**
2
+ * WordPress dependencies
3
+ */
4
+ import { InnerBlocks, useBlockProps } from '@wordpress/block-editor';
5
+
6
+ // v1: Deprecate the initial version of the block which was called "Comments
7
+ // Query Loop" instead of "Comments".
8
+ const v1 = {
9
+ attributes: {
10
+ tagName: {
11
+ type: 'string',
12
+ default: 'div',
13
+ },
14
+ },
15
+ apiVersion: 2,
16
+ supports: {
17
+ align: [ 'wide', 'full' ],
18
+ html: false,
19
+ color: {
20
+ gradients: true,
21
+ link: true,
22
+ __experimentalDefaultControls: {
23
+ background: true,
24
+ text: true,
25
+ link: true,
26
+ },
27
+ },
28
+ },
29
+ save( { attributes: { tagName: Tag } } ) {
30
+ const blockProps = useBlockProps.save();
31
+ const { className } = blockProps;
32
+ const classes = className?.split( ' ' ) || [];
33
+
34
+ // The ID of the previous version of the block
35
+ // didn't have the `wp-block-comments` class,
36
+ // so we need to remove it here in order to mimic it.
37
+ const newClasses = classes?.filter(
38
+ ( cls ) => cls !== 'wp-block-comments'
39
+ );
40
+ const newBlockProps = {
41
+ ...blockProps,
42
+ className: newClasses.join( ' ' ),
43
+ };
44
+
45
+ return (
46
+ <Tag { ...newBlockProps }>
47
+ <InnerBlocks.Content />
48
+ </Tag>
49
+ );
50
+ },
51
+ };
52
+
53
+ export default [ v1 ];
@@ -7,6 +7,7 @@ import { postComments as icon } from '@wordpress/icons';
7
7
  * Internal dependencies
8
8
  */
9
9
  import metadata from './block.json';
10
+ import deprecated from './deprecated';
10
11
  import edit from './edit';
11
12
  import save from './save';
12
13
 
@@ -17,4 +18,5 @@ export const settings = {
17
18
  icon,
18
19
  edit,
19
20
  save,
21
+ deprecated,
20
22
  };
@@ -4,7 +4,7 @@
4
4
  "name": "core/comments-pagination",
5
5
  "title": "Comments Pagination",
6
6
  "category": "theme",
7
- "parent": [ "core/comments-query-loop" ],
7
+ "parent": [ "core/comments" ],
8
8
  "description": "Displays a paginated navigation to next/previous set of comments, when applicable.",
9
9
  "textdomain": "default",
10
10
  "attributes": {
@@ -4,7 +4,7 @@
4
4
  "name": "core/comments-title",
5
5
  "title": "Comments Title",
6
6
  "category": "theme",
7
- "ancestor": [ "core/comments-query-loop" ],
7
+ "ancestor": [ "core/comments" ],
8
8
  "description": "Displays a title with the number of comments",
9
9
  "textdomain": "default",
10
10
  "usesContext": [ "postId", "postType" ],