@wordpress/block-library 7.0.0 → 7.0.2
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/README.md +16 -0
- package/build/button/edit.native.js +2 -2
- package/build/button/edit.native.js.map +1 -1
- package/build/columns/index.js +12 -0
- package/build/columns/index.js.map +1 -1
- package/build/comment-author-avatar/edit.js +17 -4
- package/build/comment-author-avatar/edit.js.map +1 -1
- package/build/comment-template/edit.js +94 -36
- package/build/comment-template/edit.js.map +1 -1
- package/build/comment-template/hooks.js +175 -0
- package/build/comment-template/hooks.js.map +1 -0
- package/build/comment-template/index.js +1 -1
- package/build/comment-template/util.js.map +1 -1
- package/build/comments-pagination-next/index.js +1 -1
- package/build/comments-pagination-numbers/index.js +1 -1
- package/build/comments-query-loop/edit/comments-inspector-controls.js +20 -9
- package/build/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
- package/build/comments-query-loop/edit.js +1 -19
- package/build/comments-query-loop/edit.js.map +1 -1
- package/build/comments-query-loop/index.js +5 -0
- package/build/comments-query-loop/index.js.map +1 -1
- package/build/cover/edit.js +21 -22
- package/build/cover/edit.js.map +1 -1
- package/build/cover/edit.native.js +7 -5
- package/build/cover/edit.native.js.map +1 -1
- package/build/cover/overlay-color-settings.native.js +4 -3
- package/build/cover/overlay-color-settings.native.js.map +1 -1
- package/build/cover/transforms.js +4 -2
- package/build/cover/transforms.js.map +1 -1
- package/build/group/index.js +1 -0
- package/build/group/index.js.map +1 -1
- package/build/heading/edit.js +14 -2
- package/build/heading/edit.js.map +1 -1
- package/build/image/deprecated.js +89 -5
- package/build/image/deprecated.js.map +1 -1
- package/build/image/save.js +0 -7
- package/build/image/save.js.map +1 -1
- package/build/latest-posts/edit.js +1 -0
- package/build/latest-posts/edit.js.map +1 -1
- package/build/navigation/edit/index.js +17 -15
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +44 -27
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +8 -22
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/use-navigation-menu.js +6 -6
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/navigation-submenu/edit.js +41 -9
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/edit.js +11 -17
- package/build/page-list/edit.js.map +1 -1
- package/build/social-links/deprecated.js +1 -62
- package/build/social-links/deprecated.js.map +1 -1
- package/build/template-part/edit/index.js +36 -64
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/placeholder.js +64 -0
- package/build/template-part/edit/placeholder.js.map +1 -0
- package/build/template-part/edit/selection-modal.js +103 -0
- package/build/template-part/edit/selection-modal.js.map +1 -0
- package/build/template-part/edit/title-modal.js +54 -0
- package/build/template-part/edit/title-modal.js.map +1 -0
- package/build/template-part/edit/utils/hooks.js +156 -0
- package/build/template-part/edit/utils/hooks.js.map +1 -0
- package/build/template-part/index.js +3 -1
- package/build/template-part/index.js.map +1 -1
- package/build-module/button/edit.native.js +4 -4
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/columns/index.js +12 -0
- package/build-module/columns/index.js.map +1 -1
- package/build-module/comment-author-avatar/edit.js +18 -6
- package/build-module/comment-author-avatar/edit.js.map +1 -1
- package/build-module/comment-template/edit.js +95 -37
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comment-template/hooks.js +156 -0
- package/build-module/comment-template/hooks.js.map +1 -0
- package/build-module/comment-template/index.js +1 -1
- package/build-module/comment-template/util.js.map +1 -1
- package/build-module/comments-pagination-next/index.js +1 -1
- package/build-module/comments-pagination-numbers/index.js +1 -1
- package/build-module/comments-query-loop/edit/comments-inspector-controls.js +20 -9
- package/build-module/comments-query-loop/edit/comments-inspector-controls.js.map +1 -1
- package/build-module/comments-query-loop/edit.js +2 -19
- package/build-module/comments-query-loop/edit.js.map +1 -1
- package/build-module/comments-query-loop/index.js +5 -0
- package/build-module/comments-query-loop/index.js.map +1 -1
- package/build-module/cover/edit.js +23 -24
- package/build-module/cover/edit.js.map +1 -1
- package/build-module/cover/edit.native.js +10 -8
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/overlay-color-settings.native.js +4 -4
- package/build-module/cover/overlay-color-settings.native.js.map +1 -1
- package/build-module/cover/transforms.js +4 -2
- package/build-module/cover/transforms.js.map +1 -1
- package/build-module/group/index.js +1 -0
- package/build-module/group/index.js.map +1 -1
- package/build-module/heading/edit.js +15 -3
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/image/deprecated.js +90 -7
- package/build-module/image/deprecated.js.map +1 -1
- package/build-module/image/save.js +0 -7
- package/build-module/image/save.js.map +1 -1
- package/build-module/latest-posts/edit.js +1 -0
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/navigation/edit/index.js +17 -15
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +45 -27
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +8 -21
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/use-navigation-menu.js +6 -6
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +41 -10
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/edit.js +12 -18
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/social-links/deprecated.js +1 -62
- package/build-module/social-links/deprecated.js.map +1 -1
- package/build-module/template-part/edit/index.js +37 -65
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/placeholder.js +52 -0
- package/build-module/template-part/edit/placeholder.js.map +1 -0
- package/build-module/template-part/edit/selection-modal.js +89 -0
- package/build-module/template-part/edit/selection-modal.js.map +1 -0
- package/build-module/template-part/edit/title-modal.js +46 -0
- package/build-module/template-part/edit/title-modal.js.map +1 -0
- package/build-module/template-part/edit/utils/hooks.js +135 -0
- package/build-module/template-part/edit/utils/hooks.js.map +1 -0
- package/build-module/template-part/index.js +2 -1
- package/build-module/template-part/index.js.map +1 -1
- package/build-style/comment-author-avatar/editor-rtl.css +83 -0
- package/build-style/comment-author-avatar/editor.css +83 -0
- package/build-style/cover/style-rtl.css +4 -0
- package/build-style/cover/style.css +4 -0
- package/build-style/editor-rtl.css +27 -81
- package/build-style/editor.css +27 -81
- package/build-style/image/editor-rtl.css +0 -16
- package/build-style/image/editor.css +0 -16
- package/build-style/image/style-rtl.css +2 -0
- package/build-style/image/style.css +2 -0
- package/build-style/navigation/style-rtl.css +14 -3
- package/build-style/navigation/style.css +14 -3
- package/build-style/page-list/editor-rtl.css +0 -9
- package/build-style/page-list/editor.css +0 -9
- package/build-style/style-rtl.css +20 -3
- package/build-style/style.css +20 -3
- package/build-style/template-part/editor-rtl.css +19 -56
- package/build-style/template-part/editor.css +19 -56
- package/package.json +15 -15
- package/src/archives/index.php +1 -1
- package/src/button/edit.native.js +3 -3
- package/src/columns/block.json +12 -0
- package/src/comment-author-avatar/edit.js +13 -8
- package/src/comment-author-avatar/editor.scss +7 -0
- package/src/comment-template/block.json +7 -1
- package/src/comment-template/edit.js +102 -40
- package/src/comment-template/hooks.js +151 -0
- package/src/comment-template/index.php +8 -0
- package/src/comment-template/util.js +1 -0
- package/src/comments-pagination-next/block.json +8 -1
- package/src/comments-pagination-next/index.php +6 -8
- package/src/comments-pagination-numbers/block.json +7 -1
- package/src/comments-pagination-numbers/index.php +3 -10
- package/src/comments-query-loop/block.json +5 -0
- package/src/comments-query-loop/edit/comments-inspector-controls.js +22 -4
- package/src/comments-query-loop/edit.js +1 -16
- package/src/cover/edit.js +15 -28
- package/src/cover/edit.native.js +15 -7
- package/src/cover/overlay-color-settings.native.js +3 -4
- package/src/cover/style.scss +4 -0
- package/src/cover/transforms.js +2 -0
- package/src/editor.scss +1 -0
- package/src/gallery/index.php +1 -8
- package/src/group/block.json +1 -0
- package/src/heading/edit.js +18 -5
- package/src/home-link/index.php +1 -19
- package/src/image/deprecated.js +105 -1
- package/src/image/editor.scss +0 -18
- package/src/image/save.js +0 -8
- package/src/image/style.scss +3 -0
- package/src/image/test/edit.native.js +0 -10
- package/src/latest-posts/edit.js +1 -0
- package/src/latest-posts/index.php +1 -1
- package/src/navigation/edit/index.js +25 -26
- package/src/navigation/edit/navigation-menu-selector.js +73 -28
- package/src/navigation/edit/placeholder/index.js +8 -32
- package/src/navigation/index.php +4 -4
- package/src/navigation/style.scss +22 -3
- package/src/navigation/use-navigation-menu.js +6 -6
- package/src/navigation-link/index.php +3 -22
- package/src/navigation-submenu/edit.js +50 -12
- package/src/navigation-submenu/index.php +3 -21
- package/src/page-list/edit.js +21 -25
- package/src/page-list/editor.scss +0 -10
- package/src/page-list/index.php +4 -4
- package/src/post-navigation-link/index.php +3 -3
- package/src/search/index.php +6 -3
- package/src/site-logo/index.php +1 -1
- package/src/social-links/deprecated.js +0 -59
- package/src/template-part/edit/index.js +61 -71
- package/src/template-part/edit/placeholder.js +78 -0
- package/src/template-part/edit/selection-modal.js +115 -0
- package/src/template-part/edit/title-modal.js +59 -0
- package/src/template-part/edit/utils/hooks.js +158 -0
- package/src/template-part/editor.scss +16 -74
- package/src/template-part/index.js +4 -1
- package/build/navigation/edit/existing-menus-options.js +0 -62
- package/build/navigation/edit/existing-menus-options.js.map +0 -1
- package/build/template-part/edit/placeholder/index.js +0 -141
- package/build/template-part/edit/placeholder/index.js.map +0 -1
- package/build/template-part/edit/placeholder/patterns-setup.js +0 -100
- package/build/template-part/edit/placeholder/patterns-setup.js.map +0 -1
- package/build/template-part/edit/selection/index.js +0 -45
- package/build/template-part/edit/selection/index.js.map +0 -1
- package/build/template-part/edit/selection/template-part-previews.js +0 -317
- package/build/template-part/edit/selection/template-part-previews.js.map +0 -1
- package/build-module/navigation/edit/existing-menus-options.js +0 -53
- package/build-module/navigation/edit/existing-menus-options.js.map +0 -1
- package/build-module/template-part/edit/placeholder/index.js +0 -124
- package/build-module/template-part/edit/placeholder/index.js.map +0 -1
- package/build-module/template-part/edit/placeholder/patterns-setup.js +0 -91
- package/build-module/template-part/edit/placeholder/patterns-setup.js.map +0 -1
- package/build-module/template-part/edit/selection/index.js +0 -35
- package/build-module/template-part/edit/selection/index.js.map +0 -1
- package/build-module/template-part/edit/selection/template-part-previews.js +0 -298
- package/build-module/template-part/edit/selection/template-part-previews.js.map +0 -1
- package/src/navigation/edit/existing-menus-options.js +0 -70
- package/src/template-part/edit/placeholder/index.js +0 -172
- package/src/template-part/edit/placeholder/patterns-setup.js +0 -124
- package/src/template-part/edit/selection/index.js +0 -37
- package/src/template-part/edit/selection/template-part-previews.js +0 -372
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/group/index.js"],"names":["__","createBlock","group","icon","deprecated","edit","save","variations","name","metadata","settings","example","attributes","style","color","text","background","innerBlocks","customTextColor","fontSize","content","transforms","from","type","isMultiBlock","blocks","__experimentalConvert","length","alignments","widestAlignment","reduce","accumulator","block","align","indexOf","undefined","groupInnerBlocks","map"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AACA,SAASC,WAAT,QAA4B,mBAA5B;AACA,SAASC,KAAK,IAAIC,IAAlB,QAA8B,kBAA9B;AAEA;AACA;AACA;;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/group/index.js"],"names":["__","createBlock","group","icon","deprecated","edit","save","variations","name","metadata","settings","example","attributes","style","color","text","background","innerBlocks","customTextColor","fontSize","content","transforms","from","type","isMultiBlock","blocks","__experimentalConvert","length","alignments","widestAlignment","reduce","accumulator","block","align","indexOf","undefined","groupInnerBlocks","map"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { createBlock } from '@wordpress/blocks';\nimport { group as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tstyle: {\n\t\t\t\tcolor: {\n\t\t\t\t\ttext: '#000000',\n\t\t\t\t\tbackground: '#ffffff',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#cf2e2e',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'One.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#ff6900',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Two.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#fcb900',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Three.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#00d084',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Four.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#0693e3',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Five.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#9b51e0',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Six.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms: {\n\t\tfrom: [\n\t\t\t{\n\t\t\t\ttype: 'block',\n\t\t\t\tisMultiBlock: true,\n\t\t\t\tblocks: [ '*' ],\n\t\t\t\t__experimentalConvert( blocks ) {\n\t\t\t\t\t// Avoid transforming a single `core/group` Block\n\t\t\t\t\tif (\n\t\t\t\t\t\tblocks.length === 1 &&\n\t\t\t\t\t\tblocks[ 0 ].name === 'core/group'\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst alignments = [ 'wide', 'full' ];\n\n\t\t\t\t\t// Determine the widest setting of all the blocks to be grouped\n\t\t\t\t\tconst widestAlignment = blocks.reduce(\n\t\t\t\t\t\t( accumulator, block ) => {\n\t\t\t\t\t\t\tconst { align } = block.attributes;\n\t\t\t\t\t\t\treturn alignments.indexOf( align ) >\n\t\t\t\t\t\t\t\talignments.indexOf( accumulator )\n\t\t\t\t\t\t\t\t? align\n\t\t\t\t\t\t\t\t: accumulator;\n\t\t\t\t\t\t},\n\t\t\t\t\t\tundefined\n\t\t\t\t\t);\n\n\t\t\t\t\t// Clone the Blocks to be Grouped\n\t\t\t\t\t// Failing to create new block references causes the original blocks\n\t\t\t\t\t// to be replaced in the switchToBlockType call thereby meaning they\n\t\t\t\t\t// are removed both from their original location and within the\n\t\t\t\t\t// new group block.\n\t\t\t\t\tconst groupInnerBlocks = blocks.map( ( block ) => {\n\t\t\t\t\t\treturn createBlock(\n\t\t\t\t\t\t\tblock.name,\n\t\t\t\t\t\t\tblock.attributes,\n\t\t\t\t\t\t\tblock.innerBlocks\n\t\t\t\t\t\t);\n\t\t\t\t\t} );\n\n\t\t\t\t\treturn createBlock(\n\t\t\t\t\t\t'core/group',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\talign: widestAlignment,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tgroupInnerBlocks\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\tedit,\n\tsave,\n\tdeprecated,\n\tvariations,\n};\n"]}
|
|
@@ -11,7 +11,7 @@ import classnames from 'classnames';
|
|
|
11
11
|
|
|
12
12
|
import { __ } from '@wordpress/i18n';
|
|
13
13
|
import { useEffect, Platform } from '@wordpress/element';
|
|
14
|
-
import { useDispatch } from '@wordpress/data';
|
|
14
|
+
import { useDispatch, useSelect } from '@wordpress/data';
|
|
15
15
|
import { createBlock, getDefaultBlockName } from '@wordpress/blocks';
|
|
16
16
|
import { AlignmentControl, BlockControls, RichText, useBlockProps, store as blockEditorStore } from '@wordpress/block-editor';
|
|
17
17
|
/**
|
|
@@ -44,12 +44,24 @@ function HeadingEdit(_ref) {
|
|
|
44
44
|
}),
|
|
45
45
|
style
|
|
46
46
|
});
|
|
47
|
+
const {
|
|
48
|
+
canGenerateAnchors
|
|
49
|
+
} = useSelect(select => {
|
|
50
|
+
const settings = select(blockEditorStore).getSettings();
|
|
51
|
+
return {
|
|
52
|
+
canGenerateAnchors: !!settings.__experimentalGenerateAnchors
|
|
53
|
+
};
|
|
54
|
+
}, []);
|
|
47
55
|
const {
|
|
48
56
|
__unstableMarkNextChangeAsNotPersistent
|
|
49
57
|
} = useDispatch(blockEditorStore); // Initially set anchor for headings that have content but no anchor set.
|
|
50
58
|
// This is used when transforming a block to heading, or for legacy anchors.
|
|
51
59
|
|
|
52
60
|
useEffect(() => {
|
|
61
|
+
if (!canGenerateAnchors) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
|
|
53
65
|
if (!anchor && content) {
|
|
54
66
|
// This side-effect should not create an undo level.
|
|
55
67
|
__unstableMarkNextChangeAsNotPersistent();
|
|
@@ -62,14 +74,14 @@ function HeadingEdit(_ref) {
|
|
|
62
74
|
setAnchor(clientId, anchor); // Remove anchor map when block unmounts.
|
|
63
75
|
|
|
64
76
|
return () => setAnchor(clientId, null);
|
|
65
|
-
}, [content,
|
|
77
|
+
}, [anchor, content, clientId, canGenerateAnchors]);
|
|
66
78
|
|
|
67
79
|
const onContentChange = value => {
|
|
68
80
|
const newAttrs = {
|
|
69
81
|
content: value
|
|
70
82
|
};
|
|
71
83
|
|
|
72
|
-
if (!anchor || !value || generateAnchor(clientId, content) === anchor) {
|
|
84
|
+
if (canGenerateAnchors && (!anchor || !value || generateAnchor(clientId, content) === anchor)) {
|
|
73
85
|
newAttrs.anchor = generateAnchor(clientId, value);
|
|
74
86
|
}
|
|
75
87
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/heading/edit.js"],"names":["classnames","__","useEffect","Platform","useDispatch","createBlock","getDefaultBlockName","AlignmentControl","BlockControls","RichText","useBlockProps","store","blockEditorStore","HeadingLevelDropdown","generateAnchor","setAnchor","HeadingEdit","attributes","setAttributes","mergeBlocks","onReplace","style","clientId","textAlign","content","level","placeholder","anchor","tagName","blockProps","className","__unstableMarkNextChangeAsNotPersistent","onContentChange","value","newAttrs","newLevel","nextAlign","isOriginal","block","isNative","deleteEnter"],"mappings":";;;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,EAAT,QAAmB,iBAAnB;AACA,SAASC,SAAT,EAAoBC,QAApB,QAAoC,oBAApC;AACA,SAASC,WAAT,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/heading/edit.js"],"names":["classnames","__","useEffect","Platform","useDispatch","useSelect","createBlock","getDefaultBlockName","AlignmentControl","BlockControls","RichText","useBlockProps","store","blockEditorStore","HeadingLevelDropdown","generateAnchor","setAnchor","HeadingEdit","attributes","setAttributes","mergeBlocks","onReplace","style","clientId","textAlign","content","level","placeholder","anchor","tagName","blockProps","className","canGenerateAnchors","select","settings","getSettings","__experimentalGenerateAnchors","__unstableMarkNextChangeAsNotPersistent","onContentChange","value","newAttrs","newLevel","nextAlign","isOriginal","block","isNative","deleteEnter"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, Platform } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport HeadingLevelDropdown from './heading-level-dropdown';\nimport { generateAnchor, setAnchor } from './autogenerate-anchors';\n\nfunction HeadingEdit( {\n\tattributes,\n\tsetAttributes,\n\tmergeBlocks,\n\tonReplace,\n\tstyle,\n\tclientId,\n} ) {\n\tconst { textAlign, content, level, placeholder, anchor } = attributes;\n\tconst tagName = 'h' + level;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t\tstyle,\n\t} );\n\n\tconst { canGenerateAnchors } = useSelect( ( select ) => {\n\t\tconst settings = select( blockEditorStore ).getSettings();\n\n\t\treturn {\n\t\t\tcanGenerateAnchors: !! settings.__experimentalGenerateAnchors,\n\t\t};\n\t}, [] );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } = useDispatch(\n\t\tblockEditorStore\n\t);\n\n\t// Initially set anchor for headings that have content but no anchor set.\n\t// This is used when transforming a block to heading, or for legacy anchors.\n\tuseEffect( () => {\n\t\tif ( ! canGenerateAnchors ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! anchor && content ) {\n\t\t\t// This side-effect should not create an undo level.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tanchor: generateAnchor( clientId, content ),\n\t\t\t} );\n\t\t}\n\t\tsetAnchor( clientId, anchor );\n\n\t\t// Remove anchor map when block unmounts.\n\t\treturn () => setAnchor( clientId, null );\n\t}, [ anchor, content, clientId, canGenerateAnchors ] );\n\n\tconst onContentChange = ( value ) => {\n\t\tconst newAttrs = { content: value };\n\t\tif (\n\t\t\tcanGenerateAnchors &&\n\t\t\t( ! anchor ||\n\t\t\t\t! value ||\n\t\t\t\tgenerateAnchor( clientId, content ) === anchor )\n\t\t) {\n\t\t\tnewAttrs.anchor = generateAnchor( clientId, value );\n\t\t}\n\t\tsetAttributes( newAttrs );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\tselectedLevel={ level }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<RichText\n\t\t\t\tidentifier=\"content\"\n\t\t\t\ttagName={ tagName }\n\t\t\t\tvalue={ content }\n\t\t\t\tonChange={ onContentChange }\n\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\tonSplit={ ( value, isOriginal ) => {\n\t\t\t\t\tlet block;\n\n\t\t\t\t\tif ( isOriginal || value ) {\n\t\t\t\t\t\tblock = createBlock( 'core/heading', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\tcontent: value,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tblock = createBlock(\n\t\t\t\t\t\t\tgetDefaultBlockName() ?? 'core/heading'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( isOriginal ) {\n\t\t\t\t\t\tblock.clientId = clientId;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn block;\n\t\t\t\t} }\n\t\t\t\tonReplace={ onReplace }\n\t\t\t\tonRemove={ () => onReplace( [] ) }\n\t\t\t\taria-label={ __( 'Heading text' ) }\n\t\t\t\tplaceholder={ placeholder || __( 'Heading' ) }\n\t\t\t\ttextAlign={ textAlign }\n\t\t\t\t{ ...( Platform.isNative && { deleteEnter: true } ) } // setup RichText on native mobile to delete the \"Enter\" key as it's handled by the JS/RN side\n\t\t\t\t{ ...blockProps }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default HeadingEdit;\n"]}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
-
import { createElement } from "@wordpress/element";
|
|
2
|
+
import { createElement, Fragment } from "@wordpress/element";
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* External dependencies
|
|
6
6
|
*/
|
|
7
7
|
import classnames from 'classnames';
|
|
8
|
+
import { isEmpty } from 'lodash';
|
|
8
9
|
/**
|
|
9
10
|
* WordPress dependencies
|
|
10
11
|
*/
|
|
11
12
|
|
|
12
|
-
import { RichText } from '@wordpress/block-editor';
|
|
13
|
+
import { RichText, useBlockProps } from '@wordpress/block-editor';
|
|
13
14
|
const blockAttributes = {
|
|
14
15
|
align: {
|
|
15
16
|
type: 'string'
|
|
@@ -69,13 +70,95 @@ const blockAttributes = {
|
|
|
69
70
|
attribute: 'target'
|
|
70
71
|
}
|
|
71
72
|
};
|
|
73
|
+
const blockSupports = {
|
|
74
|
+
anchor: true,
|
|
75
|
+
color: {
|
|
76
|
+
__experimentalDuotone: 'img',
|
|
77
|
+
text: false,
|
|
78
|
+
background: false
|
|
79
|
+
},
|
|
80
|
+
__experimentalBorder: {
|
|
81
|
+
radius: true,
|
|
82
|
+
__experimentalDefaultControls: {
|
|
83
|
+
radius: true
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
};
|
|
72
87
|
const deprecated = [{
|
|
73
|
-
attributes: blockAttributes,
|
|
88
|
+
attributes: { ...blockAttributes,
|
|
89
|
+
title: {
|
|
90
|
+
type: 'string',
|
|
91
|
+
source: 'attribute',
|
|
92
|
+
selector: 'img',
|
|
93
|
+
attribute: 'title'
|
|
94
|
+
},
|
|
95
|
+
sizeSlug: {
|
|
96
|
+
type: 'string'
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
supports: blockSupports,
|
|
74
100
|
|
|
75
101
|
save(_ref) {
|
|
76
102
|
let {
|
|
77
103
|
attributes
|
|
78
104
|
} = _ref;
|
|
105
|
+
const {
|
|
106
|
+
url,
|
|
107
|
+
alt,
|
|
108
|
+
caption,
|
|
109
|
+
align,
|
|
110
|
+
href,
|
|
111
|
+
rel,
|
|
112
|
+
linkClass,
|
|
113
|
+
width,
|
|
114
|
+
height,
|
|
115
|
+
id,
|
|
116
|
+
linkTarget,
|
|
117
|
+
sizeSlug,
|
|
118
|
+
title
|
|
119
|
+
} = attributes;
|
|
120
|
+
const newRel = isEmpty(rel) ? undefined : rel;
|
|
121
|
+
const classes = classnames({
|
|
122
|
+
[`align${align}`]: align,
|
|
123
|
+
[`size-${sizeSlug}`]: sizeSlug,
|
|
124
|
+
'is-resized': width || height
|
|
125
|
+
});
|
|
126
|
+
const image = createElement("img", {
|
|
127
|
+
src: url,
|
|
128
|
+
alt: alt,
|
|
129
|
+
className: id ? `wp-image-${id}` : null,
|
|
130
|
+
width: width,
|
|
131
|
+
height: height,
|
|
132
|
+
title: title
|
|
133
|
+
});
|
|
134
|
+
const figure = createElement(Fragment, null, href ? createElement("a", {
|
|
135
|
+
className: linkClass,
|
|
136
|
+
href: href,
|
|
137
|
+
target: linkTarget,
|
|
138
|
+
rel: newRel
|
|
139
|
+
}, image) : image, !RichText.isEmpty(caption) && createElement(RichText.Content, {
|
|
140
|
+
tagName: "figcaption",
|
|
141
|
+
value: caption
|
|
142
|
+
}));
|
|
143
|
+
|
|
144
|
+
if ('left' === align || 'right' === align || 'center' === align) {
|
|
145
|
+
return createElement("div", useBlockProps.save(), createElement("figure", {
|
|
146
|
+
className: classes
|
|
147
|
+
}, figure));
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
return createElement("figure", useBlockProps.save({
|
|
151
|
+
className: classes
|
|
152
|
+
}), figure);
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
}, {
|
|
156
|
+
attributes: blockAttributes,
|
|
157
|
+
|
|
158
|
+
save(_ref2) {
|
|
159
|
+
let {
|
|
160
|
+
attributes
|
|
161
|
+
} = _ref2;
|
|
79
162
|
const {
|
|
80
163
|
url,
|
|
81
164
|
alt,
|
|
@@ -110,10 +193,10 @@ const deprecated = [{
|
|
|
110
193
|
}, {
|
|
111
194
|
attributes: blockAttributes,
|
|
112
195
|
|
|
113
|
-
save(
|
|
196
|
+
save(_ref3) {
|
|
114
197
|
let {
|
|
115
198
|
attributes
|
|
116
|
-
} =
|
|
199
|
+
} = _ref3;
|
|
117
200
|
const {
|
|
118
201
|
url,
|
|
119
202
|
alt,
|
|
@@ -144,10 +227,10 @@ const deprecated = [{
|
|
|
144
227
|
}, {
|
|
145
228
|
attributes: blockAttributes,
|
|
146
229
|
|
|
147
|
-
save(
|
|
230
|
+
save(_ref4) {
|
|
148
231
|
let {
|
|
149
232
|
attributes
|
|
150
|
-
} =
|
|
233
|
+
} = _ref4;
|
|
151
234
|
const {
|
|
152
235
|
url,
|
|
153
236
|
alt,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/image/deprecated.js"],"names":["classnames","RichText","blockAttributes","align","type","url","source","selector","attribute","alt","default","caption","href","rel","linkClass","id","width","height","linkDestination","linkTarget","deprecated","attributes","save","classes","image","isEmpty","extraImageProps","figureStyle","maxWidth"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { RichText } from '@wordpress/block-editor';\n\nconst blockAttributes = {\n\talign: {\n\t\ttype: 'string',\n\t},\n\turl: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'img',\n\t\tattribute: 'src',\n\t},\n\talt: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'img',\n\t\tattribute: 'alt',\n\t\tdefault: '',\n\t},\n\tcaption: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'figcaption',\n\t},\n\thref: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'figure > a',\n\t\tattribute: 'href',\n\t},\n\trel: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'figure > a',\n\t\tattribute: 'rel',\n\t},\n\tlinkClass: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'figure > a',\n\t\tattribute: 'class',\n\t},\n\tid: {\n\t\ttype: 'number',\n\t},\n\twidth: {\n\t\ttype: 'number',\n\t},\n\theight: {\n\t\ttype: 'number',\n\t},\n\tlinkDestination: {\n\t\ttype: 'string',\n\t},\n\tlinkTarget: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'figure > a',\n\t\tattribute: 'target',\n\t},\n};\n\nconst deprecated = [\n\t{\n\t\tattributes: blockAttributes,\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\turl,\n\t\t\t\talt,\n\t\t\t\tcaption,\n\t\t\t\talign,\n\t\t\t\thref,\n\t\t\t\twidth,\n\t\t\t\theight,\n\t\t\t\tid,\n\t\t\t} = attributes;\n\n\t\t\tconst classes = classnames( {\n\t\t\t\t[ `align${ align }` ]: align,\n\t\t\t\t'is-resized': width || height,\n\t\t\t} );\n\n\t\t\tconst image = (\n\t\t\t\t<img\n\t\t\t\t\tsrc={ url }\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\t\twidth={ width }\n\t\t\t\t\theight={ height }\n\t\t\t\t/>\n\t\t\t);\n\n\t\t\treturn (\n\t\t\t\t<figure className={ classes }>\n\t\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: blockAttributes,\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\turl,\n\t\t\t\talt,\n\t\t\t\tcaption,\n\t\t\t\talign,\n\t\t\t\thref,\n\t\t\t\twidth,\n\t\t\t\theight,\n\t\t\t\tid,\n\t\t\t} = attributes;\n\n\t\t\tconst image = (\n\t\t\t\t<img\n\t\t\t\t\tsrc={ url }\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\t\twidth={ width }\n\t\t\t\t\theight={ height }\n\t\t\t\t/>\n\t\t\t);\n\n\t\t\treturn (\n\t\t\t\t<figure className={ align ? `align${ align }` : null }>\n\t\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: blockAttributes,\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\turl,\n\t\t\t\talt,\n\t\t\t\tcaption,\n\t\t\t\talign,\n\t\t\t\thref,\n\t\t\t\twidth,\n\t\t\t\theight,\n\t\t\t} = attributes;\n\t\t\tconst extraImageProps = width || height ? { width, height } : {};\n\t\t\tconst image = (\n\t\t\t\t<img src={ url } alt={ alt } { ...extraImageProps } />\n\t\t\t);\n\n\t\t\tlet figureStyle = {};\n\n\t\t\tif ( width ) {\n\t\t\t\tfigureStyle = { width };\n\t\t\t} else if ( align === 'left' || align === 'right' ) {\n\t\t\t\tfigureStyle = { maxWidth: '50%' };\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\t<figure\n\t\t\t\t\tclassName={ align ? `align${ align }` : null }\n\t\t\t\t\tstyle={ figureStyle }\n\t\t\t\t>\n\t\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/image/deprecated.js"],"names":["classnames","isEmpty","RichText","useBlockProps","blockAttributes","align","type","url","source","selector","attribute","alt","default","caption","href","rel","linkClass","id","width","height","linkDestination","linkTarget","blockSupports","anchor","color","__experimentalDuotone","text","background","__experimentalBorder","radius","__experimentalDefaultControls","deprecated","attributes","title","sizeSlug","supports","save","newRel","undefined","classes","image","figure","className","extraImageProps","figureStyle","maxWidth"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { RichText, useBlockProps } from '@wordpress/block-editor';\n\nconst blockAttributes = {\n\talign: {\n\t\ttype: 'string',\n\t},\n\turl: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'img',\n\t\tattribute: 'src',\n\t},\n\talt: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'img',\n\t\tattribute: 'alt',\n\t\tdefault: '',\n\t},\n\tcaption: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'figcaption',\n\t},\n\thref: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'figure > a',\n\t\tattribute: 'href',\n\t},\n\trel: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'figure > a',\n\t\tattribute: 'rel',\n\t},\n\tlinkClass: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'figure > a',\n\t\tattribute: 'class',\n\t},\n\tid: {\n\t\ttype: 'number',\n\t},\n\twidth: {\n\t\ttype: 'number',\n\t},\n\theight: {\n\t\ttype: 'number',\n\t},\n\tlinkDestination: {\n\t\ttype: 'string',\n\t},\n\tlinkTarget: {\n\t\ttype: 'string',\n\t\tsource: 'attribute',\n\t\tselector: 'figure > a',\n\t\tattribute: 'target',\n\t},\n};\n\nconst blockSupports = {\n\tanchor: true,\n\tcolor: {\n\t\t__experimentalDuotone: 'img',\n\t\ttext: false,\n\t\tbackground: false,\n\t},\n\t__experimentalBorder: {\n\t\tradius: true,\n\t\t__experimentalDefaultControls: {\n\t\t\tradius: true,\n\t\t},\n\t},\n};\n\nconst deprecated = [\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\ttitle: {\n\t\t\t\ttype: 'string',\n\t\t\t\tsource: 'attribute',\n\t\t\t\tselector: 'img',\n\t\t\t\tattribute: 'title',\n\t\t\t},\n\t\t\tsizeSlug: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tsupports: blockSupports,\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\turl,\n\t\t\t\talt,\n\t\t\t\tcaption,\n\t\t\t\talign,\n\t\t\t\thref,\n\t\t\t\trel,\n\t\t\t\tlinkClass,\n\t\t\t\twidth,\n\t\t\t\theight,\n\t\t\t\tid,\n\t\t\t\tlinkTarget,\n\t\t\t\tsizeSlug,\n\t\t\t\ttitle,\n\t\t\t} = attributes;\n\n\t\t\tconst newRel = isEmpty( rel ) ? undefined : rel;\n\n\t\t\tconst classes = classnames( {\n\t\t\t\t[ `align${ align }` ]: align,\n\t\t\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t\t\t'is-resized': width || height,\n\t\t\t} );\n\n\t\t\tconst image = (\n\t\t\t\t<img\n\t\t\t\t\tsrc={ url }\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\t\twidth={ width }\n\t\t\t\t\theight={ height }\n\t\t\t\t\ttitle={ title }\n\t\t\t\t/>\n\t\t\t);\n\n\t\t\tconst figure = (\n\t\t\t\t<>\n\t\t\t\t\t{ href ? (\n\t\t\t\t\t\t<a\n\t\t\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\t\t\thref={ href }\n\t\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t\trel={ newRel }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ image }\n\t\t\t\t\t\t</a>\n\t\t\t\t\t) : (\n\t\t\t\t\t\timage\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</>\n\t\t\t);\n\n\t\t\tif ( 'left' === align || 'right' === align || 'center' === align ) {\n\t\t\t\treturn (\n\t\t\t\t\t<div { ...useBlockProps.save() }>\n\t\t\t\t\t\t<figure className={ classes }>{ figure }</figure>\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t\t\t{ figure }\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: blockAttributes,\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\turl,\n\t\t\t\talt,\n\t\t\t\tcaption,\n\t\t\t\talign,\n\t\t\t\thref,\n\t\t\t\twidth,\n\t\t\t\theight,\n\t\t\t\tid,\n\t\t\t} = attributes;\n\n\t\t\tconst classes = classnames( {\n\t\t\t\t[ `align${ align }` ]: align,\n\t\t\t\t'is-resized': width || height,\n\t\t\t} );\n\n\t\t\tconst image = (\n\t\t\t\t<img\n\t\t\t\t\tsrc={ url }\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\t\twidth={ width }\n\t\t\t\t\theight={ height }\n\t\t\t\t/>\n\t\t\t);\n\n\t\t\treturn (\n\t\t\t\t<figure className={ classes }>\n\t\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: blockAttributes,\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\turl,\n\t\t\t\talt,\n\t\t\t\tcaption,\n\t\t\t\talign,\n\t\t\t\thref,\n\t\t\t\twidth,\n\t\t\t\theight,\n\t\t\t\tid,\n\t\t\t} = attributes;\n\n\t\t\tconst image = (\n\t\t\t\t<img\n\t\t\t\t\tsrc={ url }\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\t\t\twidth={ width }\n\t\t\t\t\theight={ height }\n\t\t\t\t/>\n\t\t\t);\n\n\t\t\treturn (\n\t\t\t\t<figure className={ align ? `align${ align }` : null }>\n\t\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: blockAttributes,\n\t\tsave( { attributes } ) {\n\t\t\tconst {\n\t\t\t\turl,\n\t\t\t\talt,\n\t\t\t\tcaption,\n\t\t\t\talign,\n\t\t\t\thref,\n\t\t\t\twidth,\n\t\t\t\theight,\n\t\t\t} = attributes;\n\t\t\tconst extraImageProps = width || height ? { width, height } : {};\n\t\t\tconst image = (\n\t\t\t\t<img src={ url } alt={ alt } { ...extraImageProps } />\n\t\t\t);\n\n\t\t\tlet figureStyle = {};\n\n\t\t\tif ( width ) {\n\t\t\t\tfigureStyle = { width };\n\t\t\t} else if ( align === 'left' || align === 'right' ) {\n\t\t\t\tfigureStyle = { maxWidth: '50%' };\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\t<figure\n\t\t\t\t\tclassName={ align ? `align${ align }` : null }\n\t\t\t\t\tstyle={ figureStyle }\n\t\t\t\t>\n\t\t\t\t\t{ href ? <a href={ href }>{ image }</a> : image }\n\t\t\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t\t\t<RichText.Content\n\t\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</figure>\n\t\t\t);\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
|
|
@@ -52,13 +52,6 @@ export default function save(_ref) {
|
|
|
52
52
|
tagName: "figcaption",
|
|
53
53
|
value: caption
|
|
54
54
|
}));
|
|
55
|
-
|
|
56
|
-
if ('left' === align || 'right' === align || 'center' === align) {
|
|
57
|
-
return createElement("div", useBlockProps.save(), createElement("figure", {
|
|
58
|
-
className: classes
|
|
59
|
-
}, figure));
|
|
60
|
-
}
|
|
61
|
-
|
|
62
55
|
return createElement("figure", useBlockProps.save({
|
|
63
56
|
className: classes
|
|
64
57
|
}), figure);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/image/save.js"],"names":["classnames","isEmpty","RichText","useBlockProps","save","attributes","url","alt","caption","align","href","rel","linkClass","width","height","id","linkTarget","sizeSlug","title","newRel","undefined","classes","image","figure","className"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AACA,SAASC,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SAASC,QAAT,EAAmBC,aAAnB,QAAwC,yBAAxC;AAEA,eAAe,SAASC,IAAT,OAAgC;AAAA,MAAjB;AAAEC,IAAAA;AAAF,GAAiB;AAC9C,QAAM;AACLC,IAAAA,GADK;AAELC,IAAAA,GAFK;AAGLC,IAAAA,OAHK;AAILC,IAAAA,KAJK;AAKLC,IAAAA,IALK;AAMLC,IAAAA,GANK;AAOLC,IAAAA,SAPK;AAQLC,IAAAA,KARK;AASLC,IAAAA,MATK;AAULC,IAAAA,EAVK;AAWLC,IAAAA,UAXK;AAYLC,IAAAA,QAZK;AAaLC,IAAAA;AAbK,MAcFb,UAdJ;AAgBA,QAAMc,MAAM,GAAGlB,OAAO,CAAEU,GAAF,CAAP,GAAiBS,SAAjB,GAA6BT,GAA5C;AAEA,QAAMU,OAAO,GAAGrB,UAAU,CAAE;AAC3B,KAAG,QAAQS,KAAO,EAAlB,GAAuBA,KADI;AAE3B,KAAG,QAAQQ,QAAU,EAArB,GAA0BA,QAFC;AAG3B,kBAAcJ,KAAK,IAAIC;AAHI,GAAF,CAA1B;AAMA,QAAMQ,KAAK,GACV;AACC,IAAA,GAAG,EAAGhB,GADP;AAEC,IAAA,GAAG,EAAGC,GAFP;AAGC,IAAA,SAAS,EAAGQ,EAAE,GAAI,YAAYA,EAAI,EAApB,GAAwB,IAHvC;AAIC,IAAA,KAAK,EAAGF,KAJT;AAKC,IAAA,MAAM,EAAGC,MALV;AAMC,IAAA,KAAK,EAAGI;AANT,IADD;AAWA,QAAMK,MAAM,GACX,8BACGb,IAAI,GACL;AACC,IAAA,SAAS,EAAGE,SADb;AAEC,IAAA,IAAI,EAAGF,IAFR;AAGC,IAAA,MAAM,EAAGM,UAHV;AAIC,IAAA,GAAG,EAAGG;AAJP,KAMGG,KANH,CADK,GAULA,KAXF,EAaG,CAAEpB,QAAQ,CAACD,OAAT,CAAkBO,OAAlB,CAAF,IACD,cAAC,QAAD,CAAU,OAAV;AAAkB,IAAA,OAAO,EAAC,YAA1B;AAAuC,IAAA,KAAK,EAAGA;AAA/C,IAdF,CADD
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/image/save.js"],"names":["classnames","isEmpty","RichText","useBlockProps","save","attributes","url","alt","caption","align","href","rel","linkClass","width","height","id","linkTarget","sizeSlug","title","newRel","undefined","classes","image","figure","className"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AACA,SAASC,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SAASC,QAAT,EAAmBC,aAAnB,QAAwC,yBAAxC;AAEA,eAAe,SAASC,IAAT,OAAgC;AAAA,MAAjB;AAAEC,IAAAA;AAAF,GAAiB;AAC9C,QAAM;AACLC,IAAAA,GADK;AAELC,IAAAA,GAFK;AAGLC,IAAAA,OAHK;AAILC,IAAAA,KAJK;AAKLC,IAAAA,IALK;AAMLC,IAAAA,GANK;AAOLC,IAAAA,SAPK;AAQLC,IAAAA,KARK;AASLC,IAAAA,MATK;AAULC,IAAAA,EAVK;AAWLC,IAAAA,UAXK;AAYLC,IAAAA,QAZK;AAaLC,IAAAA;AAbK,MAcFb,UAdJ;AAgBA,QAAMc,MAAM,GAAGlB,OAAO,CAAEU,GAAF,CAAP,GAAiBS,SAAjB,GAA6BT,GAA5C;AAEA,QAAMU,OAAO,GAAGrB,UAAU,CAAE;AAC3B,KAAG,QAAQS,KAAO,EAAlB,GAAuBA,KADI;AAE3B,KAAG,QAAQQ,QAAU,EAArB,GAA0BA,QAFC;AAG3B,kBAAcJ,KAAK,IAAIC;AAHI,GAAF,CAA1B;AAMA,QAAMQ,KAAK,GACV;AACC,IAAA,GAAG,EAAGhB,GADP;AAEC,IAAA,GAAG,EAAGC,GAFP;AAGC,IAAA,SAAS,EAAGQ,EAAE,GAAI,YAAYA,EAAI,EAApB,GAAwB,IAHvC;AAIC,IAAA,KAAK,EAAGF,KAJT;AAKC,IAAA,MAAM,EAAGC,MALV;AAMC,IAAA,KAAK,EAAGI;AANT,IADD;AAWA,QAAMK,MAAM,GACX,8BACGb,IAAI,GACL;AACC,IAAA,SAAS,EAAGE,SADb;AAEC,IAAA,IAAI,EAAGF,IAFR;AAGC,IAAA,MAAM,EAAGM,UAHV;AAIC,IAAA,GAAG,EAAGG;AAJP,KAMGG,KANH,CADK,GAULA,KAXF,EAaG,CAAEpB,QAAQ,CAACD,OAAT,CAAkBO,OAAlB,CAAF,IACD,cAAC,QAAD,CAAU,OAAV;AAAkB,IAAA,OAAO,EAAC,YAA1B;AAAuC,IAAA,KAAK,EAAGA;AAA/C,IAdF,CADD;AAoBA,SACC,wBAAaL,aAAa,CAACC,IAAd,CAAoB;AAAEoB,IAAAA,SAAS,EAAEH;AAAb,GAApB,CAAb,EACGE,MADH,CADD;AAKA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { RichText, useBlockProps } from '@wordpress/block-editor';\n\nexport default function save( { attributes } ) {\n\tconst {\n\t\turl,\n\t\talt,\n\t\tcaption,\n\t\talign,\n\t\thref,\n\t\trel,\n\t\tlinkClass,\n\t\twidth,\n\t\theight,\n\t\tid,\n\t\tlinkTarget,\n\t\tsizeSlug,\n\t\ttitle,\n\t} = attributes;\n\n\tconst newRel = isEmpty( rel ) ? undefined : rel;\n\n\tconst classes = classnames( {\n\t\t[ `align${ align }` ]: align,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t'is-resized': width || height,\n\t} );\n\n\tconst image = (\n\t\t<img\n\t\t\tsrc={ url }\n\t\t\talt={ alt }\n\t\t\tclassName={ id ? `wp-image-${ id }` : null }\n\t\t\twidth={ width }\n\t\t\theight={ height }\n\t\t\ttitle={ title }\n\t\t/>\n\t);\n\n\tconst figure = (\n\t\t<>\n\t\t\t{ href ? (\n\t\t\t\t<a\n\t\t\t\t\tclassName={ linkClass }\n\t\t\t\t\thref={ href }\n\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\trel={ newRel }\n\t\t\t\t>\n\t\t\t\t\t{ image }\n\t\t\t\t</a>\n\t\t\t) : (\n\t\t\t\timage\n\t\t\t) }\n\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t<RichText.Content tagName=\"figcaption\" value={ caption } />\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<figure { ...useBlockProps.save( { className: classes } ) }>\n\t\t\t{ figure }\n\t\t</figure>\n\t);\n}\n"]}
|
|
@@ -343,6 +343,7 @@ export default function LatestPostsEdit(_ref) {
|
|
|
343
343
|
}, renderFeaturedImage && createElement("div", {
|
|
344
344
|
className: imageClasses
|
|
345
345
|
}, addLinkToFeaturedImage ? createElement("a", {
|
|
346
|
+
className: "wp-block-latest-posts__post-title",
|
|
346
347
|
href: post.link,
|
|
347
348
|
rel: "noreferrer noopener"
|
|
348
349
|
}, featuredImage) : featuredImage), createElement("a", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/latest-posts/edit.js"],"names":["get","includes","invoke","isUndefined","pickBy","classnames","BaseControl","PanelBody","Placeholder","QueryControls","RadioControl","RangeControl","Spinner","ToggleControl","ToolbarGroup","__","sprintf","dateI18n","format","__experimentalGetSettings","InspectorControls","BlockAlignmentToolbar","BlockControls","__experimentalImageSizeControl","ImageSizeControl","useBlockProps","store","blockEditorStore","useSelect","pin","list","grid","coreStore","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","MAX_POSTS_COLUMNS","CATEGORIES_LIST_QUERY","per_page","context","USERS_LIST_QUERY","has_published_posts","getFeaturedImageDetails","post","size","image","url","media_details","sizes","source_url","alt","alt_text","LatestPostsEdit","attributes","setAttributes","postsToShow","order","orderBy","categories","selectedAuthor","displayFeaturedImage","displayPostContentRadio","displayPostContent","displayPostDate","displayAuthor","postLayout","columns","excerptLength","featuredImageAlign","featuredImageSizeSlug","featuredImageSizeWidth","featuredImageSizeHeight","addLinkToFeaturedImage","imageSizes","latestPosts","defaultImageWidth","defaultImageHeight","categoriesList","authorList","select","getEntityRecords","getUsers","settings","getSettings","catIds","length","map","cat","id","latestPostsQuery","author","orderby","_embed","value","imageDimensions","imageSizeOptions","filter","slug","name","label","categorySuggestions","reduce","accumulator","category","selectCategories","tokens","hasNoSuggestion","some","token","allCategories","hasPosts","inspectorControls","newAttrs","hasOwnProperty","width","height","undefined","Number","Math","min","blockProps","className","Array","isArray","displayPosts","slice","layoutControls","icon","title","onClick","isActive","dateFormat","formats","date","i","titleTrimmed","excerpt","rendered","currentAuthor","find","excerptElement","document","createElement","innerHTML","textContent","innerText","imageSourceUrl","featuredImageAlt","imageClasses","renderFeaturedImage","featuredImage","maxWidth","maxHeight","needsReadMore","trim","split","raw","postExcerpt","join","link","__html","date_gmt","content"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, includes, invoke, isUndefined, pickBy } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tPlaceholder,\n\tQueryControls,\n\tRadioControl,\n\tRangeControl,\n\tSpinner,\n\tToggleControl,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { dateI18n, format, __experimentalGetSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tBlockAlignmentToolbar,\n\tBlockControls,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { pin, list, grid } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMIN_EXCERPT_LENGTH,\n\tMAX_EXCERPT_LENGTH,\n\tMAX_POSTS_COLUMNS,\n} from './constants';\n\n/**\n * Module Constants\n */\nconst CATEGORIES_LIST_QUERY = {\n\tper_page: -1,\n\tcontext: 'view',\n};\nconst USERS_LIST_QUERY = {\n\tper_page: -1,\n\thas_published_posts: [ 'post' ],\n\tcontext: 'view',\n};\n\nfunction getFeaturedImageDetails( post, size ) {\n\tconst image = get( post, [ '_embedded', 'wp:featuredmedia', '0' ] );\n\n\treturn {\n\t\turl:\n\t\t\timage?.media_details?.sizes?.[ size ]?.source_url ??\n\t\t\timage?.source_url,\n\t\talt: image?.alt_text,\n\t};\n}\n\nexport default function LatestPostsEdit( { attributes, setAttributes } ) {\n\tconst {\n\t\tpostsToShow,\n\t\torder,\n\t\torderBy,\n\t\tcategories,\n\t\tselectedAuthor,\n\t\tdisplayFeaturedImage,\n\t\tdisplayPostContentRadio,\n\t\tdisplayPostContent,\n\t\tdisplayPostDate,\n\t\tdisplayAuthor,\n\t\tpostLayout,\n\t\tcolumns,\n\t\texcerptLength,\n\t\tfeaturedImageAlign,\n\t\tfeaturedImageSizeSlug,\n\t\tfeaturedImageSizeWidth,\n\t\tfeaturedImageSizeHeight,\n\t\taddLinkToFeaturedImage,\n\t} = attributes;\n\tconst {\n\t\timageSizes,\n\t\tlatestPosts,\n\t\tdefaultImageWidth,\n\t\tdefaultImageHeight,\n\t\tcategoriesList,\n\t\tauthorList,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getUsers } = select( coreStore );\n\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\tconst catIds =\n\t\t\t\tcategories && categories.length > 0\n\t\t\t\t\t? categories.map( ( cat ) => cat.id )\n\t\t\t\t\t: [];\n\t\t\tconst latestPostsQuery = pickBy(\n\t\t\t\t{\n\t\t\t\t\tcategories: catIds,\n\t\t\t\t\tauthor: selectedAuthor,\n\t\t\t\t\torder,\n\t\t\t\t\torderby: orderBy,\n\t\t\t\t\tper_page: postsToShow,\n\t\t\t\t\t_embed: 'wp:featuredmedia',\n\t\t\t\t},\n\t\t\t\t( value ) => ! isUndefined( value )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tdefaultImageWidth: get(\n\t\t\t\t\tsettings.imageDimensions,\n\t\t\t\t\t[ featuredImageSizeSlug, 'width' ],\n\t\t\t\t\t0\n\t\t\t\t),\n\t\t\t\tdefaultImageHeight: get(\n\t\t\t\t\tsettings.imageDimensions,\n\t\t\t\t\t[ featuredImageSizeSlug, 'height' ],\n\t\t\t\t\t0\n\t\t\t\t),\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tlatestPosts: getEntityRecords(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'post',\n\t\t\t\t\tlatestPostsQuery\n\t\t\t\t),\n\t\t\t\tcategoriesList: getEntityRecords(\n\t\t\t\t\t'taxonomy',\n\t\t\t\t\t'category',\n\t\t\t\t\tCATEGORIES_LIST_QUERY\n\t\t\t\t),\n\t\t\t\tauthorList: getUsers( USERS_LIST_QUERY ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tfeaturedImageSizeSlug,\n\t\t\tpostsToShow,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tcategories,\n\t\t\tselectedAuthor,\n\t\t]\n\t);\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => slug !== 'full' )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\tconst categorySuggestions =\n\t\tcategoriesList?.reduce(\n\t\t\t( accumulator, category ) => ( {\n\t\t\t\t...accumulator,\n\t\t\t\t[ category.name ]: category,\n\t\t\t} ),\n\t\t\t{}\n\t\t) ?? {};\n\tconst selectCategories = ( tokens ) => {\n\t\tconst hasNoSuggestion = tokens.some(\n\t\t\t( token ) =>\n\t\t\t\ttypeof token === 'string' && ! categorySuggestions[ token ]\n\t\t);\n\t\tif ( hasNoSuggestion ) {\n\t\t\treturn;\n\t\t}\n\t\t// Categories that are already will be objects, while new additions will be strings (the name).\n\t\t// allCategories nomalizes the array so that they are all objects.\n\t\tconst allCategories = tokens.map( ( token ) => {\n\t\t\treturn typeof token === 'string'\n\t\t\t\t? categorySuggestions[ token ]\n\t\t\t\t: token;\n\t\t} );\n\t\t// We do nothing if the category is not selected\n\t\t// from suggestions.\n\t\tif ( includes( allCategories, null ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tsetAttributes( { categories: allCategories } );\n\t};\n\n\tconst hasPosts = !! latestPosts?.length;\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Post content settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Post content' ) }\n\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostContent: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t<RadioControl\n\t\t\t\t\t\tlabel={ __( 'Show:' ) }\n\t\t\t\t\t\tselected={ displayPostContentRadio }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Excerpt' ), value: 'excerpt' },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Full post' ),\n\t\t\t\t\t\t\t\tvalue: 'full_post',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayPostContentRadio: 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) }\n\t\t\t\t{ displayPostContent &&\n\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\tlabel={ __( 'Max number of words in excerpt' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Post meta settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display author name' ) }\n\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayAuthor: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostDate: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Featured image settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayFeaturedImage: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tconst newAttrs = {};\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'width' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeWidth =\n\t\t\t\t\t\t\t\t\t\tvalue.width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'height' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeHeight =\n\t\t\t\t\t\t\t\t\t\tvalue.height;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetAttributes( newAttrs );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tslug={ featuredImageSizeSlug }\n\t\t\t\t\t\t\twidth={ featuredImageSizeWidth }\n\t\t\t\t\t\t\theight={ featuredImageSizeHeight }\n\t\t\t\t\t\t\timageWidth={ defaultImageWidth }\n\t\t\t\t\t\t\timageHeight={ defaultImageHeight }\n\t\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChangeImage={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeSlug: value,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeWidth: undefined,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeHeight: undefined,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BaseControl className=\"editor-latest-posts-image-alignment-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Image alignment' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<BlockAlignmentToolbar\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfeaturedImageAlign: 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\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisCollapsed={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taddLinkToFeaturedImage: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t<QueryControls\n\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\tonOrderChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { order: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonOrderByChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { orderBy: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonNumberOfItemsChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { postsToShow: value } )\n\t\t\t\t\t}\n\t\t\t\t\tcategorySuggestions={ categorySuggestions }\n\t\t\t\t\tonCategoryChange={ selectCategories }\n\t\t\t\t\tselectedCategories={ categories }\n\t\t\t\t\tonAuthorChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tselectedAuthor:\n\t\t\t\t\t\t\t\t'' !== value ? Number( value ) : undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tauthorList={ authorList ?? [] }\n\t\t\t\t\tselectedAuthorId={ selectedAuthor }\n\t\t\t\t/>\n\n\t\t\t\t{ postLayout === 'grid' && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t! hasPosts\n\t\t\t\t\t\t\t\t? MAX_POSTS_COLUMNS\n\t\t\t\t\t\t\t\t: Math.min(\n\t\t\t\t\t\t\t\t\t\tMAX_POSTS_COLUMNS,\n\t\t\t\t\t\t\t\t\t\tlatestPosts.length\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'wp-block-latest-posts__list': true,\n\t\t\t'is-grid': postLayout === 'grid',\n\t\t\t'has-dates': displayPostDate,\n\t\t\t'has-author': displayAuthor,\n\t\t\t[ `columns-${ columns }` ]: postLayout === 'grid',\n\t\t} ),\n\t} );\n\n\tif ( ! hasPosts ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ inspectorControls }\n\t\t\t\t<Placeholder icon={ pin } label={ __( 'Latest Posts' ) }>\n\t\t\t\t\t{ ! Array.isArray( latestPosts ) ? (\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t__( 'No posts found.' )\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Removing posts from display should be instant.\n\tconst displayPosts =\n\t\tlatestPosts.length > postsToShow\n\t\t\t? latestPosts.slice( 0, postsToShow )\n\t\t\t: latestPosts;\n\n\tconst layoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: __( 'List view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'list' } ),\n\t\t\tisActive: postLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: __( 'Grid view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'grid' } ),\n\t\t\tisActive: postLayout === 'grid',\n\t\t},\n\t];\n\n\tconst dateFormat = __experimentalGetSettings().formats.date;\n\n\treturn (\n\t\t<div>\n\t\t\t{ inspectorControls }\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ layoutControls } />\n\t\t\t</BlockControls>\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ displayPosts.map( ( post, i ) => {\n\t\t\t\t\tconst titleTrimmed = invoke( post, [\n\t\t\t\t\t\t'title',\n\t\t\t\t\t\t'rendered',\n\t\t\t\t\t\t'trim',\n\t\t\t\t\t] );\n\t\t\t\t\tlet excerpt = post.excerpt.rendered;\n\t\t\t\t\tconst currentAuthor = authorList?.find(\n\t\t\t\t\t\t( author ) => author.id === post.author\n\t\t\t\t\t);\n\n\t\t\t\t\tconst excerptElement = document.createElement( 'div' );\n\t\t\t\t\texcerptElement.innerHTML = excerpt;\n\n\t\t\t\t\texcerpt =\n\t\t\t\t\t\texcerptElement.textContent ||\n\t\t\t\t\t\texcerptElement.innerText ||\n\t\t\t\t\t\t'';\n\n\t\t\t\t\tconst {\n\t\t\t\t\t\turl: imageSourceUrl,\n\t\t\t\t\t\talt: featuredImageAlt,\n\t\t\t\t\t} = getFeaturedImageDetails( post, featuredImageSizeSlug );\n\t\t\t\t\tconst imageClasses = classnames( {\n\t\t\t\t\t\t'wp-block-latest-posts__featured-image': true,\n\t\t\t\t\t\t[ `align${ featuredImageAlign }` ]: !! featuredImageAlign,\n\t\t\t\t\t} );\n\t\t\t\t\tconst renderFeaturedImage =\n\t\t\t\t\t\tdisplayFeaturedImage && imageSourceUrl;\n\t\t\t\t\tconst featuredImage = renderFeaturedImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ imageSourceUrl }\n\t\t\t\t\t\t\talt={ featuredImageAlt }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: featuredImageSizeWidth,\n\t\t\t\t\t\t\t\tmaxHeight: featuredImageSizeHeight,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\tconst needsReadMore =\n\t\t\t\t\t\texcerptLength < excerpt.trim().split( ' ' ).length &&\n\t\t\t\t\t\tpost.excerpt.raw === '';\n\n\t\t\t\t\tconst postExcerpt = needsReadMore ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ excerpt\n\t\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\t\t\t.split( ' ', excerptLength )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t\t{ /* translators: excerpt truncation character, default … */ }\n\t\t\t\t\t\t\t{ __( ' … ' ) }\n\t\t\t\t\t\t\t<a href={ post.link } rel=\"noopener noreferrer\">\n\t\t\t\t\t\t\t\t{ __( 'Read more' ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\texcerpt\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={ i }>\n\t\t\t\t\t\t\t{ renderFeaturedImage && (\n\t\t\t\t\t\t\t\t<div className={ imageClasses }>\n\t\t\t\t\t\t\t\t\t{ addLinkToFeaturedImage ? (\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ featuredImage }\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tfeaturedImage\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={\n\t\t\t\t\t\t\t\t\t!! titleTrimmed\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t__html: titleTrimmed,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ! titleTrimmed ? __( '(no title)' ) : null }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{ displayAuthor && currentAuthor && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-author\">\n\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: byline. %s: current author. */\n\t\t\t\t\t\t\t\t\t\t__( 'by %s' ),\n\t\t\t\t\t\t\t\t\t\tcurrentAuthor.name\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostDate && post.date_gmt && (\n\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\tdateTime={ format( 'c', post.date_gmt ) }\n\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-date\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ dateI18n( dateFormat, post.date_gmt ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-excerpt\">\n\t\t\t\t\t\t\t\t\t\t{ postExcerpt }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'full_post' && (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-full-content\"\n\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t\t\t\t\t__html: post.content.raw.trim(),\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t</div>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/latest-posts/edit.js"],"names":["get","includes","invoke","isUndefined","pickBy","classnames","BaseControl","PanelBody","Placeholder","QueryControls","RadioControl","RangeControl","Spinner","ToggleControl","ToolbarGroup","__","sprintf","dateI18n","format","__experimentalGetSettings","InspectorControls","BlockAlignmentToolbar","BlockControls","__experimentalImageSizeControl","ImageSizeControl","useBlockProps","store","blockEditorStore","useSelect","pin","list","grid","coreStore","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","MAX_POSTS_COLUMNS","CATEGORIES_LIST_QUERY","per_page","context","USERS_LIST_QUERY","has_published_posts","getFeaturedImageDetails","post","size","image","url","media_details","sizes","source_url","alt","alt_text","LatestPostsEdit","attributes","setAttributes","postsToShow","order","orderBy","categories","selectedAuthor","displayFeaturedImage","displayPostContentRadio","displayPostContent","displayPostDate","displayAuthor","postLayout","columns","excerptLength","featuredImageAlign","featuredImageSizeSlug","featuredImageSizeWidth","featuredImageSizeHeight","addLinkToFeaturedImage","imageSizes","latestPosts","defaultImageWidth","defaultImageHeight","categoriesList","authorList","select","getEntityRecords","getUsers","settings","getSettings","catIds","length","map","cat","id","latestPostsQuery","author","orderby","_embed","value","imageDimensions","imageSizeOptions","filter","slug","name","label","categorySuggestions","reduce","accumulator","category","selectCategories","tokens","hasNoSuggestion","some","token","allCategories","hasPosts","inspectorControls","newAttrs","hasOwnProperty","width","height","undefined","Number","Math","min","blockProps","className","Array","isArray","displayPosts","slice","layoutControls","icon","title","onClick","isActive","dateFormat","formats","date","i","titleTrimmed","excerpt","rendered","currentAuthor","find","excerptElement","document","createElement","innerHTML","textContent","innerText","imageSourceUrl","featuredImageAlt","imageClasses","renderFeaturedImage","featuredImage","maxWidth","maxHeight","needsReadMore","trim","split","raw","postExcerpt","join","link","__html","date_gmt","content"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,GAAT,EAAcC,QAAd,EAAwBC,MAAxB,EAAgCC,WAAhC,EAA6CC,MAA7C,QAA2D,QAA3D;AACA,OAAOC,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SACCC,WADD,EAECC,SAFD,EAGCC,WAHD,EAICC,aAJD,EAKCC,YALD,EAMCC,YAND,EAOCC,OAPD,EAQCC,aARD,EASCC,YATD,QAUO,uBAVP;AAWA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AACA,SAASC,QAAT,EAAmBC,MAAnB,EAA2BC,yBAA3B,QAA4D,iBAA5D;AACA,SACCC,iBADD,EAECC,qBAFD,EAGCC,aAHD,EAICC,8BAA8B,IAAIC,gBAJnC,EAKCC,aALD,EAMCC,KAAK,IAAIC,gBANV,QAOO,yBAPP;AAQA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,GAAT,EAAcC,IAAd,EAAoBC,IAApB,QAAgC,kBAAhC;AACA,SAASL,KAAK,IAAIM,SAAlB,QAAmC,sBAAnC;AAEA;AACA;AACA;;AACA,SACCC,kBADD,EAECC,kBAFD,EAGCC,iBAHD,QAIO,aAJP;AAMA;AACA;AACA;;AACA,MAAMC,qBAAqB,GAAG;AAC7BC,EAAAA,QAAQ,EAAE,CAAC,CADkB;AAE7BC,EAAAA,OAAO,EAAE;AAFoB,CAA9B;AAIA,MAAMC,gBAAgB,GAAG;AACxBF,EAAAA,QAAQ,EAAE,CAAC,CADa;AAExBG,EAAAA,mBAAmB,EAAE,CAAE,MAAF,CAFG;AAGxBF,EAAAA,OAAO,EAAE;AAHe,CAAzB;;AAMA,SAASG,uBAAT,CAAkCC,IAAlC,EAAwCC,IAAxC,EAA+C;AAAA;;AAC9C,QAAMC,KAAK,GAAG5C,GAAG,CAAE0C,IAAF,EAAQ,CAAE,WAAF,EAAe,kBAAf,EAAmC,GAAnC,CAAR,CAAjB;AAEA,SAAO;AACNG,IAAAA,GAAG,2BACFD,KADE,aACFA,KADE,+CACFA,KAAK,CAAEE,aADL,mFACF,qBAAsBC,KADpB,qFACF,uBAA+BJ,IAA/B,CADE,2DACF,uBAAuCK,UADrC,yEAEFJ,KAFE,aAEFA,KAFE,uBAEFA,KAAK,CAAEI,UAHF;AAINC,IAAAA,GAAG,EAAEL,KAAF,aAAEA,KAAF,uBAAEA,KAAK,CAAEM;AAJN,GAAP;AAMA;;AAED,eAAe,SAASC,eAAT,OAA0D;AAAA;;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACxE,QAAM;AACLC,IAAAA,WADK;AAELC,IAAAA,KAFK;AAGLC,IAAAA,OAHK;AAILC,IAAAA,UAJK;AAKLC,IAAAA,cALK;AAMLC,IAAAA,oBANK;AAOLC,IAAAA,uBAPK;AAQLC,IAAAA,kBARK;AASLC,IAAAA,eATK;AAULC,IAAAA,aAVK;AAWLC,IAAAA,UAXK;AAYLC,IAAAA,OAZK;AAaLC,IAAAA,aAbK;AAcLC,IAAAA,kBAdK;AAeLC,IAAAA,qBAfK;AAgBLC,IAAAA,sBAhBK;AAiBLC,IAAAA,uBAjBK;AAkBLC,IAAAA;AAlBK,MAmBFnB,UAnBJ;AAoBA,QAAM;AACLoB,IAAAA,UADK;AAELC,IAAAA,WAFK;AAGLC,IAAAA,iBAHK;AAILC,IAAAA,kBAJK;AAKLC,IAAAA,cALK;AAMLC,IAAAA;AANK,MAOFjD,SAAS,CACVkD,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA,gBAAF;AAAoBC,MAAAA;AAApB,QAAiCF,MAAM,CAAE9C,SAAF,CAA7C;AACA,UAAMiD,QAAQ,GAAGH,MAAM,CAAEnD,gBAAF,CAAN,CAA2BuD,WAA3B,EAAjB;AACA,UAAMC,MAAM,GACX1B,UAAU,IAAIA,UAAU,CAAC2B,MAAX,GAAoB,CAAlC,GACG3B,UAAU,CAAC4B,GAAX,CAAkBC,GAAF,IAAWA,GAAG,CAACC,EAA/B,CADH,GAEG,EAHJ;AAIA,UAAMC,gBAAgB,GAAGpF,MAAM,CAC9B;AACCqD,MAAAA,UAAU,EAAE0B,MADb;AAECM,MAAAA,MAAM,EAAE/B,cAFT;AAGCH,MAAAA,KAHD;AAICmC,MAAAA,OAAO,EAAElC,OAJV;AAKCnB,MAAAA,QAAQ,EAAEiB,WALX;AAMCqC,MAAAA,MAAM,EAAE;AANT,KAD8B,EAS5BC,KAAF,IAAa,CAAEzF,WAAW,CAAEyF,KAAF,CATI,CAA/B;AAYA,WAAO;AACNlB,MAAAA,iBAAiB,EAAE1E,GAAG,CACrBiF,QAAQ,CAACY,eADY,EAErB,CAAEzB,qBAAF,EAAyB,OAAzB,CAFqB,EAGrB,CAHqB,CADhB;AAMNO,MAAAA,kBAAkB,EAAE3E,GAAG,CACtBiF,QAAQ,CAACY,eADa,EAEtB,CAAEzB,qBAAF,EAAyB,QAAzB,CAFsB,EAGtB,CAHsB,CANjB;AAWNI,MAAAA,UAAU,EAAES,QAAQ,CAACT,UAXf;AAYNC,MAAAA,WAAW,EAAEM,gBAAgB,CAC5B,UAD4B,EAE5B,MAF4B,EAG5BS,gBAH4B,CAZvB;AAiBNZ,MAAAA,cAAc,EAAEG,gBAAgB,CAC/B,UAD+B,EAE/B,UAF+B,EAG/B3C,qBAH+B,CAjB1B;AAsBNyC,MAAAA,UAAU,EAAEG,QAAQ,CAAEzC,gBAAF;AAtBd,KAAP;AAwBA,GA5CW,EA6CZ,CACC6B,qBADD,EAECd,WAFD,EAGCC,KAHD,EAICC,OAJD,EAKCC,UALD,EAMCC,cAND,CA7CY,CAPb;AA8DA,QAAMoC,gBAAgB,GAAGtB,UAAU,CACjCuB,MADuB,CACf;AAAA,QAAE;AAAEC,MAAAA;AAAF,KAAF;AAAA,WAAgBA,IAAI,KAAK,MAAzB;AAAA,GADe,EAEvBX,GAFuB,CAElB;AAAA,QAAE;AAAEY,MAAAA,IAAF;AAAQD,MAAAA;AAAR,KAAF;AAAA,WAAwB;AAC7BJ,MAAAA,KAAK,EAAEI,IADsB;AAE7BE,MAAAA,KAAK,EAAED;AAFsB,KAAxB;AAAA,GAFkB,CAAzB;AAMA,QAAME,mBAAmB,4BACxBvB,cADwB,aACxBA,cADwB,uBACxBA,cAAc,CAAEwB,MAAhB,CACC,CAAEC,WAAF,EAAeC,QAAf,MAA+B,EAC9B,GAAGD,WAD2B;AAE9B,KAAEC,QAAQ,CAACL,IAAX,GAAmBK;AAFW,GAA/B,CADD,EAKC,EALD,CADwB,yEAOnB,EAPN;;AAQA,QAAMC,gBAAgB,GAAKC,MAAF,IAAc;AACtC,UAAMC,eAAe,GAAGD,MAAM,CAACE,IAAP,CACrBC,KAAF,IACC,OAAOA,KAAP,KAAiB,QAAjB,IAA6B,CAAER,mBAAmB,CAAEQ,KAAF,CAF5B,CAAxB;;AAIA,QAAKF,eAAL,EAAuB;AACtB;AACA,KAPqC,CAQtC;AACA;;;AACA,UAAMG,aAAa,GAAGJ,MAAM,CAACnB,GAAP,CAAcsB,KAAF,IAAa;AAC9C,aAAO,OAAOA,KAAP,KAAiB,QAAjB,GACJR,mBAAmB,CAAEQ,KAAF,CADf,GAEJA,KAFH;AAGA,KAJqB,CAAtB,CAVsC,CAetC;AACA;;AACA,QAAK1G,QAAQ,CAAE2G,aAAF,EAAiB,IAAjB,CAAb,EAAuC;AACtC,aAAO,KAAP;AACA;;AACDvD,IAAAA,aAAa,CAAE;AAAEI,MAAAA,UAAU,EAAEmD;AAAd,KAAF,CAAb;AACA,GArBD;;AAuBA,QAAMC,QAAQ,GAAG,CAAC,EAAEpC,WAAF,aAAEA,WAAF,eAAEA,WAAW,CAAEW,MAAf,CAAlB;AACA,QAAM0B,iBAAiB,GACtB,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAG/F,EAAE,CAAE,uBAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,cAAF,CADX;AAEC,IAAA,OAAO,EAAG8C,kBAFX;AAGC,IAAA,QAAQ,EAAK+B,KAAF,IACVvC,aAAa,CAAE;AAAEQ,MAAAA,kBAAkB,EAAE+B;AAAtB,KAAF;AAJf,IADD,EAQG/B,kBAAkB,IACnB,cAAC,YAAD;AACC,IAAA,KAAK,EAAG9C,EAAE,CAAE,OAAF,CADX;AAEC,IAAA,QAAQ,EAAG6C,uBAFZ;AAGC,IAAA,OAAO,EAAG,CACT;AAAEsC,MAAAA,KAAK,EAAEnF,EAAE,CAAE,SAAF,CAAX;AAA0B6E,MAAAA,KAAK,EAAE;AAAjC,KADS,EAET;AACCM,MAAAA,KAAK,EAAEnF,EAAE,CAAE,WAAF,CADV;AAEC6E,MAAAA,KAAK,EAAE;AAFR,KAFS,CAHX;AAUC,IAAA,QAAQ,EAAKA,KAAF,IACVvC,aAAa,CAAE;AACdO,MAAAA,uBAAuB,EAAEgC;AADX,KAAF;AAXf,IATF,EA0BG/B,kBAAkB,IACnBD,uBAAuB,KAAK,SAD3B,IAEA,cAAC,YAAD;AACC,IAAA,KAAK,EAAG7C,EAAE,CAAE,gCAAF,CADX;AAEC,IAAA,KAAK,EAAGmD,aAFT;AAGC,IAAA,QAAQ,EAAK0B,KAAF,IACVvC,aAAa,CAAE;AAAEa,MAAAA,aAAa,EAAE0B;AAAjB,KAAF,CAJf;AAMC,IAAA,GAAG,EAAG3D,kBANP;AAOC,IAAA,GAAG,EAAGC;AAPP,IA5BH,CADD,EAyCC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGnB,EAAE,CAAE,oBAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,qBAAF,CADX;AAEC,IAAA,OAAO,EAAGgD,aAFX;AAGC,IAAA,QAAQ,EAAK6B,KAAF,IACVvC,aAAa,CAAE;AAAEU,MAAAA,aAAa,EAAE6B;AAAjB,KAAF;AAJf,IADD,EAQC,cAAC,aAAD;AACC,IAAA,KAAK,EAAG7E,EAAE,CAAE,mBAAF,CADX;AAEC,IAAA,OAAO,EAAG+C,eAFX;AAGC,IAAA,QAAQ,EAAK8B,KAAF,IACVvC,aAAa,CAAE;AAAES,MAAAA,eAAe,EAAE8B;AAAnB,KAAF;AAJf,IARD,CAzCD,EA0DC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAG7E,EAAE,CAAE,yBAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,wBAAF,CADX;AAEC,IAAA,OAAO,EAAG4C,oBAFX;AAGC,IAAA,QAAQ,EAAKiC,KAAF,IACVvC,aAAa,CAAE;AAAEM,MAAAA,oBAAoB,EAAEiC;AAAxB,KAAF;AAJf,IADD,EAQGjC,oBAAoB,IACrB,8BACC,cAAC,gBAAD;AACC,IAAA,QAAQ,EAAKiC,KAAF,IAAa;AACvB,YAAMmB,QAAQ,GAAG,EAAjB;;AACA,UAAKnB,KAAK,CAACoB,cAAN,CAAsB,OAAtB,CAAL,EAAuC;AACtCD,QAAAA,QAAQ,CAAC1C,sBAAT,GACCuB,KAAK,CAACqB,KADP;AAEA;;AACD,UAAKrB,KAAK,CAACoB,cAAN,CAAsB,QAAtB,CAAL,EAAwC;AACvCD,QAAAA,QAAQ,CAACzC,uBAAT,GACCsB,KAAK,CAACsB,MADP;AAEA;;AACD7D,MAAAA,aAAa,CAAE0D,QAAF,CAAb;AACA,KAZF;AAaC,IAAA,IAAI,EAAG3C,qBAbR;AAcC,IAAA,KAAK,EAAGC,sBAdT;AAeC,IAAA,MAAM,EAAGC,uBAfV;AAgBC,IAAA,UAAU,EAAGI,iBAhBd;AAiBC,IAAA,WAAW,EAAGC,kBAjBf;AAkBC,IAAA,gBAAgB,EAAGmB,gBAlBpB;AAmBC,IAAA,aAAa,EAAKF,KAAF,IACfvC,aAAa,CAAE;AACde,MAAAA,qBAAqB,EAAEwB,KADT;AAEdvB,MAAAA,sBAAsB,EAAE8C,SAFV;AAGd7C,MAAAA,uBAAuB,EAAE6C;AAHX,KAAF;AApBf,IADD,EA4BC,cAAC,WAAD;AAAa,IAAA,SAAS,EAAC;AAAvB,KACC,cAAC,WAAD,CAAa,WAAb,QACGpG,EAAE,CAAE,iBAAF,CADL,CADD,EAIC,cAAC,qBAAD;AACC,IAAA,KAAK,EAAGoD,kBADT;AAEC,IAAA,QAAQ,EAAKyB,KAAF,IACVvC,aAAa,CAAE;AACdc,MAAAA,kBAAkB,EAAEyB;AADN,KAAF,CAHf;AAOC,IAAA,QAAQ,EAAG,CAAE,MAAF,EAAU,QAAV,EAAoB,OAApB,CAPZ;AAQC,IAAA,WAAW,EAAG;AARf,IAJD,CA5BD,EA2CC,cAAC,aAAD;AACC,IAAA,KAAK,EAAG7E,EAAE,CAAE,4BAAF,CADX;AAEC,IAAA,OAAO,EAAGwD,sBAFX;AAGC,IAAA,QAAQ,EAAKqB,KAAF,IACVvC,aAAa,CAAE;AACdkB,MAAAA,sBAAsB,EAAEqB;AADV,KAAF;AAJf,IA3CD,CATF,CA1DD,EA2HC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAG7E,EAAE,CAAE,uBAAF;AAArB,KACC,cAAC,aAAD;AACQwC,IAAAA,KADR;AACeC,IAAAA,OADf;AAEC,IAAA,aAAa,EAAGF,WAFjB;AAGC,IAAA,aAAa,EAAKsC,KAAF,IACfvC,aAAa,CAAE;AAAEE,MAAAA,KAAK,EAAEqC;AAAT,KAAF,CAJf;AAMC,IAAA,eAAe,EAAKA,KAAF,IACjBvC,aAAa,CAAE;AAAEG,MAAAA,OAAO,EAAEoC;AAAX,KAAF,CAPf;AASC,IAAA,qBAAqB,EAAKA,KAAF,IACvBvC,aAAa,CAAE;AAAEC,MAAAA,WAAW,EAAEsC;AAAf,KAAF,CAVf;AAYC,IAAA,mBAAmB,EAAGO,mBAZvB;AAaC,IAAA,gBAAgB,EAAGI,gBAbpB;AAcC,IAAA,kBAAkB,EAAG9C,UAdtB;AAeC,IAAA,cAAc,EAAKmC,KAAF,IAChBvC,aAAa,CAAE;AACdK,MAAAA,cAAc,EACb,OAAOkC,KAAP,GAAewB,MAAM,CAAExB,KAAF,CAArB,GAAiCuB;AAFpB,KAAF,CAhBf;AAqBC,IAAA,UAAU,EAAGtC,UAAH,aAAGA,UAAH,cAAGA,UAAH,GAAiB,EArB5B;AAsBC,IAAA,gBAAgB,EAAGnB;AAtBpB,IADD,EA0BGM,UAAU,KAAK,MAAf,IACD,cAAC,YAAD;AACC,IAAA,KAAK,EAAGjD,EAAE,CAAE,SAAF,CADX;AAEC,IAAA,KAAK,EAAGkD,OAFT;AAGC,IAAA,QAAQ,EAAK2B,KAAF,IACVvC,aAAa,CAAE;AAAEY,MAAAA,OAAO,EAAE2B;AAAX,KAAF,CAJf;AAMC,IAAA,GAAG,EAAG,CANP;AAOC,IAAA,GAAG,EACF,CAAEiB,QAAF,GACG1E,iBADH,GAEGkF,IAAI,CAACC,GAAL,CACAnF,iBADA,EAEAsC,WAAW,CAACW,MAFZ,CAVL;AAeC,IAAA,QAAQ;AAfT,IA3BF,CA3HD,CADD;AA6KA,QAAMmC,UAAU,GAAG9F,aAAa,CAAE;AACjC+F,IAAAA,SAAS,EAAEnH,UAAU,CAAE;AACtB,qCAA+B,IADT;AAEtB,iBAAW2D,UAAU,KAAK,MAFJ;AAGtB,mBAAaF,eAHS;AAItB,oBAAcC,aAJQ;AAKtB,OAAG,WAAWE,OAAS,EAAvB,GAA4BD,UAAU,KAAK;AALrB,KAAF;AADY,GAAF,CAAhC;;AAUA,MAAK,CAAE6C,QAAP,EAAkB;AACjB,WACC,qBAAUU,UAAV,EACGT,iBADH,EAEC,cAAC,WAAD;AAAa,MAAA,IAAI,EAAGjF,GAApB;AAA0B,MAAA,KAAK,EAAGd,EAAE,CAAE,cAAF;AAApC,OACG,CAAE0G,KAAK,CAACC,OAAN,CAAejD,WAAf,CAAF,GACD,cAAC,OAAD,OADC,GAGD1D,EAAE,CAAE,iBAAF,CAJJ,CAFD,CADD;AAYA,GA7TuE,CA+TxE;;;AACA,QAAM4G,YAAY,GACjBlD,WAAW,CAACW,MAAZ,GAAqB9B,WAArB,GACGmB,WAAW,CAACmD,KAAZ,CAAmB,CAAnB,EAAsBtE,WAAtB,CADH,GAEGmB,WAHJ;AAKA,QAAMoD,cAAc,GAAG,CACtB;AACCC,IAAAA,IAAI,EAAEhG,IADP;AAECiG,IAAAA,KAAK,EAAEhH,EAAE,CAAE,WAAF,CAFV;AAGCiH,IAAAA,OAAO,EAAE,MAAM3E,aAAa,CAAE;AAAEW,MAAAA,UAAU,EAAE;AAAd,KAAF,CAH7B;AAICiE,IAAAA,QAAQ,EAAEjE,UAAU,KAAK;AAJ1B,GADsB,EAOtB;AACC8D,IAAAA,IAAI,EAAE/F,IADP;AAECgG,IAAAA,KAAK,EAAEhH,EAAE,CAAE,WAAF,CAFV;AAGCiH,IAAAA,OAAO,EAAE,MAAM3E,aAAa,CAAE;AAAEW,MAAAA,UAAU,EAAE;AAAd,KAAF,CAH7B;AAICiE,IAAAA,QAAQ,EAAEjE,UAAU,KAAK;AAJ1B,GAPsB,CAAvB;;AAeA,QAAMkE,UAAU,GAAG/G,yBAAyB,GAAGgH,OAA5B,CAAoCC,IAAvD;;AAEA,SACC,2BACGtB,iBADH,EAEC,cAAC,aAAD,QACC,cAAC,YAAD;AAAc,IAAA,QAAQ,EAAGe;AAAzB,IADD,CAFD,EAKC,oBAASN,UAAT,EACGI,YAAY,CAACtC,GAAb,CAAkB,CAAE3C,IAAF,EAAQ2F,CAAR,KAAe;AAClC,UAAMC,YAAY,GAAGpI,MAAM,CAAEwC,IAAF,EAAQ,CAClC,OADkC,EAElC,UAFkC,EAGlC,MAHkC,CAAR,CAA3B;AAKA,QAAI6F,OAAO,GAAG7F,IAAI,CAAC6F,OAAL,CAAaC,QAA3B;AACA,UAAMC,aAAa,GAAG5D,UAAH,aAAGA,UAAH,uBAAGA,UAAU,CAAE6D,IAAZ,CACnBjD,MAAF,IAAcA,MAAM,CAACF,EAAP,KAAc7C,IAAI,CAAC+C,MADZ,CAAtB;AAIA,UAAMkD,cAAc,GAAGC,QAAQ,CAACC,aAAT,CAAwB,KAAxB,CAAvB;AACAF,IAAAA,cAAc,CAACG,SAAf,GAA2BP,OAA3B;AAEAA,IAAAA,OAAO,GACNI,cAAc,CAACI,WAAf,IACAJ,cAAc,CAACK,SADf,IAEA,EAHD;AAKA,UAAM;AACLnG,MAAAA,GAAG,EAAEoG,cADA;AAELhG,MAAAA,GAAG,EAAEiG;AAFA,QAGFzG,uBAAuB,CAAEC,IAAF,EAAQ0B,qBAAR,CAH3B;AAIA,UAAM+E,YAAY,GAAG9I,UAAU,CAAE;AAChC,+CAAyC,IADT;AAEhC,OAAG,QAAQ8D,kBAAoB,EAA/B,GAAoC,CAAC,CAAEA;AAFP,KAAF,CAA/B;AAIA,UAAMiF,mBAAmB,GACxBzF,oBAAoB,IAAIsF,cADzB;AAEA,UAAMI,aAAa,GAAGD,mBAAmB,IACxC;AACC,MAAA,GAAG,EAAGH,cADP;AAEC,MAAA,GAAG,EAAGC,gBAFP;AAGC,MAAA,KAAK,EAAG;AACPI,QAAAA,QAAQ,EAAEjF,sBADH;AAEPkF,QAAAA,SAAS,EAAEjF;AAFJ;AAHT,MADD;AAWA,UAAMkF,aAAa,GAClBtF,aAAa,GAAGqE,OAAO,CAACkB,IAAR,GAAeC,KAAf,CAAsB,GAAtB,EAA4BtE,MAA5C,IACA1C,IAAI,CAAC6F,OAAL,CAAaoB,GAAb,KAAqB,EAFtB;AAIA,UAAMC,WAAW,GAAGJ,aAAa,GAChC,8BACGjB,OAAO,CACPkB,IADA,GAEAC,KAFA,CAEO,GAFP,EAEYxF,aAFZ,EAGA2F,IAHA,CAGM,GAHN,CADH,EAMG9I,EAAE,CAAE,KAAF,CANL,EAOC;AAAG,MAAA,IAAI,EAAG2B,IAAI,CAACoH,IAAf;AAAsB,MAAA,GAAG,EAAC;AAA1B,OACG/I,EAAE,CAAE,WAAF,CADL,CAPD,CADgC,GAahCwH,OAbD;AAgBA,WACC;AAAI,MAAA,GAAG,EAAGF;AAAV,OACGe,mBAAmB,IACpB;AAAK,MAAA,SAAS,EAAGD;AAAjB,OACG5E,sBAAsB,GACvB;AACC,MAAA,SAAS,EAAC,mCADX;AAEC,MAAA,IAAI,EAAG7B,IAAI,CAACoH,IAFb;AAGC,MAAA,GAAG,EAAC;AAHL,OAKGT,aALH,CADuB,GASvBA,aAVF,CAFF,EAgBC;AACC,MAAA,IAAI,EAAG3G,IAAI,CAACoH,IADb;AAEC,MAAA,GAAG,EAAC,qBAFL;AAGC,MAAA,uBAAuB,EACtB,CAAC,CAAExB,YAAH,GACG;AACAyB,QAAAA,MAAM,EAAEzB;AADR,OADH,GAIGnB;AARL,OAWG,CAAEmB,YAAF,GAAiBvH,EAAE,CAAE,YAAF,CAAnB,GAAsC,IAXzC,CAhBD,EA6BGgD,aAAa,IAAI0E,aAAjB,IACD;AAAK,MAAA,SAAS,EAAC;AAAf,OACGzH,OAAO;AACR;AACAD,IAAAA,EAAE,CAAE,OAAF,CAFM,EAGR0H,aAAa,CAACxC,IAHN,CADV,CA9BF,EAsCGnC,eAAe,IAAIpB,IAAI,CAACsH,QAAxB,IACD;AACC,MAAA,QAAQ,EAAG9I,MAAM,CAAE,GAAF,EAAOwB,IAAI,CAACsH,QAAZ,CADlB;AAEC,MAAA,SAAS,EAAC;AAFX,OAIG/I,QAAQ,CAAEiH,UAAF,EAAcxF,IAAI,CAACsH,QAAnB,CAJX,CAvCF,EA8CGnG,kBAAkB,IACnBD,uBAAuB,KAAK,SAD3B,IAEA;AAAK,MAAA,SAAS,EAAC;AAAf,OACGgG,WADH,CAhDH,EAoDG/F,kBAAkB,IACnBD,uBAAuB,KAAK,WAD3B,IAEA;AACC,MAAA,SAAS,EAAC,0CADX;AAEC,MAAA,uBAAuB,EAAG;AACzBmG,QAAAA,MAAM,EAAErH,IAAI,CAACuH,OAAL,CAAaN,GAAb,CAAiBF,IAAjB;AADiB;AAF3B,MAtDH,CADD;AAgEA,GA5HC,CADH,CALD,CADD;AAuIA","sourcesContent":["/**\n * External dependencies\n */\nimport { get, includes, invoke, isUndefined, pickBy } from 'lodash';\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tPlaceholder,\n\tQueryControls,\n\tRadioControl,\n\tRangeControl,\n\tSpinner,\n\tToggleControl,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { dateI18n, format, __experimentalGetSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tBlockAlignmentToolbar,\n\tBlockControls,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { pin, list, grid } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMIN_EXCERPT_LENGTH,\n\tMAX_EXCERPT_LENGTH,\n\tMAX_POSTS_COLUMNS,\n} from './constants';\n\n/**\n * Module Constants\n */\nconst CATEGORIES_LIST_QUERY = {\n\tper_page: -1,\n\tcontext: 'view',\n};\nconst USERS_LIST_QUERY = {\n\tper_page: -1,\n\thas_published_posts: [ 'post' ],\n\tcontext: 'view',\n};\n\nfunction getFeaturedImageDetails( post, size ) {\n\tconst image = get( post, [ '_embedded', 'wp:featuredmedia', '0' ] );\n\n\treturn {\n\t\turl:\n\t\t\timage?.media_details?.sizes?.[ size ]?.source_url ??\n\t\t\timage?.source_url,\n\t\talt: image?.alt_text,\n\t};\n}\n\nexport default function LatestPostsEdit( { attributes, setAttributes } ) {\n\tconst {\n\t\tpostsToShow,\n\t\torder,\n\t\torderBy,\n\t\tcategories,\n\t\tselectedAuthor,\n\t\tdisplayFeaturedImage,\n\t\tdisplayPostContentRadio,\n\t\tdisplayPostContent,\n\t\tdisplayPostDate,\n\t\tdisplayAuthor,\n\t\tpostLayout,\n\t\tcolumns,\n\t\texcerptLength,\n\t\tfeaturedImageAlign,\n\t\tfeaturedImageSizeSlug,\n\t\tfeaturedImageSizeWidth,\n\t\tfeaturedImageSizeHeight,\n\t\taddLinkToFeaturedImage,\n\t} = attributes;\n\tconst {\n\t\timageSizes,\n\t\tlatestPosts,\n\t\tdefaultImageWidth,\n\t\tdefaultImageHeight,\n\t\tcategoriesList,\n\t\tauthorList,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getUsers } = select( coreStore );\n\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\tconst catIds =\n\t\t\t\tcategories && categories.length > 0\n\t\t\t\t\t? categories.map( ( cat ) => cat.id )\n\t\t\t\t\t: [];\n\t\t\tconst latestPostsQuery = pickBy(\n\t\t\t\t{\n\t\t\t\t\tcategories: catIds,\n\t\t\t\t\tauthor: selectedAuthor,\n\t\t\t\t\torder,\n\t\t\t\t\torderby: orderBy,\n\t\t\t\t\tper_page: postsToShow,\n\t\t\t\t\t_embed: 'wp:featuredmedia',\n\t\t\t\t},\n\t\t\t\t( value ) => ! isUndefined( value )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tdefaultImageWidth: get(\n\t\t\t\t\tsettings.imageDimensions,\n\t\t\t\t\t[ featuredImageSizeSlug, 'width' ],\n\t\t\t\t\t0\n\t\t\t\t),\n\t\t\t\tdefaultImageHeight: get(\n\t\t\t\t\tsettings.imageDimensions,\n\t\t\t\t\t[ featuredImageSizeSlug, 'height' ],\n\t\t\t\t\t0\n\t\t\t\t),\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tlatestPosts: getEntityRecords(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'post',\n\t\t\t\t\tlatestPostsQuery\n\t\t\t\t),\n\t\t\t\tcategoriesList: getEntityRecords(\n\t\t\t\t\t'taxonomy',\n\t\t\t\t\t'category',\n\t\t\t\t\tCATEGORIES_LIST_QUERY\n\t\t\t\t),\n\t\t\t\tauthorList: getUsers( USERS_LIST_QUERY ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tfeaturedImageSizeSlug,\n\t\t\tpostsToShow,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tcategories,\n\t\t\tselectedAuthor,\n\t\t]\n\t);\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => slug !== 'full' )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\tconst categorySuggestions =\n\t\tcategoriesList?.reduce(\n\t\t\t( accumulator, category ) => ( {\n\t\t\t\t...accumulator,\n\t\t\t\t[ category.name ]: category,\n\t\t\t} ),\n\t\t\t{}\n\t\t) ?? {};\n\tconst selectCategories = ( tokens ) => {\n\t\tconst hasNoSuggestion = tokens.some(\n\t\t\t( token ) =>\n\t\t\t\ttypeof token === 'string' && ! categorySuggestions[ token ]\n\t\t);\n\t\tif ( hasNoSuggestion ) {\n\t\t\treturn;\n\t\t}\n\t\t// Categories that are already will be objects, while new additions will be strings (the name).\n\t\t// allCategories nomalizes the array so that they are all objects.\n\t\tconst allCategories = tokens.map( ( token ) => {\n\t\t\treturn typeof token === 'string'\n\t\t\t\t? categorySuggestions[ token ]\n\t\t\t\t: token;\n\t\t} );\n\t\t// We do nothing if the category is not selected\n\t\t// from suggestions.\n\t\tif ( includes( allCategories, null ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tsetAttributes( { categories: allCategories } );\n\t};\n\n\tconst hasPosts = !! latestPosts?.length;\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Post content settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Post content' ) }\n\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostContent: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t<RadioControl\n\t\t\t\t\t\tlabel={ __( 'Show:' ) }\n\t\t\t\t\t\tselected={ displayPostContentRadio }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Excerpt' ), value: 'excerpt' },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Full post' ),\n\t\t\t\t\t\t\t\tvalue: 'full_post',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayPostContentRadio: 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) }\n\t\t\t\t{ displayPostContent &&\n\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\tlabel={ __( 'Max number of words in excerpt' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Post meta settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display author name' ) }\n\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayAuthor: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostDate: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Featured image settings' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayFeaturedImage: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tconst newAttrs = {};\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'width' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeWidth =\n\t\t\t\t\t\t\t\t\t\tvalue.width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'height' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeHeight =\n\t\t\t\t\t\t\t\t\t\tvalue.height;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetAttributes( newAttrs );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tslug={ featuredImageSizeSlug }\n\t\t\t\t\t\t\twidth={ featuredImageSizeWidth }\n\t\t\t\t\t\t\theight={ featuredImageSizeHeight }\n\t\t\t\t\t\t\timageWidth={ defaultImageWidth }\n\t\t\t\t\t\t\timageHeight={ defaultImageHeight }\n\t\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChangeImage={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeSlug: value,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeWidth: undefined,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeHeight: undefined,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BaseControl className=\"editor-latest-posts-image-alignment-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Image alignment' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<BlockAlignmentToolbar\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfeaturedImageAlign: 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\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisCollapsed={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taddLinkToFeaturedImage: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t<QueryControls\n\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\tonOrderChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { order: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonOrderByChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { orderBy: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonNumberOfItemsChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { postsToShow: value } )\n\t\t\t\t\t}\n\t\t\t\t\tcategorySuggestions={ categorySuggestions }\n\t\t\t\t\tonCategoryChange={ selectCategories }\n\t\t\t\t\tselectedCategories={ categories }\n\t\t\t\t\tonAuthorChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tselectedAuthor:\n\t\t\t\t\t\t\t\t'' !== value ? Number( value ) : undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tauthorList={ authorList ?? [] }\n\t\t\t\t\tselectedAuthorId={ selectedAuthor }\n\t\t\t\t/>\n\n\t\t\t\t{ postLayout === 'grid' && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t! hasPosts\n\t\t\t\t\t\t\t\t? MAX_POSTS_COLUMNS\n\t\t\t\t\t\t\t\t: Math.min(\n\t\t\t\t\t\t\t\t\t\tMAX_POSTS_COLUMNS,\n\t\t\t\t\t\t\t\t\t\tlatestPosts.length\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'wp-block-latest-posts__list': true,\n\t\t\t'is-grid': postLayout === 'grid',\n\t\t\t'has-dates': displayPostDate,\n\t\t\t'has-author': displayAuthor,\n\t\t\t[ `columns-${ columns }` ]: postLayout === 'grid',\n\t\t} ),\n\t} );\n\n\tif ( ! hasPosts ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ inspectorControls }\n\t\t\t\t<Placeholder icon={ pin } label={ __( 'Latest Posts' ) }>\n\t\t\t\t\t{ ! Array.isArray( latestPosts ) ? (\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t__( 'No posts found.' )\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Removing posts from display should be instant.\n\tconst displayPosts =\n\t\tlatestPosts.length > postsToShow\n\t\t\t? latestPosts.slice( 0, postsToShow )\n\t\t\t: latestPosts;\n\n\tconst layoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: __( 'List view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'list' } ),\n\t\t\tisActive: postLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: __( 'Grid view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'grid' } ),\n\t\t\tisActive: postLayout === 'grid',\n\t\t},\n\t];\n\n\tconst dateFormat = __experimentalGetSettings().formats.date;\n\n\treturn (\n\t\t<div>\n\t\t\t{ inspectorControls }\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ layoutControls } />\n\t\t\t</BlockControls>\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ displayPosts.map( ( post, i ) => {\n\t\t\t\t\tconst titleTrimmed = invoke( post, [\n\t\t\t\t\t\t'title',\n\t\t\t\t\t\t'rendered',\n\t\t\t\t\t\t'trim',\n\t\t\t\t\t] );\n\t\t\t\t\tlet excerpt = post.excerpt.rendered;\n\t\t\t\t\tconst currentAuthor = authorList?.find(\n\t\t\t\t\t\t( author ) => author.id === post.author\n\t\t\t\t\t);\n\n\t\t\t\t\tconst excerptElement = document.createElement( 'div' );\n\t\t\t\t\texcerptElement.innerHTML = excerpt;\n\n\t\t\t\t\texcerpt =\n\t\t\t\t\t\texcerptElement.textContent ||\n\t\t\t\t\t\texcerptElement.innerText ||\n\t\t\t\t\t\t'';\n\n\t\t\t\t\tconst {\n\t\t\t\t\t\turl: imageSourceUrl,\n\t\t\t\t\t\talt: featuredImageAlt,\n\t\t\t\t\t} = getFeaturedImageDetails( post, featuredImageSizeSlug );\n\t\t\t\t\tconst imageClasses = classnames( {\n\t\t\t\t\t\t'wp-block-latest-posts__featured-image': true,\n\t\t\t\t\t\t[ `align${ featuredImageAlign }` ]: !! featuredImageAlign,\n\t\t\t\t\t} );\n\t\t\t\t\tconst renderFeaturedImage =\n\t\t\t\t\t\tdisplayFeaturedImage && imageSourceUrl;\n\t\t\t\t\tconst featuredImage = renderFeaturedImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ imageSourceUrl }\n\t\t\t\t\t\t\talt={ featuredImageAlt }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: featuredImageSizeWidth,\n\t\t\t\t\t\t\t\tmaxHeight: featuredImageSizeHeight,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\tconst needsReadMore =\n\t\t\t\t\t\texcerptLength < excerpt.trim().split( ' ' ).length &&\n\t\t\t\t\t\tpost.excerpt.raw === '';\n\n\t\t\t\t\tconst postExcerpt = needsReadMore ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ excerpt\n\t\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\t\t\t.split( ' ', excerptLength )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t\t{ /* translators: excerpt truncation character, default … */ }\n\t\t\t\t\t\t\t{ __( ' … ' ) }\n\t\t\t\t\t\t\t<a href={ post.link } rel=\"noopener noreferrer\">\n\t\t\t\t\t\t\t\t{ __( 'Read more' ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\texcerpt\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={ i }>\n\t\t\t\t\t\t\t{ renderFeaturedImage && (\n\t\t\t\t\t\t\t\t<div className={ imageClasses }>\n\t\t\t\t\t\t\t\t\t{ addLinkToFeaturedImage ? (\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-title\"\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ featuredImage }\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tfeaturedImage\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={\n\t\t\t\t\t\t\t\t\t!! titleTrimmed\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t__html: titleTrimmed,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ! titleTrimmed ? __( '(no title)' ) : null }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{ displayAuthor && currentAuthor && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-author\">\n\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: byline. %s: current author. */\n\t\t\t\t\t\t\t\t\t\t__( 'by %s' ),\n\t\t\t\t\t\t\t\t\t\tcurrentAuthor.name\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostDate && post.date_gmt && (\n\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\tdateTime={ format( 'c', post.date_gmt ) }\n\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-date\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ dateI18n( dateFormat, post.date_gmt ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-excerpt\">\n\t\t\t\t\t\t\t\t\t\t{ postExcerpt }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'full_post' && (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-full-content\"\n\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t\t\t\t\t__html: post.content.raw.trim(),\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -161,12 +161,12 @@ function Navigation(_ref) {
|
|
|
161
161
|
hasResolvedNavigationMenus,
|
|
162
162
|
navigationMenus,
|
|
163
163
|
navigationMenu,
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
164
|
+
canUserUpdateNavigationMenu,
|
|
165
|
+
hasResolvedCanUserUpdateNavigationMenu,
|
|
166
|
+
canUserDeleteNavigationMenu,
|
|
167
|
+
hasResolvedCanUserDeleteNavigationMenu,
|
|
168
|
+
canUserCreateNavigationMenu,
|
|
169
|
+
hasResolvedCanUserCreateNavigationMenu
|
|
170
170
|
} = useNavigationMenu(ref);
|
|
171
171
|
const navRef = useRef();
|
|
172
172
|
const isDraftNavigationMenu = (navigationMenu === null || navigationMenu === void 0 ? void 0 : navigationMenu.status) === 'draft';
|
|
@@ -255,15 +255,15 @@ function Navigation(_ref) {
|
|
|
255
255
|
}
|
|
256
256
|
|
|
257
257
|
if (isSelected || isInnerBlockSelected) {
|
|
258
|
-
if (
|
|
258
|
+
if (hasResolvedCanUserUpdateNavigationMenu && !canUserUpdateNavigationMenu) {
|
|
259
259
|
showCantEditNotice();
|
|
260
260
|
}
|
|
261
261
|
|
|
262
|
-
if (!ref &&
|
|
262
|
+
if (!ref && hasResolvedCanUserCreateNavigationMenu && !canUserCreateNavigationMenu) {
|
|
263
263
|
showCantCreateNotice();
|
|
264
264
|
}
|
|
265
265
|
}
|
|
266
|
-
}, [isSelected, isInnerBlockSelected,
|
|
266
|
+
}, [isSelected, isInnerBlockSelected, canUserUpdateNavigationMenu, hasResolvedCanUserUpdateNavigationMenu, canUserCreateNavigationMenu, hasResolvedCanUserCreateNavigationMenu, ref]);
|
|
267
267
|
const startWithEmptyMenu = useCallback(() => {
|
|
268
268
|
registry.batch(() => {
|
|
269
269
|
if (navigationArea) {
|
|
@@ -352,9 +352,11 @@ function Navigation(_ref) {
|
|
|
352
352
|
setRef(id);
|
|
353
353
|
onClose();
|
|
354
354
|
},
|
|
355
|
-
onCreateNew: startWithEmptyMenu
|
|
356
|
-
|
|
357
|
-
|
|
355
|
+
onCreateNew: startWithEmptyMenu
|
|
356
|
+
/* translators: %s: The name of a menu. */
|
|
357
|
+
,
|
|
358
|
+
actionLabel: __("Switch to '%s'"),
|
|
359
|
+
showManageActions: true
|
|
358
360
|
});
|
|
359
361
|
})), createElement(ToolbarGroup, null, listViewToolbarButton)), listViewModal, createElement(InspectorControls, null, hasSubmenuIndicatorSetting && createElement(PanelBody, {
|
|
360
362
|
title: __('Display')
|
|
@@ -439,7 +441,7 @@ function Navigation(_ref) {
|
|
|
439
441
|
textColor: detectedOverlayColor
|
|
440
442
|
})))), isEntityAvailable && createElement(InspectorControls, {
|
|
441
443
|
__experimentalGroup: "advanced"
|
|
442
|
-
},
|
|
444
|
+
}, hasResolvedCanUserUpdateNavigationMenu && canUserUpdateNavigationMenu && createElement(NavigationMenuNameControl, null), hasResolvedCanUserDeleteNavigationMenu && canUserDeleteNavigationMenu && createElement(NavigationMenuDeleteControl, {
|
|
443
445
|
onDelete: startWithEmptyMenu
|
|
444
446
|
})), createElement("nav", blockProps, isPlaceholderShown && createElement(PlaceholderComponent, {
|
|
445
447
|
onFinish: post => {
|
|
@@ -454,8 +456,8 @@ function Navigation(_ref) {
|
|
|
454
456
|
canSwitchNavigationMenu: canSwitchNavigationMenu,
|
|
455
457
|
hasResolvedNavigationMenus: hasResolvedNavigationMenus,
|
|
456
458
|
clientId: clientId,
|
|
457
|
-
|
|
458
|
-
}), !
|
|
459
|
+
canUserCreateNavigationMenu: canUserCreateNavigationMenu
|
|
460
|
+
}), !hasResolvedCanUserCreateNavigationMenu || !isEntityAvailable && !isPlaceholderShown && createElement(PlaceholderPreview, {
|
|
459
461
|
isLoading: true
|
|
460
462
|
}), !isPlaceholderShown && createElement(ResponsiveWrapper, {
|
|
461
463
|
id: clientId,
|