@wordpress/block-library 9.11.0 → 9.12.1-next.082ed6819.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 (272) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/block-keyboard-shortcuts/index.js +7 -7
  3. package/build/block-keyboard-shortcuts/index.js.map +1 -1
  4. package/build/button/index.js +1 -1
  5. package/build/button/index.js.map +1 -1
  6. package/build/cover/deprecated.js +140 -4
  7. package/build/cover/deprecated.js.map +1 -1
  8. package/build/cover/edit/block-controls.js +1 -1
  9. package/build/cover/edit/block-controls.js.map +1 -1
  10. package/build/cover/edit/cover-placeholder.js +1 -2
  11. package/build/cover/edit/cover-placeholder.js.map +1 -1
  12. package/build/cover/edit/index.js +23 -23
  13. package/build/cover/edit/index.js.map +1 -1
  14. package/build/cover/index.js +10 -10
  15. package/build/cover/index.js.map +1 -1
  16. package/build/cover/save.js +13 -13
  17. package/build/cover/save.js.map +1 -1
  18. package/build/cover/shared.js +6 -7
  19. package/build/cover/shared.js.map +1 -1
  20. package/build/details/index.js +20 -0
  21. package/build/details/index.js.map +1 -1
  22. package/build/file/edit.js +8 -4
  23. package/build/file/edit.js.map +1 -1
  24. package/build/freeform/modal.js +1 -1
  25. package/build/freeform/modal.js.map +1 -1
  26. package/build/gallery/edit.js +1 -1
  27. package/build/gallery/edit.js.map +1 -1
  28. package/build/heading/index.js +1 -7
  29. package/build/heading/index.js.map +1 -1
  30. package/build/home-link/edit.js +20 -36
  31. package/build/home-link/edit.js.map +1 -1
  32. package/build/image/edit.js +1 -1
  33. package/build/image/edit.js.map +1 -1
  34. package/build/image/image.js +144 -78
  35. package/build/image/image.js.map +1 -1
  36. package/build/image/index.js +1 -1
  37. package/build/latest-posts/edit.js +0 -1
  38. package/build/latest-posts/edit.js.map +1 -1
  39. package/build/lock-unlock.js.map +1 -1
  40. package/build/navigation/edit/index.js +2 -23
  41. package/build/navigation/edit/index.js.map +1 -1
  42. package/build/navigation/use-template-part-area-label.js +6 -8
  43. package/build/navigation/use-template-part-area-label.js.map +1 -1
  44. package/build/page-list/index.js +14 -0
  45. package/build/page-list/index.js.map +1 -1
  46. package/build/paragraph/edit.js +26 -25
  47. package/build/paragraph/edit.js.map +1 -1
  48. package/build/post-content/index.js +13 -0
  49. package/build/post-content/index.js.map +1 -1
  50. package/build/post-template/edit.js +11 -0
  51. package/build/post-template/edit.js.map +1 -1
  52. package/build/post-template/index.js +1 -1
  53. package/build/query/edit/inspector-controls/enhanced-pagination-control.js +1 -3
  54. package/build/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
  55. package/build/query/edit/inspector-controls/index.js +3 -13
  56. package/build/query/edit/inspector-controls/index.js.map +1 -1
  57. package/build/query/edit/pattern-selection-modal.js +0 -3
  58. package/build/query/edit/pattern-selection-modal.js.map +1 -1
  59. package/build/query/edit/query-content.js +10 -12
  60. package/build/query/edit/query-content.js.map +1 -1
  61. package/build/query/index.js +1 -1
  62. package/build/query/utils.js +38 -9
  63. package/build/query/utils.js.map +1 -1
  64. package/build/social-link/edit.js +22 -9
  65. package/build/social-link/edit.js.map +1 -1
  66. package/build/template-part/edit/advanced-controls.js +2 -7
  67. package/build/template-part/edit/advanced-controls.js.map +1 -1
  68. package/build/template-part/edit/index.js +1 -4
  69. package/build/template-part/edit/index.js.map +1 -1
  70. package/build/template-part/edit/selection-modal.js +0 -3
  71. package/build/template-part/edit/selection-modal.js.map +1 -1
  72. package/build/template-part/edit/utils/get-template-part-icon.js +23 -0
  73. package/build/template-part/edit/utils/get-template-part-icon.js.map +1 -0
  74. package/build/template-part/edit/utils/hooks.js +1 -6
  75. package/build/template-part/edit/utils/hooks.js.map +1 -1
  76. package/build/template-part/variations.js +6 -12
  77. package/build/template-part/variations.js.map +1 -1
  78. package/build/video/edit.js +1 -1
  79. package/build/video/edit.js.map +1 -1
  80. package/build/video/tracks-editor.js +135 -123
  81. package/build/video/tracks-editor.js.map +1 -1
  82. package/build-module/block-keyboard-shortcuts/index.js +7 -7
  83. package/build-module/block-keyboard-shortcuts/index.js.map +1 -1
  84. package/build-module/button/index.js +1 -1
  85. package/build-module/button/index.js.map +1 -1
  86. package/build-module/cover/deprecated.js +140 -4
  87. package/build-module/cover/deprecated.js.map +1 -1
  88. package/build-module/cover/edit/block-controls.js +1 -1
  89. package/build-module/cover/edit/block-controls.js.map +1 -1
  90. package/build-module/cover/edit/cover-placeholder.js +1 -2
  91. package/build-module/cover/edit/cover-placeholder.js.map +1 -1
  92. package/build-module/cover/edit/index.js +23 -23
  93. package/build-module/cover/edit/index.js.map +1 -1
  94. package/build-module/cover/index.js +10 -10
  95. package/build-module/cover/index.js.map +1 -1
  96. package/build-module/cover/save.js +13 -13
  97. package/build-module/cover/save.js.map +1 -1
  98. package/build-module/cover/shared.js +6 -7
  99. package/build-module/cover/shared.js.map +1 -1
  100. package/build-module/details/index.js +21 -1
  101. package/build-module/details/index.js.map +1 -1
  102. package/build-module/file/edit.js +8 -4
  103. package/build-module/file/edit.js.map +1 -1
  104. package/build-module/freeform/modal.js +1 -1
  105. package/build-module/freeform/modal.js.map +1 -1
  106. package/build-module/gallery/edit.js +1 -1
  107. package/build-module/gallery/edit.js.map +1 -1
  108. package/build-module/heading/index.js +1 -7
  109. package/build-module/heading/index.js.map +1 -1
  110. package/build-module/home-link/edit.js +23 -39
  111. package/build-module/home-link/edit.js.map +1 -1
  112. package/build-module/image/edit.js +1 -1
  113. package/build-module/image/edit.js.map +1 -1
  114. package/build-module/image/image.js +149 -83
  115. package/build-module/image/image.js.map +1 -1
  116. package/build-module/image/index.js +1 -1
  117. package/build-module/latest-posts/edit.js +0 -1
  118. package/build-module/latest-posts/edit.js.map +1 -1
  119. package/build-module/lock-unlock.js.map +1 -1
  120. package/build-module/navigation/edit/index.js +2 -23
  121. package/build-module/navigation/edit/index.js.map +1 -1
  122. package/build-module/navigation/use-template-part-area-label.js +6 -8
  123. package/build-module/navigation/use-template-part-area-label.js.map +1 -1
  124. package/build-module/page-list/index.js +14 -0
  125. package/build-module/page-list/index.js.map +1 -1
  126. package/build-module/paragraph/edit.js +26 -25
  127. package/build-module/paragraph/edit.js.map +1 -1
  128. package/build-module/post-content/index.js +13 -0
  129. package/build-module/post-content/index.js.map +1 -1
  130. package/build-module/post-template/edit.js +11 -0
  131. package/build-module/post-template/edit.js.map +1 -1
  132. package/build-module/post-template/index.js +1 -1
  133. package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +1 -3
  134. package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
  135. package/build-module/query/edit/inspector-controls/index.js +3 -13
  136. package/build-module/query/edit/inspector-controls/index.js.map +1 -1
  137. package/build-module/query/edit/pattern-selection-modal.js +0 -3
  138. package/build-module/query/edit/pattern-selection-modal.js.map +1 -1
  139. package/build-module/query/edit/query-content.js +10 -12
  140. package/build-module/query/edit/query-content.js.map +1 -1
  141. package/build-module/query/index.js +1 -1
  142. package/build-module/query/utils.js +35 -8
  143. package/build-module/query/utils.js.map +1 -1
  144. package/build-module/social-link/edit.js +24 -11
  145. package/build-module/social-link/edit.js.map +1 -1
  146. package/build-module/template-part/edit/advanced-controls.js +3 -8
  147. package/build-module/template-part/edit/advanced-controls.js.map +1 -1
  148. package/build-module/template-part/edit/index.js +1 -4
  149. package/build-module/template-part/edit/index.js.map +1 -1
  150. package/build-module/template-part/edit/selection-modal.js +0 -3
  151. package/build-module/template-part/edit/selection-modal.js.map +1 -1
  152. package/build-module/template-part/edit/utils/get-template-part-icon.js +15 -0
  153. package/build-module/template-part/edit/utils/get-template-part-icon.js.map +1 -0
  154. package/build-module/template-part/edit/utils/hooks.js +1 -6
  155. package/build-module/template-part/edit/utils/hooks.js.map +1 -1
  156. package/build-module/template-part/variations.js +5 -11
  157. package/build-module/template-part/variations.js.map +1 -1
  158. package/build-module/video/edit.js +1 -1
  159. package/build-module/video/edit.js.map +1 -1
  160. package/build-module/video/tracks-editor.js +136 -124
  161. package/build-module/video/tracks-editor.js.map +1 -1
  162. package/build-style/cover/editor-rtl.css +3 -5
  163. package/build-style/cover/editor.css +3 -5
  164. package/build-style/cover/style-rtl.css +19 -15
  165. package/build-style/cover/style.css +19 -15
  166. package/build-style/editor-rtl.css +19 -30
  167. package/build-style/editor.css +19 -30
  168. package/build-style/group/editor-rtl.css +0 -10
  169. package/build-style/group/editor.css +0 -10
  170. package/build-style/image/editor-rtl.css +4 -0
  171. package/build-style/image/editor.css +4 -0
  172. package/build-style/image/style-rtl.css +0 -2
  173. package/build-style/image/style.css +0 -2
  174. package/build-style/latest-posts/editor-rtl.css +0 -7
  175. package/build-style/latest-posts/editor.css +0 -7
  176. package/build-style/media-text/style-rtl.css +1 -1
  177. package/build-style/media-text/style.css +1 -1
  178. package/build-style/navigation/style-rtl.css +1 -1
  179. package/build-style/navigation/style.css +1 -1
  180. package/build-style/page-list/style-rtl.css +4 -0
  181. package/build-style/page-list/style.css +4 -0
  182. package/build-style/query/editor-rtl.css +0 -4
  183. package/build-style/query/editor.css +0 -4
  184. package/build-style/search/style-rtl.css +3 -3
  185. package/build-style/search/style.css +3 -3
  186. package/build-style/social-link/editor-rtl.css +4 -4
  187. package/build-style/social-link/editor.css +4 -4
  188. package/build-style/style-rtl.css +28 -22
  189. package/build-style/style.css +28 -22
  190. package/build-style/video/editor-rtl.css +8 -0
  191. package/build-style/video/editor.css +8 -0
  192. package/build-types/lock-unlock.d.ts +2 -0
  193. package/build-types/lock-unlock.d.ts.map +1 -0
  194. package/package.json +39 -39
  195. package/src/block-keyboard-shortcuts/index.js +25 -11
  196. package/src/button/index.js +1 -1
  197. package/src/comments/block.json +3 -9
  198. package/src/cover/deprecated.js +182 -4
  199. package/src/cover/edit/block-controls.js +1 -1
  200. package/src/cover/edit/cover-placeholder.js +0 -3
  201. package/src/cover/edit/index.js +42 -27
  202. package/src/cover/editor.scss +4 -5
  203. package/src/cover/index.js +8 -8
  204. package/src/cover/save.js +27 -20
  205. package/src/cover/shared.js +10 -10
  206. package/src/cover/style.scss +40 -16
  207. package/src/cover/test/__snapshots__/edit.native.js.snap +9 -9
  208. package/src/cover/test/__snapshots__/transforms.native.js.snap +4 -4
  209. package/src/cover/test/edit.js +2 -2
  210. package/src/cover/test/edit.native.js +4 -4
  211. package/src/cover/test/transforms.native.js +4 -4
  212. package/src/details/block.json +1 -0
  213. package/src/details/index.js +23 -1
  214. package/src/file/edit.js +9 -3
  215. package/src/freeform/modal.js +1 -1
  216. package/src/gallery/edit.js +1 -1
  217. package/src/group/editor.scss +0 -12
  218. package/src/heading/block.json +1 -7
  219. package/src/home-link/edit.js +27 -45
  220. package/src/home-link/index.php +0 -3
  221. package/src/image/block.json +1 -1
  222. package/src/image/edit.js +1 -1
  223. package/src/image/editor.scss +4 -0
  224. package/src/image/image.js +200 -109
  225. package/src/image/style.scss +0 -1
  226. package/src/image/test/__snapshots__/transforms.native.js.snap +1 -1
  227. package/src/latest-posts/edit.js +0 -1
  228. package/src/latest-posts/editor.scss +0 -11
  229. package/src/media-text/style.scss +1 -1
  230. package/src/media-text/test/__snapshots__/transforms.native.js.snap +2 -2
  231. package/src/navigation/edit/index.js +3 -30
  232. package/src/navigation/index.php +5 -151
  233. package/src/navigation/style.scss +1 -1
  234. package/src/navigation/use-template-part-area-label.js +10 -10
  235. package/src/page-list/block.json +14 -0
  236. package/src/page-list/style.scss +4 -0
  237. package/src/paragraph/edit.js +20 -17
  238. package/src/pattern/index.php +0 -7
  239. package/src/post-content/block.json +14 -1
  240. package/src/post-template/block.json +2 -1
  241. package/src/post-template/edit.js +19 -0
  242. package/src/query/block.json +1 -1
  243. package/src/query/edit/inspector-controls/enhanced-pagination-control.js +3 -5
  244. package/src/query/edit/inspector-controls/index.js +2 -12
  245. package/src/query/edit/pattern-selection-modal.js +0 -3
  246. package/src/query/edit/query-content.js +9 -17
  247. package/src/query/editor.scss +0 -4
  248. package/src/query/index.php +1 -1
  249. package/src/query/test/utils.js +59 -1
  250. package/src/query/utils.js +43 -15
  251. package/src/rss/index.php +11 -8
  252. package/src/search/index.php +2 -2
  253. package/src/search/style.scss +3 -5
  254. package/src/social-link/edit.js +47 -19
  255. package/src/social-link/editor.scss +6 -7
  256. package/src/template-part/edit/advanced-controls.js +13 -13
  257. package/src/template-part/edit/index.js +1 -4
  258. package/src/template-part/edit/selection-modal.js +0 -3
  259. package/src/template-part/edit/utils/get-template-part-icon.js +20 -0
  260. package/src/template-part/edit/utils/hooks.js +2 -7
  261. package/src/template-part/variations.js +4 -16
  262. package/src/video/edit.js +1 -1
  263. package/src/video/editor.scss +9 -0
  264. package/src/video/test/__snapshots__/transforms.native.js.snap +1 -1
  265. package/src/video/tracks-editor.js +157 -141
  266. package/tsconfig.tsbuildinfo +1 -1
  267. package/build/query/edit/inspector-controls/create-new-post-link.js +0 -40
  268. package/build/query/edit/inspector-controls/create-new-post-link.js.map +0 -1
  269. package/build-module/query/edit/inspector-controls/create-new-post-link.js +0 -33
  270. package/build-module/query/edit/inspector-controls/create-new-post-link.js.map +0 -1
  271. package/src/query/edit/inspector-controls/create-new-post-link.js +0 -32
  272. /package/src/{lock-unlock.js → lock-unlock.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","memo","useMemo","useState","useSelect","__","_x","BlockControls","BlockContextProvider","__experimentalUseBlockPreview","useBlockPreview","useBlockProps","useInnerBlocksProps","store","blockEditorStore","Spinner","ToolbarGroup","coreStore","list","grid","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","TEMPLATE","PostTemplateInnerBlocks","classList","innerBlocksProps","className","template","__unstableDisableLayoutClassNames","PostTemplateBlockPreview","blocks","blockContextId","isHidden","setActiveBlockContextId","blockPreviewProps","props","handleOnClick","style","display","undefined","tabIndex","role","onClick","onKeyPress","MemoizedPostTemplateBlockPreview","PostTemplateEdit","setAttributes","clientId","context","query","perPage","offset","postType","order","orderBy","author","search","exclude","sticky","inherit","taxQuery","parents","pages","format","restQueryArgs","templateSlug","previewPostType","attributes","layout","__unstableLayoutClassNames","type","layoutType","columnCount","activeBlockContextId","posts","select","getEntityRecords","getTaxonomies","getBlocks","templateCategory","startsWith","per_page","_fields","slug","replace","orderby","taxonomies","builtTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","taxonomy","find","rest_base","keys","length","assign","parent","categories","id","usedPostType","blockContexts","map","post","_post$class_list","postId","class_list","blockProps","children","setDisplayLayout","newDisplayLayout","displayLayoutControls","icon","title","isActive","controls","blockContext","value"],"sources":["@wordpress/block-library/src/post-template/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { memo, useMemo, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tBlockContextProvider,\n\t__experimentalUseBlockPreview as useBlockPreview,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Spinner, ToolbarGroup } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { list, grid } from '@wordpress/icons';\n\nconst TEMPLATE = [\n\t[ 'core/post-title' ],\n\t[ 'core/post-date' ],\n\t[ 'core/post-excerpt' ],\n];\n\nfunction PostTemplateInnerBlocks( { classList } ) {\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{ className: clsx( 'wp-block-post', classList ) },\n\t\t{ template: TEMPLATE, __unstableDisableLayoutClassNames: true }\n\t);\n\treturn <li { ...innerBlocksProps } />;\n}\n\nfunction PostTemplateBlockPreview( {\n\tblocks,\n\tblockContextId,\n\tclassList,\n\tisHidden,\n\tsetActiveBlockContextId,\n} ) {\n\tconst blockPreviewProps = useBlockPreview( {\n\t\tblocks,\n\t\tprops: {\n\t\t\tclassName: clsx( 'wp-block-post', classList ),\n\t\t},\n\t} );\n\n\tconst handleOnClick = () => {\n\t\tsetActiveBlockContextId( blockContextId );\n\t};\n\n\tconst style = {\n\t\tdisplay: isHidden ? 'none' : undefined,\n\t};\n\n\treturn (\n\t\t<li\n\t\t\t{ ...blockPreviewProps }\n\t\t\ttabIndex={ 0 }\n\t\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role\n\t\t\trole=\"button\"\n\t\t\tonClick={ handleOnClick }\n\t\t\tonKeyPress={ handleOnClick }\n\t\t\tstyle={ style }\n\t\t/>\n\t);\n}\n\nconst MemoizedPostTemplateBlockPreview = memo( PostTemplateBlockPreview );\n\nexport default function PostTemplateEdit( {\n\tsetAttributes,\n\tclientId,\n\tcontext: {\n\t\tquery: {\n\t\t\tperPage,\n\t\t\toffset = 0,\n\t\t\tpostType,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tpages,\n\t\t\tformat,\n\t\t\t// We gather extra query args to pass to the REST API call.\n\t\t\t// This way extenders of Query Loop can add their own query args,\n\t\t\t// and have accurate previews in the editor.\n\t\t\t// Noting though that these args should either be supported by the\n\t\t\t// REST API or be handled by custom REST filters like `rest_{$this->post_type}_query`.\n\t\t\t...restQueryArgs\n\t\t} = {},\n\t\ttemplateSlug,\n\t\tpreviewPostType,\n\t},\n\tattributes: { layout },\n\t__unstableLayoutClassNames,\n} ) {\n\tconst { type: layoutType, columnCount = 3 } = layout || {};\n\tconst [ activeBlockContextId, setActiveBlockContextId ] = useState();\n\tconst { posts, blocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomies } = select( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\t\t\tconst templateCategory =\n\t\t\t\tinherit &&\n\t\t\t\ttemplateSlug?.startsWith( 'category-' ) &&\n\t\t\t\tgetEntityRecords( 'taxonomy', 'category', {\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t\tper_page: 1,\n\t\t\t\t\t_fields: [ 'id' ],\n\t\t\t\t\tslug: templateSlug.replace( 'category-', '' ),\n\t\t\t\t} );\n\t\t\tconst query = {\n\t\t\t\toffset: offset || 0,\n\t\t\t\torder,\n\t\t\t\torderby: orderBy,\n\t\t\t};\n\t\t\t// There is no need to build the taxQuery if we inherit.\n\t\t\tif ( taxQuery && ! inherit ) {\n\t\t\t\tconst taxonomies = getTaxonomies( {\n\t\t\t\t\ttype: postType,\n\t\t\t\t\tper_page: -1,\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t} );\n\t\t\t\t// We have to build the tax query for the REST API and use as\n\t\t\t\t// keys the taxonomies `rest_base` with the `term ids` as values.\n\t\t\t\tconst builtTaxQuery = Object.entries( taxQuery ).reduce(\n\t\t\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\t\t\tconst taxonomy = taxonomies?.find(\n\t\t\t\t\t\t\t( { slug } ) => slug === taxonomySlug\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( taxonomy?.rest_base ) {\n\t\t\t\t\t\t\taccumulator[ taxonomy?.rest_base ] = terms;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn accumulator;\n\t\t\t\t\t},\n\t\t\t\t\t{}\n\t\t\t\t);\n\t\t\t\tif ( !! Object.keys( builtTaxQuery ).length ) {\n\t\t\t\t\tObject.assign( query, builtTaxQuery );\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( perPage ) {\n\t\t\t\tquery.per_page = perPage;\n\t\t\t}\n\t\t\tif ( author ) {\n\t\t\t\tquery.author = author;\n\t\t\t}\n\t\t\tif ( search ) {\n\t\t\t\tquery.search = search;\n\t\t\t}\n\t\t\tif ( exclude?.length ) {\n\t\t\t\tquery.exclude = exclude;\n\t\t\t}\n\t\t\tif ( parents?.length ) {\n\t\t\t\tquery.parent = parents;\n\t\t\t}\n\t\t\tif ( format?.length ) {\n\t\t\t\tquery.format = format;\n\t\t\t}\n\n\t\t\t// If sticky is not set, it will return all posts in the results.\n\t\t\t// If sticky is set to `only`, it will limit the results to sticky posts only.\n\t\t\t// If it is anything else, it will exclude sticky posts from results. For the record the value stored is `exclude`.\n\t\t\tif ( sticky ) {\n\t\t\t\tquery.sticky = sticky === 'only';\n\t\t\t}\n\t\t\t// If `inherit` is truthy, adjust conditionally the query to create a better preview.\n\t\t\tif ( inherit ) {\n\t\t\t\t// Change the post-type if needed.\n\t\t\t\tif ( templateSlug?.startsWith( 'archive-' ) ) {\n\t\t\t\t\tquery.postType = templateSlug.replace( 'archive-', '' );\n\t\t\t\t\tpostType = query.postType;\n\t\t\t\t} else if ( templateCategory ) {\n\t\t\t\t\tquery.categories = templateCategory[ 0 ]?.id;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// When we preview Query Loop blocks we should prefer the current\n\t\t\t// block's postType, which is passed through block context.\n\t\t\tconst usedPostType = previewPostType || postType;\n\t\t\treturn {\n\t\t\t\tposts: getEntityRecords( 'postType', usedPostType, {\n\t\t\t\t\t...query,\n\t\t\t\t\t...restQueryArgs,\n\t\t\t\t} ),\n\t\t\t\tblocks: getBlocks( clientId ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tperPage,\n\t\t\toffset,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tclientId,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\tpostType,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttemplateSlug,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tformat,\n\t\t\trestQueryArgs,\n\t\t\tpreviewPostType,\n\t\t]\n\t);\n\tconst blockContexts = useMemo(\n\t\t() =>\n\t\t\tposts?.map( ( post ) => ( {\n\t\t\t\tpostType: post.type,\n\t\t\t\tpostId: post.id,\n\t\t\t\tclassList: post.class_list ?? '',\n\t\t\t} ) ),\n\t\t[ posts ]\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( __unstableLayoutClassNames, {\n\t\t\t[ `columns-${ columnCount }` ]:\n\t\t\t\tlayoutType === 'grid' && columnCount, // Ensure column count is flagged via classname for backwards compatibility.\n\t\t} ),\n\t} );\n\n\tif ( ! posts ) {\n\t\treturn (\n\t\t\t<p { ...blockProps }>\n\t\t\t\t<Spinner />\n\t\t\t</p>\n\t\t);\n\t}\n\n\tif ( ! posts.length ) {\n\t\treturn <p { ...blockProps }> { __( 'No results found.' ) }</p>;\n\t}\n\n\tconst setDisplayLayout = ( newDisplayLayout ) =>\n\t\tsetAttributes( {\n\t\t\tlayout: { ...layout, ...newDisplayLayout },\n\t\t} );\n\n\tconst displayLayoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: _x( 'List view', 'Post template block display setting' ),\n\t\t\tonClick: () => setDisplayLayout( { type: 'default' } ),\n\t\t\tisActive: layoutType === 'default' || layoutType === 'constrained',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: _x( 'Grid view', 'Post template block display setting' ),\n\t\t\tonClick: () =>\n\t\t\t\tsetDisplayLayout( {\n\t\t\t\t\ttype: 'grid',\n\t\t\t\t\tcolumnCount,\n\t\t\t\t} ),\n\t\t\tisActive: layoutType === 'grid',\n\t\t},\n\t];\n\n\t// To avoid flicker when switching active block contexts, a preview is rendered\n\t// for each block context, but the preview for the active block context is hidden.\n\t// This ensures that when it is displayed again, the cached rendering of the\n\t// block preview is used, instead of having to re-render the preview from scratch.\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ displayLayoutControls } />\n\t\t\t</BlockControls>\n\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ blockContexts &&\n\t\t\t\t\tblockContexts.map( ( blockContext ) => (\n\t\t\t\t\t\t<BlockContextProvider\n\t\t\t\t\t\t\tkey={ blockContext.postId }\n\t\t\t\t\t\t\tvalue={ blockContext }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ blockContext.postId ===\n\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId ) ? (\n\t\t\t\t\t\t\t\t<PostTemplateInnerBlocks\n\t\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : null }\n\t\t\t\t\t\t\t<MemoizedPostTemplateBlockPreview\n\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\tblockContextId={ blockContext.postId }\n\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\tsetActiveBlockContextId={\n\t\t\t\t\t\t\t\t\tsetActiveBlockContextId\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisHidden={\n\t\t\t\t\t\t\t\t\tblockContext.postId ===\n\t\t\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t\t) ) }\n\t\t\t</ul>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","memo","useMemo","useState","useSelect","__","_x","BlockControls","BlockContextProvider","__experimentalUseBlockPreview","useBlockPreview","useBlockProps","useInnerBlocksProps","store","blockEditorStore","Spinner","ToolbarGroup","coreStore","list","grid","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","TEMPLATE","PostTemplateInnerBlocks","classList","innerBlocksProps","className","template","__unstableDisableLayoutClassNames","PostTemplateBlockPreview","blocks","blockContextId","isHidden","setActiveBlockContextId","blockPreviewProps","props","handleOnClick","style","display","undefined","tabIndex","role","onClick","onKeyPress","MemoizedPostTemplateBlockPreview","PostTemplateEdit","setAttributes","clientId","context","query","perPage","offset","postType","order","orderBy","author","search","exclude","sticky","inherit","taxQuery","parents","pages","format","restQueryArgs","templateSlug","previewPostType","attributes","layout","__unstableLayoutClassNames","type","layoutType","columnCount","activeBlockContextId","posts","select","getEntityRecords","getTaxonomies","getBlocks","templateCategory","startsWith","per_page","_fields","slug","replace","templateTag","orderby","taxonomies","builtTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","taxonomy","find","rest_base","keys","length","assign","parent","categories","id","tags","usedPostType","blockContexts","map","post","_post$class_list","postId","class_list","blockProps","children","setDisplayLayout","newDisplayLayout","displayLayoutControls","icon","title","isActive","controls","blockContext","value"],"sources":["@wordpress/block-library/src/post-template/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { memo, useMemo, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tBlockContextProvider,\n\t__experimentalUseBlockPreview as useBlockPreview,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Spinner, ToolbarGroup } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { list, grid } from '@wordpress/icons';\n\nconst TEMPLATE = [\n\t[ 'core/post-title' ],\n\t[ 'core/post-date' ],\n\t[ 'core/post-excerpt' ],\n];\n\nfunction PostTemplateInnerBlocks( { classList } ) {\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{ className: clsx( 'wp-block-post', classList ) },\n\t\t{ template: TEMPLATE, __unstableDisableLayoutClassNames: true }\n\t);\n\treturn <li { ...innerBlocksProps } />;\n}\n\nfunction PostTemplateBlockPreview( {\n\tblocks,\n\tblockContextId,\n\tclassList,\n\tisHidden,\n\tsetActiveBlockContextId,\n} ) {\n\tconst blockPreviewProps = useBlockPreview( {\n\t\tblocks,\n\t\tprops: {\n\t\t\tclassName: clsx( 'wp-block-post', classList ),\n\t\t},\n\t} );\n\n\tconst handleOnClick = () => {\n\t\tsetActiveBlockContextId( blockContextId );\n\t};\n\n\tconst style = {\n\t\tdisplay: isHidden ? 'none' : undefined,\n\t};\n\n\treturn (\n\t\t<li\n\t\t\t{ ...blockPreviewProps }\n\t\t\ttabIndex={ 0 }\n\t\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role\n\t\t\trole=\"button\"\n\t\t\tonClick={ handleOnClick }\n\t\t\tonKeyPress={ handleOnClick }\n\t\t\tstyle={ style }\n\t\t/>\n\t);\n}\n\nconst MemoizedPostTemplateBlockPreview = memo( PostTemplateBlockPreview );\n\nexport default function PostTemplateEdit( {\n\tsetAttributes,\n\tclientId,\n\tcontext: {\n\t\tquery: {\n\t\t\tperPage,\n\t\t\toffset = 0,\n\t\t\tpostType,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tpages,\n\t\t\tformat,\n\t\t\t// We gather extra query args to pass to the REST API call.\n\t\t\t// This way extenders of Query Loop can add their own query args,\n\t\t\t// and have accurate previews in the editor.\n\t\t\t// Noting though that these args should either be supported by the\n\t\t\t// REST API or be handled by custom REST filters like `rest_{$this->post_type}_query`.\n\t\t\t...restQueryArgs\n\t\t} = {},\n\t\ttemplateSlug,\n\t\tpreviewPostType,\n\t},\n\tattributes: { layout },\n\t__unstableLayoutClassNames,\n} ) {\n\tconst { type: layoutType, columnCount = 3 } = layout || {};\n\tconst [ activeBlockContextId, setActiveBlockContextId ] = useState();\n\tconst { posts, blocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomies } = select( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\t\t\tconst templateCategory =\n\t\t\t\tinherit &&\n\t\t\t\ttemplateSlug?.startsWith( 'category-' ) &&\n\t\t\t\tgetEntityRecords( 'taxonomy', 'category', {\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t\tper_page: 1,\n\t\t\t\t\t_fields: [ 'id' ],\n\t\t\t\t\tslug: templateSlug.replace( 'category-', '' ),\n\t\t\t\t} );\n\t\t\tconst templateTag =\n\t\t\t\tinherit &&\n\t\t\t\ttemplateSlug?.startsWith( 'tag-' ) &&\n\t\t\t\tgetEntityRecords( 'taxonomy', 'post_tag', {\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t\tper_page: 1,\n\t\t\t\t\t_fields: [ 'id' ],\n\t\t\t\t\tslug: templateSlug.replace( 'tag-', '' ),\n\t\t\t\t} );\n\t\t\tconst query = {\n\t\t\t\toffset: offset || 0,\n\t\t\t\torder,\n\t\t\t\torderby: orderBy,\n\t\t\t};\n\t\t\t// There is no need to build the taxQuery if we inherit.\n\t\t\tif ( taxQuery && ! inherit ) {\n\t\t\t\tconst taxonomies = getTaxonomies( {\n\t\t\t\t\ttype: postType,\n\t\t\t\t\tper_page: -1,\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t} );\n\t\t\t\t// We have to build the tax query for the REST API and use as\n\t\t\t\t// keys the taxonomies `rest_base` with the `term ids` as values.\n\t\t\t\tconst builtTaxQuery = Object.entries( taxQuery ).reduce(\n\t\t\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\t\t\tconst taxonomy = taxonomies?.find(\n\t\t\t\t\t\t\t( { slug } ) => slug === taxonomySlug\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( taxonomy?.rest_base ) {\n\t\t\t\t\t\t\taccumulator[ taxonomy?.rest_base ] = terms;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn accumulator;\n\t\t\t\t\t},\n\t\t\t\t\t{}\n\t\t\t\t);\n\t\t\t\tif ( !! Object.keys( builtTaxQuery ).length ) {\n\t\t\t\t\tObject.assign( query, builtTaxQuery );\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( perPage ) {\n\t\t\t\tquery.per_page = perPage;\n\t\t\t}\n\t\t\tif ( author ) {\n\t\t\t\tquery.author = author;\n\t\t\t}\n\t\t\tif ( search ) {\n\t\t\t\tquery.search = search;\n\t\t\t}\n\t\t\tif ( exclude?.length ) {\n\t\t\t\tquery.exclude = exclude;\n\t\t\t}\n\t\t\tif ( parents?.length ) {\n\t\t\t\tquery.parent = parents;\n\t\t\t}\n\t\t\tif ( format?.length ) {\n\t\t\t\tquery.format = format;\n\t\t\t}\n\n\t\t\t// If sticky is not set, it will return all posts in the results.\n\t\t\t// If sticky is set to `only`, it will limit the results to sticky posts only.\n\t\t\t// If it is anything else, it will exclude sticky posts from results. For the record the value stored is `exclude`.\n\t\t\tif ( sticky ) {\n\t\t\t\tquery.sticky = sticky === 'only';\n\t\t\t}\n\t\t\t// If `inherit` is truthy, adjust conditionally the query to create a better preview.\n\t\t\tif ( inherit ) {\n\t\t\t\t// Change the post-type if needed.\n\t\t\t\tif ( templateSlug?.startsWith( 'archive-' ) ) {\n\t\t\t\t\tquery.postType = templateSlug.replace( 'archive-', '' );\n\t\t\t\t\tpostType = query.postType;\n\t\t\t\t} else if ( templateCategory ) {\n\t\t\t\t\tquery.categories = templateCategory[ 0 ]?.id;\n\t\t\t\t} else if ( templateTag ) {\n\t\t\t\t\tquery.tags = templateTag[ 0 ]?.id;\n\t\t\t\t} else if (\n\t\t\t\t\ttemplateSlug?.startsWith( 'taxonomy-post_format' )\n\t\t\t\t) {\n\t\t\t\t\t// Get the post format slug from the template slug by removing the prefix.\n\t\t\t\t\tquery.format = templateSlug.replace(\n\t\t\t\t\t\t'taxonomy-post_format-post-format-',\n\t\t\t\t\t\t''\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t\t// When we preview Query Loop blocks we should prefer the current\n\t\t\t// block's postType, which is passed through block context.\n\t\t\tconst usedPostType = previewPostType || postType;\n\t\t\treturn {\n\t\t\t\tposts: getEntityRecords( 'postType', usedPostType, {\n\t\t\t\t\t...query,\n\t\t\t\t\t...restQueryArgs,\n\t\t\t\t} ),\n\t\t\t\tblocks: getBlocks( clientId ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tperPage,\n\t\t\toffset,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tclientId,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\tpostType,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttemplateSlug,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tformat,\n\t\t\trestQueryArgs,\n\t\t\tpreviewPostType,\n\t\t]\n\t);\n\tconst blockContexts = useMemo(\n\t\t() =>\n\t\t\tposts?.map( ( post ) => ( {\n\t\t\t\tpostType: post.type,\n\t\t\t\tpostId: post.id,\n\t\t\t\tclassList: post.class_list ?? '',\n\t\t\t} ) ),\n\t\t[ posts ]\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( __unstableLayoutClassNames, {\n\t\t\t[ `columns-${ columnCount }` ]:\n\t\t\t\tlayoutType === 'grid' && columnCount, // Ensure column count is flagged via classname for backwards compatibility.\n\t\t} ),\n\t} );\n\n\tif ( ! posts ) {\n\t\treturn (\n\t\t\t<p { ...blockProps }>\n\t\t\t\t<Spinner />\n\t\t\t</p>\n\t\t);\n\t}\n\n\tif ( ! posts.length ) {\n\t\treturn <p { ...blockProps }> { __( 'No results found.' ) }</p>;\n\t}\n\n\tconst setDisplayLayout = ( newDisplayLayout ) =>\n\t\tsetAttributes( {\n\t\t\tlayout: { ...layout, ...newDisplayLayout },\n\t\t} );\n\n\tconst displayLayoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: _x( 'List view', 'Post template block display setting' ),\n\t\t\tonClick: () => setDisplayLayout( { type: 'default' } ),\n\t\t\tisActive: layoutType === 'default' || layoutType === 'constrained',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: _x( 'Grid view', 'Post template block display setting' ),\n\t\t\tonClick: () =>\n\t\t\t\tsetDisplayLayout( {\n\t\t\t\t\ttype: 'grid',\n\t\t\t\t\tcolumnCount,\n\t\t\t\t} ),\n\t\t\tisActive: layoutType === 'grid',\n\t\t},\n\t];\n\n\t// To avoid flicker when switching active block contexts, a preview is rendered\n\t// for each block context, but the preview for the active block context is hidden.\n\t// This ensures that when it is displayed again, the cached rendering of the\n\t// block preview is used, instead of having to re-render the preview from scratch.\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ displayLayoutControls } />\n\t\t\t</BlockControls>\n\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ blockContexts &&\n\t\t\t\t\tblockContexts.map( ( blockContext ) => (\n\t\t\t\t\t\t<BlockContextProvider\n\t\t\t\t\t\t\tkey={ blockContext.postId }\n\t\t\t\t\t\t\tvalue={ blockContext }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ blockContext.postId ===\n\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId ) ? (\n\t\t\t\t\t\t\t\t<PostTemplateInnerBlocks\n\t\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : null }\n\t\t\t\t\t\t\t<MemoizedPostTemplateBlockPreview\n\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\tblockContextId={ blockContext.postId }\n\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\tsetActiveBlockContextId={\n\t\t\t\t\t\t\t\t\tsetActiveBlockContextId\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisHidden={\n\t\t\t\t\t\t\t\t\tblockContext.postId ===\n\t\t\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t\t) ) }\n\t\t\t</ul>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -16,7 +16,7 @@ const metadata = {
16
16
  parent: ["core/query"],
17
17
  description: "Contains the block elements used to render a post, like the title, date, featured image, content or excerpt, and more.",
18
18
  textdomain: "default",
19
- usesContext: ["queryId", "query", "displayLayout", "templateSlug", "previewPostType", "enhancedPagination"],
19
+ usesContext: ["queryId", "query", "displayLayout", "templateSlug", "previewPostType", "enhancedPagination", "postType"],
20
20
  supports: {
21
21
  reusable: false,
22
22
  html: false,
@@ -18,11 +18,9 @@ export default function EnhancedPaginationControl({
18
18
  hasUnsupportedBlocks
19
19
  } = useUnsupportedBlocks(clientId);
20
20
  const fullPageClientSideNavigation = window.__experimentalFullPageClientSideNavigation;
21
- let help = __('Browsing between pages requires a full page reload.');
21
+ let help = __('Reload the full page—instead of just the posts list—when visitors navigate between pages.');
22
22
  if (fullPageClientSideNavigation) {
23
23
  help = __('Experimental full-page client-side navigation setting enabled.');
24
- } else if (enhancedPagination) {
25
- help = __('Reload the full page—instead of just the posts list—when visitors navigate between pages.');
26
24
  } else if (hasUnsupportedBlocks) {
27
25
  help = __('Enhancement disabled because there are non-compatible blocks inside the Query block.');
28
26
  }
@@ -1 +1 @@
1
- {"version":3,"names":["ToggleControl","__","useUnsupportedBlocks","jsx","_jsx","Fragment","_Fragment","EnhancedPaginationControl","enhancedPagination","setAttributes","clientId","hasUnsupportedBlocks","fullPageClientSideNavigation","window","__experimentalFullPageClientSideNavigation","help","children","__nextHasNoMarginBottom","label","checked","disabled","onChange","value"],"sources":["@wordpress/block-library/src/query/edit/inspector-controls/enhanced-pagination-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { ToggleControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useUnsupportedBlocks } from '../../utils';\n\nexport default function EnhancedPaginationControl( {\n\tenhancedPagination,\n\tsetAttributes,\n\tclientId,\n} ) {\n\tconst { hasUnsupportedBlocks } = useUnsupportedBlocks( clientId );\n\tconst fullPageClientSideNavigation =\n\t\twindow.__experimentalFullPageClientSideNavigation;\n\n\tlet help = __( 'Browsing between pages requires a full page reload.' );\n\tif ( fullPageClientSideNavigation ) {\n\t\thelp = __(\n\t\t\t'Experimental full-page client-side navigation setting enabled.'\n\t\t);\n\t} else if ( enhancedPagination ) {\n\t\thelp = __(\n\t\t\t'Reload the full page—instead of just the posts list—when visitors navigate between pages.'\n\t\t);\n\t} else if ( hasUnsupportedBlocks ) {\n\t\thelp = __(\n\t\t\t'Enhancement disabled because there are non-compatible blocks inside the Query block.'\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ToggleControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Reload full page' ) }\n\t\t\t\thelp={ help }\n\t\t\t\tchecked={\n\t\t\t\t\t! enhancedPagination && ! fullPageClientSideNavigation\n\t\t\t\t}\n\t\t\t\tdisabled={\n\t\t\t\t\thasUnsupportedBlocks || fullPageClientSideNavigation\n\t\t\t\t}\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tenhancedPagination: ! value,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,SAASC,oBAAoB,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA;AAEnD,eAAe,SAASC,yBAAyBA,CAAE;EAClDC,kBAAkB;EAClBC,aAAa;EACbC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC;EAAqB,CAAC,GAAGT,oBAAoB,CAAEQ,QAAS,CAAC;EACjE,MAAME,4BAA4B,GACjCC,MAAM,CAACC,0CAA0C;EAElD,IAAIC,IAAI,GAAGd,EAAE,CAAE,qDAAsD,CAAC;EACtE,IAAKW,4BAA4B,EAAG;IACnCG,IAAI,GAAGd,EAAE,CACR,gEACD,CAAC;EACF,CAAC,MAAM,IAAKO,kBAAkB,EAAG;IAChCO,IAAI,GAAGd,EAAE,CACR,2FACD,CAAC;EACF,CAAC,MAAM,IAAKU,oBAAoB,EAAG;IAClCI,IAAI,GAAGd,EAAE,CACR,sFACD,CAAC;EACF;EAEA,oBACCG,IAAA,CAAAE,SAAA;IAAAU,QAAA,eACCZ,IAAA,CAACJ,aAAa;MACbiB,uBAAuB;MACvBC,KAAK,EAAGjB,EAAE,CAAE,kBAAmB,CAAG;MAClCc,IAAI,EAAGA,IAAM;MACbI,OAAO,EACN,CAAEX,kBAAkB,IAAI,CAAEI,4BAC1B;MACDQ,QAAQ,EACPT,oBAAoB,IAAIC,4BACxB;MACDS,QAAQ,EAAKC,KAAK,IAAM;QACvBb,aAAa,CAAE;UACdD,kBAAkB,EAAE,CAAEc;QACvB,CAAE,CAAC;MACJ;IAAG,CACH;EAAC,CACD,CAAC;AAEL","ignoreList":[]}
1
+ {"version":3,"names":["ToggleControl","__","useUnsupportedBlocks","jsx","_jsx","Fragment","_Fragment","EnhancedPaginationControl","enhancedPagination","setAttributes","clientId","hasUnsupportedBlocks","fullPageClientSideNavigation","window","__experimentalFullPageClientSideNavigation","help","children","__nextHasNoMarginBottom","label","checked","disabled","onChange","value"],"sources":["@wordpress/block-library/src/query/edit/inspector-controls/enhanced-pagination-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { ToggleControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useUnsupportedBlocks } from '../../utils';\n\nexport default function EnhancedPaginationControl( {\n\tenhancedPagination,\n\tsetAttributes,\n\tclientId,\n} ) {\n\tconst { hasUnsupportedBlocks } = useUnsupportedBlocks( clientId );\n\tconst fullPageClientSideNavigation =\n\t\twindow.__experimentalFullPageClientSideNavigation;\n\n\tlet help = __(\n\t\t'Reload the full page—instead of just the posts list—when visitors navigate between pages.'\n\t);\n\tif ( fullPageClientSideNavigation ) {\n\t\thelp = __(\n\t\t\t'Experimental full-page client-side navigation setting enabled.'\n\t\t);\n\t} else if ( hasUnsupportedBlocks ) {\n\t\thelp = __(\n\t\t\t'Enhancement disabled because there are non-compatible blocks inside the Query block.'\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ToggleControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Reload full page' ) }\n\t\t\t\thelp={ help }\n\t\t\t\tchecked={\n\t\t\t\t\t! enhancedPagination && ! fullPageClientSideNavigation\n\t\t\t\t}\n\t\t\t\tdisabled={\n\t\t\t\t\thasUnsupportedBlocks || fullPageClientSideNavigation\n\t\t\t\t}\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tenhancedPagination: ! value,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,SAASC,oBAAoB,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA;AAEnD,eAAe,SAASC,yBAAyBA,CAAE;EAClDC,kBAAkB;EAClBC,aAAa;EACbC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC;EAAqB,CAAC,GAAGT,oBAAoB,CAAEQ,QAAS,CAAC;EACjE,MAAME,4BAA4B,GACjCC,MAAM,CAACC,0CAA0C;EAElD,IAAIC,IAAI,GAAGd,EAAE,CACZ,2FACD,CAAC;EACD,IAAKW,4BAA4B,EAAG;IACnCG,IAAI,GAAGd,EAAE,CACR,gEACD,CAAC;EACF,CAAC,MAAM,IAAKU,oBAAoB,EAAG;IAClCI,IAAI,GAAGd,EAAE,CACR,sFACD,CAAC;EACF;EAEA,oBACCG,IAAA,CAAAE,SAAA;IAAAU,QAAA,eACCZ,IAAA,CAACJ,aAAa;MACbiB,uBAAuB;MACvBC,KAAK,EAAGjB,EAAE,CAAE,kBAAmB,CAAG;MAClCc,IAAI,EAAGA,IAAM;MACbI,OAAO,EACN,CAAEX,kBAAkB,IAAI,CAAEI,4BAC1B;MACDQ,QAAQ,EACPT,oBAAoB,IAAIC,4BACxB;MACDS,QAAQ,EAAKC,KAAK,IAAM;QACvBb,aAAa,CAAE;UACdD,kBAAkB,EAAE,CAAEc;QACvB,CAAE,CAAC;MACJ;IAAG,CACH;EAAC,CACD,CAAC;AAEL","ignoreList":[]}
@@ -5,7 +5,6 @@ import { PanelBody, TextControl, SelectControl, RangeControl, __experimentalTogg
5
5
  import { useSelect } from '@wordpress/data';
6
6
  import { store as coreStore } from '@wordpress/core-data';
7
7
  import { __ } from '@wordpress/i18n';
8
- import { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';
9
8
  import { debounce } from '@wordpress/compose';
10
9
  import { useEffect, useState, useCallback } from '@wordpress/element';
11
10
 
@@ -18,23 +17,18 @@ import ParentControl from './parent-control';
18
17
  import { TaxonomyControls } from './taxonomy-controls';
19
18
  import FormatControls from './format-controls';
20
19
  import StickyControl from './sticky-control';
21
- import CreateNewPostLink from './create-new-post-link';
22
20
  import PerPageControl from './per-page-control';
23
21
  import OffsetControl from './offset-controls';
24
22
  import PagesControl from './pages-control';
25
- import { unlock } from '../../../lock-unlock';
26
23
  import { usePostTypes, useIsPostTypeHierarchical, useAllowedControls, isControlAllowed, useTaxonomies } from '../../utils';
27
24
  import { useToolsPanelDropdownMenuProps } from '../../../utils/hooks';
28
25
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
29
- const {
30
- BlockInfo
31
- } = unlock(blockEditorPrivateApis);
32
26
  export default function QueryInspectorControls(props) {
33
27
  const {
34
28
  attributes,
35
29
  setQuery,
36
30
  setDisplayLayout,
37
- isTemplate
31
+ isSingular
38
32
  } = props;
39
33
  const {
40
34
  query,
@@ -103,7 +97,7 @@ export default function QueryInspectorControls(props) {
103
97
  onChangeDebounced();
104
98
  return onChangeDebounced.cancel;
105
99
  }, [querySearch, onChangeDebounced]);
106
- const showInheritControl = isTemplate && isControlAllowed(allowedControls, 'inherit');
100
+ const showInheritControl = !isSingular && isControlAllowed(allowedControls, 'inherit');
107
101
  const showPostTypeControl = !inherit && isControlAllowed(allowedControls, 'postType');
108
102
  const postTypeControlLabel = __('Post type');
109
103
  const postTypeControlHelp = __('Select the type of content to display: posts, pages, or custom post types.');
@@ -134,11 +128,7 @@ export default function QueryInspectorControls(props) {
134
128
  const showPagesControl = isControlAllowed(allowedControls, 'pages');
135
129
  const showDisplayPanel = showPostCountControl || showOffSetControl || showPagesControl;
136
130
  return /*#__PURE__*/_jsxs(_Fragment, {
137
- children: [!!postType && /*#__PURE__*/_jsx(BlockInfo, {
138
- children: /*#__PURE__*/_jsx(CreateNewPostLink, {
139
- postType: postType
140
- })
141
- }), showSettingsPanel && /*#__PURE__*/_jsxs(PanelBody, {
131
+ children: [showSettingsPanel && /*#__PURE__*/_jsxs(PanelBody, {
142
132
  title: __('Settings'),
143
133
  children: [showInheritControl && /*#__PURE__*/_jsxs(ToggleGroupControl, {
144
134
  __next40pxDefaultSize: true,
@@ -1 +1 @@
1
- {"version":3,"names":["PanelBody","TextControl","SelectControl","RangeControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","Notice","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","useSelect","store","coreStore","__","privateApis","blockEditorPrivateApis","debounce","useEffect","useState","useCallback","OrderControl","AuthorControl","ParentControl","TaxonomyControls","FormatControls","StickyControl","CreateNewPostLink","PerPageControl","OffsetControl","PagesControl","unlock","usePostTypes","useIsPostTypeHierarchical","useAllowedControls","isControlAllowed","useTaxonomies","useToolsPanelDropdownMenuProps","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","BlockInfo","QueryInspectorControls","props","attributes","setQuery","setDisplayLayout","isTemplate","query","displayLayout","order","orderBy","author","authorIds","pages","postType","perPage","offset","sticky","inherit","taxQuery","parents","format","allowedControls","showSticky","postTypesTaxonomiesMap","postTypesSelectOptions","postTypeFormatSupportMap","taxonomies","isPostTypeHierarchical","onPostTypeChange","newValue","updateQuery","supportedTaxonomies","updatedTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","includes","keys","length","undefined","hasFormatSupport","querySearch","setQuerySearch","search","onChangeDebounced","cancel","showInheritControl","showPostTypeControl","postTypeControlLabel","postTypeControlHelp","showColumnsControl","showOrderControl","showStickyControl","showSettingsPanel","showTaxControl","showAuthorControl","showSearchControl","showParentControl","postTypeHasFormatSupport","showFormatControl","select","themeSupports","getThemeSupports","formats","some","type","showFiltersPanel","dropdownMenuProps","showPostCountControl","showOffSetControl","showPagesControl","showDisplayPanel","children","title","__next40pxDefaultSize","__nextHasNoMarginBottom","label","isBlock","onChange","value","help","options","map","option","columns","min","max","Math","status","isDismissible","className","resetAll","hasValue","onDeselect","values"],"sources":["@wordpress/block-library/src/query/edit/inspector-controls/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tTextControl,\n\tSelectControl,\n\tRangeControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tNotice,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { debounce } from '@wordpress/compose';\nimport { useEffect, useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport OrderControl from './order-control';\nimport AuthorControl from './author-control';\nimport ParentControl from './parent-control';\nimport { TaxonomyControls } from './taxonomy-controls';\nimport FormatControls from './format-controls';\nimport StickyControl from './sticky-control';\nimport CreateNewPostLink from './create-new-post-link';\nimport PerPageControl from './per-page-control';\nimport OffsetControl from './offset-controls';\nimport PagesControl from './pages-control';\nimport { unlock } from '../../../lock-unlock';\nimport {\n\tusePostTypes,\n\tuseIsPostTypeHierarchical,\n\tuseAllowedControls,\n\tisControlAllowed,\n\tuseTaxonomies,\n} from '../../utils';\nimport { useToolsPanelDropdownMenuProps } from '../../../utils/hooks';\n\nconst { BlockInfo } = unlock( blockEditorPrivateApis );\n\nexport default function QueryInspectorControls( props ) {\n\tconst { attributes, setQuery, setDisplayLayout, isTemplate } = props;\n\tconst { query, displayLayout } = attributes;\n\tconst {\n\t\torder,\n\t\torderBy,\n\t\tauthor: authorIds,\n\t\tpages,\n\t\tpostType,\n\t\tperPage,\n\t\toffset,\n\t\tsticky,\n\t\tinherit,\n\t\ttaxQuery,\n\t\tparents,\n\t\tformat,\n\t} = query;\n\tconst allowedControls = useAllowedControls( attributes );\n\tconst showSticky = postType === 'post';\n\tconst {\n\t\tpostTypesTaxonomiesMap,\n\t\tpostTypesSelectOptions,\n\t\tpostTypeFormatSupportMap,\n\t} = usePostTypes();\n\tconst taxonomies = useTaxonomies( postType );\n\tconst isPostTypeHierarchical = useIsPostTypeHierarchical( postType );\n\tconst onPostTypeChange = ( newValue ) => {\n\t\tconst updateQuery = { postType: newValue };\n\t\t// We need to dynamically update the `taxQuery` property,\n\t\t// by removing any not supported taxonomy from the query.\n\t\tconst supportedTaxonomies = postTypesTaxonomiesMap[ newValue ];\n\t\tconst updatedTaxQuery = Object.entries( taxQuery || {} ).reduce(\n\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\tif ( supportedTaxonomies.includes( taxonomySlug ) ) {\n\t\t\t\t\taccumulator[ taxonomySlug ] = terms;\n\t\t\t\t}\n\t\t\t\treturn accumulator;\n\t\t\t},\n\t\t\t{}\n\t\t);\n\t\tupdateQuery.taxQuery = !! Object.keys( updatedTaxQuery ).length\n\t\t\t? updatedTaxQuery\n\t\t\t: undefined;\n\n\t\tif ( newValue !== 'post' ) {\n\t\t\tupdateQuery.sticky = '';\n\t\t}\n\t\t// We need to reset `parents` because they are tied to each post type.\n\t\tupdateQuery.parents = [];\n\t\t// Post types can register post format support with `add_post_type_support`.\n\t\t// But we need to reset the `format` property when switching to post types\n\t\t// that do not support post formats.\n\t\tconst hasFormatSupport = postTypeFormatSupportMap[ newValue ];\n\t\tif ( ! hasFormatSupport ) {\n\t\t\tupdateQuery.format = [];\n\t\t}\n\n\t\tsetQuery( updateQuery );\n\t};\n\tconst [ querySearch, setQuerySearch ] = useState( query.search );\n\tconst onChangeDebounced = useCallback(\n\t\tdebounce( () => {\n\t\t\tif ( query.search !== querySearch ) {\n\t\t\t\tsetQuery( { search: querySearch } );\n\t\t\t}\n\t\t}, 250 ),\n\t\t[ querySearch, query.search ]\n\t);\n\tuseEffect( () => {\n\t\tonChangeDebounced();\n\t\treturn onChangeDebounced.cancel;\n\t}, [ querySearch, onChangeDebounced ] );\n\n\tconst showInheritControl =\n\t\tisTemplate && isControlAllowed( allowedControls, 'inherit' );\n\tconst showPostTypeControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'postType' );\n\tconst postTypeControlLabel = __( 'Post type' );\n\tconst postTypeControlHelp = __(\n\t\t'Select the type of content to display: posts, pages, or custom post types.'\n\t);\n\tconst showColumnsControl = false;\n\tconst showOrderControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'order' );\n\tconst showStickyControl =\n\t\t! inherit &&\n\t\tshowSticky &&\n\t\tisControlAllowed( allowedControls, 'sticky' );\n\tconst showSettingsPanel =\n\t\tshowInheritControl ||\n\t\tshowPostTypeControl ||\n\t\tshowColumnsControl ||\n\t\tshowOrderControl ||\n\t\tshowStickyControl;\n\tconst showTaxControl =\n\t\t!! taxonomies?.length &&\n\t\tisControlAllowed( allowedControls, 'taxQuery' );\n\tconst showAuthorControl = isControlAllowed( allowedControls, 'author' );\n\tconst showSearchControl = isControlAllowed( allowedControls, 'search' );\n\tconst showParentControl =\n\t\tisControlAllowed( allowedControls, 'parents' ) &&\n\t\tisPostTypeHierarchical;\n\n\tconst postTypeHasFormatSupport = postTypeFormatSupportMap[ postType ];\n\tconst showFormatControl = useSelect(\n\t\t( select ) => {\n\t\t\t// Check if the post type supports post formats and if the control is allowed.\n\t\t\tif (\n\t\t\t\t! postTypeHasFormatSupport ||\n\t\t\t\t! isControlAllowed( allowedControls, 'format' )\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tconst themeSupports = select( coreStore ).getThemeSupports();\n\n\t\t\t// If there are no supported formats, getThemeSupports still includes the default 'standard' format,\n\t\t\t// and in this case the control should not be shown since the user has no other formats to choose from.\n\t\t\treturn (\n\t\t\t\tthemeSupports.formats &&\n\t\t\t\tthemeSupports.formats.length > 0 &&\n\t\t\t\tthemeSupports.formats.some( ( type ) => type !== 'standard' )\n\t\t\t);\n\t\t},\n\t\t[ allowedControls, postTypeHasFormatSupport ]\n\t);\n\n\tconst showFiltersPanel =\n\t\tshowTaxControl ||\n\t\tshowAuthorControl ||\n\t\tshowSearchControl ||\n\t\tshowParentControl ||\n\t\tshowFormatControl;\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst showPostCountControl = isControlAllowed(\n\t\tallowedControls,\n\t\t'postCount'\n\t);\n\tconst showOffSetControl = isControlAllowed( allowedControls, 'offset' );\n\tconst showPagesControl = isControlAllowed( allowedControls, 'pages' );\n\n\tconst showDisplayPanel =\n\t\tshowPostCountControl || showOffSetControl || showPagesControl;\n\n\treturn (\n\t\t<>\n\t\t\t{ !! postType && (\n\t\t\t\t<BlockInfo>\n\t\t\t\t\t<CreateNewPostLink postType={ postType } />\n\t\t\t\t</BlockInfo>\n\t\t\t) }\n\t\t\t{ showSettingsPanel && (\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t{ showInheritControl && (\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Query type' ) }\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tsetQuery( { inherit: value === 'default' } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\tinherit\n\t\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t\t'Display a list of posts or custom post types based on the current template.'\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t\t\t'Display a list of posts or custom post types based on specific criteria.'\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvalue={ !! inherit ? 'default' : 'custom' }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"default\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Default' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"custom\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Custom' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showPostTypeControl &&\n\t\t\t\t\t\t( postTypesSelectOptions.length > 2 ? (\n\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\toptions={ postTypesSelectOptions }\n\t\t\t\t\t\t\t\tvalue={ postType }\n\t\t\t\t\t\t\t\tlabel={ postTypeControlLabel }\n\t\t\t\t\t\t\t\tonChange={ onPostTypeChange }\n\t\t\t\t\t\t\t\thelp={ postTypeControlHelp }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\t\tvalue={ postType }\n\t\t\t\t\t\t\t\tlabel={ postTypeControlLabel }\n\t\t\t\t\t\t\t\tonChange={ onPostTypeChange }\n\t\t\t\t\t\t\t\thelp={ postTypeControlHelp }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ postTypesSelectOptions.map( ( option ) => (\n\t\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\t\tkey={ option.value }\n\t\t\t\t\t\t\t\t\t\tvalue={ option.value }\n\t\t\t\t\t\t\t\t\t\tlabel={ option.label }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t) ) }\n\n\t\t\t\t\t{ showColumnsControl && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\t\tvalue={ displayLayout.columns }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetDisplayLayout( {\n\t\t\t\t\t\t\t\t\t\tcolumns: value,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\t\t\tmax={ Math.max( 6, displayLayout.columns ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ displayLayout.columns > 6 && (\n\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'This column count exceeds the recommended amount and may cause visual breakage.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Notice>\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{ showOrderControl && (\n\t\t\t\t\t\t<OrderControl\n\t\t\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showStickyControl && (\n\t\t\t\t\t\t<StickyControl\n\t\t\t\t\t\t\tvalue={ sticky }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetQuery( { sticky: value } )\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</PanelBody>\n\t\t\t) }\n\t\t\t{ ! inherit && showDisplayPanel && (\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tclassName=\"block-library-query-toolspanel__display\"\n\t\t\t\t\tlabel={ __( 'Display' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\t\toffset: 0,\n\t\t\t\t\t\t\tpages: 0,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Items per page' ) }\n\t\t\t\t\t\thasValue={ () => perPage > 0 }\n\t\t\t\t\t>\n\t\t\t\t\t\t<PerPageControl\n\t\t\t\t\t\t\tperPage={ perPage }\n\t\t\t\t\t\t\toffset={ offset }\n\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Offset' ) }\n\t\t\t\t\t\thasValue={ () => offset > 0 }\n\t\t\t\t\t\tonDeselect={ () => setQuery( { offset: 0 } ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<OffsetControl\n\t\t\t\t\t\t\toffset={ offset }\n\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Max pages to show' ) }\n\t\t\t\t\t\thasValue={ () => pages > 0 }\n\t\t\t\t\t\tonDeselect={ () => setQuery( { pages: 0 } ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<PagesControl pages={ pages } onChange={ setQuery } />\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t</ToolsPanel>\n\t\t\t) }\n\t\t\t{ ! inherit && showFiltersPanel && (\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tclassName=\"block-library-query-toolspanel__filters\" // unused but kept for backward compatibility\n\t\t\t\t\tlabel={ __( 'Filters' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\t\tauthor: '',\n\t\t\t\t\t\t\tparents: [],\n\t\t\t\t\t\t\tsearch: '',\n\t\t\t\t\t\t\ttaxQuery: null,\n\t\t\t\t\t\t\tformat: [],\n\t\t\t\t\t\t} );\n\t\t\t\t\t\tsetQuerySearch( '' );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t{ showTaxControl && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Taxonomies' ) }\n\t\t\t\t\t\t\thasValue={ () =>\n\t\t\t\t\t\t\t\tObject.values( taxQuery || {} ).some(\n\t\t\t\t\t\t\t\t\t( terms ) => !! terms.length\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonDeselect={ () => setQuery( { taxQuery: null } ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TaxonomyControls\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\tquery={ query }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showAuthorControl && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => !! authorIds }\n\t\t\t\t\t\t\tlabel={ __( 'Authors' ) }\n\t\t\t\t\t\t\tonDeselect={ () => setQuery( { author: '' } ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<AuthorControl\n\t\t\t\t\t\t\t\tvalue={ authorIds }\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showSearchControl && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => !! querySearch }\n\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\tonDeselect={ () => setQuerySearch( '' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\t\tvalue={ querySearch }\n\t\t\t\t\t\t\t\tonChange={ setQuerySearch }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showParentControl && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => !! parents?.length }\n\t\t\t\t\t\t\tlabel={ __( 'Parents' ) }\n\t\t\t\t\t\t\tonDeselect={ () => setQuery( { parents: [] } ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ParentControl\n\t\t\t\t\t\t\t\tparents={ parents }\n\t\t\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showFormatControl && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => !! format?.length }\n\t\t\t\t\t\t\tlabel={ __( 'Formats' ) }\n\t\t\t\t\t\t\tonDeselect={ () => setQuery( { format: [] } ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FormatControls\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\tquery={ query }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PanelBody","TextControl","SelectControl","RangeControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","Notice","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","useSelect","store","coreStore","__","debounce","useEffect","useState","useCallback","OrderControl","AuthorControl","ParentControl","TaxonomyControls","FormatControls","StickyControl","PerPageControl","OffsetControl","PagesControl","usePostTypes","useIsPostTypeHierarchical","useAllowedControls","isControlAllowed","useTaxonomies","useToolsPanelDropdownMenuProps","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","QueryInspectorControls","props","attributes","setQuery","setDisplayLayout","isSingular","query","displayLayout","order","orderBy","author","authorIds","pages","postType","perPage","offset","sticky","inherit","taxQuery","parents","format","allowedControls","showSticky","postTypesTaxonomiesMap","postTypesSelectOptions","postTypeFormatSupportMap","taxonomies","isPostTypeHierarchical","onPostTypeChange","newValue","updateQuery","supportedTaxonomies","updatedTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","includes","keys","length","undefined","hasFormatSupport","querySearch","setQuerySearch","search","onChangeDebounced","cancel","showInheritControl","showPostTypeControl","postTypeControlLabel","postTypeControlHelp","showColumnsControl","showOrderControl","showStickyControl","showSettingsPanel","showTaxControl","showAuthorControl","showSearchControl","showParentControl","postTypeHasFormatSupport","showFormatControl","select","themeSupports","getThemeSupports","formats","some","type","showFiltersPanel","dropdownMenuProps","showPostCountControl","showOffSetControl","showPagesControl","showDisplayPanel","children","title","__next40pxDefaultSize","__nextHasNoMarginBottom","label","isBlock","onChange","value","help","options","map","option","columns","min","max","Math","status","isDismissible","className","resetAll","hasValue","onDeselect","values"],"sources":["@wordpress/block-library/src/query/edit/inspector-controls/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tTextControl,\n\tSelectControl,\n\tRangeControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tNotice,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport { debounce } from '@wordpress/compose';\nimport { useEffect, useState, useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport OrderControl from './order-control';\nimport AuthorControl from './author-control';\nimport ParentControl from './parent-control';\nimport { TaxonomyControls } from './taxonomy-controls';\nimport FormatControls from './format-controls';\nimport StickyControl from './sticky-control';\nimport PerPageControl from './per-page-control';\nimport OffsetControl from './offset-controls';\nimport PagesControl from './pages-control';\nimport {\n\tusePostTypes,\n\tuseIsPostTypeHierarchical,\n\tuseAllowedControls,\n\tisControlAllowed,\n\tuseTaxonomies,\n} from '../../utils';\nimport { useToolsPanelDropdownMenuProps } from '../../../utils/hooks';\n\nexport default function QueryInspectorControls( props ) {\n\tconst { attributes, setQuery, setDisplayLayout, isSingular } = props;\n\tconst { query, displayLayout } = attributes;\n\tconst {\n\t\torder,\n\t\torderBy,\n\t\tauthor: authorIds,\n\t\tpages,\n\t\tpostType,\n\t\tperPage,\n\t\toffset,\n\t\tsticky,\n\t\tinherit,\n\t\ttaxQuery,\n\t\tparents,\n\t\tformat,\n\t} = query;\n\tconst allowedControls = useAllowedControls( attributes );\n\tconst showSticky = postType === 'post';\n\tconst {\n\t\tpostTypesTaxonomiesMap,\n\t\tpostTypesSelectOptions,\n\t\tpostTypeFormatSupportMap,\n\t} = usePostTypes();\n\tconst taxonomies = useTaxonomies( postType );\n\tconst isPostTypeHierarchical = useIsPostTypeHierarchical( postType );\n\tconst onPostTypeChange = ( newValue ) => {\n\t\tconst updateQuery = { postType: newValue };\n\t\t// We need to dynamically update the `taxQuery` property,\n\t\t// by removing any not supported taxonomy from the query.\n\t\tconst supportedTaxonomies = postTypesTaxonomiesMap[ newValue ];\n\t\tconst updatedTaxQuery = Object.entries( taxQuery || {} ).reduce(\n\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\tif ( supportedTaxonomies.includes( taxonomySlug ) ) {\n\t\t\t\t\taccumulator[ taxonomySlug ] = terms;\n\t\t\t\t}\n\t\t\t\treturn accumulator;\n\t\t\t},\n\t\t\t{}\n\t\t);\n\t\tupdateQuery.taxQuery = !! Object.keys( updatedTaxQuery ).length\n\t\t\t? updatedTaxQuery\n\t\t\t: undefined;\n\n\t\tif ( newValue !== 'post' ) {\n\t\t\tupdateQuery.sticky = '';\n\t\t}\n\t\t// We need to reset `parents` because they are tied to each post type.\n\t\tupdateQuery.parents = [];\n\t\t// Post types can register post format support with `add_post_type_support`.\n\t\t// But we need to reset the `format` property when switching to post types\n\t\t// that do not support post formats.\n\t\tconst hasFormatSupport = postTypeFormatSupportMap[ newValue ];\n\t\tif ( ! hasFormatSupport ) {\n\t\t\tupdateQuery.format = [];\n\t\t}\n\n\t\tsetQuery( updateQuery );\n\t};\n\tconst [ querySearch, setQuerySearch ] = useState( query.search );\n\tconst onChangeDebounced = useCallback(\n\t\tdebounce( () => {\n\t\t\tif ( query.search !== querySearch ) {\n\t\t\t\tsetQuery( { search: querySearch } );\n\t\t\t}\n\t\t}, 250 ),\n\t\t[ querySearch, query.search ]\n\t);\n\tuseEffect( () => {\n\t\tonChangeDebounced();\n\t\treturn onChangeDebounced.cancel;\n\t}, [ querySearch, onChangeDebounced ] );\n\n\tconst showInheritControl =\n\t\t! isSingular && isControlAllowed( allowedControls, 'inherit' );\n\tconst showPostTypeControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'postType' );\n\tconst postTypeControlLabel = __( 'Post type' );\n\tconst postTypeControlHelp = __(\n\t\t'Select the type of content to display: posts, pages, or custom post types.'\n\t);\n\tconst showColumnsControl = false;\n\tconst showOrderControl =\n\t\t! inherit && isControlAllowed( allowedControls, 'order' );\n\tconst showStickyControl =\n\t\t! inherit &&\n\t\tshowSticky &&\n\t\tisControlAllowed( allowedControls, 'sticky' );\n\tconst showSettingsPanel =\n\t\tshowInheritControl ||\n\t\tshowPostTypeControl ||\n\t\tshowColumnsControl ||\n\t\tshowOrderControl ||\n\t\tshowStickyControl;\n\tconst showTaxControl =\n\t\t!! taxonomies?.length &&\n\t\tisControlAllowed( allowedControls, 'taxQuery' );\n\tconst showAuthorControl = isControlAllowed( allowedControls, 'author' );\n\tconst showSearchControl = isControlAllowed( allowedControls, 'search' );\n\tconst showParentControl =\n\t\tisControlAllowed( allowedControls, 'parents' ) &&\n\t\tisPostTypeHierarchical;\n\n\tconst postTypeHasFormatSupport = postTypeFormatSupportMap[ postType ];\n\tconst showFormatControl = useSelect(\n\t\t( select ) => {\n\t\t\t// Check if the post type supports post formats and if the control is allowed.\n\t\t\tif (\n\t\t\t\t! postTypeHasFormatSupport ||\n\t\t\t\t! isControlAllowed( allowedControls, 'format' )\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tconst themeSupports = select( coreStore ).getThemeSupports();\n\n\t\t\t// If there are no supported formats, getThemeSupports still includes the default 'standard' format,\n\t\t\t// and in this case the control should not be shown since the user has no other formats to choose from.\n\t\t\treturn (\n\t\t\t\tthemeSupports.formats &&\n\t\t\t\tthemeSupports.formats.length > 0 &&\n\t\t\t\tthemeSupports.formats.some( ( type ) => type !== 'standard' )\n\t\t\t);\n\t\t},\n\t\t[ allowedControls, postTypeHasFormatSupport ]\n\t);\n\n\tconst showFiltersPanel =\n\t\tshowTaxControl ||\n\t\tshowAuthorControl ||\n\t\tshowSearchControl ||\n\t\tshowParentControl ||\n\t\tshowFormatControl;\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst showPostCountControl = isControlAllowed(\n\t\tallowedControls,\n\t\t'postCount'\n\t);\n\tconst showOffSetControl = isControlAllowed( allowedControls, 'offset' );\n\tconst showPagesControl = isControlAllowed( allowedControls, 'pages' );\n\n\tconst showDisplayPanel =\n\t\tshowPostCountControl || showOffSetControl || showPagesControl;\n\n\treturn (\n\t\t<>\n\t\t\t{ showSettingsPanel && (\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t{ showInheritControl && (\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Query type' ) }\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tsetQuery( { inherit: value === 'default' } );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\tinherit\n\t\t\t\t\t\t\t\t\t? __(\n\t\t\t\t\t\t\t\t\t\t\t'Display a list of posts or custom post types based on the current template.'\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t\t\t'Display a list of posts or custom post types based on specific criteria.'\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tvalue={ !! inherit ? 'default' : 'custom' }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"default\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Default' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"custom\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Custom' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showPostTypeControl &&\n\t\t\t\t\t\t( postTypesSelectOptions.length > 2 ? (\n\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\toptions={ postTypesSelectOptions }\n\t\t\t\t\t\t\t\tvalue={ postType }\n\t\t\t\t\t\t\t\tlabel={ postTypeControlLabel }\n\t\t\t\t\t\t\t\tonChange={ onPostTypeChange }\n\t\t\t\t\t\t\t\thelp={ postTypeControlHelp }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\t\tvalue={ postType }\n\t\t\t\t\t\t\t\tlabel={ postTypeControlLabel }\n\t\t\t\t\t\t\t\tonChange={ onPostTypeChange }\n\t\t\t\t\t\t\t\thelp={ postTypeControlHelp }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ postTypesSelectOptions.map( ( option ) => (\n\t\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\t\tkey={ option.value }\n\t\t\t\t\t\t\t\t\t\tvalue={ option.value }\n\t\t\t\t\t\t\t\t\t\tlabel={ option.label }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t) ) }\n\n\t\t\t\t\t{ showColumnsControl && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\t\tvalue={ displayLayout.columns }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetDisplayLayout( {\n\t\t\t\t\t\t\t\t\t\tcolumns: value,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\t\t\tmax={ Math.max( 6, displayLayout.columns ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ displayLayout.columns > 6 && (\n\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'This column count exceeds the recommended amount and may cause visual breakage.'\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</Notice>\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{ showOrderControl && (\n\t\t\t\t\t\t<OrderControl\n\t\t\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showStickyControl && (\n\t\t\t\t\t\t<StickyControl\n\t\t\t\t\t\t\tvalue={ sticky }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetQuery( { sticky: value } )\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</PanelBody>\n\t\t\t) }\n\t\t\t{ ! inherit && showDisplayPanel && (\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tclassName=\"block-library-query-toolspanel__display\"\n\t\t\t\t\tlabel={ __( 'Display' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\t\toffset: 0,\n\t\t\t\t\t\t\tpages: 0,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Items per page' ) }\n\t\t\t\t\t\thasValue={ () => perPage > 0 }\n\t\t\t\t\t>\n\t\t\t\t\t\t<PerPageControl\n\t\t\t\t\t\t\tperPage={ perPage }\n\t\t\t\t\t\t\toffset={ offset }\n\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Offset' ) }\n\t\t\t\t\t\thasValue={ () => offset > 0 }\n\t\t\t\t\t\tonDeselect={ () => setQuery( { offset: 0 } ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<OffsetControl\n\t\t\t\t\t\t\toffset={ offset }\n\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Max pages to show' ) }\n\t\t\t\t\t\thasValue={ () => pages > 0 }\n\t\t\t\t\t\tonDeselect={ () => setQuery( { pages: 0 } ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t<PagesControl pages={ pages } onChange={ setQuery } />\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t</ToolsPanel>\n\t\t\t) }\n\t\t\t{ ! inherit && showFiltersPanel && (\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tclassName=\"block-library-query-toolspanel__filters\" // unused but kept for backward compatibility\n\t\t\t\t\tlabel={ __( 'Filters' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetQuery( {\n\t\t\t\t\t\t\tauthor: '',\n\t\t\t\t\t\t\tparents: [],\n\t\t\t\t\t\t\tsearch: '',\n\t\t\t\t\t\t\ttaxQuery: null,\n\t\t\t\t\t\t\tformat: [],\n\t\t\t\t\t\t} );\n\t\t\t\t\t\tsetQuerySearch( '' );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t{ showTaxControl && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Taxonomies' ) }\n\t\t\t\t\t\t\thasValue={ () =>\n\t\t\t\t\t\t\t\tObject.values( taxQuery || {} ).some(\n\t\t\t\t\t\t\t\t\t( terms ) => !! terms.length\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonDeselect={ () => setQuery( { taxQuery: null } ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TaxonomyControls\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\tquery={ query }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showAuthorControl && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => !! authorIds }\n\t\t\t\t\t\t\tlabel={ __( 'Authors' ) }\n\t\t\t\t\t\t\tonDeselect={ () => setQuery( { author: '' } ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<AuthorControl\n\t\t\t\t\t\t\t\tvalue={ authorIds }\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showSearchControl && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => !! querySearch }\n\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\tonDeselect={ () => setQuerySearch( '' ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tlabel={ __( 'Keyword' ) }\n\t\t\t\t\t\t\t\tvalue={ querySearch }\n\t\t\t\t\t\t\t\tonChange={ setQuerySearch }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showParentControl && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => !! parents?.length }\n\t\t\t\t\t\t\tlabel={ __( 'Parents' ) }\n\t\t\t\t\t\t\tonDeselect={ () => setQuery( { parents: [] } ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ParentControl\n\t\t\t\t\t\t\t\tparents={ parents }\n\t\t\t\t\t\t\t\tpostType={ postType }\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showFormatControl && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => !! format?.length }\n\t\t\t\t\t\t\tlabel={ __( 'Formats' ) }\n\t\t\t\t\t\t\tonDeselect={ () => setQuery( { format: [] } ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FormatControls\n\t\t\t\t\t\t\t\tonChange={ setQuery }\n\t\t\t\t\t\t\t\tquery={ query }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,6 @@
4
4
  import { useState, useMemo } from '@wordpress/element';
5
5
  import { useDispatch } from '@wordpress/data';
6
6
  import { Modal, SearchControl } from '@wordpress/components';
7
- import { useAsyncList } from '@wordpress/compose';
8
7
  import { BlockContextProvider, store as blockEditorStore, __experimentalBlockPatternsList as BlockPatternsList } from '@wordpress/block-editor';
9
8
  import { __ } from '@wordpress/i18n';
10
9
 
@@ -44,7 +43,6 @@ export default function PatternSelectionModal({
44
43
  const filteredBlockPatterns = useMemo(() => {
45
44
  return searchPatterns(blockPatterns, searchValue);
46
45
  }, [blockPatterns, searchValue]);
47
- const shownBlockPatterns = useAsyncList(filteredBlockPatterns);
48
46
  return /*#__PURE__*/_jsx(Modal, {
49
47
  overlayClassName: "block-library-query-pattern__selection-modal",
50
48
  title: __('Choose a pattern'),
@@ -65,7 +63,6 @@ export default function PatternSelectionModal({
65
63
  value: blockPreviewContext,
66
64
  children: /*#__PURE__*/_jsx(BlockPatternsList, {
67
65
  blockPatterns: filteredBlockPatterns,
68
- shownPatterns: shownBlockPatterns,
69
66
  onClickPattern: onBlockPatternSelect
70
67
  })
71
68
  })]
@@ -1 +1 @@
1
- {"version":3,"names":["useState","useMemo","useDispatch","Modal","SearchControl","useAsyncList","BlockContextProvider","store","blockEditorStore","__experimentalBlockPatternsList","BlockPatternsList","__","useBlockNameForPatterns","getTransformedBlocksFromPattern","usePatterns","searchPatterns","jsx","_jsx","jsxs","_jsxs","PatternSelectionModal","clientId","attributes","setIsPatternSelectionModalOpen","searchValue","setSearchValue","replaceBlock","selectBlock","onBlockPatternSelect","pattern","blocks","newBlocks","queryClientIds","blockPreviewContext","previewPostType","query","postType","blockNameForPatterns","blockPatterns","filteredBlockPatterns","shownBlockPatterns","overlayClassName","title","onRequestClose","isFullScreen","children","className","__nextHasNoMarginBottom","onChange","value","label","placeholder","shownPatterns","onClickPattern"],"sources":["@wordpress/block-library/src/query/edit/pattern-selection-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useMemo } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport { Modal, SearchControl } from '@wordpress/components';\nimport { useAsyncList } from '@wordpress/compose';\nimport {\n\tBlockContextProvider,\n\tstore as blockEditorStore,\n\t__experimentalBlockPatternsList as BlockPatternsList,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseBlockNameForPatterns,\n\tgetTransformedBlocksFromPattern,\n\tusePatterns,\n} from '../utils';\nimport { searchPatterns } from '../../utils/search-patterns';\n\nexport default function PatternSelectionModal( {\n\tclientId,\n\tattributes,\n\tsetIsPatternSelectionModalOpen,\n} ) {\n\tconst [ searchValue, setSearchValue ] = useState( '' );\n\tconst { replaceBlock, selectBlock } = useDispatch( blockEditorStore );\n\tconst onBlockPatternSelect = ( pattern, blocks ) => {\n\t\tconst { newBlocks, queryClientIds } = getTransformedBlocksFromPattern(\n\t\t\tblocks,\n\t\t\tattributes\n\t\t);\n\t\treplaceBlock( clientId, newBlocks );\n\t\tif ( queryClientIds[ 0 ] ) {\n\t\t\tselectBlock( queryClientIds[ 0 ] );\n\t\t}\n\t};\n\t// When we preview Query Loop blocks we should prefer the current\n\t// block's postType, which is passed through block context.\n\tconst blockPreviewContext = useMemo(\n\t\t() => ( {\n\t\t\tpreviewPostType: attributes.query.postType,\n\t\t} ),\n\t\t[ attributes.query.postType ]\n\t);\n\tconst blockNameForPatterns = useBlockNameForPatterns(\n\t\tclientId,\n\t\tattributes\n\t);\n\tconst blockPatterns = usePatterns( clientId, blockNameForPatterns );\n\tconst filteredBlockPatterns = useMemo( () => {\n\t\treturn searchPatterns( blockPatterns, searchValue );\n\t}, [ blockPatterns, searchValue ] );\n\tconst shownBlockPatterns = useAsyncList( filteredBlockPatterns );\n\n\treturn (\n\t\t<Modal\n\t\t\toverlayClassName=\"block-library-query-pattern__selection-modal\"\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tonRequestClose={ () => setIsPatternSelectionModalOpen( false ) }\n\t\t\tisFullScreen\n\t\t>\n\t\t\t<div className=\"block-library-query-pattern__selection-content\">\n\t\t\t\t<div className=\"block-library-query-pattern__selection-search\">\n\t\t\t\t\t<SearchControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tonChange={ setSearchValue }\n\t\t\t\t\t\tvalue={ searchValue }\n\t\t\t\t\t\tlabel={ __( 'Search' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<BlockContextProvider value={ blockPreviewContext }>\n\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\tblockPatterns={ filteredBlockPatterns }\n\t\t\t\t\t\tshownPatterns={ shownBlockPatterns }\n\t\t\t\t\t\tonClickPattern={ onBlockPatternSelect }\n\t\t\t\t\t/>\n\t\t\t\t</BlockContextProvider>\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useState","useMemo","useDispatch","Modal","SearchControl","BlockContextProvider","store","blockEditorStore","__experimentalBlockPatternsList","BlockPatternsList","__","useBlockNameForPatterns","getTransformedBlocksFromPattern","usePatterns","searchPatterns","jsx","_jsx","jsxs","_jsxs","PatternSelectionModal","clientId","attributes","setIsPatternSelectionModalOpen","searchValue","setSearchValue","replaceBlock","selectBlock","onBlockPatternSelect","pattern","blocks","newBlocks","queryClientIds","blockPreviewContext","previewPostType","query","postType","blockNameForPatterns","blockPatterns","filteredBlockPatterns","overlayClassName","title","onRequestClose","isFullScreen","children","className","__nextHasNoMarginBottom","onChange","value","label","placeholder","onClickPattern"],"sources":["@wordpress/block-library/src/query/edit/pattern-selection-modal.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState, useMemo } from '@wordpress/element';\nimport { useDispatch } from '@wordpress/data';\nimport { Modal, SearchControl } from '@wordpress/components';\nimport {\n\tBlockContextProvider,\n\tstore as blockEditorStore,\n\t__experimentalBlockPatternsList as BlockPatternsList,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseBlockNameForPatterns,\n\tgetTransformedBlocksFromPattern,\n\tusePatterns,\n} from '../utils';\nimport { searchPatterns } from '../../utils/search-patterns';\n\nexport default function PatternSelectionModal( {\n\tclientId,\n\tattributes,\n\tsetIsPatternSelectionModalOpen,\n} ) {\n\tconst [ searchValue, setSearchValue ] = useState( '' );\n\tconst { replaceBlock, selectBlock } = useDispatch( blockEditorStore );\n\tconst onBlockPatternSelect = ( pattern, blocks ) => {\n\t\tconst { newBlocks, queryClientIds } = getTransformedBlocksFromPattern(\n\t\t\tblocks,\n\t\t\tattributes\n\t\t);\n\t\treplaceBlock( clientId, newBlocks );\n\t\tif ( queryClientIds[ 0 ] ) {\n\t\t\tselectBlock( queryClientIds[ 0 ] );\n\t\t}\n\t};\n\t// When we preview Query Loop blocks we should prefer the current\n\t// block's postType, which is passed through block context.\n\tconst blockPreviewContext = useMemo(\n\t\t() => ( {\n\t\t\tpreviewPostType: attributes.query.postType,\n\t\t} ),\n\t\t[ attributes.query.postType ]\n\t);\n\tconst blockNameForPatterns = useBlockNameForPatterns(\n\t\tclientId,\n\t\tattributes\n\t);\n\tconst blockPatterns = usePatterns( clientId, blockNameForPatterns );\n\tconst filteredBlockPatterns = useMemo( () => {\n\t\treturn searchPatterns( blockPatterns, searchValue );\n\t}, [ blockPatterns, searchValue ] );\n\n\treturn (\n\t\t<Modal\n\t\t\toverlayClassName=\"block-library-query-pattern__selection-modal\"\n\t\t\ttitle={ __( 'Choose a pattern' ) }\n\t\t\tonRequestClose={ () => setIsPatternSelectionModalOpen( false ) }\n\t\t\tisFullScreen\n\t\t>\n\t\t\t<div className=\"block-library-query-pattern__selection-content\">\n\t\t\t\t<div className=\"block-library-query-pattern__selection-search\">\n\t\t\t\t\t<SearchControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tonChange={ setSearchValue }\n\t\t\t\t\t\tvalue={ searchValue }\n\t\t\t\t\t\tlabel={ __( 'Search' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<BlockContextProvider value={ blockPreviewContext }>\n\t\t\t\t\t<BlockPatternsList\n\t\t\t\t\t\tblockPatterns={ filteredBlockPatterns }\n\t\t\t\t\t\tonClickPattern={ onBlockPatternSelect }\n\t\t\t\t\t/>\n\t\t\t\t</BlockContextProvider>\n\t\t\t</div>\n\t\t</Modal>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,QAAQ,EAAEC,OAAO,QAAQ,oBAAoB;AACtD,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,KAAK,EAAEC,aAAa,QAAQ,uBAAuB;AAC5D,SACCC,oBAAoB,EACpBC,KAAK,IAAIC,gBAAgB,EACzBC,+BAA+B,IAAIC,iBAAiB,QAC9C,yBAAyB;AAChC,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,SACCC,uBAAuB,EACvBC,+BAA+B,EAC/BC,WAAW,QACL,UAAU;AACjB,SAASC,cAAc,QAAQ,6BAA6B;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAE7D,eAAe,SAASC,qBAAqBA,CAAE;EAC9CC,QAAQ;EACRC,UAAU;EACVC;AACD,CAAC,EAAG;EACH,MAAM,CAAEC,WAAW,EAAEC,cAAc,CAAE,GAAGxB,QAAQ,CAAE,EAAG,CAAC;EACtD,MAAM;IAAEyB,YAAY;IAAEC;EAAY,CAAC,GAAGxB,WAAW,CAAEK,gBAAiB,CAAC;EACrE,MAAMoB,oBAAoB,GAAGA,CAAEC,OAAO,EAAEC,MAAM,KAAM;IACnD,MAAM;MAAEC,SAAS;MAAEC;IAAe,CAAC,GAAGnB,+BAA+B,CACpEiB,MAAM,EACNR,UACD,CAAC;IACDI,YAAY,CAAEL,QAAQ,EAAEU,SAAU,CAAC;IACnC,IAAKC,cAAc,CAAE,CAAC,CAAE,EAAG;MAC1BL,WAAW,CAAEK,cAAc,CAAE,CAAC,CAAG,CAAC;IACnC;EACD,CAAC;EACD;EACA;EACA,MAAMC,mBAAmB,GAAG/B,OAAO,CAClC,OAAQ;IACPgC,eAAe,EAAEZ,UAAU,CAACa,KAAK,CAACC;EACnC,CAAC,CAAE,EACH,CAAEd,UAAU,CAACa,KAAK,CAACC,QAAQ,CAC5B,CAAC;EACD,MAAMC,oBAAoB,GAAGzB,uBAAuB,CACnDS,QAAQ,EACRC,UACD,CAAC;EACD,MAAMgB,aAAa,GAAGxB,WAAW,CAAEO,QAAQ,EAAEgB,oBAAqB,CAAC;EACnE,MAAME,qBAAqB,GAAGrC,OAAO,CAAE,MAAM;IAC5C,OAAOa,cAAc,CAAEuB,aAAa,EAAEd,WAAY,CAAC;EACpD,CAAC,EAAE,CAAEc,aAAa,EAAEd,WAAW,CAAG,CAAC;EAEnC,oBACCP,IAAA,CAACb,KAAK;IACLoC,gBAAgB,EAAC,8CAA8C;IAC/DC,KAAK,EAAG9B,EAAE,CAAE,kBAAmB,CAAG;IAClC+B,cAAc,EAAGA,CAAA,KAAMnB,8BAA8B,CAAE,KAAM,CAAG;IAChEoB,YAAY;IAAAC,QAAA,eAEZzB,KAAA;MAAK0B,SAAS,EAAC,gDAAgD;MAAAD,QAAA,gBAC9D3B,IAAA;QAAK4B,SAAS,EAAC,+CAA+C;QAAAD,QAAA,eAC7D3B,IAAA,CAACZ,aAAa;UACbyC,uBAAuB;UACvBC,QAAQ,EAAGtB,cAAgB;UAC3BuB,KAAK,EAAGxB,WAAa;UACrByB,KAAK,EAAGtC,EAAE,CAAE,QAAS,CAAG;UACxBuC,WAAW,EAAGvC,EAAE,CAAE,QAAS;QAAG,CAC9B;MAAC,CACE,CAAC,eACNM,IAAA,CAACX,oBAAoB;QAAC0C,KAAK,EAAGf,mBAAqB;QAAAW,QAAA,eAClD3B,IAAA,CAACP,iBAAiB;UACjB4B,aAAa,EAAGC,qBAAuB;UACvCY,cAAc,EAAGvB;QAAsB,CACvC;MAAC,CACmB,CAAC;IAAA,CACnB;EAAC,CACA,CAAC;AAEV","ignoreList":[]}
@@ -16,6 +16,7 @@ import EnhancedPaginationControl from './inspector-controls/enhanced-pagination-
16
16
  import QueryToolbar from './query-toolbar';
17
17
  import QueryInspectorControls from './inspector-controls';
18
18
  import EnhancedPaginationModal from './enhanced-pagination-modal';
19
+ import { getQueryContextFromTemplate } from '../utils';
19
20
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
20
21
  const DEFAULTS_POSTS_PER_PAGE = 3;
21
22
  const TEMPLATE = [['core/post-template']];
@@ -38,8 +39,11 @@ export default function QueryContent({
38
39
  } = {}
39
40
  } = attributes;
40
41
  const {
41
- postType
42
+ templateSlug
42
43
  } = context;
44
+ const {
45
+ isSingular
46
+ } = getQueryContextFromTemplate(templateSlug);
43
47
  const {
44
48
  __unstableMarkNextChangeAsNotPersistent
45
49
  } = useDispatch(blockEditorStore);
@@ -48,12 +52,6 @@ export default function QueryContent({
48
52
  const innerBlocksProps = useInnerBlocksProps(blockProps, {
49
53
  template: TEMPLATE
50
54
  });
51
- const isTemplate = useSelect(select => {
52
- const currentTemplate = select(coreStore).__experimentalGetTemplateForLink()?.type;
53
- const isInTemplate = 'wp_template' === currentTemplate;
54
- const isInSingularContent = postType !== undefined;
55
- return isInTemplate && !isInSingularContent;
56
- }, [postType]);
57
55
  const {
58
56
  postsPerPage
59
57
  } = useSelect(select => {
@@ -102,16 +100,16 @@ export default function QueryContent({
102
100
  } else if (!query.perPage && postsPerPage) {
103
101
  newQuery.perPage = postsPerPage;
104
102
  }
105
- // We need to reset the `inherit` value if not in a template, as queries
106
- // are not inherited when outside a template (e.g. when in singular content).
107
- if (!isTemplate && query.inherit) {
103
+ // We need to reset the `inherit` value if in a singular template, as queries
104
+ // are not inherited when in singular content (e.g. post, page, 404, blank).
105
+ if (isSingular && query.inherit) {
108
106
  newQuery.inherit = false;
109
107
  }
110
108
  if (!!Object.keys(newQuery).length) {
111
109
  __unstableMarkNextChangeAsNotPersistent();
112
110
  updateQuery(newQuery);
113
111
  }
114
- }, [query.perPage, postsPerPage, inherit, isTemplate, query.inherit, __unstableMarkNextChangeAsNotPersistent, updateQuery]);
112
+ }, [query.perPage, query.inherit, postsPerPage, inherit, isSingular, __unstableMarkNextChangeAsNotPersistent, updateQuery]);
115
113
  // We need this for multi-query block pagination.
116
114
  // Query parameters for each block are scoped to their ID.
117
115
  useEffect(() => {
@@ -145,7 +143,7 @@ export default function QueryContent({
145
143
  setDisplayLayout: updateDisplayLayout,
146
144
  setAttributes: setAttributes,
147
145
  clientId: clientId,
148
- isTemplate: isTemplate
146
+ isSingular: isSingular
149
147
  })
150
148
  }), /*#__PURE__*/_jsx(BlockControls, {
151
149
  children: /*#__PURE__*/_jsx(QueryToolbar, {
@@ -1 +1 @@
1
- {"version":3,"names":["useSelect","useDispatch","useInstanceId","useEffect","useCallback","BlockControls","InspectorControls","useBlockProps","store","blockEditorStore","useInnerBlocksProps","SelectControl","__","coreStore","EnhancedPaginationControl","QueryToolbar","QueryInspectorControls","EnhancedPaginationModal","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DEFAULTS_POSTS_PER_PAGE","TEMPLATE","QueryContent","attributes","setAttributes","openPatternSelectionModal","name","clientId","context","queryId","query","displayLayout","enhancedPagination","tagName","TagName","inherit","postType","__unstableMarkNextChangeAsNotPersistent","instanceId","blockProps","innerBlocksProps","template","isTemplate","select","currentTemplate","__experimentalGetTemplateForLink","type","isInTemplate","isInSingularContent","undefined","postsPerPage","getSettings","getEntityRecord","getEntityRecordEdits","canUser","settingPerPage","kind","posts_per_page","editedSettingPerPage","updateQuery","newQuery","perPage","Object","keys","length","Number","isFinite","updateDisplayLayout","newDisplayLayout","htmlElementMessages","main","section","aside","children","setQuery","setDisplayLayout","group","__nextHasNoMarginBottom","__next40pxDefaultSize","label","options","value","onChange","help"],"sources":["@wordpress/block-library/src/query/edit/query-content.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useEffect, useCallback } from '@wordpress/element';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport EnhancedPaginationControl from './inspector-controls/enhanced-pagination-control';\nimport QueryToolbar from './query-toolbar';\nimport QueryInspectorControls from './inspector-controls';\nimport EnhancedPaginationModal from './enhanced-pagination-modal';\n\nconst DEFAULTS_POSTS_PER_PAGE = 3;\n\nconst TEMPLATE = [ [ 'core/post-template' ] ];\nexport default function QueryContent( {\n\tattributes,\n\tsetAttributes,\n\topenPatternSelectionModal,\n\tname,\n\tclientId,\n\tcontext,\n} ) {\n\tconst {\n\t\tqueryId,\n\t\tquery,\n\t\tdisplayLayout,\n\t\tenhancedPagination,\n\t\ttagName: TagName = 'div',\n\t\tquery: { inherit } = {},\n\t} = attributes;\n\tconst { postType } = context;\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst instanceId = useInstanceId( QueryContent );\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t} );\n\tconst isTemplate = useSelect(\n\t\t( select ) => {\n\t\t\tconst currentTemplate =\n\t\t\t\tselect( coreStore ).__experimentalGetTemplateForLink()?.type;\n\t\t\tconst isInTemplate = 'wp_template' === currentTemplate;\n\t\t\tconst isInSingularContent = postType !== undefined;\n\t\t\treturn isInTemplate && ! isInSingularContent;\n\t\t},\n\t\t[ postType ]\n\t);\n\tconst { postsPerPage } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst { getEntityRecord, getEntityRecordEdits, canUser } =\n\t\t\tselect( coreStore );\n\t\tconst settingPerPage = canUser( 'read', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} )\n\t\t\t? +getEntityRecord( 'root', 'site' )?.posts_per_page\n\t\t\t: +getSettings().postsPerPage;\n\n\t\t// Gets changes made via the template area posts per page setting. These won't be saved\n\t\t// until the page is saved, but we should reflect this setting within the query loops\n\t\t// that inherit it.\n\t\tconst editedSettingPerPage = +getEntityRecordEdits( 'root', 'site' )\n\t\t\t?.posts_per_page;\n\n\t\treturn {\n\t\t\tpostsPerPage:\n\t\t\t\teditedSettingPerPage ||\n\t\t\t\tsettingPerPage ||\n\t\t\t\tDEFAULTS_POSTS_PER_PAGE,\n\t\t};\n\t}, [] );\n\t// There are some effects running where some initialization logic is\n\t// happening and setting some values to some attributes (ex. queryId).\n\t// These updates can cause an `undo trap` where undoing will result in\n\t// resetting again, so we need to mark these changes as not persistent\n\t// with `__unstableMarkNextChangeAsNotPersistent`.\n\n\t// Changes in query property (which is an object) need to be in the same callback,\n\t// because updates are batched after the render and changes in different query properties\n\t// would cause to override previous wanted changes.\n\tconst updateQuery = useCallback(\n\t\t( newQuery ) => setAttributes( { query: { ...query, ...newQuery } } ),\n\t\t[ query, setAttributes ]\n\t);\n\tuseEffect( () => {\n\t\tconst newQuery = {};\n\t\t// When we inherit from global query always need to set the `perPage`\n\t\t// based on the reading settings.\n\t\tif ( inherit && query.perPage !== postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t} else if ( ! query.perPage && postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t}\n\t\t// We need to reset the `inherit` value if not in a template, as queries\n\t\t// are not inherited when outside a template (e.g. when in singular content).\n\t\tif ( ! isTemplate && query.inherit ) {\n\t\t\tnewQuery.inherit = false;\n\t\t}\n\t\tif ( !! Object.keys( newQuery ).length ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateQuery( newQuery );\n\t\t}\n\t}, [\n\t\tquery.perPage,\n\t\tpostsPerPage,\n\t\tinherit,\n\t\tisTemplate,\n\t\tquery.inherit,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tupdateQuery,\n\t] );\n\t// We need this for multi-query block pagination.\n\t// Query parameters for each block are scoped to their ID.\n\tuseEffect( () => {\n\t\tif ( ! Number.isFinite( queryId ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { queryId: instanceId } );\n\t\t}\n\t}, [\n\t\tqueryId,\n\t\tinstanceId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tsetAttributes,\n\t] );\n\tconst updateDisplayLayout = ( newDisplayLayout ) =>\n\t\tsetAttributes( {\n\t\t\tdisplayLayout: { ...displayLayout, ...newDisplayLayout },\n\t\t} );\n\tconst htmlElementMessages = {\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only.'\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<EnhancedPaginationModal\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tclientId={ clientId }\n\t\t\t/>\n\t\t\t<InspectorControls>\n\t\t\t\t<QueryInspectorControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\t\tsetDisplayLayout={ updateDisplayLayout }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisTemplate={ isTemplate }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls>\n\t\t\t\t<QueryToolbar\n\t\t\t\t\tname={ name }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\t\topenPatternSelectionModal={ openPatternSelectionModal }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ TagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ TagName ] }\n\t\t\t\t/>\n\t\t\t\t<EnhancedPaginationControl\n\t\t\t\t\tenhancedPagination={ enhancedPagination }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<TagName { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useSelect","useDispatch","useInstanceId","useEffect","useCallback","BlockControls","InspectorControls","useBlockProps","store","blockEditorStore","useInnerBlocksProps","SelectControl","__","coreStore","EnhancedPaginationControl","QueryToolbar","QueryInspectorControls","EnhancedPaginationModal","getQueryContextFromTemplate","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DEFAULTS_POSTS_PER_PAGE","TEMPLATE","QueryContent","attributes","setAttributes","openPatternSelectionModal","name","clientId","context","queryId","query","displayLayout","enhancedPagination","tagName","TagName","inherit","templateSlug","isSingular","__unstableMarkNextChangeAsNotPersistent","instanceId","blockProps","innerBlocksProps","template","postsPerPage","select","getSettings","getEntityRecord","getEntityRecordEdits","canUser","settingPerPage","kind","posts_per_page","editedSettingPerPage","updateQuery","newQuery","perPage","Object","keys","length","Number","isFinite","updateDisplayLayout","newDisplayLayout","htmlElementMessages","main","section","aside","children","setQuery","setDisplayLayout","group","__nextHasNoMarginBottom","__next40pxDefaultSize","label","options","value","onChange","help"],"sources":["@wordpress/block-library/src/query/edit/query-content.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useEffect, useCallback } from '@wordpress/element';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport EnhancedPaginationControl from './inspector-controls/enhanced-pagination-control';\nimport QueryToolbar from './query-toolbar';\nimport QueryInspectorControls from './inspector-controls';\nimport EnhancedPaginationModal from './enhanced-pagination-modal';\nimport { getQueryContextFromTemplate } from '../utils';\n\nconst DEFAULTS_POSTS_PER_PAGE = 3;\n\nconst TEMPLATE = [ [ 'core/post-template' ] ];\nexport default function QueryContent( {\n\tattributes,\n\tsetAttributes,\n\topenPatternSelectionModal,\n\tname,\n\tclientId,\n\tcontext,\n} ) {\n\tconst {\n\t\tqueryId,\n\t\tquery,\n\t\tdisplayLayout,\n\t\tenhancedPagination,\n\t\ttagName: TagName = 'div',\n\t\tquery: { inherit } = {},\n\t} = attributes;\n\tconst { templateSlug } = context;\n\tconst { isSingular } = getQueryContextFromTemplate( templateSlug );\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst instanceId = useInstanceId( QueryContent );\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t} );\n\tconst { postsPerPage } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst { getEntityRecord, getEntityRecordEdits, canUser } =\n\t\t\tselect( coreStore );\n\t\tconst settingPerPage = canUser( 'read', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} )\n\t\t\t? +getEntityRecord( 'root', 'site' )?.posts_per_page\n\t\t\t: +getSettings().postsPerPage;\n\n\t\t// Gets changes made via the template area posts per page setting. These won't be saved\n\t\t// until the page is saved, but we should reflect this setting within the query loops\n\t\t// that inherit it.\n\t\tconst editedSettingPerPage = +getEntityRecordEdits( 'root', 'site' )\n\t\t\t?.posts_per_page;\n\n\t\treturn {\n\t\t\tpostsPerPage:\n\t\t\t\teditedSettingPerPage ||\n\t\t\t\tsettingPerPage ||\n\t\t\t\tDEFAULTS_POSTS_PER_PAGE,\n\t\t};\n\t}, [] );\n\t// There are some effects running where some initialization logic is\n\t// happening and setting some values to some attributes (ex. queryId).\n\t// These updates can cause an `undo trap` where undoing will result in\n\t// resetting again, so we need to mark these changes as not persistent\n\t// with `__unstableMarkNextChangeAsNotPersistent`.\n\n\t// Changes in query property (which is an object) need to be in the same callback,\n\t// because updates are batched after the render and changes in different query properties\n\t// would cause to override previous wanted changes.\n\tconst updateQuery = useCallback(\n\t\t( newQuery ) => setAttributes( { query: { ...query, ...newQuery } } ),\n\t\t[ query, setAttributes ]\n\t);\n\tuseEffect( () => {\n\t\tconst newQuery = {};\n\t\t// When we inherit from global query always need to set the `perPage`\n\t\t// based on the reading settings.\n\t\tif ( inherit && query.perPage !== postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t} else if ( ! query.perPage && postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t}\n\t\t// We need to reset the `inherit` value if in a singular template, as queries\n\t\t// are not inherited when in singular content (e.g. post, page, 404, blank).\n\t\tif ( isSingular && query.inherit ) {\n\t\t\tnewQuery.inherit = false;\n\t\t}\n\t\tif ( !! Object.keys( newQuery ).length ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateQuery( newQuery );\n\t\t}\n\t}, [\n\t\tquery.perPage,\n\t\tquery.inherit,\n\t\tpostsPerPage,\n\t\tinherit,\n\t\tisSingular,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tupdateQuery,\n\t] );\n\t// We need this for multi-query block pagination.\n\t// Query parameters for each block are scoped to their ID.\n\tuseEffect( () => {\n\t\tif ( ! Number.isFinite( queryId ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { queryId: instanceId } );\n\t\t}\n\t}, [\n\t\tqueryId,\n\t\tinstanceId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tsetAttributes,\n\t] );\n\tconst updateDisplayLayout = ( newDisplayLayout ) =>\n\t\tsetAttributes( {\n\t\t\tdisplayLayout: { ...displayLayout, ...newDisplayLayout },\n\t\t} );\n\tconst htmlElementMessages = {\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only.'\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<EnhancedPaginationModal\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tclientId={ clientId }\n\t\t\t/>\n\t\t\t<InspectorControls>\n\t\t\t\t<QueryInspectorControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\t\tsetDisplayLayout={ updateDisplayLayout }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisSingular={ isSingular }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls>\n\t\t\t\t<QueryToolbar\n\t\t\t\t\tname={ name }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\t\topenPatternSelectionModal={ openPatternSelectionModal }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ TagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ TagName ] }\n\t\t\t\t/>\n\t\t\t\t<EnhancedPaginationControl\n\t\t\t\t\tenhancedPagination={ enhancedPagination }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<TagName { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -51,7 +51,7 @@ const metadata = {
51
51
  "default": false
52
52
  }
53
53
  },
54
- usesContext: ["postType"],
54
+ usesContext: ["templateSlug"],
55
55
  providesContext: {
56
56
  queryId: "queryId",
57
57
  query: "query",
@@ -267,21 +267,19 @@ export const getTransformedBlocksFromPattern = (blocks, queryBlockAttributes) =>
267
267
  * @return {string} The block name to be used in the patterns suggestions.
268
268
  */
269
269
  export function useBlockNameForPatterns(clientId, attributes) {
270
- const activeVariationName = useSelect(select => select(blocksStore).getActiveBlockVariation('core/query', attributes)?.name, [attributes]);
271
- const blockName = `core/query/${activeVariationName}`;
272
- const hasActiveVariationPatterns = useSelect(select => {
270
+ return useSelect(select => {
271
+ const activeVariationName = select(blocksStore).getActiveBlockVariation('core/query', attributes)?.name;
273
272
  if (!activeVariationName) {
274
- return false;
273
+ return 'core/query';
275
274
  }
276
275
  const {
277
276
  getBlockRootClientId,
278
277
  getPatternsByBlockTypes
279
278
  } = select(blockEditorStore);
280
279
  const rootClientId = getBlockRootClientId(clientId);
281
- const activePatterns = getPatternsByBlockTypes(blockName, rootClientId);
282
- return activePatterns.length > 0;
283
- }, [clientId, activeVariationName, blockName]);
284
- return hasActiveVariationPatterns ? blockName : 'core/query';
280
+ const activePatterns = getPatternsByBlockTypes(`core/query/${activeVariationName}`, rootClientId);
281
+ return activePatterns.length > 0 ? `core/query/${activeVariationName}` : 'core/query';
282
+ }, [clientId, attributes]);
285
283
  }
286
284
 
287
285
  /**
@@ -401,4 +399,33 @@ export const useUnsupportedBlocks = clientId => {
401
399
  return blocks;
402
400
  }, [clientId]);
403
401
  };
402
+
403
+ /**
404
+ * Helper function that returns the query context from the editor based on the
405
+ * available template slug.
406
+ *
407
+ * @param {string} templateSlug Current template slug based on context.
408
+ * @return {Object} An object with isSingular and templateType properties.
409
+ */
410
+ export function getQueryContextFromTemplate(templateSlug) {
411
+ // In the Post Editor, the template slug is not available.
412
+ if (!templateSlug) {
413
+ return {
414
+ isSingular: true
415
+ };
416
+ }
417
+ let isSingular = false;
418
+ let templateType = templateSlug === 'wp' ? 'custom' : templateSlug;
419
+ const singularTemplates = ['404', 'blank', 'single', 'page', 'custom'];
420
+ const templateTypeFromSlug = templateSlug.includes('-') ? templateSlug.split('-', 1)[0] : templateSlug;
421
+ const queryFromTemplateSlug = templateSlug.includes('-') ? templateSlug.split('-').slice(1).join('-') : '';
422
+ if (queryFromTemplateSlug) {
423
+ templateType = templateTypeFromSlug;
424
+ }
425
+ isSingular = singularTemplates.includes(templateType);
426
+ return {
427
+ isSingular,
428
+ templateType
429
+ };
430
+ }
404
431
  //# sourceMappingURL=utils.js.map