@wordpress/block-library 7.3.10 → 7.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/README.md +3 -2
- package/babel-plugin.js +154 -0
- package/build/archives/edit.js +1 -1
- package/build/archives/edit.js.map +1 -1
- package/build/audio/edit.js +5 -17
- package/build/audio/edit.js.map +1 -1
- package/build/audio/edit.native.js +1 -1
- package/build/audio/edit.native.js.map +1 -1
- package/build/block/edit.js +10 -9
- package/build/block/edit.js.map +1 -1
- package/build/button/edit.native.js +7 -3
- package/build/button/edit.native.js.map +1 -1
- package/build/button/index.js +1 -0
- package/build/button/index.js.map +1 -1
- package/build/categories/edit.js +9 -4
- package/build/categories/edit.js.map +1 -1
- package/build/categories/index.js +5 -1
- package/build/categories/index.js.map +1 -1
- package/build/column/index.js +10 -0
- package/build/column/index.js.map +1 -1
- package/build/comment-author-avatar/index.js +1 -0
- package/build/comment-author-avatar/index.js.map +1 -1
- package/build/comment-template/edit.js +1 -3
- package/build/comment-template/edit.js.map +1 -1
- package/build/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
- package/{build-module/comments-query-loop → build/comments}/edit/comments-inspector-controls.js.map +1 -1
- package/build/{comments-query-loop → comments}/edit.js +2 -2
- package/build/comments/edit.js.map +1 -0
- package/build/{comments-query-loop → comments}/index.js +1 -1
- package/build/comments/index.js.map +1 -0
- package/build/{comments-query-loop → comments}/save.js +2 -2
- package/build/comments/save.js.map +1 -0
- package/build/comments-title/index.js +1 -1
- package/build/comments-title/index.js.map +1 -1
- package/build/cover/controls.native.js +2 -3
- package/build/cover/controls.native.js.map +1 -1
- package/build/cover/edit/block-controls.js +115 -0
- package/build/cover/edit/block-controls.js.map +1 -0
- package/build/cover/edit/cover-placeholder.js +49 -0
- package/build/cover/edit/cover-placeholder.js.map +1 -0
- package/build/cover/edit/index.js +333 -0
- package/build/cover/edit/index.js.map +1 -0
- package/build/cover/edit/inspector-controls.js +224 -0
- package/build/cover/edit/inspector-controls.js.map +1 -0
- package/build/cover/edit/resizable-cover.js +67 -0
- package/build/cover/edit/resizable-cover.js.map +1 -0
- package/build/cover/edit/use-cover-is-dark.js +81 -0
- package/build/cover/edit/use-cover-is-dark.js.map +1 -0
- package/build/cover/edit.native.js +36 -16
- package/build/cover/edit.native.js.map +1 -1
- package/build/cover/focal-point-settings-button.native.js.map +1 -1
- package/build/cover/shared.js +9 -0
- package/build/cover/shared.js.map +1 -1
- package/build/cover/transforms.js +77 -6
- package/build/cover/transforms.js.map +1 -1
- package/build/cover/use-cover-is-dark.native.js +60 -0
- package/build/cover/use-cover-is-dark.native.js.map +1 -0
- package/build/embed/edit.js +12 -18
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +1 -7
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/embed-preview.js +1 -1
- package/build/embed/embed-preview.js.map +1 -1
- package/build/embed/util.js +29 -4
- package/build/embed/util.js.map +1 -1
- package/build/file/edit.native.js +0 -1
- package/build/file/edit.native.js.map +1 -1
- package/build/file/inspector.js +2 -4
- package/build/file/inspector.js.map +1 -1
- package/build/gallery/edit.js +3 -2
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +1 -1
- package/build/gallery/gallery.js.map +1 -1
- package/build/gallery/shared.js +2 -2
- package/build/gallery/shared.js.map +1 -1
- package/build/gallery/use-get-media.js +2 -1
- package/build/gallery/use-get-media.js.map +1 -1
- package/build/gallery/use-short-code-transform.js +19 -18
- package/build/gallery/use-short-code-transform.js.map +1 -1
- package/build/gallery/v1/edit.js +1 -1
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/gallery/v1/gallery.js +1 -1
- package/build/gallery/v1/gallery.js.map +1 -1
- package/build/group/index.js +1 -0
- package/build/group/index.js.map +1 -1
- package/build/heading/edit.js +6 -2
- package/build/heading/edit.js.map +1 -1
- package/build/heading/index.js +1 -0
- package/build/heading/index.js.map +1 -1
- package/build/heading/transforms.js +9 -4
- package/build/heading/transforms.js.map +1 -1
- package/build/html/edit.js +2 -2
- package/build/html/edit.js.map +1 -1
- package/build/image/edit.js +9 -8
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +1 -2
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +2 -2
- package/build/image/image.js.map +1 -1
- package/build/index.js +48 -12
- package/build/index.js.map +1 -1
- package/build/index.native.js +14 -3
- package/build/index.native.js.map +1 -1
- package/build/is-block-metadata-experimental.js +18 -0
- package/build/is-block-metadata-experimental.js.map +1 -0
- package/build/latest-comments/edit.js +1 -1
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-posts/edit.js +30 -4
- package/build/latest-posts/edit.js.map +1 -1
- package/build/latest-posts/edit.native.js +49 -0
- package/build/latest-posts/edit.native.js.map +1 -1
- package/build/list/transforms.js +6 -0
- package/build/list/transforms.js.map +1 -1
- package/build/list/v2/edit.js +2 -1
- package/build/list/v2/edit.js.map +1 -1
- package/build/list/v2/migrate.js +1 -0
- package/build/list/v2/migrate.js.map +1 -1
- package/build/list/v2/transforms.js +46 -9
- package/build/list/v2/transforms.js.map +1 -1
- package/build/list-item/edit.js +7 -9
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/hooks/index.js +24 -0
- package/build/list-item/hooks/index.js.map +1 -1
- package/build/list-item/hooks/use-backspace.js +59 -0
- package/build/list-item/hooks/use-backspace.js.map +1 -0
- package/build/list-item/hooks/use-enter.js +6 -9
- package/build/list-item/hooks/use-enter.js.map +1 -1
- package/build/list-item/hooks/use-indent-list-item.js +33 -39
- package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
- package/build/list-item/hooks/use-space.js +54 -0
- package/build/list-item/hooks/use-space.js.map +1 -0
- package/build/list-item/hooks/use-split.js +30 -0
- package/build/list-item/hooks/use-split.js.map +1 -0
- package/build/list-item/index.js +1 -0
- package/build/list-item/index.js.map +1 -1
- package/build/list-item/utils.js +1 -1
- package/build/list-item/utils.js.map +1 -1
- package/build/loginout/edit.js +1 -1
- package/build/loginout/edit.js.map +1 -1
- package/build/media-text/edit.js +1 -2
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/edit.native.js +3 -2
- package/build/media-text/edit.native.js.map +1 -1
- package/build/media-text/media-container.native.js +2 -4
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/media-text/transforms.js +137 -8
- package/build/media-text/transforms.js.map +1 -1
- package/build/navigation/edit/index.js +86 -81
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +1 -5
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +5 -4
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/index.js +1 -1
- package/build/navigation/use-navigation-entities.js +3 -3
- package/build/navigation/use-navigation-entities.js.map +1 -1
- package/build/navigation/view-modal.js +62 -0
- package/build/navigation/view-modal.js.map +1 -0
- package/build/navigation/view.js +1 -34
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +1 -1
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/fallback-variations.js +1 -1
- package/build/navigation-link/fallback-variations.js.map +1 -1
- package/build/navigation-link/hooks.js +1 -1
- package/build/navigation-link/hooks.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +1 -1
- package/build/page-list/convert-to-links-modal.js.map +1 -1
- package/build/page-list/edit.js +1 -1
- package/build/page-list/edit.js.map +1 -1
- package/build/paragraph/edit.js +10 -0
- package/build/paragraph/edit.js.map +1 -1
- package/build/paragraph/edit.native.js +6 -2
- package/build/paragraph/edit.native.js.map +1 -1
- package/build/paragraph/use-enter.js +94 -0
- package/build/paragraph/use-enter.js.map +1 -0
- package/build/post-author/edit.js +2 -2
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-name/index.js +1 -0
- package/build/post-author-name/index.js.map +1 -1
- package/build/post-comment/index.js +2 -1
- package/build/post-comment/index.js.map +1 -1
- package/build/post-comments/edit.js +14 -35
- package/build/post-comments/edit.js.map +1 -1
- package/build/post-comments/index.js +1 -1
- package/build/post-comments-count/index.js +1 -0
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-comments-form/edit.js +37 -24
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-comments-form/form.js +48 -0
- package/build/post-comments-form/form.js.map +1 -0
- package/build/post-comments-link/index.js +1 -0
- package/build/post-comments-link/index.js.map +1 -1
- package/build/post-excerpt/edit.js +1 -1
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-featured-image/edit.js +1 -1
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-template/edit.js +7 -2
- package/build/post-template/edit.js.map +1 -1
- package/build/post-terms/edit.js +35 -4
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-terms/hooks.js +33 -0
- package/build/post-terms/hooks.js.map +1 -0
- package/build/post-terms/index.js +20 -5
- package/build/post-terms/index.js.map +1 -1
- package/build/post-title/index.js +1 -1
- package/build/post-title/index.js.map +1 -1
- package/build/pullquote/edit.js +1 -1
- package/build/pullquote/edit.js.map +1 -1
- package/build/pullquote/edit.native.js +1 -1
- package/build/pullquote/edit.native.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +26 -17
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/parent-control.js +148 -0
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -0
- package/build/query/edit/inspector-controls/sticky-control.js +41 -0
- package/build/query/edit/inspector-controls/sticky-control.js.map +1 -0
- package/build/query/index.js +2 -1
- package/build/query/index.js.map +1 -1
- package/build/query/utils.js +28 -2
- package/build/query/utils.js.map +1 -1
- package/build/query-title/index.js +1 -1
- package/build/query-title/index.js.map +1 -1
- package/build/query-title/variations.js +1 -1
- package/build/query-title/variations.js.map +1 -1
- package/build/quote/edit.js +3 -2
- package/build/quote/edit.js.map +1 -1
- package/build/quote/index.js +7 -0
- package/build/quote/index.js.map +1 -1
- package/build/quote/v2/edit.js +12 -4
- package/build/quote/v2/edit.js.map +1 -1
- package/build/rss/edit.js +1 -1
- package/build/rss/edit.js.map +1 -1
- package/build/search/edit.js +12 -9
- package/build/search/edit.js.map +1 -1
- package/build/separator/index.js +3 -0
- package/build/separator/index.js.map +1 -1
- package/build/site-logo/edit.js +1 -1
- package/build/site-logo/edit.js.map +1 -1
- package/build/spacer/constants.js +9 -0
- package/build/spacer/constants.js.map +1 -0
- package/build/spacer/controls.js +3 -3
- package/build/spacer/controls.js.map +1 -1
- package/build/spacer/controls.native.js +2 -2
- package/build/spacer/controls.native.js.map +1 -1
- package/build/spacer/edit.js +5 -6
- package/build/spacer/edit.js.map +1 -1
- package/build/table/edit.js +23 -4
- package/build/table/edit.js.map +1 -1
- package/build/table-of-contents/edit.js +138 -66
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/table-of-contents/index.js +13 -3
- package/build/table-of-contents/index.js.map +1 -1
- package/build/table-of-contents/list.js +16 -9
- package/build/table-of-contents/list.js.map +1 -1
- package/build/table-of-contents/save.js +40 -0
- package/build/table-of-contents/save.js.map +1 -0
- package/build/table-of-contents/utils.js +11 -77
- package/build/table-of-contents/utils.js.map +1 -1
- package/build/tag-cloud/edit.js +1 -1
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/index.js +7 -3
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/inner-blocks.js +3 -8
- package/build/template-part/edit/inner-blocks.js.map +1 -1
- package/build/video/edit.js +5 -9
- package/build/video/edit.js.map +1 -1
- package/build/video/edit.native.js +1 -1
- package/build/video/edit.native.js.map +1 -1
- package/build-module/archives/edit.js +1 -1
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/audio/edit.js +6 -18
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/audio/edit.native.js +1 -1
- package/build-module/audio/edit.native.js.map +1 -1
- package/build-module/block/edit.js +11 -10
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/edit.native.js +7 -3
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/button/index.js +1 -0
- package/build-module/button/index.js.map +1 -1
- package/build-module/categories/edit.js +9 -4
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/categories/index.js +5 -1
- package/build-module/categories/index.js.map +1 -1
- package/build-module/column/index.js +10 -0
- package/build-module/column/index.js.map +1 -1
- package/build-module/comment-author-avatar/index.js +1 -0
- package/build-module/comment-author-avatar/index.js.map +1 -1
- package/build-module/comment-template/edit.js +1 -3
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
- package/build-module/comments/edit/comments-inspector-controls.js.map +1 -0
- package/build-module/{comments-query-loop → comments}/edit.js +1 -1
- package/build-module/comments/edit.js.map +1 -0
- package/build-module/{comments-query-loop → comments}/index.js +1 -1
- package/build-module/comments/index.js.map +1 -0
- package/build-module/{comments-query-loop → comments}/save.js +1 -1
- package/build-module/comments/save.js.map +1 -0
- package/build-module/comments-title/index.js +1 -1
- package/build-module/comments-title/index.js.map +1 -1
- package/build-module/cover/controls.native.js +2 -3
- package/build-module/cover/controls.native.js.map +1 -1
- package/build-module/cover/edit/block-controls.js +104 -0
- package/build-module/cover/edit/block-controls.js.map +1 -0
- package/build-module/cover/edit/cover-placeholder.js +38 -0
- package/build-module/cover/edit/cover-placeholder.js.map +1 -0
- package/build-module/cover/edit/index.js +307 -0
- package/build-module/cover/edit/index.js.map +1 -0
- package/build-module/cover/edit/inspector-controls.js +215 -0
- package/build-module/cover/edit/inspector-controls.js.map +1 -0
- package/build-module/cover/edit/resizable-cover.js +55 -0
- package/build-module/cover/edit/resizable-cover.js.map +1 -0
- package/build-module/cover/edit/use-cover-is-dark.js +70 -0
- package/build-module/cover/edit/use-cover-is-dark.js.map +1 -0
- package/build-module/cover/edit.native.js +35 -17
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/focal-point-settings-button.native.js.map +1 -1
- package/build-module/cover/shared.js +7 -0
- package/build-module/cover/shared.js.map +1 -1
- package/build-module/cover/transforms.js +74 -6
- package/build-module/cover/transforms.js.map +1 -1
- package/build-module/cover/use-cover-is-dark.native.js +51 -0
- package/build-module/cover/use-cover-is-dark.native.js.map +1 -0
- package/build-module/embed/edit.js +13 -19
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +2 -8
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-preview.js +2 -2
- package/build-module/embed/embed-preview.js.map +1 -1
- package/build-module/embed/util.js +25 -3
- package/build-module/embed/util.js.map +1 -1
- package/build-module/file/edit.native.js +0 -1
- package/build-module/file/edit.native.js.map +1 -1
- package/build-module/file/inspector.js +2 -4
- package/build-module/file/inspector.js.map +1 -1
- package/build-module/gallery/edit.js +3 -2
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +2 -2
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/gallery/shared.js +2 -2
- package/build-module/gallery/shared.js.map +1 -1
- package/build-module/gallery/use-get-media.js +2 -1
- package/build-module/gallery/use-get-media.js.map +1 -1
- package/build-module/gallery/use-short-code-transform.js +19 -18
- package/build-module/gallery/use-short-code-transform.js.map +1 -1
- package/build-module/gallery/v1/edit.js +1 -1
- package/build-module/gallery/v1/edit.js.map +1 -1
- package/build-module/gallery/v1/gallery.js +2 -2
- package/build-module/gallery/v1/gallery.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 +6 -2
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/index.js +1 -0
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/transforms.js +9 -4
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/html/edit.js +2 -2
- package/build-module/html/edit.js.map +1 -1
- package/build-module/image/edit.js +10 -9
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +1 -2
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +3 -3
- package/build-module/image/image.js.map +1 -1
- package/build-module/index.js +43 -11
- package/build-module/index.js.map +1 -1
- package/build-module/index.native.js +14 -3
- package/build-module/index.native.js.map +1 -1
- package/build-module/is-block-metadata-experimental.js +16 -0
- package/build-module/is-block-metadata-experimental.js.map +1 -0
- package/build-module/latest-comments/edit.js +1 -1
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-posts/edit.js +29 -5
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/latest-posts/edit.native.js +51 -2
- package/build-module/latest-posts/edit.native.js.map +1 -1
- package/build-module/list/transforms.js +6 -0
- package/build-module/list/transforms.js.map +1 -1
- package/build-module/list/v2/edit.js +2 -1
- package/build-module/list/v2/edit.js.map +1 -1
- package/build-module/list/v2/migrate.js +1 -3
- package/build-module/list/v2/migrate.js.map +1 -1
- package/build-module/list/v2/transforms.js +46 -9
- package/build-module/list/v2/transforms.js.map +1 -1
- package/build-module/list-item/edit.js +8 -9
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/hooks/index.js +3 -0
- package/build-module/list-item/hooks/index.js.map +1 -1
- package/build-module/list-item/hooks/use-backspace.js +44 -0
- package/build-module/list-item/hooks/use-backspace.js.map +1 -0
- package/build-module/list-item/hooks/use-enter.js +6 -9
- package/build-module/list-item/hooks/use-enter.js.map +1 -1
- package/build-module/list-item/hooks/use-indent-list-item.js +33 -38
- package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
- package/build-module/list-item/hooks/use-space.js +40 -0
- package/build-module/list-item/hooks/use-space.js.map +1 -0
- package/build-module/list-item/hooks/use-split.js +19 -0
- package/build-module/list-item/hooks/use-split.js.map +1 -0
- package/build-module/list-item/index.js +1 -0
- package/build-module/list-item/index.js.map +1 -1
- package/build-module/list-item/utils.js +1 -1
- package/build-module/list-item/utils.js.map +1 -1
- package/build-module/loginout/edit.js +1 -1
- package/build-module/loginout/edit.js.map +1 -1
- package/build-module/media-text/edit.js +1 -2
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/edit.native.js +3 -2
- package/build-module/media-text/edit.native.js.map +1 -1
- package/build-module/media-text/media-container.native.js +2 -4
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/media-text/transforms.js +137 -8
- package/build-module/media-text/transforms.js.map +1 -1
- package/build-module/navigation/edit/index.js +87 -82
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +2 -6
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +5 -4
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/index.js +1 -1
- package/build-module/navigation/use-navigation-entities.js +1 -1
- package/build-module/navigation/use-navigation-entities.js.map +1 -1
- package/build-module/navigation/view-modal.js +56 -0
- package/build-module/navigation/view-modal.js.map +1 -0
- package/build-module/navigation/view.js +1 -30
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +1 -1
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/fallback-variations.js +1 -1
- package/build-module/navigation-link/fallback-variations.js.map +1 -1
- package/build-module/navigation-link/hooks.js +2 -2
- package/build-module/navigation-link/hooks.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +1 -1
- package/build-module/page-list/convert-to-links-modal.js.map +1 -1
- package/build-module/page-list/edit.js +1 -1
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/paragraph/edit.js +9 -0
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/paragraph/edit.native.js +6 -2
- package/build-module/paragraph/edit.native.js.map +1 -1
- package/build-module/paragraph/use-enter.js +81 -0
- package/build-module/paragraph/use-enter.js.map +1 -0
- package/build-module/post-author/edit.js +2 -2
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-name/index.js +1 -0
- package/build-module/post-author-name/index.js.map +1 -1
- package/build-module/post-comment/index.js +2 -1
- package/build-module/post-comment/index.js.map +1 -1
- package/build-module/post-comments/edit.js +13 -35
- package/build-module/post-comments/edit.js.map +1 -1
- package/build-module/post-comments/index.js +1 -1
- package/build-module/post-comments-count/index.js +1 -0
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-comments-form/edit.js +38 -26
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-comments-form/form.js +39 -0
- package/build-module/post-comments-form/form.js.map +1 -0
- package/build-module/post-comments-link/index.js +1 -0
- package/build-module/post-comments-link/index.js.map +1 -1
- package/build-module/post-excerpt/edit.js +1 -1
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-featured-image/edit.js +1 -1
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-template/edit.js +7 -2
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +35 -6
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-terms/hooks.js +25 -0
- package/build-module/post-terms/hooks.js.map +1 -0
- package/build-module/post-terms/index.js +18 -8
- package/build-module/post-terms/index.js.map +1 -1
- package/build-module/post-title/index.js +1 -1
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/pullquote/edit.js +2 -2
- package/build-module/pullquote/edit.js.map +1 -1
- package/build-module/pullquote/edit.native.js +2 -2
- package/build-module/pullquote/edit.native.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +24 -17
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/parent-control.js +135 -0
- package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -0
- package/build-module/query/edit/inspector-controls/sticky-control.js +31 -0
- package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -0
- package/build-module/query/index.js +2 -1
- package/build-module/query/index.js.map +1 -1
- package/build-module/query/utils.js +21 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query-title/index.js +1 -1
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/query-title/variations.js +2 -2
- package/build-module/query-title/variations.js.map +1 -1
- package/build-module/quote/edit.js +4 -3
- package/build-module/quote/edit.js.map +1 -1
- package/build-module/quote/index.js +2 -1
- package/build-module/quote/index.js.map +1 -1
- package/build-module/quote/v2/edit.js +12 -5
- package/build-module/quote/v2/edit.js.map +1 -1
- package/build-module/rss/edit.js +1 -1
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/search/edit.js +12 -9
- package/build-module/search/edit.js.map +1 -1
- package/build-module/separator/index.js +3 -0
- package/build-module/separator/index.js.map +1 -1
- package/build-module/site-logo/edit.js +1 -1
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/spacer/constants.js +2 -0
- package/build-module/spacer/constants.js.map +1 -0
- package/build-module/spacer/controls.js +2 -2
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/spacer/controls.native.js +1 -1
- package/build-module/spacer/controls.native.js.map +1 -1
- package/build-module/spacer/edit.js +1 -1
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/table/edit.js +26 -7
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table-of-contents/edit.js +136 -68
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/table-of-contents/index.js +12 -3
- package/build-module/table-of-contents/index.js.map +1 -1
- package/build-module/table-of-contents/list.js +18 -10
- package/build-module/table-of-contents/list.js.map +1 -1
- package/build-module/table-of-contents/save.js +28 -0
- package/build-module/table-of-contents/save.js.map +1 -0
- package/build-module/table-of-contents/utils.js +11 -73
- package/build-module/table-of-contents/utils.js.map +1 -1
- package/build-module/tag-cloud/edit.js +1 -1
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/template-part/edit/index.js +8 -4
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/inner-blocks.js +4 -9
- package/build-module/template-part/edit/inner-blocks.js.map +1 -1
- package/build-module/video/edit.js +6 -10
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/edit.native.js +1 -1
- package/build-module/video/edit.native.js.map +1 -1
- package/build-style/{comments-query-loop → comments}/editor-rtl.css +0 -0
- package/build-style/{comments-query-loop → comments}/editor.css +0 -0
- package/build-style/common-rtl.css +32 -0
- package/build-style/common.css +32 -0
- package/build-style/cover/style-rtl.css +0 -4
- package/build-style/cover/style.css +0 -4
- package/build-style/editor-rtl.css +16 -10
- package/build-style/editor.css +16 -10
- package/build-style/image/editor-rtl.css +1 -1
- package/build-style/image/editor.css +1 -1
- package/build-style/navigation/style-rtl.css +3 -0
- package/build-style/navigation/style.css +3 -0
- package/build-style/separator/editor-rtl.css +1 -0
- package/build-style/separator/editor.css +1 -0
- package/build-style/style-rtl.css +73 -4
- package/build-style/style.css +73 -4
- package/build-style/table/editor-rtl.css +8 -0
- package/build-style/table/editor.css +8 -0
- package/build-style/table/style-rtl.css +38 -0
- package/build-style/table/style.css +38 -0
- package/build-style/video/editor-rtl.css +2 -5
- package/build-style/video/editor.css +2 -5
- package/build-types/table-of-contents/list.d.ts +12 -0
- package/build-types/table-of-contents/list.d.ts.map +1 -0
- package/build-types/table-of-contents/utils.d.ts +24 -0
- package/build-types/table-of-contents/utils.d.ts.map +1 -0
- package/package.json +30 -29
- package/src/archives/edit.js +1 -1
- package/src/audio/edit.js +7 -10
- package/src/audio/edit.native.js +1 -1
- package/src/avatar/block.json +0 -1
- package/src/avatar/index.php +2 -2
- package/src/block/edit.js +39 -42
- package/src/block/test/edit.native.js +1 -1
- package/src/button/block.json +1 -0
- package/src/button/edit.native.js +6 -3
- package/src/categories/block.json +5 -1
- package/src/categories/edit.js +9 -3
- package/src/categories/index.php +1 -0
- package/src/column/block.json +10 -0
- package/src/comment-author-avatar/block.json +1 -0
- package/src/comment-template/edit.js +1 -5
- package/src/{comments-query-loop → comments}/block.json +1 -1
- package/src/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
- package/src/{comments-query-loop → comments}/edit.js +1 -1
- package/src/{comments-query-loop → comments}/editor.scss +0 -0
- package/src/{comments-query-loop → comments}/index.js +0 -0
- package/src/{comments-query-loop → comments}/save.js +1 -3
- package/src/comments-title/index.js +1 -1
- package/src/common.scss +24 -1
- package/src/cover/controls.native.js +1 -2
- package/src/cover/edit/block-controls.js +119 -0
- package/src/cover/edit/cover-placeholder.js +39 -0
- package/src/cover/edit/index.js +381 -0
- package/src/cover/edit/inspector-controls.js +286 -0
- package/src/cover/edit/resizable-cover.js +55 -0
- package/src/cover/edit/use-cover-is-dark.js +71 -0
- package/src/cover/edit.native.js +40 -14
- package/src/cover/editor.scss +1 -1
- package/src/cover/focal-point-settings-button.native.js +1 -1
- package/src/cover/shared.js +4 -0
- package/src/cover/style.native.scss +4 -0
- package/src/cover/style.scss +0 -4
- package/src/cover/test/__snapshots__/edit.native.js.snap +6 -6
- package/src/cover/test/block-controls.js +62 -0
- package/src/cover/test/transforms.js +301 -0
- package/src/cover/transforms.js +112 -7
- package/src/cover/use-cover-is-dark.native.js +51 -0
- package/src/editor.scss +1 -1
- package/src/embed/edit.js +19 -24
- package/src/embed/edit.native.js +9 -14
- package/src/embed/embed-preview.js +4 -2
- package/src/embed/util.js +34 -2
- package/src/file/edit.native.js +0 -1
- package/src/file/inspector.js +1 -3
- package/src/gallery/edit.js +3 -2
- package/src/gallery/gallery.js +2 -2
- package/src/gallery/shared.js +3 -2
- package/src/gallery/use-get-media.js +2 -1
- package/src/gallery/use-short-code-transform.js +19 -16
- package/src/gallery/v1/edit.js +1 -1
- package/src/gallery/v1/gallery.js +2 -2
- package/src/group/block.json +1 -0
- package/src/heading/block.json +1 -0
- package/src/heading/edit.js +5 -2
- package/src/heading/transforms.js +4 -3
- package/src/html/edit.js +2 -2
- package/src/image/edit.js +11 -5
- package/src/image/edit.native.js +1 -2
- package/src/image/editor.scss +1 -1
- package/src/image/image.js +9 -3
- package/src/image/test/edit.native.js +7 -7
- package/src/index.js +52 -30
- package/src/index.native.js +12 -2
- package/src/is-block-metadata-experimental.js +19 -0
- package/src/latest-comments/edit.js +1 -1
- package/src/latest-posts/edit.js +27 -2
- package/src/latest-posts/edit.native.js +56 -1
- package/src/list/transforms.js +7 -0
- package/src/list/v2/edit.js +1 -0
- package/src/list/v2/migrate.js +1 -1
- package/src/list/v2/transforms.js +35 -0
- package/src/list-item/block.json +2 -1
- package/src/list-item/edit.js +17 -10
- package/src/list-item/hooks/index.js +3 -0
- package/src/list-item/hooks/use-backspace.js +52 -0
- package/src/list-item/hooks/use-enter.js +9 -16
- package/src/list-item/hooks/use-indent-list-item.js +50 -63
- package/src/list-item/hooks/use-space.js +48 -0
- package/src/list-item/hooks/use-split.js +24 -0
- package/src/list-item/utils.js +1 -1
- package/src/loginout/edit.js +1 -1
- package/src/media-text/edit.js +1 -2
- package/src/media-text/edit.native.js +4 -2
- package/src/media-text/media-container.native.js +2 -4
- package/src/media-text/transforms.js +154 -0
- package/src/navigation/block.json +1 -1
- package/src/navigation/edit/index.js +175 -169
- package/src/navigation/edit/inner-blocks.js +1 -8
- package/src/navigation/edit/unsaved-inner-blocks.js +5 -4
- package/src/navigation/index.php +5 -0
- package/src/navigation/style.scss +3 -0
- package/src/navigation/use-navigation-entities.js +1 -1
- package/src/navigation/view-modal.js +68 -0
- package/src/navigation/view.js +0 -35
- package/src/navigation-link/edit.js +1 -1
- package/src/navigation-link/fallback-variations.js +1 -1
- package/src/navigation-link/hooks.js +2 -2
- package/src/navigation-link/test/__snapshots__/hooks.js.snap +4 -4
- package/src/page-list/convert-to-links-modal.js +1 -1
- package/src/page-list/edit.js +1 -4
- package/src/paragraph/edit.js +6 -0
- package/src/paragraph/edit.native.js +13 -1
- package/src/paragraph/use-enter.js +103 -0
- package/src/post-author/edit.js +25 -23
- package/src/post-author-name/block.json +1 -0
- package/src/post-comment/block.json +2 -1
- package/src/post-comments/block.json +1 -1
- package/src/post-comments/edit.js +13 -43
- package/src/post-comments/index.php +2 -0
- package/src/post-comments-count/block.json +1 -0
- package/src/post-comments-form/edit.js +50 -58
- package/src/post-comments-form/form.js +40 -0
- package/src/post-comments-link/block.json +1 -0
- package/src/post-excerpt/edit.js +1 -1
- package/src/post-featured-image/edit.js +1 -1
- package/src/post-template/edit.js +5 -0
- package/src/post-terms/block.json +8 -0
- package/src/post-terms/edit.js +47 -1
- package/src/post-terms/hooks.js +27 -0
- package/src/post-terms/index.js +14 -7
- package/src/post-terms/index.php +50 -2
- package/src/post-title/index.js +1 -1
- package/src/pullquote/edit.js +2 -2
- package/src/pullquote/edit.native.js +2 -2
- package/src/query/block.json +2 -1
- package/src/query/edit/inspector-controls/index.js +25 -11
- package/src/query/edit/inspector-controls/parent-control.js +133 -0
- package/src/query/edit/inspector-controls/sticky-control.js +25 -0
- package/src/query/utils.js +22 -0
- package/src/query-title/index.js +1 -1
- package/src/query-title/variations.js +2 -2
- package/src/quote/block.json +1 -0
- package/src/quote/edit.js +5 -2
- package/src/quote/index.js +1 -1
- package/src/quote/v2/edit.js +7 -2
- package/src/rss/edit.js +1 -1
- package/src/search/edit.js +14 -7
- package/src/search/index.php +85 -34
- package/src/separator/block.json +3 -0
- package/src/separator/editor.scss +1 -0
- package/src/site-logo/edit.js +1 -1
- package/src/spacer/constants.js +1 -0
- package/src/spacer/controls.js +2 -2
- package/src/spacer/controls.native.js +1 -1
- package/src/spacer/edit.js +1 -2
- package/src/table/edit.js +30 -6
- package/src/table/editor.scss +13 -0
- package/src/table/style.scss +52 -0
- package/src/table-of-contents/block.json +9 -2
- package/src/table-of-contents/edit.js +155 -75
- package/src/table-of-contents/index.js +2 -0
- package/src/table-of-contents/list.tsx +46 -0
- package/src/table-of-contents/save.js +25 -0
- package/src/table-of-contents/utils.ts +71 -0
- package/src/tag-cloud/block.json +1 -1
- package/src/tag-cloud/edit.js +1 -1
- package/src/template-part/edit/index.js +25 -15
- package/src/template-part/edit/inner-blocks.js +2 -10
- package/src/video/edit.js +8 -7
- package/src/video/edit.native.js +1 -1
- package/src/video/editor.scss +3 -6
- package/test/babel-plugin.js +67 -0
- package/tsconfig.json +11 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/build/comments-query-loop/edit/comments-inspector-controls.js.map +0 -1
- package/build/comments-query-loop/edit.js.map +0 -1
- package/build/comments-query-loop/index.js.map +0 -1
- package/build/comments-query-loop/save.js.map +0 -1
- package/build/cover/edit.js +0 -668
- package/build/cover/edit.js.map +0 -1
- package/build/post-terms/variations.js +0 -37
- package/build/post-terms/variations.js.map +0 -1
- package/build-module/comments-query-loop/edit.js.map +0 -1
- package/build-module/comments-query-loop/index.js.map +0 -1
- package/build-module/comments-query-loop/save.js.map +0 -1
- package/build-module/cover/edit.js +0 -645
- package/build-module/cover/edit.js.map +0 -1
- package/build-module/post-terms/variations.js +0 -27
- package/build-module/post-terms/variations.js.map +0 -1
- package/src/cover/edit.js +0 -827
- package/src/post-terms/variations.js +0 -28
- package/src/table-of-contents/index.php +0 -346
- package/src/table-of-contents/list.js +0 -28
- package/src/table-of-contents/utils.js +0 -126
package/build-module/index.js
CHANGED
|
@@ -5,6 +5,15 @@ import { registerBlockType, setDefaultBlockName, setFreeformContentHandlerName,
|
|
|
5
5
|
/**
|
|
6
6
|
* Internal dependencies
|
|
7
7
|
*/
|
|
8
|
+
// When IS_GUTENBERG_PLUGIN is set to false, imports of experimental blocks
|
|
9
|
+
// are transformed by packages/block-library/src/index.js as follows:
|
|
10
|
+
// import * as experimentalBlock from './experimental-block'
|
|
11
|
+
// becomes
|
|
12
|
+
// const experimentalBlock = null;
|
|
13
|
+
// This enables webpack to eliminate the experimental blocks code from the
|
|
14
|
+
// production build to make the final bundle smaller.
|
|
15
|
+
//
|
|
16
|
+
// See https://github.com/WordPress/gutenberg/pull/40655 for more context.
|
|
8
17
|
|
|
9
18
|
import * as archives from './archives';
|
|
10
19
|
import * as avatar from './avatar';
|
|
@@ -17,6 +26,7 @@ import * as classic from './freeform';
|
|
|
17
26
|
import * as code from './code';
|
|
18
27
|
import * as column from './column';
|
|
19
28
|
import * as columns from './columns';
|
|
29
|
+
import * as comments from './comments';
|
|
20
30
|
import * as commentAuthorAvatar from './comment-author-avatar';
|
|
21
31
|
import * as commentAuthorName from './comment-author-name';
|
|
22
32
|
import * as commentContent from './comment-content';
|
|
@@ -25,7 +35,6 @@ import * as commentEditLink from './comment-edit-link';
|
|
|
25
35
|
import * as commentReplyLink from './comment-reply-link';
|
|
26
36
|
import * as commentTemplate from './comment-template';
|
|
27
37
|
import * as commentsPaginationPrevious from './comments-pagination-previous';
|
|
28
|
-
import * as commentsQueryLoop from './comments-query-loop';
|
|
29
38
|
import * as commentsPagination from './comments-pagination';
|
|
30
39
|
import * as commentsPaginationNext from './comments-pagination-next';
|
|
31
40
|
import * as commentsPaginationNumbers from './comments-pagination-numbers';
|
|
@@ -93,12 +102,14 @@ import * as socialLink from './social-link';
|
|
|
93
102
|
import * as socialLinks from './social-links';
|
|
94
103
|
import * as spacer from './spacer';
|
|
95
104
|
import * as table from './table';
|
|
105
|
+
import * as tableOfContents from './table-of-contents';
|
|
96
106
|
import * as tagCloud from './tag-cloud';
|
|
97
107
|
import * as templatePart from './template-part';
|
|
98
108
|
import * as termDescription from './term-description';
|
|
99
109
|
import * as textColumns from './text-columns';
|
|
100
110
|
import * as verse from './verse';
|
|
101
111
|
import * as video from './video';
|
|
112
|
+
import isBlockMetadataExperimental from './is-block-metadata-experimental';
|
|
102
113
|
/**
|
|
103
114
|
* Function to register an individual block.
|
|
104
115
|
*
|
|
@@ -121,6 +132,17 @@ const registerBlock = block => {
|
|
|
121
132
|
...metadata
|
|
122
133
|
}, settings);
|
|
123
134
|
};
|
|
135
|
+
/**
|
|
136
|
+
* Function to get all the block-library blocks in an array
|
|
137
|
+
*/
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
const getAllBlocks = () => [// Common blocks are grouped at the top to prioritize their display
|
|
141
|
+
// in various contexts — like the inserter and auto-complete components.
|
|
142
|
+
paragraph, image, heading, gallery, list, listItem, quote, // Register all remaining core blocks.
|
|
143
|
+
archives, audio, button, buttons, calendar, categories, window.wp && window.wp.oldEditor ? classic : null, // Only add the classic block in WP Context.
|
|
144
|
+
code, column, columns, commentAuthorAvatar, cover, embed, file, group, html, latestComments, latestPosts, mediaText, missing, more, nextpage, pageList, pattern, preformatted, pullquote, reusableBlock, rss, search, separator, shortcode, socialLink, socialLinks, spacer, table, tagCloud, textColumns, verse, video, // theme blocks
|
|
145
|
+
navigation, navigationLink, navigationSubmenu, siteLogo, siteTitle, siteTagline, query, templatePart, avatar, postTitle, postExcerpt, postFeaturedImage, postContent, postAuthor, postAuthorName, postComment, postCommentsCount, postCommentsLink, postDate, postTerms, postNavigationLink, postTemplate, queryPagination, queryPaginationNext, queryPaginationNumbers, queryPaginationPrevious, queryNoResults, readMore, comments, commentAuthorName, commentContent, commentDate, commentEditLink, commentReplyLink, commentTemplate, commentsTitle, commentsPagination, commentsPaginationNext, commentsPaginationNumbers, commentsPaginationPrevious, postComments, postCommentsForm, tableOfContents, homeLink, logInOut, termDescription, queryTitle, postAuthorBiography];
|
|
124
146
|
/**
|
|
125
147
|
* Function to get all the core blocks in an array.
|
|
126
148
|
*
|
|
@@ -133,13 +155,12 @@ const registerBlock = block => {
|
|
|
133
155
|
*/
|
|
134
156
|
|
|
135
157
|
|
|
136
|
-
export const __experimentalGetCoreBlocks = () =>
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
navigation, navigationLink, navigationSubmenu, siteLogo, siteTitle, siteTagline, query, templatePart, avatar, postTitle, postExcerpt, postFeaturedImage, postContent, postAuthor, postDate, postTerms, postNavigationLink, postTemplate, queryPagination, queryPaginationNext, queryPaginationNumbers, queryPaginationPrevious, queryNoResults, readMore, commentAuthorName, commentContent, commentDate, commentEditLink, commentReplyLink, commentTemplate, commentsTitle, commentsQueryLoop, commentsPagination, commentsPaginationNext, commentsPaginationNumbers, commentsPaginationPrevious, postComments, postCommentsForm, homeLink, logInOut, termDescription, queryTitle, postAuthorBiography];
|
|
158
|
+
export const __experimentalGetCoreBlocks = () => getAllBlocks().filter(_ref => {
|
|
159
|
+
let {
|
|
160
|
+
metadata
|
|
161
|
+
} = _ref;
|
|
162
|
+
return !isBlockMetadataExperimental(metadata);
|
|
163
|
+
});
|
|
143
164
|
/**
|
|
144
165
|
* Function to register core blocks provided by the block editor.
|
|
145
166
|
*
|
|
@@ -181,8 +202,19 @@ export const __experimentalRegisterExperimentalCoreBlocks = process.env.IS_GUTEN
|
|
|
181
202
|
let {
|
|
182
203
|
enableFSEBlocks
|
|
183
204
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
184
|
-
[
|
|
185
|
-
|
|
186
|
-
|
|
205
|
+
const enabledExperiments = [window.__experimentalEnableListBlockV2 ? 'list-v2' : null, enableFSEBlocks ? 'fse' : null];
|
|
206
|
+
getAllBlocks().filter(_ref2 => {
|
|
207
|
+
let {
|
|
208
|
+
metadata
|
|
209
|
+
} = _ref2;
|
|
210
|
+
return isBlockMetadataExperimental(metadata);
|
|
211
|
+
}).filter(_ref3 => {
|
|
212
|
+
let {
|
|
213
|
+
metadata: {
|
|
214
|
+
__experimental
|
|
215
|
+
}
|
|
216
|
+
} = _ref3;
|
|
217
|
+
return __experimental === true || enabledExperiments.includes(__experimental);
|
|
218
|
+
}).forEach(registerBlock);
|
|
187
219
|
} : undefined;
|
|
188
220
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/index.js"],"names":["registerBlockType","setDefaultBlockName","setFreeformContentHandlerName","setUnregisteredTypeHandlerName","setGroupingBlockName","archives","avatar","audio","button","buttons","calendar","categories","classic","code","column","columns","commentAuthorAvatar","commentAuthorName","commentContent","commentDate","commentEditLink","commentReplyLink","commentTemplate","commentsPaginationPrevious","commentsQueryLoop","commentsPagination","commentsPaginationNext","commentsPaginationNumbers","commentsTitle","cover","embed","file","gallery","group","heading","homeLink","html","image","latestComments","latestPosts","list","listItem","logInOut","mediaText","missing","more","navigation","navigationLink","navigationSubmenu","nextpage","pattern","pageList","paragraph","postAuthor","postAuthorName","postAuthorBiography","postComment","postComments","postCommentsCount","postCommentsForm","postCommentsLink","postContent","postDate","postExcerpt","postFeaturedImage","postNavigationLink","postTemplate","postTerms","postTitle","preformatted","pullquote","query","queryNoResults","queryPagination","queryPaginationNext","queryPaginationNumbers","queryPaginationPrevious","queryTitle","quote","reusableBlock","readMore","rss","search","separator","shortcode","siteLogo","siteTagline","siteTitle","socialLink","socialLinks","spacer","table","tagCloud","templatePart","termDescription","textColumns","verse","video","registerBlock","block","metadata","settings","name","__experimentalGetCoreBlocks","window","wp","oldEditor","registerCoreBlocks","blocks","forEach","__experimentalRegisterExperimentalCoreBlocks","process","env","IS_GUTENBERG_PLUGIN","enableFSEBlocks","__experimentalEnableListBlockV2","undefined"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,iBADD,EAECC,mBAFD,EAGCC,6BAHD,EAICC,8BAJD,EAKCC,oBALD,QAMO,mBANP;AAQA;AACA;AACA;;AACA,OAAO,KAAKC,QAAZ,MAA0B,YAA1B;AACA,OAAO,KAAKC,MAAZ,MAAwB,UAAxB;AACA,OAAO,KAAKC,KAAZ,MAAuB,SAAvB;AACA,OAAO,KAAKC,MAAZ,MAAwB,UAAxB;AACA,OAAO,KAAKC,OAAZ,MAAyB,WAAzB;AACA,OAAO,KAAKC,QAAZ,MAA0B,YAA1B;AACA,OAAO,KAAKC,UAAZ,MAA4B,cAA5B;AACA,OAAO,KAAKC,OAAZ,MAAyB,YAAzB;AACA,OAAO,KAAKC,IAAZ,MAAsB,QAAtB;AACA,OAAO,KAAKC,MAAZ,MAAwB,UAAxB;AACA,OAAO,KAAKC,OAAZ,MAAyB,WAAzB;AACA,OAAO,KAAKC,mBAAZ,MAAqC,yBAArC;AACA,OAAO,KAAKC,iBAAZ,MAAmC,uBAAnC;AACA,OAAO,KAAKC,cAAZ,MAAgC,mBAAhC;AACA,OAAO,KAAKC,WAAZ,MAA6B,gBAA7B;AACA,OAAO,KAAKC,eAAZ,MAAiC,qBAAjC;AACA,OAAO,KAAKC,gBAAZ,MAAkC,sBAAlC;AACA,OAAO,KAAKC,eAAZ,MAAiC,oBAAjC;AACA,OAAO,KAAKC,0BAAZ,MAA4C,gCAA5C;AACA,OAAO,KAAKC,iBAAZ,MAAmC,uBAAnC;AACA,OAAO,KAAKC,kBAAZ,MAAoC,uBAApC;AACA,OAAO,KAAKC,sBAAZ,MAAwC,4BAAxC;AACA,OAAO,KAAKC,yBAAZ,MAA2C,+BAA3C;AACA,OAAO,KAAKC,aAAZ,MAA+B,kBAA/B;AACA,OAAO,KAAKC,KAAZ,MAAuB,SAAvB;AACA,OAAO,KAAKC,KAAZ,MAAuB,SAAvB;AACA,OAAO,KAAKC,IAAZ,MAAsB,QAAtB;AACA,OAAO,KAAKC,OAAZ,MAAyB,WAAzB;AACA,OAAO,KAAKC,KAAZ,MAAuB,SAAvB;AACA,OAAO,KAAKC,OAAZ,MAAyB,WAAzB;AACA,OAAO,KAAKC,QAAZ,MAA0B,aAA1B;AACA,OAAO,KAAKC,IAAZ,MAAsB,QAAtB;AACA,OAAO,KAAKC,KAAZ,MAAuB,SAAvB;AACA,OAAO,KAAKC,cAAZ,MAAgC,mBAAhC;AACA,OAAO,KAAKC,WAAZ,MAA6B,gBAA7B;AACA,OAAO,KAAKC,IAAZ,MAAsB,QAAtB;AACA,OAAO,KAAKC,QAAZ,MAA0B,aAA1B;AACA,OAAO,KAAKC,QAAZ,MAA0B,YAA1B;AACA,OAAO,KAAKC,SAAZ,MAA2B,cAA3B;AACA,OAAO,KAAKC,OAAZ,MAAyB,WAAzB;AACA,OAAO,KAAKC,IAAZ,MAAsB,QAAtB;AACA,OAAO,KAAKC,UAAZ,MAA4B,cAA5B;AACA,OAAO,KAAKC,cAAZ,MAAgC,mBAAhC;AACA,OAAO,KAAKC,iBAAZ,MAAmC,sBAAnC;AACA,OAAO,KAAKC,QAAZ,MAA0B,YAA1B;AACA,OAAO,KAAKC,OAAZ,MAAyB,WAAzB;AACA,OAAO,KAAKC,QAAZ,MAA0B,aAA1B;AACA,OAAO,KAAKC,SAAZ,MAA2B,aAA3B;AACA,OAAO,KAAKC,UAAZ,MAA4B,eAA5B;AACA,OAAO,KAAKC,cAAZ,MAAgC,oBAAhC;AACA,OAAO,KAAKC,mBAAZ,MAAqC,yBAArC;AACA,OAAO,KAAKC,WAAZ,MAA6B,gBAA7B;AACA,OAAO,KAAKC,YAAZ,MAA8B,iBAA9B;AACA,OAAO,KAAKC,iBAAZ,MAAmC,uBAAnC;AACA,OAAO,KAAKC,gBAAZ,MAAkC,sBAAlC;AACA,OAAO,KAAKC,gBAAZ,MAAkC,sBAAlC;AACA,OAAO,KAAKC,WAAZ,MAA6B,gBAA7B;AACA,OAAO,KAAKC,QAAZ,MAA0B,aAA1B;AACA,OAAO,KAAKC,WAAZ,MAA6B,gBAA7B;AACA,OAAO,KAAKC,iBAAZ,MAAmC,uBAAnC;AACA,OAAO,KAAKC,kBAAZ,MAAoC,wBAApC;AACA,OAAO,KAAKC,YAAZ,MAA8B,iBAA9B;AACA,OAAO,KAAKC,SAAZ,MAA2B,cAA3B;AACA,OAAO,KAAKC,SAAZ,MAA2B,cAA3B;AACA,OAAO,KAAKC,YAAZ,MAA8B,gBAA9B;AACA,OAAO,KAAKC,SAAZ,MAA2B,aAA3B;AACA,OAAO,KAAKC,KAAZ,MAAuB,SAAvB;AACA,OAAO,KAAKC,cAAZ,MAAgC,oBAAhC;AACA,OAAO,KAAKC,eAAZ,MAAiC,oBAAjC;AACA,OAAO,KAAKC,mBAAZ,MAAqC,yBAArC;AACA,OAAO,KAAKC,sBAAZ,MAAwC,4BAAxC;AACA,OAAO,KAAKC,uBAAZ,MAAyC,6BAAzC;AACA,OAAO,KAAKC,UAAZ,MAA4B,eAA5B;AACA,OAAO,KAAKC,KAAZ,MAAuB,SAAvB;AACA,OAAO,KAAKC,aAAZ,MAA+B,SAA/B;AACA,OAAO,KAAKC,QAAZ,MAA0B,aAA1B;AACA,OAAO,KAAKC,GAAZ,MAAqB,OAArB;AACA,OAAO,KAAKC,MAAZ,MAAwB,UAAxB;AACA,OAAO,KAAKC,SAAZ,MAA2B,aAA3B;AACA,OAAO,KAAKC,SAAZ,MAA2B,aAA3B;AACA,OAAO,KAAKC,QAAZ,MAA0B,aAA1B;AACA,OAAO,KAAKC,WAAZ,MAA6B,gBAA7B;AACA,OAAO,KAAKC,SAAZ,MAA2B,cAA3B;AACA,OAAO,KAAKC,UAAZ,MAA4B,eAA5B;AACA,OAAO,KAAKC,WAAZ,MAA6B,gBAA7B;AACA,OAAO,KAAKC,MAAZ,MAAwB,UAAxB;AACA,OAAO,KAAKC,KAAZ,MAAuB,SAAvB;AACA,OAAO,KAAKC,QAAZ,MAA0B,aAA1B;AACA,OAAO,KAAKC,YAAZ,MAA8B,iBAA9B;AACA,OAAO,KAAKC,eAAZ,MAAiC,oBAAjC;AACA,OAAO,KAAKC,WAAZ,MAA6B,gBAA7B;AACA,OAAO,KAAKC,KAAZ,MAAuB,SAAvB;AACA,OAAO,KAAKC,KAAZ,MAAuB,SAAvB;AAEA;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMC,aAAa,GAAKC,KAAF,IAAa;AAClC,MAAK,CAAEA,KAAP,EAAe;AACd;AACA;;AACD,QAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA,QAAZ;AAAsBC,IAAAA;AAAtB,MAA+BH,KAArC;AACAnG,EAAAA,iBAAiB,CAAE;AAAEsG,IAAAA,IAAF;AAAQ,OAAGF;AAAX,GAAF,EAAyBC,QAAzB,CAAjB;AACA,CAND;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACA,OAAO,MAAME,2BAA2B,GAAG,MAAM,CAChD;AACA;AACAnD,SAHgD,EAIhDf,KAJgD,EAKhDH,OALgD,EAMhDF,OANgD,EAOhDQ,IAPgD,EAQhDsC,KARgD,EAUhD;AACAzE,QAXgD,EAYhDE,KAZgD,EAahDC,MAbgD,EAchDC,OAdgD,EAehDC,QAfgD,EAgBhDC,UAhBgD,EAiBhD6F,MAAM,CAACC,EAAP,IAAaD,MAAM,CAACC,EAAP,CAAUC,SAAvB,GAAmC9F,OAAnC,GAA6C,IAjBG,EAiBG;AACnDC,IAlBgD,EAmBhDC,MAnBgD,EAoBhDC,OApBgD,EAqBhDc,KArBgD,EAsBhDC,KAtBgD,EAuBhDC,IAvBgD,EAwBhDE,KAxBgD,EAyBhDG,IAzBgD,EA0BhDE,cA1BgD,EA2BhDC,WA3BgD,EA4BhDI,SA5BgD,EA6BhDC,OA7BgD,EA8BhDC,IA9BgD,EA+BhDI,QA/BgD,EAgChDE,QAhCgD,EAiChDD,OAjCgD,EAkChDmB,YAlCgD,EAmChDC,SAnCgD,EAoChDS,aApCgD,EAqChDE,GArCgD,EAsChDC,MAtCgD,EAuChDC,SAvCgD,EAwChDC,SAxCgD,EAyChDI,UAzCgD,EA0ChDC,WA1CgD,EA2ChDC,MA3CgD,EA4ChDC,KA5CgD,EA6ChD;AACAC,QA9CgD,EA+ChDG,WA/CgD,EAgDhDC,KAhDgD,EAiDhDC,KAjDgD,EAmDhD;AACAnD,UApDgD,EAqDhDC,cArDgD,EAsDhDC,iBAtDgD,EAuDhDqC,QAvDgD,EAwDhDE,SAxDgD,EAyDhDD,WAzDgD,EA0DhDf,KA1DgD,EA2DhDsB,YA3DgD,EA4DhDvF,MA5DgD,EA6DhD8D,SA7DgD,EA8DhDL,WA9DgD,EA+DhDC,iBA/DgD,EAgEhDH,WAhEgD,EAiEhDR,UAjEgD,EAkEhDS,QAlEgD,EAmEhDK,SAnEgD,EAoEhDF,kBApEgD,EAqEhDC,YArEgD,EAsEhDO,eAtEgD,EAuEhDC,mBAvEgD,EAwEhDC,sBAxEgD,EAyEhDC,uBAzEgD,EA0EhDJ,cA1EgD,EA2EhDQ,QA3EgD,EA4EhD/D,iBA5EgD,EA6EhDC,cA7EgD,EA8EhDC,WA9EgD,EA+EhDC,eA/EgD,EAgFhDC,gBAhFgD,EAiFhDC,eAjFgD,EAkFhDM,aAlFgD,EAmFhDJ,iBAnFgD,EAoFhDC,kBApFgD,EAqFhDC,sBArFgD,EAsFhDC,yBAtFgD,EAuFhDJ,0BAvFgD,EAyFhDkC,YAzFgD,EA0FhDE,gBA1FgD,EA2FhDxB,QA3FgD,EA4FhDO,QA5FgD,EA6FhDoD,eA7FgD,EA8FhDjB,UA9FgD,EA+FhDtB,mBA/FgD,CAA1C;AAkGP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,MAAMoD,kBAAkB,GAAG,YAE7B;AAAA,MADJC,MACI,uEADKL,2BAA2B,EAChC;AACJK,EAAAA,MAAM,CAACC,OAAP,CAAgBX,aAAhB;AAEAjG,EAAAA,mBAAmB,CAAEmD,SAAS,CAACkD,IAAZ,CAAnB;;AACA,MAAKE,MAAM,CAACC,EAAP,IAAaD,MAAM,CAACC,EAAP,CAAUC,SAA5B,EAAwC;AACvCxG,IAAAA,6BAA6B,CAAEU,OAAO,CAAC0F,IAAV,CAA7B;AACA;;AACDnG,EAAAA,8BAA8B,CAAEyC,OAAO,CAAC0D,IAAV,CAA9B;AACAlG,EAAAA,oBAAoB,CAAE6B,KAAK,CAACqE,IAAR,CAApB;AACA,CAXM;AAaP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,OAAO,MAAMQ,4CAA4C,GAAGC,OAAO,CAACC,GAAR,CAC1DC,mBAD0D,GAEzD,YAAgC;AAAA,MAA9B;AAAEC,IAAAA;AAAF,GAA8B,uEAAR,EAAQ;AAChC,GACC;AACA5D,EAAAA,cAFD,EAGC,IAAKkD,MAAM,CAACW,+BAAP,GACF,CAAE1E,QAAF,CADE,GAEF,EAFH,CAHD,EAOC;AACA,MAAKyE,eAAe,GACjB,CACAlG,mBADA,EAEAwC,WAFA,EAGAE,iBAHA,EAIAE,gBAJA,CADiB,GAOjB,EAPH,CARD,EAgBEiD,OAhBF,CAgBWX,aAhBX;AAiBC,CApBwD,GAqBzDkB,SArBI","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tregisterBlockType,\n\tsetDefaultBlockName,\n\tsetFreeformContentHandlerName,\n\tsetUnregisteredTypeHandlerName,\n\tsetGroupingBlockName,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport * as archives from './archives';\nimport * as avatar from './avatar';\nimport * as audio from './audio';\nimport * as button from './button';\nimport * as buttons from './buttons';\nimport * as calendar from './calendar';\nimport * as categories from './categories';\nimport * as classic from './freeform';\nimport * as code from './code';\nimport * as column from './column';\nimport * as columns from './columns';\nimport * as commentAuthorAvatar from './comment-author-avatar';\nimport * as commentAuthorName from './comment-author-name';\nimport * as commentContent from './comment-content';\nimport * as commentDate from './comment-date';\nimport * as commentEditLink from './comment-edit-link';\nimport * as commentReplyLink from './comment-reply-link';\nimport * as commentTemplate from './comment-template';\nimport * as commentsPaginationPrevious from './comments-pagination-previous';\nimport * as commentsQueryLoop from './comments-query-loop';\nimport * as commentsPagination from './comments-pagination';\nimport * as commentsPaginationNext from './comments-pagination-next';\nimport * as commentsPaginationNumbers from './comments-pagination-numbers';\nimport * as commentsTitle from './comments-title';\nimport * as cover from './cover';\nimport * as embed from './embed';\nimport * as file from './file';\nimport * as gallery from './gallery';\nimport * as group from './group';\nimport * as heading from './heading';\nimport * as homeLink from './home-link';\nimport * as html from './html';\nimport * as image from './image';\nimport * as latestComments from './latest-comments';\nimport * as latestPosts from './latest-posts';\nimport * as list from './list';\nimport * as listItem from './list-item';\nimport * as logInOut from './loginout';\nimport * as mediaText from './media-text';\nimport * as missing from './missing';\nimport * as more from './more';\nimport * as navigation from './navigation';\nimport * as navigationLink from './navigation-link';\nimport * as navigationSubmenu from './navigation-submenu';\nimport * as nextpage from './nextpage';\nimport * as pattern from './pattern';\nimport * as pageList from './page-list';\nimport * as paragraph from './paragraph';\nimport * as postAuthor from './post-author';\nimport * as postAuthorName from './post-author-name';\nimport * as postAuthorBiography from './post-author-biography';\nimport * as postComment from './post-comment';\nimport * as postComments from './post-comments';\nimport * as postCommentsCount from './post-comments-count';\nimport * as postCommentsForm from './post-comments-form';\nimport * as postCommentsLink from './post-comments-link';\nimport * as postContent from './post-content';\nimport * as postDate from './post-date';\nimport * as postExcerpt from './post-excerpt';\nimport * as postFeaturedImage from './post-featured-image';\nimport * as postNavigationLink from './post-navigation-link';\nimport * as postTemplate from './post-template';\nimport * as postTerms from './post-terms';\nimport * as postTitle from './post-title';\nimport * as preformatted from './preformatted';\nimport * as pullquote from './pullquote';\nimport * as query from './query';\nimport * as queryNoResults from './query-no-results';\nimport * as queryPagination from './query-pagination';\nimport * as queryPaginationNext from './query-pagination-next';\nimport * as queryPaginationNumbers from './query-pagination-numbers';\nimport * as queryPaginationPrevious from './query-pagination-previous';\nimport * as queryTitle from './query-title';\nimport * as quote from './quote';\nimport * as reusableBlock from './block';\nimport * as readMore from './read-more';\nimport * as rss from './rss';\nimport * as search from './search';\nimport * as separator from './separator';\nimport * as shortcode from './shortcode';\nimport * as siteLogo from './site-logo';\nimport * as siteTagline from './site-tagline';\nimport * as siteTitle from './site-title';\nimport * as socialLink from './social-link';\nimport * as socialLinks from './social-links';\nimport * as spacer from './spacer';\nimport * as table from './table';\nimport * as tagCloud from './tag-cloud';\nimport * as templatePart from './template-part';\nimport * as termDescription from './term-description';\nimport * as textColumns from './text-columns';\nimport * as verse from './verse';\nimport * as video from './video';\n\n/**\n * Function to register an individual block.\n *\n * @param {Object} block The block to be registered.\n *\n */\nconst registerBlock = ( block ) => {\n\tif ( ! block ) {\n\t\treturn;\n\t}\n\tconst { metadata, settings, name } = block;\n\tregisterBlockType( { name, ...metadata }, settings );\n};\n\n/**\n * Function to get all the core blocks in an array.\n *\n * @example\n * ```js\n * import { __experimentalGetCoreBlocks } from '@wordpress/block-library';\n *\n * const coreBlocks = __experimentalGetCoreBlocks();\n * ```\n */\nexport const __experimentalGetCoreBlocks = () => [\n\t// Common blocks are grouped at the top to prioritize their display\n\t// in various contexts — like the inserter and auto-complete components.\n\tparagraph,\n\timage,\n\theading,\n\tgallery,\n\tlist,\n\tquote,\n\n\t// Register all remaining core blocks.\n\tarchives,\n\taudio,\n\tbutton,\n\tbuttons,\n\tcalendar,\n\tcategories,\n\twindow.wp && window.wp.oldEditor ? classic : null, // Only add the classic block in WP Context.\n\tcode,\n\tcolumn,\n\tcolumns,\n\tcover,\n\tembed,\n\tfile,\n\tgroup,\n\thtml,\n\tlatestComments,\n\tlatestPosts,\n\tmediaText,\n\tmissing,\n\tmore,\n\tnextpage,\n\tpageList,\n\tpattern,\n\tpreformatted,\n\tpullquote,\n\treusableBlock,\n\trss,\n\tsearch,\n\tseparator,\n\tshortcode,\n\tsocialLink,\n\tsocialLinks,\n\tspacer,\n\ttable,\n\t// tableOfContents,\n\ttagCloud,\n\ttextColumns,\n\tverse,\n\tvideo,\n\n\t// theme blocks\n\tnavigation,\n\tnavigationLink,\n\tnavigationSubmenu,\n\tsiteLogo,\n\tsiteTitle,\n\tsiteTagline,\n\tquery,\n\ttemplatePart,\n\tavatar,\n\tpostTitle,\n\tpostExcerpt,\n\tpostFeaturedImage,\n\tpostContent,\n\tpostAuthor,\n\tpostDate,\n\tpostTerms,\n\tpostNavigationLink,\n\tpostTemplate,\n\tqueryPagination,\n\tqueryPaginationNext,\n\tqueryPaginationNumbers,\n\tqueryPaginationPrevious,\n\tqueryNoResults,\n\treadMore,\n\tcommentAuthorName,\n\tcommentContent,\n\tcommentDate,\n\tcommentEditLink,\n\tcommentReplyLink,\n\tcommentTemplate,\n\tcommentsTitle,\n\tcommentsQueryLoop,\n\tcommentsPagination,\n\tcommentsPaginationNext,\n\tcommentsPaginationNumbers,\n\tcommentsPaginationPrevious,\n\n\tpostComments,\n\tpostCommentsForm,\n\thomeLink,\n\tlogInOut,\n\ttermDescription,\n\tqueryTitle,\n\tpostAuthorBiography,\n];\n\n/**\n * Function to register core blocks provided by the block editor.\n *\n * @param {Array} blocks An optional array of the core blocks being registered.\n *\n * @example\n * ```js\n * import { registerCoreBlocks } from '@wordpress/block-library';\n *\n * registerCoreBlocks();\n * ```\n */\nexport const registerCoreBlocks = (\n\tblocks = __experimentalGetCoreBlocks()\n) => {\n\tblocks.forEach( registerBlock );\n\n\tsetDefaultBlockName( paragraph.name );\n\tif ( window.wp && window.wp.oldEditor ) {\n\t\tsetFreeformContentHandlerName( classic.name );\n\t}\n\tsetUnregisteredTypeHandlerName( missing.name );\n\tsetGroupingBlockName( group.name );\n};\n\n/**\n * Function to register experimental core blocks depending on editor settings.\n *\n * @param {boolean} enableFSEBlocks Whether to enable the full site editing blocks.\n * @example\n * ```js\n * import { __experimentalRegisterExperimentalCoreBlocks } from '@wordpress/block-library';\n *\n * __experimentalRegisterExperimentalCoreBlocks( settings );\n * ```\n */\nexport const __experimentalRegisterExperimentalCoreBlocks = process.env\n\t.IS_GUTENBERG_PLUGIN\n\t? ( { enableFSEBlocks } = {} ) => {\n\t\t\t[\n\t\t\t\t// Experimental blocks.\n\t\t\t\tpostAuthorName,\n\t\t\t\t...( window.__experimentalEnableListBlockV2\n\t\t\t\t\t? [ listItem ]\n\t\t\t\t\t: [] ),\n\n\t\t\t\t// Full Site Editing blocks.\n\t\t\t\t...( enableFSEBlocks\n\t\t\t\t\t? [\n\t\t\t\t\t\t\tcommentAuthorAvatar,\n\t\t\t\t\t\t\tpostComment,\n\t\t\t\t\t\t\tpostCommentsCount,\n\t\t\t\t\t\t\tpostCommentsLink,\n\t\t\t\t\t ]\n\t\t\t\t\t: [] ),\n\t\t\t].forEach( registerBlock );\n\t }\n\t: undefined;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/index.js"],"names":["registerBlockType","setDefaultBlockName","setFreeformContentHandlerName","setUnregisteredTypeHandlerName","setGroupingBlockName","archives","avatar","audio","button","buttons","calendar","categories","classic","code","column","columns","comments","commentAuthorAvatar","commentAuthorName","commentContent","commentDate","commentEditLink","commentReplyLink","commentTemplate","commentsPaginationPrevious","commentsPagination","commentsPaginationNext","commentsPaginationNumbers","commentsTitle","cover","embed","file","gallery","group","heading","homeLink","html","image","latestComments","latestPosts","list","listItem","logInOut","mediaText","missing","more","navigation","navigationLink","navigationSubmenu","nextpage","pattern","pageList","paragraph","postAuthor","postAuthorName","postAuthorBiography","postComment","postComments","postCommentsCount","postCommentsForm","postCommentsLink","postContent","postDate","postExcerpt","postFeaturedImage","postNavigationLink","postTemplate","postTerms","postTitle","preformatted","pullquote","query","queryNoResults","queryPagination","queryPaginationNext","queryPaginationNumbers","queryPaginationPrevious","queryTitle","quote","reusableBlock","readMore","rss","search","separator","shortcode","siteLogo","siteTagline","siteTitle","socialLink","socialLinks","spacer","table","tableOfContents","tagCloud","templatePart","termDescription","textColumns","verse","video","isBlockMetadataExperimental","registerBlock","block","metadata","settings","name","getAllBlocks","window","wp","oldEditor","__experimentalGetCoreBlocks","filter","registerCoreBlocks","blocks","forEach","__experimentalRegisterExperimentalCoreBlocks","process","env","IS_GUTENBERG_PLUGIN","enableFSEBlocks","enabledExperiments","__experimentalEnableListBlockV2","__experimental","includes","undefined"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tregisterBlockType,\n\tsetDefaultBlockName,\n\tsetFreeformContentHandlerName,\n\tsetUnregisteredTypeHandlerName,\n\tsetGroupingBlockName,\n} from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\n// When IS_GUTENBERG_PLUGIN is set to false, imports of experimental blocks\n// are transformed by packages/block-library/src/index.js as follows:\n// import * as experimentalBlock from './experimental-block'\n// becomes\n// const experimentalBlock = null;\n// This enables webpack to eliminate the experimental blocks code from the\n// production build to make the final bundle smaller.\n//\n// See https://github.com/WordPress/gutenberg/pull/40655 for more context.\nimport * as archives from './archives';\nimport * as avatar from './avatar';\nimport * as audio from './audio';\nimport * as button from './button';\nimport * as buttons from './buttons';\nimport * as calendar from './calendar';\nimport * as categories from './categories';\nimport * as classic from './freeform';\nimport * as code from './code';\nimport * as column from './column';\nimport * as columns from './columns';\nimport * as comments from './comments';\nimport * as commentAuthorAvatar from './comment-author-avatar';\nimport * as commentAuthorName from './comment-author-name';\nimport * as commentContent from './comment-content';\nimport * as commentDate from './comment-date';\nimport * as commentEditLink from './comment-edit-link';\nimport * as commentReplyLink from './comment-reply-link';\nimport * as commentTemplate from './comment-template';\nimport * as commentsPaginationPrevious from './comments-pagination-previous';\nimport * as commentsPagination from './comments-pagination';\nimport * as commentsPaginationNext from './comments-pagination-next';\nimport * as commentsPaginationNumbers from './comments-pagination-numbers';\nimport * as commentsTitle from './comments-title';\nimport * as cover from './cover';\nimport * as embed from './embed';\nimport * as file from './file';\nimport * as gallery from './gallery';\nimport * as group from './group';\nimport * as heading from './heading';\nimport * as homeLink from './home-link';\nimport * as html from './html';\nimport * as image from './image';\nimport * as latestComments from './latest-comments';\nimport * as latestPosts from './latest-posts';\nimport * as list from './list';\nimport * as listItem from './list-item';\nimport * as logInOut from './loginout';\nimport * as mediaText from './media-text';\nimport * as missing from './missing';\nimport * as more from './more';\nimport * as navigation from './navigation';\nimport * as navigationLink from './navigation-link';\nimport * as navigationSubmenu from './navigation-submenu';\nimport * as nextpage from './nextpage';\nimport * as pattern from './pattern';\nimport * as pageList from './page-list';\nimport * as paragraph from './paragraph';\nimport * as postAuthor from './post-author';\nimport * as postAuthorName from './post-author-name';\nimport * as postAuthorBiography from './post-author-biography';\nimport * as postComment from './post-comment';\nimport * as postComments from './post-comments';\nimport * as postCommentsCount from './post-comments-count';\nimport * as postCommentsForm from './post-comments-form';\nimport * as postCommentsLink from './post-comments-link';\nimport * as postContent from './post-content';\nimport * as postDate from './post-date';\nimport * as postExcerpt from './post-excerpt';\nimport * as postFeaturedImage from './post-featured-image';\nimport * as postNavigationLink from './post-navigation-link';\nimport * as postTemplate from './post-template';\nimport * as postTerms from './post-terms';\nimport * as postTitle from './post-title';\nimport * as preformatted from './preformatted';\nimport * as pullquote from './pullquote';\nimport * as query from './query';\nimport * as queryNoResults from './query-no-results';\nimport * as queryPagination from './query-pagination';\nimport * as queryPaginationNext from './query-pagination-next';\nimport * as queryPaginationNumbers from './query-pagination-numbers';\nimport * as queryPaginationPrevious from './query-pagination-previous';\nimport * as queryTitle from './query-title';\nimport * as quote from './quote';\nimport * as reusableBlock from './block';\nimport * as readMore from './read-more';\nimport * as rss from './rss';\nimport * as search from './search';\nimport * as separator from './separator';\nimport * as shortcode from './shortcode';\nimport * as siteLogo from './site-logo';\nimport * as siteTagline from './site-tagline';\nimport * as siteTitle from './site-title';\nimport * as socialLink from './social-link';\nimport * as socialLinks from './social-links';\nimport * as spacer from './spacer';\nimport * as table from './table';\nimport * as tableOfContents from './table-of-contents';\nimport * as tagCloud from './tag-cloud';\nimport * as templatePart from './template-part';\nimport * as termDescription from './term-description';\nimport * as textColumns from './text-columns';\nimport * as verse from './verse';\nimport * as video from './video';\n\nimport isBlockMetadataExperimental from './is-block-metadata-experimental';\n\n/**\n * Function to register an individual block.\n *\n * @param {Object} block The block to be registered.\n *\n */\nconst registerBlock = ( block ) => {\n\tif ( ! block ) {\n\t\treturn;\n\t}\n\tconst { metadata, settings, name } = block;\n\tregisterBlockType( { name, ...metadata }, settings );\n};\n\n/**\n * Function to get all the block-library blocks in an array\n */\nconst getAllBlocks = () => [\n\t// Common blocks are grouped at the top to prioritize their display\n\t// in various contexts — like the inserter and auto-complete components.\n\tparagraph,\n\timage,\n\theading,\n\tgallery,\n\tlist,\n\tlistItem,\n\tquote,\n\n\t// Register all remaining core blocks.\n\tarchives,\n\taudio,\n\tbutton,\n\tbuttons,\n\tcalendar,\n\tcategories,\n\twindow.wp && window.wp.oldEditor ? classic : null, // Only add the classic block in WP Context.\n\tcode,\n\tcolumn,\n\tcolumns,\n\tcommentAuthorAvatar,\n\tcover,\n\tembed,\n\tfile,\n\tgroup,\n\thtml,\n\tlatestComments,\n\tlatestPosts,\n\tmediaText,\n\tmissing,\n\tmore,\n\tnextpage,\n\tpageList,\n\tpattern,\n\tpreformatted,\n\tpullquote,\n\treusableBlock,\n\trss,\n\tsearch,\n\tseparator,\n\tshortcode,\n\tsocialLink,\n\tsocialLinks,\n\tspacer,\n\ttable,\n\ttagCloud,\n\ttextColumns,\n\tverse,\n\tvideo,\n\n\t// theme blocks\n\tnavigation,\n\tnavigationLink,\n\tnavigationSubmenu,\n\tsiteLogo,\n\tsiteTitle,\n\tsiteTagline,\n\tquery,\n\ttemplatePart,\n\tavatar,\n\tpostTitle,\n\tpostExcerpt,\n\tpostFeaturedImage,\n\tpostContent,\n\tpostAuthor,\n\tpostAuthorName,\n\tpostComment,\n\tpostCommentsCount,\n\tpostCommentsLink,\n\tpostDate,\n\tpostTerms,\n\tpostNavigationLink,\n\tpostTemplate,\n\tqueryPagination,\n\tqueryPaginationNext,\n\tqueryPaginationNumbers,\n\tqueryPaginationPrevious,\n\tqueryNoResults,\n\treadMore,\n\tcomments,\n\tcommentAuthorName,\n\tcommentContent,\n\tcommentDate,\n\tcommentEditLink,\n\tcommentReplyLink,\n\tcommentTemplate,\n\tcommentsTitle,\n\tcommentsPagination,\n\tcommentsPaginationNext,\n\tcommentsPaginationNumbers,\n\tcommentsPaginationPrevious,\n\tpostComments,\n\tpostCommentsForm,\n\ttableOfContents,\n\thomeLink,\n\tlogInOut,\n\ttermDescription,\n\tqueryTitle,\n\tpostAuthorBiography,\n];\n\n/**\n * Function to get all the core blocks in an array.\n *\n * @example\n * ```js\n * import { __experimentalGetCoreBlocks } from '@wordpress/block-library';\n *\n * const coreBlocks = __experimentalGetCoreBlocks();\n * ```\n */\nexport const __experimentalGetCoreBlocks = () =>\n\tgetAllBlocks().filter(\n\t\t( { metadata } ) => ! isBlockMetadataExperimental( metadata )\n\t);\n\n/**\n * Function to register core blocks provided by the block editor.\n *\n * @param {Array} blocks An optional array of the core blocks being registered.\n *\n * @example\n * ```js\n * import { registerCoreBlocks } from '@wordpress/block-library';\n *\n * registerCoreBlocks();\n * ```\n */\nexport const registerCoreBlocks = (\n\tblocks = __experimentalGetCoreBlocks()\n) => {\n\tblocks.forEach( registerBlock );\n\n\tsetDefaultBlockName( paragraph.name );\n\tif ( window.wp && window.wp.oldEditor ) {\n\t\tsetFreeformContentHandlerName( classic.name );\n\t}\n\tsetUnregisteredTypeHandlerName( missing.name );\n\tsetGroupingBlockName( group.name );\n};\n\n/**\n * Function to register experimental core blocks depending on editor settings.\n *\n * @param {boolean} enableFSEBlocks Whether to enable the full site editing blocks.\n * @example\n * ```js\n * import { __experimentalRegisterExperimentalCoreBlocks } from '@wordpress/block-library';\n *\n * __experimentalRegisterExperimentalCoreBlocks( settings );\n * ```\n */\nexport const __experimentalRegisterExperimentalCoreBlocks = process.env\n\t.IS_GUTENBERG_PLUGIN\n\t? ( { enableFSEBlocks } = {} ) => {\n\t\t\tconst enabledExperiments = [\n\t\t\t\twindow.__experimentalEnableListBlockV2 ? 'list-v2' : null,\n\t\t\t\tenableFSEBlocks ? 'fse' : null,\n\t\t\t];\n\t\t\tgetAllBlocks()\n\t\t\t\t.filter( ( { metadata } ) =>\n\t\t\t\t\tisBlockMetadataExperimental( metadata )\n\t\t\t\t)\n\t\t\t\t.filter(\n\t\t\t\t\t( { metadata: { __experimental } } ) =>\n\t\t\t\t\t\t__experimental === true ||\n\t\t\t\t\t\tenabledExperiments.includes( __experimental )\n\t\t\t\t)\n\t\t\t\t.forEach( registerBlock );\n\t }\n\t: undefined;\n"]}
|
|
@@ -128,7 +128,16 @@ const registerBlockVariations = block => {
|
|
|
128
128
|
const devOnly = block => !!__DEV__ ? block : null; // eslint-disable-next-line no-unused-vars
|
|
129
129
|
|
|
130
130
|
|
|
131
|
-
const iOSOnly = block => Platform.OS === 'ios' ? block : devOnly(block); //
|
|
131
|
+
const iOSOnly = block => Platform.OS === 'ios' ? block : devOnly(block); // To be removed once Quote V2 is released on the web editor.
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
function quoteCheck(quoteBlock, blocksFlags) {
|
|
135
|
+
if (blocksFlags !== null && blocksFlags !== void 0 && blocksFlags.__experimentalEnableQuoteBlockV2) {
|
|
136
|
+
quoteBlock.settings = quoteBlock === null || quoteBlock === void 0 ? void 0 : quoteBlock.settingsV2;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
return quoteBlock;
|
|
140
|
+
} // Hide the Classic block and SocialLink block
|
|
132
141
|
|
|
133
142
|
|
|
134
143
|
addFilter('blocks.registerBlockType', 'core/react-native-editor', (settings, name) => {
|
|
@@ -166,11 +175,13 @@ addFilter('blocks.registerBlockType', 'core/react-native-editor', (settings, nam
|
|
|
166
175
|
*
|
|
167
176
|
* registerCoreBlocks();
|
|
168
177
|
* ```
|
|
178
|
+
* @param {Object} [blocksFlags] Experimental flags
|
|
179
|
+
*
|
|
169
180
|
*/
|
|
170
181
|
|
|
171
|
-
export const registerCoreBlocks =
|
|
182
|
+
export const registerCoreBlocks = blocksFlags => {
|
|
172
183
|
// When adding new blocks to this list please also consider updating /src/block-support/supported-blocks.json in the Gutenberg-Mobile repo
|
|
173
|
-
[paragraph, heading, devOnly(code), missing, more, image, video, nextpage, separator, list, quote, mediaText, preformatted, gallery, columns, column, group, classic, button, spacer, shortcode, buttons, latestPosts, verse, cover, socialLink, socialLinks, pullquote, file, audio, reusableBlock, search, embed].forEach(registerBlock);
|
|
184
|
+
[paragraph, heading, devOnly(code), missing, more, image, video, nextpage, separator, list, quoteCheck(quote, blocksFlags), mediaText, preformatted, gallery, columns, column, group, classic, button, spacer, shortcode, buttons, latestPosts, verse, cover, socialLink, socialLinks, pullquote, file, audio, reusableBlock, search, embed].forEach(registerBlock);
|
|
174
185
|
registerBlockVariations(socialLink);
|
|
175
186
|
setDefaultBlockName(paragraph.name);
|
|
176
187
|
setFreeformContentHandlerName(classic.name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/index.native.js"],"names":["Platform","sortBy","hasBlockSupport","registerBlockType","setDefaultBlockName","setFreeformContentHandlerName","setUnregisteredTypeHandlerName","setGroupingBlockName","addFilter","paragraph","image","heading","quote","gallery","archives","audio","button","calendar","categories","code","columns","column","cover","embed","file","html","mediaText","latestComments","latestPosts","list","missing","more","nextpage","preformatted","pullquote","reusableBlock","rss","search","separator","shortcode","spacer","table","textColumns","verse","video","tagCloud","classic","group","buttons","socialLink","socialLinks","transformationCategory","ALLOWED_BLOCKS_GRADIENT_SUPPORT","coreBlocks","reduce","accumulator","block","name","registerBlock","metadata","settings","supports","includes","color","gradients","registerBlockVariations","variations","forEach","v","icon","title","devOnly","__DEV__","iOSOnly","OS","hiddenBlocks","inserter","transforms","supportedMobileTransforms","registerCoreBlocks","NEW_BLOCK_TYPES"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { Platform } from 'react-native';\nimport { sortBy } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\thasBlockSupport,\n\tregisterBlockType,\n\tsetDefaultBlockName,\n\tsetFreeformContentHandlerName,\n\tsetUnregisteredTypeHandlerName,\n\tsetGroupingBlockName,\n} from '@wordpress/blocks';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport * as paragraph from './paragraph';\nimport * as image from './image';\nimport * as heading from './heading';\nimport * as quote from './quote';\nimport * as gallery from './gallery';\nimport * as archives from './archives';\nimport * as audio from './audio';\nimport * as button from './button';\nimport * as calendar from './calendar';\nimport * as categories from './categories';\nimport * as code from './code';\nimport * as columns from './columns';\nimport * as column from './column';\nimport * as cover from './cover';\nimport * as embed from './embed';\nimport * as file from './file';\nimport * as html from './html';\nimport * as mediaText from './media-text';\nimport * as latestComments from './latest-comments';\nimport * as latestPosts from './latest-posts';\nimport * as list from './list';\nimport * as missing from './missing';\nimport * as more from './more';\nimport * as nextpage from './nextpage';\nimport * as preformatted from './preformatted';\nimport * as pullquote from './pullquote';\nimport * as reusableBlock from './block';\nimport * as rss from './rss';\nimport * as search from './search';\nimport * as separator from './separator';\nimport * as shortcode from './shortcode';\nimport * as spacer from './spacer';\nimport * as table from './table';\nimport * as textColumns from './text-columns';\nimport * as verse from './verse';\nimport * as video from './video';\nimport * as tagCloud from './tag-cloud';\nimport * as classic from './freeform';\nimport * as group from './group';\nimport * as buttons from './buttons';\nimport * as socialLink from './social-link';\nimport * as socialLinks from './social-links';\n\nimport { transformationCategory } from './transformationCategories';\n\nconst ALLOWED_BLOCKS_GRADIENT_SUPPORT = [ 'core/button' ];\n\nexport const coreBlocks = [\n\t// Common blocks are grouped at the top to prioritize their display\n\t// in various contexts — like the inserter and auto-complete components.\n\tparagraph,\n\timage,\n\theading,\n\tgallery,\n\tlist,\n\tquote,\n\n\t// Register all remaining core blocks.\n\tshortcode,\n\tarchives,\n\taudio,\n\tbutton,\n\tcalendar,\n\tcategories,\n\tcode,\n\tcolumns,\n\tcolumn,\n\tcover,\n\tembed,\n\tfile,\n\thtml,\n\tmediaText,\n\tlatestComments,\n\tlatestPosts,\n\tmissing,\n\tmore,\n\tnextpage,\n\tpreformatted,\n\tpullquote,\n\trss,\n\tsearch,\n\tseparator,\n\treusableBlock,\n\tspacer,\n\ttable,\n\ttagCloud,\n\ttextColumns,\n\tverse,\n\tvideo,\n\tclassic,\n\tbuttons,\n\tsocialLink,\n\tsocialLinks,\n].reduce( ( accumulator, block ) => {\n\taccumulator[ block.name ] = block;\n\treturn accumulator;\n}, {} );\n\n/**\n * Function to register an individual block.\n *\n * @param {Object} block The block to be registered.\n *\n */\nexport const registerBlock = ( block ) => {\n\tif ( ! block ) {\n\t\treturn;\n\t}\n\tconst { metadata, settings, name } = block;\n\tconst { supports } = metadata;\n\n\tregisterBlockType(\n\t\t{\n\t\t\tname,\n\t\t\t...metadata,\n\t\t\t// Gradients support only available for blocks listed in ALLOWED_BLOCKS_GRADIENT_SUPPORT.\n\t\t\t...( ! ALLOWED_BLOCKS_GRADIENT_SUPPORT.includes( name ) &&\n\t\t\tsupports?.color?.gradients\n\t\t\t\t? {\n\t\t\t\t\t\tsupports: {\n\t\t\t\t\t\t\t...supports,\n\t\t\t\t\t\t\tcolor: { ...supports.color, gradients: false },\n\t\t\t\t\t\t},\n\t\t\t\t }\n\t\t\t\t: {} ),\n\t\t},\n\t\tsettings\n\t);\n};\n\n/**\n * Function to register a block variations e.g. social icons different types.\n *\n * @param {Object} block The block which variations will be registered.\n *\n */\nconst registerBlockVariations = ( block ) => {\n\tconst { metadata, settings, name } = block;\n\n\tsortBy( settings.variations, 'title' ).forEach( ( v ) => {\n\t\tregisterBlockType( `${ name }-${ v.name }`, {\n\t\t\t...metadata,\n\t\t\tname: `${ name }-${ v.name }`,\n\t\t\t...settings,\n\t\t\ticon: v.icon(),\n\t\t\ttitle: v.title,\n\t\t\tvariations: [],\n\t\t} );\n\t} );\n};\n\n// Only enable code block for development\n// eslint-disable-next-line no-undef\nconst devOnly = ( block ) => ( !! __DEV__ ? block : null );\n\n// eslint-disable-next-line no-unused-vars\nconst iOSOnly = ( block ) =>\n\tPlatform.OS === 'ios' ? block : devOnly( block );\n\n// Hide the Classic block and SocialLink block\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/react-native-editor',\n\t( settings, name ) => {\n\t\tconst hiddenBlocks = [ 'core/freeform', 'core/social-link' ];\n\t\tif (\n\t\t\thiddenBlocks.includes( name ) &&\n\t\t\thasBlockSupport( settings, 'inserter', true )\n\t\t) {\n\t\t\tsettings.supports = {\n\t\t\t\t...settings.supports,\n\t\t\t\tinserter: false,\n\t\t\t};\n\t\t}\n\n\t\treturn settings;\n\t}\n);\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/react-native-editor',\n\t( settings, name ) => {\n\t\tif ( ! settings.transforms ) {\n\t\t\treturn settings;\n\t\t}\n\n\t\tif ( ! settings.transforms.supportedMobileTransforms ) {\n\t\t\treturn {\n\t\t\t\t...settings,\n\t\t\t\ttransforms: {\n\t\t\t\t\t...settings.transforms,\n\t\t\t\t\tsupportedMobileTransforms: transformationCategory( name ),\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\n\t\treturn settings;\n\t}\n);\n\n/**\n * Function to register core blocks provided by the block editor.\n *\n * @example\n * ```js\n * import { registerCoreBlocks } from '@wordpress/block-library';\n *\n * registerCoreBlocks();\n * ```\n */\nexport const registerCoreBlocks = () => {\n\t// When adding new blocks to this list please also consider updating /src/block-support/supported-blocks.json in the Gutenberg-Mobile repo\n\t[\n\t\tparagraph,\n\t\theading,\n\t\tdevOnly( code ),\n\t\tmissing,\n\t\tmore,\n\t\timage,\n\t\tvideo,\n\t\tnextpage,\n\t\tseparator,\n\t\tlist,\n\t\tquote,\n\t\tmediaText,\n\t\tpreformatted,\n\t\tgallery,\n\t\tcolumns,\n\t\tcolumn,\n\t\tgroup,\n\t\tclassic,\n\t\tbutton,\n\t\tspacer,\n\t\tshortcode,\n\t\tbuttons,\n\t\tlatestPosts,\n\t\tverse,\n\t\tcover,\n\t\tsocialLink,\n\t\tsocialLinks,\n\t\tpullquote,\n\t\tfile,\n\t\taudio,\n\t\treusableBlock,\n\t\tsearch,\n\t\tembed,\n\t].forEach( registerBlock );\n\n\tregisterBlockVariations( socialLink );\n\tsetDefaultBlockName( paragraph.name );\n\tsetFreeformContentHandlerName( classic.name );\n\tsetUnregisteredTypeHandlerName( missing.name );\n\tif ( group ) {\n\t\tsetGroupingBlockName( group.name );\n\t}\n};\n\n/**\n * Dictates which block types are considered \"new.\" For each of the block types\n * below, if the native host app does not already have an impression count set,\n * an initial count will be set. When a block type's impression count is greater\n * than 0, a \"new\" badge is displayed on the block type within the block\n * inserter.\n *\n * @constant {{ string, number }}\n */\nexport const NEW_BLOCK_TYPES = {\n\t[ embed.name ]: 40,\n\t[ search.name ]: 40,\n\t[ audio.name ]: 40,\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/index.native.js"],"names":["Platform","sortBy","hasBlockSupport","registerBlockType","setDefaultBlockName","setFreeformContentHandlerName","setUnregisteredTypeHandlerName","setGroupingBlockName","addFilter","paragraph","image","heading","quote","gallery","archives","audio","button","calendar","categories","code","columns","column","cover","embed","file","html","mediaText","latestComments","latestPosts","list","missing","more","nextpage","preformatted","pullquote","reusableBlock","rss","search","separator","shortcode","spacer","table","textColumns","verse","video","tagCloud","classic","group","buttons","socialLink","socialLinks","transformationCategory","ALLOWED_BLOCKS_GRADIENT_SUPPORT","coreBlocks","reduce","accumulator","block","name","registerBlock","metadata","settings","supports","includes","color","gradients","registerBlockVariations","variations","forEach","v","icon","title","devOnly","__DEV__","iOSOnly","OS","quoteCheck","quoteBlock","blocksFlags","__experimentalEnableQuoteBlockV2","settingsV2","hiddenBlocks","inserter","transforms","supportedMobileTransforms","registerCoreBlocks","NEW_BLOCK_TYPES"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { Platform } from 'react-native';\nimport { sortBy } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\thasBlockSupport,\n\tregisterBlockType,\n\tsetDefaultBlockName,\n\tsetFreeformContentHandlerName,\n\tsetUnregisteredTypeHandlerName,\n\tsetGroupingBlockName,\n} from '@wordpress/blocks';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport * as paragraph from './paragraph';\nimport * as image from './image';\nimport * as heading from './heading';\nimport * as quote from './quote';\nimport * as gallery from './gallery';\nimport * as archives from './archives';\nimport * as audio from './audio';\nimport * as button from './button';\nimport * as calendar from './calendar';\nimport * as categories from './categories';\nimport * as code from './code';\nimport * as columns from './columns';\nimport * as column from './column';\nimport * as cover from './cover';\nimport * as embed from './embed';\nimport * as file from './file';\nimport * as html from './html';\nimport * as mediaText from './media-text';\nimport * as latestComments from './latest-comments';\nimport * as latestPosts from './latest-posts';\nimport * as list from './list';\nimport * as missing from './missing';\nimport * as more from './more';\nimport * as nextpage from './nextpage';\nimport * as preformatted from './preformatted';\nimport * as pullquote from './pullquote';\nimport * as reusableBlock from './block';\nimport * as rss from './rss';\nimport * as search from './search';\nimport * as separator from './separator';\nimport * as shortcode from './shortcode';\nimport * as spacer from './spacer';\nimport * as table from './table';\nimport * as textColumns from './text-columns';\nimport * as verse from './verse';\nimport * as video from './video';\nimport * as tagCloud from './tag-cloud';\nimport * as classic from './freeform';\nimport * as group from './group';\nimport * as buttons from './buttons';\nimport * as socialLink from './social-link';\nimport * as socialLinks from './social-links';\n\nimport { transformationCategory } from './transformationCategories';\n\nconst ALLOWED_BLOCKS_GRADIENT_SUPPORT = [ 'core/button' ];\n\nexport const coreBlocks = [\n\t// Common blocks are grouped at the top to prioritize their display\n\t// in various contexts — like the inserter and auto-complete components.\n\tparagraph,\n\timage,\n\theading,\n\tgallery,\n\tlist,\n\tquote,\n\n\t// Register all remaining core blocks.\n\tshortcode,\n\tarchives,\n\taudio,\n\tbutton,\n\tcalendar,\n\tcategories,\n\tcode,\n\tcolumns,\n\tcolumn,\n\tcover,\n\tembed,\n\tfile,\n\thtml,\n\tmediaText,\n\tlatestComments,\n\tlatestPosts,\n\tmissing,\n\tmore,\n\tnextpage,\n\tpreformatted,\n\tpullquote,\n\trss,\n\tsearch,\n\tseparator,\n\treusableBlock,\n\tspacer,\n\ttable,\n\ttagCloud,\n\ttextColumns,\n\tverse,\n\tvideo,\n\tclassic,\n\tbuttons,\n\tsocialLink,\n\tsocialLinks,\n].reduce( ( accumulator, block ) => {\n\taccumulator[ block.name ] = block;\n\treturn accumulator;\n}, {} );\n\n/**\n * Function to register an individual block.\n *\n * @param {Object} block The block to be registered.\n *\n */\nexport const registerBlock = ( block ) => {\n\tif ( ! block ) {\n\t\treturn;\n\t}\n\tconst { metadata, settings, name } = block;\n\tconst { supports } = metadata;\n\n\tregisterBlockType(\n\t\t{\n\t\t\tname,\n\t\t\t...metadata,\n\t\t\t// Gradients support only available for blocks listed in ALLOWED_BLOCKS_GRADIENT_SUPPORT.\n\t\t\t...( ! ALLOWED_BLOCKS_GRADIENT_SUPPORT.includes( name ) &&\n\t\t\tsupports?.color?.gradients\n\t\t\t\t? {\n\t\t\t\t\t\tsupports: {\n\t\t\t\t\t\t\t...supports,\n\t\t\t\t\t\t\tcolor: { ...supports.color, gradients: false },\n\t\t\t\t\t\t},\n\t\t\t\t }\n\t\t\t\t: {} ),\n\t\t},\n\t\tsettings\n\t);\n};\n\n/**\n * Function to register a block variations e.g. social icons different types.\n *\n * @param {Object} block The block which variations will be registered.\n *\n */\nconst registerBlockVariations = ( block ) => {\n\tconst { metadata, settings, name } = block;\n\n\tsortBy( settings.variations, 'title' ).forEach( ( v ) => {\n\t\tregisterBlockType( `${ name }-${ v.name }`, {\n\t\t\t...metadata,\n\t\t\tname: `${ name }-${ v.name }`,\n\t\t\t...settings,\n\t\t\ticon: v.icon(),\n\t\t\ttitle: v.title,\n\t\t\tvariations: [],\n\t\t} );\n\t} );\n};\n\n// Only enable code block for development\n// eslint-disable-next-line no-undef\nconst devOnly = ( block ) => ( !! __DEV__ ? block : null );\n\n// eslint-disable-next-line no-unused-vars\nconst iOSOnly = ( block ) =>\n\tPlatform.OS === 'ios' ? block : devOnly( block );\n\n// To be removed once Quote V2 is released on the web editor.\nfunction quoteCheck( quoteBlock, blocksFlags ) {\n\tif ( blocksFlags?.__experimentalEnableQuoteBlockV2 ) {\n\t\tquoteBlock.settings = quoteBlock?.settingsV2;\n\t}\n\treturn quoteBlock;\n}\n\n// Hide the Classic block and SocialLink block\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/react-native-editor',\n\t( settings, name ) => {\n\t\tconst hiddenBlocks = [ 'core/freeform', 'core/social-link' ];\n\t\tif (\n\t\t\thiddenBlocks.includes( name ) &&\n\t\t\thasBlockSupport( settings, 'inserter', true )\n\t\t) {\n\t\t\tsettings.supports = {\n\t\t\t\t...settings.supports,\n\t\t\t\tinserter: false,\n\t\t\t};\n\t\t}\n\n\t\treturn settings;\n\t}\n);\n\naddFilter(\n\t'blocks.registerBlockType',\n\t'core/react-native-editor',\n\t( settings, name ) => {\n\t\tif ( ! settings.transforms ) {\n\t\t\treturn settings;\n\t\t}\n\n\t\tif ( ! settings.transforms.supportedMobileTransforms ) {\n\t\t\treturn {\n\t\t\t\t...settings,\n\t\t\t\ttransforms: {\n\t\t\t\t\t...settings.transforms,\n\t\t\t\t\tsupportedMobileTransforms: transformationCategory( name ),\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\n\t\treturn settings;\n\t}\n);\n\n/**\n * Function to register core blocks provided by the block editor.\n *\n * @example\n * ```js\n * import { registerCoreBlocks } from '@wordpress/block-library';\n *\n * registerCoreBlocks();\n * ```\n * @param {Object} [blocksFlags] Experimental flags\n *\n */\nexport const registerCoreBlocks = ( blocksFlags ) => {\n\t// When adding new blocks to this list please also consider updating /src/block-support/supported-blocks.json in the Gutenberg-Mobile repo\n\t[\n\t\tparagraph,\n\t\theading,\n\t\tdevOnly( code ),\n\t\tmissing,\n\t\tmore,\n\t\timage,\n\t\tvideo,\n\t\tnextpage,\n\t\tseparator,\n\t\tlist,\n\t\tquoteCheck( quote, blocksFlags ),\n\t\tmediaText,\n\t\tpreformatted,\n\t\tgallery,\n\t\tcolumns,\n\t\tcolumn,\n\t\tgroup,\n\t\tclassic,\n\t\tbutton,\n\t\tspacer,\n\t\tshortcode,\n\t\tbuttons,\n\t\tlatestPosts,\n\t\tverse,\n\t\tcover,\n\t\tsocialLink,\n\t\tsocialLinks,\n\t\tpullquote,\n\t\tfile,\n\t\taudio,\n\t\treusableBlock,\n\t\tsearch,\n\t\tembed,\n\t].forEach( registerBlock );\n\n\tregisterBlockVariations( socialLink );\n\tsetDefaultBlockName( paragraph.name );\n\tsetFreeformContentHandlerName( classic.name );\n\tsetUnregisteredTypeHandlerName( missing.name );\n\tif ( group ) {\n\t\tsetGroupingBlockName( group.name );\n\t}\n};\n\n/**\n * Dictates which block types are considered \"new.\" For each of the block types\n * below, if the native host app does not already have an impression count set,\n * an initial count will be set. When a block type's impression count is greater\n * than 0, a \"new\" badge is displayed on the block type within the block\n * inserter.\n *\n * @constant {{ string, number }}\n */\nexport const NEW_BLOCK_TYPES = {\n\t[ embed.name ]: 40,\n\t[ search.name ]: 40,\n\t[ audio.name ]: 40,\n};\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if the block is experimental based on the metadata loaded
|
|
3
|
+
* from block.json.
|
|
4
|
+
*
|
|
5
|
+
* This function is in a separate file and uses the older JS syntax so
|
|
6
|
+
* that it can be imported in both:
|
|
7
|
+
* – block-library/src/index.js
|
|
8
|
+
* – block-library/src/babel-plugin.js
|
|
9
|
+
*
|
|
10
|
+
* @param {Object} metadata Parsed block.json metadata.
|
|
11
|
+
* @return {boolean} Is the block experimental?
|
|
12
|
+
*/
|
|
13
|
+
module.exports = function isBlockMetadataExperimental(metadata) {
|
|
14
|
+
return metadata && '__experimental' in metadata && metadata.__experimental !== false;
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=is-block-metadata-experimental.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/is-block-metadata-experimental.js"],"names":["module","exports","isBlockMetadataExperimental","metadata","__experimental"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACAA,MAAM,CAACC,OAAP,GAAiB,SAASC,2BAAT,CAAsCC,QAAtC,EAAiD;AACjE,SACCA,QAAQ,IACR,oBAAoBA,QADpB,IAEAA,QAAQ,CAACC,cAAT,KAA4B,KAH7B;AAKA,CAND","sourcesContent":["/**\n * Checks if the block is experimental based on the metadata loaded\n * from block.json.\n *\n * This function is in a separate file and uses the older JS syntax so\n * that it can be imported in both:\n * – block-library/src/index.js\n * – block-library/src/babel-plugin.js\n *\n * @param {Object} metadata Parsed block.json metadata.\n * @return {boolean} Is the block experimental?\n */\nmodule.exports = function isBlockMetadataExperimental( metadata ) {\n\treturn (\n\t\tmetadata &&\n\t\t'__experimental' in metadata &&\n\t\tmetadata.__experimental !== false\n\t);\n};\n"]}
|
|
@@ -33,7 +33,7 @@ export default function LatestComments(_ref) {
|
|
|
33
33
|
displayExcerpt
|
|
34
34
|
} = attributes;
|
|
35
35
|
return createElement("div", useBlockProps(), createElement(InspectorControls, null, createElement(PanelBody, {
|
|
36
|
-
title: __('
|
|
36
|
+
title: __('Settings')
|
|
37
37
|
}, createElement(ToggleControl, {
|
|
38
38
|
label: __('Display avatar'),
|
|
39
39
|
checked: displayAvatar,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/latest-comments/edit.js"],"names":["InspectorControls","useBlockProps","Disabled","PanelBody","RangeControl","ToggleControl","ServerSideRender","__","MIN_COMMENTS","MAX_COMMENTS","LatestComments","attributes","setAttributes","commentsToShow","displayAvatar","displayDate","displayExcerpt","value","_locale"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,iBAAT,EAA4BC,aAA5B,QAAiD,yBAAjD;AACA,SACCC,QADD,EAECC,SAFD,EAGCC,YAHD,EAICC,aAJD,QAKO,uBALP;AAMA,OAAOC,gBAAP,MAA6B,+BAA7B;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;AACA;AACA;;AACA,MAAMC,YAAY,GAAG,CAArB;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMC,YAAY,GAAG,GAArB;AAEA,eAAe,SAASC,cAAT,OAAyD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACvE,QAAM;AACLC,IAAAA,cADK;AAELC,IAAAA,aAFK;AAGLC,IAAAA,WAHK;AAILC,IAAAA;AAJK,MAKFL,UALJ;AAOA,SACC,qBAAUV,aAAa,EAAvB,EACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGM,EAAE,CAAE,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/latest-comments/edit.js"],"names":["InspectorControls","useBlockProps","Disabled","PanelBody","RangeControl","ToggleControl","ServerSideRender","__","MIN_COMMENTS","MAX_COMMENTS","LatestComments","attributes","setAttributes","commentsToShow","displayAvatar","displayDate","displayExcerpt","value","_locale"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,iBAAT,EAA4BC,aAA5B,QAAiD,yBAAjD;AACA,SACCC,QADD,EAECC,SAFD,EAGCC,YAHD,EAICC,aAJD,QAKO,uBALP;AAMA,OAAOC,gBAAP,MAA6B,+BAA7B;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;AACA;AACA;;AACA,MAAMC,YAAY,GAAG,CAArB;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMC,YAAY,GAAG,GAArB;AAEA,eAAe,SAASC,cAAT,OAAyD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACvE,QAAM;AACLC,IAAAA,cADK;AAELC,IAAAA,aAFK;AAGLC,IAAAA,WAHK;AAILC,IAAAA;AAJK,MAKFL,UALJ;AAOA,SACC,qBAAUV,aAAa,EAAvB,EACC,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGM,EAAE,CAAE,UAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,gBAAF,CADX;AAEC,IAAA,OAAO,EAAGO,aAFX;AAGC,IAAA,QAAQ,EAAG,MACVF,aAAa,CAAE;AAAEE,MAAAA,aAAa,EAAE,CAAEA;AAAnB,KAAF;AAJf,IADD,EAQC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGP,EAAE,CAAE,cAAF,CADX;AAEC,IAAA,OAAO,EAAGQ,WAFX;AAGC,IAAA,QAAQ,EAAG,MACVH,aAAa,CAAE;AAAEG,MAAAA,WAAW,EAAE,CAAEA;AAAjB,KAAF;AAJf,IARD,EAeC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGR,EAAE,CAAE,iBAAF,CADX;AAEC,IAAA,OAAO,EAAGS,cAFX;AAGC,IAAA,QAAQ,EAAG,MACVJ,aAAa,CAAE;AACdI,MAAAA,cAAc,EAAE,CAAEA;AADJ,KAAF;AAJf,IAfD,EAwBC,cAAC,YAAD;AACC,IAAA,KAAK,EAAGT,EAAE,CAAE,oBAAF,CADX;AAEC,IAAA,KAAK,EAAGM,cAFT;AAGC,IAAA,QAAQ,EAAKI,KAAF,IACVL,aAAa,CAAE;AAAEC,MAAAA,cAAc,EAAEI;AAAlB,KAAF,CAJf;AAMC,IAAA,GAAG,EAAGT,YANP;AAOC,IAAA,GAAG,EAAGC,YAPP;AAQC,IAAA,QAAQ;AART,IAxBD,CADD,CADD,EAsCC,cAAC,QAAD,QACC,cAAC,gBAAD;AACC,IAAA,KAAK,EAAC,sBADP;AAEC,IAAA,UAAU,EAAGE,UAFd,CAGC;AACA;AACA;AALD;AAMC,IAAA,YAAY,EAAG;AAAEO,MAAAA,OAAO,EAAE;AAAX;AANhB,IADD,CAtCD,CADD;AAmDA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { InspectorControls, useBlockProps } from '@wordpress/block-editor';\nimport {\n\tDisabled,\n\tPanelBody,\n\tRangeControl,\n\tToggleControl,\n} from '@wordpress/components';\nimport ServerSideRender from '@wordpress/server-side-render';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Minimum number of comments a user can show using this block.\n *\n * @type {number}\n */\nconst MIN_COMMENTS = 1;\n/**\n * Maximum number of comments a user can show using this block.\n *\n * @type {number}\n */\nconst MAX_COMMENTS = 100;\n\nexport default function LatestComments( { attributes, setAttributes } ) {\n\tconst {\n\t\tcommentsToShow,\n\t\tdisplayAvatar,\n\t\tdisplayDate,\n\t\tdisplayExcerpt,\n\t} = attributes;\n\n\treturn (\n\t\t<div { ...useBlockProps() }>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display avatar' ) }\n\t\t\t\t\t\tchecked={ displayAvatar }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( { displayAvatar: ! displayAvatar } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display date' ) }\n\t\t\t\t\t\tchecked={ displayDate }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( { displayDate: ! displayDate } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display excerpt' ) }\n\t\t\t\t\t\tchecked={ displayExcerpt }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayExcerpt: ! displayExcerpt,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Number of comments' ) }\n\t\t\t\t\t\tvalue={ commentsToShow }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { commentsToShow: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ MIN_COMMENTS }\n\t\t\t\t\t\tmax={ MAX_COMMENTS }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<Disabled>\n\t\t\t\t<ServerSideRender\n\t\t\t\t\tblock=\"core/latest-comments\"\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t// The preview uses the site's locale to make it more true to how\n\t\t\t\t\t// the block appears on the frontend. Setting the locale\n\t\t\t\t\t// explicitly prevents any middleware from setting it to 'user'.\n\t\t\t\t\turlQueryArgs={ { _locale: 'site' } }\n\t\t\t\t/>\n\t\t\t</Disabled>\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -13,9 +13,11 @@ import { BaseControl, PanelBody, Placeholder, QueryControls, RadioControl, Range
|
|
|
13
13
|
import { __, sprintf } from '@wordpress/i18n';
|
|
14
14
|
import { dateI18n, format, __experimentalGetSettings } from '@wordpress/date';
|
|
15
15
|
import { InspectorControls, BlockAlignmentToolbar, BlockControls, __experimentalImageSizeControl as ImageSizeControl, useBlockProps, store as blockEditorStore } from '@wordpress/block-editor';
|
|
16
|
-
import { useSelect } from '@wordpress/data';
|
|
16
|
+
import { useSelect, useDispatch } from '@wordpress/data';
|
|
17
17
|
import { pin, list, grid } from '@wordpress/icons';
|
|
18
18
|
import { store as coreStore } from '@wordpress/core-data';
|
|
19
|
+
import { store as noticeStore } from '@wordpress/notices';
|
|
20
|
+
import { useInstanceId } from '@wordpress/compose';
|
|
19
21
|
/**
|
|
20
22
|
* Internal dependencies
|
|
21
23
|
*/
|
|
@@ -52,6 +54,7 @@ export default function LatestPostsEdit(_ref) {
|
|
|
52
54
|
attributes,
|
|
53
55
|
setAttributes
|
|
54
56
|
} = _ref;
|
|
57
|
+
const instanceId = useInstanceId(LatestPostsEdit);
|
|
55
58
|
const {
|
|
56
59
|
postsToShow,
|
|
57
60
|
order,
|
|
@@ -102,7 +105,25 @@ export default function LatestPostsEdit(_ref) {
|
|
|
102
105
|
categoriesList: getEntityRecords('taxonomy', 'category', CATEGORIES_LIST_QUERY),
|
|
103
106
|
authorList: getUsers(USERS_LIST_QUERY)
|
|
104
107
|
};
|
|
105
|
-
}, [featuredImageSizeSlug, postsToShow, order, orderBy, categories, selectedAuthor]);
|
|
108
|
+
}, [featuredImageSizeSlug, postsToShow, order, orderBy, categories, selectedAuthor]); // If a user clicks to a link prevent redirection and show a warning.
|
|
109
|
+
|
|
110
|
+
const {
|
|
111
|
+
createWarningNotice,
|
|
112
|
+
removeNotice
|
|
113
|
+
} = useDispatch(noticeStore);
|
|
114
|
+
let noticeId;
|
|
115
|
+
|
|
116
|
+
const showRedirectionPreventedNotice = event => {
|
|
117
|
+
event.preventDefault(); // Remove previous warning if any, to show one at a time per block.
|
|
118
|
+
|
|
119
|
+
removeNotice(noticeId);
|
|
120
|
+
noticeId = `block-library/core/latest-posts/redirection-prevented/${instanceId}`;
|
|
121
|
+
createWarningNotice(__('Links are disabled in the editor.'), {
|
|
122
|
+
id: noticeId,
|
|
123
|
+
type: 'snackbar'
|
|
124
|
+
});
|
|
125
|
+
};
|
|
126
|
+
|
|
106
127
|
const imageSizeOptions = imageSizes.filter(_ref2 => {
|
|
107
128
|
let {
|
|
108
129
|
slug
|
|
@@ -336,7 +357,8 @@ export default function LatestPostsEdit(_ref) {
|
|
|
336
357
|
const needsReadMore = excerptLength < excerpt.trim().split(' ').length && post.excerpt.raw === '';
|
|
337
358
|
const postExcerpt = needsReadMore ? createElement(Fragment, null, excerpt.trim().split(' ', excerptLength).join(' '), __(' … '), createElement("a", {
|
|
338
359
|
href: post.link,
|
|
339
|
-
rel: "noopener noreferrer"
|
|
360
|
+
rel: "noopener noreferrer",
|
|
361
|
+
onClick: showRedirectionPreventedNotice
|
|
340
362
|
}, __('Read more'))) : excerpt;
|
|
341
363
|
return createElement("li", {
|
|
342
364
|
key: i
|
|
@@ -345,13 +367,15 @@ export default function LatestPostsEdit(_ref) {
|
|
|
345
367
|
}, addLinkToFeaturedImage ? createElement("a", {
|
|
346
368
|
className: "wp-block-latest-posts__post-title",
|
|
347
369
|
href: post.link,
|
|
348
|
-
rel: "noreferrer noopener"
|
|
370
|
+
rel: "noreferrer noopener",
|
|
371
|
+
onClick: showRedirectionPreventedNotice
|
|
349
372
|
}, featuredImage) : featuredImage), createElement("a", {
|
|
350
373
|
href: post.link,
|
|
351
374
|
rel: "noreferrer noopener",
|
|
352
375
|
dangerouslySetInnerHTML: !!titleTrimmed ? {
|
|
353
376
|
__html: titleTrimmed
|
|
354
|
-
} : undefined
|
|
377
|
+
} : undefined,
|
|
378
|
+
onClick: showRedirectionPreventedNotice
|
|
355
379
|
}, !titleTrimmed ? __('(no title)') : null), displayAuthor && currentAuthor && createElement("div", {
|
|
356
380
|
className: "wp-block-latest-posts__post-author"
|
|
357
381
|
}, sprintf(
|
|
@@ -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\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"]}
|
|
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","useDispatch","pin","list","grid","coreStore","noticeStore","useInstanceId","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","instanceId","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","createWarningNotice","removeNotice","noticeId","showRedirectionPreventedNotice","event","preventDefault","type","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,EAAoBC,WAApB,QAAuC,iBAAvC;AACA,SAASC,GAAT,EAAcC,IAAd,EAAoBC,IAApB,QAAgC,kBAAhC;AACA,SAASN,KAAK,IAAIO,SAAlB,QAAmC,sBAAnC;AACA,SAASP,KAAK,IAAIQ,WAAlB,QAAqC,oBAArC;AACA,SAASC,aAAT,QAA8B,oBAA9B;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,GAAG/C,GAAG,CAAE6C,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,QAAMC,UAAU,GAAGtB,aAAa,CAAEmB,eAAF,CAAhC;AACA,QAAM;AACLI,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,MAmBFpB,UAnBJ;AAoBA,QAAM;AACLqB,IAAAA,UADK;AAELC,IAAAA,WAFK;AAGLC,IAAAA,iBAHK;AAILC,IAAAA,kBAJK;AAKLC,IAAAA,cALK;AAMLC,IAAAA;AANK,MAOFrD,SAAS,CACVsD,MAAF,IAAc;AACb,UAAM;AAAEC,MAAAA,gBAAF;AAAoBC,MAAAA;AAApB,QAAiCF,MAAM,CAAEjD,SAAF,CAA7C;AACA,UAAMoD,QAAQ,GAAGH,MAAM,CAAEvD,gBAAF,CAAN,CAA2B2D,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,GAAGxF,MAAM,CAC9B;AACCyD,MAAAA,UAAU,EAAE0B,MADb;AAECM,MAAAA,MAAM,EAAE/B,cAFT;AAGCH,MAAAA,KAHD;AAICmC,MAAAA,OAAO,EAAElC,OAJV;AAKCpB,MAAAA,QAAQ,EAAEkB,WALX;AAMCqC,MAAAA,MAAM,EAAE;AANT,KAD8B,EAS5BC,KAAF,IAAa,CAAE7F,WAAW,CAAE6F,KAAF,CATI,CAA/B;AAYA,WAAO;AACNlB,MAAAA,iBAAiB,EAAE9E,GAAG,CACrBqF,QAAQ,CAACY,eADY,EAErB,CAAEzB,qBAAF,EAAyB,OAAzB,CAFqB,EAGrB,CAHqB,CADhB;AAMNO,MAAAA,kBAAkB,EAAE/E,GAAG,CACtBqF,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/B5C,qBAH+B,CAjB1B;AAsBN0C,MAAAA,UAAU,EAAEG,QAAQ,CAAE1C,gBAAF;AAtBd,KAAP;AAwBA,GA5CW,EA6CZ,CACC8B,qBADD,EAECd,WAFD,EAGCC,KAHD,EAICC,OAJD,EAKCC,UALD,EAMCC,cAND,CA7CY,CAPb,CAtBwE,CAoFxE;;AACA,QAAM;AAAEoC,IAAAA,mBAAF;AAAuBC,IAAAA;AAAvB,MAAwCtE,WAAW,CAAEK,WAAF,CAAzD;AACA,MAAIkE,QAAJ;;AACA,QAAMC,8BAA8B,GAAKC,KAAF,IAAa;AACnDA,IAAAA,KAAK,CAACC,cAAN,GADmD,CAEnD;;AACAJ,IAAAA,YAAY,CAAEC,QAAF,CAAZ;AACAA,IAAAA,QAAQ,GAAI,yDAAyD3C,UAAY,EAAjF;AACAyC,IAAAA,mBAAmB,CAAEnF,EAAE,CAAE,mCAAF,CAAJ,EAA6C;AAC/D4E,MAAAA,EAAE,EAAES,QAD2D;AAE/DI,MAAAA,IAAI,EAAE;AAFyD,KAA7C,CAAnB;AAIA,GATD;;AAWA,QAAMC,gBAAgB,GAAG7B,UAAU,CACjC8B,MADuB,CACf;AAAA,QAAE;AAAEC,MAAAA;AAAF,KAAF;AAAA,WAAgBA,IAAI,KAAK,MAAzB;AAAA,GADe,EAEvBlB,GAFuB,CAElB;AAAA,QAAE;AAAEmB,MAAAA,IAAF;AAAQD,MAAAA;AAAR,KAAF;AAAA,WAAwB;AAC7BX,MAAAA,KAAK,EAAEW,IADsB;AAE7BE,MAAAA,KAAK,EAAED;AAFsB,KAAxB;AAAA,GAFkB,CAAzB;AAMA,QAAME,mBAAmB,4BACxB9B,cADwB,aACxBA,cADwB,uBACxBA,cAAc,CAAE+B,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,CAAC1B,GAAP,CAAc6B,KAAF,IAAa;AAC9C,aAAO,OAAOA,KAAP,KAAiB,QAAjB,GACJR,mBAAmB,CAAEQ,KAAF,CADf,GAEJA,KAFH;AAGA,KAJqB,CAAtB,CAVsC,CAetC;AACA;;AACA,QAAKrH,QAAQ,CAAEsH,aAAF,EAAiB,IAAjB,CAAb,EAAuC;AACtC,aAAO,KAAP;AACA;;AACD/D,IAAAA,aAAa,CAAE;AAAEK,MAAAA,UAAU,EAAE0D;AAAd,KAAF,CAAb;AACA,GArBD;;AAuBA,QAAMC,QAAQ,GAAG,CAAC,EAAE3C,WAAF,aAAEA,WAAF,eAAEA,WAAW,CAAEW,MAAf,CAAlB;AACA,QAAMiC,iBAAiB,GACtB,cAAC,iBAAD,QACC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAG1G,EAAE,CAAE,uBAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,cAAF,CADX;AAEC,IAAA,OAAO,EAAGkD,kBAFX;AAGC,IAAA,QAAQ,EAAK+B,KAAF,IACVxC,aAAa,CAAE;AAAES,MAAAA,kBAAkB,EAAE+B;AAAtB,KAAF;AAJf,IADD,EAQG/B,kBAAkB,IACnB,cAAC,YAAD;AACC,IAAA,KAAK,EAAGlD,EAAE,CAAE,OAAF,CADX;AAEC,IAAA,QAAQ,EAAGiD,uBAFZ;AAGC,IAAA,OAAO,EAAG,CACT;AAAE6C,MAAAA,KAAK,EAAE9F,EAAE,CAAE,SAAF,CAAX;AAA0BiF,MAAAA,KAAK,EAAE;AAAjC,KADS,EAET;AACCa,MAAAA,KAAK,EAAE9F,EAAE,CAAE,WAAF,CADV;AAECiF,MAAAA,KAAK,EAAE;AAFR,KAFS,CAHX;AAUC,IAAA,QAAQ,EAAKA,KAAF,IACVxC,aAAa,CAAE;AACdQ,MAAAA,uBAAuB,EAAEgC;AADX,KAAF;AAXf,IATF,EA0BG/B,kBAAkB,IACnBD,uBAAuB,KAAK,SAD3B,IAEA,cAAC,YAAD;AACC,IAAA,KAAK,EAAGjD,EAAE,CAAE,gCAAF,CADX;AAEC,IAAA,KAAK,EAAGuD,aAFT;AAGC,IAAA,QAAQ,EAAK0B,KAAF,IACVxC,aAAa,CAAE;AAAEc,MAAAA,aAAa,EAAE0B;AAAjB,KAAF,CAJf;AAMC,IAAA,GAAG,EAAG5D,kBANP;AAOC,IAAA,GAAG,EAAGC;AAPP,IA5BH,CADD,EAyCC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGtB,EAAE,CAAE,oBAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,qBAAF,CADX;AAEC,IAAA,OAAO,EAAGoD,aAFX;AAGC,IAAA,QAAQ,EAAK6B,KAAF,IACVxC,aAAa,CAAE;AAAEW,MAAAA,aAAa,EAAE6B;AAAjB,KAAF;AAJf,IADD,EAQC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGjF,EAAE,CAAE,mBAAF,CADX;AAEC,IAAA,OAAO,EAAGmD,eAFX;AAGC,IAAA,QAAQ,EAAK8B,KAAF,IACVxC,aAAa,CAAE;AAAEU,MAAAA,eAAe,EAAE8B;AAAnB,KAAF;AAJf,IARD,CAzCD,EA0DC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGjF,EAAE,CAAE,yBAAF;AAArB,KACC,cAAC,aAAD;AACC,IAAA,KAAK,EAAGA,EAAE,CAAE,wBAAF,CADX;AAEC,IAAA,OAAO,EAAGgD,oBAFX;AAGC,IAAA,QAAQ,EAAKiC,KAAF,IACVxC,aAAa,CAAE;AAAEO,MAAAA,oBAAoB,EAAEiC;AAAxB,KAAF;AAJf,IADD,EAQGjC,oBAAoB,IACrB,8BACC,cAAC,gBAAD;AACC,IAAA,QAAQ,EAAKiC,KAAF,IAAa;AACvB,YAAM0B,QAAQ,GAAG,EAAjB;;AACA,UAAK1B,KAAK,CAAC2B,cAAN,CAAsB,OAAtB,CAAL,EAAuC;AACtCD,QAAAA,QAAQ,CAACjD,sBAAT,GACCuB,KAAK,CAAC4B,KADP;AAEA;;AACD,UAAK5B,KAAK,CAAC2B,cAAN,CAAsB,QAAtB,CAAL,EAAwC;AACvCD,QAAAA,QAAQ,CAAChD,uBAAT,GACCsB,KAAK,CAAC6B,MADP;AAEA;;AACDrE,MAAAA,aAAa,CAAEkE,QAAF,CAAb;AACA,KAZF;AAaC,IAAA,IAAI,EAAGlD,qBAbR;AAcC,IAAA,KAAK,EAAGC,sBAdT;AAeC,IAAA,MAAM,EAAGC,uBAfV;AAgBC,IAAA,UAAU,EAAGI,iBAhBd;AAiBC,IAAA,WAAW,EAAGC,kBAjBf;AAkBC,IAAA,gBAAgB,EAAG0B,gBAlBpB;AAmBC,IAAA,aAAa,EAAKT,KAAF,IACfxC,aAAa,CAAE;AACdgB,MAAAA,qBAAqB,EAAEwB,KADT;AAEdvB,MAAAA,sBAAsB,EAAEqD,SAFV;AAGdpD,MAAAA,uBAAuB,EAAEoD;AAHX,KAAF;AApBf,IADD,EA4BC,cAAC,WAAD;AAAa,IAAA,SAAS,EAAC;AAAvB,KACC,cAAC,WAAD,CAAa,WAAb,QACG/G,EAAE,CAAE,iBAAF,CADL,CADD,EAIC,cAAC,qBAAD;AACC,IAAA,KAAK,EAAGwD,kBADT;AAEC,IAAA,QAAQ,EAAKyB,KAAF,IACVxC,aAAa,CAAE;AACde,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,EAAGjF,EAAE,CAAE,4BAAF,CADX;AAEC,IAAA,OAAO,EAAG4D,sBAFX;AAGC,IAAA,QAAQ,EAAKqB,KAAF,IACVxC,aAAa,CAAE;AACdmB,MAAAA,sBAAsB,EAAEqB;AADV,KAAF;AAJf,IA3CD,CATF,CA1DD,EA2HC,cAAC,SAAD;AAAW,IAAA,KAAK,EAAGjF,EAAE,CAAE,uBAAF;AAArB,KACC,cAAC,aAAD;AACQ4C,IAAAA,KADR;AACeC,IAAAA,OADf;AAEC,IAAA,aAAa,EAAGF,WAFjB;AAGC,IAAA,aAAa,EAAKsC,KAAF,IACfxC,aAAa,CAAE;AAAEG,MAAAA,KAAK,EAAEqC;AAAT,KAAF,CAJf;AAMC,IAAA,eAAe,EAAKA,KAAF,IACjBxC,aAAa,CAAE;AAAEI,MAAAA,OAAO,EAAEoC;AAAX,KAAF,CAPf;AASC,IAAA,qBAAqB,EAAKA,KAAF,IACvBxC,aAAa,CAAE;AAAEE,MAAAA,WAAW,EAAEsC;AAAf,KAAF,CAVf;AAYC,IAAA,mBAAmB,EAAGc,mBAZvB;AAaC,IAAA,gBAAgB,EAAGI,gBAbpB;AAcC,IAAA,kBAAkB,EAAGrD,UAdtB;AAeC,IAAA,cAAc,EAAKmC,KAAF,IAChBxC,aAAa,CAAE;AACdM,MAAAA,cAAc,EACb,OAAOkC,KAAP,GAAe+B,MAAM,CAAE/B,KAAF,CAArB,GAAiC8B;AAFpB,KAAF,CAhBf;AAqBC,IAAA,UAAU,EAAG7C,UAAH,aAAGA,UAAH,cAAGA,UAAH,GAAiB,EArB5B;AAsBC,IAAA,gBAAgB,EAAGnB;AAtBpB,IADD,EA0BGM,UAAU,KAAK,MAAf,IACD,cAAC,YAAD;AACC,IAAA,KAAK,EAAGrD,EAAE,CAAE,SAAF,CADX;AAEC,IAAA,KAAK,EAAGsD,OAFT;AAGC,IAAA,QAAQ,EAAK2B,KAAF,IACVxC,aAAa,CAAE;AAAEa,MAAAA,OAAO,EAAE2B;AAAX,KAAF,CAJf;AAMC,IAAA,GAAG,EAAG,CANP;AAOC,IAAA,GAAG,EACF,CAAEwB,QAAF,GACGlF,iBADH,GAEG0F,IAAI,CAACC,GAAL,CACA3F,iBADA,EAEAuC,WAAW,CAACW,MAFZ,CAVL;AAeC,IAAA,QAAQ;AAfT,IA3BF,CA3HD,CADD;AA6KA,QAAM0C,UAAU,GAAGzG,aAAa,CAAE;AACjC0G,IAAAA,SAAS,EAAE9H,UAAU,CAAE;AACtB,qCAA+B,IADT;AAEtB,iBAAW+D,UAAU,KAAK,MAFJ;AAGtB,mBAAaF,eAHS;AAItB,oBAAcC,aAJQ;AAKtB,OAAG,WAAWE,OAAS,EAAvB,GAA4BD,UAAU,KAAK;AALrB,KAAF;AADY,GAAF,CAAhC;;AAUA,MAAK,CAAEoD,QAAP,EAAkB;AACjB,WACC,qBAAUU,UAAV,EACGT,iBADH,EAEC,cAAC,WAAD;AAAa,MAAA,IAAI,EAAG3F,GAApB;AAA0B,MAAA,KAAK,EAAGf,EAAE,CAAE,cAAF;AAApC,OACG,CAAEqH,KAAK,CAACC,OAAN,CAAexD,WAAf,CAAF,GACD,cAAC,OAAD,OADC,GAGD9D,EAAE,CAAE,iBAAF,CAJJ,CAFD,CADD;AAYA,GA5UuE,CA8UxE;;;AACA,QAAMuH,YAAY,GACjBzD,WAAW,CAACW,MAAZ,GAAqB9B,WAArB,GACGmB,WAAW,CAAC0D,KAAZ,CAAmB,CAAnB,EAAsB7E,WAAtB,CADH,GAEGmB,WAHJ;AAKA,QAAM2D,cAAc,GAAG,CACtB;AACCC,IAAAA,IAAI,EAAE1G,IADP;AAEC2G,IAAAA,KAAK,EAAE3H,EAAE,CAAE,WAAF,CAFV;AAGC4H,IAAAA,OAAO,EAAE,MAAMnF,aAAa,CAAE;AAAEY,MAAAA,UAAU,EAAE;AAAd,KAAF,CAH7B;AAICwE,IAAAA,QAAQ,EAAExE,UAAU,KAAK;AAJ1B,GADsB,EAOtB;AACCqE,IAAAA,IAAI,EAAEzG,IADP;AAEC0G,IAAAA,KAAK,EAAE3H,EAAE,CAAE,WAAF,CAFV;AAGC4H,IAAAA,OAAO,EAAE,MAAMnF,aAAa,CAAE;AAAEY,MAAAA,UAAU,EAAE;AAAd,KAAF,CAH7B;AAICwE,IAAAA,QAAQ,EAAExE,UAAU,KAAK;AAJ1B,GAPsB,CAAvB;;AAeA,QAAMyE,UAAU,GAAG1H,yBAAyB,GAAG2H,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,CAAC7C,GAAb,CAAkB,CAAE5C,IAAF,EAAQmG,CAAR,KAAe;AAClC,UAAMC,YAAY,GAAG/I,MAAM,CAAE2C,IAAF,EAAQ,CAClC,OADkC,EAElC,UAFkC,EAGlC,MAHkC,CAAR,CAA3B;AAKA,QAAIqG,OAAO,GAAGrG,IAAI,CAACqG,OAAL,CAAaC,QAA3B;AACA,UAAMC,aAAa,GAAGnE,UAAH,aAAGA,UAAH,uBAAGA,UAAU,CAAEoE,IAAZ,CACnBxD,MAAF,IAAcA,MAAM,CAACF,EAAP,KAAc9C,IAAI,CAACgD,MADZ,CAAtB;AAIA,UAAMyD,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;AACL3G,MAAAA,GAAG,EAAE4G,cADA;AAELxG,MAAAA,GAAG,EAAEyG;AAFA,QAGFjH,uBAAuB,CAAEC,IAAF,EAAQ2B,qBAAR,CAH3B;AAIA,UAAMsF,YAAY,GAAGzJ,UAAU,CAAE;AAChC,+CAAyC,IADT;AAEhC,OAAG,QAAQkE,kBAAoB,EAA/B,GAAoC,CAAC,CAAEA;AAFP,KAAF,CAA/B;AAIA,UAAMwF,mBAAmB,GACxBhG,oBAAoB,IAAI6F,cADzB;AAEA,UAAMI,aAAa,GAAGD,mBAAmB,IACxC;AACC,MAAA,GAAG,EAAGH,cADP;AAEC,MAAA,GAAG,EAAGC,gBAFP;AAGC,MAAA,KAAK,EAAG;AACPI,QAAAA,QAAQ,EAAExF,sBADH;AAEPyF,QAAAA,SAAS,EAAExF;AAFJ;AAHT,MADD;AAWA,UAAMyF,aAAa,GAClB7F,aAAa,GAAG4E,OAAO,CAACkB,IAAR,GAAeC,KAAf,CAAsB,GAAtB,EAA4B7E,MAA5C,IACA3C,IAAI,CAACqG,OAAL,CAAaoB,GAAb,KAAqB,EAFtB;AAIA,UAAMC,WAAW,GAAGJ,aAAa,GAChC,8BACGjB,OAAO,CACPkB,IADA,GAEAC,KAFA,CAEO,GAFP,EAEY/F,aAFZ,EAGAkG,IAHA,CAGM,GAHN,CADH,EAMGzJ,EAAE,CAAE,KAAF,CANL,EAOC;AACC,MAAA,IAAI,EAAG8B,IAAI,CAAC4H,IADb;AAEC,MAAA,GAAG,EAAC,qBAFL;AAGC,MAAA,OAAO,EAAGpE;AAHX,OAKGtF,EAAE,CAAE,WAAF,CALL,CAPD,CADgC,GAiBhCmI,OAjBD;AAoBA,WACC;AAAI,MAAA,GAAG,EAAGF;AAAV,OACGe,mBAAmB,IACpB;AAAK,MAAA,SAAS,EAAGD;AAAjB,OACGnF,sBAAsB,GACvB;AACC,MAAA,SAAS,EAAC,mCADX;AAEC,MAAA,IAAI,EAAG9B,IAAI,CAAC4H,IAFb;AAGC,MAAA,GAAG,EAAC,qBAHL;AAIC,MAAA,OAAO,EACNpE;AALF,OAQG2D,aARH,CADuB,GAYvBA,aAbF,CAFF,EAmBC;AACC,MAAA,IAAI,EAAGnH,IAAI,CAAC4H,IADb;AAEC,MAAA,GAAG,EAAC,qBAFL;AAGC,MAAA,uBAAuB,EACtB,CAAC,CAAExB,YAAH,GACG;AACAyB,QAAAA,MAAM,EAAEzB;AADR,OADH,GAIGnB,SARL;AAUC,MAAA,OAAO,EAAGzB;AAVX,OAYG,CAAE4C,YAAF,GAAiBlI,EAAE,CAAE,YAAF,CAAnB,GAAsC,IAZzC,CAnBD,EAiCGoD,aAAa,IAAIiF,aAAjB,IACD;AAAK,MAAA,SAAS,EAAC;AAAf,OACGpI,OAAO;AACR;AACAD,IAAAA,EAAE,CAAE,OAAF,CAFM,EAGRqI,aAAa,CAACxC,IAHN,CADV,CAlCF,EA0CG1C,eAAe,IAAIrB,IAAI,CAAC8H,QAAxB,IACD;AACC,MAAA,QAAQ,EAAGzJ,MAAM,CAAE,GAAF,EAAO2B,IAAI,CAAC8H,QAAZ,CADlB;AAEC,MAAA,SAAS,EAAC;AAFX,OAIG1J,QAAQ,CAAE4H,UAAF,EAAchG,IAAI,CAAC8H,QAAnB,CAJX,CA3CF,EAkDG1G,kBAAkB,IACnBD,uBAAuB,KAAK,SAD3B,IAEA;AAAK,MAAA,SAAS,EAAC;AAAf,OACGuG,WADH,CApDH,EAwDGtG,kBAAkB,IACnBD,uBAAuB,KAAK,WAD3B,IAEA;AACC,MAAA,SAAS,EAAC,0CADX;AAEC,MAAA,uBAAuB,EAAG;AACzB0G,QAAAA,MAAM,EAAE7H,IAAI,CAAC+H,OAAL,CAAaN,GAAb,CAAiBF,IAAjB;AADiB;AAF3B,MA1DH,CADD;AAoEA,GApIC,CADH,CALD,CADD;AA+IA","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, useDispatch } from '@wordpress/data';\nimport { pin, list, grid } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticeStore } from '@wordpress/notices';\nimport { useInstanceId } from '@wordpress/compose';\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 instanceId = useInstanceId( LatestPostsEdit );\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\t// If a user clicks to a link prevent redirection and show a warning.\n\tconst { createWarningNotice, removeNotice } = useDispatch( noticeStore );\n\tlet noticeId;\n\tconst showRedirectionPreventedNotice = ( event ) => {\n\t\tevent.preventDefault();\n\t\t// Remove previous warning if any, to show one at a time per block.\n\t\tremoveNotice( noticeId );\n\t\tnoticeId = `block-library/core/latest-posts/redirection-prevented/${ instanceId }`;\n\t\tcreateWarningNotice( __( 'Links are disabled in the editor.' ), {\n\t\t\tid: noticeId,\n\t\t\ttype: 'snackbar',\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\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t\tonClick={ showRedirectionPreventedNotice }\n\t\t\t\t\t\t\t>\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\tonClick={\n\t\t\t\t\t\t\t\t\t\t\t\tshowRedirectionPreventedNotice\n\t\t\t\t\t\t\t\t\t\t\t}\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\tonClick={ showRedirectionPreventedNotice }\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"]}
|