@wordpress/block-library 9.11.0 → 9.12.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.
- package/CHANGELOG.md +2 -0
- package/build/button/index.js +1 -1
- package/build/button/index.js.map +1 -1
- package/build/cover/deprecated.js +140 -4
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit/block-controls.js +1 -1
- package/build/cover/edit/block-controls.js.map +1 -1
- package/build/cover/edit/cover-placeholder.js +1 -2
- package/build/cover/edit/cover-placeholder.js.map +1 -1
- package/build/cover/edit/index.js +22 -22
- package/build/cover/edit/index.js.map +1 -1
- package/build/cover/save.js +13 -13
- package/build/cover/save.js.map +1 -1
- package/build/details/index.js +1 -0
- package/build/details/index.js.map +1 -1
- package/build/file/edit.js +1 -1
- package/build/file/edit.js.map +1 -1
- package/build/gallery/edit.js +1 -1
- package/build/gallery/edit.js.map +1 -1
- package/build/image/edit.js +1 -1
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +144 -78
- package/build/image/image.js.map +1 -1
- package/build/image/index.js +1 -1
- package/build/latest-posts/edit.js +0 -1
- package/build/latest-posts/edit.js.map +1 -1
- package/build/lock-unlock.js.map +1 -1
- package/build/navigation/edit/index.js +2 -23
- package/build/navigation/edit/index.js.map +1 -1
- package/build/paragraph/edit.js +1 -1
- package/build/paragraph/edit.js.map +1 -1
- package/build/post-content/index.js +13 -0
- package/build/post-content/index.js.map +1 -1
- package/build/post-template/edit.js +11 -0
- package/build/post-template/edit.js.map +1 -1
- package/build/post-template/index.js +1 -1
- package/build/query/edit/inspector-controls/index.js +2 -2
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/pattern-selection-modal.js +0 -3
- package/build/query/edit/pattern-selection-modal.js.map +1 -1
- package/build/query/edit/query-content.js +10 -12
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/index.js +1 -1
- package/build/query/utils.js +32 -1
- package/build/query/utils.js.map +1 -1
- package/build/template-part/edit/index.js +1 -4
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/selection-modal.js +0 -3
- package/build/template-part/edit/selection-modal.js.map +1 -1
- package/build/video/edit.js +1 -1
- package/build/video/edit.js.map +1 -1
- package/build/video/tracks-editor.js +0 -2
- package/build/video/tracks-editor.js.map +1 -1
- package/build-module/button/index.js +1 -1
- package/build-module/button/index.js.map +1 -1
- package/build-module/cover/deprecated.js +140 -4
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit/block-controls.js +1 -1
- package/build-module/cover/edit/block-controls.js.map +1 -1
- package/build-module/cover/edit/cover-placeholder.js +1 -2
- package/build-module/cover/edit/cover-placeholder.js.map +1 -1
- package/build-module/cover/edit/index.js +22 -22
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/cover/save.js +13 -13
- package/build-module/cover/save.js.map +1 -1
- package/build-module/details/index.js +1 -0
- package/build-module/details/index.js.map +1 -1
- package/build-module/file/edit.js +1 -1
- package/build-module/file/edit.js.map +1 -1
- package/build-module/gallery/edit.js +1 -1
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/image/edit.js +1 -1
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/image.js +149 -83
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/index.js +1 -1
- package/build-module/latest-posts/edit.js +0 -1
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/lock-unlock.js.map +1 -1
- package/build-module/navigation/edit/index.js +2 -23
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/paragraph/edit.js +1 -1
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/post-content/index.js +13 -0
- package/build-module/post-content/index.js.map +1 -1
- package/build-module/post-template/edit.js +11 -0
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-template/index.js +1 -1
- package/build-module/query/edit/inspector-controls/index.js +2 -2
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/pattern-selection-modal.js +0 -3
- package/build-module/query/edit/pattern-selection-modal.js.map +1 -1
- package/build-module/query/edit/query-content.js +10 -12
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/index.js +1 -1
- package/build-module/query/utils.js +29 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/template-part/edit/index.js +1 -4
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/selection-modal.js +0 -3
- package/build-module/template-part/edit/selection-modal.js.map +1 -1
- package/build-module/video/edit.js +1 -1
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/tracks-editor.js +0 -2
- package/build-module/video/tracks-editor.js.map +1 -1
- package/build-style/cover/editor-rtl.css +3 -5
- package/build-style/cover/editor.css +3 -5
- package/build-style/cover/style-rtl.css +19 -15
- package/build-style/cover/style.css +19 -15
- package/build-style/editor-rtl.css +7 -22
- package/build-style/editor.css +7 -22
- package/build-style/group/editor-rtl.css +0 -10
- package/build-style/group/editor.css +0 -10
- package/build-style/image/editor-rtl.css +4 -0
- package/build-style/image/editor.css +4 -0
- package/build-style/image/style-rtl.css +0 -2
- package/build-style/image/style.css +0 -2
- package/build-style/latest-posts/editor-rtl.css +0 -7
- package/build-style/latest-posts/editor.css +0 -7
- package/build-style/media-text/style-rtl.css +1 -1
- package/build-style/media-text/style.css +1 -1
- package/build-style/style-rtl.css +20 -18
- package/build-style/style.css +20 -18
- package/build-types/lock-unlock.d.ts +2 -0
- package/build-types/lock-unlock.d.ts.map +1 -0
- package/package.json +8 -8
- package/src/button/index.js +1 -1
- package/src/comments/block.json +3 -9
- package/src/cover/deprecated.js +182 -4
- package/src/cover/edit/block-controls.js +1 -1
- package/src/cover/edit/cover-placeholder.js +0 -3
- package/src/cover/edit/index.js +41 -26
- package/src/cover/editor.scss +4 -5
- package/src/cover/save.js +27 -20
- package/src/cover/style.scss +40 -16
- package/src/cover/test/__snapshots__/edit.native.js.snap +9 -9
- package/src/cover/test/__snapshots__/transforms.native.js.snap +4 -4
- package/src/cover/test/edit.native.js +4 -4
- package/src/cover/test/transforms.native.js +4 -4
- package/src/details/block.json +1 -0
- package/src/file/edit.js +1 -1
- package/src/gallery/edit.js +1 -1
- package/src/group/editor.scss +0 -12
- package/src/image/block.json +1 -1
- package/src/image/edit.js +1 -1
- package/src/image/editor.scss +4 -0
- package/src/image/image.js +200 -109
- package/src/image/style.scss +0 -1
- package/src/image/test/__snapshots__/transforms.native.js.snap +1 -1
- package/src/latest-posts/edit.js +0 -1
- package/src/latest-posts/editor.scss +0 -11
- package/src/media-text/style.scss +1 -1
- package/src/media-text/test/__snapshots__/transforms.native.js.snap +2 -2
- package/src/navigation/edit/index.js +3 -30
- package/src/navigation/index.php +1 -1
- package/src/paragraph/edit.js +1 -1
- package/src/post-content/block.json +14 -1
- package/src/post-template/block.json +2 -1
- package/src/post-template/edit.js +19 -0
- package/src/query/block.json +1 -1
- package/src/query/edit/inspector-controls/index.js +2 -2
- package/src/query/edit/pattern-selection-modal.js +0 -3
- package/src/query/edit/query-content.js +9 -17
- package/src/query/test/utils.js +59 -1
- package/src/query/utils.js +29 -0
- package/src/search/index.php +2 -2
- package/src/template-part/edit/index.js +1 -4
- package/src/template-part/edit/selection-modal.js +0 -3
- package/src/video/edit.js +1 -1
- package/src/video/test/__snapshots__/transforms.native.js.snap +1 -1
- package/src/video/tracks-editor.js +0 -2
- package/tsconfig.tsbuildinfo +1 -1
- /package/src/{lock-unlock.js → lock-unlock.ts} +0 -0
|
@@ -36,6 +36,7 @@ const metadata = {
|
|
|
36
36
|
spacing: {
|
|
37
37
|
blockGap: true,
|
|
38
38
|
padding: true,
|
|
39
|
+
margin: true,
|
|
39
40
|
__experimentalDefaultControls: {
|
|
40
41
|
margin: false,
|
|
41
42
|
padding: false
|
|
@@ -61,6 +62,18 @@ const metadata = {
|
|
|
61
62
|
__experimentalDefaultControls: {
|
|
62
63
|
fontSize: true
|
|
63
64
|
}
|
|
65
|
+
},
|
|
66
|
+
__experimentalBorder: {
|
|
67
|
+
radius: true,
|
|
68
|
+
color: true,
|
|
69
|
+
width: true,
|
|
70
|
+
style: true,
|
|
71
|
+
__experimentalDefaultControls: {
|
|
72
|
+
radius: true,
|
|
73
|
+
color: true,
|
|
74
|
+
width: true,
|
|
75
|
+
style: true
|
|
76
|
+
}
|
|
64
77
|
}
|
|
65
78
|
},
|
|
66
79
|
style: "wp-block-post-content",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["postContent","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","textdomain","usesContext","example","viewportWidth","supports","align","html","layout","background","backgroundImage","backgroundSize","__experimentalDefaultControls","dimensions","minHeight","spacing","blockGap","padding","margin","color","gradients","link","text","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","style","editorStyle","edit","settings","init"],"sources":["@wordpress/block-library/src/post-content/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { postContent as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,IAAIC,IAAI,QAAQ,kBAAkB;;AAEtD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,WAAA;EAAAC,OAAA;IAAAC,aAAA;EAAA;EAAAC,QAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,MAAA;IAAAC,UAAA;MAAAC,eAAA;MAAAC,cAAA;MAAAC,6BAAA;QAAAF,eAAA;MAAA;IAAA;IAAAG,UAAA;MAAAC,SAAA;IAAA;IAAAC,OAAA;MAAAC,QAAA;MAAAC,OAAA;
|
|
1
|
+
{"version":3,"names":["postContent","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","textdomain","usesContext","example","viewportWidth","supports","align","html","layout","background","backgroundImage","backgroundSize","__experimentalDefaultControls","dimensions","minHeight","spacing","blockGap","padding","margin","color","gradients","link","text","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","__experimentalBorder","radius","width","style","editorStyle","edit","settings","init"],"sources":["@wordpress/block-library/src/post-content/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { postContent as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,IAAIC,IAAI,QAAQ,kBAAkB;;AAEtD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,WAAA;EAAAC,OAAA;IAAAC,aAAA;EAAA;EAAAC,QAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,MAAA;IAAAC,UAAA;MAAAC,eAAA;MAAAC,cAAA;MAAAC,6BAAA;QAAAF,eAAA;MAAA;IAAA;IAAAG,UAAA;MAAAC,SAAA;IAAA;IAAAC,OAAA;MAAAC,QAAA;MAAAC,OAAA;MAAAC,MAAA;MAAAN,6BAAA;QAAAM,MAAA;QAAAD,OAAA;MAAA;IAAA;IAAAE,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAT,6BAAA;QAAAH,UAAA;QAAAa,IAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAnB,6BAAA;QAAAY,QAAA;MAAA;IAAA;IAAAQ,oBAAA;MAAAC,MAAA;MAAAd,KAAA;MAAAe,KAAA;MAAAC,KAAA;MAAAvB,6BAAA;QAAAqB,MAAA;QAAAd,KAAA;QAAAe,KAAA;QAAAC,KAAA;MAAA;IAAA;EAAA;EAAAA,KAAA;EAAAC,WAAA;AAAA;AAE5C,OAAOC,IAAI,MAAM,QAAQ;AAEzB,MAAM;EAAExC;AAAK,CAAC,GAAGH,QAAQ;AACzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAMyC,QAAQ,GAAG;EACvB9C,IAAI;EACJ6C;AACD,CAAC;AAED,OAAO,MAAME,IAAI,GAAGA,CAAA,KAAM9C,SAAS,CAAE;EAAEI,IAAI;EAAEH,QAAQ;EAAE4C;AAAS,CAAE,CAAC","ignoreList":[]}
|
|
@@ -115,6 +115,12 @@ export default function PostTemplateEdit({
|
|
|
115
115
|
_fields: ['id'],
|
|
116
116
|
slug: templateSlug.replace('category-', '')
|
|
117
117
|
});
|
|
118
|
+
const templateTag = inherit && templateSlug?.startsWith('tag-') && getEntityRecords('taxonomy', 'post_tag', {
|
|
119
|
+
context: 'view',
|
|
120
|
+
per_page: 1,
|
|
121
|
+
_fields: ['id'],
|
|
122
|
+
slug: templateSlug.replace('tag-', '')
|
|
123
|
+
});
|
|
118
124
|
const query = {
|
|
119
125
|
offset: offset || 0,
|
|
120
126
|
order,
|
|
@@ -175,6 +181,11 @@ export default function PostTemplateEdit({
|
|
|
175
181
|
postType = query.postType;
|
|
176
182
|
} else if (templateCategory) {
|
|
177
183
|
query.categories = templateCategory[0]?.id;
|
|
184
|
+
} else if (templateTag) {
|
|
185
|
+
query.tags = templateTag[0]?.id;
|
|
186
|
+
} else if (templateSlug?.startsWith('taxonomy-post_format')) {
|
|
187
|
+
// Get the post format slug from the template slug by removing the prefix.
|
|
188
|
+
query.format = templateSlug.replace('taxonomy-post_format-post-format-', '');
|
|
178
189
|
}
|
|
179
190
|
}
|
|
180
191
|
// When we preview Query Loop blocks we should prefer the current
|
|
@@ -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,
|
|
@@ -34,7 +34,7 @@ export default function QueryInspectorControls(props) {
|
|
|
34
34
|
attributes,
|
|
35
35
|
setQuery,
|
|
36
36
|
setDisplayLayout,
|
|
37
|
-
|
|
37
|
+
isSingular
|
|
38
38
|
} = props;
|
|
39
39
|
const {
|
|
40
40
|
query,
|
|
@@ -103,7 +103,7 @@ export default function QueryInspectorControls(props) {
|
|
|
103
103
|
onChangeDebounced();
|
|
104
104
|
return onChangeDebounced.cancel;
|
|
105
105
|
}, [querySearch, onChangeDebounced]);
|
|
106
|
-
const showInheritControl =
|
|
106
|
+
const showInheritControl = !isSingular && isControlAllowed(allowedControls, 'inherit');
|
|
107
107
|
const showPostTypeControl = !inherit && isControlAllowed(allowedControls, 'postType');
|
|
108
108
|
const postTypeControlLabel = __('Post type');
|
|
109
109
|
const postTypeControlHelp = __('Select the type of content to display: posts, pages, or custom post types.');
|
|
@@ -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","__","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","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 { 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, 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{ !! 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":[]}
|
|
@@ -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","
|
|
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
|
-
|
|
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
|
|
106
|
-
// are not inherited when
|
|
107
|
-
if (
|
|
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,
|
|
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
|
-
|
|
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":"AAAA;AACA;AACA;AACA,SAASA,SAAS,EAAEC,WAAW,QAAQ,iBAAiB;AACxD,SAASC,aAAa,QAAQ,oBAAoB;AAClD,SAASC,SAAS,EAAEC,WAAW,QAAQ,oBAAoB;AAC3D,SACCC,aAAa,EACbC,iBAAiB,EACjBC,aAAa,EACbC,KAAK,IAAIC,gBAAgB,EACzBC,mBAAmB,QACb,yBAAyB;AAChC,SAASC,aAAa,QAAQ,uBAAuB;AACrD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASJ,KAAK,IAAIK,SAAS,QAAQ,sBAAsB;;AAEzD;AACA;AACA;AACA,OAAOC,yBAAyB,MAAM,kDAAkD;AACxF,OAAOC,YAAY,MAAM,iBAAiB;AAC1C,OAAOC,sBAAsB,MAAM,sBAAsB;AACzD,OAAOC,uBAAuB,MAAM,6BAA6B;AACjE,SAASC,2BAA2B,QAAQ,UAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAEvD,MAAMC,uBAAuB,GAAG,CAAC;AAEjC,MAAMC,QAAQ,GAAG,CAAE,CAAE,oBAAoB,CAAE,CAAE;AAC7C,eAAe,SAASC,YAAYA,CAAE;EACrCC,UAAU;EACVC,aAAa;EACbC,yBAAyB;EACzBC,IAAI;EACJC,QAAQ;EACRC;AACD,CAAC,EAAG;EACH,MAAM;IACLC,OAAO;IACPC,KAAK;IACLC,aAAa;IACbC,kBAAkB;IAClBC,OAAO,EAAEC,OAAO,GAAG,KAAK;IACxBJ,KAAK,EAAE;MAAEK;IAAQ,CAAC,GAAG,CAAC;EACvB,CAAC,GAAGZ,UAAU;EACd,MAAM;IAAEa;EAAa,CAAC,GAAGR,OAAO;EAChC,MAAM;IAAES;EAAW,CAAC,GAAGxB,2BAA2B,CAAEuB,YAAa,CAAC;EAClE,MAAM;IAAEE;EAAwC,CAAC,GAChD1C,WAAW,CAAEQ,gBAAiB,CAAC;EAChC,MAAMmC,UAAU,GAAG1C,aAAa,CAAEyB,YAAa,CAAC;EAChD,MAAMkB,UAAU,GAAGtC,aAAa,CAAC,CAAC;EAClC,MAAMuC,gBAAgB,GAAGpC,mBAAmB,CAAEmC,UAAU,EAAE;IACzDE,QAAQ,EAAErB;EACX,CAAE,CAAC;EACH,MAAM;IAAEsB;EAAa,CAAC,GAAGhD,SAAS,CAAIiD,MAAM,IAAM;IACjD,MAAM;MAAEC;IAAY,CAAC,GAAGD,MAAM,CAAExC,gBAAiB,CAAC;IAClD,MAAM;MAAE0C,eAAe;MAAEC,oBAAoB;MAAEC;IAAQ,CAAC,GACvDJ,MAAM,CAAEpC,SAAU,CAAC;IACpB,MAAMyC,cAAc,GAAGD,OAAO,CAAE,MAAM,EAAE;MACvCE,IAAI,EAAE,MAAM;MACZxB,IAAI,EAAE;IACP,CAAE,CAAC,GACA,CAACoB,eAAe,CAAE,MAAM,EAAE,MAAO,CAAC,EAAEK,cAAc,GAClD,CAACN,WAAW,CAAC,CAAC,CAACF,YAAY;;IAE9B;IACA;IACA;IACA,MAAMS,oBAAoB,GAAG,CAACL,oBAAoB,CAAE,MAAM,EAAE,MAAO,CAAC,EACjEI,cAAc;IAEjB,OAAO;MACNR,YAAY,EACXS,oBAAoB,IACpBH,cAAc,IACd7B;IACF,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA,MAAMiC,WAAW,GAAGtD,WAAW,CAC5BuD,QAAQ,IAAM9B,aAAa,CAAE;IAAEM,KAAK,EAAE;MAAE,GAAGA,KAAK;MAAE,GAAGwB;IAAS;EAAE,CAAE,CAAC,EACrE,CAAExB,KAAK,EAAEN,aAAa,CACvB,CAAC;EACD1B,SAAS,CAAE,MAAM;IAChB,MAAMwD,QAAQ,GAAG,CAAC,CAAC;IACnB;IACA;IACA,IAAKnB,OAAO,IAAIL,KAAK,CAACyB,OAAO,KAAKZ,YAAY,EAAG;MAChDW,QAAQ,CAACC,OAAO,GAAGZ,YAAY;IAChC,CAAC,MAAM,IAAK,CAAEb,KAAK,CAACyB,OAAO,IAAIZ,YAAY,EAAG;MAC7CW,QAAQ,CAACC,OAAO,GAAGZ,YAAY;IAChC;IACA;IACA;IACA,IAAKN,UAAU,IAAIP,KAAK,CAACK,OAAO,EAAG;MAClCmB,QAAQ,CAACnB,OAAO,GAAG,KAAK;IACzB;IACA,IAAK,CAAC,CAAEqB,MAAM,CAACC,IAAI,CAAEH,QAAS,CAAC,CAACI,MAAM,EAAG;MACxCpB,uCAAuC,CAAC,CAAC;MACzCe,WAAW,CAAEC,QAAS,CAAC;IACxB;EACD,CAAC,EAAE,CACFxB,KAAK,CAACyB,OAAO,EACbzB,KAAK,CAACK,OAAO,EACbQ,YAAY,EACZR,OAAO,EACPE,UAAU,EACVC,uCAAuC,EACvCe,WAAW,CACV,CAAC;EACH;EACA;EACAvD,SAAS,CAAE,MAAM;IAChB,IAAK,CAAE6D,MAAM,CAACC,QAAQ,CAAE/B,OAAQ,CAAC,EAAG;MACnCS,uCAAuC,CAAC,CAAC;MACzCd,aAAa,CAAE;QAAEK,OAAO,EAAEU;MAAW,CAAE,CAAC;IACzC;EACD,CAAC,EAAE,CACFV,OAAO,EACPU,UAAU,EACVD,uCAAuC,EACvCd,aAAa,CACZ,CAAC;EACH,MAAMqC,mBAAmB,GAAKC,gBAAgB,IAC7CtC,aAAa,CAAE;IACdO,aAAa,EAAE;MAAE,GAAGA,aAAa;MAAE,GAAG+B;IAAiB;EACxD,CAAE,CAAC;EACJ,MAAMC,mBAAmB,GAAG;IAC3BC,IAAI,EAAEzD,EAAE,CACP,kFACD,CAAC;IACD0D,OAAO,EAAE1D,EAAE,CACV,kIACD,CAAC;IACD2D,KAAK,EAAE3D,EAAE,CACR,uIACD;EACD,CAAC;EAED,oBACCU,KAAA,CAAAE,SAAA;IAAAgD,QAAA,gBACCpD,IAAA,CAACH,uBAAuB;MACvBW,UAAU,EAAGA,UAAY;MACzBC,aAAa,EAAGA,aAAe;MAC/BG,QAAQ,EAAGA;IAAU,CACrB,CAAC,eACFZ,IAAA,CAACd,iBAAiB;MAAAkE,QAAA,eACjBpD,IAAA,CAACJ,sBAAsB;QACtBY,UAAU,EAAGA,UAAY;QACzB6C,QAAQ,EAAGf,WAAa;QACxBgB,gBAAgB,EAAGR,mBAAqB;QACxCrC,aAAa,EAAGA,aAAe;QAC/BG,QAAQ,EAAGA,QAAU;QACrBU,UAAU,EAAGA;MAAY,CACzB;IAAC,CACgB,CAAC,eACpBtB,IAAA,CAACf,aAAa;MAAAmE,QAAA,eACbpD,IAAA,CAACL,YAAY;QACZgB,IAAI,EAAGA,IAAM;QACbC,QAAQ,EAAGA,QAAU;QACrBJ,UAAU,EAAGA,UAAY;QACzB6C,QAAQ,EAAGf,WAAa;QACxB5B,yBAAyB,EAAGA;MAA2B,CACvD;IAAC,CACY,CAAC,eAChBR,KAAA,CAAChB,iBAAiB;MAACqE,KAAK,EAAC,UAAU;MAAAH,QAAA,gBAClCpD,IAAA,CAACT,aAAa;QACbiE,uBAAuB;QACvBC,qBAAqB;QACrBC,KAAK,EAAGlE,EAAE,CAAE,cAAe,CAAG;QAC9BmE,OAAO,EAAG,CACT;UAAED,KAAK,EAAElE,EAAE,CAAE,iBAAkB,CAAC;UAAEoE,KAAK,EAAE;QAAM,CAAC,EAChD;UAAEF,KAAK,EAAE,QAAQ;UAAEE,KAAK,EAAE;QAAO,CAAC,EAClC;UAAEF,KAAK,EAAE,WAAW;UAAEE,KAAK,EAAE;QAAU,CAAC,EACxC;UAAEF,KAAK,EAAE,SAAS;UAAEE,KAAK,EAAE;QAAQ,CAAC,CAClC;QACHA,KAAK,EAAGzC,OAAS;QACjB0C,QAAQ,EAAKD,KAAK,IACjBnD,aAAa,CAAE;UAAES,OAAO,EAAE0C;QAAM,CAAE,CAClC;QACDE,IAAI,EAAGd,mBAAmB,CAAE7B,OAAO;MAAI,CACvC,CAAC,eACFnB,IAAA,CAACN,yBAAyB;QACzBuB,kBAAkB,EAAGA,kBAAoB;QACzCR,aAAa,EAAGA,aAAe;QAC/BG,QAAQ,EAAGA;MAAU,CACrB,CAAC;IAAA,CACgB,CAAC,eACpBZ,IAAA,CAACmB,OAAO;MAAA,GAAMO;IAAgB,CAAI,CAAC;EAAA,CAClC,CAAC;AAEL","ignoreList":[]}
|
|
@@ -401,4 +401,33 @@ export const useUnsupportedBlocks = clientId => {
|
|
|
401
401
|
return blocks;
|
|
402
402
|
}, [clientId]);
|
|
403
403
|
};
|
|
404
|
+
|
|
405
|
+
/**
|
|
406
|
+
* Helper function that returns the query context from the editor based on the
|
|
407
|
+
* available template slug.
|
|
408
|
+
*
|
|
409
|
+
* @param {string} templateSlug Current template slug based on context.
|
|
410
|
+
* @return {Object} An object with isSingular and templateType properties.
|
|
411
|
+
*/
|
|
412
|
+
export function getQueryContextFromTemplate(templateSlug) {
|
|
413
|
+
// In the Post Editor, the template slug is not available.
|
|
414
|
+
if (!templateSlug) {
|
|
415
|
+
return {
|
|
416
|
+
isSingular: true
|
|
417
|
+
};
|
|
418
|
+
}
|
|
419
|
+
let isSingular = false;
|
|
420
|
+
let templateType = templateSlug === 'wp' ? 'custom' : templateSlug;
|
|
421
|
+
const singularTemplates = ['404', 'blank', 'single', 'page', 'custom'];
|
|
422
|
+
const templateTypeFromSlug = templateSlug.includes('-') ? templateSlug.split('-', 1)[0] : templateSlug;
|
|
423
|
+
const queryFromTemplateSlug = templateSlug.includes('-') ? templateSlug.split('-').slice(1).join('-') : '';
|
|
424
|
+
if (queryFromTemplateSlug) {
|
|
425
|
+
templateType = templateTypeFromSlug;
|
|
426
|
+
}
|
|
427
|
+
isSingular = singularTemplates.includes(templateType);
|
|
428
|
+
return {
|
|
429
|
+
isSingular,
|
|
430
|
+
templateType
|
|
431
|
+
};
|
|
432
|
+
}
|
|
404
433
|
//# sourceMappingURL=utils.js.map
|