@wordpress/block-library 9.28.1-next.0f6f9d12c.0 → 9.29.1-next.e256d081a.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 (210) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/{accordions → accordion}/edit.js +1 -1
  3. package/build/accordion/edit.js.map +1 -0
  4. package/build/accordion/icon.js +33 -0
  5. package/build/accordion/icon.js.map +1 -0
  6. package/build/{accordions → accordion}/index.js +7 -10
  7. package/build/accordion/index.js.map +1 -0
  8. package/build/accordion/init.js.map +1 -0
  9. package/build/accordion/save.js.map +1 -0
  10. package/build/accordion/view.js.map +1 -0
  11. package/build/accordion-content/edit.js.map +1 -0
  12. package/build/accordion-content/icon.js +35 -0
  13. package/build/accordion-content/icon.js.map +1 -0
  14. package/build/accordion-content/icons.js.map +1 -0
  15. package/build/{accordion-item → accordion-content}/index.js +6 -9
  16. package/build/accordion-content/index.js.map +1 -0
  17. package/build/accordion-content/init.js.map +1 -0
  18. package/build/accordion-content/save.js.map +1 -0
  19. package/build/accordion-header/edit.js +4 -4
  20. package/build/accordion-header/edit.js.map +1 -1
  21. package/build/accordion-header/icon.js +25 -0
  22. package/build/accordion-header/icon.js.map +1 -0
  23. package/build/accordion-header/index.js +4 -7
  24. package/build/accordion-header/index.js.map +1 -1
  25. package/build/accordion-header/save.js +4 -4
  26. package/build/accordion-header/save.js.map +1 -1
  27. package/build/accordion-panel/icon.js +22 -0
  28. package/build/accordion-panel/icon.js.map +1 -0
  29. package/build/accordion-panel/index.js +4 -7
  30. package/build/accordion-panel/index.js.map +1 -1
  31. package/build/audio/edit.js +3 -1
  32. package/build/audio/edit.js.map +1 -1
  33. package/build/form/deprecated.js +97 -0
  34. package/build/form/deprecated.js.map +1 -0
  35. package/build/form/index.js +2 -1
  36. package/build/form/index.js.map +1 -1
  37. package/build/form/save.js +0 -1
  38. package/build/form/save.js.map +1 -1
  39. package/build/gallery/edit.js +9 -3
  40. package/build/gallery/edit.js.map +1 -1
  41. package/build/image/edit.js +0 -5
  42. package/build/image/edit.js.map +1 -1
  43. package/build/image/image.js +1 -1
  44. package/build/image/image.js.map +1 -1
  45. package/build/index.js +4 -4
  46. package/build/index.js.map +1 -1
  47. package/build/post-comments-link/edit.js +6 -1
  48. package/build/post-comments-link/edit.js.map +1 -1
  49. package/build/query/edit/index.js.map +1 -1
  50. package/build/query/edit/query-content.js +7 -6
  51. package/build/query/edit/query-content.js.map +1 -1
  52. package/build/query/edit/query-placeholder.js +30 -9
  53. package/build/query/edit/query-placeholder.js.map +1 -1
  54. package/build/query/edit/query-toolbar.js +4 -2
  55. package/build/query/edit/query-toolbar.js.map +1 -1
  56. package/build/template-part/edit/placeholder.js +2 -1
  57. package/build/template-part/edit/placeholder.js.map +1 -1
  58. package/build/video/edit-common-settings.js +6 -3
  59. package/build/video/edit-common-settings.js.map +1 -1
  60. package/build/video/edit.js +3 -1
  61. package/build/video/edit.js.map +1 -1
  62. package/build-module/{accordions → accordion}/edit.js +1 -1
  63. package/build-module/accordion/edit.js.map +1 -0
  64. package/build-module/accordion/icon.js +27 -0
  65. package/build-module/accordion/icon.js.map +1 -0
  66. package/build-module/{accordions → accordion}/index.js +7 -10
  67. package/build-module/accordion/index.js.map +1 -0
  68. package/build-module/accordion/init.js.map +1 -0
  69. package/build-module/accordion/save.js.map +1 -0
  70. package/build-module/accordion/view.js.map +1 -0
  71. package/build-module/accordion-content/edit.js.map +1 -0
  72. package/build-module/accordion-content/icon.js +29 -0
  73. package/build-module/accordion-content/icon.js.map +1 -0
  74. package/build-module/accordion-content/icons.js.map +1 -0
  75. package/build-module/{accordion-item → accordion-content}/index.js +6 -9
  76. package/build-module/accordion-content/index.js.map +1 -0
  77. package/build-module/accordion-content/init.js.map +1 -0
  78. package/build-module/accordion-content/save.js.map +1 -0
  79. package/build-module/accordion-header/edit.js +4 -4
  80. package/build-module/accordion-header/edit.js.map +1 -1
  81. package/build-module/accordion-header/icon.js +19 -0
  82. package/build-module/accordion-header/icon.js.map +1 -0
  83. package/build-module/accordion-header/index.js +4 -7
  84. package/build-module/accordion-header/index.js.map +1 -1
  85. package/build-module/accordion-header/save.js +4 -4
  86. package/build-module/accordion-header/save.js.map +1 -1
  87. package/build-module/accordion-panel/icon.js +16 -0
  88. package/build-module/accordion-panel/icon.js.map +1 -0
  89. package/build-module/accordion-panel/index.js +4 -7
  90. package/build-module/accordion-panel/index.js.map +1 -1
  91. package/build-module/audio/edit.js +4 -2
  92. package/build-module/audio/edit.js.map +1 -1
  93. package/build-module/form/deprecated.js +90 -0
  94. package/build-module/form/deprecated.js.map +1 -0
  95. package/build-module/form/index.js +2 -1
  96. package/build-module/form/index.js.map +1 -1
  97. package/build-module/form/save.js +0 -1
  98. package/build-module/form/save.js.map +1 -1
  99. package/build-module/gallery/edit.js +9 -3
  100. package/build-module/gallery/edit.js.map +1 -1
  101. package/build-module/image/edit.js +0 -5
  102. package/build-module/image/edit.js.map +1 -1
  103. package/build-module/image/image.js +1 -1
  104. package/build-module/image/image.js.map +1 -1
  105. package/build-module/index.js +4 -4
  106. package/build-module/index.js.map +1 -1
  107. package/build-module/post-comments-link/edit.js +6 -1
  108. package/build-module/post-comments-link/edit.js.map +1 -1
  109. package/build-module/query/edit/index.js.map +1 -1
  110. package/build-module/query/edit/query-content.js +8 -7
  111. package/build-module/query/edit/query-content.js.map +1 -1
  112. package/build-module/query/edit/query-placeholder.js +30 -10
  113. package/build-module/query/edit/query-placeholder.js.map +1 -1
  114. package/build-module/query/edit/query-toolbar.js +4 -2
  115. package/build-module/query/edit/query-toolbar.js.map +1 -1
  116. package/build-module/template-part/edit/placeholder.js +2 -1
  117. package/build-module/template-part/edit/placeholder.js.map +1 -1
  118. package/build-module/video/edit-common-settings.js +6 -3
  119. package/build-module/video/edit-common-settings.js.map +1 -1
  120. package/build-module/video/edit.js +4 -2
  121. package/build-module/video/edit.js.map +1 -1
  122. package/build-style/{accordions → accordion}/style-rtl.css +13 -13
  123. package/build-style/{accordions → accordion}/style.css +13 -13
  124. package/build-style/editor-rtl.css +4 -0
  125. package/build-style/editor.css +4 -0
  126. package/build-style/query/editor-rtl.css +4 -0
  127. package/build-style/query/editor.css +4 -0
  128. package/build-style/style-rtl.css +13 -13
  129. package/build-style/style.css +13 -13
  130. package/package.json +36 -36
  131. package/src/{accordions → accordion}/block.json +5 -5
  132. package/src/{accordions → accordion}/edit.js +1 -1
  133. package/src/accordion/icon.js +23 -0
  134. package/src/{accordion-item → accordion}/index.js +2 -5
  135. package/src/{accordions → accordion}/index.php +12 -12
  136. package/src/{accordions → accordion}/style.scss +13 -13
  137. package/src/{accordion-item → accordion-content}/block.json +4 -4
  138. package/src/accordion-content/icon.js +28 -0
  139. package/src/{accordions → accordion-content}/index.js +2 -5
  140. package/src/{accordion-item → accordion-content}/index.php +10 -10
  141. package/src/accordion-header/block.json +2 -2
  142. package/src/accordion-header/edit.js +9 -6
  143. package/src/accordion-header/icon.js +16 -0
  144. package/src/accordion-header/index.js +2 -5
  145. package/src/accordion-header/save.js +4 -4
  146. package/src/accordion-panel/block.json +2 -2
  147. package/src/accordion-panel/icon.js +15 -0
  148. package/src/accordion-panel/index.js +2 -5
  149. package/src/audio/edit.js +6 -1
  150. package/src/form/block.json +0 -1
  151. package/src/form/deprecated.js +96 -0
  152. package/src/form/index.js +2 -0
  153. package/src/form/save.js +0 -1
  154. package/src/gallery/edit.js +9 -3
  155. package/src/image/edit.js +0 -6
  156. package/src/image/image.js +2 -1
  157. package/src/index.js +4 -4
  158. package/src/navigation/edit/test/navigation-menu-selector.js +2 -2
  159. package/src/post-comments-link/edit.js +7 -1
  160. package/src/query/edit/index.js +1 -0
  161. package/src/query/edit/query-content.js +8 -4
  162. package/src/query/edit/query-placeholder.js +47 -17
  163. package/src/query/edit/query-toolbar.js +10 -2
  164. package/src/query/editor.scss +6 -1
  165. package/src/social-link/README.md +4 -1
  166. package/src/style.scss +1 -1
  167. package/src/template-part/edit/placeholder.js +2 -1
  168. package/src/video/edit-common-settings.js +14 -5
  169. package/src/video/edit.js +6 -1
  170. package/build/accordion-item/edit.js.map +0 -1
  171. package/build/accordion-item/icons.js.map +0 -1
  172. package/build/accordion-item/index.js.map +0 -1
  173. package/build/accordion-item/init.js.map +0 -1
  174. package/build/accordion-item/save.js.map +0 -1
  175. package/build/accordions/edit.js.map +0 -1
  176. package/build/accordions/index.js.map +0 -1
  177. package/build/accordions/init.js.map +0 -1
  178. package/build/accordions/save.js.map +0 -1
  179. package/build/accordions/view.js.map +0 -1
  180. package/build-module/accordion-item/edit.js.map +0 -1
  181. package/build-module/accordion-item/icons.js.map +0 -1
  182. package/build-module/accordion-item/index.js.map +0 -1
  183. package/build-module/accordion-item/init.js.map +0 -1
  184. package/build-module/accordion-item/save.js.map +0 -1
  185. package/build-module/accordions/edit.js.map +0 -1
  186. package/build-module/accordions/index.js.map +0 -1
  187. package/build-module/accordions/init.js.map +0 -1
  188. package/build-module/accordions/save.js.map +0 -1
  189. package/build-module/accordions/view.js.map +0 -1
  190. /package/build/{accordions → accordion}/init.js +0 -0
  191. /package/build/{accordions → accordion}/save.js +0 -0
  192. /package/build/{accordions → accordion}/view.js +0 -0
  193. /package/build/{accordion-item → accordion-content}/edit.js +0 -0
  194. /package/build/{accordion-item → accordion-content}/icons.js +0 -0
  195. /package/build/{accordion-item → accordion-content}/init.js +0 -0
  196. /package/build/{accordion-item → accordion-content}/save.js +0 -0
  197. /package/build-module/{accordions → accordion}/init.js +0 -0
  198. /package/build-module/{accordions → accordion}/save.js +0 -0
  199. /package/build-module/{accordions → accordion}/view.js +0 -0
  200. /package/build-module/{accordion-item → accordion-content}/edit.js +0 -0
  201. /package/build-module/{accordion-item → accordion-content}/icons.js +0 -0
  202. /package/build-module/{accordion-item → accordion-content}/init.js +0 -0
  203. /package/build-module/{accordion-item → accordion-content}/save.js +0 -0
  204. /package/src/{accordions → accordion}/init.js +0 -0
  205. /package/src/{accordions → accordion}/save.js +0 -0
  206. /package/src/{accordions → accordion}/view.js +0 -0
  207. /package/src/{accordion-item → accordion-content}/edit.js +0 -0
  208. /package/src/{accordion-item → accordion-content}/icons.js +0 -0
  209. /package/src/{accordion-item → accordion-content}/init.js +0 -0
  210. /package/src/{accordion-item → accordion-content}/save.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","useDispatch","useInstanceId","useEffect","useCallback","BlockControls","InspectorControls","useBlockProps","store","blockEditorStore","useInnerBlocksProps","privateApis","blockEditorPrivateApis","__","coreStore","EnhancedPaginationControl","unlock","QueryInspectorControls","EnhancedPaginationModal","getQueryContextFromTemplate","QueryToolbar","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","HTMLElementControl","DEFAULTS_POSTS_PER_PAGE","TEMPLATE","QueryContent","attributes","setAttributes","clientId","context","name","queryId","query","enhancedPagination","tagName","TagName","inherit","templateSlug","isSingular","__unstableMarkNextChangeAsNotPersistent","instanceId","blockProps","innerBlocksProps","template","postsPerPage","select","getSettings","getEntityRecord","getEntityRecordEdits","canUser","settingPerPage","kind","posts_per_page","editedSettingPerPage","updateQuery","newQuery","prevAttributes","perPage","Object","keys","length","Number","isFinite","children","setQuery","group","onChange","value","options","label"],"sources":["@wordpress/block-library/src/query/edit/query-content.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useEffect, useCallback } from '@wordpress/element';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tuseInnerBlocksProps,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport EnhancedPaginationControl from './inspector-controls/enhanced-pagination-control';\nimport { unlock } from '../../lock-unlock';\nimport QueryInspectorControls from './inspector-controls';\nimport EnhancedPaginationModal from './enhanced-pagination-modal';\nimport { getQueryContextFromTemplate } from '../utils';\nimport QueryToolbar from './query-toolbar';\n\nconst { HTMLElementControl } = unlock( blockEditorPrivateApis );\n\nconst DEFAULTS_POSTS_PER_PAGE = 3;\n\nconst TEMPLATE = [ [ 'core/post-template' ] ];\nexport default function QueryContent( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tcontext,\n\tname,\n} ) {\n\tconst {\n\t\tqueryId,\n\t\tquery,\n\t\tenhancedPagination,\n\t\ttagName: TagName = 'div',\n\t\tquery: { inherit } = {},\n\t} = attributes;\n\tconst { templateSlug } = context;\n\tconst { isSingular } = getQueryContextFromTemplate( templateSlug );\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst instanceId = useInstanceId( QueryContent );\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t} );\n\tconst { postsPerPage } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst { getEntityRecord, getEntityRecordEdits, canUser } =\n\t\t\tselect( coreStore );\n\t\tconst settingPerPage = canUser( 'read', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} )\n\t\t\t? +getEntityRecord( 'root', 'site' )?.posts_per_page\n\t\t\t: +getSettings().postsPerPage;\n\n\t\t// Gets changes made via the template area posts per page setting. These won't be saved\n\t\t// until the page is saved, but we should reflect this setting within the query loops\n\t\t// that inherit it.\n\t\tconst editedSettingPerPage = +getEntityRecordEdits( 'root', 'site' )\n\t\t\t?.posts_per_page;\n\n\t\treturn {\n\t\t\tpostsPerPage:\n\t\t\t\teditedSettingPerPage ||\n\t\t\t\tsettingPerPage ||\n\t\t\t\tDEFAULTS_POSTS_PER_PAGE,\n\t\t};\n\t}, [] );\n\t// There are some effects running where some initialization logic is\n\t// happening and setting some values to some attributes (ex. queryId).\n\t// These updates can cause an `undo trap` where undoing will result in\n\t// resetting again, so we need to mark these changes as not persistent\n\t// with `__unstableMarkNextChangeAsNotPersistent`.\n\n\t// Changes in query property (which is an object) need to be in the same callback,\n\t// because updates are batched after the render and changes in different query properties\n\t// would cause to override previous wanted changes.\n\tconst updateQuery = useCallback(\n\t\t( newQuery ) =>\n\t\t\tsetAttributes( ( prevAttributes ) => ( {\n\t\t\t\tquery: { ...prevAttributes.query, ...newQuery },\n\t\t\t} ) ),\n\t\t[ setAttributes ]\n\t);\n\tuseEffect( () => {\n\t\tconst newQuery = {};\n\t\t// When we inherit from global query always need to set the `perPage`\n\t\t// based on the reading settings.\n\t\tif ( inherit && query.perPage !== postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t} else if ( ! query.perPage && postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t}\n\n\t\tif ( !! Object.keys( newQuery ).length ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateQuery( newQuery );\n\t\t}\n\t}, [\n\t\tquery.perPage,\n\t\tinherit,\n\t\tpostsPerPage,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tupdateQuery,\n\t] );\n\t// We need this for multi-query block pagination.\n\t// Query parameters for each block are scoped to their ID.\n\tuseEffect( () => {\n\t\tif ( ! Number.isFinite( queryId ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { queryId: instanceId } );\n\t\t}\n\t}, [\n\t\tqueryId,\n\t\tinstanceId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tsetAttributes,\n\t] );\n\n\treturn (\n\t\t<>\n\t\t\t<EnhancedPaginationModal\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tclientId={ clientId }\n\t\t\t/>\n\t\t\t<InspectorControls>\n\t\t\t\t<QueryInspectorControls\n\t\t\t\t\tname={ name }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisSingular={ isSingular }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls>\n\t\t\t\t<QueryToolbar attributes={ attributes } clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<HTMLElementControl\n\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t] }\n\t\t\t\t/>\n\t\t\t\t<EnhancedPaginationControl\n\t\t\t\t\tenhancedPagination={ enhancedPagination }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<TagName { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useSelect","useDispatch","useInstanceId","useEffect","useCallback","InspectorControls","useBlockProps","store","blockEditorStore","useInnerBlocksProps","privateApis","blockEditorPrivateApis","BlockControls","__","coreStore","EnhancedPaginationControl","unlock","QueryInspectorControls","EnhancedPaginationModal","getQueryContextFromTemplate","QueryToolbar","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","HTMLElementControl","DEFAULTS_POSTS_PER_PAGE","TEMPLATE","QueryContent","attributes","setAttributes","clientId","context","name","queryId","query","enhancedPagination","tagName","TagName","inherit","templateSlug","isSingular","__unstableMarkNextChangeAsNotPersistent","instanceId","blockProps","innerBlocksProps","template","postsPerPage","select","getSettings","getEntityRecord","getEntityRecordEdits","canUser","settingPerPage","kind","posts_per_page","editedSettingPerPage","updateQuery","newQuery","prevAttributes","perPage","Object","keys","length","Number","isFinite","children","hasInnerBlocks","setQuery","group","onChange","value","options","label"],"sources":["@wordpress/block-library/src/query/edit/query-content.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useEffect, useCallback } from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tuseInnerBlocksProps,\n\tprivateApis as blockEditorPrivateApis,\n\tBlockControls,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport EnhancedPaginationControl from './inspector-controls/enhanced-pagination-control';\nimport { unlock } from '../../lock-unlock';\nimport QueryInspectorControls from './inspector-controls';\nimport EnhancedPaginationModal from './enhanced-pagination-modal';\nimport { getQueryContextFromTemplate } from '../utils';\nimport QueryToolbar from './query-toolbar';\n\nconst { HTMLElementControl } = unlock( blockEditorPrivateApis );\n\nconst DEFAULTS_POSTS_PER_PAGE = 3;\n\nconst TEMPLATE = [ [ 'core/post-template' ] ];\nexport default function QueryContent( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tcontext,\n\tname,\n} ) {\n\tconst {\n\t\tqueryId,\n\t\tquery,\n\t\tenhancedPagination,\n\t\ttagName: TagName = 'div',\n\t\tquery: { inherit } = {},\n\t} = attributes;\n\tconst { templateSlug } = context;\n\tconst { isSingular } = getQueryContextFromTemplate( templateSlug );\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst instanceId = useInstanceId( QueryContent );\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t} );\n\tconst { postsPerPage } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst { getEntityRecord, getEntityRecordEdits, canUser } =\n\t\t\tselect( coreStore );\n\t\tconst settingPerPage = canUser( 'read', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} )\n\t\t\t? +getEntityRecord( 'root', 'site' )?.posts_per_page\n\t\t\t: +getSettings().postsPerPage;\n\n\t\t// Gets changes made via the template area posts per page setting. These won't be saved\n\t\t// until the page is saved, but we should reflect this setting within the query loops\n\t\t// that inherit it.\n\t\tconst editedSettingPerPage = +getEntityRecordEdits( 'root', 'site' )\n\t\t\t?.posts_per_page;\n\n\t\treturn {\n\t\t\tpostsPerPage:\n\t\t\t\teditedSettingPerPage ||\n\t\t\t\tsettingPerPage ||\n\t\t\t\tDEFAULTS_POSTS_PER_PAGE,\n\t\t};\n\t}, [] );\n\t// There are some effects running where some initialization logic is\n\t// happening and setting some values to some attributes (ex. queryId).\n\t// These updates can cause an `undo trap` where undoing will result in\n\t// resetting again, so we need to mark these changes as not persistent\n\t// with `__unstableMarkNextChangeAsNotPersistent`.\n\n\t// Changes in query property (which is an object) need to be in the same callback,\n\t// because updates are batched after the render and changes in different query properties\n\t// would cause to override previous wanted changes.\n\tconst updateQuery = useCallback(\n\t\t( newQuery ) =>\n\t\t\tsetAttributes( ( prevAttributes ) => ( {\n\t\t\t\tquery: { ...prevAttributes.query, ...newQuery },\n\t\t\t} ) ),\n\t\t[ setAttributes ]\n\t);\n\tuseEffect( () => {\n\t\tconst newQuery = {};\n\t\t// When we inherit from global query always need to set the `perPage`\n\t\t// based on the reading settings.\n\t\tif ( inherit && query.perPage !== postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t} else if ( ! query.perPage && postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t}\n\n\t\tif ( !! Object.keys( newQuery ).length ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateQuery( newQuery );\n\t\t}\n\t}, [\n\t\tquery.perPage,\n\t\tinherit,\n\t\tpostsPerPage,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tupdateQuery,\n\t] );\n\t// We need this for multi-query block pagination.\n\t// Query parameters for each block are scoped to their ID.\n\tuseEffect( () => {\n\t\tif ( ! Number.isFinite( queryId ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { queryId: instanceId } );\n\t\t}\n\t}, [\n\t\tqueryId,\n\t\tinstanceId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tsetAttributes,\n\t] );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<QueryToolbar\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\thasInnerBlocks\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<EnhancedPaginationModal\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tclientId={ clientId }\n\t\t\t/>\n\t\t\t<InspectorControls>\n\t\t\t\t<QueryInspectorControls\n\t\t\t\t\tname={ name }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisSingular={ isSingular }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<HTMLElementControl\n\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t] }\n\t\t\t\t/>\n\t\t\t\t<EnhancedPaginationControl\n\t\t\t\t\tenhancedPagination={ enhancedPagination }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<TagName { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -4,15 +4,17 @@
