@wordpress/edit-site 5.28.3 → 5.29.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 (195) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/block-editor/use-site-editor-settings.js +2 -1
  3. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  4. package/build/components/code-editor/index.js +3 -2
  5. package/build/components/code-editor/index.js.map +1 -1
  6. package/build/components/editor/index.js +4 -4
  7. package/build/components/editor/index.js.map +1 -1
  8. package/build/components/editor-canvas-container/index.js +1 -1
  9. package/build/components/editor-canvas-container/index.js.map +1 -1
  10. package/build/components/header-edit-mode/document-tools/index.js +1 -2
  11. package/build/components/header-edit-mode/document-tools/index.js.map +1 -1
  12. package/build/components/header-edit-mode/index.js +3 -1
  13. package/build/components/header-edit-mode/index.js.map +1 -1
  14. package/build/components/header-edit-mode/more-menu/index.js +7 -4
  15. package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
  16. package/build/components/keyboard-shortcuts/edit-mode.js +0 -13
  17. package/build/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  18. package/build/components/keyboard-shortcuts/register.js +0 -18
  19. package/build/components/keyboard-shortcuts/register.js.map +1 -1
  20. package/build/components/layout/index.js +0 -1
  21. package/build/components/layout/index.js.map +1 -1
  22. package/build/components/page-patterns/dataviews-pattern-actions.js +25 -8
  23. package/build/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
  24. package/build/components/page-patterns/header.js +2 -1
  25. package/build/components/page-patterns/header.js.map +1 -1
  26. package/build/components/page-patterns/index.js +0 -1
  27. package/build/components/page-patterns/index.js.map +1 -1
  28. package/build/components/save-button/index.js +2 -1
  29. package/build/components/save-button/index.js.map +1 -1
  30. package/build/components/sidebar/index.js +3 -2
  31. package/build/components/sidebar/index.js.map +1 -1
  32. package/build/components/sidebar-edit-mode/global-styles-sidebar.js +5 -5
  33. package/build/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
  34. package/build/components/sidebar-edit-mode/template-panel/hooks.js +20 -5
  35. package/build/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
  36. package/build/components/sidebar-edit-mode/template-panel/index.js +48 -5
  37. package/build/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  38. package/build/components/sidebar-edit-mode/template-panel/template-actions.js +2 -9
  39. package/build/components/sidebar-edit-mode/template-panel/template-actions.js.map +1 -1
  40. package/build/components/sidebar-navigation-screen-global-styles/index.js +6 -2
  41. package/build/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  42. package/build/components/style-book/index.js +2 -0
  43. package/build/components/style-book/index.js.map +1 -1
  44. package/build/hooks/commands/use-edit-mode-commands.js +3 -171
  45. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  46. package/build/hooks/index.js +0 -1
  47. package/build/hooks/index.js.map +1 -1
  48. package/build/hooks/push-changes-to-global-styles/index.js +4 -5
  49. package/build/hooks/push-changes-to-global-styles/index.js.map +1 -1
  50. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +91 -0
  51. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -0
  52. package/build/store/actions.js +19 -50
  53. package/build/store/actions.js.map +1 -1
  54. package/build/utils/clone-deep.js +15 -0
  55. package/build/utils/clone-deep.js.map +1 -0
  56. package/build-module/components/block-editor/use-site-editor-settings.js +2 -1
  57. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  58. package/build-module/components/code-editor/index.js +3 -2
  59. package/build-module/components/code-editor/index.js.map +1 -1
  60. package/build-module/components/editor/index.js +4 -4
  61. package/build-module/components/editor/index.js.map +1 -1
  62. package/build-module/components/editor-canvas-container/index.js +2 -2
  63. package/build-module/components/editor-canvas-container/index.js.map +1 -1
  64. package/build-module/components/header-edit-mode/document-tools/index.js +1 -2
  65. package/build-module/components/header-edit-mode/document-tools/index.js.map +1 -1
  66. package/build-module/components/header-edit-mode/index.js +3 -1
  67. package/build-module/components/header-edit-mode/index.js.map +1 -1
  68. package/build-module/components/header-edit-mode/more-menu/index.js +6 -3
  69. package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
  70. package/build-module/components/keyboard-shortcuts/edit-mode.js +0 -13
  71. package/build-module/components/keyboard-shortcuts/edit-mode.js.map +1 -1
  72. package/build-module/components/keyboard-shortcuts/register.js +0 -18
  73. package/build-module/components/keyboard-shortcuts/register.js.map +1 -1
  74. package/build-module/components/layout/index.js +1 -2
  75. package/build-module/components/layout/index.js.map +1 -1
  76. package/build-module/components/page-patterns/dataviews-pattern-actions.js +25 -8
  77. package/build-module/components/page-patterns/dataviews-pattern-actions.js.map +1 -1
  78. package/build-module/components/page-patterns/header.js +2 -1
  79. package/build-module/components/page-patterns/header.js.map +1 -1
  80. package/build-module/components/page-patterns/index.js +0 -1
  81. package/build-module/components/page-patterns/index.js.map +1 -1
  82. package/build-module/components/save-button/index.js +2 -1
  83. package/build-module/components/save-button/index.js.map +1 -1
  84. package/build-module/components/sidebar/index.js +3 -2
  85. package/build-module/components/sidebar/index.js.map +1 -1
  86. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js +5 -5
  87. package/build-module/components/sidebar-edit-mode/global-styles-sidebar.js.map +1 -1
  88. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js +20 -5
  89. package/build-module/components/sidebar-edit-mode/template-panel/hooks.js.map +1 -1
  90. package/build-module/components/sidebar-edit-mode/template-panel/index.js +50 -7
  91. package/build-module/components/sidebar-edit-mode/template-panel/index.js.map +1 -1
  92. package/build-module/components/sidebar-edit-mode/template-panel/template-actions.js +2 -9
  93. package/build-module/components/sidebar-edit-mode/template-panel/template-actions.js.map +1 -1
  94. package/build-module/components/sidebar-navigation-screen-global-styles/index.js +6 -2
  95. package/build-module/components/sidebar-navigation-screen-global-styles/index.js.map +1 -1
  96. package/build-module/components/style-book/index.js +2 -0
  97. package/build-module/components/style-book/index.js.map +1 -1
  98. package/build-module/hooks/commands/use-edit-mode-commands.js +4 -172
  99. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  100. package/build-module/hooks/index.js +0 -1
  101. package/build-module/hooks/index.js.map +1 -1
  102. package/build-module/hooks/push-changes-to-global-styles/index.js +1 -3
  103. package/build-module/hooks/push-changes-to-global-styles/index.js.map +1 -1
  104. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +82 -0
  105. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -0
  106. package/build-module/store/actions.js +19 -50
  107. package/build-module/store/actions.js.map +1 -1
  108. package/build-module/utils/clone-deep.js +9 -0
  109. package/build-module/utils/clone-deep.js.map +1 -0
  110. package/build-style/style-rtl.css +24 -208
  111. package/build-style/style.css +24 -208
  112. package/package.json +43 -42
  113. package/src/components/block-editor/use-site-editor-settings.js +1 -0
  114. package/src/components/code-editor/index.js +3 -2
  115. package/src/components/editor/index.js +10 -7
  116. package/src/components/editor-canvas-container/index.js +2 -5
  117. package/src/components/{test → error-boundary/test}/error-boundary.js +7 -5
  118. package/src/components/global-styles/screen-revisions/style.scss +2 -2
  119. package/src/components/global-styles/style.scss +1 -1
  120. package/src/components/header-edit-mode/document-tools/index.js +1 -2
  121. package/src/components/header-edit-mode/index.js +1 -1
  122. package/src/components/header-edit-mode/more-menu/index.js +8 -3
  123. package/src/components/keyboard-shortcuts/edit-mode.js +0 -11
  124. package/src/components/keyboard-shortcuts/register.js +0 -19
  125. package/src/components/layout/index.js +0 -2
  126. package/src/components/page-patterns/dataviews-pattern-actions.js +41 -10
  127. package/src/components/page-patterns/header.js +1 -0
  128. package/src/components/page-patterns/index.js +0 -1
  129. package/src/components/page-patterns/style.scss +0 -182
  130. package/src/components/save-button/index.js +2 -1
  131. package/src/components/save-hub/style.scss +1 -1
  132. package/src/components/sidebar/index.js +2 -1
  133. package/src/components/sidebar-button/style.scss +1 -1
  134. package/src/components/sidebar-edit-mode/global-styles-sidebar.js +5 -7
  135. package/src/components/sidebar-edit-mode/style.scss +4 -0
  136. package/src/components/sidebar-edit-mode/template-panel/hooks.js +37 -24
  137. package/src/components/sidebar-edit-mode/template-panel/index.js +76 -18
  138. package/src/components/sidebar-edit-mode/template-panel/style.scss +5 -14
  139. package/src/components/sidebar-edit-mode/template-panel/template-actions.js +1 -12
  140. package/src/components/sidebar-navigation-screen-global-styles/index.js +4 -1
  141. package/src/components/style-book/index.js +5 -1
  142. package/src/hooks/commands/use-edit-mode-commands.js +3 -184
  143. package/src/hooks/index.js +0 -1
  144. package/src/hooks/push-changes-to-global-styles/index.js +1 -4
  145. package/src/hooks/use-theme-style-variations/test/use-theme-style-variations-by-property.js +964 -0
  146. package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +92 -0
  147. package/src/store/actions.js +21 -85
  148. package/src/store/test/actions.js +0 -75
  149. package/src/style.scss +1 -6
  150. package/src/utils/clone-deep.js +8 -0
  151. package/build/components/header-edit-mode/mode-switcher/index.js +0 -62
  152. package/build/components/header-edit-mode/mode-switcher/index.js.map +0 -1
  153. package/build/components/page-patterns/duplicate-menu-item.js +0 -93
  154. package/build/components/page-patterns/duplicate-menu-item.js.map +0 -1
  155. package/build/components/page-patterns/grid-item.js +0 -223
  156. package/build/components/page-patterns/grid-item.js.map +0 -1
  157. package/build/components/page-patterns/grid.js +0 -31
  158. package/build/components/page-patterns/grid.js.map +0 -1
  159. package/build/components/page-patterns/no-patterns.js +0 -18
  160. package/build/components/page-patterns/no-patterns.js.map +0 -1
  161. package/build/components/page-patterns/patterns-list.js +0 -168
  162. package/build/components/page-patterns/patterns-list.js.map +0 -1
  163. package/build/components/page-patterns/rename-menu-item.js +0 -105
  164. package/build/components/page-patterns/rename-menu-item.js.map +0 -1
  165. package/build/components/sidebar-edit-mode/template-panel/replace-template-button.js +0 -83
  166. package/build/components/sidebar-edit-mode/template-panel/replace-template-button.js.map +0 -1
  167. package/build/hooks/navigation-menu-edit.js +0 -82
  168. package/build/hooks/navigation-menu-edit.js.map +0 -1
  169. package/build-module/components/header-edit-mode/mode-switcher/index.js +0 -56
  170. package/build-module/components/header-edit-mode/mode-switcher/index.js.map +0 -1
  171. package/build-module/components/page-patterns/duplicate-menu-item.js +0 -85
  172. package/build-module/components/page-patterns/duplicate-menu-item.js.map +0 -1
  173. package/build-module/components/page-patterns/grid-item.js +0 -215
  174. package/build-module/components/page-patterns/grid-item.js.map +0 -1
  175. package/build-module/components/page-patterns/grid.js +0 -23
  176. package/build-module/components/page-patterns/grid.js.map +0 -1
  177. package/build-module/components/page-patterns/no-patterns.js +0 -11
  178. package/build-module/components/page-patterns/no-patterns.js.map +0 -1
  179. package/build-module/components/page-patterns/patterns-list.js +0 -160
  180. package/build-module/components/page-patterns/patterns-list.js.map +0 -1
  181. package/build-module/components/page-patterns/rename-menu-item.js +0 -98
  182. package/build-module/components/page-patterns/rename-menu-item.js.map +0 -1
  183. package/build-module/components/sidebar-edit-mode/template-panel/replace-template-button.js +0 -76
  184. package/build-module/components/sidebar-edit-mode/template-panel/replace-template-button.js.map +0 -1
  185. package/build-module/hooks/navigation-menu-edit.js +0 -75
  186. package/build-module/hooks/navigation-menu-edit.js.map +0 -1
  187. package/src/components/header-edit-mode/mode-switcher/index.js +0 -60
  188. package/src/components/page-patterns/duplicate-menu-item.js +0 -105
  189. package/src/components/page-patterns/grid-item.js +0 -331
  190. package/src/components/page-patterns/grid.js +0 -22
  191. package/src/components/page-patterns/no-patterns.js +0 -12
  192. package/src/components/page-patterns/patterns-list.js +0 -229
  193. package/src/components/page-patterns/rename-menu-item.js +0 -132
  194. package/src/components/sidebar-edit-mode/template-panel/replace-template-button.js +0 -89
  195. package/src/hooks/navigation-menu-edit.js +0 -92