4
4
  import { useSelect, useDispatch } from '@wordpress/data';
5
5
  import { createBlocksFromInnerBlocksTemplate, store as blocksStore } from '@wordpress/blocks';
6
6
  import { useState } from '@wordpress/element';
7
- import { useBlockProps, store as blockEditorStore, __experimentalBlockVariationPicker } from '@wordpress/block-editor';
7
+ import { store as blockEditorStore, __experimentalBlockVariationPicker, BlockControls, useBlockProps } from '@wordpress/block-editor';
8
8
  import { Button, Placeholder } from '@wordpress/components';
9
9
  import { __ } from '@wordpress/i18n';
10
+ import { useResizeObserver } from '@wordpress/compose';
10
11
 
11
12
  /**
12
13
  * Internal dependencies
13
14
  */
14
15
  import { useScopedBlockVariations } from '../utils';
15
16
  import { useBlockPatterns } from './pattern-selection';
17
+ import QueryToolbar from './query-toolbar';
16
18
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
17
19
  export default function QueryPlaceholder({
18
20
  attributes,
@@ -21,7 +23,14 @@ export default function QueryPlaceholder({
21
23
  openPatternSelectionModal
22
24
  }) {
23
25
  const [isStartingBlank, setIsStartingBlank] = useState(false);
24
- const blockProps = useBlockProps();
26
+ const [containerWidth, setContainerWidth] = useState(0);
27
+
28
+ // Use ResizeObserver to monitor container width.
29
+ const resizeObserverRef = useResizeObserver(([entry]) => {
30
+ setContainerWidth(entry.contentRect.width);
31
+ });
32
+ const SMALL_CONTAINER_BREAKPOINT = 160;
33
+ const isSmallContainer = containerWidth > 0 && containerWidth < SMALL_CONTAINER_BREAKPOINT;
25
34
  const {
26
35
  blockType,
27
36
  activeBlockVariation
@@ -38,6 +47,9 @@ export default function QueryPlaceholder({
38
47
  const hasPatterns = !!useBlockPatterns(clientId, attributes).length;
39
48
  const icon = activeBlockVariation?.icon?.src || activeBlockVariation?.icon || blockType?.icon?.src;
40
49
  const label = activeBlockVariation?.title || blockType?.title;
50
+ const blockProps = useBlockProps({
51
+ ref: resizeObserverRef
52
+ });
41
53
  if (isStartingBlank) {
42
54
  return /*#__PURE__*/_jsx(QueryVariationPicker, {
43
55
  clientId: clientId,
@@ -46,18 +58,26 @@ export default function QueryPlaceholder({
46
58
  label: label
47
59
  });
48
60
  }
49
- return /*#__PURE__*/_jsx("div", {
61
+ return /*#__PURE__*/_jsxs("div", {
50
62
  ...blockProps,
51
- children: /*#__PURE__*/_jsxs(Placeholder, {
52
- icon: icon,
53
- label: label,
54
- instructions: __('Choose a pattern for the query loop or start blank.'),
55
- children: [!!hasPatterns && /*#__PURE__*/_jsx(Button, {
63
+ children: [/*#__PURE__*/_jsx(BlockControls, {
64
+ children: /*#__PURE__*/_jsx(QueryToolbar, {
65
+ clientId: clientId,
66
+ attributes: attributes,
67
+ hasInnerBlocks: false
68
+ })
69
+ }), /*#__PURE__*/_jsxs(Placeholder, {
70
+ className: "block-editor-media-placeholder",
71
+ icon: !isSmallContainer && icon,
72
+ label: !isSmallContainer && label,
73
+ instructions: !isSmallContainer && __('Choose a pattern for the query loop or start blank.'),
74
+ withIllustration: isSmallContainer,
75
+ children: [!!hasPatterns && !isSmallContainer && /*#__PURE__*/_jsx(Button, {
56
76
  __next40pxDefaultSize: true,
57
77
  variant: "primary",
58
78
  onClick: openPatternSelectionModal,
59
79
  children: __('Choose')
60
- }), /*#__PURE__*/_jsx(Button, {
80
+ }), !isSmallContainer && /*#__PURE__*/_jsx(Button, {
61
81
  __next40pxDefaultSize: true,
62
82
  variant: "secondary",
63
83
  onClick: () => {
@@ -65,7 +85,7 @@ export default function QueryPlaceholder({
65
85
  },
66
86
  children: __('Start blank')
67
87
  })]
68
- })
88
+ })]
69
89
  });
70
90
  }
71
91
  function QueryVariationPicker({
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","useDispatch","createBlocksFromInnerBlocksTemplate","store","blocksStore","useState","useBlockProps","blockEditorStore","__experimentalBlockVariationPicker","Button","Placeholder","__","useScopedBlockVariations","useBlockPatterns","jsx","_jsx","jsxs","_jsxs","QueryPlaceholder","attributes","clientId","name","openPatternSelectionModal","isStartingBlank","setIsStartingBlank","blockProps","blockType","activeBlockVariation","select","getActiveBlockVariation","getBlockType","hasPatterns","length","icon","src","label","title","QueryVariationPicker","children","instructions","__next40pxDefaultSize","variant","onClick","scopeVariations","replaceInnerBlocks","variations","onSelect","variation","innerBlocks"],"sources":["@wordpress/block-library/src/query/edit/query-placeholder.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tcreateBlocksFromInnerBlocksTemplate,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport { useState } from '@wordpress/element';\nimport {\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalBlockVariationPicker,\n} from '@wordpress/block-editor';\nimport { Button, Placeholder } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useScopedBlockVariations } from '../utils';\nimport { useBlockPatterns } from './pattern-selection';\n\nexport default function QueryPlaceholder( {\n\tattributes,\n\tclientId,\n\tname,\n\topenPatternSelectionModal,\n} ) {\n\tconst [ isStartingBlank, setIsStartingBlank ] = useState( false );\n\tconst blockProps = useBlockProps();\n\tconst { blockType, activeBlockVariation } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveBlockVariation, getBlockType } =\n\t\t\t\tselect( blocksStore );\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tactiveBlockVariation: getActiveBlockVariation(\n\t\t\t\t\tname,\n\t\t\t\t\tattributes\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ name, attributes ]\n\t);\n\tconst hasPatterns = !! useBlockPatterns( clientId, attributes ).length;\n\tconst icon =\n\t\tactiveBlockVariation?.icon?.src ||\n\t\tactiveBlockVariation?.icon ||\n\t\tblockType?.icon?.src;\n\tconst label = activeBlockVariation?.title || blockType?.title;\n\tif ( isStartingBlank ) {\n\t\treturn (\n\t\t\t<QueryVariationPicker\n\t\t\t\tclientId={ clientId }\n\t\t\t\tattributes={ attributes }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Placeholder\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Choose a pattern for the query loop or start blank.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ !! hasPatterns && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ openPatternSelectionModal }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Choose' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetIsStartingBlank( true );\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Start blank' ) }\n\t\t\t\t</Button>\n\t\t\t</Placeholder>\n\t\t</div>\n\t);\n}\n\nfunction QueryVariationPicker( { clientId, attributes, icon, label } ) {\n\tconst scopeVariations = useScopedBlockVariations( attributes );\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<__experimentalBlockVariationPicker\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tvariations={ scopeVariations }\n\t\t\t\tonSelect={ ( variation ) => {\n\t\t\t\t\tif ( variation.innerBlocks ) {\n\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlocksFromInnerBlocksTemplate(\n\t\t\t\t\t\t\t\tvariation.innerBlocks\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useSelect","useDispatch","createBlocksFromInnerBlocksTemplate","store","blocksStore","useState","blockEditorStore","__experimentalBlockVariationPicker","BlockControls","useBlockProps","Button","Placeholder","__","useResizeObserver","useScopedBlockVariations","useBlockPatterns","QueryToolbar","jsx","_jsx","jsxs","_jsxs","QueryPlaceholder","attributes","clientId","name","openPatternSelectionModal","isStartingBlank","setIsStartingBlank","containerWidth","setContainerWidth","resizeObserverRef","entry","contentRect","width","SMALL_CONTAINER_BREAKPOINT","isSmallContainer","blockType","activeBlockVariation","select","getActiveBlockVariation","getBlockType","hasPatterns","length","icon","src","label","title","blockProps","ref","QueryVariationPicker","children","hasInnerBlocks","className","instructions","withIllustration","__next40pxDefaultSize","variant","onClick","scopeVariations","replaceInnerBlocks","variations","onSelect","variation","innerBlocks"],"sources":["@wordpress/block-library/src/query/edit/query-placeholder.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tcreateBlocksFromInnerBlocksTemplate,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport { useState } from '@wordpress/element';\nimport {\n\tstore as blockEditorStore,\n\t__experimentalBlockVariationPicker,\n\tBlockControls,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { Button, Placeholder } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useResizeObserver } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { useScopedBlockVariations } from '../utils';\nimport { useBlockPatterns } from './pattern-selection';\nimport QueryToolbar from './query-toolbar';\n\nexport default function QueryPlaceholder( {\n\tattributes,\n\tclientId,\n\tname,\n\topenPatternSelectionModal,\n} ) {\n\tconst [ isStartingBlank, setIsStartingBlank ] = useState( false );\n\tconst [ containerWidth, setContainerWidth ] = useState( 0 );\n\n\t// Use ResizeObserver to monitor container width.\n\tconst resizeObserverRef = useResizeObserver( ( [ entry ] ) => {\n\t\tsetContainerWidth( entry.contentRect.width );\n\t} );\n\n\tconst SMALL_CONTAINER_BREAKPOINT = 160;\n\n\tconst isSmallContainer =\n\t\tcontainerWidth > 0 && containerWidth < SMALL_CONTAINER_BREAKPOINT;\n\n\tconst { blockType, activeBlockVariation } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getActiveBlockVariation, getBlockType } =\n\t\t\t\tselect( blocksStore );\n\t\t\treturn {\n\t\t\t\tblockType: getBlockType( name ),\n\t\t\t\tactiveBlockVariation: getActiveBlockVariation(\n\t\t\t\t\tname,\n\t\t\t\t\tattributes\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ name, attributes ]\n\t);\n\tconst hasPatterns = !! useBlockPatterns( clientId, attributes ).length;\n\tconst icon =\n\t\tactiveBlockVariation?.icon?.src ||\n\t\tactiveBlockVariation?.icon ||\n\t\tblockType?.icon?.src;\n\tconst label = activeBlockVariation?.title || blockType?.title;\n\tconst blockProps = useBlockProps( {\n\t\tref: resizeObserverRef,\n\t} );\n\n\tif ( isStartingBlank ) {\n\t\treturn (\n\t\t\t<QueryVariationPicker\n\t\t\t\tclientId={ clientId }\n\t\t\t\tattributes={ attributes }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<BlockControls>\n\t\t\t\t<QueryToolbar\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\thasInnerBlocks={ false }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<Placeholder\n\t\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\t\ticon={ ! isSmallContainer && icon }\n\t\t\t\tlabel={ ! isSmallContainer && label }\n\t\t\t\tinstructions={\n\t\t\t\t\t! isSmallContainer &&\n\t\t\t\t\t__( 'Choose a pattern for the query loop or start blank.' )\n\t\t\t\t}\n\t\t\t\twithIllustration={ isSmallContainer }\n\t\t\t>\n\t\t\t\t{ !! hasPatterns && ! isSmallContainer && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ openPatternSelectionModal }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Choose' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\n\t\t\t\t{ ! isSmallContainer && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetIsStartingBlank( true );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Start blank' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t</Placeholder>\n\t\t</div>\n\t);\n}\n\nfunction QueryVariationPicker( { clientId, attributes, icon, label } ) {\n\tconst scopeVariations = useScopedBlockVariations( attributes );\n\tconst { replaceInnerBlocks } = useDispatch( blockEditorStore );\n\tconst blockProps = useBlockProps();\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<__experimentalBlockVariationPicker\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ label }\n\t\t\t\tvariations={ scopeVariations }\n\t\t\t\tonSelect={ ( variation ) => {\n\t\t\t\t\tif ( variation.innerBlocks ) {\n\t\t\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\t\t\tclientId,\n\t\t\t\t\t\t\tcreateBlocksFromInnerBlocksTemplate(\n\t\t\t\t\t\t\t\tvariation.innerBlocks\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t} }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -11,12 +11,14 @@ import PatternSelection, { useBlockPatterns } from './pattern-selection';
11
11
  import { jsx as _jsx } from "react/jsx-runtime";
12
12
  export default function QueryToolbar({
13
13
  clientId,
14
- attributes
14
+ attributes,
15
+ hasInnerBlocks
15
16
  }) {
16
17
  const hasPatterns = useBlockPatterns(clientId, attributes).length;
17
18
  if (!hasPatterns) {
18
19
  return null;
19
20
  }
21
+ const buttonLabel = hasInnerBlocks ? __('Change design') : __('Choose pattern');
20
22
  return /*#__PURE__*/_jsx(ToolbarGroup, {
21
23
  className: "wp-block-template-part__block-control-group",
22
24
  children: /*#__PURE__*/_jsx(DropdownContentWrapper, {
@@ -31,7 +33,7 @@ export default function QueryToolbar({
31
33
  "aria-haspopup": "true",
32
34
  "aria-expanded": isOpen,
33
35
  onClick: onToggle,
34
- children: __('Change design')
36
+ children: buttonLabel
35
37
  }),
36
38
  renderContent: () => /*#__PURE__*/_jsx(PatternSelection, {
37
39
  clientId: clientId,
@@ -1 +1 @@
1
- {"version":3,"names":["ToolbarGroup","ToolbarButton","Dropdown","__experimentalDropdownContentWrapper","DropdownContentWrapper","__","PatternSelection","useBlockPatterns","jsx","_jsx","QueryToolbar","clientId","attributes","hasPatterns","length","className","children","contentClassName","focusOnMount","expandOnMobile","renderToggle","isOpen","onToggle","onClick","renderContent","showSearch","showTitlesAsTooltip"],"sources":["@wordpress/block-library/src/query/edit/query-toolbar.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tToolbarGroup,\n\tToolbarButton,\n\tDropdown,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport PatternSelection, { useBlockPatterns } from './pattern-selection';\n\nexport default function QueryToolbar( { clientId, attributes } ) {\n\tconst hasPatterns = useBlockPatterns( clientId, attributes ).length;\n\tif ( ! hasPatterns ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<ToolbarGroup className=\"wp-block-template-part__block-control-group\">\n\t\t\t<DropdownContentWrapper>\n\t\t\t\t<Dropdown\n\t\t\t\t\tcontentClassName=\"block-editor-block-settings-menu__popover\"\n\t\t\t\t\tfocusOnMount=\"firstElement\"\n\t\t\t\t\texpandOnMobile\n\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Change design' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t) }\n\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t<PatternSelection\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\t\tshowSearch={ false }\n\t\t\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</DropdownContentWrapper>\n\t\t</ToolbarGroup>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,YAAY,EACZC,aAAa,EACbC,QAAQ,EACRC,oCAAoC,IAAIC,sBAAsB,QACxD,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,gBAAgB,IAAIC,gBAAgB,QAAQ,qBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEzE,eAAe,SAASC,YAAYA,CAAE;EAAEC,QAAQ;EAAEC;AAAW,CAAC,EAAG;EAChE,MAAMC,WAAW,GAAGN,gBAAgB,CAAEI,QAAQ,EAAEC,UAAW,CAAC,CAACE,MAAM;EACnE,IAAK,CAAED,WAAW,EAAG;IACpB,OAAO,IAAI;EACZ;EAEA,oBACCJ,IAAA,CAACT,YAAY;IAACe,SAAS,EAAC,6CAA6C;IAAAC,QAAA,eACpEP,IAAA,CAACL,sBAAsB;MAAAY,QAAA,eACtBP,IAAA,CAACP,QAAQ;QACRe,gBAAgB,EAAC,2CAA2C;QAC5DC,YAAY,EAAC,cAAc;QAC3BC,cAAc;QACdC,YAAY,EAAGA,CAAE;UAAEC,MAAM;UAAEC;QAAS,CAAC,kBACpCb,IAAA,CAACR,aAAa;UACb,iBAAc,MAAM;UACpB,iBAAgBoB,MAAQ;UACxBE,OAAO,EAAGD,QAAU;UAAAN,QAAA,EAElBX,EAAE,CAAE,eAAgB;QAAC,CACT,CACb;QACHmB,aAAa,EAAGA,CAAA,kBACff,IAAA,CAACH,gBAAgB;UAChBK,QAAQ,EAAGA,QAAU;UACrBC,UAAU,EAAGA,UAAY;UACzBa,UAAU,EAAG,KAAO;UACpBC,mBAAmB;QAAA,CACnB;MACC,CACH;IAAC,CACqB;EAAC,CACZ,CAAC;AAEjB","ignoreList":[]}
1
+ {"version":3,"names":["ToolbarGroup","ToolbarButton","Dropdown","__experimentalDropdownContentWrapper","DropdownContentWrapper","__","PatternSelection","useBlockPatterns","jsx","_jsx","QueryToolbar","clientId","attributes","hasInnerBlocks","hasPatterns","length","buttonLabel","className","children","contentClassName","focusOnMount","expandOnMobile","renderToggle","isOpen","onToggle","onClick","renderContent","showSearch","showTitlesAsTooltip"],"sources":["@wordpress/block-library/src/query/edit/query-toolbar.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tToolbarGroup,\n\tToolbarButton,\n\tDropdown,\n\t__experimentalDropdownContentWrapper as DropdownContentWrapper,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport PatternSelection, { useBlockPatterns } from './pattern-selection';\n\nexport default function QueryToolbar( {\n\tclientId,\n\tattributes,\n\thasInnerBlocks,\n} ) {\n\tconst hasPatterns = useBlockPatterns( clientId, attributes ).length;\n\tif ( ! hasPatterns ) {\n\t\treturn null;\n\t}\n\n\tconst buttonLabel = hasInnerBlocks\n\t\t? __( 'Change design' )\n\t\t: __( 'Choose pattern' );\n\n\treturn (\n\t\t<ToolbarGroup className=\"wp-block-template-part__block-control-group\">\n\t\t\t<DropdownContentWrapper>\n\t\t\t\t<Dropdown\n\t\t\t\t\tcontentClassName=\"block-editor-block-settings-menu__popover\"\n\t\t\t\t\tfocusOnMount=\"firstElement\"\n\t\t\t\t\texpandOnMobile\n\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ buttonLabel }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t) }\n\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t<PatternSelection\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\t\tshowSearch={ false }\n\t\t\t\t\t\t\tshowTitlesAsTooltip\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</DropdownContentWrapper>\n\t\t</ToolbarGroup>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,YAAY,EACZC,aAAa,EACbC,QAAQ,EACRC,oCAAoC,IAAIC,sBAAsB,QACxD,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,gBAAgB,IAAIC,gBAAgB,QAAQ,qBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEzE,eAAe,SAASC,YAAYA,CAAE;EACrCC,QAAQ;EACRC,UAAU;EACVC;AACD,CAAC,EAAG;EACH,MAAMC,WAAW,GAAGP,gBAAgB,CAAEI,QAAQ,EAAEC,UAAW,CAAC,CAACG,MAAM;EACnE,IAAK,CAAED,WAAW,EAAG;IACpB,OAAO,IAAI;EACZ;EAEA,MAAME,WAAW,GAAGH,cAAc,GAC/BR,EAAE,CAAE,eAAgB,CAAC,GACrBA,EAAE,CAAE,gBAAiB,CAAC;EAEzB,oBACCI,IAAA,CAACT,YAAY;IAACiB,SAAS,EAAC,6CAA6C;IAAAC,QAAA,eACpET,IAAA,CAACL,sBAAsB;MAAAc,QAAA,eACtBT,IAAA,CAACP,QAAQ;QACRiB,gBAAgB,EAAC,2CAA2C;QAC5DC,YAAY,EAAC,cAAc;QAC3BC,cAAc;QACdC,YAAY,EAAGA,CAAE;UAAEC,MAAM;UAAEC;QAAS,CAAC,kBACpCf,IAAA,CAACR,aAAa;UACb,iBAAc,MAAM;UACpB,iBAAgBsB,MAAQ;UACxBE,OAAO,EAAGD,QAAU;UAAAN,QAAA,EAElBF;QAAW,CACC,CACb;QACHU,aAAa,EAAGA,CAAA,kBACfjB,IAAA,CAACH,gBAAgB;UAChBK,QAAQ,EAAGA,QAAU;UACrBC,UAAU,EAAGA,UAAY;UACzBe,UAAU,EAAG,KAAO;UACpBC,mBAAmB;QAAA,CACnB;MACC,CACH;IAAC,CACqB;EAAC,CACZ,CAAC;AAEjB","ignoreList":[]}
@@ -12,6 +12,7 @@ import { store as coreStore } from '@wordpress/core-data';
12
12
  */
13
13
  import { useAlternativeBlockPatterns, useAlternativeTemplateParts, useCreateTemplatePartFromBlocks, useTemplatePartArea } from './utils/hooks';
14
14
  import TitleModal from './title-modal';
15
+ import { getTemplatePartIcon } from './utils/get-template-part-icon';
15
16
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
17
  export default function TemplatePartPlaceholder({
17
18
  area,
@@ -45,7 +46,7 @@ export default function TemplatePartPlaceholder({
45
46
  const areaObject = useTemplatePartArea(area);
46
47
  const createFromBlocks = useCreateTemplatePartFromBlocks(area, setAttributes);
47
48
  return /*#__PURE__*/_jsxs(Placeholder, {
48
- icon: areaObject.icon,
49
+ icon: getTemplatePartIcon(areaObject.icon),
49
50
  label: areaObject.label,
50
51
  instructions: isBlockBasedTheme ? sprintf(
51
52
  // Translators: %s as template part area title ("Header", "Footer", etc.).
@@ -1 +1 @@
1
- {"version":3,"names":["__","sprintf","Placeholder","Button","Spinner","useState","useSelect","store","coreStore","useAlternativeBlockPatterns","useAlternativeTemplateParts","useCreateTemplatePartFromBlocks","useTemplatePartArea","TitleModal","jsx","_jsx","jsxs","_jsxs","TemplatePartPlaceholder","area","clientId","templatePartId","onOpenSelectionModal","setAttributes","templateParts","isResolving","blockPatterns","isBlockBasedTheme","canCreateTemplatePart","select","getCurrentTheme","canUser","is_block_theme","kind","name","showTitleModal","setShowTitleModal","areaObject","createFromBlocks","icon","label","instructions","toLowerCase","children","length","__next40pxDefaultSize","variant","onClick","areaLabel","onClose","onSubmit","title"],"sources":["@wordpress/block-library/src/template-part/edit/placeholder.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Placeholder, Button, Spinner } from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseCreateTemplatePartFromBlocks,\n\tuseTemplatePartArea,\n} from './utils/hooks';\nimport TitleModal from './title-modal';\n\nexport default function TemplatePartPlaceholder( {\n\tarea,\n\tclientId,\n\ttemplatePartId,\n\tonOpenSelectionModal,\n\tsetAttributes,\n} ) {\n\tconst { templateParts, isResolving } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\n\tconst { isBlockBasedTheme, canCreateTemplatePart } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentTheme, canUser } = select( coreStore );\n\t\t\treturn {\n\t\t\t\tisBlockBasedTheme: getCurrentTheme()?.is_block_theme,\n\t\t\t\tcanCreateTemplatePart: canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_template_part',\n\t\t\t\t} ),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst [ showTitleModal, setShowTitleModal ] = useState( false );\n\tconst areaObject = useTemplatePartArea( area );\n\tconst createFromBlocks = useCreateTemplatePartFromBlocks(\n\t\tarea,\n\t\tsetAttributes\n\t);\n\n\treturn (\n\t\t<Placeholder\n\t\t\ticon={ areaObject.icon }\n\t\t\tlabel={ areaObject.label }\n\t\t\tinstructions={\n\t\t\t\tisBlockBasedTheme\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t\t__( 'Choose an existing %s or create a new one.' ),\n\t\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t\t__( 'Choose an existing %s.' ),\n\t\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t )\n\t\t\t}\n\t\t>\n\t\t\t{ isResolving && <Spinner /> }\n\n\t\t\t{ ! isResolving &&\n\t\t\t\t!! ( templateParts.length || blockPatterns.length ) && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ onOpenSelectionModal }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Choose' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\n\t\t\t{ ! isResolving && isBlockBasedTheme && canCreateTemplatePart && (\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetShowTitleModal( true );\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Start blank' ) }\n\t\t\t\t</Button>\n\t\t\t) }\n\t\t\t{ showTitleModal && (\n\t\t\t\t<TitleModal\n\t\t\t\t\tareaLabel={ areaObject.label }\n\t\t\t\t\tonClose={ () => setShowTitleModal( false ) }\n\t\t\t\t\tonSubmit={ ( title ) => {\n\t\t\t\t\t\tcreateFromBlocks( [], title );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</Placeholder>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__","sprintf","Placeholder","Button","Spinner","useState","useSelect","store","coreStore","useAlternativeBlockPatterns","useAlternativeTemplateParts","useCreateTemplatePartFromBlocks","useTemplatePartArea","TitleModal","getTemplatePartIcon","jsx","_jsx","jsxs","_jsxs","TemplatePartPlaceholder","area","clientId","templatePartId","onOpenSelectionModal","setAttributes","templateParts","isResolving","blockPatterns","isBlockBasedTheme","canCreateTemplatePart","select","getCurrentTheme","canUser","is_block_theme","kind","name","showTitleModal","setShowTitleModal","areaObject","createFromBlocks","icon","label","instructions","toLowerCase","children","length","__next40pxDefaultSize","variant","onClick","areaLabel","onClose","onSubmit","title"],"sources":["@wordpress/block-library/src/template-part/edit/placeholder.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Placeholder, Button, Spinner } from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseCreateTemplatePartFromBlocks,\n\tuseTemplatePartArea,\n} from './utils/hooks';\nimport TitleModal from './title-modal';\nimport { getTemplatePartIcon } from './utils/get-template-part-icon';\n\nexport default function TemplatePartPlaceholder( {\n\tarea,\n\tclientId,\n\ttemplatePartId,\n\tonOpenSelectionModal,\n\tsetAttributes,\n} ) {\n\tconst { templateParts, isResolving } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\n\tconst { isBlockBasedTheme, canCreateTemplatePart } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getCurrentTheme, canUser } = select( coreStore );\n\t\t\treturn {\n\t\t\t\tisBlockBasedTheme: getCurrentTheme()?.is_block_theme,\n\t\t\t\tcanCreateTemplatePart: canUser( 'create', {\n\t\t\t\t\tkind: 'postType',\n\t\t\t\t\tname: 'wp_template_part',\n\t\t\t\t} ),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst [ showTitleModal, setShowTitleModal ] = useState( false );\n\tconst areaObject = useTemplatePartArea( area );\n\tconst createFromBlocks = useCreateTemplatePartFromBlocks(\n\t\tarea,\n\t\tsetAttributes\n\t);\n\n\treturn (\n\t\t<Placeholder\n\t\t\ticon={ getTemplatePartIcon( areaObject.icon ) }\n\t\t\tlabel={ areaObject.label }\n\t\t\tinstructions={\n\t\t\t\tisBlockBasedTheme\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t\t__( 'Choose an existing %s or create a new one.' ),\n\t\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t )\n\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t\t__( 'Choose an existing %s.' ),\n\t\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t )\n\t\t\t}\n\t\t>\n\t\t\t{ isResolving && <Spinner /> }\n\n\t\t\t{ ! isResolving &&\n\t\t\t\t!! ( templateParts.length || blockPatterns.length ) && (\n\t\t\t\t\t<Button\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ onOpenSelectionModal }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Choose' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\n\t\t\t{ ! isResolving && isBlockBasedTheme && canCreateTemplatePart && (\n\t\t\t\t<Button\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tsetShowTitleModal( true );\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Start blank' ) }\n\t\t\t\t</Button>\n\t\t\t) }\n\t\t\t{ showTitleModal && (\n\t\t\t\t<TitleModal\n\t\t\t\t\tareaLabel={ areaObject.label }\n\t\t\t\t\tonClose={ () => setShowTitleModal( false ) }\n\t\t\t\t\tonSubmit={ ( title ) => {\n\t\t\t\t\t\tcreateFromBlocks( [], title );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</Placeholder>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -39,9 +39,11 @@ const VideoSettings = ({
39
39
  return newValue => {
40
40
  setAttributes({
41
41
  [attribute]: newValue,
42
- // Set muted when autoplay changes
42
+ // Set muted and playsInLine when autoplay changes
43
+ // playsInline is set to true when autoplay is true to support iOS devices
43
44
  ...(attribute === 'autoplay' && {
44
- muted: newValue
45
+ muted: newValue,
46
+ playsInline: newValue
45
47
  })
46
48
  });
47
49
  };
@@ -139,7 +141,8 @@ const VideoSettings = ({
139
141
  label: __('Play inline'),
140
142
  onChange: toggleFactory.playsInline,
141
143
  checked: !!playsInline,
142
- help: __('When enabled, videos will play directly within the webpage on mobile browsers, instead of opening in a fullscreen player.')
144
+ disabled: autoplay,
145
+ help: autoplay ? __('Play inline enabled because of Autoplay.') : __('When enabled, videos will play directly within the webpage on mobile browsers, instead of opening in a fullscreen player.')
143
146
  })
144
147
  }), /*#__PURE__*/_jsx(ToolsPanelItem, {
145
148
  label: __('Preload'),
@@ -1 +1 @@
1
- {"version":3,"names":["__","_x","ToggleControl","SelectControl","__experimentalToolsPanelItem","ToolsPanelItem","useMemo","useCallback","Platform","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","options","value","label","VideoSettings","setAttributes","attributes","autoplay","controls","loop","muted","playsInline","preload","autoPlayHelpText","getAutoplayHelp","select","web","checked","native","toggleFactory","toggleAttribute","attribute","newValue","onChangePreload","children","isShownByDefault","hasValue","onDeselect","__nextHasNoMarginBottom","onChange","help","disabled","__next40pxDefaultSize","hideCancelButton"],"sources":["@wordpress/block-library/src/video/edit-common-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tToggleControl,\n\tSelectControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useMemo, useCallback, Platform } from '@wordpress/element';\n\nconst options = [\n\t{ value: 'auto', label: __( 'Auto' ) },\n\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t{ value: 'none', label: _x( 'None', 'Preload value' ) },\n];\n\nconst VideoSettings = ( { setAttributes, attributes } ) => {\n\tconst { autoplay, controls, loop, muted, playsInline, preload } =\n\t\tattributes;\n\n\tconst autoPlayHelpText = __(\n\t\t'Autoplay may cause usability issues for some users.'\n\t);\n\n\tconst getAutoplayHelp = Platform.select( {\n\t\tweb: useCallback( ( checked ) => {\n\t\t\treturn checked ? autoPlayHelpText : null;\n\t\t}, [] ),\n\t\tnative: autoPlayHelpText,\n\t} );\n\n\tconst toggleFactory = useMemo( () => {\n\t\tconst toggleAttribute = ( attribute ) => {\n\t\t\treturn ( newValue ) => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\t[ attribute ]: newValue,\n\t\t\t\t\t// Set muted when autoplay changes\n\t\t\t\t\t...( attribute === 'autoplay' && { muted: newValue } ),\n\t\t\t\t} );\n\t\t\t};\n\t\t};\n\n\t\treturn {\n\t\t\tautoplay: toggleAttribute( 'autoplay' ),\n\t\t\tloop: toggleAttribute( 'loop' ),\n\t\t\tmuted: toggleAttribute( 'muted' ),\n\t\t\tcontrols: toggleAttribute( 'controls' ),\n\t\t\tplaysInline: toggleAttribute( 'playsInline' ),\n\t\t};\n\t}, [] );\n\n\tconst onChangePreload = useCallback( ( value ) => {\n\t\tsetAttributes( { preload: value } );\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! autoplay }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { autoplay: false, muted: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\tonChange={ toggleFactory.autoplay }\n\t\t\t\t\tchecked={ !! autoplay }\n\t\t\t\t\thelp={ getAutoplayHelp }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! loop }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { loop: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\tonChange={ toggleFactory.loop }\n\t\t\t\t\tchecked={ !! loop }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! muted }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { muted: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\t\tonChange={ toggleFactory.muted }\n\t\t\t\t\tchecked={ !! muted }\n\t\t\t\t\tdisabled={ autoplay }\n\t\t\t\t\thelp={\n\t\t\t\t\t\tautoplay ? __( 'Muted because of Autoplay.' ) : null\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => ! controls }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { controls: true } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\t\tonChange={ toggleFactory.controls }\n\t\t\t\t\tchecked={ !! controls }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! playsInline }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { playsInline: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/* translators: Setting to play videos within the webpage on mobile browsers rather than opening in a fullscreen player. */\n\t\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\t\tonChange={ toggleFactory.playsInline }\n\t\t\t\t\tchecked={ !! playsInline }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'When enabled, videos will play directly within the webpage on mobile browsers, instead of opening in a fullscreen player.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => preload !== 'metadata' }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { preload: 'metadata' } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\t\tvalue={ preload }\n\t\t\t\t\tonChange={ onChangePreload }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t</>\n\t);\n};\n\nexport default VideoSettings;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACxC,SACCC,aAAa,EACbC,aAAa,EACbC,4BAA4B,IAAIC,cAAc,QACxC,uBAAuB;AAC9B,SAASC,OAAO,EAAEC,WAAW,EAAEC,QAAQ,QAAQ,oBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAEpE,MAAMC,OAAO,GAAG,CACf;EAAEC,KAAK,EAAE,MAAM;EAAEC,KAAK,EAAEjB,EAAE,CAAE,MAAO;AAAE,CAAC,EACtC;EAAEgB,KAAK,EAAE,UAAU;EAAEC,KAAK,EAAEjB,EAAE,CAAE,UAAW;AAAE,CAAC,EAC9C;EAAEgB,KAAK,EAAE,MAAM;EAAEC,KAAK,EAAEhB,EAAE,CAAE,MAAM,EAAE,eAAgB;AAAE,CAAC,CACvD;AAED,MAAMiB,aAAa,GAAGA,CAAE;EAAEC,aAAa;EAAEC;AAAW,CAAC,KAAM;EAC1D,MAAM;IAAEC,QAAQ;IAAEC,QAAQ;IAAEC,IAAI;IAAEC,KAAK;IAAEC,WAAW;IAAEC;EAAQ,CAAC,GAC9DN,UAAU;EAEX,MAAMO,gBAAgB,GAAG3B,EAAE,CAC1B,qDACD,CAAC;EAED,MAAM4B,eAAe,GAAGpB,QAAQ,CAACqB,MAAM,CAAE;IACxCC,GAAG,EAAEvB,WAAW,CAAIwB,OAAO,IAAM;MAChC,OAAOA,OAAO,GAAGJ,gBAAgB,GAAG,IAAI;IACzC,CAAC,EAAE,EAAG,CAAC;IACPK,MAAM,EAAEL;EACT,CAAE,CAAC;EAEH,MAAMM,aAAa,GAAG3B,OAAO,CAAE,MAAM;IACpC,MAAM4B,eAAe,GAAKC,SAAS,IAAM;MACxC,OAASC,QAAQ,IAAM;QACtBjB,aAAa,CAAE;UACd,CAAEgB,SAAS,GAAIC,QAAQ;UACvB;UACA,IAAKD,SAAS,KAAK,UAAU,IAAI;YAAEX,KAAK,EAAEY;UAAS,CAAC;QACrD,CAAE,CAAC;MACJ,CAAC;IACF,CAAC;IAED,OAAO;MACNf,QAAQ,EAAEa,eAAe,CAAE,UAAW,CAAC;MACvCX,IAAI,EAAEW,eAAe,CAAE,MAAO,CAAC;MAC/BV,KAAK,EAAEU,eAAe,CAAE,OAAQ,CAAC;MACjCZ,QAAQ,EAAEY,eAAe,CAAE,UAAW,CAAC;MACvCT,WAAW,EAAES,eAAe,CAAE,aAAc;IAC7C,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAMG,eAAe,GAAG9B,WAAW,CAAIS,KAAK,IAAM;IACjDG,aAAa,CAAE;MAAEO,OAAO,EAAEV;IAAM,CAAE,CAAC;EACpC,CAAC,EAAE,EAAG,CAAC;EAEP,oBACCF,KAAA,CAAAF,SAAA;IAAA0B,QAAA,gBACC5B,IAAA,CAACL,cAAc;MACdY,KAAK,EAAGjB,EAAE,CAAE,UAAW,CAAG;MAC1BuC,gBAAgB;MAChBC,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAEnB,QAAU;MAC9BoB,UAAU,EAAGA,CAAA,KAAM;QAClBtB,aAAa,CAAE;UAAEE,QAAQ,EAAE,KAAK;UAAEG,KAAK,EAAE;QAAM,CAAE,CAAC;MACnD,CAAG;MAAAc,QAAA,eAEH5B,IAAA,CAACR,aAAa;QACbwC,uBAAuB;QACvBzB,KAAK,EAAGjB,EAAE,CAAE,UAAW,CAAG;QAC1B2C,QAAQ,EAAGV,aAAa,CAACZ,QAAU;QACnCU,OAAO,EAAG,CAAC,CAAEV,QAAU;QACvBuB,IAAI,EAAGhB;MAAiB,CACxB;IAAC,CACa,CAAC,eACjBlB,IAAA,CAACL,cAAc;MACdY,KAAK,EAAGjB,EAAE,CAAE,MAAO,CAAG;MACtBuC,gBAAgB;MAChBC,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAEjB,IAAM;MAC1BkB,UAAU,EAAGA,CAAA,KAAM;QAClBtB,aAAa,CAAE;UAAEI,IAAI,EAAE;QAAM,CAAE,CAAC;MACjC,CAAG;MAAAe,QAAA,eAEH5B,IAAA,CAACR,aAAa;QACbwC,uBAAuB;QACvBzB,KAAK,EAAGjB,EAAE,CAAE,MAAO,CAAG;QACtB2C,QAAQ,EAAGV,aAAa,CAACV,IAAM;QAC/BQ,OAAO,EAAG,CAAC,CAAER;MAAM,CACnB;IAAC,CACa,CAAC,eACjBb,IAAA,CAACL,cAAc;MACdY,KAAK,EAAGjB,EAAE,CAAE,OAAQ,CAAG;MACvBuC,gBAAgB;MAChBC,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAEhB,KAAO;MAC3BiB,UAAU,EAAGA,CAAA,KAAM;QAClBtB,aAAa,CAAE;UAAEK,KAAK,EAAE;QAAM,CAAE,CAAC;MAClC,CAAG;MAAAc,QAAA,eAEH5B,IAAA,CAACR,aAAa;QACbwC,uBAAuB;QACvBzB,KAAK,EAAGjB,EAAE,CAAE,OAAQ,CAAG;QACvB2C,QAAQ,EAAGV,aAAa,CAACT,KAAO;QAChCO,OAAO,EAAG,CAAC,CAAEP,KAAO;QACpBqB,QAAQ,EAAGxB,QAAU;QACrBuB,IAAI,EACHvB,QAAQ,GAAGrB,EAAE,CAAE,4BAA6B,CAAC,GAAG;MAChD,CACD;IAAC,CACa,CAAC,eACjBU,IAAA,CAACL,cAAc;MACdY,KAAK,EAAGjB,EAAE,CAAE,mBAAoB,CAAG;MACnCuC,gBAAgB;MAChBC,QAAQ,EAAGA,CAAA,KAAM,CAAElB,QAAU;MAC7BmB,UAAU,EAAGA,CAAA,KAAM;QAClBtB,aAAa,CAAE;UAAEG,QAAQ,EAAE;QAAK,CAAE,CAAC;MACpC,CAAG;MAAAgB,QAAA,eAEH5B,IAAA,CAACR,aAAa;QACbwC,uBAAuB;QACvBzB,KAAK,EAAGjB,EAAE,CAAE,mBAAoB,CAAG;QACnC2C,QAAQ,EAAGV,aAAa,CAACX,QAAU;QACnCS,OAAO,EAAG,CAAC,CAAET;MAAU,CACvB;IAAC,CACa,CAAC,eACjBZ,IAAA,CAACL,cAAc;MACdY,KAAK,EAAGjB,EAAE,CAAE,aAAc,CAAG;MAC7BuC,gBAAgB;MAChBC,QAAQ,EAAGA,CAAA,KAAM,CAAC,CAAEf,WAAa;MACjCgB,UAAU,EAAGA,CAAA,KAAM;QAClBtB,aAAa,CAAE;UAAEM,WAAW,EAAE;QAAM,CAAE,CAAC;MACxC,CAAG;MAAAa,QAAA,eAEH5B,IAAA,CAACR,aAAa;QACbwC,uBAAuB;QACvB;QACAzB,KAAK,EAAGjB,EAAE,CAAE,aAAc,CAAG;QAC7B2C,QAAQ,EAAGV,aAAa,CAACR,WAAa;QACtCM,OAAO,EAAG,CAAC,CAAEN,WAAa;QAC1BmB,IAAI,EAAG5C,EAAE,CACR,2HACD;MAAG,CACH;IAAC,CACa,CAAC,eACjBU,IAAA,CAACL,cAAc;MACdY,KAAK,EAAGjB,EAAE,CAAE,SAAU,CAAG;MACzBuC,gBAAgB;MAChBC,QAAQ,EAAGA,CAAA,KAAMd,OAAO,KAAK,UAAY;MACzCe,UAAU,EAAGA,CAAA,KAAM;QAClBtB,aAAa,CAAE;UAAEO,OAAO,EAAE;QAAW,CAAE,CAAC;MACzC,CAAG;MAAAY,QAAA,eAEH5B,IAAA,CAACP,aAAa;QACb2C,qBAAqB;QACrBJ,uBAAuB;QACvBzB,KAAK,EAAGjB,EAAE,CAAE,SAAU,CAAG;QACzBgB,KAAK,EAAGU,OAAS;QACjBiB,QAAQ,EAAGN,eAAiB;QAC5BtB,OAAO,EAAGA,OAAS;QACnBgC,gBAAgB;MAAA,CAChB;IAAC,CACa,CAAC;EAAA,CAChB,CAAC;AAEL,CAAC;AAED,eAAe7B,aAAa","ignoreList":[]}
1
+ {"version":3,"names":["__","_x","ToggleControl","SelectControl","__experimentalToolsPanelItem","ToolsPanelItem","useMemo","useCallback","Platform","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","options","value","label","VideoSettings","setAttributes","attributes","autoplay","controls","loop","muted","playsInline","preload","autoPlayHelpText","getAutoplayHelp","select","web","checked","native","toggleFactory","toggleAttribute","attribute","newValue","onChangePreload","children","isShownByDefault","hasValue","onDeselect","__nextHasNoMarginBottom","onChange","help","disabled","__next40pxDefaultSize","hideCancelButton"],"sources":["@wordpress/block-library/src/video/edit-common-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tToggleControl,\n\tSelectControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useMemo, useCallback, Platform } from '@wordpress/element';\n\nconst options = [\n\t{ value: 'auto', label: __( 'Auto' ) },\n\t{ value: 'metadata', label: __( 'Metadata' ) },\n\t{ value: 'none', label: _x( 'None', 'Preload value' ) },\n];\n\nconst VideoSettings = ( { setAttributes, attributes } ) => {\n\tconst { autoplay, controls, loop, muted, playsInline, preload } =\n\t\tattributes;\n\n\tconst autoPlayHelpText = __(\n\t\t'Autoplay may cause usability issues for some users.'\n\t);\n\n\tconst getAutoplayHelp = Platform.select( {\n\t\tweb: useCallback( ( checked ) => {\n\t\t\treturn checked ? autoPlayHelpText : null;\n\t\t}, [] ),\n\t\tnative: autoPlayHelpText,\n\t} );\n\n\tconst toggleFactory = useMemo( () => {\n\t\tconst toggleAttribute = ( attribute ) => {\n\t\t\treturn ( newValue ) => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\t[ attribute ]: newValue,\n\t\t\t\t\t// Set muted and playsInLine when autoplay changes\n\t\t\t\t\t// playsInline is set to true when autoplay is true to support iOS devices\n\t\t\t\t\t...( attribute === 'autoplay' && {\n\t\t\t\t\t\tmuted: newValue,\n\t\t\t\t\t\tplaysInline: newValue,\n\t\t\t\t\t} ),\n\t\t\t\t} );\n\t\t\t};\n\t\t};\n\n\t\treturn {\n\t\t\tautoplay: toggleAttribute( 'autoplay' ),\n\t\t\tloop: toggleAttribute( 'loop' ),\n\t\t\tmuted: toggleAttribute( 'muted' ),\n\t\t\tcontrols: toggleAttribute( 'controls' ),\n\t\t\tplaysInline: toggleAttribute( 'playsInline' ),\n\t\t};\n\t}, [] );\n\n\tconst onChangePreload = useCallback( ( value ) => {\n\t\tsetAttributes( { preload: value } );\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! autoplay }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { autoplay: false, muted: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Autoplay' ) }\n\t\t\t\t\tonChange={ toggleFactory.autoplay }\n\t\t\t\t\tchecked={ !! autoplay }\n\t\t\t\t\thelp={ getAutoplayHelp }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! loop }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { loop: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Loop' ) }\n\t\t\t\t\tonChange={ toggleFactory.loop }\n\t\t\t\t\tchecked={ !! loop }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! muted }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { muted: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Muted' ) }\n\t\t\t\t\tonChange={ toggleFactory.muted }\n\t\t\t\t\tchecked={ !! muted }\n\t\t\t\t\tdisabled={ autoplay }\n\t\t\t\t\thelp={\n\t\t\t\t\t\tautoplay ? __( 'Muted because of Autoplay.' ) : null\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => ! controls }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { controls: true } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Playback controls' ) }\n\t\t\t\t\tonChange={ toggleFactory.controls }\n\t\t\t\t\tchecked={ !! controls }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => !! playsInline }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { playsInline: false } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t/* translators: Setting to play videos within the webpage on mobile browsers rather than opening in a fullscreen player. */\n\t\t\t\t\tlabel={ __( 'Play inline' ) }\n\t\t\t\t\tonChange={ toggleFactory.playsInline }\n\t\t\t\t\tchecked={ !! playsInline }\n\t\t\t\t\tdisabled={ autoplay }\n\t\t\t\t\thelp={\n\t\t\t\t\t\tautoplay\n\t\t\t\t\t\t\t? __( 'Play inline enabled because of Autoplay.' )\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'When enabled, videos will play directly within the webpage on mobile browsers, instead of opening in a fullscreen player.'\n\t\t\t\t\t\t\t )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\tisShownByDefault\n\t\t\t\thasValue={ () => preload !== 'metadata' }\n\t\t\t\tonDeselect={ () => {\n\t\t\t\t\tsetAttributes( { preload: 'metadata' } );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Preload' ) }\n\t\t\t\t\tvalue={ preload }\n\t\t\t\t\tonChange={ onChangePreload }\n\t\t\t\t\toptions={ options }\n\t\t\t\t\thideCancelButton\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t</>\n\t);\n};\n\nexport default VideoSettings;\n"],"mappings":"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","ignoreList":[]}
@@ -8,7 +8,7 @@ import clsx from 'clsx';
8
8
  */
9
9
  import { isBlobURL } from '@wordpress/blob';
10
10
  import { Disabled, Spinner, Placeholder, __experimentalToolsPanel as ToolsPanel } from '@wordpress/components';
11
- import { BlockControls, BlockIcon, InspectorControls, MediaPlaceholder, MediaReplaceFlow, useBlockProps } from '@wordpress/block-editor';
11
+ import { BlockControls, BlockIcon, InspectorControls, MediaPlaceholder, MediaReplaceFlow, useBlockProps, useBlockEditingMode } from '@wordpress/block-editor';
12
12
  import { useRef, useEffect, useState } from '@wordpress/element';
13
13
  import { __ } from '@wordpress/i18n';
14
14
  import { useDispatch } from '@wordpress/data';
@@ -45,6 +45,8 @@ function VideoEdit({
45
45
  } = attributes;
46
46
  const [temporaryURL, setTemporaryURL] = useState(attributes.blob);
47
47
  const dropdownMenuProps = useToolsPanelDropdownMenuProps();
48
+ const blockEditingMode = useBlockEditingMode();
49
+ const hasNonContentControls = blockEditingMode === 'default';
48
50
  useUploadMediaFromBlobURL({
49
51
  url: temporaryURL,
50
52
  allowedTypes: ALLOWED_MEDIA_TYPES,
@@ -222,7 +224,7 @@ function VideoEdit({
222
224
  isSelected: isSingleSelected,
223
225
  insertBlocksAfter: insertBlocksAfter,
224
226
  label: __('Video caption text'),
225
- showToolbarButton: isSingleSelected
227
+ showToolbarButton: isSingleSelected && hasNonContentControls
226
228
  })]
227
229
  })]
228
230
  });
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","isBlobURL","Disabled","Spinner","Placeholder","__experimentalToolsPanel","ToolsPanel","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","useRef","useEffect","useState","__","useDispatch","video","icon","store","noticesStore","createUpgradedEmbedBlock","useUploadMediaFromBlobURL","useToolsPanelDropdownMenuProps","VideoCommonSettings","TracksEditor","Tracks","Caption","PosterImage","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_MEDIA_TYPES","VideoEdit","isSelected","isSingleSelected","attributes","className","setAttributes","insertBlocksAfter","onReplace","videoPlayer","id","controls","poster","src","tracks","temporaryURL","setTemporaryURL","blob","dropdownMenuProps","url","allowedTypes","onChange","onSelectVideo","onError","onUploadError","current","load","media","undefined","caption","image","onSelectURL","newSrc","embedBlock","createErrorNotice","message","type","placeholder","content","withIllustration","label","instructions","children","classes","blockProps","onSelect","accept","value","newTracks","group","mediaId","mediaURL","onReset","resetAll","autoplay","loop","muted","playsInline","preload","posterImage","isDisabled","ref","showToolbarButton"],"sources":["@wordpress/block-library/src/video/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tDisabled,\n\tSpinner,\n\tPlaceholder,\n\t__experimentalToolsPanel as ToolsPanel,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { useRef, useEffect, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch } from '@wordpress/data';\nimport { video as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport {\n\tuseUploadMediaFromBlobURL,\n\tuseToolsPanelDropdownMenuProps,\n} from '../utils/hooks';\nimport VideoCommonSettings from './edit-common-settings';\nimport TracksEditor from './tracks-editor';\nimport Tracks from './tracks';\nimport { Caption } from '../utils/caption';\nimport PosterImage from '../utils/poster-image';\n\nconst ALLOWED_MEDIA_TYPES = [ 'video' ];\n\nfunction VideoEdit( {\n\tisSelected: isSingleSelected,\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tonReplace,\n} ) {\n\tconst videoPlayer = useRef();\n\tconst { id, controls, poster, src, tracks } = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectVideo,\n\t\tonError: onUploadError,\n\t} );\n\n\tuseEffect( () => {\n\t\t// Placeholder may be rendered.\n\t\tif ( videoPlayer.current ) {\n\t\t\tvideoPlayer.current.load();\n\t\t}\n\t}, [ poster ] );\n\n\t// TODO: Whether the video was obtained from the media library or was provided by URL, obtain the `videoWidth` and `videoHeight` of the video once its metadata has loaded and persist in the block attributes.\n\tfunction onSelectVideo( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error\n\t\t\t// previous attributes should be removed\n\t\t\t// because they may be temporary blob urls.\n\t\t\tsetAttributes( {\n\t\t\t\tsrc: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media.\n\t\tsetAttributes( {\n\t\t\tblob: undefined,\n\t\t\tsrc: media.url,\n\t\t\tid: media.id,\n\t\t\tposter:\n\t\t\t\tmedia.image?.src !== media.icon ? media.image?.src : undefined,\n\t\t\tcaption: media.caption,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\t// Check if there's an embed block that handles this URL.\n\t\t\tconst embedBlock = createUpgradedEmbedBlock( {\n\t\t\t\tattributes: { url: newSrc },\n\t\t\t} );\n\t\t\tif ( undefined !== embedBlock && onReplace ) {\n\t\t\t\tonReplace( embedBlock );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetAttributes( {\n\t\t\t\tblob: undefined,\n\t\t\t\tsrc: newSrc,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\t// Much of this description is duplicated from MediaPlaceholder.\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\t\twithIllustration={ ! isSingleSelected }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ __( 'Video' ) }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Drag and drop a video, upload, or choose from your library.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\n\tif ( ! src && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ isSingleSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<TracksEditor\n\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\tonChange={ ( newTracks ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { tracks: newTracks } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\t\tonReset={ () => onSelectVideo( undefined ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tautoplay: false,\n\t\t\t\t\t\t\tcontrols: true,\n\t\t\t\t\t\t\tloop: false,\n\t\t\t\t\t\t\tmuted: false,\n\t\t\t\t\t\t\tplaysInline: false,\n\t\t\t\t\t\t\tpreload: 'metadata',\n\t\t\t\t\t\t\tposter: undefined,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<VideoCommonSettings\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t\t<PosterImage\n\t\t\t\t\t\tposter={ poster }\n\t\t\t\t\t\tonChange={ ( posterImage ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tposter: posterImage?.url,\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</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /*\n Disable the video tag if the block is not selected\n so the user clicking on it won't play the\n video when the controls are enabled.\n */ }\n\t\t\t\t<Disabled isDisabled={ ! isSingleSelected }>\n\t\t\t\t\t<video\n\t\t\t\t\t\tcontrols={ controls }\n\t\t\t\t\t\tposter={ poster }\n\t\t\t\t\t\tsrc={ src || temporaryURL }\n\t\t\t\t\t\tref={ videoPlayer }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Tracks tracks={ tracks } />\n\t\t\t\t\t</video>\n\t\t\t\t</Disabled>\n\t\t\t\t{ !! temporaryURL && <Spinner /> }\n\t\t\t\t<Caption\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tlabel={ __( 'Video caption text' ) }\n\t\t\t\t\tshowToolbarButton={ isSingleSelected }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default VideoEdit;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","isBlobURL","Disabled","Spinner","Placeholder","__experimentalToolsPanel","ToolsPanel","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","useBlockEditingMode","useRef","useEffect","useState","__","useDispatch","video","icon","store","noticesStore","createUpgradedEmbedBlock","useUploadMediaFromBlobURL","useToolsPanelDropdownMenuProps","VideoCommonSettings","TracksEditor","Tracks","Caption","PosterImage","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_MEDIA_TYPES","VideoEdit","isSelected","isSingleSelected","attributes","className","setAttributes","insertBlocksAfter","onReplace","videoPlayer","id","controls","poster","src","tracks","temporaryURL","setTemporaryURL","blob","dropdownMenuProps","blockEditingMode","hasNonContentControls","url","allowedTypes","onChange","onSelectVideo","onError","onUploadError","current","load","media","undefined","caption","image","onSelectURL","newSrc","embedBlock","createErrorNotice","message","type","placeholder","content","withIllustration","label","instructions","children","classes","blockProps","onSelect","accept","value","newTracks","group","mediaId","mediaURL","onReset","resetAll","autoplay","loop","muted","playsInline","preload","posterImage","isDisabled","ref","showToolbarButton"],"sources":["@wordpress/block-library/src/video/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tDisabled,\n\tSpinner,\n\tPlaceholder,\n\t__experimentalToolsPanel as ToolsPanel,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { useRef, useEffect, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch } from '@wordpress/data';\nimport { video as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport {\n\tuseUploadMediaFromBlobURL,\n\tuseToolsPanelDropdownMenuProps,\n} from '../utils/hooks';\nimport VideoCommonSettings from './edit-common-settings';\nimport TracksEditor from './tracks-editor';\nimport Tracks from './tracks';\nimport { Caption } from '../utils/caption';\nimport PosterImage from '../utils/poster-image';\n\nconst ALLOWED_MEDIA_TYPES = [ 'video' ];\n\nfunction VideoEdit( {\n\tisSelected: isSingleSelected,\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tinsertBlocksAfter,\n\tonReplace,\n} ) {\n\tconst videoPlayer = useRef();\n\tconst { id, controls, poster, src, tracks } = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\tconst blockEditingMode = useBlockEditingMode();\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\tonChange: onSelectVideo,\n\t\tonError: onUploadError,\n\t} );\n\n\tuseEffect( () => {\n\t\t// Placeholder may be rendered.\n\t\tif ( videoPlayer.current ) {\n\t\t\tvideoPlayer.current.load();\n\t\t}\n\t}, [ poster ] );\n\n\t// TODO: Whether the video was obtained from the media library or was provided by URL, obtain the `videoWidth` and `videoHeight` of the video once its metadata has loaded and persist in the block attributes.\n\tfunction onSelectVideo( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\t// In this case there was an error\n\t\t\t// previous attributes should be removed\n\t\t\t// because they may be temporary blob urls.\n\t\t\tsetAttributes( {\n\t\t\t\tsrc: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t\tblob: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\t// Sets the block's attribute and updates the edit component from the\n\t\t// selected media.\n\t\tsetAttributes( {\n\t\t\tblob: undefined,\n\t\t\tsrc: media.url,\n\t\t\tid: media.id,\n\t\t\tposter:\n\t\t\t\tmedia.image?.src !== media.icon ? media.image?.src : undefined,\n\t\t\tcaption: media.caption,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onSelectURL( newSrc ) {\n\t\tif ( newSrc !== src ) {\n\t\t\t// Check if there's an embed block that handles this URL.\n\t\t\tconst embedBlock = createUpgradedEmbedBlock( {\n\t\t\t\tattributes: { url: newSrc },\n\t\t\t} );\n\t\t\tif ( undefined !== embedBlock && onReplace ) {\n\t\t\t\tonReplace( embedBlock );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetAttributes( {\n\t\t\t\tblob: undefined,\n\t\t\t\tsrc: newSrc,\n\t\t\t\tid: undefined,\n\t\t\t\tposter: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\t// Much of this description is duplicated from MediaPlaceholder.\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\t\twithIllustration={ ! isSingleSelected }\n\t\t\t\ticon={ icon }\n\t\t\t\tlabel={ __( 'Video' ) }\n\t\t\t\tinstructions={ __(\n\t\t\t\t\t'Drag and drop a video, upload, or choose from your library.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = clsx( className, {\n\t\t'is-transient': !! temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t} );\n\n\tif ( ! src && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tvalue={ attributes }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ isSingleSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<TracksEditor\n\t\t\t\t\t\t\ttracks={ tracks }\n\t\t\t\t\t\t\tonChange={ ( newTracks ) => {\n\t\t\t\t\t\t\t\tsetAttributes( { tracks: newTracks } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\t\tmediaURL={ src }\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\taccept=\"video/*\"\n\t\t\t\t\t\t\tonSelect={ onSelectVideo }\n\t\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\t\tonReset={ () => onSelectVideo( undefined ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tautoplay: false,\n\t\t\t\t\t\t\tcontrols: true,\n\t\t\t\t\t\t\tloop: false,\n\t\t\t\t\t\t\tmuted: false,\n\t\t\t\t\t\t\tplaysInline: false,\n\t\t\t\t\t\t\tpreload: 'metadata',\n\t\t\t\t\t\t\tposter: undefined,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<VideoCommonSettings\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t\t<PosterImage\n\t\t\t\t\t\tposter={ poster }\n\t\t\t\t\t\tonChange={ ( posterImage ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tposter: posterImage?.url,\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</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /*\n Disable the video tag if the block is not selected\n so the user clicking on it won't play the\n video when the controls are enabled.\n */ }\n\t\t\t\t<Disabled isDisabled={ ! isSingleSelected }>\n\t\t\t\t\t<video\n\t\t\t\t\t\tcontrols={ controls }\n\t\t\t\t\t\tposter={ poster }\n\t\t\t\t\t\tsrc={ src || temporaryURL }\n\t\t\t\t\t\tref={ videoPlayer }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Tracks tracks={ tracks } />\n\t\t\t\t\t</video>\n\t\t\t\t</Disabled>\n\t\t\t\t{ !! temporaryURL && <Spinner /> }\n\t\t\t\t<Caption\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tlabel={ __( 'Video caption text' ) }\n\t\t\t\t\tshowToolbarButton={\n\t\t\t\t\t\tisSingleSelected && hasNonContentControls\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n\nexport default VideoEdit;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SACCC,QAAQ,EACRC,OAAO,EACPC,WAAW,EACXC,wBAAwB,IAAIC,UAAU,QAChC,uBAAuB;AAC9B,SACCC,aAAa,EACbC,SAAS,EACTC,iBAAiB,EACjBC,gBAAgB,EAChBC,gBAAgB,EAChBC,aAAa,EACbC,mBAAmB,QACb,yBAAyB;AAChC,SAASC,MAAM,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,oBAAoB;AAChE,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,KAAK,IAAIC,IAAI,QAAQ,kBAAkB;AAChD,SAASC,KAAK,IAAIC,YAAY,QAAQ,oBAAoB;;AAE1D;AACA;AACA;AACA,SAASC,wBAAwB,QAAQ,eAAe;AACxD,SACCC,yBAAyB,EACzBC,8BAA8B,QACxB,gBAAgB;AACvB,OAAOC,mBAAmB,MAAM,wBAAwB;AACxD,OAAOC,YAAY,MAAM,iBAAiB;AAC1C,OAAOC,MAAM,MAAM,UAAU;AAC7B,SAASC,OAAO,QAAQ,kBAAkB;AAC1C,OAAOC,WAAW,MAAM,uBAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAEhD,MAAMC,mBAAmB,GAAG,CAAE,OAAO,CAAE;AAEvC,SAASC,SAASA,CAAE;EACnBC,UAAU,EAAEC,gBAAgB;EAC5BC,UAAU;EACVC,SAAS;EACTC,aAAa;EACbC,iBAAiB;EACjBC;AACD,CAAC,EAAG;EACH,MAAMC,WAAW,GAAGhC,MAAM,CAAC,CAAC;EAC5B,MAAM;IAAEiC,EAAE;IAAEC,QAAQ;IAAEC,MAAM;IAAEC,GAAG;IAAEC;EAAO,CAAC,GAAGV,UAAU;EACxD,MAAM,CAAEW,YAAY,EAAEC,eAAe,CAAE,GAAGrC,QAAQ,CAAEyB,UAAU,CAACa,IAAK,CAAC;EACrE,MAAMC,iBAAiB,GAAG9B,8BAA8B,CAAC,CAAC;EAC1D,MAAM+B,gBAAgB,GAAG3C,mBAAmB,CAAC,CAAC;EAC9C,MAAM4C,qBAAqB,GAAGD,gBAAgB,KAAK,SAAS;EAE5DhC,yBAAyB,CAAE;IAC1BkC,GAAG,EAAEN,YAAY;IACjBO,YAAY,EAAEtB,mBAAmB;IACjCuB,QAAQ,EAAEC,aAAa;IACvBC,OAAO,EAAEC;EACV,CAAE,CAAC;EAEHhD,SAAS,CAAE,MAAM;IAChB;IACA,IAAK+B,WAAW,CAACkB,OAAO,EAAG;MAC1BlB,WAAW,CAACkB,OAAO,CAACC,IAAI,CAAC,CAAC;IAC3B;EACD,CAAC,EAAE,CAAEhB,MAAM,CAAG,CAAC;;EAEf;EACA,SAASY,aAAaA,CAAEK,KAAK,EAAG;IAC/B,IAAK,CAAEA,KAAK,IAAI,CAAEA,KAAK,CAACR,GAAG,EAAG;MAC7B;MACA;MACA;MACAf,aAAa,CAAE;QACdO,GAAG,EAAEiB,SAAS;QACdpB,EAAE,EAAEoB,SAAS;QACblB,MAAM,EAAEkB,SAAS;QACjBC,OAAO,EAAED,SAAS;QAClBb,IAAI,EAAEa;MACP,CAAE,CAAC;MACHd,eAAe,CAAC,CAAC;MACjB;IACD;IAEA,IAAKpD,SAAS,CAAEiE,KAAK,CAACR,GAAI,CAAC,EAAG;MAC7BL,eAAe,CAAEa,KAAK,CAACR,GAAI,CAAC;MAC5B;IACD;;IAEA;IACA;IACAf,aAAa,CAAE;MACdW,IAAI,EAAEa,SAAS;MACfjB,GAAG,EAAEgB,KAAK,CAACR,GAAG;MACdX,EAAE,EAAEmB,KAAK,CAACnB,EAAE;MACZE,MAAM,EACLiB,KAAK,CAACG,KAAK,EAAEnB,GAAG,KAAKgB,KAAK,CAAC9C,IAAI,GAAG8C,KAAK,CAACG,KAAK,EAAEnB,GAAG,GAAGiB,SAAS;MAC/DC,OAAO,EAAEF,KAAK,CAACE;IAChB,CAAE,CAAC;IACHf,eAAe,CAAC,CAAC;EAClB;EAEA,SAASiB,WAAWA,CAAEC,MAAM,EAAG;IAC9B,IAAKA,MAAM,KAAKrB,GAAG,EAAG;MACrB;MACA,MAAMsB,UAAU,GAAGjD,wBAAwB,CAAE;QAC5CkB,UAAU,EAAE;UAAEiB,GAAG,EAAEa;QAAO;MAC3B,CAAE,CAAC;MACH,IAAKJ,SAAS,KAAKK,UAAU,IAAI3B,SAAS,EAAG;QAC5CA,SAAS,CAAE2B,UAAW,CAAC;QACvB;MACD;MACA7B,aAAa,CAAE;QACdW,IAAI,EAAEa,SAAS;QACfjB,GAAG,EAAEqB,MAAM;QACXxB,EAAE,EAAEoB,SAAS;QACblB,MAAM,EAAEkB;MACT,CAAE,CAAC;MACHd,eAAe,CAAC,CAAC;IAClB;EACD;EAEA,MAAM;IAAEoB;EAAkB,CAAC,GAAGvD,WAAW,CAAEI,YAAa,CAAC;EACzD,SAASyC,aAAaA,CAAEW,OAAO,EAAG;IACjCD,iBAAiB,CAAEC,OAAO,EAAE;MAAEC,IAAI,EAAE;IAAW,CAAE,CAAC;EACnD;;EAEA;EACA,MAAMC,WAAW,GAAKC,OAAO,IAAM;IAClC,oBACC7C,IAAA,CAAC5B,WAAW;MACXsC,SAAS,EAAC,gCAAgC;MAC1CoC,gBAAgB,EAAG,CAAEtC,gBAAkB;MACvCpB,IAAI,EAAGA,IAAM;MACb2D,KAAK,EAAG9D,EAAE,CAAE,OAAQ,CAAG;MACvB+D,YAAY,EAAG/D,EAAE,CAChB,6DACD,CAAG;MAAAgE,QAAA,EAEDJ;IAAO,CACG,CAAC;EAEhB,CAAC;EAED,MAAMK,OAAO,GAAGlF,IAAI,CAAE0C,SAAS,EAAE;IAChC,cAAc,EAAE,CAAC,CAAEU;EACpB,CAAE,CAAC;EAEH,MAAM+B,UAAU,GAAGvE,aAAa,CAAE;IACjC8B,SAAS,EAAEwC;EACZ,CAAE,CAAC;EAEH,IAAK,CAAEhC,GAAG,IAAI,CAAEE,YAAY,EAAG;IAC9B,oBACCpB,IAAA;MAAA,GAAUmD,UAAU;MAAAF,QAAA,eACnBjD,IAAA,CAACtB,gBAAgB;QAChBU,IAAI,eAAGY,IAAA,CAACxB,SAAS;UAACY,IAAI,EAAGA;QAAM,CAAE,CAAG;QACpCgE,QAAQ,EAAGvB,aAAe;QAC1BS,WAAW,EAAGA,WAAa;QAC3Be,MAAM,EAAC,SAAS;QAChB1B,YAAY,EAAGtB,mBAAqB;QACpCiD,KAAK,EAAG7C,UAAY;QACpBqB,OAAO,EAAGC,aAAe;QACzBa,WAAW,EAAGA;MAAa,CAC3B;IAAC,CACE,CAAC;EAER;EAEA,oBACCxC,KAAA,CAAAF,SAAA;IAAA+C,QAAA,GACGzC,gBAAgB,iBACjBJ,KAAA,CAAAF,SAAA;MAAA+C,QAAA,gBACCjD,IAAA,CAACzB,aAAa;QAAA0E,QAAA,eACbjD,IAAA,CAACL,YAAY;UACZwB,MAAM,EAAGA,MAAQ;UACjBS,QAAQ,EAAK2B,SAAS,IAAM;YAC3B5C,aAAa,CAAE;cAAEQ,MAAM,EAAEoC;YAAU,CAAE,CAAC;UACvC;QAAG,CACH;MAAC,CACY,CAAC,eAChBvD,IAAA,CAACzB,aAAa;QAACiF,KAAK,EAAC,OAAO;QAAAP,QAAA,eAC3BjD,IAAA,CAACrB,gBAAgB;UAChB8E,OAAO,EAAG1C,EAAI;UACd2C,QAAQ,EAAGxC,GAAK;UAChBS,YAAY,EAAGtB,mBAAqB;UACpCgD,MAAM,EAAC,SAAS;UAChBD,QAAQ,EAAGvB,aAAe;UAC1BS,WAAW,EAAGA,WAAa;UAC3BR,OAAO,EAAGC,aAAe;UACzB4B,OAAO,EAAGA,CAAA,KAAM9B,aAAa,CAAEM,SAAU;QAAG,CAC5C;MAAC,CACY,CAAC;IAAA,CACf,CACF,eACDnC,IAAA,CAACvB,iBAAiB;MAAAwE,QAAA,eACjB7C,KAAA,CAAC9B,UAAU;QACVyE,KAAK,EAAG9D,EAAE,CAAE,UAAW,CAAG;QAC1B2E,QAAQ,EAAGA,CAAA,KAAM;UAChBjD,aAAa,CAAE;YACdkD,QAAQ,EAAE,KAAK;YACf7C,QAAQ,EAAE,IAAI;YACd8C,IAAI,EAAE,KAAK;YACXC,KAAK,EAAE,KAAK;YACZC,WAAW,EAAE,KAAK;YAClBC,OAAO,EAAE,UAAU;YACnBhD,MAAM,EAAEkB;UACT,CAAE,CAAC;QACJ,CAAG;QACHZ,iBAAiB,EAAGA,iBAAmB;QAAA0B,QAAA,gBAEvCjD,IAAA,CAACN,mBAAmB;UACnBiB,aAAa,EAAGA,aAAe;UAC/BF,UAAU,EAAGA;QAAY,CACzB,CAAC,eACFT,IAAA,CAACF,WAAW;UACXmB,MAAM,EAAGA,MAAQ;UACjBW,QAAQ,EAAKsC,WAAW,IACvBvD,aAAa,CAAE;YACdM,MAAM,EAAEiD,WAAW,EAAExC;UACtB,CAAE;QACF,CACD,CAAC;MAAA,CACS;IAAC,CACK,CAAC,eACpBtB,KAAA;MAAA,GAAa+C,UAAU;MAAAF,QAAA,gBAMtBjD,IAAA,CAAC9B,QAAQ;QAACiG,UAAU,EAAG,CAAE3D,gBAAkB;QAAAyC,QAAA,eAC1CjD,IAAA;UACCgB,QAAQ,EAAGA,QAAU;UACrBC,MAAM,EAAGA,MAAQ;UACjBC,GAAG,EAAGA,GAAG,IAAIE,YAAc;UAC3BgD,GAAG,EAAGtD,WAAa;UAAAmC,QAAA,eAEnBjD,IAAA,CAACJ,MAAM;YAACuB,MAAM,EAAGA;UAAQ,CAAE;QAAC,CACtB;MAAC,CACC,CAAC,EACT,CAAC,CAAEC,YAAY,iBAAIpB,IAAA,CAAC7B,OAAO,IAAE,CAAC,eAChC6B,IAAA,CAACH,OAAO;QACPY,UAAU,EAAGA,UAAY;QACzBE,aAAa,EAAGA,aAAe;QAC/BJ,UAAU,EAAGC,gBAAkB;QAC/BI,iBAAiB,EAAGA,iBAAmB;QACvCmC,KAAK,EAAG9D,EAAE,CAAE,oBAAqB,CAAG;QACpCoF,iBAAiB,EAChB7D,gBAAgB,IAAIiB;MACpB,CACD,CAAC;IAAA,CACK,CAAC;EAAA,CACR,CAAC;AAEL;AAEA,eAAenB,SAAS","ignoreList":[]}
@@ -134,21 +134,21 @@
134
134
  /**
135
135
  * Reset the WP Admin page styles for Gutenberg-like pages.
136
136
  */
137
- .wp-block-accordion-item {
137
+ .wp-block-accordion-content {
138
138
  display: grid;
139
139
  grid-template-rows: max-content 0fr;
140
140
  }
141
141
 
142
- .wp-block-accordion-item.is-open {
142
+ .wp-block-accordion-content.is-open {
143
143
  grid-template-rows: max-content 1fr;
144
144
  }
145
145
 
146
- .accordion-item__heading {
146
+ .accordion-content__heading {
147
147
  margin-block-start: 0;
148
148
  margin-block-end: 0;
149
149
  }
150
150
 
151
- .accordion-item__toggle {
151
+ .accordion-content__toggle {
152
152
  font-family: inherit;
153
153
  font-size: inherit;
154
154
  font-weight: inherit;
@@ -170,7 +170,7 @@
170
170
  width: 100%;
171
171
  }
172
172
 
173
- .accordion-item__toggle > span {
173
+ .accordion-content__toggle > span {
174
174
  width: 100%;
175
175
  }
176
176
 
@@ -185,39 +185,39 @@
185
185
  }
186
186
 
187
187
  /* No icon block style */
188
- .is-style-no-icon .accordion-item__toggle-icon {
188
+ .is-style-no-icon .accordion-content__toggle-icon {
189
189
  background-color: unset;
190
190
  }
191
191
 
192
- .wp-block-accordion-header.icon-position-left .accordion-item__toggle {
192
+ .wp-block-accordion-header.icon-position-left .accordion-content__toggle {
193
193
  /* stylelint-disable-next-line declaration-property-value-allowed-list -- This should be refactored to not use the row-reverse value. */
194
194
  flex-direction: row-reverse;
195
195
  }
196
196
 
197
197
  /* RTL language support */
198
- [dir=rtl] .wp-block-accordion-header:not(.icon-position-left) .accordion-item__toggle {
198
+ [dir=rtl] .wp-block-accordion-header:not(.icon-position-left) .accordion-content__toggle {
199
199
  /* stylelint-disable-next-line declaration-property-value-allowed-list -- Automatically adjust icon position for RTL languages. */
200
200
  flex-direction: row-reverse;
201
201
  }
202
202
 
203
- [dir=rtl] .wp-block-accordion-header.icon-position-left .accordion-item__toggle {
203
+ [dir=rtl] .wp-block-accordion-header.icon-position-left .accordion-content__toggle {
204
204
  flex-direction: row;
205
205
  }
206
206
 
207
- .accordion-item__toggle:focus-visible {
207
+ .accordion-content__toggle:focus-visible {
208
208
  outline: 2px solid -webkit-focus-ring-color;
209
209
  outline-offset: 2px;
210
210
  }
211
211
 
212
212
  /* Add transitions only for users who do not prefer reduced motion */
213
213
  @media (prefers-reduced-motion: no-preference) {
214
- .wp-block-accordion-item .accordion-item__toggle-icon {
214
+ .wp-block-accordion-content .accordion-content__toggle-icon {
215
215
  transition: transform 0.2s ease-in-out;
216
216
  }
217
- .wp-block-accordion-item {
217
+ .wp-block-accordion-content {
218
218
  transition: grid-template-rows 0.3s ease-out;
219
219
  }
220
220
  }
221
- .is-open .accordion-item__toggle-icon.has-icon-plus {
221
+ .is-open .accordion-content__toggle-icon.has-icon-plus {
222
222
  transform: rotate(-45deg);
223
223
  }