@@ -1 +1 @@
1
- {"version":3,"names":["paramCase","kebabCase","getQueryArgs","downloadBlob","__","_x","sprintf","Button","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalText","Text","store","coreStore","useDispatch","useState","noticesStore","decodeEntities","reusableBlocksStore","privateApis","routerPrivateApis","patternsPrivateApis","unlock","editSiteStore","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_DEFAULT_CATEGORY","CreateTemplatePartModalContents","useHistory","CreatePatternModalContents","useDuplicatePatternProps","exportJSONaction","id","label","isEligible","item","type","user","callback","json","__file","title","name","content","patternPost","raw","syncStatus","wp_pattern_sync_status","JSON","stringify","renameAction","isTemplatePart","isUserPattern","isCustomPattern","isCustom","hasThemeFile","templatePart","has_theme_file","RenderModal","items","closeModal","setTitle","editEntityRecord","saveEditedEntityRecord","createSuccessNotice","createErrorNotice","onRename","event","preventDefault","throwOnError","error","fallbackErrorMessage","errorMessage","message","code","createElement","onSubmit","spacing","__nextHasNoMarginBottom","__next40pxDefaultSize","value","onChange","required","justify","variant","onClick","canDeleteOrReset","deleteAction","hideModalHeader","supportsBulk","onPerform","__experimentalDeleteReusableBlock","removeTemplates","deletePattern","promiseResult","Promise","allSettled","map","every","status","successMessage","length","reason","errorMessages","Set","failedPromises","filter","failedPromise","add","size","join","deleteItem","questionMessage","resetAction","removeTemplate","duplicatePatternAction","modalHeader","categoryId","window","location","href","isThemePattern","theme","history","onPatternSuccess","pattern","push","categoryType","postType","postId","duplicatedProps","onSuccess","onClose","confirmLabel","duplicateTemplatePartAction","onTemplatePartSuccess","blocks","defaultArea","area","defaultTitle","onCreate","onError"],"sources":["@wordpress/edit-site/src/components/page-patterns/dataviews-pattern-actions.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { paramCase as kebabCase } from 'change-case';\n\n/**\n * WordPress dependencies\n */\nimport { getQueryArgs } from '@wordpress/url';\nimport { downloadBlob } from '@wordpress/blob';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalText as Text,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport {\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport { CreateTemplatePartModalContents } from '../create-template-part-modal';\n\nconst { useHistory } = unlock( routerPrivateApis );\nconst { CreatePatternModalContents, useDuplicatePatternProps } =\n\tunlock( patternsPrivateApis );\n\nexport const exportJSONaction = {\n\tid: 'export-pattern',\n\tlabel: __( 'Export as JSON' ),\n\tisEligible: ( item ) => item.type === PATTERN_TYPES.user,\n\tcallback: ( [ item ] ) => {\n\t\tconst json = {\n\t\t\t__file: item.type,\n\t\t\ttitle: item.title || item.name,\n\t\t\tcontent: item.patternPost.content.raw,\n\t\t\tsyncStatus: item.patternPost.wp_pattern_sync_status,\n\t\t};\n\t\treturn downloadBlob(\n\t\t\t`${ kebabCase( item.title || item.name ) }.json`,\n\t\t\tJSON.stringify( json, null, 2 ),\n\t\t\t'application/json'\n\t\t);\n\t},\n};\n\nexport const renameAction = {\n\tid: 'rename-pattern',\n\tlabel: __( 'Rename' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\t\tconst isCustomPattern =\n\t\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn isCustomPattern && ! hasThemeFile;\n\t},\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst [ title, setTitle ] = useState( () => item.title );\n\t\tconst { editEntityRecord, saveEditedEntityRecord } =\n\t\t\tuseDispatch( coreStore );\n\t\tconst { createSuccessNotice, createErrorNotice } =\n\t\t\tuseDispatch( noticesStore );\n\t\tasync function onRename( event ) {\n\t\t\tevent.preventDefault();\n\t\t\ttry {\n\t\t\t\tawait editEntityRecord( 'postType', item.type, item.id, {\n\t\t\t\t\ttitle,\n\t\t\t\t} );\n\t\t\t\t// Update state before saving rerenders the list.\n\t\t\t\tsetTitle( '' );\n\t\t\t\tcloseModal();\n\t\t\t\t// Persist edited entity.\n\t\t\t\tawait saveEditedEntityRecord( 'postType', item.type, item.id, {\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t} );\n\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\titem.type === TEMPLATE_PART_POST_TYPE\n\t\t\t\t\t\t? __( 'Template part renamed.' )\n\t\t\t\t\t\t: __( 'Pattern renamed.' ),\n\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t);\n\t\t\t} catch ( error ) {\n\t\t\t\tconst fallbackErrorMessage =\n\t\t\t\t\titem.type === TEMPLATE_PART_POST_TYPE\n\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t'An error occurred while renaming the template part.'\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'An error occurred while renaming the pattern.' );\n\t\t\t\tconst errorMessage =\n\t\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t: fallbackErrorMessage;\n\t\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t\t}\n\t\t}\n\t\treturn (\n\t\t\t<form onSubmit={ onRename }>\n\t\t\t\t<VStack spacing=\"5\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tcloseModal();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t);\n\t},\n};\n\nconst canDeleteOrReset = ( item ) => {\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\treturn isUserPattern || ( isTemplatePart && item.isCustom );\n};\n\nexport const deleteAction = {\n\tid: 'delete-pattern',\n\tlabel: __( 'Delete' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn canDeleteOrReset( item ) && ! hasThemeFile;\n\t},\n\thideModalHeader: true,\n\tsupportsBulk: true,\n\tRenderModal: ( { items, closeModal, onPerform } ) => {\n\t\tconst { __experimentalDeleteReusableBlock } =\n\t\t\tuseDispatch( reusableBlocksStore );\n\t\tconst { createErrorNotice, createSuccessNotice } =\n\t\t\tuseDispatch( noticesStore );\n\t\tconst { removeTemplates } = unlock( useDispatch( editSiteStore ) );\n\n\t\tconst deletePattern = async () => {\n\t\t\tconst promiseResult = await Promise.allSettled(\n\t\t\t\titems.map( ( item ) => {\n\t\t\t\t\treturn __experimentalDeleteReusableBlock( item.id );\n\t\t\t\t} )\n\t\t\t);\n\t\t\t// If all the promises were fulfilled with success.\n\t\t\tif (\n\t\t\t\tpromiseResult.every( ( { status } ) => status === 'fulfilled' )\n\t\t\t) {\n\t\t\t\tlet successMessage;\n\t\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\t\tsuccessMessage = sprintf(\n\t\t\t\t\t\t/* translators: The posts's title. */\n\t\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\t\titems[ 0 ].title\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\tsuccessMessage = __( 'The patterns were deleted.' );\n\t\t\t\t}\n\t\t\t\tcreateSuccessNotice( successMessage, {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tid: 'edit-site-page-trashed',\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\t// If there was at lease one failure.\n\t\t\t\tlet errorMessage;\n\t\t\t\t// If we were trying to delete a single pattern.\n\t\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\t\tif ( promiseResult[ 0 ].reason?.message ) {\n\t\t\t\t\t\terrorMessage = promiseResult[ 0 ].reason.message;\n\t\t\t\t\t} else {\n\t\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t\t'An error occurred while deleting the pattern.'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\t// If we were trying to delete multiple patterns.\n\t\t\t\t} else {\n\t\t\t\t\tconst errorMessages = new Set();\n\t\t\t\t\tconst failedPromises = promiseResult.filter(\n\t\t\t\t\t\t( { status } ) => status === 'rejected'\n\t\t\t\t\t);\n\t\t\t\t\tfor ( const failedPromise of failedPromises ) {\n\t\t\t\t\t\tif ( failedPromise.reason?.message ) {\n\t\t\t\t\t\t\terrorMessages.add( failedPromise.reason.message );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( errorMessages.size === 0 ) {\n\t\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t\t'An error occurred while deleting the patterns.'\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( errorMessages.size === 1 ) {\n\t\t\t\t\t\terrorMessage = sprintf(\n\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'An error occurred while deleting the patterns: %s'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\terrorMessage = sprintf(\n\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'Some errors occurred while deleting the patterns: %s'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tconst deleteItem = () => {\n\t\t\tif ( items[ 0 ].type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\tremoveTemplates( items );\n\t\t\t} else {\n\t\t\t\tdeletePattern();\n\t\t\t}\n\t\t\tif ( onPerform ) {\n\t\t\t\tonPerform();\n\t\t\t}\n\t\t\tcloseModal();\n\t\t};\n\t\tlet questionMessage;\n\t\tif ( items.length === 1 ) {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %s: The page's title.\n\t\t\t\t__( 'Are you sure you want to delete \"%s\"?' ),\n\t\t\t\tdecodeEntities( items[ 0 ].title || items[ 0 ].name )\n\t\t\t);\n\t\t} else if (\n\t\t\titems.length > 1 &&\n\t\t\titems[ 0 ].type === TEMPLATE_PART_POST_TYPE\n\t\t) {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %d: The number of template parts (2 or more).\n\t\t\t\t__( 'Are you sure you want to delete %d template parts?' ),\n\t\t\t\titems.length\n\t\t\t);\n\t\t} else {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %d: The number of patterns (2 or more).\n\t\t\t\t__( 'Are you sure you want to delete %d patterns?' ),\n\t\t\t\titems.length\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<VStack spacing=\"5\">\n\t\t\t\t<Text>{ questionMessage }</Text>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ closeModal }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button variant=\"primary\" onClick={ deleteItem }>\n\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t);\n\t},\n};\n\nexport const resetAction = {\n\tid: 'reset-action',\n\tlabel: __( 'Clear customizations' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn canDeleteOrReset( item ) && hasThemeFile;\n\t},\n\thideModalHeader: true,\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { removeTemplate } = useDispatch( editSiteStore );\n\t\treturn (\n\t\t\t<VStack spacing=\"5\">\n\t\t\t\t<Text>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Are you sure you want to clear these customizations?'\n\t\t\t\t\t) }\n\t\t\t\t</Text>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ closeModal }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ () => removeTemplate( item ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Clear' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t);\n\t},\n};\n\nexport const duplicatePatternAction = {\n\tid: 'duplicate-pattern',\n\tlabel: _x( 'Duplicate', 'action label' ),\n\tisEligible: ( item ) => item.type !== TEMPLATE_PART_POST_TYPE,\n\tmodalHeader: _x( 'Duplicate pattern', 'action label' ),\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { categoryId = PATTERN_DEFAULT_CATEGORY } = getQueryArgs(\n\t\t\twindow.location.href\n\t\t);\n\t\tconst isThemePattern = item.type === PATTERN_TYPES.theme;\n\t\tconst history = useHistory();\n\t\tfunction onPatternSuccess( { pattern } ) {\n\t\t\thistory.push( {\n\t\t\t\tcategoryType: PATTERN_TYPES.theme,\n\t\t\t\tcategoryId,\n\t\t\t\tpostType: PATTERN_TYPES.user,\n\t\t\t\tpostId: pattern.id,\n\t\t\t} );\n\t\t\tcloseModal();\n\t\t}\n\t\tconst duplicatedProps = useDuplicatePatternProps( {\n\t\t\tpattern: isThemePattern ? item : item.patternPost,\n\t\t\tonSuccess: onPatternSuccess,\n\t\t} );\n\t\treturn (\n\t\t\t<CreatePatternModalContents\n\t\t\t\tonClose={ closeModal }\n\t\t\t\tconfirmLabel={ _x( 'Duplicate', 'action label' ) }\n\t\t\t\t{ ...duplicatedProps }\n\t\t\t/>\n\t\t);\n\t},\n};\n\nexport const duplicateTemplatePartAction = {\n\tid: 'duplicate-template-part',\n\tlabel: _x( 'Duplicate', 'action label' ),\n\tisEligible: ( item ) => item.type === TEMPLATE_PART_POST_TYPE,\n\tmodalHeader: _x( 'Duplicate template part', 'action label' ),\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\t\tconst { categoryId = PATTERN_DEFAULT_CATEGORY } = getQueryArgs(\n\t\t\twindow.location.href\n\t\t);\n\t\tconst history = useHistory();\n\t\tasync function onTemplatePartSuccess( templatePart ) {\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: The new template part's title e.g. 'Call to action (copy)'.\n\t\t\t\t\t__( '\"%s\" duplicated.' ),\n\t\t\t\t\titem.title\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'edit-site-patterns-success' }\n\t\t\t);\n\t\t\thistory.push( {\n\t\t\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\t\t\tpostId: templatePart?.id,\n\t\t\t\tcategoryType: TEMPLATE_PART_POST_TYPE,\n\t\t\t\tcategoryId,\n\t\t\t} );\n\t\t\tcloseModal();\n\t\t}\n\t\treturn (\n\t\t\t<CreateTemplatePartModalContents\n\t\t\t\tblocks={ item.blocks }\n\t\t\t\tdefaultArea={ item.templatePart.area }\n\t\t\t\tdefaultTitle={ sprintf(\n\t\t\t\t\t/* translators: %s: Existing template part title */\n\t\t\t\t\t__( '%s (Copy)' ),\n\t\t\t\t\titem.title\n\t\t\t\t) }\n\t\t\t\tonCreate={ onTemplatePartSuccess }\n\t\t\t\tonError={ closeModal }\n\t\t\t\tconfirmLabel={ _x( 'Duplicate', 'action label' ) }\n\t\t\t/>\n\t\t);\n\t},\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["paramCase","kebabCase","downloadZip","getQueryArgs","downloadBlob","__","_x","sprintf","Button","TextControl","__experimentalHStack","HStack","__experimentalVStack","VStack","__experimentalText","Text","store","coreStore","useDispatch","useState","noticesStore","decodeEntities","reusableBlocksStore","privateApis","routerPrivateApis","patternsPrivateApis","unlock","editSiteStore","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_DEFAULT_CATEGORY","CreateTemplatePartModalContents","useHistory","CreatePatternModalContents","useDuplicatePatternProps","getJsonFromItem","item","JSON","stringify","__file","type","title","name","content","patternPost","raw","syncStatus","wp_pattern_sync_status","exportJSONaction","id","label","supportsBulk","isEligible","user","callback","items","length","nameCount","filesToZip","map","lastModified","Date","input","blob","renameAction","isTemplatePart","isUserPattern","isCustomPattern","isCustom","hasThemeFile","templatePart","has_theme_file","RenderModal","closeModal","setTitle","editEntityRecord","saveEditedEntityRecord","createSuccessNotice","createErrorNotice","onRename","event","preventDefault","throwOnError","error","fallbackErrorMessage","errorMessage","message","code","createElement","onSubmit","spacing","__nextHasNoMarginBottom","__next40pxDefaultSize","value","onChange","required","justify","variant","onClick","canDeleteOrReset","deleteAction","hideModalHeader","onPerform","__experimentalDeleteReusableBlock","removeTemplates","deletePattern","promiseResult","Promise","allSettled","every","status","successMessage","reason","errorMessages","Set","failedPromises","filter","failedPromise","add","size","join","deleteItem","questionMessage","resetAction","removeTemplate","duplicatePatternAction","modalHeader","categoryId","window","location","href","isThemePattern","theme","history","onPatternSuccess","pattern","push","categoryType","postType","postId","duplicatedProps","onSuccess","onClose","confirmLabel","duplicateTemplatePartAction","onTemplatePartSuccess","blocks","defaultArea","area","defaultTitle","onCreate","onError"],"sources":["@wordpress/edit-site/src/components/page-patterns/dataviews-pattern-actions.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { paramCase as kebabCase } from 'change-case';\nimport { downloadZip } from 'client-zip';\n\n/**\n * WordPress dependencies\n */\nimport { getQueryArgs } from '@wordpress/url';\nimport { downloadBlob } from '@wordpress/blob';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport {\n\tButton,\n\tTextControl,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\t__experimentalText as Text,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useDispatch } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { store as editSiteStore } from '../../store';\nimport {\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport { CreateTemplatePartModalContents } from '../create-template-part-modal';\n\nconst { useHistory } = unlock( routerPrivateApis );\nconst { CreatePatternModalContents, useDuplicatePatternProps } =\n\tunlock( patternsPrivateApis );\n\nfunction getJsonFromItem( item ) {\n\treturn JSON.stringify(\n\t\t{\n\t\t\t__file: item.type,\n\t\t\ttitle: item.title || item.name,\n\t\t\tcontent: item.patternPost.content.raw,\n\t\t\tsyncStatus: item.patternPost.wp_pattern_sync_status,\n\t\t},\n\t\tnull,\n\t\t2\n\t);\n}\n\nexport const exportJSONaction = {\n\tid: 'export-pattern',\n\tlabel: __( 'Export as JSON' ),\n\tsupportsBulk: true,\n\tisEligible: ( item ) => item.type === PATTERN_TYPES.user,\n\tcallback: async ( items ) => {\n\t\tif ( items.length === 1 ) {\n\t\t\treturn downloadBlob(\n\t\t\t\t`${ kebabCase( items[ 0 ].title || items[ 0 ].name ) }.json`,\n\t\t\t\tgetJsonFromItem( items[ 0 ] ),\n\t\t\t\t'application/json'\n\t\t\t);\n\t\t}\n\t\tconst nameCount = {};\n\t\tconst filesToZip = items.map( ( item ) => {\n\t\t\tconst name = kebabCase( item.title || item.name );\n\t\t\tnameCount[ name ] = ( nameCount[ name ] || 0 ) + 1;\n\t\t\treturn {\n\t\t\t\tname: `${\n\t\t\t\t\tname +\n\t\t\t\t\t( nameCount[ name ] > 1\n\t\t\t\t\t\t? '-' + ( nameCount[ name ] - 1 )\n\t\t\t\t\t\t: '' )\n\t\t\t\t}.json`,\n\t\t\t\tlastModified: new Date(),\n\t\t\t\tinput: getJsonFromItem( item ),\n\t\t\t};\n\t\t} );\n\t\treturn downloadBlob(\n\t\t\t__( 'patterns-export' ) + '.zip',\n\t\t\tawait downloadZip( filesToZip ).blob(),\n\t\t\t'application/zip'\n\t\t);\n\t},\n};\n\nexport const renameAction = {\n\tid: 'rename-pattern',\n\tlabel: __( 'Rename' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\t\tconst isCustomPattern =\n\t\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn isCustomPattern && ! hasThemeFile;\n\t},\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst [ title, setTitle ] = useState( () => item.title );\n\t\tconst { editEntityRecord, saveEditedEntityRecord } =\n\t\t\tuseDispatch( coreStore );\n\t\tconst { createSuccessNotice, createErrorNotice } =\n\t\t\tuseDispatch( noticesStore );\n\t\tasync function onRename( event ) {\n\t\t\tevent.preventDefault();\n\t\t\ttry {\n\t\t\t\tawait editEntityRecord( 'postType', item.type, item.id, {\n\t\t\t\t\ttitle,\n\t\t\t\t} );\n\t\t\t\t// Update state before saving rerenders the list.\n\t\t\t\tsetTitle( '' );\n\t\t\t\tcloseModal();\n\t\t\t\t// Persist edited entity.\n\t\t\t\tawait saveEditedEntityRecord( 'postType', item.type, item.id, {\n\t\t\t\t\tthrowOnError: true,\n\t\t\t\t} );\n\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\titem.type === TEMPLATE_PART_POST_TYPE\n\t\t\t\t\t\t? __( 'Template part renamed.' )\n\t\t\t\t\t\t: __( 'Pattern renamed.' ),\n\t\t\t\t\t{ type: 'snackbar' }\n\t\t\t\t);\n\t\t\t} catch ( error ) {\n\t\t\t\tconst fallbackErrorMessage =\n\t\t\t\t\titem.type === TEMPLATE_PART_POST_TYPE\n\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t'An error occurred while renaming the template part.'\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: __( 'An error occurred while renaming the pattern.' );\n\t\t\t\tconst errorMessage =\n\t\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t: fallbackErrorMessage;\n\t\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t\t}\n\t\t}\n\t\treturn (\n\t\t\t<form onSubmit={ onRename }>\n\t\t\t\t<VStack spacing=\"5\">\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tcloseModal();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</HStack>\n\t\t\t\t</VStack>\n\t\t\t</form>\n\t\t);\n\t},\n};\n\nconst canDeleteOrReset = ( item ) => {\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\treturn isUserPattern || ( isTemplatePart && item.isCustom );\n};\n\nexport const deleteAction = {\n\tid: 'delete-pattern',\n\tlabel: __( 'Delete' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn canDeleteOrReset( item ) && ! hasThemeFile;\n\t},\n\thideModalHeader: true,\n\tsupportsBulk: true,\n\tRenderModal: ( { items, closeModal, onPerform } ) => {\n\t\tconst { __experimentalDeleteReusableBlock } =\n\t\t\tuseDispatch( reusableBlocksStore );\n\t\tconst { createErrorNotice, createSuccessNotice } =\n\t\t\tuseDispatch( noticesStore );\n\t\tconst { removeTemplates } = unlock( useDispatch( editSiteStore ) );\n\n\t\tconst deletePattern = async () => {\n\t\t\tconst promiseResult = await Promise.allSettled(\n\t\t\t\titems.map( ( item ) => {\n\t\t\t\t\treturn __experimentalDeleteReusableBlock( item.id );\n\t\t\t\t} )\n\t\t\t);\n\t\t\t// If all the promises were fulfilled with success.\n\t\t\tif (\n\t\t\t\tpromiseResult.every( ( { status } ) => status === 'fulfilled' )\n\t\t\t) {\n\t\t\t\tlet successMessage;\n\t\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\t\tsuccessMessage = sprintf(\n\t\t\t\t\t\t/* translators: The posts's title. */\n\t\t\t\t\t\t__( '\"%s\" deleted.' ),\n\t\t\t\t\t\titems[ 0 ].title\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\tsuccessMessage = __( 'The patterns were deleted.' );\n\t\t\t\t}\n\t\t\t\tcreateSuccessNotice( successMessage, {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\tid: 'edit-site-page-trashed',\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\t// If there was at lease one failure.\n\t\t\t\tlet errorMessage;\n\t\t\t\t// If we were trying to delete a single pattern.\n\t\t\t\tif ( promiseResult.length === 1 ) {\n\t\t\t\t\tif ( promiseResult[ 0 ].reason?.message ) {\n\t\t\t\t\t\terrorMessage = promiseResult[ 0 ].reason.message;\n\t\t\t\t\t} else {\n\t\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t\t'An error occurred while deleting the pattern.'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\t// If we were trying to delete multiple patterns.\n\t\t\t\t} else {\n\t\t\t\t\tconst errorMessages = new Set();\n\t\t\t\t\tconst failedPromises = promiseResult.filter(\n\t\t\t\t\t\t( { status } ) => status === 'rejected'\n\t\t\t\t\t);\n\t\t\t\t\tfor ( const failedPromise of failedPromises ) {\n\t\t\t\t\t\tif ( failedPromise.reason?.message ) {\n\t\t\t\t\t\t\terrorMessages.add( failedPromise.reason.message );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( errorMessages.size === 0 ) {\n\t\t\t\t\t\terrorMessage = __(\n\t\t\t\t\t\t\t'An error occurred while deleting the patterns.'\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( errorMessages.size === 1 ) {\n\t\t\t\t\t\terrorMessage = sprintf(\n\t\t\t\t\t\t\t/* translators: %s: an error message */\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'An error occurred while deleting the patterns: %s'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t[ ...errorMessages ][ 0 ]\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\terrorMessage = sprintf(\n\t\t\t\t\t\t\t/* translators: %s: a list of comma separated error messages */\n\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t'Some errors occurred while deleting the patterns: %s'\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t[ ...errorMessages ].join( ',' )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tconst deleteItem = () => {\n\t\t\tif ( items[ 0 ].type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t\tremoveTemplates( items );\n\t\t\t} else {\n\t\t\t\tdeletePattern();\n\t\t\t}\n\t\t\tif ( onPerform ) {\n\t\t\t\tonPerform();\n\t\t\t}\n\t\t\tcloseModal();\n\t\t};\n\t\tlet questionMessage;\n\t\tif ( items.length === 1 ) {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %s: The page's title.\n\t\t\t\t__( 'Are you sure you want to delete \"%s\"?' ),\n\t\t\t\tdecodeEntities( items[ 0 ].title || items[ 0 ].name )\n\t\t\t);\n\t\t} else if (\n\t\t\titems.length > 1 &&\n\t\t\titems[ 0 ].type === TEMPLATE_PART_POST_TYPE\n\t\t) {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %d: The number of template parts (2 or more).\n\t\t\t\t__( 'Are you sure you want to delete %d template parts?' ),\n\t\t\t\titems.length\n\t\t\t);\n\t\t} else {\n\t\t\tquestionMessage = sprintf(\n\t\t\t\t// translators: %d: The number of patterns (2 or more).\n\t\t\t\t__( 'Are you sure you want to delete %d patterns?' ),\n\t\t\t\titems.length\n\t\t\t);\n\t\t}\n\t\treturn (\n\t\t\t<VStack spacing=\"5\">\n\t\t\t\t<Text>{ questionMessage }</Text>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ closeModal }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button variant=\"primary\" onClick={ deleteItem }>\n\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t);\n\t},\n};\n\nexport const resetAction = {\n\tid: 'reset-action',\n\tlabel: __( 'Clear customizations' ),\n\tisEligible: ( item ) => {\n\t\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\t\tconst hasThemeFile = isTemplatePart && item.templatePart.has_theme_file;\n\t\treturn canDeleteOrReset( item ) && hasThemeFile;\n\t},\n\thideModalHeader: true,\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { removeTemplate } = useDispatch( editSiteStore );\n\t\treturn (\n\t\t\t<VStack spacing=\"5\">\n\t\t\t\t<Text>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Are you sure you want to clear these customizations?'\n\t\t\t\t\t) }\n\t\t\t\t</Text>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ closeModal }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ () => removeTemplate( item ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Clear' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t);\n\t},\n};\n\nexport const duplicatePatternAction = {\n\tid: 'duplicate-pattern',\n\tlabel: _x( 'Duplicate', 'action label' ),\n\tisEligible: ( item ) => item.type !== TEMPLATE_PART_POST_TYPE,\n\tmodalHeader: _x( 'Duplicate pattern', 'action label' ),\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { categoryId = PATTERN_DEFAULT_CATEGORY } = getQueryArgs(\n\t\t\twindow.location.href\n\t\t);\n\t\tconst isThemePattern = item.type === PATTERN_TYPES.theme;\n\t\tconst history = useHistory();\n\t\tfunction onPatternSuccess( { pattern } ) {\n\t\t\thistory.push( {\n\t\t\t\tcategoryType: PATTERN_TYPES.theme,\n\t\t\t\tcategoryId,\n\t\t\t\tpostType: PATTERN_TYPES.user,\n\t\t\t\tpostId: pattern.id,\n\t\t\t} );\n\t\t\tcloseModal();\n\t\t}\n\t\tconst duplicatedProps = useDuplicatePatternProps( {\n\t\t\tpattern: isThemePattern ? item : item.patternPost,\n\t\t\tonSuccess: onPatternSuccess,\n\t\t} );\n\t\treturn (\n\t\t\t<CreatePatternModalContents\n\t\t\t\tonClose={ closeModal }\n\t\t\t\tconfirmLabel={ _x( 'Duplicate', 'action label' ) }\n\t\t\t\t{ ...duplicatedProps }\n\t\t\t/>\n\t\t);\n\t},\n};\n\nexport const duplicateTemplatePartAction = {\n\tid: 'duplicate-template-part',\n\tlabel: _x( 'Duplicate', 'action label' ),\n\tisEligible: ( item ) => item.type === TEMPLATE_PART_POST_TYPE,\n\tmodalHeader: _x( 'Duplicate template part', 'action label' ),\n\tRenderModal: ( { items, closeModal } ) => {\n\t\tconst [ item ] = items;\n\t\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\t\tconst { categoryId = PATTERN_DEFAULT_CATEGORY } = getQueryArgs(\n\t\t\twindow.location.href\n\t\t);\n\t\tconst history = useHistory();\n\t\tasync function onTemplatePartSuccess( templatePart ) {\n\t\t\tcreateSuccessNotice(\n\t\t\t\tsprintf(\n\t\t\t\t\t// translators: %s: The new template part's title e.g. 'Call to action (copy)'.\n\t\t\t\t\t__( '\"%s\" duplicated.' ),\n\t\t\t\t\titem.title\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar', id: 'edit-site-patterns-success' }\n\t\t\t);\n\t\t\thistory.push( {\n\t\t\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\t\t\tpostId: templatePart?.id,\n\t\t\t\tcategoryType: TEMPLATE_PART_POST_TYPE,\n\t\t\t\tcategoryId,\n\t\t\t} );\n\t\t\tcloseModal();\n\t\t}\n\t\treturn (\n\t\t\t<CreateTemplatePartModalContents\n\t\t\t\tblocks={ item.blocks }\n\t\t\t\tdefaultArea={ item.templatePart.area }\n\t\t\t\tdefaultTitle={ sprintf(\n\t\t\t\t\t/* translators: %s: Existing template part title */\n\t\t\t\t\t__( '%s (Copy)' ),\n\t\t\t\t\titem.title\n\t\t\t\t) }\n\t\t\t\tonCreate={ onTemplatePartSuccess }\n\t\t\t\tonError={ closeModal }\n\t\t\t\tconfirmLabel={ _x( 'Duplicate', 'action label' ) }\n\t\t\t/>\n\t\t);\n\t},\n};\n"],"mappings":"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"}
@@ -50,7 +50,8 @@ export default function PatternsHeader({
50
50
  toggleProps: {
51
51
  className: 'edit-site-patterns__button',
52
52
  describedBy: sprintf( /* translators: %s: pattern category name */
53
- __('Action menu for %s pattern category'), title)
53
+ __('Action menu for %s pattern category'), title),
54
+ size: 'compact'
54
55
  }
55
56
  }, ({
56
57
  onClose
@@ -1 +1 @@
1
- {"version":3,"names":["DropdownMenu","MenuGroup","__experimentalHStack","HStack","__experimentalHeading","Heading","__experimentalText","Text","__experimentalVStack","VStack","store","editorStore","useSelect","__","sprintf","moreVertical","RenameCategoryMenuItem","DeleteCategoryMenuItem","usePatternCategories","TEMPLATE_PART_POST_TYPE","PATTERN_TYPES","PatternsHeader","categoryId","type","titleId","descriptionId","patternCategories","templatePartAreas","select","__experimentalGetDefaultTemplatePartAreas","title","description","patternCategory","templatePartArea","find","area","label","theme","category","name","createElement","className","justify","as","level","id","icon","toggleProps","describedBy","onClose","variant"],"sources":["@wordpress/edit-site/src/components/page-patterns/header.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tDropdownMenu,\n\tMenuGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useSelect } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { moreVertical } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport RenameCategoryMenuItem from './rename-category-menu-item';\nimport DeleteCategoryMenuItem from './delete-category-menu-item';\nimport usePatternCategories from '../sidebar-navigation-screen-patterns/use-pattern-categories';\nimport { TEMPLATE_PART_POST_TYPE, PATTERN_TYPES } from '../../utils/constants';\n\nexport default function PatternsHeader( {\n\tcategoryId,\n\ttype,\n\ttitleId,\n\tdescriptionId,\n} ) {\n\tconst { patternCategories } = usePatternCategories();\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\n\tlet title, description, patternCategory;\n\tif ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\tconst templatePartArea = templatePartAreas.find(\n\t\t\t( area ) => area.area === categoryId\n\t\t);\n\t\ttitle = templatePartArea?.label;\n\t\tdescription = templatePartArea?.description;\n\t} else if ( type === PATTERN_TYPES.theme ) {\n\t\tpatternCategory = patternCategories.find(\n\t\t\t( category ) => category.name === categoryId\n\t\t);\n\t\ttitle = patternCategory?.label;\n\t\tdescription = patternCategory?.description;\n\t}\n\n\tif ( ! title ) return null;\n\n\treturn (\n\t\t<VStack className=\"edit-site-patterns__section-header\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Heading as=\"h2\" level={ 4 } id={ titleId }>\n\t\t\t\t\t{ title }\n\t\t\t\t</Heading>\n\t\t\t\t{ !! patternCategory?.id && (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\tclassName: 'edit-site-patterns__button',\n\t\t\t\t\t\t\tdescribedBy: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: pattern category name */\n\t\t\t\t\t\t\t\t__( 'Action menu for %s pattern category' ),\n\t\t\t\t\t\t\t\ttitle\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\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t<RenameCategoryMenuItem\n\t\t\t\t\t\t\t\t\tcategory={ patternCategory }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<DeleteCategoryMenuItem\n\t\t\t\t\t\t\t\t\tcategory={ patternCategory }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</DropdownMenu>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t\t{ description ? (\n\t\t\t\t<Text variant=\"muted\" as=\"p\" id={ descriptionId }>\n\t\t\t\t\t{ description }\n\t\t\t\t</Text>\n\t\t\t) : null }\n\t\t</VStack>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,YAAY,EACZC,SAAS,EACTC,oBAAoB,IAAIC,MAAM,EAC9BC,qBAAqB,IAAIC,OAAO,EAChCC,kBAAkB,IAAIC,IAAI,EAC1BC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,KAAK,IAAIC,WAAW,QAAQ,mBAAmB;AACxD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASC,YAAY,QAAQ,kBAAkB;;AAE/C;AACA;AACA;AACA,OAAOC,sBAAsB,MAAM,6BAA6B;AAChE,OAAOC,sBAAsB,MAAM,6BAA6B;AAChE,OAAOC,oBAAoB,MAAM,8DAA8D;AAC/F,SAASC,uBAAuB,EAAEC,aAAa,QAAQ,uBAAuB;AAE9E,eAAe,SAASC,cAAcA,CAAE;EACvCC,UAAU;EACVC,IAAI;EACJC,OAAO;EACPC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC;EAAkB,CAAC,GAAGR,oBAAoB,CAAC,CAAC;EACpD,MAAMS,iBAAiB,GAAGf,SAAS,CAChCgB,MAAM,IACPA,MAAM,CAAEjB,WAAY,CAAC,CAACkB,yCAAyC,CAAC,CAAC,EAClE,EACD,CAAC;EAED,IAAIC,KAAK,EAAEC,WAAW,EAAEC,eAAe;EACvC,IAAKT,IAAI,KAAKJ,uBAAuB,EAAG;IACvC,MAAMc,gBAAgB,GAAGN,iBAAiB,CAACO,IAAI,CAC5CC,IAAI,IAAMA,IAAI,CAACA,IAAI,KAAKb,UAC3B,CAAC;IACDQ,KAAK,GAAGG,gBAAgB,EAAEG,KAAK;IAC/BL,WAAW,GAAGE,gBAAgB,EAAEF,WAAW;EAC5C,CAAC,MAAM,IAAKR,IAAI,KAAKH,aAAa,CAACiB,KAAK,EAAG;IAC1CL,eAAe,GAAGN,iBAAiB,CAACQ,IAAI,CACrCI,QAAQ,IAAMA,QAAQ,CAACC,IAAI,KAAKjB,UACnC,CAAC;IACDQ,KAAK,GAAGE,eAAe,EAAEI,KAAK;IAC9BL,WAAW,GAAGC,eAAe,EAAED,WAAW;EAC3C;EAEA,IAAK,CAAED,KAAK,EAAG,OAAO,IAAI;EAE1B,OACCU,aAAA,CAAC/B,MAAM;IAACgC,SAAS,EAAC;EAAoC,GACrDD,aAAA,CAACrC,MAAM;IAACuC,OAAO,EAAC;EAAe,GAC9BF,aAAA,CAACnC,OAAO;IAACsC,EAAE,EAAC,IAAI;IAACC,KAAK,EAAG,CAAG;IAACC,EAAE,EAAGrB;EAAS,GACxCM,KACM,CAAC,EACR,CAAC,CAAEE,eAAe,EAAEa,EAAE,IACvBL,aAAA,CAACxC,YAAY;IACZ8C,IAAI,EAAG/B,YAAc;IACrBqB,KAAK,EAAGvB,EAAE,CAAE,SAAU,CAAG;IACzBkC,WAAW,EAAG;MACbN,SAAS,EAAE,4BAA4B;MACvCO,WAAW,EAAElC,OAAO,EACnB;MACAD,EAAE,CAAE,qCAAsC,CAAC,EAC3CiB,KACD;IACD;EAAG,GAED,CAAE;IAAEmB;EAAQ,CAAC,KACdT,aAAA,CAACvC,SAAS,QACTuC,aAAA,CAACxB,sBAAsB;IACtBsB,QAAQ,EAAGN,eAAiB;IAC5BiB,OAAO,EAAGA;EAAS,CACnB,CAAC,EACFT,aAAA,CAACvB,sBAAsB;IACtBqB,QAAQ,EAAGN,eAAiB;IAC5BiB,OAAO,EAAGA;EAAS,CACnB,CACS,CAEC,CAER,CAAC,EACPlB,WAAW,GACZS,aAAA,CAACjC,IAAI;IAAC2C,OAAO,EAAC,OAAO;IAACP,EAAE,EAAC,GAAG;IAACE,EAAE,EAAGpB;EAAe,GAC9CM,WACG,CAAC,GACJ,IACG,CAAC;AAEX"}
1
+ {"version":3,"names":["DropdownMenu","MenuGroup","__experimentalHStack","HStack","__experimentalHeading","Heading","__experimentalText","Text","__experimentalVStack","VStack","store","editorStore","useSelect","__","sprintf","moreVertical","RenameCategoryMenuItem","DeleteCategoryMenuItem","usePatternCategories","TEMPLATE_PART_POST_TYPE","PATTERN_TYPES","PatternsHeader","categoryId","type","titleId","descriptionId","patternCategories","templatePartAreas","select","__experimentalGetDefaultTemplatePartAreas","title","description","patternCategory","templatePartArea","find","area","label","theme","category","name","createElement","className","justify","as","level","id","icon","toggleProps","describedBy","size","onClose","variant"],"sources":["@wordpress/edit-site/src/components/page-patterns/header.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tDropdownMenu,\n\tMenuGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { store as editorStore } from '@wordpress/editor';\nimport { useSelect } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { moreVertical } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport RenameCategoryMenuItem from './rename-category-menu-item';\nimport DeleteCategoryMenuItem from './delete-category-menu-item';\nimport usePatternCategories from '../sidebar-navigation-screen-patterns/use-pattern-categories';\nimport { TEMPLATE_PART_POST_TYPE, PATTERN_TYPES } from '../../utils/constants';\n\nexport default function PatternsHeader( {\n\tcategoryId,\n\ttype,\n\ttitleId,\n\tdescriptionId,\n} ) {\n\tconst { patternCategories } = usePatternCategories();\n\tconst templatePartAreas = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetDefaultTemplatePartAreas(),\n\t\t[]\n\t);\n\n\tlet title, description, patternCategory;\n\tif ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\tconst templatePartArea = templatePartAreas.find(\n\t\t\t( area ) => area.area === categoryId\n\t\t);\n\t\ttitle = templatePartArea?.label;\n\t\tdescription = templatePartArea?.description;\n\t} else if ( type === PATTERN_TYPES.theme ) {\n\t\tpatternCategory = patternCategories.find(\n\t\t\t( category ) => category.name === categoryId\n\t\t);\n\t\ttitle = patternCategory?.label;\n\t\tdescription = patternCategory?.description;\n\t}\n\n\tif ( ! title ) return null;\n\n\treturn (\n\t\t<VStack className=\"edit-site-patterns__section-header\">\n\t\t\t<HStack justify=\"space-between\">\n\t\t\t\t<Heading as=\"h2\" level={ 4 } id={ titleId }>\n\t\t\t\t\t{ title }\n\t\t\t\t</Heading>\n\t\t\t\t{ !! patternCategory?.id && (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\t\ttoggleProps={ {\n\t\t\t\t\t\t\tclassName: 'edit-site-patterns__button',\n\t\t\t\t\t\t\tdescribedBy: sprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: pattern category name */\n\t\t\t\t\t\t\t\t__( 'Action menu for %s pattern category' ),\n\t\t\t\t\t\t\t\ttitle\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\tsize: 'compact',\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t<RenameCategoryMenuItem\n\t\t\t\t\t\t\t\t\tcategory={ patternCategory }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<DeleteCategoryMenuItem\n\t\t\t\t\t\t\t\t\tcategory={ patternCategory }\n\t\t\t\t\t\t\t\t\tonClose={ onClose }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</DropdownMenu>\n\t\t\t\t) }\n\t\t\t</HStack>\n\t\t\t{ description ? (\n\t\t\t\t<Text variant=\"muted\" as=\"p\" id={ descriptionId }>\n\t\t\t\t\t{ description }\n\t\t\t\t</Text>\n\t\t\t) : null }\n\t\t</VStack>\n\t);\n}\n"],"mappings":"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"}
@@ -299,7 +299,6 @@ export default function DataviewsPatterns() {
299
299
  // Wrap everything in a block editor provider.
300
300
  // This ensures 'styles' that are needed for the previews are synced
301
301
  // from the site editor store to the block editor store.
302
- // TODO: check if I add the provider in every preview like in templates...
303
302
  return createElement(ExperimentalBlockEditorProvider, {
304
303
  settings: settings
305
304
  }, createElement(Page, {
@@ -1 +1 @@
1
- {"version":3,"names":["__experimentalHStack","HStack","Button","Tooltip","Flex","getQueryArgs","__","_x","useState","useMemo","useCallback","useId","useEffect","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","sortByTextFields","getPaginationResults","Icon","header","footer","symbolFilled","uncategorized","symbol","lockSmall","usePrevious","Page","LAYOUT_GRID","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_SYNC_TYPES","PATTERN_DEFAULT_CATEGORY","ENUMERATION_TYPE","OPERATOR_IN","exportJSONaction","renameAction","resetAction","deleteAction","duplicatePatternAction","duplicateTemplatePartAction","usePatternSettings","unlock","usePatterns","PatternsHeader","useLink","ExperimentalBlockEditorProvider","useGlobalStyle","templatePartIcons","EMPTY_ARRAY","defaultConfigPerViewType","mediaField","primaryField","DEFAULT_VIEW","type","search","page","perPage","hiddenFields","layout","filters","SYNC_FILTERS","value","full","label","description","unsynced","PreviewWrapper","item","onClick","ariaDescribedBy","children","theme","createElement","className","title","Preview","categoryId","viewType","descriptionId","isUserPattern","user","isNonUserPattern","isTemplatePart","isEmpty","blocks","length","isCustomPattern","isCustom","ariaDescriptions","push","backgroundColor","postType","postId","id","name","categoryType","Fragment","style","map","_","index","join","undefined","ariaDescription","key","hidden","Title","itemIcon","syncStatus","alignment","justify","spacing","placement","text","icon","size","as","gap","variant","tabIndex","DataviewsPatterns","window","location","href","view","setView","isUncategorizedThemePatterns","previousCategoryId","viewSyncStatus","find","field","patterns","isResolving","fields","_fields","render","enableSorting","enableHiding","getValue","elements","filterBy","operators","isPrimary","data","paginationInfo","totalItems","totalPages","filteredData","sort","textFields","actions","onChangeView","newView","settings","hideTitleFromUI","titleId","getItemId","isLoading","deferredRendering","supportedLayouts"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tButton,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { getQueryArgs } from '@wordpress/url';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tuseState,\n\tuseMemo,\n\tuseCallback,\n\tuseId,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tDataViews,\n\tsortByTextFields,\n\tgetPaginationResults,\n} from '@wordpress/dataviews';\nimport {\n\tIcon,\n\theader,\n\tfooter,\n\tsymbolFilled as uncategorized,\n\tsymbol,\n\tlockSmall,\n} from '@wordpress/icons';\nimport { usePrevious } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_SYNC_TYPES,\n\tPATTERN_DEFAULT_CATEGORY,\n\tENUMERATION_TYPE,\n\tOPERATOR_IN,\n} from '../../utils/constants';\nimport {\n\texportJSONaction,\n\trenameAction,\n\tresetAction,\n\tdeleteAction,\n\tduplicatePatternAction,\n\tduplicateTemplatePartAction,\n} from './dataviews-pattern-actions';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns from './use-patterns';\nimport PatternsHeader from './header';\nimport { useLink } from '../routes/link';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\n\nconst templatePartIcons = { header, footer, uncategorized };\nconst EMPTY_ARRAY = [];\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\thiddenFields: [ 'sync-status' ],\n\tlayout: {\n\t\t...defaultConfigPerViewType[ LAYOUT_GRID ],\n\t},\n\tfilters: [],\n};\n\nconst SYNC_FILTERS = [\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.full,\n\t\tlabel: _x( 'Synced', 'Option that shows all synchronized patterns' ),\n\t\tdescription: __( 'Patterns that are kept in sync across the site.' ),\n\t},\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.unsynced,\n\t\tlabel: _x(\n\t\t\t'Not synced',\n\t\t\t'Option that shows all patterns that are not synchronized'\n\t\t),\n\t\tdescription: __(\n\t\t\t'Patterns that can be changed freely without affecting the site.'\n\t\t),\n\t},\n];\n\nfunction PreviewWrapper( { item, onClick, ariaDescribedBy, children } ) {\n\tif ( item.type === PATTERN_TYPES.theme ) {\n\t\treturn children;\n\t}\n\treturn (\n\t\t<button\n\t\t\tclassName=\"page-patterns-preview-field__button\"\n\t\t\ttype=\"button\"\n\t\t\tonClick={ onClick }\n\t\t\taria-label={ item.title }\n\t\t\taria-describedby={ ariaDescribedBy }\n\t\t>\n\t\t\t{ children }\n\t\t</button>\n\t);\n}\n\nfunction Preview( { item, categoryId, viewType } ) {\n\tconst descriptionId = useId();\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isNonUserPattern = item.type === PATTERN_TYPES.theme;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isEmpty = ! item.blocks?.length;\n\t// Only custom patterns or custom template parts can be renamed or deleted.\n\tconst isCustomPattern =\n\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\tconst ariaDescriptions = [];\n\tif ( isCustomPattern ) {\n\t\t// User patterns don't have descriptions, but can be edited and deleted, so include some help text.\n\t\tariaDescriptions.push(\n\t\t\t__( 'Press Enter to edit, or Delete to delete the pattern.' )\n\t\t);\n\t} else if ( item.description ) {\n\t\tariaDescriptions.push( item.description );\n\t}\n\n\tif ( isNonUserPattern ) {\n\t\tariaDescriptions.push(\n\t\t\t__( 'Theme & plugin patterns cannot be edited.' )\n\t\t);\n\t}\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tclassName={ `page-patterns-preview-field is-viewtype-${ viewType }` }\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t<PreviewWrapper\n\t\t\t\t\titem={ item }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\tariaDescribedBy={\n\t\t\t\t\t\tariaDescriptions.length\n\t\t\t\t\t\t\t? ariaDescriptions\n\t\t\t\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t\t\t\t( _, index ) =>\n\t\t\t\t\t\t\t\t\t\t\t`${ descriptionId }-${ index }`\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t.join( ' ' )\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ isEmpty && isTemplatePart && __( 'Empty template part' ) }\n\t\t\t\t\t{ isEmpty && ! isTemplatePart && __( 'Empty pattern' ) }\n\t\t\t\t\t{ ! isEmpty && <BlockPreview blocks={ item.blocks } /> }\n\t\t\t\t</PreviewWrapper>\n\t\t\t</div>\n\t\t\t{ ariaDescriptions.map( ( ariaDescription, index ) => (\n\t\t\t\t<div\n\t\t\t\t\tkey={ index }\n\t\t\t\t\thidden\n\t\t\t\t\tid={ `${ descriptionId }-${ index }` }\n\t\t\t\t>\n\t\t\t\t\t{ ariaDescription }\n\t\t\t\t</div>\n\t\t\t) ) }\n\t\t</>\n\t);\n}\n\nfunction Title( { item, categoryId } ) {\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isNonUserPattern = item.type === PATTERN_TYPES.theme;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tlet itemIcon;\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t} );\n\tif ( ! isUserPattern && templatePartIcons[ categoryId ] ) {\n\t\titemIcon = templatePartIcons[ categoryId ];\n\t} else {\n\t\titemIcon =\n\t\t\titem.syncStatus === PATTERN_SYNC_TYPES.full ? symbol : undefined;\n\t}\n\treturn (\n\t\t<HStack alignment=\"center\" justify=\"flex-start\" spacing={ 2 }>\n\t\t\t{ itemIcon && ! isNonUserPattern && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t'Editing this pattern will also update anywhere it is used'\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-icon\"\n\t\t\t\t\t\ticon={ itemIcon }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t\t{ item.type === PATTERN_TYPES.theme && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-lock-icon\"\n\t\t\t\t\t\ticon={ lockSmall }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t\t<Flex\n\t\t\t\tas=\"div\"\n\t\t\t\tgap={ 0 }\n\t\t\t\tjustify=\"left\"\n\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t>\n\t\t\t\t{ item.type === PATTERN_TYPES.theme ? (\n\t\t\t\t\titem.title\n\t\t\t\t) : (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ item.title || item.name }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t</HStack>\n\t);\n}\n\nexport default function DataviewsPatterns() {\n\tconst { categoryType, categoryId = PATTERN_DEFAULT_CATEGORY } =\n\t\tgetQueryArgs( window.location.href );\n\tconst type = categoryType || PATTERN_TYPES.theme;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst isUncategorizedThemePatterns =\n\t\ttype === PATTERN_TYPES.theme && categoryId === 'uncategorized';\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns(\n\t\ttype,\n\t\tisUncategorizedThemePatterns ? '' : categoryId,\n\t\t{\n\t\t\tsearch: view.search,\n\t\t\tsyncStatus: viewSyncStatus,\n\t\t}\n\t);\n\tconst fields = useMemo( () => {\n\t\tconst _fields = [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Preview\n\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\tviewType={ view.type }\n\t\t\t\t\t/>\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } categoryId={ categoryId } />\n\t\t\t\t),\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t];\n\t\tif ( type === PATTERN_TYPES.theme ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Sync Status' ),\n\t\t\t\tid: 'sync-status',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\t// User patterns can have their sync statuses checked directly.\n\t\t\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\t\t\treturn (\n\t\t\t\t\t\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t( { value } ) => value === item.syncStatus\n\t\t\t\t\t\t)?.label ||\n\t\t\t\t\t\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t( { value } ) =>\n\t\t\t\t\t\t\t\tvalue === PATTERN_SYNC_TYPES.unsynced\n\t\t\t\t\t\t).label\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\ttype: ENUMERATION_TYPE,\n\t\t\t\telements: SYNC_FILTERS,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IN ],\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\tenableSorting: false,\n\t\t\t} );\n\t\t}\n\t\treturn _fields;\n\t}, [ view.type, categoryId, type ] );\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif ( previousCategoryId !== categoryId ) {\n\t\t\tsetView( DEFAULT_VIEW );\n\t\t}\n\t}, [ categoryId, previousCategoryId ] );\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\tif ( ! patterns ) {\n\t\t\treturn {\n\t\t\t\tdata: EMPTY_ARRAY,\n\t\t\t\tpaginationInfo: { totalItems: 0, totalPages: 0 },\n\t\t\t};\n\t\t}\n\t\tlet filteredData = [ ...patterns ];\n\t\t// Handle sorting.\n\t\tif ( view.sort ) {\n\t\t\tfilteredData = sortByTextFields( {\n\t\t\t\tdata: filteredData,\n\t\t\t\tview,\n\t\t\t\tfields,\n\t\t\t\ttextFields: [ 'title', 'author' ],\n\t\t\t} );\n\t\t}\n\t\t// Handle pagination.\n\t\treturn getPaginationResults( {\n\t\t\tdata: filteredData,\n\t\t\tview,\n\t\t} );\n\t}, [ patterns, view, fields ] );\n\n\tconst actions = useMemo(\n\t\t() => [\n\t\t\trenameAction,\n\t\t\tduplicatePatternAction,\n\t\t\tduplicateTemplatePartAction,\n\t\t\texportJSONaction,\n\t\t\tresetAction,\n\t\t\tdeleteAction,\n\t\t],\n\t\t[]\n\t);\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView ]\n\t);\n\tconst id = useId();\n\tconst settings = usePatternSettings();\n\t// Wrap everything in a block editor provider.\n\t// This ensures 'styles' that are needed for the previews are synced\n\t// from the site editor store to the block editor store.\n\t// TODO: check if I add the provider in every preview like in templates...\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<Page\n\t\t\t\ttitle={ __( 'Patterns content' ) }\n\t\t\t\tclassName=\"edit-site-page-patterns-dataviews\"\n\t\t\t\thideTitleFromUI\n\t\t\t>\n\t\t\t\t<PatternsHeader\n\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\ttitleId={ `${ id }-title` }\n\t\t\t\t\tdescriptionId={ `${ id }-description` }\n\t\t\t\t/>\n\t\t\t\t<DataViews\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tdeferredRendering={ true }\n\t\t\t\t\tsupportedLayouts={ [ LAYOUT_GRID ] }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["__experimentalHStack","HStack","Button","Tooltip","Flex","getQueryArgs","__","_x","useState","useMemo","useCallback","useId","useEffect","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","sortByTextFields","getPaginationResults","Icon","header","footer","symbolFilled","uncategorized","symbol","lockSmall","usePrevious","Page","LAYOUT_GRID","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_SYNC_TYPES","PATTERN_DEFAULT_CATEGORY","ENUMERATION_TYPE","OPERATOR_IN","exportJSONaction","renameAction","resetAction","deleteAction","duplicatePatternAction","duplicateTemplatePartAction","usePatternSettings","unlock","usePatterns","PatternsHeader","useLink","ExperimentalBlockEditorProvider","useGlobalStyle","templatePartIcons","EMPTY_ARRAY","defaultConfigPerViewType","mediaField","primaryField","DEFAULT_VIEW","type","search","page","perPage","hiddenFields","layout","filters","SYNC_FILTERS","value","full","label","description","unsynced","PreviewWrapper","item","onClick","ariaDescribedBy","children","theme","createElement","className","title","Preview","categoryId","viewType","descriptionId","isUserPattern","user","isNonUserPattern","isTemplatePart","isEmpty","blocks","length","isCustomPattern","isCustom","ariaDescriptions","push","backgroundColor","postType","postId","id","name","categoryType","Fragment","style","map","_","index","join","undefined","ariaDescription","key","hidden","Title","itemIcon","syncStatus","alignment","justify","spacing","placement","text","icon","size","as","gap","variant","tabIndex","DataviewsPatterns","window","location","href","view","setView","isUncategorizedThemePatterns","previousCategoryId","viewSyncStatus","find","field","patterns","isResolving","fields","_fields","render","enableSorting","enableHiding","getValue","elements","filterBy","operators","isPrimary","data","paginationInfo","totalItems","totalPages","filteredData","sort","textFields","actions","onChangeView","newView","settings","hideTitleFromUI","titleId","getItemId","isLoading","deferredRendering","supportedLayouts"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tButton,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { getQueryArgs } from '@wordpress/url';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tuseState,\n\tuseMemo,\n\tuseCallback,\n\tuseId,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tDataViews,\n\tsortByTextFields,\n\tgetPaginationResults,\n} from '@wordpress/dataviews';\nimport {\n\tIcon,\n\theader,\n\tfooter,\n\tsymbolFilled as uncategorized,\n\tsymbol,\n\tlockSmall,\n} from '@wordpress/icons';\nimport { usePrevious } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_SYNC_TYPES,\n\tPATTERN_DEFAULT_CATEGORY,\n\tENUMERATION_TYPE,\n\tOPERATOR_IN,\n} from '../../utils/constants';\nimport {\n\texportJSONaction,\n\trenameAction,\n\tresetAction,\n\tdeleteAction,\n\tduplicatePatternAction,\n\tduplicateTemplatePartAction,\n} from './dataviews-pattern-actions';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns from './use-patterns';\nimport PatternsHeader from './header';\nimport { useLink } from '../routes/link';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\n\nconst templatePartIcons = { header, footer, uncategorized };\nconst EMPTY_ARRAY = [];\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\thiddenFields: [ 'sync-status' ],\n\tlayout: {\n\t\t...defaultConfigPerViewType[ LAYOUT_GRID ],\n\t},\n\tfilters: [],\n};\n\nconst SYNC_FILTERS = [\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.full,\n\t\tlabel: _x( 'Synced', 'Option that shows all synchronized patterns' ),\n\t\tdescription: __( 'Patterns that are kept in sync across the site.' ),\n\t},\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.unsynced,\n\t\tlabel: _x(\n\t\t\t'Not synced',\n\t\t\t'Option that shows all patterns that are not synchronized'\n\t\t),\n\t\tdescription: __(\n\t\t\t'Patterns that can be changed freely without affecting the site.'\n\t\t),\n\t},\n];\n\nfunction PreviewWrapper( { item, onClick, ariaDescribedBy, children } ) {\n\tif ( item.type === PATTERN_TYPES.theme ) {\n\t\treturn children;\n\t}\n\treturn (\n\t\t<button\n\t\t\tclassName=\"page-patterns-preview-field__button\"\n\t\t\ttype=\"button\"\n\t\t\tonClick={ onClick }\n\t\t\taria-label={ item.title }\n\t\t\taria-describedby={ ariaDescribedBy }\n\t\t>\n\t\t\t{ children }\n\t\t</button>\n\t);\n}\n\nfunction Preview( { item, categoryId, viewType } ) {\n\tconst descriptionId = useId();\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isNonUserPattern = item.type === PATTERN_TYPES.theme;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isEmpty = ! item.blocks?.length;\n\t// Only custom patterns or custom template parts can be renamed or deleted.\n\tconst isCustomPattern =\n\t\tisUserPattern || ( isTemplatePart && item.isCustom );\n\tconst ariaDescriptions = [];\n\tif ( isCustomPattern ) {\n\t\t// User patterns don't have descriptions, but can be edited and deleted, so include some help text.\n\t\tariaDescriptions.push(\n\t\t\t__( 'Press Enter to edit, or Delete to delete the pattern.' )\n\t\t);\n\t} else if ( item.description ) {\n\t\tariaDescriptions.push( item.description );\n\t}\n\n\tif ( isNonUserPattern ) {\n\t\tariaDescriptions.push(\n\t\t\t__( 'Theme & plugin patterns cannot be edited.' )\n\t\t);\n\t}\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\tclassName={ `page-patterns-preview-field is-viewtype-${ viewType }` }\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t<PreviewWrapper\n\t\t\t\t\titem={ item }\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\tariaDescribedBy={\n\t\t\t\t\t\tariaDescriptions.length\n\t\t\t\t\t\t\t? ariaDescriptions\n\t\t\t\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t\t\t\t( _, index ) =>\n\t\t\t\t\t\t\t\t\t\t\t`${ descriptionId }-${ index }`\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t.join( ' ' )\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ isEmpty && isTemplatePart && __( 'Empty template part' ) }\n\t\t\t\t\t{ isEmpty && ! isTemplatePart && __( 'Empty pattern' ) }\n\t\t\t\t\t{ ! isEmpty && <BlockPreview blocks={ item.blocks } /> }\n\t\t\t\t</PreviewWrapper>\n\t\t\t</div>\n\t\t\t{ ariaDescriptions.map( ( ariaDescription, index ) => (\n\t\t\t\t<div\n\t\t\t\t\tkey={ index }\n\t\t\t\t\thidden\n\t\t\t\t\tid={ `${ descriptionId }-${ index }` }\n\t\t\t\t>\n\t\t\t\t\t{ ariaDescription }\n\t\t\t\t</div>\n\t\t\t) ) }\n\t\t</>\n\t);\n}\n\nfunction Title( { item, categoryId } ) {\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isNonUserPattern = item.type === PATTERN_TYPES.theme;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tlet itemIcon;\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcategoryId,\n\t\tcategoryType: isTemplatePart ? item.type : PATTERN_TYPES.theme,\n\t} );\n\tif ( ! isUserPattern && templatePartIcons[ categoryId ] ) {\n\t\titemIcon = templatePartIcons[ categoryId ];\n\t} else {\n\t\titemIcon =\n\t\t\titem.syncStatus === PATTERN_SYNC_TYPES.full ? symbol : undefined;\n\t}\n\treturn (\n\t\t<HStack alignment=\"center\" justify=\"flex-start\" spacing={ 2 }>\n\t\t\t{ itemIcon && ! isNonUserPattern && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __(\n\t\t\t\t\t\t'Editing this pattern will also update anywhere it is used'\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-icon\"\n\t\t\t\t\t\ticon={ itemIcon }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t\t{ item.type === PATTERN_TYPES.theme && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-lock-icon\"\n\t\t\t\t\t\ticon={ lockSmall }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t\t<Flex\n\t\t\t\tas=\"div\"\n\t\t\t\tgap={ 0 }\n\t\t\t\tjustify=\"left\"\n\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t>\n\t\t\t\t{ item.type === PATTERN_TYPES.theme ? (\n\t\t\t\t\titem.title\n\t\t\t\t) : (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ item.title || item.name }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t</HStack>\n\t);\n}\n\nexport default function DataviewsPatterns() {\n\tconst { categoryType, categoryId = PATTERN_DEFAULT_CATEGORY } =\n\t\tgetQueryArgs( window.location.href );\n\tconst type = categoryType || PATTERN_TYPES.theme;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst isUncategorizedThemePatterns =\n\t\ttype === PATTERN_TYPES.theme && categoryId === 'uncategorized';\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns(\n\t\ttype,\n\t\tisUncategorizedThemePatterns ? '' : categoryId,\n\t\t{\n\t\t\tsearch: view.search,\n\t\t\tsyncStatus: viewSyncStatus,\n\t\t}\n\t);\n\tconst fields = useMemo( () => {\n\t\tconst _fields = [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Preview\n\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\t\tviewType={ view.type }\n\t\t\t\t\t/>\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } categoryId={ categoryId } />\n\t\t\t\t),\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t];\n\t\tif ( type === PATTERN_TYPES.theme ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Sync Status' ),\n\t\t\t\tid: 'sync-status',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\t// User patterns can have their sync statuses checked directly.\n\t\t\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\t\t\treturn (\n\t\t\t\t\t\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t( { value } ) => value === item.syncStatus\n\t\t\t\t\t\t)?.label ||\n\t\t\t\t\t\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t( { value } ) =>\n\t\t\t\t\t\t\t\tvalue === PATTERN_SYNC_TYPES.unsynced\n\t\t\t\t\t\t).label\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\ttype: ENUMERATION_TYPE,\n\t\t\t\telements: SYNC_FILTERS,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IN ],\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\tenableSorting: false,\n\t\t\t} );\n\t\t}\n\t\treturn _fields;\n\t}, [ view.type, categoryId, type ] );\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif ( previousCategoryId !== categoryId ) {\n\t\t\tsetView( DEFAULT_VIEW );\n\t\t}\n\t}, [ categoryId, previousCategoryId ] );\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\tif ( ! patterns ) {\n\t\t\treturn {\n\t\t\t\tdata: EMPTY_ARRAY,\n\t\t\t\tpaginationInfo: { totalItems: 0, totalPages: 0 },\n\t\t\t};\n\t\t}\n\t\tlet filteredData = [ ...patterns ];\n\t\t// Handle sorting.\n\t\tif ( view.sort ) {\n\t\t\tfilteredData = sortByTextFields( {\n\t\t\t\tdata: filteredData,\n\t\t\t\tview,\n\t\t\t\tfields,\n\t\t\t\ttextFields: [ 'title', 'author' ],\n\t\t\t} );\n\t\t}\n\t\t// Handle pagination.\n\t\treturn getPaginationResults( {\n\t\t\tdata: filteredData,\n\t\t\tview,\n\t\t} );\n\t}, [ patterns, view, fields ] );\n\n\tconst actions = useMemo(\n\t\t() => [\n\t\t\trenameAction,\n\t\t\tduplicatePatternAction,\n\t\t\tduplicateTemplatePartAction,\n\t\t\texportJSONaction,\n\t\t\tresetAction,\n\t\t\tdeleteAction,\n\t\t],\n\t\t[]\n\t);\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView ]\n\t);\n\tconst id = useId();\n\tconst settings = usePatternSettings();\n\t// Wrap everything in a block editor provider.\n\t// This ensures 'styles' that are needed for the previews are synced\n\t// from the site editor store to the block editor store.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<Page\n\t\t\t\ttitle={ __( 'Patterns content' ) }\n\t\t\t\tclassName=\"edit-site-page-patterns-dataviews\"\n\t\t\t\thideTitleFromUI\n\t\t\t>\n\t\t\t\t<PatternsHeader\n\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\ttitleId={ `${ id }-title` }\n\t\t\t\t\tdescriptionId={ `${ id }-description` }\n\t\t\t\t/>\n\t\t\t\t<DataViews\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tdeferredRendering={ true }\n\t\t\t\t\tsupportedLayouts={ [ LAYOUT_GRID ] }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MAAM,EAC9BC,MAAM,EACNC,OAAO,EACPC,IAAI,QACE,uBAAuB;AAC9B,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACxC,SACCC,QAAQ,EACRC,OAAO,EACPC,WAAW,EACXC,KAAK,EACLC,SAAS,QACH,oBAAoB;AAC3B,SACCC,YAAY,EACZC,WAAW,IAAIC,sBAAsB,QAC/B,yBAAyB;AAChC,SACCC,SAAS,EACTC,gBAAgB,EAChBC,oBAAoB,QACd,sBAAsB;AAC7B,SACCC,IAAI,EACJC,MAAM,EACNC,MAAM,EACNC,YAAY,IAAIC,aAAa,EAC7BC,MAAM,EACNC,SAAS,QACH,kBAAkB;AACzB,SAASC,WAAW,QAAQ,oBAAoB;;AAEhD;AACA;AACA;AACA,OAAOC,IAAI,MAAM,SAAS;AAC1B,SACCC,WAAW,EACXC,aAAa,EACbC,uBAAuB,EACvBC,kBAAkB,EAClBC,wBAAwB,EACxBC,gBAAgB,EAChBC,WAAW,QACL,uBAAuB;AAC9B,SACCC,gBAAgB,EAChBC,YAAY,EACZC,WAAW,EACXC,YAAY,EACZC,sBAAsB,EACtBC,2BAA2B,QACrB,6BAA6B;AACpC,OAAOC,kBAAkB,MAAM,wBAAwB;AACvD,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,WAAW,MAAM,gBAAgB;AACxC,OAAOC,cAAc,MAAM,UAAU;AACrC,SAASC,OAAO,QAAQ,gBAAgB;AAExC,MAAM;EAAEC,+BAA+B;EAAEC;AAAe,CAAC,GAAGL,MAAM,CACjE3B,sBACD,CAAC;AAED,MAAMiC,iBAAiB,GAAG;EAAE5B,MAAM;EAAEC,MAAM;EAAEE;AAAc,CAAC;AAC3D,MAAM0B,WAAW,GAAG,EAAE;AACtB,MAAMC,wBAAwB,GAAG;EAChC,CAAEtB,WAAW,GAAI;IAChBuB,UAAU,EAAE,SAAS;IACrBC,YAAY,EAAE;EACf;AACD,CAAC;AACD,MAAMC,YAAY,GAAG;EACpBC,IAAI,EAAE1B,WAAW;EACjB2B,MAAM,EAAE,EAAE;EACVC,IAAI,EAAE,CAAC;EACPC,OAAO,EAAE,EAAE;EACXC,YAAY,EAAE,CAAE,aAAa,CAAE;EAC/BC,MAAM,EAAE;IACP,GAAGT,wBAAwB,CAAEtB,WAAW;EACzC,CAAC;EACDgC,OAAO,EAAE;AACV,CAAC;AAED,MAAMC,YAAY,GAAG,CACpB;EACCC,KAAK,EAAE/B,kBAAkB,CAACgC,IAAI;EAC9BC,KAAK,EAAEzD,EAAE,CAAE,QAAQ,EAAE,6CAA8C,CAAC;EACpE0D,WAAW,EAAE3D,EAAE,CAAE,iDAAkD;AACpE,CAAC,EACD;EACCwD,KAAK,EAAE/B,kBAAkB,CAACmC,QAAQ;EAClCF,KAAK,EAAEzD,EAAE,CACR,YAAY,EACZ,0DACD,CAAC;EACD0D,WAAW,EAAE3D,EAAE,CACd,iEACD;AACD,CAAC,CACD;AAED,SAAS6D,cAAcA,CAAE;EAAEC,IAAI;EAAEC,OAAO;EAAEC,eAAe;EAAEC;AAAS,CAAC,EAAG;EACvE,IAAKH,IAAI,CAACd,IAAI,KAAKzB,aAAa,CAAC2C,KAAK,EAAG;IACxC,OAAOD,QAAQ;EAChB;EACA,OACCE,aAAA;IACCC,SAAS,EAAC,qCAAqC;IAC/CpB,IAAI,EAAC,QAAQ;IACbe,OAAO,EAAGA,OAAS;IACnB,cAAaD,IAAI,CAACO,KAAO;IACzB,oBAAmBL;EAAiB,GAElCC,QACK,CAAC;AAEX;AAEA,SAASK,OAAOA,CAAE;EAAER,IAAI;EAAES,UAAU;EAAEC;AAAS,CAAC,EAAG;EAClD,MAAMC,aAAa,GAAGpE,KAAK,CAAC,CAAC;EAC7B,MAAMqE,aAAa,GAAGZ,IAAI,CAACd,IAAI,KAAKzB,aAAa,CAACoD,IAAI;EACtD,MAAMC,gBAAgB,GAAGd,IAAI,CAACd,IAAI,KAAKzB,aAAa,CAAC2C,KAAK;EAC1D,MAAMW,cAAc,GAAGf,IAAI,CAACd,IAAI,KAAKxB,uBAAuB;EAC5D,MAAMsD,OAAO,GAAG,CAAEhB,IAAI,CAACiB,MAAM,EAAEC,MAAM;EACrC;EACA,MAAMC,eAAe,GACpBP,aAAa,IAAMG,cAAc,IAAIf,IAAI,CAACoB,QAAU;EACrD,MAAMC,gBAAgB,GAAG,EAAE;EAC3B,IAAKF,eAAe,EAAG;IACtB;IACAE,gBAAgB,CAACC,IAAI,CACpBpF,EAAE,CAAE,uDAAwD,CAC7D,CAAC;EACF,CAAC,MAAM,IAAK8D,IAAI,CAACH,WAAW,EAAG;IAC9BwB,gBAAgB,CAACC,IAAI,CAAEtB,IAAI,CAACH,WAAY,CAAC;EAC1C;EAEA,IAAKiB,gBAAgB,EAAG;IACvBO,gBAAgB,CAACC,IAAI,CACpBpF,EAAE,CAAE,2CAA4C,CACjD,CAAC;EACF;EACA,MAAM,CAAEqF,eAAe,CAAE,GAAG5C,cAAc,CAAE,kBAAmB,CAAC;EAChE,MAAM;IAAEsB;EAAQ,CAAC,GAAGxB,OAAO,CAAE;IAC5B+C,QAAQ,EAAExB,IAAI,CAACd,IAAI;IACnBuC,MAAM,EAAEb,aAAa,GAAGZ,IAAI,CAAC0B,EAAE,GAAG1B,IAAI,CAAC2B,IAAI;IAC3ClB,UAAU;IACVmB,YAAY,EAAEb,cAAc,GAAGf,IAAI,CAACd,IAAI,GAAGzB,aAAa,CAAC2C;EAC1D,CAAE,CAAC;EAEH,OACCC,aAAA,CAAAwB,QAAA,QACCxB,aAAA;IACCC,SAAS,EAAI,2CAA2CI,QAAU,EAAG;IACrEoB,KAAK,EAAG;MAAEP;IAAgB;EAAG,GAE7BlB,aAAA,CAACN,cAAc;IACdC,IAAI,EAAGA,IAAM;IACbC,OAAO,EAAGA,OAAS;IACnBC,eAAe,EACdmB,gBAAgB,CAACH,MAAM,GACpBG,gBAAgB,CACfU,GAAG,CACH,CAAEC,CAAC,EAAEC,KAAK,KACR,GAAGtB,aAAe,IAAIsB,KAAO,EAChC,CAAC,CACAC,IAAI,CAAE,GAAI,CAAC,GACZC;EACH,GAECnB,OAAO,IAAID,cAAc,IAAI7E,EAAE,CAAE,qBAAsB,CAAC,EACxD8E,OAAO,IAAI,CAAED,cAAc,IAAI7E,EAAE,CAAE,eAAgB,CAAC,EACpD,CAAE8E,OAAO,IAAIX,aAAA,CAAC5D,YAAY;IAACwE,MAAM,EAAGjB,IAAI,CAACiB;EAAQ,CAAE,CACtC,CACZ,CAAC,EACJI,gBAAgB,CAACU,GAAG,CAAE,CAAEK,eAAe,EAAEH,KAAK,KAC/C5B,aAAA;IACCgC,GAAG,EAAGJ,KAAO;IACbK,MAAM;IACNZ,EAAE,EAAI,GAAGf,aAAe,IAAIsB,KAAO;EAAG,GAEpCG,eACE,CACJ,CACD,CAAC;AAEL;AAEA,SAASG,KAAKA,CAAE;EAAEvC,IAAI;EAAES;AAAW,CAAC,EAAG;EACtC,MAAMG,aAAa,GAAGZ,IAAI,CAACd,IAAI,KAAKzB,aAAa,CAACoD,IAAI;EACtD,MAAMC,gBAAgB,GAAGd,IAAI,CAACd,IAAI,KAAKzB,aAAa,CAAC2C,KAAK;EAC1D,MAAMW,cAAc,GAAGf,IAAI,CAACd,IAAI,KAAKxB,uBAAuB;EAC5D,IAAI8E,QAAQ;EACZ,MAAM;IAAEvC;EAAQ,CAAC,GAAGxB,OAAO,CAAE;IAC5B+C,QAAQ,EAAExB,IAAI,CAACd,IAAI;IACnBuC,MAAM,EAAEb,aAAa,GAAGZ,IAAI,CAAC0B,EAAE,GAAG1B,IAAI,CAAC2B,IAAI;IAC3ClB,UAAU;IACVmB,YAAY,EAAEb,cAAc,GAAGf,IAAI,CAACd,IAAI,GAAGzB,aAAa,CAAC2C;EAC1D,CAAE,CAAC;EACH,IAAK,CAAEQ,aAAa,IAAIhC,iBAAiB,CAAE6B,UAAU,CAAE,EAAG;IACzD+B,QAAQ,GAAG5D,iBAAiB,CAAE6B,UAAU,CAAE;EAC3C,CAAC,MAAM;IACN+B,QAAQ,GACPxC,IAAI,CAACyC,UAAU,KAAK9E,kBAAkB,CAACgC,IAAI,GAAGvC,MAAM,GAAG+E,SAAS;EAClE;EACA,OACC9B,aAAA,CAACxE,MAAM;IAAC6G,SAAS,EAAC,QAAQ;IAACC,OAAO,EAAC,YAAY;IAACC,OAAO,EAAG;EAAG,GAC1DJ,QAAQ,IAAI,CAAE1B,gBAAgB,IAC/BT,aAAA,CAACtE,OAAO;IACP8G,SAAS,EAAC,KAAK;IACfC,IAAI,EAAG5G,EAAE,CACR,2DACD;EAAG,GAEHmE,aAAA,CAACtD,IAAI;IACJuD,SAAS,EAAC,kCAAkC;IAC5CyC,IAAI,EAAGP;EAAU,CACjB,CACO,CACT,EACCxC,IAAI,CAACd,IAAI,KAAKzB,aAAa,CAAC2C,KAAK,IAClCC,aAAA,CAACtE,OAAO;IACP8G,SAAS,EAAC,KAAK;IACfC,IAAI,EAAG5G,EAAE,CAAE,gCAAiC;EAAG,GAE/CmE,aAAA,CAACtD,IAAI;IACJuD,SAAS,EAAC,uCAAuC;IACjDyC,IAAI,EAAG1F,SAAW;IAClB2F,IAAI,EAAG;EAAI,CACX,CACO,CACT,EACD3C,aAAA,CAACrE,IAAI;IACJiH,EAAE,EAAC,KAAK;IACRC,GAAG,EAAG,CAAG;IACTP,OAAO,EAAC,MAAM;IACdrC,SAAS,EAAC;EAAmC,GAE3CN,IAAI,CAACd,IAAI,KAAKzB,aAAa,CAAC2C,KAAK,GAClCJ,IAAI,CAACO,KAAK,GAEVF,aAAA,CAACvE,MAAM;IACNqH,OAAO,EAAC,MAAM;IACdlD,OAAO,EAAGA;IACV;IACA;IAAA;IACAmD,QAAQ,EAAC;EAAI,GAEXpD,IAAI,CAACO,KAAK,IAAIP,IAAI,CAAC2B,IACd,CAEJ,CACC,CAAC;AAEX;AAEA,eAAe,SAAS0B,iBAAiBA,CAAA,EAAG;EAC3C,MAAM;IAAEzB,YAAY;IAAEnB,UAAU,GAAG7C;EAAyB,CAAC,GAC5D3B,YAAY,CAAEqH,MAAM,CAACC,QAAQ,CAACC,IAAK,CAAC;EACrC,MAAMtE,IAAI,GAAG0C,YAAY,IAAInE,aAAa,CAAC2C,KAAK;EAChD,MAAM,CAAEqD,IAAI,EAAEC,OAAO,CAAE,GAAGtH,QAAQ,CAAE6C,YAAa,CAAC;EAClD,MAAM0E,4BAA4B,GACjCzE,IAAI,KAAKzB,aAAa,CAAC2C,KAAK,IAAIK,UAAU,KAAK,eAAe;EAC/D,MAAMmD,kBAAkB,GAAGtG,WAAW,CAAEmD,UAAW,CAAC;EACpD,MAAMoD,cAAc,GAAGJ,IAAI,CAACjE,OAAO,EAAEsE,IAAI,CACxC,CAAE;IAAEC;EAAM,CAAC,KAAMA,KAAK,KAAK,aAC5B,CAAC,EAAErE,KAAK;EACR,MAAM;IAAEsE,QAAQ;IAAEC;EAAY,CAAC,GAAG1F,WAAW,CAC5CW,IAAI,EACJyE,4BAA4B,GAAG,EAAE,GAAGlD,UAAU,EAC9C;IACCtB,MAAM,EAAEsE,IAAI,CAACtE,MAAM;IACnBsD,UAAU,EAAEoB;EACb,CACD,CAAC;EACD,MAAMK,MAAM,GAAG7H,OAAO,CAAE,MAAM;IAC7B,MAAM8H,OAAO,GAAG,CACf;MACCnH,MAAM,EAAEd,EAAE,CAAE,SAAU,CAAC;MACvBwF,EAAE,EAAE,SAAS;MACb0C,MAAM,EAAEA,CAAE;QAAEpE;MAAK,CAAC,KACjBK,aAAA,CAACG,OAAO;QACPR,IAAI,EAAGA,IAAM;QACbS,UAAU,EAAGA,UAAY;QACzBC,QAAQ,EAAG+C,IAAI,CAACvE;MAAM,CACtB,CACD;MACDmF,aAAa,EAAE,KAAK;MACpBC,YAAY,EAAE;IACf,CAAC,EACD;MACCtH,MAAM,EAAEd,EAAE,CAAE,OAAQ,CAAC;MACrBwF,EAAE,EAAE,OAAO;MACX6C,QAAQ,EAAEA,CAAE;QAAEvE;MAAK,CAAC,KAAMA,IAAI,CAACO,KAAK;MACpC6D,MAAM,EAAEA,CAAE;QAAEpE;MAAK,CAAC,KACjBK,aAAA,CAACkC,KAAK;QAACvC,IAAI,EAAGA,IAAM;QAACS,UAAU,EAAGA;MAAY,CAAE,CAChD;MACD6D,YAAY,EAAE;IACf,CAAC,CACD;IACD,IAAKpF,IAAI,KAAKzB,aAAa,CAAC2C,KAAK,EAAG;MACnC+D,OAAO,CAAC7C,IAAI,CAAE;QACbtE,MAAM,EAAEd,EAAE,CAAE,aAAc,CAAC;QAC3BwF,EAAE,EAAE,aAAa;QACjB0C,MAAM,EAAEA,CAAE;UAAEpE;QAAK,CAAC,KAAM;UACvB;UACA;UACA,OACCP,YAAY,CAACqE,IAAI,CAChB,CAAE;YAAEpE;UAAM,CAAC,KAAMA,KAAK,KAAKM,IAAI,CAACyC,UACjC,CAAC,EAAE7C,KAAK,IACRH,YAAY,CAACqE,IAAI,CAChB,CAAE;YAAEpE;UAAM,CAAC,KACVA,KAAK,KAAK/B,kBAAkB,CAACmC,QAC/B,CAAC,CAACF,KAAK;QAET,CAAC;QACDV,IAAI,EAAErB,gBAAgB;QACtB2G,QAAQ,EAAE/E,YAAY;QACtBgF,QAAQ,EAAE;UACTC,SAAS,EAAE,CAAE5G,WAAW,CAAE;UAC1B6G,SAAS,EAAE;QACZ,CAAC;QACDN,aAAa,EAAE;MAChB,CAAE,CAAC;IACJ;IACA,OAAOF,OAAO;EACf,CAAC,EAAE,CAAEV,IAAI,CAACvE,IAAI,EAAEuB,UAAU,EAAEvB,IAAI,CAAG,CAAC;EACpC;EACA1C,SAAS,CAAE,MAAM;IAChB,IAAKoH,kBAAkB,KAAKnD,UAAU,EAAG;MACxCiD,OAAO,CAAEzE,YAAa,CAAC;IACxB;EACD,CAAC,EAAE,CAAEwB,UAAU,EAAEmD,kBAAkB,CAAG,CAAC;EACvC,MAAM;IAAEgB,IAAI;IAAEC;EAAe,CAAC,GAAGxI,OAAO,CAAE,MAAM;IAC/C,IAAK,CAAE2H,QAAQ,EAAG;MACjB,OAAO;QACNY,IAAI,EAAE/F,WAAW;QACjBgG,cAAc,EAAE;UAAEC,UAAU,EAAE,CAAC;UAAEC,UAAU,EAAE;QAAE;MAChD,CAAC;IACF;IACA,IAAIC,YAAY,GAAG,CAAE,GAAGhB,QAAQ,CAAE;IAClC;IACA,IAAKP,IAAI,CAACwB,IAAI,EAAG;MAChBD,YAAY,GAAGnI,gBAAgB,CAAE;QAChC+H,IAAI,EAAEI,YAAY;QAClBvB,IAAI;QACJS,MAAM;QACNgB,UAAU,EAAE,CAAE,OAAO,EAAE,QAAQ;MAChC,CAAE,CAAC;IACJ;IACA;IACA,OAAOpI,oBAAoB,CAAE;MAC5B8H,IAAI,EAAEI,YAAY;MAClBvB;IACD,CAAE,CAAC;EACJ,CAAC,EAAE,CAAEO,QAAQ,EAAEP,IAAI,EAAES,MAAM,CAAG,CAAC;EAE/B,MAAMiB,OAAO,GAAG9I,OAAO,CACtB,MAAM,CACL2B,YAAY,EACZG,sBAAsB,EACtBC,2BAA2B,EAC3BL,gBAAgB,EAChBE,WAAW,EACXC,YAAY,CACZ,EACD,EACD,CAAC;EACD,MAAMkH,YAAY,GAAG9I,WAAW,CAC7B+I,OAAO,IAAM;IACd,IAAKA,OAAO,CAACnG,IAAI,KAAKuE,IAAI,CAACvE,IAAI,EAAG;MACjCmG,OAAO,GAAG;QACT,GAAGA,OAAO;QACV9F,MAAM,EAAE;UACP,GAAGT,wBAAwB,CAAEuG,OAAO,CAACnG,IAAI;QAC1C;MACD,CAAC;IACF;IACAwE,OAAO,CAAE2B,OAAQ,CAAC;EACnB,CAAC,EACD,CAAE5B,IAAI,CAACvE,IAAI,EAAEwE,OAAO,CACrB,CAAC;EACD,MAAMhC,EAAE,GAAGnF,KAAK,CAAC,CAAC;EAClB,MAAM+I,QAAQ,GAAGjH,kBAAkB,CAAC,CAAC;EACrC;EACA;EACA;EACA,OACCgC,aAAA,CAAC3B,+BAA+B;IAAC4G,QAAQ,EAAGA;EAAU,GACrDjF,aAAA,CAAC9C,IAAI;IACJgD,KAAK,EAAGrE,EAAE,CAAE,kBAAmB,CAAG;IAClCoE,SAAS,EAAC,mCAAmC;IAC7CiF,eAAe;EAAA,GAEflF,aAAA,CAAC7B,cAAc;IACdiC,UAAU,EAAGA,UAAY;IACzBvB,IAAI,EAAGA,IAAM;IACbsG,OAAO,EAAI,GAAG9D,EAAI,QAAS;IAC3Bf,aAAa,EAAI,GAAGe,EAAI;EAAe,CACvC,CAAC,EACFrB,aAAA,CAACzD,SAAS;IACTiI,cAAc,EAAGA,cAAgB;IACjCX,MAAM,EAAGA,MAAQ;IACjBiB,OAAO,EAAGA,OAAS;IACnBP,IAAI,EAAGA,IAAI,IAAI/F,WAAa;IAC5B4G,SAAS,EAAKzF,IAAI,IAAMA,IAAI,CAAC2B,IAAM;IACnC+D,SAAS,EAAGzB,WAAa;IACzBR,IAAI,EAAGA,IAAM;IACb2B,YAAY,EAAGA,YAAc;IAC7BO,iBAAiB,EAAG,IAAM;IAC1BC,gBAAgB,EAAG,CAAEpI,WAAW;EAAI,CACpC,CACI,CAC0B,CAAC;AAEpC"}
@@ -19,6 +19,7 @@ export default function SaveButton({
19
19
  showTooltip = true,
20
20
  defaultLabel,
21
21
  icon,
22
+ size,
22
23
  __next40pxDefaultSize = false
23
24
  }) {
24
25
  const {
@@ -98,7 +99,7 @@ export default function SaveButton({
98
99
  showTooltip: showTooltip,
99
100
  icon: icon,
100
101
  __next40pxDefaultSize: __next40pxDefaultSize,
101
- size: "compact"
102
+ size: size
102
103
  }, label);
103
104
  }
104
105
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","useDispatch","Button","__","sprintf","store","coreStore","displayShortcut","editSiteStore","currentlyPreviewingTheme","isPreviewingTheme","SaveButton","className","variant","showTooltip","defaultLabel","icon","__next40pxDefaultSize","isDirty","isSaving","isSaveViewOpen","previewingThemeName","select","__experimentalGetDirtyEntityRecords","isSavingEntityRecord","isResolving","dirtyEntityRecords","isSaveViewOpened","isActivatingTheme","currentlyPreviewingThemeId","length","some","record","kind","name","key","getTheme","rendered","undefined","setIsSaveViewOpened","activateSaveEnabled","disabled","getLabel","label","createElement","isBusy","onClick","shortcut","primary","size"],"sources":["@wordpress/edit-site/src/components/save-button/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Button } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { displayShortcut } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport {\n\tcurrentlyPreviewingTheme,\n\tisPreviewingTheme,\n} from '../../utils/is-previewing-theme';\n\nexport default function SaveButton( {\n\tclassName = 'edit-site-save-button__button',\n\tvariant = 'primary',\n\tshowTooltip = true,\n\tdefaultLabel,\n\ticon,\n\t__next40pxDefaultSize = false,\n} ) {\n\tconst { isDirty, isSaving, isSaveViewOpen, previewingThemeName } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst {\n\t\t\t\t__experimentalGetDirtyEntityRecords,\n\t\t\t\tisSavingEntityRecord,\n\t\t\t\tisResolving,\n\t\t\t} = select( coreStore );\n\t\t\tconst dirtyEntityRecords = __experimentalGetDirtyEntityRecords();\n\t\t\tconst { isSaveViewOpened } = select( editSiteStore );\n\t\t\tconst isActivatingTheme = isResolving( 'activateTheme' );\n\t\t\tconst currentlyPreviewingThemeId = currentlyPreviewingTheme();\n\n\t\t\treturn {\n\t\t\t\tisDirty: dirtyEntityRecords.length > 0,\n\t\t\t\tisSaving:\n\t\t\t\t\tdirtyEntityRecords.some( ( record ) =>\n\t\t\t\t\t\tisSavingEntityRecord(\n\t\t\t\t\t\t\trecord.kind,\n\t\t\t\t\t\t\trecord.name,\n\t\t\t\t\t\t\trecord.key\n\t\t\t\t\t\t)\n\t\t\t\t\t) || isActivatingTheme,\n\t\t\t\tisSaveViewOpen: isSaveViewOpened(),\n\t\t\t\t// Do not call `getTheme` with null, it will cause a request to\n\t\t\t\t// the server.\n\t\t\t\tpreviewingThemeName: currentlyPreviewingThemeId\n\t\t\t\t\t? select( coreStore ).getTheme( currentlyPreviewingThemeId )\n\t\t\t\t\t\t\t?.name?.rendered\n\t\t\t\t\t: undefined,\n\t\t\t};\n\t\t}, [] );\n\tconst { setIsSaveViewOpened } = useDispatch( editSiteStore );\n\n\tconst activateSaveEnabled = isPreviewingTheme() || isDirty;\n\tconst disabled = isSaving || ! activateSaveEnabled;\n\n\tconst getLabel = () => {\n\t\tif ( isPreviewingTheme() ) {\n\t\t\tif ( isSaving ) {\n\t\t\t\treturn sprintf(\n\t\t\t\t\t/* translators: %s: The name of theme to be activated. */\n\t\t\t\t\t__( 'Activating %s' ),\n\t\t\t\t\tpreviewingThemeName\n\t\t\t\t);\n\t\t\t} else if ( disabled ) {\n\t\t\t\treturn __( 'Saved' );\n\t\t\t} else if ( isDirty ) {\n\t\t\t\treturn sprintf(\n\t\t\t\t\t/* translators: %s: The name of theme to be activated. */\n\t\t\t\t\t__( 'Activate %s & Save' ),\n\t\t\t\t\tpreviewingThemeName\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn sprintf(\n\t\t\t\t/* translators: %s: The name of theme to be activated. */\n\t\t\t\t__( 'Activate %s' ),\n\t\t\t\tpreviewingThemeName\n\t\t\t);\n\t\t}\n\n\t\tif ( isSaving ) {\n\t\t\treturn __( 'Saving' );\n\t\t} else if ( disabled ) {\n\t\t\treturn __( 'Saved' );\n\t\t} else if ( defaultLabel ) {\n\t\t\treturn defaultLabel;\n\t\t}\n\t\treturn __( 'Save' );\n\t};\n\tconst label = getLabel();\n\n\treturn (\n\t\t<Button\n\t\t\tvariant={ variant }\n\t\t\tclassName={ className }\n\t\t\taria-disabled={ disabled }\n\t\t\taria-expanded={ isSaveViewOpen }\n\t\t\tisBusy={ isSaving }\n\t\t\tonClick={ disabled ? undefined : () => setIsSaveViewOpened( true ) }\n\t\t\tlabel={ label }\n\t\t\t/*\n\t\t\t * We want the tooltip to show the keyboard shortcut only when the\n\t\t\t * button does something, i.e. when it's not disabled.\n\t\t\t */\n\t\t\tshortcut={ disabled ? undefined : displayShortcut.primary( 's' ) }\n\t\t\t/*\n\t\t\t * Displaying the keyboard shortcut conditionally makes the tooltip\n\t\t\t * itself show conditionally. This would trigger a full-rerendering\n\t\t\t * of the button that we want to avoid. By setting `showTooltip`,\n\t\t\t * the tooltip is always rendered even when there's no keyboard shortcut.\n\t\t\t */\n\t\t\tshowTooltip={ showTooltip }\n\t\t\ticon={ icon }\n\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\tsize=\"compact\"\n\t\t>\n\t\t\t{ label }\n\t\t</Button>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["useSelect","useDispatch","Button","__","sprintf","store","coreStore","displayShortcut","editSiteStore","currentlyPreviewingTheme","isPreviewingTheme","SaveButton","className","variant","showTooltip","defaultLabel","icon","size","__next40pxDefaultSize","isDirty","isSaving","isSaveViewOpen","previewingThemeName","select","__experimentalGetDirtyEntityRecords","isSavingEntityRecord","isResolving","dirtyEntityRecords","isSaveViewOpened","isActivatingTheme","currentlyPreviewingThemeId","length","some","record","kind","name","key","getTheme","rendered","undefined","setIsSaveViewOpened","activateSaveEnabled","disabled","getLabel","label","createElement","isBusy","onClick","shortcut","primary"],"sources":["@wordpress/edit-site/src/components/save-button/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Button } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { displayShortcut } from '@wordpress/keycodes';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport {\n\tcurrentlyPreviewingTheme,\n\tisPreviewingTheme,\n} from '../../utils/is-previewing-theme';\n\nexport default function SaveButton( {\n\tclassName = 'edit-site-save-button__button',\n\tvariant = 'primary',\n\tshowTooltip = true,\n\tdefaultLabel,\n\ticon,\n\tsize,\n\t__next40pxDefaultSize = false,\n} ) {\n\tconst { isDirty, isSaving, isSaveViewOpen, previewingThemeName } =\n\t\tuseSelect( ( select ) => {\n\t\t\tconst {\n\t\t\t\t__experimentalGetDirtyEntityRecords,\n\t\t\t\tisSavingEntityRecord,\n\t\t\t\tisResolving,\n\t\t\t} = select( coreStore );\n\t\t\tconst dirtyEntityRecords = __experimentalGetDirtyEntityRecords();\n\t\t\tconst { isSaveViewOpened } = select( editSiteStore );\n\t\t\tconst isActivatingTheme = isResolving( 'activateTheme' );\n\t\t\tconst currentlyPreviewingThemeId = currentlyPreviewingTheme();\n\n\t\t\treturn {\n\t\t\t\tisDirty: dirtyEntityRecords.length > 0,\n\t\t\t\tisSaving:\n\t\t\t\t\tdirtyEntityRecords.some( ( record ) =>\n\t\t\t\t\t\tisSavingEntityRecord(\n\t\t\t\t\t\t\trecord.kind,\n\t\t\t\t\t\t\trecord.name,\n\t\t\t\t\t\t\trecord.key\n\t\t\t\t\t\t)\n\t\t\t\t\t) || isActivatingTheme,\n\t\t\t\tisSaveViewOpen: isSaveViewOpened(),\n\t\t\t\t// Do not call `getTheme` with null, it will cause a request to\n\t\t\t\t// the server.\n\t\t\t\tpreviewingThemeName: currentlyPreviewingThemeId\n\t\t\t\t\t? select( coreStore ).getTheme( currentlyPreviewingThemeId )\n\t\t\t\t\t\t\t?.name?.rendered\n\t\t\t\t\t: undefined,\n\t\t\t};\n\t\t}, [] );\n\tconst { setIsSaveViewOpened } = useDispatch( editSiteStore );\n\n\tconst activateSaveEnabled = isPreviewingTheme() || isDirty;\n\tconst disabled = isSaving || ! activateSaveEnabled;\n\n\tconst getLabel = () => {\n\t\tif ( isPreviewingTheme() ) {\n\t\t\tif ( isSaving ) {\n\t\t\t\treturn sprintf(\n\t\t\t\t\t/* translators: %s: The name of theme to be activated. */\n\t\t\t\t\t__( 'Activating %s' ),\n\t\t\t\t\tpreviewingThemeName\n\t\t\t\t);\n\t\t\t} else if ( disabled ) {\n\t\t\t\treturn __( 'Saved' );\n\t\t\t} else if ( isDirty ) {\n\t\t\t\treturn sprintf(\n\t\t\t\t\t/* translators: %s: The name of theme to be activated. */\n\t\t\t\t\t__( 'Activate %s & Save' ),\n\t\t\t\t\tpreviewingThemeName\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn sprintf(\n\t\t\t\t/* translators: %s: The name of theme to be activated. */\n\t\t\t\t__( 'Activate %s' ),\n\t\t\t\tpreviewingThemeName\n\t\t\t);\n\t\t}\n\n\t\tif ( isSaving ) {\n\t\t\treturn __( 'Saving' );\n\t\t} else if ( disabled ) {\n\t\t\treturn __( 'Saved' );\n\t\t} else if ( defaultLabel ) {\n\t\t\treturn defaultLabel;\n\t\t}\n\t\treturn __( 'Save' );\n\t};\n\tconst label = getLabel();\n\n\treturn (\n\t\t<Button\n\t\t\tvariant={ variant }\n\t\t\tclassName={ className }\n\t\t\taria-disabled={ disabled }\n\t\t\taria-expanded={ isSaveViewOpen }\n\t\t\tisBusy={ isSaving }\n\t\t\tonClick={ disabled ? undefined : () => setIsSaveViewOpened( true ) }\n\t\t\tlabel={ label }\n\t\t\t/*\n\t\t\t * We want the tooltip to show the keyboard shortcut only when the\n\t\t\t * button does something, i.e. when it's not disabled.\n\t\t\t */\n\t\t\tshortcut={ disabled ? undefined : displayShortcut.primary( 's' ) }\n\t\t\t/*\n\t\t\t * Displaying the keyboard shortcut conditionally makes the tooltip\n\t\t\t * itself show conditionally. This would trigger a full-rerendering\n\t\t\t * of the button that we want to avoid. By setting `showTooltip`,\n\t\t\t * the tooltip is always rendered even when there's no keyboard shortcut.\n\t\t\t */\n\t\t\tshowTooltip={ showTooltip }\n\t\t\ticon={ icon }\n\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\tsize={ size }\n\t\t>\n\t\t\t{ label }\n\t\t</Button>\n\t);\n}\n"],"mappings":"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"}
@@ -10,8 +10,8 @@ import classNames from 'classnames';
10
10
  import { memo, useRef } from '@wordpress/element';
11
11
  import { __experimentalNavigatorProvider as NavigatorProvider, __experimentalNavigatorScreen as NavigatorScreen } from '@wordpress/components';
12
12
  import { privateApis as routerPrivateApis } from '@wordpress/router';
13
- import { __ } from '@wordpress/i18n';
14
13
  import { useViewportMatch } from '@wordpress/compose';
14
+ import { __ } from '@wordpress/i18n';
15
15
 
16
16
  /**
17
17
  * Internal dependencies
@@ -61,7 +61,8 @@ function SidebarScreens() {
61
61
  path: "/pages"
62
62
  }, createElement(SidebarNavigationScreen, {
63
63
  title: __('Pages'),
64
- content: createElement(DataViewsSidebarContent, null)
64
+ content: createElement(DataViewsSidebarContent, null),
65
+ backPath: "/page"
65
66
  })), createElement(SidebarScreenWrapper, {
66
67
  path: "/page/:postId"
67
68
  }, createElement(SidebarNavigationScreenPage, null)), createElement(SidebarScreenWrapper, {
@@ -1 +1 @@
1
- {"version":3,"names":["classNames","memo","useRef","__experimentalNavigatorProvider","NavigatorProvider","__experimentalNavigatorScreen","NavigatorScreen","privateApis","routerPrivateApis","__","useViewportMatch","SidebarNavigationScreenMain","SidebarNavigationScreenTemplates","SidebarNavigationScreenTemplate","SidebarNavigationScreenPatterns","SidebarNavigationScreenPattern","useSyncPathWithURL","getPathFromURL","SidebarNavigationScreenNavigationMenus","SidebarNavigationScreenNavigationMenu","SidebarNavigationScreenGlobalStyles","SidebarNavigationScreenTemplatesBrowse","SaveHub","unlock","SidebarNavigationScreenPages","SidebarNavigationScreen","DataViewsSidebarContent","SidebarNavigationScreenPage","useLocation","SidebarScreenWrapper","className","props","createElement","SidebarScreens","isMobileViewport","Fragment","path","title","content","Sidebar","params","urlParams","initialPath","current"],"sources":["@wordpress/edit-site/src/components/sidebar/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classNames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { memo, useRef } from '@wordpress/element';\nimport {\n\t__experimentalNavigatorProvider as NavigatorProvider,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n} from '@wordpress/components';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { __ } from '@wordpress/i18n';\nimport { useViewportMatch } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreenMain from '../sidebar-navigation-screen-main';\nimport SidebarNavigationScreenTemplates from '../sidebar-navigation-screen-templates';\nimport SidebarNavigationScreenTemplate from '../sidebar-navigation-screen-template';\nimport SidebarNavigationScreenPatterns from '../sidebar-navigation-screen-patterns';\nimport SidebarNavigationScreenPattern from '../sidebar-navigation-screen-pattern';\nimport useSyncPathWithURL, {\n\tgetPathFromURL,\n} from '../sync-state-with-url/use-sync-path-with-url';\nimport SidebarNavigationScreenNavigationMenus from '../sidebar-navigation-screen-navigation-menus';\nimport SidebarNavigationScreenNavigationMenu from '../sidebar-navigation-screen-navigation-menu';\nimport SidebarNavigationScreenGlobalStyles from '../sidebar-navigation-screen-global-styles';\nimport SidebarNavigationScreenTemplatesBrowse from '../sidebar-navigation-screen-templates-browse';\nimport SaveHub from '../save-hub';\nimport { unlock } from '../../lock-unlock';\nimport SidebarNavigationScreenPages from '../sidebar-navigation-screen-pages';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport DataViewsSidebarContent from '../sidebar-dataviews';\nimport SidebarNavigationScreenPage from '../sidebar-navigation-screen-page';\n\nconst { useLocation } = unlock( routerPrivateApis );\n\nfunction SidebarScreenWrapper( { className, ...props } ) {\n\treturn (\n\t\t<NavigatorScreen\n\t\t\tclassName={ classNames(\n\t\t\t\t'edit-site-sidebar__screen-wrapper',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nfunction SidebarScreens() {\n\tuseSyncPathWithURL();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarScreenWrapper path=\"/\">\n\t\t\t\t<SidebarNavigationScreenMain />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/navigation\">\n\t\t\t\t<SidebarNavigationScreenNavigationMenus />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/navigation/:postType/:postId\">\n\t\t\t\t<SidebarNavigationScreenNavigationMenu />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/wp_global_styles\">\n\t\t\t\t<SidebarNavigationScreenGlobalStyles />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/page\">\n\t\t\t\t<SidebarNavigationScreenPages />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/pages\">\n\t\t\t\t<SidebarNavigationScreen\n\t\t\t\t\ttitle={ __( 'Pages' ) }\n\t\t\t\t\tcontent={ <DataViewsSidebarContent /> }\n\t\t\t\t/>\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/page/:postId\">\n\t\t\t\t<SidebarNavigationScreenPage />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/:postType(wp_template)\">\n\t\t\t\t<SidebarNavigationScreenTemplates />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t{ ! isMobileViewport && (\n\t\t\t\t<SidebarScreenWrapper path=\"/patterns\">\n\t\t\t\t\t<SidebarNavigationScreenPatterns />\n\t\t\t\t</SidebarScreenWrapper>\n\t\t\t) }\n\t\t\t<SidebarScreenWrapper path=\"/:postType(wp_template|wp_template_part)/all\">\n\t\t\t\t<SidebarNavigationScreenTemplatesBrowse />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/:postType(wp_template_part|wp_block)/:postId\">\n\t\t\t\t<SidebarNavigationScreenPattern />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/:postType(wp_template)/:postId\">\n\t\t\t\t<SidebarNavigationScreenTemplate />\n\t\t\t</SidebarScreenWrapper>\n\t\t</>\n\t);\n}\n\nfunction Sidebar() {\n\tconst { params: urlParams } = useLocation();\n\tconst initialPath = useRef( getPathFromURL( urlParams ) );\n\n\treturn (\n\t\t<>\n\t\t\t<NavigatorProvider\n\t\t\t\tclassName=\"edit-site-sidebar__content\"\n\t\t\t\tinitialPath={ initialPath.current }\n\t\t\t>\n\t\t\t\t<SidebarScreens />\n\t\t\t</NavigatorProvider>\n\t\t\t<SaveHub />\n\t\t</>\n\t);\n}\n\nexport default memo( Sidebar );\n"],"mappings":"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"}
1
+ {"version":3,"names":["classNames","memo","useRef","__experimentalNavigatorProvider","NavigatorProvider","__experimentalNavigatorScreen","NavigatorScreen","privateApis","routerPrivateApis","useViewportMatch","__","SidebarNavigationScreenMain","SidebarNavigationScreenTemplates","SidebarNavigationScreenTemplate","SidebarNavigationScreenPatterns","SidebarNavigationScreenPattern","useSyncPathWithURL","getPathFromURL","SidebarNavigationScreenNavigationMenus","SidebarNavigationScreenNavigationMenu","SidebarNavigationScreenGlobalStyles","SidebarNavigationScreenTemplatesBrowse","SaveHub","unlock","SidebarNavigationScreenPages","SidebarNavigationScreen","DataViewsSidebarContent","SidebarNavigationScreenPage","useLocation","SidebarScreenWrapper","className","props","createElement","SidebarScreens","isMobileViewport","Fragment","path","title","content","backPath","Sidebar","params","urlParams","initialPath","current"],"sources":["@wordpress/edit-site/src/components/sidebar/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classNames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { memo, useRef } from '@wordpress/element';\nimport {\n\t__experimentalNavigatorProvider as NavigatorProvider,\n\t__experimentalNavigatorScreen as NavigatorScreen,\n} from '@wordpress/components';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport SidebarNavigationScreenMain from '../sidebar-navigation-screen-main';\nimport SidebarNavigationScreenTemplates from '../sidebar-navigation-screen-templates';\nimport SidebarNavigationScreenTemplate from '../sidebar-navigation-screen-template';\nimport SidebarNavigationScreenPatterns from '../sidebar-navigation-screen-patterns';\nimport SidebarNavigationScreenPattern from '../sidebar-navigation-screen-pattern';\nimport useSyncPathWithURL, {\n\tgetPathFromURL,\n} from '../sync-state-with-url/use-sync-path-with-url';\nimport SidebarNavigationScreenNavigationMenus from '../sidebar-navigation-screen-navigation-menus';\nimport SidebarNavigationScreenNavigationMenu from '../sidebar-navigation-screen-navigation-menu';\nimport SidebarNavigationScreenGlobalStyles from '../sidebar-navigation-screen-global-styles';\nimport SidebarNavigationScreenTemplatesBrowse from '../sidebar-navigation-screen-templates-browse';\nimport SaveHub from '../save-hub';\nimport { unlock } from '../../lock-unlock';\nimport SidebarNavigationScreenPages from '../sidebar-navigation-screen-pages';\nimport SidebarNavigationScreen from '../sidebar-navigation-screen';\nimport DataViewsSidebarContent from '../sidebar-dataviews';\nimport SidebarNavigationScreenPage from '../sidebar-navigation-screen-page';\n\nconst { useLocation } = unlock( routerPrivateApis );\n\nfunction SidebarScreenWrapper( { className, ...props } ) {\n\treturn (\n\t\t<NavigatorScreen\n\t\t\tclassName={ classNames(\n\t\t\t\t'edit-site-sidebar__screen-wrapper',\n\t\t\t\tclassName\n\t\t\t) }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\nfunction SidebarScreens() {\n\tuseSyncPathWithURL();\n\tconst isMobileViewport = useViewportMatch( 'medium', '<' );\n\n\treturn (\n\t\t<>\n\t\t\t<SidebarScreenWrapper path=\"/\">\n\t\t\t\t<SidebarNavigationScreenMain />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/navigation\">\n\t\t\t\t<SidebarNavigationScreenNavigationMenus />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/navigation/:postType/:postId\">\n\t\t\t\t<SidebarNavigationScreenNavigationMenu />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/wp_global_styles\">\n\t\t\t\t<SidebarNavigationScreenGlobalStyles />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/page\">\n\t\t\t\t<SidebarNavigationScreenPages />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/pages\">\n\t\t\t\t<SidebarNavigationScreen\n\t\t\t\t\ttitle={ __( 'Pages' ) }\n\t\t\t\t\tcontent={ <DataViewsSidebarContent /> }\n\t\t\t\t\tbackPath=\"/page\"\n\t\t\t\t/>\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/page/:postId\">\n\t\t\t\t<SidebarNavigationScreenPage />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/:postType(wp_template)\">\n\t\t\t\t<SidebarNavigationScreenTemplates />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t{ ! isMobileViewport && (\n\t\t\t\t<SidebarScreenWrapper path=\"/patterns\">\n\t\t\t\t\t<SidebarNavigationScreenPatterns />\n\t\t\t\t</SidebarScreenWrapper>\n\t\t\t) }\n\t\t\t<SidebarScreenWrapper path=\"/:postType(wp_template|wp_template_part)/all\">\n\t\t\t\t<SidebarNavigationScreenTemplatesBrowse />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/:postType(wp_template_part|wp_block)/:postId\">\n\t\t\t\t<SidebarNavigationScreenPattern />\n\t\t\t</SidebarScreenWrapper>\n\t\t\t<SidebarScreenWrapper path=\"/:postType(wp_template)/:postId\">\n\t\t\t\t<SidebarNavigationScreenTemplate />\n\t\t\t</SidebarScreenWrapper>\n\t\t</>\n\t);\n}\n\nfunction Sidebar() {\n\tconst { params: urlParams } = useLocation();\n\tconst initialPath = useRef( getPathFromURL( urlParams ) );\n\n\treturn (\n\t\t<>\n\t\t\t<NavigatorProvider\n\t\t\t\tclassName=\"edit-site-sidebar__content\"\n\t\t\t\tinitialPath={ initialPath.current }\n\t\t\t>\n\t\t\t\t<SidebarScreens />\n\t\t\t</NavigatorProvider>\n\t\t\t<SaveHub />\n\t\t</>\n\t);\n}\n\nexport default memo( Sidebar );\n"],"mappings":"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"}
@@ -37,7 +37,7 @@ export default function GlobalStylesSidebar() {
37
37
  getCanvasMode
38
38
  } = unlock(select(editSiteStore));
39
39
  const canvasContainerView = getEditorCanvasContainerView();
40
- const _isVisualEditorMode = 'visual' === select(editSiteStore).getEditorMode();
40
+ const _isVisualEditorMode = 'visual' === select(editorStore).getEditorMode();
41
41
  const _isEditCanvasMode = 'edit' === getCanvasMode();
42
42
  const _showListViewByDefault = select(preferencesStore).get('core', 'showListViewByDefault');
43
43
  const {
@@ -108,14 +108,14 @@ export default function GlobalStylesSidebar() {
108
108
  closeLabel: __('Close Styles'),
109
109
  panelClassName: "edit-site-global-styles-sidebar__panel",
110
110
  header: createElement(Flex, {
111
- className: "edit-site-global-styles-sidebar__header",
112
- role: "menubar",
113
- "aria-label": __('Styles actions')
111
+ className: "edit-site-global-styles-sidebar__header"
114
112
  }, createElement(FlexBlock, {
115
113
  style: {
116
114
  minWidth: 'min-content'
117
115
  }
118
- }, createElement("strong", null, __('Styles'))), createElement(FlexItem, null, createElement(Button, {
116
+ }, createElement("h2", {
117
+ className: "edit-site-global-styles-sidebar__header-title"
118
+ }, __('Styles'))), createElement(FlexItem, null, createElement(Button, {
119
119
  icon: seen,
120
120
  label: __('Style Book'),
121
121
  isPressed: isStyleBookOpened || isRevisionsStyleBookOpened,
@@ -1 +1 @@
1
- {"version":3,"names":["FlexItem","FlexBlock","Flex","Button","__experimentalUseNavigator","useNavigator","__","styles","seen","backup","useSelect","useDispatch","useEffect","store","interfaceStore","preferencesStore","editorStore","DefaultSidebar","GlobalStylesUI","editSiteStore","GlobalStylesMenuSlot","unlock","coreStore","GlobalStylesSidebar","shouldClearCanvasContainerView","isStyleBookOpened","showListViewByDefault","hasRevisions","isRevisionsOpened","isRevisionsStyleBookOpened","select","getActiveComplementaryArea","getEditorCanvasContainerView","getCanvasMode","canvasContainerView","_isVisualEditorMode","getEditorMode","_isEditCanvasMode","_showListViewByDefault","get","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","undefined","_links","count","setEditorCanvasContainerView","setIsListViewOpened","goTo","toggleRevisions","toggleStyleBook","createElement","className","identifier","title","icon","closeLabel","panelClassName","header","role","style","minWidth","label","isPressed","disabled","onClick"],"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/global-styles-sidebar.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tFlexItem,\n\tFlexBlock,\n\tFlex,\n\tButton,\n\t__experimentalUseNavigator as useNavigator,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { styles, seen, backup } from '@wordpress/icons';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useEffect } from '@wordpress/element';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport DefaultSidebar from './default-sidebar';\nimport { GlobalStylesUI } from '../global-styles';\nimport { store as editSiteStore } from '../../store';\nimport { GlobalStylesMenuSlot } from '../global-styles/ui';\nimport { unlock } from '../../lock-unlock';\nimport { store as coreStore } from '@wordpress/core-data';\n\nexport default function GlobalStylesSidebar() {\n\tconst {\n\t\tshouldClearCanvasContainerView,\n\t\tisStyleBookOpened,\n\t\tshowListViewByDefault,\n\t\thasRevisions,\n\t\tisRevisionsOpened,\n\t\tisRevisionsStyleBookOpened,\n\t} = useSelect( ( select ) => {\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\t\tconst { getEditorCanvasContainerView, getCanvasMode } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\t\tconst canvasContainerView = getEditorCanvasContainerView();\n\t\tconst _isVisualEditorMode =\n\t\t\t'visual' === select( editSiteStore ).getEditorMode();\n\t\tconst _isEditCanvasMode = 'edit' === getCanvasMode();\n\t\tconst _showListViewByDefault = select( preferencesStore ).get(\n\t\t\t'core',\n\t\t\t'showListViewByDefault'\n\t\t);\n\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\tselect( coreStore );\n\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStyles = globalStylesId\n\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\tisStyleBookOpened: 'style-book' === canvasContainerView,\n\t\t\tshouldClearCanvasContainerView:\n\t\t\t\t'edit-site/global-styles' !==\n\t\t\t\t\tgetActiveComplementaryArea( 'core/edit-site' ) ||\n\t\t\t\t! _isVisualEditorMode ||\n\t\t\t\t! _isEditCanvasMode,\n\t\t\tshowListViewByDefault: _showListViewByDefault,\n\t\t\thasRevisions:\n\t\t\t\t!! globalStyles?._links?.[ 'version-history' ]?.[ 0 ]?.count,\n\t\t\tisRevisionsStyleBookOpened:\n\t\t\t\t'global-styles-revisions:style-book' === canvasContainerView,\n\t\t\tisRevisionsOpened:\n\t\t\t\t'global-styles-revisions' === canvasContainerView,\n\t\t};\n\t}, [] );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\n\tuseEffect( () => {\n\t\tif ( shouldClearCanvasContainerView ) {\n\t\t\tsetEditorCanvasContainerView( undefined );\n\t\t}\n\t}, [ shouldClearCanvasContainerView ] );\n\n\tconst { setIsListViewOpened } = useDispatch( editorStore );\n\tconst { goTo } = useNavigator();\n\n\tconst toggleRevisions = () => {\n\t\tsetIsListViewOpened( false );\n\t\tif ( isRevisionsStyleBookOpened ) {\n\t\t\tgoTo( '/' );\n\t\t\tsetEditorCanvasContainerView( 'style-book' );\n\t\t\treturn;\n\t\t}\n\t\tif ( isRevisionsOpened ) {\n\t\t\tgoTo( '/' );\n\t\t\tsetEditorCanvasContainerView( undefined );\n\t\t\treturn;\n\t\t}\n\t\tgoTo( '/revisions' );\n\n\t\tif ( isStyleBookOpened ) {\n\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t'global-styles-revisions:style-book'\n\t\t\t);\n\t\t} else {\n\t\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t\t}\n\t};\n\tconst toggleStyleBook = () => {\n\t\tif ( isRevisionsOpened ) {\n\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t'global-styles-revisions:style-book'\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\t\tif ( isRevisionsStyleBookOpened ) {\n\t\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t\t\treturn;\n\t\t}\n\t\tsetIsListViewOpened( isStyleBookOpened && showListViewByDefault );\n\t\tsetEditorCanvasContainerView(\n\t\t\tisStyleBookOpened ? undefined : 'style-book'\n\t\t);\n\t};\n\n\treturn (\n\t\t<DefaultSidebar\n\t\t\tclassName=\"edit-site-global-styles-sidebar\"\n\t\t\tidentifier=\"edit-site/global-styles\"\n\t\t\ttitle={ __( 'Styles' ) }\n\t\t\ticon={ styles }\n\t\t\tcloseLabel={ __( 'Close Styles' ) }\n\t\t\tpanelClassName=\"edit-site-global-styles-sidebar__panel\"\n\t\t\theader={\n\t\t\t\t<Flex\n\t\t\t\t\tclassName=\"edit-site-global-styles-sidebar__header\"\n\t\t\t\t\trole=\"menubar\"\n\t\t\t\t\taria-label={ __( 'Styles actions' ) }\n\t\t\t\t>\n\t\t\t\t\t<FlexBlock style={ { minWidth: 'min-content' } }>\n\t\t\t\t\t\t<strong>{ __( 'Styles' ) }</strong>\n\t\t\t\t\t</FlexBlock>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ seen }\n\t\t\t\t\t\t\tlabel={ __( 'Style Book' ) }\n\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\tisStyleBookOpened || isRevisionsStyleBookOpened\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={ shouldClearCanvasContainerView }\n\t\t\t\t\t\t\tonClick={ toggleStyleBook }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tlabel={ __( 'Revisions' ) }\n\t\t\t\t\t\t\ticon={ backup }\n\t\t\t\t\t\t\tonClick={ toggleRevisions }\n\t\t\t\t\t\t\tdisabled={ ! hasRevisions }\n\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\tisRevisionsOpened || isRevisionsStyleBookOpened\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<GlobalStylesMenuSlot />\n\t\t\t\t</Flex>\n\t\t\t}\n\t\t>\n\t\t\t<GlobalStylesUI />\n\t\t</DefaultSidebar>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["FlexItem","FlexBlock","Flex","Button","__experimentalUseNavigator","useNavigator","__","styles","seen","backup","useSelect","useDispatch","useEffect","store","interfaceStore","preferencesStore","editorStore","DefaultSidebar","GlobalStylesUI","editSiteStore","GlobalStylesMenuSlot","unlock","coreStore","GlobalStylesSidebar","shouldClearCanvasContainerView","isStyleBookOpened","showListViewByDefault","hasRevisions","isRevisionsOpened","isRevisionsStyleBookOpened","select","getActiveComplementaryArea","getEditorCanvasContainerView","getCanvasMode","canvasContainerView","_isVisualEditorMode","getEditorMode","_isEditCanvasMode","_showListViewByDefault","get","getEntityRecord","__experimentalGetCurrentGlobalStylesId","globalStylesId","globalStyles","undefined","_links","count","setEditorCanvasContainerView","setIsListViewOpened","goTo","toggleRevisions","toggleStyleBook","createElement","className","identifier","title","icon","closeLabel","panelClassName","header","style","minWidth","label","isPressed","disabled","onClick"],"sources":["@wordpress/edit-site/src/components/sidebar-edit-mode/global-styles-sidebar.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tFlexItem,\n\tFlexBlock,\n\tFlex,\n\tButton,\n\t__experimentalUseNavigator as useNavigator,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { styles, seen, backup } from '@wordpress/icons';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useEffect } from '@wordpress/element';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport DefaultSidebar from './default-sidebar';\nimport { GlobalStylesUI } from '../global-styles';\nimport { store as editSiteStore } from '../../store';\nimport { GlobalStylesMenuSlot } from '../global-styles/ui';\nimport { unlock } from '../../lock-unlock';\nimport { store as coreStore } from '@wordpress/core-data';\n\nexport default function GlobalStylesSidebar() {\n\tconst {\n\t\tshouldClearCanvasContainerView,\n\t\tisStyleBookOpened,\n\t\tshowListViewByDefault,\n\t\thasRevisions,\n\t\tisRevisionsOpened,\n\t\tisRevisionsStyleBookOpened,\n\t} = useSelect( ( select ) => {\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\t\tconst { getEditorCanvasContainerView, getCanvasMode } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\t\tconst canvasContainerView = getEditorCanvasContainerView();\n\t\tconst _isVisualEditorMode =\n\t\t\t'visual' === select( editorStore ).getEditorMode();\n\t\tconst _isEditCanvasMode = 'edit' === getCanvasMode();\n\t\tconst _showListViewByDefault = select( preferencesStore ).get(\n\t\t\t'core',\n\t\t\t'showListViewByDefault'\n\t\t);\n\t\tconst { getEntityRecord, __experimentalGetCurrentGlobalStylesId } =\n\t\t\tselect( coreStore );\n\n\t\tconst globalStylesId = __experimentalGetCurrentGlobalStylesId();\n\t\tconst globalStyles = globalStylesId\n\t\t\t? getEntityRecord( 'root', 'globalStyles', globalStylesId )\n\t\t\t: undefined;\n\n\t\treturn {\n\t\t\tisStyleBookOpened: 'style-book' === canvasContainerView,\n\t\t\tshouldClearCanvasContainerView:\n\t\t\t\t'edit-site/global-styles' !==\n\t\t\t\t\tgetActiveComplementaryArea( 'core/edit-site' ) ||\n\t\t\t\t! _isVisualEditorMode ||\n\t\t\t\t! _isEditCanvasMode,\n\t\t\tshowListViewByDefault: _showListViewByDefault,\n\t\t\thasRevisions:\n\t\t\t\t!! globalStyles?._links?.[ 'version-history' ]?.[ 0 ]?.count,\n\t\t\tisRevisionsStyleBookOpened:\n\t\t\t\t'global-styles-revisions:style-book' === canvasContainerView,\n\t\t\tisRevisionsOpened:\n\t\t\t\t'global-styles-revisions' === canvasContainerView,\n\t\t};\n\t}, [] );\n\tconst { setEditorCanvasContainerView } = unlock(\n\t\tuseDispatch( editSiteStore )\n\t);\n\n\tuseEffect( () => {\n\t\tif ( shouldClearCanvasContainerView ) {\n\t\t\tsetEditorCanvasContainerView( undefined );\n\t\t}\n\t}, [ shouldClearCanvasContainerView ] );\n\n\tconst { setIsListViewOpened } = useDispatch( editorStore );\n\tconst { goTo } = useNavigator();\n\n\tconst toggleRevisions = () => {\n\t\tsetIsListViewOpened( false );\n\t\tif ( isRevisionsStyleBookOpened ) {\n\t\t\tgoTo( '/' );\n\t\t\tsetEditorCanvasContainerView( 'style-book' );\n\t\t\treturn;\n\t\t}\n\t\tif ( isRevisionsOpened ) {\n\t\t\tgoTo( '/' );\n\t\t\tsetEditorCanvasContainerView( undefined );\n\t\t\treturn;\n\t\t}\n\t\tgoTo( '/revisions' );\n\n\t\tif ( isStyleBookOpened ) {\n\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t'global-styles-revisions:style-book'\n\t\t\t);\n\t\t} else {\n\t\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t\t}\n\t};\n\tconst toggleStyleBook = () => {\n\t\tif ( isRevisionsOpened ) {\n\t\t\tsetEditorCanvasContainerView(\n\t\t\t\t'global-styles-revisions:style-book'\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\t\tif ( isRevisionsStyleBookOpened ) {\n\t\t\tsetEditorCanvasContainerView( 'global-styles-revisions' );\n\t\t\treturn;\n\t\t}\n\t\tsetIsListViewOpened( isStyleBookOpened && showListViewByDefault );\n\t\tsetEditorCanvasContainerView(\n\t\t\tisStyleBookOpened ? undefined : 'style-book'\n\t\t);\n\t};\n\n\treturn (\n\t\t<DefaultSidebar\n\t\t\tclassName=\"edit-site-global-styles-sidebar\"\n\t\t\tidentifier=\"edit-site/global-styles\"\n\t\t\ttitle={ __( 'Styles' ) }\n\t\t\ticon={ styles }\n\t\t\tcloseLabel={ __( 'Close Styles' ) }\n\t\t\tpanelClassName=\"edit-site-global-styles-sidebar__panel\"\n\t\t\theader={\n\t\t\t\t<Flex className=\"edit-site-global-styles-sidebar__header\">\n\t\t\t\t\t<FlexBlock style={ { minWidth: 'min-content' } }>\n\t\t\t\t\t\t<h2 className=\"edit-site-global-styles-sidebar__header-title\">\n\t\t\t\t\t\t\t{ __( 'Styles' ) }\n\t\t\t\t\t\t</h2>\n\t\t\t\t\t</FlexBlock>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\ticon={ seen }\n\t\t\t\t\t\t\tlabel={ __( 'Style Book' ) }\n\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\tisStyleBookOpened || isRevisionsStyleBookOpened\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={ shouldClearCanvasContainerView }\n\t\t\t\t\t\t\tonClick={ toggleStyleBook }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tlabel={ __( 'Revisions' ) }\n\t\t\t\t\t\t\ticon={ backup }\n\t\t\t\t\t\t\tonClick={ toggleRevisions }\n\t\t\t\t\t\t\tdisabled={ ! hasRevisions }\n\t\t\t\t\t\t\tisPressed={\n\t\t\t\t\t\t\t\tisRevisionsOpened || isRevisionsStyleBookOpened\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</FlexItem>\n\t\t\t\t\t<GlobalStylesMenuSlot />\n\t\t\t\t</Flex>\n\t\t\t}\n\t\t>\n\t\t\t<GlobalStylesUI />\n\t\t</DefaultSidebar>\n\t);\n}\n"],"mappings":"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"}
@@ -21,16 +21,30 @@ function injectThemeAttributeInBlockTemplateContent(block, currentThemeStyleshee
21
21
  }
22
22
  return block;
23
23
  }
24
- function preparePatterns(patterns, template, currentThemeStylesheet) {
24
+
25
+ /**
26
+ * Filter all patterns and return only the ones that are compatible with the current template.
27
+ *
28
+ * @param {Array} patterns An array of patterns.
29
+ * @param {Object} template The current template.
30
+ * @return {Array} Array of patterns that are compatible with the current template.
31
+ */
32
+ function filterPatterns(patterns, template) {
25
33
  // Filter out duplicates.
26
34
  const filterOutDuplicatesByName = (currentItem, index, items) => index === items.findIndex(item => currentItem.name === item.name);
27
35
 
28
36
  // Filter out core/directory patterns not included in theme.json.
29
37
  const filterOutExcludedPatternSources = pattern => !EXCLUDED_PATTERN_SOURCES.includes(pattern.source);
30
38
 
31
- // Filter only the patterns that are compatible with the current template.
32
- const filterCompatiblePatterns = pattern => pattern.templateTypes?.includes(template.slug);
33
- return patterns.filter((pattern, index, items) => filterOutExcludedPatternSources(pattern) && filterOutDuplicatesByName(pattern, index, items) && filterCompatiblePatterns(pattern)).map(pattern => ({
39
+ // Looks for patterns that have the same template type as the current template,
40
+ // or have a block type that matches the current template area.
41
+ const filterCompatiblePatterns = pattern => pattern.templateTypes?.includes(template.slug) || pattern.blockTypes?.includes('core/template-part/' + template.area);
42
+ return patterns.filter((pattern, index, items) => {
43
+ return filterOutDuplicatesByName(pattern, index, items) && filterOutExcludedPatternSources(pattern) && filterCompatiblePatterns(pattern);
44
+ });
45
+ }
46
+ function preparePatterns(patterns, template, currentThemeStylesheet) {
47
+ return patterns.map(pattern => ({
34
48
  ...pattern,
35
49
  keywords: pattern.keywords || [],
36
50
  type: PATTERN_TYPES.theme,
@@ -58,7 +72,8 @@ export function useAvailablePatterns(template) {
58
72
  }, []);
59
73
  return useMemo(() => {
60
74
  const mergedPatterns = [...(blockPatterns || []), ...(restBlockPatterns || [])];
61
- return preparePatterns(mergedPatterns, template, currentThemeStylesheet);
75
+ const filteredPatterns = filterPatterns(mergedPatterns, template);
76
+ return preparePatterns(filteredPatterns, template, currentThemeStylesheet);
62
77
  }, [blockPatterns, restBlockPatterns, template, currentThemeStylesheet]);
63
78
  }
64
79
  //# sourceMappingURL=hooks.js.map