@wordpress/block-library 8.3.6 → 8.5.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 +4 -0
- package/build/archives/edit.js +3 -0
- package/build/archives/edit.js.map +1 -1
- package/build/archives/index.js +1 -0
- package/build/archives/index.js.map +1 -1
- package/build/audio/edit.js +2 -0
- package/build/audio/edit.js.map +1 -1
- package/build/avatar/edit.js +5 -9
- package/build/avatar/edit.js.map +1 -1
- package/build/avatar/index.js +1 -0
- package/build/avatar/index.js.map +1 -1
- package/build/button/edit.js +3 -1
- package/build/button/edit.js.map +1 -1
- package/build/button/index.js +17 -6
- package/build/button/index.js.map +1 -1
- package/build/calendar/index.js +1 -0
- package/build/calendar/index.js.map +1 -1
- package/build/categories/edit.js +5 -0
- package/build/categories/edit.js.map +1 -1
- package/build/categories/index.js +1 -0
- package/build/categories/index.js.map +1 -1
- package/build/columns/edit.js +1 -0
- package/build/columns/edit.js.map +1 -1
- package/build/columns/utils.js +2 -2
- package/build/columns/utils.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-author-name/edit.js +2 -0
- package/build/comment-author-name/edit.js.map +1 -1
- package/build/comment-author-name/index.js +1 -0
- package/build/comment-author-name/index.js.map +1 -1
- package/build/comment-content/index.js +1 -0
- package/build/comment-content/index.js.map +1 -1
- package/build/comment-date/edit.js +1 -0
- package/build/comment-date/edit.js.map +1 -1
- package/build/comment-date/index.js +1 -0
- package/build/comment-date/index.js.map +1 -1
- package/build/comment-edit-link/edit.js +1 -0
- package/build/comment-edit-link/edit.js.map +1 -1
- package/build/comment-edit-link/index.js +1 -0
- package/build/comment-edit-link/index.js.map +1 -1
- package/build/comment-reply-link/index.js +1 -0
- package/build/comment-reply-link/index.js.map +1 -1
- package/build/comment-template/index.js +1 -0
- package/build/comment-template/index.js.map +1 -1
- package/build/comments/index.js +2 -1
- package/build/comments/index.js.map +1 -1
- package/build/comments-pagination/index.js +1 -0
- package/build/comments-pagination/index.js.map +1 -1
- package/build/comments-pagination-next/index.js +1 -0
- package/build/comments-pagination-next/index.js.map +1 -1
- package/build/comments-pagination-numbers/index.js +1 -0
- package/build/comments-pagination-numbers/index.js.map +1 -1
- package/build/comments-pagination-previous/index.js +1 -0
- package/build/comments-pagination-previous/index.js.map +1 -1
- package/build/comments-title/edit.js +2 -0
- package/build/comments-title/edit.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +2 -0
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/embed/embed-controls.js +1 -0
- package/build/embed/embed-controls.js.map +1 -1
- package/build/file/index.js +10 -1
- package/build/file/index.js.map +1 -1
- package/build/file/inspector.js +3 -0
- package/build/file/inspector.js.map +1 -1
- package/build/freeform/modal.js +1 -1
- package/build/freeform/modal.js.map +1 -1
- package/build/gallery/edit.js +2 -0
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/shared.js +4 -8
- package/build/gallery/shared.js.map +1 -1
- package/build/gallery/use-image-sizes.js +4 -8
- package/build/gallery/use-image-sizes.js.map +1 -1
- package/build/gallery/v1/edit.js +8 -3
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/gallery/v1/gallery-image.js +1 -3
- package/build/gallery/v1/gallery-image.js.map +1 -1
- package/build/gallery/v1/shared.js +4 -7
- package/build/gallery/v1/shared.js.map +1 -1
- package/build/home-link/index.js +1 -0
- package/build/home-link/index.js.map +1 -1
- package/build/image/edit.js +6 -4
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +18 -13
- package/build/image/image.js.map +1 -1
- package/build/image/utils.js +3 -1
- package/build/image/utils.js.map +1 -1
- package/build/index.js +3 -1
- package/build/index.js.map +1 -1
- package/build/latest-comments/edit.js +9 -2
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-comments/index.js +14 -0
- package/build/latest-comments/index.js.map +1 -1
- package/build/latest-posts/deprecated.js +1 -0
- package/build/latest-posts/deprecated.js.map +1 -1
- package/build/latest-posts/edit.js +4 -0
- package/build/latest-posts/edit.js.map +1 -1
- package/build/latest-posts/index.js +1 -0
- package/build/latest-posts/index.js.map +1 -1
- package/build/list/ordered-list-settings.js +1 -0
- package/build/list/ordered-list-settings.js.map +1 -1
- package/build/list-item/edit.js +2 -2
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/hooks/use-outdent-list-item.js +2 -1
- package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build/loginout/edit.js +2 -0
- package/build/loginout/edit.js.map +1 -1
- package/build/loginout/index.js +1 -0
- package/build/loginout/index.js.map +1 -1
- package/build/media-text/edit.js +2 -0
- package/build/media-text/edit.js.map +1 -1
- package/build/more/edit.js +1 -0
- package/build/more/edit.js.map +1 -1
- package/build/navigation/edit/index.js +80 -54
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +14 -11
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/overlay-menu-preview.js +1 -0
- package/build/navigation/edit/overlay-menu-preview.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +1 -1
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build/navigation/edit/use-create-navigation-menu.js +1 -1
- package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js +1 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build/navigation/edit/use-navigation-notice.js +4 -7
- package/build/navigation/edit/use-navigation-notice.js.map +1 -1
- package/build/navigation/index.js +1 -0
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/use-navigation-menu.js +1 -1
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/navigation-link/edit.js +10 -5
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/link-ui.js +2 -0
- package/build/navigation-link/link-ui.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +47 -0
- package/build/page-list/convert-to-links-modal.js.map +1 -0
- package/build/page-list/edit.js +15 -28
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/index.js +1 -0
- package/build/page-list/index.js.map +1 -1
- package/build/page-list/use-convert-to-navigation-links.js +61 -5
- package/build/page-list/use-convert-to-navigation-links.js.map +1 -1
- package/build/paragraph/edit.js +1 -0
- package/build/paragraph/edit.js.map +1 -1
- package/build/post-author/edit.js +4 -0
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author/index.js +1 -0
- package/build/post-author/index.js.map +1 -1
- package/build/post-author-biography/index.js +1 -0
- package/build/post-author-biography/index.js.map +1 -1
- package/build/post-author-name/edit.js +2 -0
- package/build/post-author-name/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-comments-count/index.js +1 -0
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-comments-form/index.js +1 -0
- package/build/post-comments-form/index.js.map +1 -1
- package/build/post-comments-link/index.js +1 -0
- package/build/post-comments-link/index.js.map +1 -1
- package/build/post-content/index.js +1 -0
- package/build/post-content/index.js.map +1 -1
- package/build/post-date/edit.js +2 -0
- package/build/post-date/edit.js.map +1 -1
- package/build/post-date/index.js +1 -0
- package/build/post-date/index.js.map +1 -1
- package/build/post-excerpt/edit.js +50 -3
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-excerpt/index.js +5 -0
- package/build/post-excerpt/index.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +52 -1
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +11 -4
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/index.js +4 -0
- package/build/post-featured-image/index.js.map +1 -1
- package/build/post-navigation-link/edit.js +2 -0
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-navigation-link/index.js +1 -0
- package/build/post-navigation-link/index.js.map +1 -1
- package/build/post-template/index.js +1 -0
- package/build/post-template/index.js.map +1 -1
- package/build/post-terms/index.js +1 -0
- package/build/post-terms/index.js.map +1 -1
- package/build/post-terms/use-post-terms.js +1 -1
- package/build/post-terms/use-post-terms.js.map +1 -1
- package/build/post-time-to-read/edit.js +104 -0
- package/build/post-time-to-read/edit.js.map +1 -0
- package/build/post-time-to-read/icon.js +25 -0
- package/build/post-time-to-read/icon.js.map +1 -0
- package/build/post-time-to-read/index.js +57 -0
- package/build/post-time-to-read/index.js.map +1 -0
- package/build/post-title/edit.js +2 -0
- package/build/post-title/edit.js.map +1 -1
- package/build/post-title/index.js +1 -0
- package/build/post-title/index.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +1 -0
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/index.js +1 -0
- package/build/query/index.js.map +1 -1
- package/build/query/utils.js +1 -0
- package/build/query/utils.js.map +1 -1
- package/build/query-no-results/index.js +1 -0
- package/build/query-no-results/index.js.map +1 -1
- package/build/query-pagination/index.js +1 -0
- package/build/query-pagination/index.js.map +1 -1
- package/build/query-pagination-next/index.js +1 -0
- package/build/query-pagination-next/index.js.map +1 -1
- package/build/query-pagination-numbers/index.js +1 -0
- package/build/query-pagination-numbers/index.js.map +1 -1
- package/build/query-pagination-previous/index.js +1 -0
- package/build/query-pagination-previous/index.js.map +1 -1
- package/build/query-title/edit.js +2 -0
- package/build/query-title/edit.js.map +1 -1
- package/build/query-title/index.js +1 -0
- package/build/query-title/index.js.map +1 -1
- package/build/read-more/edit.js +1 -0
- package/build/read-more/edit.js.map +1 -1
- package/build/read-more/index.js +1 -0
- package/build/read-more/index.js.map +1 -1
- package/build/rss/edit.js +3 -0
- package/build/rss/edit.js.map +1 -1
- package/build/rss/index.js +1 -0
- package/build/rss/index.js.map +1 -1
- package/build/search/index.js +1 -0
- package/build/search/index.js.map +1 -1
- package/build/site-logo/edit.js +10 -11
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-logo/index.js +1 -0
- package/build/site-logo/index.js.map +1 -1
- package/build/site-tagline/index.js +1 -0
- package/build/site-tagline/index.js.map +1 -1
- package/build/site-title/edit/index.js +2 -0
- package/build/site-title/edit/index.js.map +1 -1
- package/build/site-title/index.js +1 -0
- package/build/site-title/index.js.map +1 -1
- package/build/social-link/index.js +1 -0
- package/build/social-link/index.js.map +1 -1
- package/build/social-links/edit.js +2 -0
- package/build/social-links/edit.js.map +1 -1
- package/build/spacer/controls.native.js +10 -8
- package/build/spacer/controls.native.js.map +1 -1
- package/build/spacer/edit.native.js +43 -5
- package/build/spacer/edit.native.js.map +1 -1
- package/build/spacer/save.native.js +30 -0
- package/build/spacer/save.native.js.map +1 -0
- package/build/table/edit.js +6 -3
- package/build/table/edit.js.map +1 -1
- package/build/table-of-contents/edit.js +1 -0
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/table-of-contents/utils.js +1 -1
- package/build/table-of-contents/utils.js.map +1 -1
- package/build/tag-cloud/edit.js +1 -0
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/tag-cloud/index.js +1 -0
- package/build/tag-cloud/index.js.map +1 -1
- package/build/template-part/index.js +1 -0
- package/build/template-part/index.js.map +1 -1
- package/build/term-description/index.js +1 -0
- package/build/term-description/index.js.map +1 -1
- package/build/verse/index.js +6 -0
- package/build/verse/index.js.map +1 -1
- package/build/video/edit-common-settings.js +5 -0
- package/build/video/edit-common-settings.js.map +1 -1
- package/build-module/archives/edit.js +3 -0
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/archives/index.js +1 -0
- package/build-module/archives/index.js.map +1 -1
- package/build-module/audio/edit.js +2 -0
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/avatar/edit.js +5 -8
- package/build-module/avatar/edit.js.map +1 -1
- package/build-module/avatar/index.js +1 -0
- package/build-module/avatar/index.js.map +1 -1
- package/build-module/button/edit.js +2 -1
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/index.js +17 -6
- package/build-module/button/index.js.map +1 -1
- package/build-module/calendar/index.js +1 -0
- package/build-module/calendar/index.js.map +1 -1
- package/build-module/categories/edit.js +5 -0
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/categories/index.js +1 -0
- package/build-module/categories/index.js.map +1 -1
- package/build-module/columns/edit.js +1 -0
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/utils.js +3 -3
- package/build-module/columns/utils.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-author-name/edit.js +2 -0
- package/build-module/comment-author-name/edit.js.map +1 -1
- package/build-module/comment-author-name/index.js +1 -0
- package/build-module/comment-author-name/index.js.map +1 -1
- package/build-module/comment-content/index.js +1 -0
- package/build-module/comment-content/index.js.map +1 -1
- package/build-module/comment-date/edit.js +1 -0
- package/build-module/comment-date/edit.js.map +1 -1
- package/build-module/comment-date/index.js +1 -0
- package/build-module/comment-date/index.js.map +1 -1
- package/build-module/comment-edit-link/edit.js +1 -0
- package/build-module/comment-edit-link/edit.js.map +1 -1
- package/build-module/comment-edit-link/index.js +1 -0
- package/build-module/comment-edit-link/index.js.map +1 -1
- package/build-module/comment-reply-link/index.js +1 -0
- package/build-module/comment-reply-link/index.js.map +1 -1
- package/build-module/comment-template/index.js +1 -0
- package/build-module/comment-template/index.js.map +1 -1
- package/build-module/comments/index.js +2 -1
- package/build-module/comments/index.js.map +1 -1
- package/build-module/comments-pagination/index.js +1 -0
- package/build-module/comments-pagination/index.js.map +1 -1
- package/build-module/comments-pagination-next/index.js +1 -0
- package/build-module/comments-pagination-next/index.js.map +1 -1
- package/build-module/comments-pagination-numbers/index.js +1 -0
- package/build-module/comments-pagination-numbers/index.js.map +1 -1
- package/build-module/comments-pagination-previous/index.js +1 -0
- package/build-module/comments-pagination-previous/index.js.map +1 -1
- package/build-module/comments-title/edit.js +2 -0
- package/build-module/comments-title/edit.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +2 -0
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/embed/embed-controls.js +1 -0
- package/build-module/embed/embed-controls.js.map +1 -1
- package/build-module/file/index.js +10 -1
- package/build-module/file/index.js.map +1 -1
- package/build-module/file/inspector.js +3 -0
- package/build-module/file/inspector.js.map +1 -1
- package/build-module/freeform/modal.js +1 -1
- package/build-module/freeform/modal.js.map +1 -1
- package/build-module/gallery/edit.js +2 -0
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/shared.js +4 -7
- package/build-module/gallery/shared.js.map +1 -1
- package/build-module/gallery/use-image-sizes.js +4 -7
- package/build-module/gallery/use-image-sizes.js.map +1 -1
- package/build-module/gallery/v1/edit.js +9 -4
- package/build-module/gallery/v1/edit.js.map +1 -1
- package/build-module/gallery/v1/gallery-image.js +1 -2
- package/build-module/gallery/v1/gallery-image.js.map +1 -1
- package/build-module/gallery/v1/shared.js +4 -6
- package/build-module/gallery/v1/shared.js.map +1 -1
- package/build-module/home-link/index.js +1 -0
- package/build-module/home-link/index.js.map +1 -1
- package/build-module/image/edit.js +7 -5
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/image.js +19 -14
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/utils.js +4 -2
- package/build-module/image/utils.js.map +1 -1
- package/build-module/index.js +2 -1
- package/build-module/index.js.map +1 -1
- package/build-module/latest-comments/edit.js +9 -2
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-comments/index.js +14 -0
- package/build-module/latest-comments/index.js.map +1 -1
- package/build-module/latest-posts/deprecated.js +1 -0
- package/build-module/latest-posts/deprecated.js.map +1 -1
- package/build-module/latest-posts/edit.js +4 -0
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/latest-posts/index.js +1 -0
- package/build-module/latest-posts/index.js.map +1 -1
- package/build-module/list/ordered-list-settings.js +1 -0
- package/build-module/list/ordered-list-settings.js.map +1 -1
- package/build-module/list-item/edit.js +2 -2
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/hooks/use-outdent-list-item.js +2 -1
- package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build-module/loginout/edit.js +2 -0
- package/build-module/loginout/edit.js.map +1 -1
- package/build-module/loginout/index.js +1 -0
- package/build-module/loginout/index.js.map +1 -1
- package/build-module/media-text/edit.js +2 -0
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/more/edit.js +1 -0
- package/build-module/more/edit.js.map +1 -1
- package/build-module/navigation/edit/index.js +82 -56
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +14 -10
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/overlay-menu-preview.js +1 -0
- package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +1 -1
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +1 -1
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build-module/navigation/edit/use-create-navigation-menu.js +1 -1
- package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js +1 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build-module/navigation/edit/use-navigation-notice.js +5 -8
- package/build-module/navigation/edit/use-navigation-notice.js.map +1 -1
- package/build-module/navigation/index.js +1 -0
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation/use-navigation-menu.js +1 -1
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/navigation-link/edit.js +10 -5
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/link-ui.js +2 -0
- package/build-module/navigation-link/link-ui.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +35 -0
- package/build-module/page-list/convert-to-links-modal.js.map +1 -0
- package/build-module/page-list/edit.js +15 -29
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/index.js +1 -0
- package/build-module/page-list/index.js.map +1 -1
- package/build-module/page-list/use-convert-to-navigation-links.js +61 -5
- package/build-module/page-list/use-convert-to-navigation-links.js.map +1 -1
- package/build-module/paragraph/edit.js +1 -0
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/post-author/edit.js +4 -0
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author/index.js +1 -0
- package/build-module/post-author/index.js.map +1 -1
- package/build-module/post-author-biography/index.js +1 -0
- package/build-module/post-author-biography/index.js.map +1 -1
- package/build-module/post-author-name/edit.js +2 -0
- package/build-module/post-author-name/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-comments-count/index.js +1 -0
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-comments-form/index.js +1 -0
- package/build-module/post-comments-form/index.js.map +1 -1
- 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-content/index.js +1 -0
- package/build-module/post-content/index.js.map +1 -1
- package/build-module/post-date/edit.js +2 -0
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-date/index.js +1 -0
- package/build-module/post-date/index.js.map +1 -1
- package/build-module/post-excerpt/edit.js +53 -5
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-excerpt/index.js +5 -0
- package/build-module/post-excerpt/index.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +52 -1
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +11 -4
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/index.js +4 -0
- package/build-module/post-featured-image/index.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +2 -0
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-navigation-link/index.js +1 -0
- package/build-module/post-navigation-link/index.js.map +1 -1
- package/build-module/post-template/index.js +1 -0
- package/build-module/post-template/index.js.map +1 -1
- package/build-module/post-terms/index.js +1 -0
- package/build-module/post-terms/index.js.map +1 -1
- package/build-module/post-terms/use-post-terms.js +1 -1
- package/build-module/post-terms/use-post-terms.js.map +1 -1
- package/build-module/post-time-to-read/edit.js +90 -0
- package/build-module/post-time-to-read/edit.js.map +1 -0
- package/build-module/post-time-to-read/icon.js +15 -0
- package/build-module/post-time-to-read/icon.js.map +1 -0
- package/build-module/post-time-to-read/index.js +40 -0
- package/build-module/post-time-to-read/index.js.map +1 -0
- package/build-module/post-title/edit.js +2 -0
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/post-title/index.js +1 -0
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +1 -0
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/index.js +1 -0
- package/build-module/query/index.js.map +1 -1
- package/build-module/query/utils.js +1 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query-no-results/index.js +1 -0
- package/build-module/query-no-results/index.js.map +1 -1
- package/build-module/query-pagination/index.js +1 -0
- package/build-module/query-pagination/index.js.map +1 -1
- package/build-module/query-pagination-next/index.js +1 -0
- package/build-module/query-pagination-next/index.js.map +1 -1
- package/build-module/query-pagination-numbers/index.js +1 -0
- package/build-module/query-pagination-numbers/index.js.map +1 -1
- package/build-module/query-pagination-previous/index.js +1 -0
- package/build-module/query-pagination-previous/index.js.map +1 -1
- package/build-module/query-title/edit.js +2 -0
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/query-title/index.js +1 -0
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/read-more/edit.js +1 -0
- package/build-module/read-more/edit.js.map +1 -1
- package/build-module/read-more/index.js +1 -0
- package/build-module/read-more/index.js.map +1 -1
- package/build-module/rss/edit.js +3 -0
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/rss/index.js +1 -0
- package/build-module/rss/index.js.map +1 -1
- package/build-module/search/index.js +1 -0
- package/build-module/search/index.js.map +1 -1
- package/build-module/site-logo/edit.js +10 -11
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-logo/index.js +1 -0
- package/build-module/site-logo/index.js.map +1 -1
- package/build-module/site-tagline/index.js +1 -0
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/site-title/edit/index.js +2 -0
- package/build-module/site-title/edit/index.js.map +1 -1
- package/build-module/site-title/index.js +1 -0
- package/build-module/site-title/index.js.map +1 -1
- package/build-module/social-link/index.js +1 -0
- package/build-module/social-link/index.js.map +1 -1
- package/build-module/social-links/edit.js +2 -0
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/spacer/controls.native.js +9 -8
- package/build-module/spacer/controls.native.js.map +1 -1
- package/build-module/spacer/edit.native.js +39 -7
- package/build-module/spacer/edit.native.js.map +1 -1
- package/build-module/spacer/save.native.js +22 -0
- package/build-module/spacer/save.native.js.map +1 -0
- package/build-module/table/edit.js +6 -3
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table-of-contents/edit.js +1 -0
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/table-of-contents/utils.js +1 -1
- package/build-module/table-of-contents/utils.js.map +1 -1
- package/build-module/tag-cloud/edit.js +1 -0
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/tag-cloud/index.js +1 -0
- package/build-module/tag-cloud/index.js.map +1 -1
- package/build-module/template-part/index.js +1 -0
- package/build-module/template-part/index.js.map +1 -1
- package/build-module/term-description/index.js +1 -0
- package/build-module/term-description/index.js.map +1 -1
- package/build-module/verse/index.js +6 -0
- package/build-module/verse/index.js.map +1 -1
- package/build-module/video/edit-common-settings.js +5 -0
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-style/avatar/style-rtl.css +3 -0
- package/build-style/avatar/style.css +3 -0
- package/build-style/button/editor-rtl.css +31 -0
- package/build-style/button/editor.css +31 -0
- package/build-style/button/style-rtl.css +31 -0
- package/build-style/button/style.css +31 -0
- package/build-style/editor-rtl.css +33 -1
- package/build-style/editor.css +33 -1
- package/build-style/file/style-rtl.css +1 -0
- package/build-style/file/style.css +1 -0
- package/build-style/image/editor-rtl.css +1 -0
- package/build-style/image/editor.css +1 -0
- package/build-style/image/style-rtl.css +6 -2
- package/build-style/image/style.css +6 -0
- package/build-style/latest-comments/style-rtl.css +18 -5
- package/build-style/latest-comments/style.css +18 -5
- package/build-style/post-excerpt/editor-rtl.css +1 -1
- package/build-style/post-excerpt/editor.css +1 -1
- package/build-style/style-rtl.css +59 -7
- package/build-style/style.css +59 -5
- package/build-types/table-of-contents/utils.d.ts +1 -1
- package/package.json +31 -30
- package/src/archives/block.json +1 -0
- package/src/archives/edit.js +3 -0
- package/src/audio/edit.js +2 -0
- package/src/audio/test/__snapshots__/edit.native.js.snap +38 -38
- package/src/avatar/block.json +1 -0
- package/src/avatar/edit.js +2 -4
- package/src/avatar/index.php +67 -63
- package/src/avatar/style.scss +3 -0
- package/src/button/block.json +17 -6
- package/src/button/edit.js +2 -1
- package/src/button/editor.scss +36 -0
- package/src/button/style.scss +37 -1
- package/src/buttons/test/__snapshots__/edit.native.js.snap +11 -11
- package/src/calendar/block.json +1 -0
- package/src/categories/block.json +1 -0
- package/src/categories/edit.js +5 -0
- package/src/code/test/__snapshots__/edit.native.js.snap +2 -2
- package/src/columns/edit.js +1 -0
- package/src/columns/test/__snapshots__/edit.native.js.snap +66 -66
- package/src/columns/test/utils.js +54 -0
- package/src/columns/utils.js +8 -8
- package/src/comment-author-avatar/block.json +1 -0
- package/src/comment-author-name/block.json +1 -0
- package/src/comment-author-name/edit.js +2 -0
- package/src/comment-content/block.json +1 -0
- package/src/comment-date/block.json +1 -0
- package/src/comment-date/edit.js +1 -0
- package/src/comment-edit-link/block.json +1 -0
- package/src/comment-edit-link/edit.js +1 -0
- package/src/comment-reply-link/block.json +1 -0
- package/src/comment-template/block.json +1 -0
- package/src/comments/block.json +2 -1
- package/src/comments-pagination/block.json +1 -0
- package/src/comments-pagination-next/block.json +1 -0
- package/src/comments-pagination-numbers/block.json +1 -0
- package/src/comments-pagination-previous/block.json +1 -0
- package/src/comments-title/edit.js +2 -0
- package/src/cover/edit/inspector-controls.js +2 -0
- package/src/cover/index.php +4 -6
- package/src/cover/test/__snapshots__/edit.native.js.snap +36 -36
- package/src/embed/embed-controls.js +1 -0
- package/src/embed/test/__snapshots__/index.native.js.snap +52 -52
- package/src/file/block.json +10 -1
- package/src/file/inspector.js +3 -0
- package/src/file/style.scss +1 -0
- package/src/file/test/__snapshots__/edit.native.js.snap +49 -49
- package/src/freeform/modal.js +1 -1
- package/src/gallery/edit.js +2 -0
- package/src/gallery/shared.js +6 -11
- package/src/gallery/test/__snapshots__/index.native.js.snap +71 -71
- package/src/gallery/use-image-sizes.js +3 -16
- package/src/gallery/v1/edit.js +8 -16
- package/src/gallery/v1/gallery-image.js +1 -2
- package/src/gallery/v1/shared.js +5 -10
- package/src/group/test/__snapshots__/edit.native.js.snap +5 -5
- package/src/heading/test/__snapshots__/index.native.js.snap +1 -1
- package/src/home-link/block.json +1 -0
- package/src/image/edit.js +4 -4
- package/src/image/editor.scss +1 -0
- package/src/image/image.js +9 -20
- package/src/image/index.php +4 -4
- package/src/image/style.scss +13 -0
- package/src/image/utils.js +2 -2
- package/src/index.js +2 -0
- package/src/latest-comments/block.json +14 -0
- package/src/latest-comments/edit.js +12 -2
- package/src/latest-comments/style.scss +25 -7
- package/src/latest-posts/block.json +1 -0
- package/src/latest-posts/edit.js +4 -0
- package/src/list/ordered-list-settings.js +1 -0
- package/src/list/test/__snapshots__/edit.native.js.snap +4 -4
- package/src/list-item/edit.js +10 -3
- package/src/list-item/hooks/use-outdent-list-item.js +2 -1
- package/src/loginout/block.json +1 -0
- package/src/loginout/edit.js +2 -0
- package/src/media-text/edit.js +2 -0
- package/src/missing/test/__snapshots__/edit.native.js.snap +1 -1
- package/src/more/edit.js +1 -0
- package/src/navigation/block.json +1 -0
- package/src/navigation/edit/index.js +130 -82
- package/src/navigation/edit/navigation-menu-selector.js +12 -26
- package/src/navigation/edit/overlay-menu-preview.js +1 -0
- package/src/navigation/edit/placeholder/index.js +1 -1
- package/src/navigation/edit/test/navigation-menu-selector.js +638 -0
- package/src/navigation/edit/unsaved-inner-blocks.js +1 -0
- package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +51 -48
- package/src/navigation/edit/use-create-navigation-menu.js +1 -1
- package/src/navigation/edit/use-generate-default-navigation-title.js +1 -1
- package/src/navigation/edit/use-navigation-notice.js +16 -13
- package/src/navigation/index.php +50 -25
- package/src/navigation/use-navigation-menu.js +1 -1
- package/src/navigation-link/edit.js +10 -5
- package/src/navigation-link/link-ui.js +2 -0
- package/src/navigation-link/test/__snapshots__/hooks.js.snap +12 -12
- package/src/page-list/block.json +1 -0
- package/src/page-list/convert-to-links-modal.js +38 -0
- package/src/page-list/edit.js +17 -37
- package/src/page-list/index.php +4 -4
- package/src/page-list/test/convert-to-links-modal.js +134 -0
- package/src/page-list/use-convert-to-navigation-links.js +64 -4
- package/src/paragraph/edit.js +1 -0
- package/src/post-author/block.json +1 -0
- package/src/post-author/edit.js +4 -0
- package/src/post-author-biography/block.json +1 -0
- package/src/post-author-name/block.json +1 -0
- package/src/post-author-name/edit.js +2 -0
- package/src/post-comments-count/block.json +1 -0
- package/src/post-comments-form/block.json +1 -0
- package/src/post-comments-link/block.json +1 -0
- package/src/post-content/block.json +1 -0
- package/src/post-date/block.json +1 -0
- package/src/post-date/edit.js +2 -0
- package/src/post-excerpt/block.json +5 -0
- package/src/post-excerpt/edit.js +73 -7
- package/src/post-excerpt/editor.scss +1 -1
- package/src/post-excerpt/index.php +29 -5
- package/src/post-featured-image/block.json +4 -0
- package/src/post-featured-image/dimension-controls.js +64 -2
- package/src/post-featured-image/edit.js +20 -6
- package/src/post-featured-image/index.php +25 -9
- package/src/post-navigation-link/block.json +1 -0
- package/src/post-navigation-link/edit.js +2 -0
- package/src/post-template/block.json +1 -0
- package/src/post-terms/block.json +1 -0
- package/src/post-terms/index.php +1 -0
- package/src/post-terms/use-post-terms.js +1 -1
- package/src/post-time-to-read/block.json +20 -0
- package/src/post-time-to-read/edit.js +101 -0
- package/src/post-time-to-read/icon.js +15 -0
- package/src/post-time-to-read/index.js +17 -0
- package/src/post-time-to-read/index.php +62 -0
- package/src/post-title/block.json +1 -0
- package/src/post-title/edit.js +2 -0
- package/src/post-title/index.php +3 -3
- package/src/preformatted/test/__snapshots__/edit.native.js.snap +10 -10
- package/src/query/block.json +1 -0
- package/src/query/edit/inspector-controls/index.js +1 -0
- package/src/query-no-results/block.json +1 -0
- package/src/query-pagination/block.json +1 -0
- package/src/query-pagination-next/block.json +1 -0
- package/src/query-pagination-numbers/block.json +1 -0
- package/src/query-pagination-previous/block.json +1 -0
- package/src/query-title/block.json +1 -0
- package/src/query-title/edit.js +2 -0
- package/src/read-more/block.json +1 -0
- package/src/read-more/edit.js +1 -0
- package/src/rss/block.json +1 -0
- package/src/rss/edit.js +3 -0
- package/src/search/block.json +1 -0
- package/src/search/test/__snapshots__/edit.native.js.snap +60 -60
- package/src/separator/test/__snapshots__/edit.native.js.snap +1 -1
- package/src/site-logo/block.json +1 -0
- package/src/site-logo/edit.js +6 -6
- package/src/site-logo/index.php +7 -2
- package/src/site-tagline/block.json +1 -0
- package/src/site-title/block.json +1 -0
- package/src/site-title/edit/index.js +2 -0
- package/src/social-link/block.json +1 -0
- package/src/social-link/index.php +6 -6
- package/src/social-links/edit.js +2 -0
- package/src/social-links/test/__snapshots__/edit.native.js.snap +16 -16
- package/src/spacer/controls.native.js +13 -5
- package/src/spacer/edit.native.js +45 -6
- package/src/spacer/save.native.js +18 -0
- package/src/spacer/test/__snapshots__/index.native.js.snap +21 -9
- package/src/spacer/test/index.native.js +81 -0
- package/src/table/edit.js +6 -3
- package/src/table-of-contents/edit.js +1 -0
- package/src/table-of-contents/utils.ts +1 -1
- package/src/tag-cloud/block.json +1 -0
- package/src/tag-cloud/edit.js +1 -0
- package/src/template-part/block.json +1 -0
- package/src/template-part/index.php +7 -6
- package/src/term-description/block.json +1 -0
- package/src/verse/block.json +6 -0
- package/src/verse/test/__snapshots__/edit.native.js.snap +2 -2
- package/src/video/edit-common-settings.js +5 -0
- package/tsconfig.json +2 -1
- package/tsconfig.tsbuildinfo +1 -1
package/build/image/image.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/image/image.js"],"names":["Image","temporaryURL","attributes","setAttributes","isSelected","insertBlocksAfter","onReplace","onSelectImage","onSelectURL","onUploadError","containerRef","context","clientId","isContentLocked","url","alt","caption","align","id","href","rel","linkClass","linkDestination","title","width","height","linkTarget","sizeSlug","imageRef","prevCaption","showCaption","setShowCaption","allowResize","getBlock","blockEditorStore","image","multiImageSelection","select","getMedia","coreStore","getMultiSelectedBlockClientIds","getBlockName","multiSelectedClientIds","length","every","_clientId","canInsertCover","imageEditing","imageSizes","maxWidth","mediaUpload","getBlockRootClientId","getSettings","canInsertBlockType","rootClientId","settings","Object","fromEntries","entries","filter","key","includes","replaceBlocks","toggleSelection","createErrorNotice","createSuccessNotice","noticesStore","isLargeViewport","isWideAligned","loadedNaturalWidth","loadedNaturalHeight","setLoadedNaturalSize","isEditingImage","setIsEditingImage","externalBlob","setExternalBlob","clientWidth","isResizable","imageSizeOptions","slug","map","name","value","label","window","fetch","then","response","blob","catch","captionRef","node","focus","naturalWidth","naturalHeight","current","undefined","complete","onResizeStart","onResizeStop","onImageError","embedBlock","onSetHref","props","onSetTitle","updateAlt","newAlt","updateImage","newSizeSlug","newUrl","uploadExternal","filesList","onFileChange","img","type","allowedTypes","ALLOWED_MEDIA_TYPES","onError","message","updateAlignment","nextAlign","extraUpdatedAttributes","canEditImage","allowCrop","switchToCover","controls","captionIcon","source_url","link","crop","upload","overlayText","filename","defaultedAlt","borderProps","isRounded","className","hasCustomBorder","style","event","target","imageWidthWithinContainer","imageHeightWithinContainer","exceedMaxWidth","ratio","imageAttributes","currentWidth","currentHeight","minWidth","MIN_SIZE","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","top","right","bottom","left","direction","elt","delta","parseInt","RichText","isEmpty"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tExternalLink,\n\tPanelBody,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tTextControl,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { useViewportMatch, usePrevious } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\t__experimentalImageURLInputUI as ImageURLInputUI,\n\tMediaReplaceFlow,\n\tstore as blockEditorStore,\n\tBlockAlignmentControl,\n\t__experimentalImageEditor as ImageEditor,\n\t__experimentalGetElementClassName,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport {\n\tuseEffect,\n\tuseMemo,\n\tuseState,\n\tuseRef,\n\tuseCallback,\n} from '@wordpress/element';\nimport { __, sprintf, isRTL } from '@wordpress/i18n';\nimport { getFilename } from '@wordpress/url';\nimport {\n\tcreateBlock,\n\tgetDefaultBlockName,\n\tswitchToBlockType,\n} from '@wordpress/blocks';\nimport {\n\tcrop,\n\toverlayText,\n\tupload,\n\tcaption as captionIcon,\n} from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport useClientWidth from './use-client-width';\nimport { isExternalImage } from './edit';\n\n/**\n * Module constants\n */\nimport { MIN_SIZE, ALLOWED_MEDIA_TYPES } from './constants';\n\nexport default function Image( {\n\ttemporaryURL,\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tinsertBlocksAfter,\n\tonReplace,\n\tonSelectImage,\n\tonSelectURL,\n\tonUploadError,\n\tcontainerRef,\n\tcontext,\n\tclientId,\n\tisContentLocked,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\talign,\n\t\tid,\n\t\thref,\n\t\trel,\n\t\tlinkClass,\n\t\tlinkDestination,\n\t\ttitle,\n\t\twidth,\n\t\theight,\n\t\tlinkTarget,\n\t\tsizeSlug,\n\t} = attributes;\n\tconst imageRef = useRef();\n\tconst prevCaption = usePrevious( caption );\n\tconst [ showCaption, setShowCaption ] = useState( !! caption );\n\tconst { allowResize = true } = context;\n\tconst { getBlock } = useSelect( blockEditorStore );\n\n\tconst { image, multiImageSelection } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia } = select( coreStore );\n\t\t\tconst { getMultiSelectedBlockClientIds, getBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst multiSelectedClientIds = getMultiSelectedBlockClientIds();\n\t\t\treturn {\n\t\t\t\timage:\n\t\t\t\t\tid && isSelected\n\t\t\t\t\t\t? getMedia( id, { context: 'view' } )\n\t\t\t\t\t\t: null,\n\t\t\t\tmultiImageSelection:\n\t\t\t\t\tmultiSelectedClientIds.length &&\n\t\t\t\t\tmultiSelectedClientIds.every(\n\t\t\t\t\t\t( _clientId ) =>\n\t\t\t\t\t\t\tgetBlockName( _clientId ) === 'core/image'\n\t\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ id, isSelected, clientId ]\n\t);\n\tconst { canInsertCover, imageEditing, imageSizes, maxWidth, mediaUpload } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst {\n\t\t\t\t\tgetBlockRootClientId,\n\t\t\t\t\tgetSettings,\n\t\t\t\t\tcanInsertBlockType,\n\t\t\t\t} = select( blockEditorStore );\n\n\t\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\t\tconst settings = Object.fromEntries(\n\t\t\t\t\tObject.entries( getSettings() ).filter( ( [ key ] ) =>\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t'imageEditing',\n\t\t\t\t\t\t\t'imageSizes',\n\t\t\t\t\t\t\t'maxWidth',\n\t\t\t\t\t\t\t'mediaUpload',\n\t\t\t\t\t\t].includes( key )\n\t\t\t\t\t)\n\t\t\t\t);\n\n\t\t\t\treturn {\n\t\t\t\t\t...settings,\n\t\t\t\t\tcanInsertCover: canInsertBlockType(\n\t\t\t\t\t\t'core/cover',\n\t\t\t\t\t\trootClientId\n\t\t\t\t\t),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ clientId ]\n\t\t);\n\tconst { replaceBlocks, toggleSelection } = useDispatch( blockEditorStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst [\n\t\t{ loadedNaturalWidth, loadedNaturalHeight },\n\t\tsetLoadedNaturalSize,\n\t] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst [ externalBlob, setExternalBlob ] = useState();\n\tconst clientWidth = useClientWidth( containerRef, [ align ] );\n\tconst isResizable =\n\t\tallowResize &&\n\t\t! isContentLocked &&\n\t\t! ( isWideAligned && isLargeViewport );\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) =>\n\t\t\tget( image, [ 'media_details', 'sizes', slug, 'source_url' ] )\n\t\t)\n\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\t// If an image is externally hosted, try to fetch the image data. This may\n\t// fail if the image host doesn't allow CORS with the domain. If it works,\n\t// we can enable a button in the toolbar to upload the image.\n\tuseEffect( () => {\n\t\tif ( ! isExternalImage( id, url ) || ! isSelected || externalBlob ) {\n\t\t\treturn;\n\t\t}\n\n\t\twindow\n\t\t\t.fetch( url )\n\t\t\t.then( ( response ) => response.blob() )\n\t\t\t.then( ( blob ) => setExternalBlob( blob ) )\n\t\t\t// Do nothing, cannot upload.\n\t\t\t.catch( () => {} );\n\t}, [ id, url, isSelected, externalBlob ] );\n\n\t// We need to show the caption when changes come from\n\t// history navigation(undo/redo).\n\tuseEffect( () => {\n\t\tif ( caption && ! prevCaption ) {\n\t\t\tsetShowCaption( true );\n\t\t}\n\t}, [ caption, prevCaption ] );\n\n\t// Focus the caption when we click to add one.\n\tconst captionRef = useCallback(\n\t\t( node ) => {\n\t\t\tif ( node && ! caption ) {\n\t\t\t\tnode.focus();\n\t\t\t}\n\t\t},\n\t\t[ caption ]\n\t);\n\n\t// Get naturalWidth and naturalHeight from image ref, and fall back to loaded natural\n\t// width and height. This resolves an issue in Safari where the loaded natural\n\t// width and height is otherwise lost when switching between alignments.\n\t// See: https://github.com/WordPress/gutenberg/pull/37210.\n\tconst { naturalWidth, naturalHeight } = useMemo( () => {\n\t\treturn {\n\t\t\tnaturalWidth:\n\t\t\t\timageRef.current?.naturalWidth ||\n\t\t\t\tloadedNaturalWidth ||\n\t\t\t\tundefined,\n\t\t\tnaturalHeight:\n\t\t\t\timageRef.current?.naturalHeight ||\n\t\t\t\tloadedNaturalHeight ||\n\t\t\t\tundefined,\n\t\t};\n\t}, [\n\t\tloadedNaturalWidth,\n\t\tloadedNaturalHeight,\n\t\timageRef.current?.complete,\n\t] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tfunction onImageError() {\n\t\t// Check if there's an embed block that handles this URL, e.g., instagram URL.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/11472\n\t\tconst embedBlock = createUpgradedEmbedBlock( { attributes: { url } } );\n\n\t\tif ( undefined !== embedBlock ) {\n\t\t\tonReplace( embedBlock );\n\t\t}\n\t}\n\n\tfunction onSetHref( props ) {\n\t\tsetAttributes( props );\n\t}\n\n\tfunction onSetTitle( value ) {\n\t\t// This is the HTML title attribute, separate from the media object\n\t\t// title.\n\t\tsetAttributes( { title: value } );\n\t}\n\n\tfunction updateAlt( newAlt ) {\n\t\tsetAttributes( { alt: newAlt } );\n\t}\n\n\tfunction updateImage( newSizeSlug ) {\n\t\tconst newUrl = get( image, [\n\t\t\t'media_details',\n\t\t\t'sizes',\n\t\t\tnewSizeSlug,\n\t\t\t'source_url',\n\t\t] );\n\t\tif ( ! newUrl ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\turl: newUrl,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tfunction uploadExternal() {\n\t\tmediaUpload( {\n\t\t\tfilesList: [ externalBlob ],\n\t\t\tonFileChange( [ img ] ) {\n\t\t\t\tonSelectImage( img );\n\n\t\t\t\tif ( isBlobURL( img.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tsetExternalBlob();\n\t\t\t\tcreateSuccessNotice( __( 'Image uploaded.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t},\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tonError( message ) {\n\t\t\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\t\t},\n\t\t} );\n\t}\n\n\tfunction updateAlignment( nextAlign ) {\n\t\tconst extraUpdatedAttributes = [ 'wide', 'full' ].includes( nextAlign )\n\t\t\t? { width: undefined, height: undefined }\n\t\t\t: {};\n\t\tsetAttributes( {\n\t\t\t...extraUpdatedAttributes,\n\t\t\talign: nextAlign,\n\t\t} );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t\tif ( ! caption ) {\n\t\t\t\tsetShowCaption( false );\n\t\t\t}\n\t\t}\n\t}, [ isSelected, caption ] );\n\n\tconst canEditImage = id && naturalWidth && naturalHeight && imageEditing;\n\tconst allowCrop = ! multiImageSelection && canEditImage && ! isEditingImage;\n\n\tfunction switchToCover() {\n\t\treplaceBlocks(\n\t\t\tclientId,\n\t\t\tswitchToBlockType( getBlock( clientId ), 'core/cover' )\n\t\t);\n\t}\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ ! isContentLocked && (\n\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\tvalue={ align }\n\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! isContentLocked && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetShowCaption( ! showCaption );\n\t\t\t\t\t\t\tif ( showCaption && caption ) {\n\t\t\t\t\t\t\t\tsetAttributes( { caption: undefined } );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ticon={ captionIcon }\n\t\t\t\t\t\tisPressed={ showCaption }\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tshowCaption\n\t\t\t\t\t\t\t\t? __( 'Remove caption' )\n\t\t\t\t\t\t\t\t: __( 'Add caption' )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! multiImageSelection && ! isEditingImage && (\n\t\t\t\t\t<ImageURLInputUI\n\t\t\t\t\t\turl={ href || '' }\n\t\t\t\t\t\tonChangeUrl={ onSetHref }\n\t\t\t\t\t\tlinkDestination={ linkDestination }\n\t\t\t\t\t\tmediaUrl={ ( image && image.source_url ) || url }\n\t\t\t\t\t\tmediaLink={ image && image.link }\n\t\t\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\t\t\tlinkClass={ linkClass }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ allowCrop && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ externalBlob && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ uploadExternal }\n\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\tlabel={ __( 'Upload external image' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! multiImageSelection && canInsertCover && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ticon={ overlayText }\n\t\t\t\t\t\tlabel={ __( 'Add text over image' ) }\n\t\t\t\t\t\tonClick={ switchToCover }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ ! multiImageSelection && ! isEditingImage && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t{ ! multiImageSelection && (\n\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Alt text (alternative text)' ) }\n\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'Leave empty if the image is purely decorative.'\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}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\tonChangeImage={ updateImage }\n\t\t\t\t\t\tonChange={ ( value ) => setAttributes( value ) }\n\t\t\t\t\t\tslug={ sizeSlug }\n\t\t\t\t\t\twidth={ width }\n\t\t\t\t\t\theight={ height }\n\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\tisResizable={ isResizable }\n\t\t\t\t\t\timageWidth={ naturalWidth }\n\t\t\t\t\t\timageHeight={ naturalHeight }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\thelp={\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t</>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst filename = getFilename( url );\n\tlet defaultedAlt;\n\n\tif ( alt ) {\n\t\tdefaultedAlt = alt;\n\t} else if ( filename ) {\n\t\tdefaultedAlt = sprintf(\n\t\t\t/* translators: %s: file name */\n\t\t\t__( 'This image has an empty alt attribute; its file name is %s' ),\n\t\t\tfilename\n\t\t);\n\t} else {\n\t\tdefaultedAlt = __( 'This image has an empty alt attribute' );\n\t}\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst isRounded = attributes.className?.includes( 'is-style-rounded' );\n\tconst hasCustomBorder =\n\t\t!! borderProps.className || ! isEmpty( borderProps.style );\n\n\tlet img = (\n\t\t// Disable reason: Image itself is not meant to be interactive, but\n\t\t// should direct focus to block.\n\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t<>\n\t\t\t<img\n\t\t\t\tsrc={ temporaryURL || url }\n\t\t\t\talt={ defaultedAlt }\n\t\t\t\tonError={ () => onImageError() }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetLoadedNaturalSize( {\n\t\t\t\t\t\tloadedNaturalWidth: event.target?.naturalWidth,\n\t\t\t\t\t\tloadedNaturalHeight: event.target?.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tref={ imageRef }\n\t\t\t\tclassName={ borderProps.className }\n\t\t\t\tstyle={ borderProps.style }\n\t\t\t/>\n\t\t\t{ temporaryURL && <Spinner /> }\n\t\t</>\n\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t);\n\n\tlet imageWidthWithinContainer;\n\tlet imageHeightWithinContainer;\n\n\tif ( clientWidth && naturalWidth && naturalHeight ) {\n\t\tconst exceedMaxWidth = naturalWidth > clientWidth;\n\t\tconst ratio = naturalHeight / naturalWidth;\n\t\timageWidthWithinContainer = exceedMaxWidth ? clientWidth : naturalWidth;\n\t\timageHeightWithinContainer = exceedMaxWidth\n\t\t\t? clientWidth * ratio\n\t\t\t: naturalHeight;\n\t}\n\n\tif ( canEditImage && isEditingImage ) {\n\t\timg = (\n\t\t\t<ImageEditor\n\t\t\t\tid={ id }\n\t\t\t\turl={ url }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\tclientWidth={ clientWidth }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) =>\n\t\t\t\t\tsetAttributes( imageAttributes )\n\t\t\t\t}\n\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t} }\n\t\t\t\tborderProps={ isRounded ? undefined : borderProps }\n\t\t\t/>\n\t\t);\n\t} else if ( ! isResizable || ! imageWidthWithinContainer ) {\n\t\timg = <div style={ { width, height } }>{ img }</div>;\n\t} else {\n\t\tconst currentWidth = width || imageWidthWithinContainer;\n\t\tconst currentHeight = height || imageHeightWithinContainer;\n\n\t\tconst ratio = naturalWidth / naturalHeight;\n\t\tconst minWidth =\n\t\t\tnaturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;\n\t\tconst minHeight =\n\t\t\tnaturalHeight < naturalWidth ? MIN_SIZE : MIN_SIZE / ratio;\n\n\t\t// With the current implementation of ResizableBox, an image needs an\n\t\t// explicit pixel value for the max-width. In absence of being able to\n\t\t// set the content-width, this max-width is currently dictated by the\n\t\t// vanilla editor style. The following variable adds a buffer to this\n\t\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t\t// in most cases, allow you to scale the image beyond the width of the\n\t\t// main column, though not infinitely.\n\t\t// @todo It would be good to revisit this once a content-width variable\n\t\t// becomes available.\n\t\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\t\tlet showRightHandle = false;\n\t\tlet showLeftHandle = false;\n\n\t\t/* eslint-disable no-lonely-if */\n\t\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\t\tif ( align === 'center' ) {\n\t\t\t// When the image is centered, show both handles.\n\t\t\tshowRightHandle = true;\n\t\t\tshowLeftHandle = true;\n\t\t} else if ( isRTL() ) {\n\t\t\t// In RTL mode the image is on the right by default.\n\t\t\t// Show the right handle and hide the left handle only when it is\n\t\t\t// aligned left. Otherwise always show the left handle.\n\t\t\tif ( align === 'left' ) {\n\t\t\t\tshowRightHandle = true;\n\t\t\t} else {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t}\n\t\t} else {\n\t\t\t// Show the left handle and hide the right handle only when the\n\t\t\t// image is aligned right. Otherwise always show the right handle.\n\t\t\tif ( align === 'right' ) {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t} else {\n\t\t\t\tshowRightHandle = true;\n\t\t\t}\n\t\t}\n\t\t/* eslint-enable no-lonely-if */\n\n\t\timg = (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: width ?? 'auto',\n\t\t\t\t\theight: height && ! hasCustomBorder ? height : 'auto',\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tresizeRatio={ align === 'center' ? 2 : 1 }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</ResizableBox>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ /* Hide controls during upload to avoid component remount,\n\t\t\t\twhich causes duplicated image upload. */ }\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ img }\n\t\t\t{ showCaption &&\n\t\t\t\t( ! RichText.isEmpty( caption ) || isSelected ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"caption\"\n\t\t\t\t\t\tclassName={ __experimentalGetElementClassName(\n\t\t\t\t\t\t\t'caption'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tref={ captionRef }\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\taria-label={ __( 'Image caption text' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Add caption' ) }\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { caption: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tinlineToolbar\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\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</>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/image/image.js"],"names":["Image","temporaryURL","attributes","setAttributes","isSelected","insertBlocksAfter","onReplace","onSelectImage","onSelectURL","onUploadError","containerRef","context","clientId","isContentLocked","url","alt","caption","align","id","href","rel","linkClass","linkDestination","title","width","height","linkTarget","sizeSlug","imageRef","prevCaption","showCaption","setShowCaption","allowResize","getBlock","blockEditorStore","image","multiImageSelection","select","getMedia","coreStore","getMultiSelectedBlockClientIds","getBlockName","multiSelectedClientIds","length","every","_clientId","canInsertCover","imageEditing","imageSizes","maxWidth","mediaUpload","getBlockRootClientId","getSettings","canInsertBlockType","rootClientId","settings","replaceBlocks","toggleSelection","createErrorNotice","createSuccessNotice","noticesStore","isLargeViewport","isWideAligned","includes","loadedNaturalWidth","loadedNaturalHeight","setLoadedNaturalSize","isEditingImage","setIsEditingImage","externalBlob","setExternalBlob","clientWidth","isResizable","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","value","label","window","fetch","then","response","blob","catch","captionRef","node","focus","naturalWidth","naturalHeight","current","undefined","complete","onResizeStart","onResizeStop","onImageError","embedBlock","onSetHref","props","onSetTitle","updateAlt","newAlt","updateImage","newSizeSlug","newUrl","uploadExternal","filesList","onFileChange","img","type","allowedTypes","ALLOWED_MEDIA_TYPES","onError","message","updateAlignment","nextAlign","extraUpdatedAttributes","canEditImage","allowCrop","switchToCover","controls","captionIcon","link","crop","upload","overlayText","filename","defaultedAlt","borderProps","isRounded","className","hasCustomBorder","style","event","target","imageWidthWithinContainer","imageHeightWithinContainer","exceedMaxWidth","ratio","imageAttributes","currentWidth","currentHeight","minWidth","MIN_SIZE","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","top","right","bottom","left","direction","elt","delta","parseInt","RichText","isEmpty"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tExternalLink,\n\tPanelBody,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tTextControl,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { useViewportMatch, usePrevious } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\t__experimentalImageURLInputUI as ImageURLInputUI,\n\tMediaReplaceFlow,\n\tstore as blockEditorStore,\n\tBlockAlignmentControl,\n\t__experimentalImageEditor as ImageEditor,\n\t__experimentalGetElementClassName,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport {\n\tuseEffect,\n\tuseMemo,\n\tuseState,\n\tuseRef,\n\tuseCallback,\n} from '@wordpress/element';\nimport { __, sprintf, isRTL } from '@wordpress/i18n';\nimport { getFilename } from '@wordpress/url';\nimport {\n\tcreateBlock,\n\tgetDefaultBlockName,\n\tswitchToBlockType,\n} from '@wordpress/blocks';\nimport {\n\tcrop,\n\toverlayText,\n\tupload,\n\tcaption as captionIcon,\n} from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport useClientWidth from './use-client-width';\nimport { isExternalImage } from './edit';\n\n/**\n * Module constants\n */\nimport { MIN_SIZE, ALLOWED_MEDIA_TYPES } from './constants';\n\nexport default function Image( {\n\ttemporaryURL,\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tinsertBlocksAfter,\n\tonReplace,\n\tonSelectImage,\n\tonSelectURL,\n\tonUploadError,\n\tcontainerRef,\n\tcontext,\n\tclientId,\n\tisContentLocked,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\talign,\n\t\tid,\n\t\thref,\n\t\trel,\n\t\tlinkClass,\n\t\tlinkDestination,\n\t\ttitle,\n\t\twidth,\n\t\theight,\n\t\tlinkTarget,\n\t\tsizeSlug,\n\t} = attributes;\n\tconst imageRef = useRef();\n\tconst prevCaption = usePrevious( caption );\n\tconst [ showCaption, setShowCaption ] = useState( !! caption );\n\tconst { allowResize = true } = context;\n\tconst { getBlock } = useSelect( blockEditorStore );\n\n\tconst { image, multiImageSelection } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia } = select( coreStore );\n\t\t\tconst { getMultiSelectedBlockClientIds, getBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst multiSelectedClientIds = getMultiSelectedBlockClientIds();\n\t\t\treturn {\n\t\t\t\timage:\n\t\t\t\t\tid && isSelected\n\t\t\t\t\t\t? getMedia( id, { context: 'view' } )\n\t\t\t\t\t\t: null,\n\t\t\t\tmultiImageSelection:\n\t\t\t\t\tmultiSelectedClientIds.length &&\n\t\t\t\t\tmultiSelectedClientIds.every(\n\t\t\t\t\t\t( _clientId ) =>\n\t\t\t\t\t\t\tgetBlockName( _clientId ) === 'core/image'\n\t\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ id, isSelected, clientId ]\n\t);\n\tconst { canInsertCover, imageEditing, imageSizes, maxWidth, mediaUpload } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst {\n\t\t\t\t\tgetBlockRootClientId,\n\t\t\t\t\tgetSettings,\n\t\t\t\t\tcanInsertBlockType,\n\t\t\t\t} = select( blockEditorStore );\n\n\t\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\t\tconst settings = getSettings();\n\n\t\t\t\treturn {\n\t\t\t\t\timageEditing: settings.imageEditing,\n\t\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\t\tmaxWidth: settings.maxWidth,\n\t\t\t\t\tmediaUpload: settings.mediaUpload,\n\t\t\t\t\tcanInsertCover: canInsertBlockType(\n\t\t\t\t\t\t'core/cover',\n\t\t\t\t\t\trootClientId\n\t\t\t\t\t),\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ clientId ]\n\t\t);\n\tconst { replaceBlocks, toggleSelection } = useDispatch( blockEditorStore );\n\tconst { createErrorNotice, createSuccessNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst [\n\t\t{ loadedNaturalWidth, loadedNaturalHeight },\n\t\tsetLoadedNaturalSize,\n\t] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst [ externalBlob, setExternalBlob ] = useState();\n\tconst clientWidth = useClientWidth( containerRef, [ align ] );\n\tconst isResizable =\n\t\tallowResize &&\n\t\t! isContentLocked &&\n\t\t! ( isWideAligned && isLargeViewport );\n\tconst imageSizeOptions = imageSizes\n\t\t.filter(\n\t\t\t( { slug } ) => image?.media_details?.sizes?.[ slug ]?.source_url\n\t\t)\n\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\t// If an image is externally hosted, try to fetch the image data. This may\n\t// fail if the image host doesn't allow CORS with the domain. If it works,\n\t// we can enable a button in the toolbar to upload the image.\n\tuseEffect( () => {\n\t\tif ( ! isExternalImage( id, url ) || ! isSelected || externalBlob ) {\n\t\t\treturn;\n\t\t}\n\n\t\twindow\n\t\t\t.fetch( url )\n\t\t\t.then( ( response ) => response.blob() )\n\t\t\t.then( ( blob ) => setExternalBlob( blob ) )\n\t\t\t// Do nothing, cannot upload.\n\t\t\t.catch( () => {} );\n\t}, [ id, url, isSelected, externalBlob ] );\n\n\t// We need to show the caption when changes come from\n\t// history navigation(undo/redo).\n\tuseEffect( () => {\n\t\tif ( caption && ! prevCaption ) {\n\t\t\tsetShowCaption( true );\n\t\t}\n\t}, [ caption, prevCaption ] );\n\n\t// Focus the caption when we click to add one.\n\tconst captionRef = useCallback(\n\t\t( node ) => {\n\t\t\tif ( node && ! caption ) {\n\t\t\t\tnode.focus();\n\t\t\t}\n\t\t},\n\t\t[ caption ]\n\t);\n\n\t// Get naturalWidth and naturalHeight from image ref, and fall back to loaded natural\n\t// width and height. This resolves an issue in Safari where the loaded natural\n\t// width and height is otherwise lost when switching between alignments.\n\t// See: https://github.com/WordPress/gutenberg/pull/37210.\n\tconst { naturalWidth, naturalHeight } = useMemo( () => {\n\t\treturn {\n\t\t\tnaturalWidth:\n\t\t\t\timageRef.current?.naturalWidth ||\n\t\t\t\tloadedNaturalWidth ||\n\t\t\t\tundefined,\n\t\t\tnaturalHeight:\n\t\t\t\timageRef.current?.naturalHeight ||\n\t\t\t\tloadedNaturalHeight ||\n\t\t\t\tundefined,\n\t\t};\n\t}, [\n\t\tloadedNaturalWidth,\n\t\tloadedNaturalHeight,\n\t\timageRef.current?.complete,\n\t] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tfunction onImageError() {\n\t\t// Check if there's an embed block that handles this URL, e.g., instagram URL.\n\t\t// See: https://github.com/WordPress/gutenberg/pull/11472\n\t\tconst embedBlock = createUpgradedEmbedBlock( { attributes: { url } } );\n\n\t\tif ( undefined !== embedBlock ) {\n\t\t\tonReplace( embedBlock );\n\t\t}\n\t}\n\n\tfunction onSetHref( props ) {\n\t\tsetAttributes( props );\n\t}\n\n\tfunction onSetTitle( value ) {\n\t\t// This is the HTML title attribute, separate from the media object\n\t\t// title.\n\t\tsetAttributes( { title: value } );\n\t}\n\n\tfunction updateAlt( newAlt ) {\n\t\tsetAttributes( { alt: newAlt } );\n\t}\n\n\tfunction updateImage( newSizeSlug ) {\n\t\tconst newUrl = image?.media_details?.sizes?.[ newSizeSlug ]?.source_url;\n\t\tif ( ! newUrl ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\turl: newUrl,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tfunction uploadExternal() {\n\t\tmediaUpload( {\n\t\t\tfilesList: [ externalBlob ],\n\t\t\tonFileChange( [ img ] ) {\n\t\t\t\tonSelectImage( img );\n\n\t\t\t\tif ( isBlobURL( img.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tsetExternalBlob();\n\t\t\t\tcreateSuccessNotice( __( 'Image uploaded.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t},\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tonError( message ) {\n\t\t\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\t\t},\n\t\t} );\n\t}\n\n\tfunction updateAlignment( nextAlign ) {\n\t\tconst extraUpdatedAttributes = [ 'wide', 'full' ].includes( nextAlign )\n\t\t\t? { width: undefined, height: undefined }\n\t\t\t: {};\n\t\tsetAttributes( {\n\t\t\t...extraUpdatedAttributes,\n\t\t\talign: nextAlign,\n\t\t} );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t\tif ( ! caption ) {\n\t\t\t\tsetShowCaption( false );\n\t\t\t}\n\t\t}\n\t}, [ isSelected, caption ] );\n\n\tconst canEditImage = id && naturalWidth && naturalHeight && imageEditing;\n\tconst allowCrop = ! multiImageSelection && canEditImage && ! isEditingImage;\n\n\tfunction switchToCover() {\n\t\treplaceBlocks(\n\t\t\tclientId,\n\t\t\tswitchToBlockType( getBlock( clientId ), 'core/cover' )\n\t\t);\n\t}\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ ! isContentLocked && (\n\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\tvalue={ align }\n\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! isContentLocked && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetShowCaption( ! showCaption );\n\t\t\t\t\t\t\tif ( showCaption && caption ) {\n\t\t\t\t\t\t\t\tsetAttributes( { caption: undefined } );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\ticon={ captionIcon }\n\t\t\t\t\t\tisPressed={ showCaption }\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tshowCaption\n\t\t\t\t\t\t\t\t? __( 'Remove caption' )\n\t\t\t\t\t\t\t\t: __( 'Add caption' )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! multiImageSelection && ! isEditingImage && (\n\t\t\t\t\t<ImageURLInputUI\n\t\t\t\t\t\turl={ href || '' }\n\t\t\t\t\t\tonChangeUrl={ onSetHref }\n\t\t\t\t\t\tlinkDestination={ linkDestination }\n\t\t\t\t\t\tmediaUrl={ ( image && image.source_url ) || url }\n\t\t\t\t\t\tmediaLink={ image && image.link }\n\t\t\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\t\t\tlinkClass={ linkClass }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ allowCrop && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ externalBlob && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ uploadExternal }\n\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\tlabel={ __( 'Upload external image' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! multiImageSelection && canInsertCover && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ticon={ overlayText }\n\t\t\t\t\t\tlabel={ __( 'Add text over image' ) }\n\t\t\t\t\t\tonClick={ switchToCover }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ ! multiImageSelection && ! isEditingImage && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t{ ! multiImageSelection && (\n\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Alt text (alternative text)' ) }\n\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'Leave empty if the image is purely decorative.'\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}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\tonChangeImage={ updateImage }\n\t\t\t\t\t\tonChange={ ( value ) => setAttributes( value ) }\n\t\t\t\t\t\tslug={ sizeSlug }\n\t\t\t\t\t\twidth={ width }\n\t\t\t\t\t\theight={ height }\n\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\tisResizable={ isResizable }\n\t\t\t\t\t\timageWidth={ naturalWidth }\n\t\t\t\t\t\timageHeight={ naturalHeight }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\thelp={\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t</>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst filename = getFilename( url );\n\tlet defaultedAlt;\n\n\tif ( alt ) {\n\t\tdefaultedAlt = alt;\n\t} else if ( filename ) {\n\t\tdefaultedAlt = sprintf(\n\t\t\t/* translators: %s: file name */\n\t\t\t__( 'This image has an empty alt attribute; its file name is %s' ),\n\t\t\tfilename\n\t\t);\n\t} else {\n\t\tdefaultedAlt = __( 'This image has an empty alt attribute' );\n\t}\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst isRounded = attributes.className?.includes( 'is-style-rounded' );\n\tconst hasCustomBorder =\n\t\t!! borderProps.className || ! isEmpty( borderProps.style );\n\n\tlet img = (\n\t\t// Disable reason: Image itself is not meant to be interactive, but\n\t\t// should direct focus to block.\n\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t<>\n\t\t\t<img\n\t\t\t\tsrc={ temporaryURL || url }\n\t\t\t\talt={ defaultedAlt }\n\t\t\t\tonError={ () => onImageError() }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetLoadedNaturalSize( {\n\t\t\t\t\t\tloadedNaturalWidth: event.target?.naturalWidth,\n\t\t\t\t\t\tloadedNaturalHeight: event.target?.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tref={ imageRef }\n\t\t\t\tclassName={ borderProps.className }\n\t\t\t\tstyle={ borderProps.style }\n\t\t\t/>\n\t\t\t{ temporaryURL && <Spinner /> }\n\t\t</>\n\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t);\n\n\tlet imageWidthWithinContainer;\n\tlet imageHeightWithinContainer;\n\n\tif ( clientWidth && naturalWidth && naturalHeight ) {\n\t\tconst exceedMaxWidth = naturalWidth > clientWidth;\n\t\tconst ratio = naturalHeight / naturalWidth;\n\t\timageWidthWithinContainer = exceedMaxWidth ? clientWidth : naturalWidth;\n\t\timageHeightWithinContainer = exceedMaxWidth\n\t\t\t? clientWidth * ratio\n\t\t\t: naturalHeight;\n\t}\n\n\tif ( canEditImage && isEditingImage ) {\n\t\timg = (\n\t\t\t<ImageEditor\n\t\t\t\tid={ id }\n\t\t\t\turl={ url }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\tclientWidth={ clientWidth }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) =>\n\t\t\t\t\tsetAttributes( imageAttributes )\n\t\t\t\t}\n\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t} }\n\t\t\t\tborderProps={ isRounded ? undefined : borderProps }\n\t\t\t/>\n\t\t);\n\t} else if ( ! isResizable || ! imageWidthWithinContainer ) {\n\t\timg = <div style={ { width, height } }>{ img }</div>;\n\t} else {\n\t\tconst currentWidth = width || imageWidthWithinContainer;\n\t\tconst currentHeight = height || imageHeightWithinContainer;\n\n\t\tconst ratio = naturalWidth / naturalHeight;\n\t\tconst minWidth =\n\t\t\tnaturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;\n\t\tconst minHeight =\n\t\t\tnaturalHeight < naturalWidth ? MIN_SIZE : MIN_SIZE / ratio;\n\n\t\t// With the current implementation of ResizableBox, an image needs an\n\t\t// explicit pixel value for the max-width. In absence of being able to\n\t\t// set the content-width, this max-width is currently dictated by the\n\t\t// vanilla editor style. The following variable adds a buffer to this\n\t\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t\t// in most cases, allow you to scale the image beyond the width of the\n\t\t// main column, though not infinitely.\n\t\t// @todo It would be good to revisit this once a content-width variable\n\t\t// becomes available.\n\t\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\t\tlet showRightHandle = false;\n\t\tlet showLeftHandle = false;\n\n\t\t/* eslint-disable no-lonely-if */\n\t\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\t\tif ( align === 'center' ) {\n\t\t\t// When the image is centered, show both handles.\n\t\t\tshowRightHandle = true;\n\t\t\tshowLeftHandle = true;\n\t\t} else if ( isRTL() ) {\n\t\t\t// In RTL mode the image is on the right by default.\n\t\t\t// Show the right handle and hide the left handle only when it is\n\t\t\t// aligned left. Otherwise always show the left handle.\n\t\t\tif ( align === 'left' ) {\n\t\t\t\tshowRightHandle = true;\n\t\t\t} else {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t}\n\t\t} else {\n\t\t\t// Show the left handle and hide the right handle only when the\n\t\t\t// image is aligned right. Otherwise always show the right handle.\n\t\t\tif ( align === 'right' ) {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t} else {\n\t\t\t\tshowRightHandle = true;\n\t\t\t}\n\t\t}\n\t\t/* eslint-enable no-lonely-if */\n\n\t\timg = (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: width ?? 'auto',\n\t\t\t\t\theight: height && ! hasCustomBorder ? height : 'auto',\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tresizeRatio={ align === 'center' ? 2 : 1 }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</ResizableBox>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ /* Hide controls during upload to avoid component remount,\n\t\t\t\twhich causes duplicated image upload. */ }\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ img }\n\t\t\t{ showCaption &&\n\t\t\t\t( ! RichText.isEmpty( caption ) || isSelected ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"caption\"\n\t\t\t\t\t\tclassName={ __experimentalGetElementClassName(\n\t\t\t\t\t\t\t'caption'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tref={ captionRef }\n\t\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\t\taria-label={ __( 'Image caption text' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Add caption' ) }\n\t\t\t\t\t\tvalue={ caption }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { caption: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tinlineToolbar\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\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</>\n\t);\n}\n"]}
|
package/build/image/utils.js
CHANGED
|
@@ -79,7 +79,9 @@ function getUpdatedLinkTargetSettings(value, _ref) {
|
|
|
79
79
|
|
|
80
80
|
|
|
81
81
|
function getImageSizeAttributes(image, size) {
|
|
82
|
-
|
|
82
|
+
var _image$media_details, _image$media_details$, _image$media_details$2;
|
|
83
|
+
|
|
84
|
+
const url = image === null || image === void 0 ? void 0 : (_image$media_details = image.media_details) === null || _image$media_details === void 0 ? void 0 : (_image$media_details$ = _image$media_details.sizes) === null || _image$media_details$ === void 0 ? void 0 : (_image$media_details$2 = _image$media_details$[size]) === null || _image$media_details$2 === void 0 ? void 0 : _image$media_details$2.source_url;
|
|
83
85
|
|
|
84
86
|
if (url) {
|
|
85
87
|
return {
|
package/build/image/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/image/utils.js"],"names":["removeNewTabRel","currentRel","newRel","undefined","NEW_TAB_REL","forEach","relVal","regExp","RegExp","replace","trim","getUpdatedLinkTargetSettings","value","rel","linkTarget","updatedRel","getImageSizeAttributes","image","size","url","width","height","sizeSlug"],"mappings":";;;;;;;;;AAGA;;AAKA;;AARA;AACA;AACA;;AAGA;AACA;AACA;AAGO,SAASA,eAAT,CAA0BC,UAA1B,EAAuC;AAC7C,MAAIC,MAAM,GAAGD,UAAb;;AAEA,MAAKA,UAAU,KAAKE,SAAf,IAA4B,CAAE,qBAASD,MAAT,CAAnC,EAAuD;AACtD,QAAK,CAAE,qBAASA,MAAT,CAAP,EAA2B;AAC1BE,6BAAYC,OAAZ,CAAuBC,MAAF,IAAc;AAClC,cAAMC,MAAM,GAAG,IAAIC,MAAJ,CAAY,QAAQF,MAAR,GAAiB,KAA7B,EAAoC,IAApC,CAAf;AACAJ,QAAAA,MAAM,GAAGA,MAAM,CAACO,OAAP,CAAgBF,MAAhB,EAAwB,EAAxB,CAAT;AACA,OAHD,EAD0B,CAM1B;;;AACA,UAAKL,MAAM,KAAKD,UAAhB,EAA6B;AAC5BC,QAAAA,MAAM,GAAGA,MAAM,CAACQ,IAAP,EAAT;AACA;;AAED,UAAK,qBAASR,MAAT,CAAL,EAAyB;AACxBA,QAAAA,MAAM,GAAGC,SAAT;AACA;AACD;AACD;;AAED,SAAOD,MAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASS,4BAAT,CAAuCC,KAAvC,QAAwD;AAAA,MAAV;AAAEC,IAAAA;AAAF,GAAU;AAC9D,QAAMC,UAAU,GAAGF,KAAK,GAAG,QAAH,GAAcT,SAAtC;AAEA,MAAIY,UAAJ;;AACA,MAAK,CAAED,UAAF,IAAgB,CAAED,GAAvB,EAA6B;AAC5BE,IAAAA,UAAU,GAAGZ,SAAb;AACA,GAFD,MAEO;AACNY,IAAAA,UAAU,GAAGf,eAAe,CAAEa,GAAF,CAA5B;AACA;;AAED,SAAO;AACNC,IAAAA,UADM;AAEND,IAAAA,GAAG,EAAEE;AAFC,GAAP;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASC,sBAAT,CAAiCC,KAAjC,EAAwCC,IAAxC,EAA+C;AACrD,QAAMC,GAAG,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/image/utils.js"],"names":["removeNewTabRel","currentRel","newRel","undefined","NEW_TAB_REL","forEach","relVal","regExp","RegExp","replace","trim","getUpdatedLinkTargetSettings","value","rel","linkTarget","updatedRel","getImageSizeAttributes","image","size","url","media_details","sizes","source_url","width","height","sizeSlug"],"mappings":";;;;;;;;;AAGA;;AAKA;;AARA;AACA;AACA;;AAGA;AACA;AACA;AAGO,SAASA,eAAT,CAA0BC,UAA1B,EAAuC;AAC7C,MAAIC,MAAM,GAAGD,UAAb;;AAEA,MAAKA,UAAU,KAAKE,SAAf,IAA4B,CAAE,qBAASD,MAAT,CAAnC,EAAuD;AACtD,QAAK,CAAE,qBAASA,MAAT,CAAP,EAA2B;AAC1BE,6BAAYC,OAAZ,CAAuBC,MAAF,IAAc;AAClC,cAAMC,MAAM,GAAG,IAAIC,MAAJ,CAAY,QAAQF,MAAR,GAAiB,KAA7B,EAAoC,IAApC,CAAf;AACAJ,QAAAA,MAAM,GAAGA,MAAM,CAACO,OAAP,CAAgBF,MAAhB,EAAwB,EAAxB,CAAT;AACA,OAHD,EAD0B,CAM1B;;;AACA,UAAKL,MAAM,KAAKD,UAAhB,EAA6B;AAC5BC,QAAAA,MAAM,GAAGA,MAAM,CAACQ,IAAP,EAAT;AACA;;AAED,UAAK,qBAASR,MAAT,CAAL,EAAyB;AACxBA,QAAAA,MAAM,GAAGC,SAAT;AACA;AACD;AACD;;AAED,SAAOD,MAAP;AACA;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASS,4BAAT,CAAuCC,KAAvC,QAAwD;AAAA,MAAV;AAAEC,IAAAA;AAAF,GAAU;AAC9D,QAAMC,UAAU,GAAGF,KAAK,GAAG,QAAH,GAAcT,SAAtC;AAEA,MAAIY,UAAJ;;AACA,MAAK,CAAED,UAAF,IAAgB,CAAED,GAAvB,EAA6B;AAC5BE,IAAAA,UAAU,GAAGZ,SAAb;AACA,GAFD,MAEO;AACNY,IAAAA,UAAU,GAAGf,eAAe,CAAEa,GAAF,CAA5B;AACA;;AAED,SAAO;AACNC,IAAAA,UADM;AAEND,IAAAA,GAAG,EAAEE;AAFC,GAAP;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASC,sBAAT,CAAiCC,KAAjC,EAAwCC,IAAxC,EAA+C;AAAA;;AACrD,QAAMC,GAAG,GAAGF,KAAH,aAAGA,KAAH,+CAAGA,KAAK,CAAEG,aAAV,kFAAG,qBAAsBC,KAAzB,oFAAG,sBAA+BH,IAA/B,CAAH,2DAAG,uBAAuCI,UAAnD;;AAEA,MAAKH,GAAL,EAAW;AACV,WAAO;AAAEA,MAAAA,GAAF;AAAOI,MAAAA,KAAK,EAAEpB,SAAd;AAAyBqB,MAAAA,MAAM,EAAErB,SAAjC;AAA4CsB,MAAAA,QAAQ,EAAEP;AAAtD,KAAP;AACA;;AAED,SAAO,EAAP;AACA","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * Internal dependencies\n */\nimport { NEW_TAB_REL } from './constants';\n\nexport function removeNewTabRel( currentRel ) {\n\tlet newRel = currentRel;\n\n\tif ( currentRel !== undefined && ! isEmpty( newRel ) ) {\n\t\tif ( ! isEmpty( newRel ) ) {\n\t\t\tNEW_TAB_REL.forEach( ( relVal ) => {\n\t\t\t\tconst regExp = new RegExp( '\\\\b' + relVal + '\\\\b', 'gi' );\n\t\t\t\tnewRel = newRel.replace( regExp, '' );\n\t\t\t} );\n\n\t\t\t// Only trim if NEW_TAB_REL values was replaced.\n\t\t\tif ( newRel !== currentRel ) {\n\t\t\t\tnewRel = newRel.trim();\n\t\t\t}\n\n\t\t\tif ( isEmpty( newRel ) ) {\n\t\t\t\tnewRel = undefined;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn newRel;\n}\n\n/**\n * Helper to get the link target settings to be stored.\n *\n * @param {boolean} value The new link target value.\n * @param {Object} attributes Block attributes.\n * @param {Object} attributes.rel Image block's rel attribute.\n *\n * @return {Object} Updated link target settings.\n */\nexport function getUpdatedLinkTargetSettings( value, { rel } ) {\n\tconst linkTarget = value ? '_blank' : undefined;\n\n\tlet updatedRel;\n\tif ( ! linkTarget && ! rel ) {\n\t\tupdatedRel = undefined;\n\t} else {\n\t\tupdatedRel = removeNewTabRel( rel );\n\t}\n\n\treturn {\n\t\tlinkTarget,\n\t\trel: updatedRel,\n\t};\n}\n\n/**\n * Determines new Image block attributes size selection.\n *\n * @param {Object} image Media file object for gallery image.\n * @param {string} size Selected size slug to apply.\n */\nexport function getImageSizeAttributes( image, size ) {\n\tconst url = image?.media_details?.sizes?.[ size ]?.source_url;\n\n\tif ( url ) {\n\t\treturn { url, width: undefined, height: undefined, sizeSlug: size };\n\t}\n\n\treturn {};\n}\n"]}
|
package/build/index.js
CHANGED
|
@@ -135,6 +135,8 @@ var postTemplate = _interopRequireWildcard(require("./post-template"));
|
|
|
135
135
|
|
|
136
136
|
var postTerms = _interopRequireWildcard(require("./post-terms"));
|
|
137
137
|
|
|
138
|
+
var postTimeToRead = _interopRequireWildcard(require("./post-time-to-read"));
|
|
139
|
+
|
|
138
140
|
var postTitle = _interopRequireWildcard(require("./post-title"));
|
|
139
141
|
|
|
140
142
|
var preformatted = _interopRequireWildcard(require("./preformatted"));
|
|
@@ -228,7 +230,7 @@ const getAllBlocks = () => [// Common blocks are grouped at the top to prioritiz
|
|
|
228
230
|
paragraph, image, heading, gallery, list, listItem, quote, // Register all remaining core blocks.
|
|
229
231
|
archives, audio, button, buttons, calendar, categories, ...(window.wp && window.wp.oldEditor ? [classic] : []), // Only add the classic block in WP Context.
|
|
230
232
|
code, column, columns, commentAuthorAvatar, cover, embed, file, group, html, latestComments, latestPosts, mediaText, missing, more, nextpage, pageList, pageListItem, pattern, preformatted, pullquote, reusableBlock, rss, search, separator, shortcode, socialLink, socialLinks, spacer, table, tagCloud, textColumns, verse, video, // theme blocks
|
|
231
|
-
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, postCommentsForm, tableOfContents, homeLink, logInOut, termDescription, queryTitle, postAuthorBiography].filter(Boolean);
|
|
233
|
+
navigation, navigationLink, navigationSubmenu, siteLogo, siteTitle, siteTagline, query, templatePart, avatar, postTitle, postExcerpt, postFeaturedImage, postContent, postAuthor, postAuthorName, postComment, postCommentsCount, postCommentsLink, postDate, postTerms, postNavigationLink, postTemplate, postTimeToRead, queryPagination, queryPaginationNext, queryPaginationNumbers, queryPaginationPrevious, queryNoResults, readMore, comments, commentAuthorName, commentContent, commentDate, commentEditLink, commentReplyLink, commentTemplate, commentsTitle, commentsPagination, commentsPaginationNext, commentsPaginationNumbers, commentsPaginationPrevious, postCommentsForm, tableOfContents, homeLink, logInOut, termDescription, queryTitle, postAuthorBiography].filter(Boolean);
|
|
232
234
|
/**
|
|
233
235
|
* Function to get all the core blocks in an array.
|
|
234
236
|
*
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/index.js"],"names":["getAllBlocks","paragraph","image","heading","gallery","list","listItem","quote","archives","audio","button","buttons","calendar","categories","window","wp","oldEditor","classic","code","column","columns","commentAuthorAvatar","cover","embed","file","group","html","latestComments","latestPosts","mediaText","missing","more","nextpage","pageList","pageListItem","pattern","preformatted","pullquote","reusableBlock","rss","search","separator","shortcode","socialLink","socialLinks","spacer","table","tagCloud","textColumns","verse","video","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","postCommentsForm","tableOfContents","homeLink","logInOut","termDescription","queryTitle","postAuthorBiography","filter","Boolean","__experimentalGetCoreBlocks","metadata","registerCoreBlocks","blocks","forEach","init","name","__experimentalRegisterExperimentalCoreBlocks","process","env","IS_GUTENBERG_PLUGIN","enableFSEBlocks","enabledExperiments","__experimental","includes","undefined"],"mappings":";;;;;;;;;AAGA;;AAmBA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;;;AArHA;AACA;AACA;;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAkGA;AACA;AACA;AACA,MAAMA,YAAY,GAAG,MACpB,CACC;AACA;AACAC,SAHD,EAICC,KAJD,EAKCC,OALD,EAMCC,OAND,EAOCC,IAPD,EAQCC,QARD,EASCC,KATD,EAWC;AACAC,QAZD,EAaCC,KAbD,EAcCC,MAdD,EAeCC,OAfD,EAgBCC,QAhBD,EAiBCC,UAjBD,EAkBC,IAAKC,MAAM,CAACC,EAAP,IAAaD,MAAM,CAACC,EAAP,CAAUC,SAAvB,GAAmC,CAAEC,OAAF,CAAnC,GAAiD,EAAtD,CAlBD,EAkB6D;AAC5DC,IAnBD,EAoBCC,MApBD,EAqBCC,OArBD,EAsBCC,mBAtBD,EAuBCC,KAvBD,EAwBCC,KAxBD,EAyBCC,IAzBD,EA0BCC,KA1BD,EA2BCC,IA3BD,EA4BCC,cA5BD,EA6BCC,WA7BD,EA8BCC,SA9BD,EA+BCC,OA/BD,EAgCCC,IAhCD,EAiCCC,QAjCD,EAkCCC,QAlCD,EAmCCC,Y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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\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 pageListItem from './page-list-item';\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 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 './utils/is-block-metadata-experimental';\n\n/**\n * Function to get all the block-library blocks in an array\n */\nconst getAllBlocks = () =>\n\t[\n\t\t// Common blocks are grouped at the top to prioritize their display\n\t\t// in various contexts — like the inserter and auto-complete components.\n\t\tparagraph,\n\t\timage,\n\t\theading,\n\t\tgallery,\n\t\tlist,\n\t\tlistItem,\n\t\tquote,\n\n\t\t// Register all remaining core blocks.\n\t\tarchives,\n\t\taudio,\n\t\tbutton,\n\t\tbuttons,\n\t\tcalendar,\n\t\tcategories,\n\t\t...( window.wp && window.wp.oldEditor ? [ classic ] : [] ), // Only add the classic block in WP Context.\n\t\tcode,\n\t\tcolumn,\n\t\tcolumns,\n\t\tcommentAuthorAvatar,\n\t\tcover,\n\t\tembed,\n\t\tfile,\n\t\tgroup,\n\t\thtml,\n\t\tlatestComments,\n\t\tlatestPosts,\n\t\tmediaText,\n\t\tmissing,\n\t\tmore,\n\t\tnextpage,\n\t\tpageList,\n\t\tpageListItem,\n\t\tpattern,\n\t\tpreformatted,\n\t\tpullquote,\n\t\treusableBlock,\n\t\trss,\n\t\tsearch,\n\t\tseparator,\n\t\tshortcode,\n\t\tsocialLink,\n\t\tsocialLinks,\n\t\tspacer,\n\t\ttable,\n\t\ttagCloud,\n\t\ttextColumns,\n\t\tverse,\n\t\tvideo,\n\n\t\t// theme blocks\n\t\tnavigation,\n\t\tnavigationLink,\n\t\tnavigationSubmenu,\n\t\tsiteLogo,\n\t\tsiteTitle,\n\t\tsiteTagline,\n\t\tquery,\n\t\ttemplatePart,\n\t\tavatar,\n\t\tpostTitle,\n\t\tpostExcerpt,\n\t\tpostFeaturedImage,\n\t\tpostContent,\n\t\tpostAuthor,\n\t\tpostAuthorName,\n\t\tpostComment,\n\t\tpostCommentsCount,\n\t\tpostCommentsLink,\n\t\tpostDate,\n\t\tpostTerms,\n\t\tpostNavigationLink,\n\t\tpostTemplate,\n\t\tqueryPagination,\n\t\tqueryPaginationNext,\n\t\tqueryPaginationNumbers,\n\t\tqueryPaginationPrevious,\n\t\tqueryNoResults,\n\t\treadMore,\n\t\tcomments,\n\t\tcommentAuthorName,\n\t\tcommentContent,\n\t\tcommentDate,\n\t\tcommentEditLink,\n\t\tcommentReplyLink,\n\t\tcommentTemplate,\n\t\tcommentsTitle,\n\t\tcommentsPagination,\n\t\tcommentsPaginationNext,\n\t\tcommentsPaginationNumbers,\n\t\tcommentsPaginationPrevious,\n\t\tpostCommentsForm,\n\t\ttableOfContents,\n\t\thomeLink,\n\t\tlogInOut,\n\t\ttermDescription,\n\t\tqueryTitle,\n\t\tpostAuthorBiography,\n\t].filter( Boolean );\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( ( { init } ) => init() );\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 = [ enableFSEBlocks ? 'fse' : null ];\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( ( { init } ) => init() );\n\t }\n\t: undefined;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/index.js"],"names":["getAllBlocks","paragraph","image","heading","gallery","list","listItem","quote","archives","audio","button","buttons","calendar","categories","window","wp","oldEditor","classic","code","column","columns","commentAuthorAvatar","cover","embed","file","group","html","latestComments","latestPosts","mediaText","missing","more","nextpage","pageList","pageListItem","pattern","preformatted","pullquote","reusableBlock","rss","search","separator","shortcode","socialLink","socialLinks","spacer","table","tagCloud","textColumns","verse","video","navigation","navigationLink","navigationSubmenu","siteLogo","siteTitle","siteTagline","query","templatePart","avatar","postTitle","postExcerpt","postFeaturedImage","postContent","postAuthor","postAuthorName","postComment","postCommentsCount","postCommentsLink","postDate","postTerms","postNavigationLink","postTemplate","postTimeToRead","queryPagination","queryPaginationNext","queryPaginationNumbers","queryPaginationPrevious","queryNoResults","readMore","comments","commentAuthorName","commentContent","commentDate","commentEditLink","commentReplyLink","commentTemplate","commentsTitle","commentsPagination","commentsPaginationNext","commentsPaginationNumbers","commentsPaginationPrevious","postCommentsForm","tableOfContents","homeLink","logInOut","termDescription","queryTitle","postAuthorBiography","filter","Boolean","__experimentalGetCoreBlocks","metadata","registerCoreBlocks","blocks","forEach","init","name","__experimentalRegisterExperimentalCoreBlocks","process","env","IS_GUTENBERG_PLUGIN","enableFSEBlocks","enabledExperiments","__experimental","includes","undefined"],"mappings":";;;;;;;;;AAGA;;AAmBA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;;;AAtHA;AACA;AACA;;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAmGA;AACA;AACA;AACA,MAAMA,YAAY,GAAG,MACpB,CACC;AACA;AACAC,SAHD,EAICC,KAJD,EAKCC,OALD,EAMCC,OAND,EAOCC,IAPD,EAQCC,QARD,EASCC,KATD,EAWC;AACAC,QAZD,EAaCC,KAbD,EAcCC,MAdD,EAeCC,OAfD,EAgBCC,QAhBD,EAiBCC,UAjBD,EAkBC,IAAKC,MAAM,CAACC,EAAP,IAAaD,MAAM,CAACC,EAAP,CAAUC,SAAvB,GAAmC,CAAEC,OAAF,CAAnC,GAAiD,EAAtD,CAlBD,EAkB6D;AAC5DC,IAnBD,EAoBCC,MApBD,EAqBCC,OArBD,EAsBCC,mBAtBD,EAuBCC,KAvBD,EAwBCC,KAxBD,EAyBCC,IAzBD,EA0BCC,KA1BD,EA2BCC,IA3BD,EA4BCC,cA5BD,EA6BCC,WA7BD,EA8BCC,SA9BD,EA+BCC,OA/BD,EAgCCC,IAhCD,EAiCCC,QAjCD,EAkCCC,QAlCD,EA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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\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 pageListItem from './page-list-item';\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 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 postTimeToRead from './post-time-to-read';\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 './utils/is-block-metadata-experimental';\n\n/**\n * Function to get all the block-library blocks in an array\n */\nconst getAllBlocks = () =>\n\t[\n\t\t// Common blocks are grouped at the top to prioritize their display\n\t\t// in various contexts — like the inserter and auto-complete components.\n\t\tparagraph,\n\t\timage,\n\t\theading,\n\t\tgallery,\n\t\tlist,\n\t\tlistItem,\n\t\tquote,\n\n\t\t// Register all remaining core blocks.\n\t\tarchives,\n\t\taudio,\n\t\tbutton,\n\t\tbuttons,\n\t\tcalendar,\n\t\tcategories,\n\t\t...( window.wp && window.wp.oldEditor ? [ classic ] : [] ), // Only add the classic block in WP Context.\n\t\tcode,\n\t\tcolumn,\n\t\tcolumns,\n\t\tcommentAuthorAvatar,\n\t\tcover,\n\t\tembed,\n\t\tfile,\n\t\tgroup,\n\t\thtml,\n\t\tlatestComments,\n\t\tlatestPosts,\n\t\tmediaText,\n\t\tmissing,\n\t\tmore,\n\t\tnextpage,\n\t\tpageList,\n\t\tpageListItem,\n\t\tpattern,\n\t\tpreformatted,\n\t\tpullquote,\n\t\treusableBlock,\n\t\trss,\n\t\tsearch,\n\t\tseparator,\n\t\tshortcode,\n\t\tsocialLink,\n\t\tsocialLinks,\n\t\tspacer,\n\t\ttable,\n\t\ttagCloud,\n\t\ttextColumns,\n\t\tverse,\n\t\tvideo,\n\n\t\t// theme blocks\n\t\tnavigation,\n\t\tnavigationLink,\n\t\tnavigationSubmenu,\n\t\tsiteLogo,\n\t\tsiteTitle,\n\t\tsiteTagline,\n\t\tquery,\n\t\ttemplatePart,\n\t\tavatar,\n\t\tpostTitle,\n\t\tpostExcerpt,\n\t\tpostFeaturedImage,\n\t\tpostContent,\n\t\tpostAuthor,\n\t\tpostAuthorName,\n\t\tpostComment,\n\t\tpostCommentsCount,\n\t\tpostCommentsLink,\n\t\tpostDate,\n\t\tpostTerms,\n\t\tpostNavigationLink,\n\t\tpostTemplate,\n\t\tpostTimeToRead,\n\t\tqueryPagination,\n\t\tqueryPaginationNext,\n\t\tqueryPaginationNumbers,\n\t\tqueryPaginationPrevious,\n\t\tqueryNoResults,\n\t\treadMore,\n\t\tcomments,\n\t\tcommentAuthorName,\n\t\tcommentContent,\n\t\tcommentDate,\n\t\tcommentEditLink,\n\t\tcommentReplyLink,\n\t\tcommentTemplate,\n\t\tcommentsTitle,\n\t\tcommentsPagination,\n\t\tcommentsPaginationNext,\n\t\tcommentsPaginationNumbers,\n\t\tcommentsPaginationPrevious,\n\t\tpostCommentsForm,\n\t\ttableOfContents,\n\t\thomeLink,\n\t\tlogInOut,\n\t\ttermDescription,\n\t\tqueryTitle,\n\t\tpostAuthorBiography,\n\t].filter( Boolean );\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( ( { init } ) => init() );\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 = [ enableFSEBlocks ? 'fse' : null ];\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( ( { init } ) => init() );\n\t }\n\t: undefined;\n"]}
|
|
@@ -46,21 +46,29 @@ function LatestComments(_ref) {
|
|
|
46
46
|
displayDate,
|
|
47
47
|
displayExcerpt
|
|
48
48
|
} = attributes;
|
|
49
|
+
const serverSideAttributes = { ...attributes,
|
|
50
|
+
style: { ...(attributes === null || attributes === void 0 ? void 0 : attributes.style),
|
|
51
|
+
spacing: undefined
|
|
52
|
+
}
|
|
53
|
+
};
|
|
49
54
|
return (0, _element.createElement)("div", (0, _blockEditor.useBlockProps)(), (0, _element.createElement)(_blockEditor.InspectorControls, null, (0, _element.createElement)(_components.PanelBody, {
|
|
50
55
|
title: (0, _i18n.__)('Settings')
|
|
51
56
|
}, (0, _element.createElement)(_components.ToggleControl, {
|
|
57
|
+
__nextHasNoMarginBottom: true,
|
|
52
58
|
label: (0, _i18n.__)('Display avatar'),
|
|
53
59
|
checked: displayAvatar,
|
|
54
60
|
onChange: () => setAttributes({
|
|
55
61
|
displayAvatar: !displayAvatar
|
|
56
62
|
})
|
|
57
63
|
}), (0, _element.createElement)(_components.ToggleControl, {
|
|
64
|
+
__nextHasNoMarginBottom: true,
|
|
58
65
|
label: (0, _i18n.__)('Display date'),
|
|
59
66
|
checked: displayDate,
|
|
60
67
|
onChange: () => setAttributes({
|
|
61
68
|
displayDate: !displayDate
|
|
62
69
|
})
|
|
63
70
|
}), (0, _element.createElement)(_components.ToggleControl, {
|
|
71
|
+
__nextHasNoMarginBottom: true,
|
|
64
72
|
label: (0, _i18n.__)('Display excerpt'),
|
|
65
73
|
checked: displayExcerpt,
|
|
66
74
|
onChange: () => setAttributes({
|
|
@@ -78,8 +86,7 @@ function LatestComments(_ref) {
|
|
|
78
86
|
required: true
|
|
79
87
|
}))), (0, _element.createElement)(_components.Disabled, null, (0, _element.createElement)(_serverSideRender.default, {
|
|
80
88
|
block: "core/latest-comments",
|
|
81
|
-
attributes:
|
|
82
|
-
skipBlockSupportAttributes: true // The preview uses the site's locale to make it more true to how
|
|
89
|
+
attributes: serverSideAttributes // The preview uses the site's locale to make it more true to how
|
|
83
90
|
// the block appears on the frontend. Setting the locale
|
|
84
91
|
// explicitly prevents any middleware from setting it to 'user'.
|
|
85
92
|
,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/latest-comments/edit.js"],"names":["MIN_COMMENTS","MAX_COMMENTS","LatestComments","attributes","setAttributes","commentsToShow","displayAvatar","displayDate","displayExcerpt","value","_locale"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AAMA;;AACA;;AAXA;AACA;AACA;;AAWA;AACA;AACA;AACA;AACA;AACA,MAAMA,YAAY,GAAG,CAArB;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMC,YAAY,GAAG,GAArB;;AAEe,SAASC,cAAT,OAAyD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACvE,QAAM;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA,aAAlB;AAAiCC,IAAAA,WAAjC;AAA8CC,IAAAA;AAA9C,MACLL,UADD;AAGA,SACC,mCAAU,iCAAV,EACC,4BAAC,8BAAD,QACC,4BAAC,qBAAD;AAAW,IAAA,KAAK,EAAG,cAAI,UAAJ;AAAnB,KACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,gBAAJ,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/latest-comments/edit.js"],"names":["MIN_COMMENTS","MAX_COMMENTS","LatestComments","attributes","setAttributes","commentsToShow","displayAvatar","displayDate","displayExcerpt","serverSideAttributes","style","spacing","undefined","value","_locale"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AAMA;;AACA;;AAXA;AACA;AACA;;AAWA;AACA;AACA;AACA;AACA;AACA,MAAMA,YAAY,GAAG,CAArB;AACA;AACA;AACA;AACA;AACA;;AACA,MAAMC,YAAY,GAAG,GAArB;;AAEe,SAASC,cAAT,OAAyD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACvE,QAAM;AAAEC,IAAAA,cAAF;AAAkBC,IAAAA,aAAlB;AAAiCC,IAAAA,WAAjC;AAA8CC,IAAAA;AAA9C,MACLL,UADD;AAGA,QAAMM,oBAAoB,GAAG,EAC5B,GAAGN,UADyB;AAE5BO,IAAAA,KAAK,EAAE,EACN,IAAGP,UAAH,aAAGA,UAAH,uBAAGA,UAAU,CAAEO,KAAf,CADM;AAENC,MAAAA,OAAO,EAAEC;AAFH;AAFqB,GAA7B;AAQA,SACC,mCAAU,iCAAV,EACC,4BAAC,8BAAD,QACC,4BAAC,qBAAD;AAAW,IAAA,KAAK,EAAG,cAAI,UAAJ;AAAnB,KACC,4BAAC,yBAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAG,cAAI,gBAAJ,CAFT;AAGC,IAAA,OAAO,EAAGN,aAHX;AAIC,IAAA,QAAQ,EAAG,MACVF,aAAa,CAAE;AAAEE,MAAAA,aAAa,EAAE,CAAEA;AAAnB,KAAF;AALf,IADD,EASC,4BAAC,yBAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAG,cAAI,cAAJ,CAFT;AAGC,IAAA,OAAO,EAAGC,WAHX;AAIC,IAAA,QAAQ,EAAG,MACVH,aAAa,CAAE;AAAEG,MAAAA,WAAW,EAAE,CAAEA;AAAjB,KAAF;AALf,IATD,EAiBC,4BAAC,yBAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAG,cAAI,iBAAJ,CAFT;AAGC,IAAA,OAAO,EAAGC,cAHX;AAIC,IAAA,QAAQ,EAAG,MACVJ,aAAa,CAAE;AACdI,MAAAA,cAAc,EAAE,CAAEA;AADJ,KAAF;AALf,IAjBD,EA2BC,4BAAC,wBAAD;AACC,IAAA,uBAAuB,MADxB;AAEC,IAAA,KAAK,EAAG,cAAI,oBAAJ,CAFT;AAGC,IAAA,KAAK,EAAGH,cAHT;AAIC,IAAA,QAAQ,EAAKQ,KAAF,IACVT,aAAa,CAAE;AAAEC,MAAAA,cAAc,EAAEQ;AAAlB,KAAF,CALf;AAOC,IAAA,GAAG,EAAGb,YAPP;AAQC,IAAA,GAAG,EAAGC,YARP;AASC,IAAA,QAAQ;AATT,IA3BD,CADD,CADD,EA0CC,4BAAC,oBAAD,QACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAC,sBADP;AAEC,IAAA,UAAU,EAAGQ,oBAFd,CAGC;AACA;AACA;AALD;AAMC,IAAA,YAAY,EAAG;AAAEK,MAAAA,OAAO,EAAE;AAAX;AANhB,IADD,CA1CD,CADD;AAuDA","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 { commentsToShow, displayAvatar, displayDate, displayExcerpt } =\n\t\tattributes;\n\n\tconst serverSideAttributes = {\n\t\t...attributes,\n\t\tstyle: {\n\t\t\t...attributes?.style,\n\t\t\tspacing: undefined,\n\t\t},\n\t};\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\t__nextHasNoMarginBottom\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\t__nextHasNoMarginBottom\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\t__nextHasNoMarginBottom\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\t__nextHasNoMarginBottom\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={ serverSideAttributes }\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"]}
|
|
@@ -51,10 +51,24 @@ const metadata = {
|
|
|
51
51
|
},
|
|
52
52
|
supports: {
|
|
53
53
|
align: true,
|
|
54
|
+
anchor: true,
|
|
54
55
|
html: false,
|
|
55
56
|
spacing: {
|
|
56
57
|
margin: true,
|
|
57
58
|
padding: true
|
|
59
|
+
},
|
|
60
|
+
typography: {
|
|
61
|
+
fontSize: true,
|
|
62
|
+
lineHeight: true,
|
|
63
|
+
__experimentalFontFamily: true,
|
|
64
|
+
__experimentalFontWeight: true,
|
|
65
|
+
__experimentalFontStyle: true,
|
|
66
|
+
__experimentalTextTransform: true,
|
|
67
|
+
__experimentalTextDecoration: true,
|
|
68
|
+
__experimentalLetterSpacing: true,
|
|
69
|
+
__experimentalDefaultControls: {
|
|
70
|
+
fontSize: true
|
|
71
|
+
}
|
|
58
72
|
}
|
|
59
73
|
},
|
|
60
74
|
editorStyle: "wp-block-latest-comments-editor",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/latest-comments/index.js"],"names":["name","metadata","settings","icon","example","edit","init"],"mappings":";;;;;;;;;AAGA;;AAKA;;AAEA;;AAVA;AACA;AACA;;AAGA;AACA;AACA
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/latest-comments/index.js"],"names":["name","metadata","settings","icon","example","edit","init"],"mappings":";;;;;;;;;AAGA;;AAKA;;AAEA;;AAVA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,cADuB;AAEvBC,EAAAA,OAAO,EAAE,EAFc;AAGvBC,EAAAA,IAAI,EAAJA;AAHuB,CAAjB;;;AAMA,MAAMC,IAAI,GAAG,MAAM,wBAAW;AAAEN,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAX,CAAnB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { comment as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {},\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/latest-posts/deprecated.js"],"names":["attributes","metadata","categories","type","supports","align","html","migrate","oldAttributes","id","Number","isEligible","save"],"mappings":";;;;;;;AAAA;AACA;AACA
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/latest-posts/deprecated.js"],"names":["attributes","metadata","categories","type","supports","align","html","migrate","oldAttributes","id","Number","isEligible","save"],"mappings":";;;;;;;AAAA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,MAAM;AAAEA,EAAAA;AAAF,IAAiBC,QAAvB;eAEe,CACd;AACCD,EAAAA,UAAU,EAAE,EACX,GAAGA,UADQ;AAEXE,IAAAA,UAAU,EAAE;AACXC,MAAAA,IAAI,EAAE;AADK;AAFD,GADb;AAOCC,EAAAA,QAAQ,EAAE;AACTC,IAAAA,KAAK,EAAE,IADE;AAETC,IAAAA,IAAI,EAAE;AAFG,GAPX;AAWCC,EAAAA,OAAO,EAAIC,aAAF,IAAqB;AAC7B;AACA,WAAO,EACN,GAAGA,aADG;AAENN,MAAAA,UAAU,EAAE,CAAE;AAAEO,QAAAA,EAAE,EAAEC,MAAM,CAAEF,aAAa,CAACN,UAAhB;AAAZ,OAAF;AAFN,KAAP;AAIA,GAjBF;AAkBCS,EAAAA,UAAU,EAAE;AAAA,QAAE;AAAET,MAAAA;AAAF,KAAF;AAAA,WACXA,UAAU,IAAI,aAAa,OAAOA,UADvB;AAAA,GAlBb;AAoBCU,EAAAA,IAAI,EAAE,MAAM;AApBb,CADc,C","sourcesContent":["/**\n * Internal dependencies\n */\nimport metadata from './block.json';\n\nconst { attributes } = metadata;\n\nexport default [\n\t{\n\t\tattributes: {\n\t\t\t...attributes,\n\t\t\tcategories: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tsupports: {\n\t\t\talign: true,\n\t\t\thtml: false,\n\t\t},\n\t\tmigrate: ( oldAttributes ) => {\n\t\t\t// This needs the full category object, not just the ID.\n\t\t\treturn {\n\t\t\t\t...oldAttributes,\n\t\t\t\tcategories: [ { id: Number( oldAttributes.categories ) } ],\n\t\t\t};\n\t\t},\n\t\tisEligible: ( { categories } ) =>\n\t\t\tcategories && 'string' === typeof categories,\n\t\tsave: () => null,\n\t},\n];\n"]}
|
|
@@ -224,12 +224,14 @@ function LatestPostsEdit(_ref) {
|
|
|
224
224
|
})), (0, _element.createElement)(_components.PanelBody, {
|
|
225
225
|
title: (0, _i18n.__)('Post meta settings')
|
|
226
226
|
}, (0, _element.createElement)(_components.ToggleControl, {
|
|
227
|
+
__nextHasNoMarginBottom: true,
|
|
227
228
|
label: (0, _i18n.__)('Display author name'),
|
|
228
229
|
checked: displayAuthor,
|
|
229
230
|
onChange: value => setAttributes({
|
|
230
231
|
displayAuthor: value
|
|
231
232
|
})
|
|
232
233
|
}), (0, _element.createElement)(_components.ToggleControl, {
|
|
234
|
+
__nextHasNoMarginBottom: true,
|
|
233
235
|
label: (0, _i18n.__)('Display post date'),
|
|
234
236
|
checked: displayPostDate,
|
|
235
237
|
onChange: value => setAttributes({
|
|
@@ -238,6 +240,7 @@ function LatestPostsEdit(_ref) {
|
|
|
238
240
|
})), (0, _element.createElement)(_components.PanelBody, {
|
|
239
241
|
title: (0, _i18n.__)('Featured image settings')
|
|
240
242
|
}, (0, _element.createElement)(_components.ToggleControl, {
|
|
243
|
+
__nextHasNoMarginBottom: true,
|
|
241
244
|
label: (0, _i18n.__)('Display featured image'),
|
|
242
245
|
checked: displayFeaturedImage,
|
|
243
246
|
onChange: value => setAttributes({
|
|
@@ -278,6 +281,7 @@ function LatestPostsEdit(_ref) {
|
|
|
278
281
|
controls: ['left', 'center', 'right'],
|
|
279
282
|
isCollapsed: false
|
|
280
283
|
})), (0, _element.createElement)(_components.ToggleControl, {
|
|
284
|
+
__nextHasNoMarginBottom: true,
|
|
281
285
|
label: (0, _i18n.__)('Add link to featured image'),
|
|
282
286
|
checked: addLinkToFeaturedImage,
|
|
283
287
|
onChange: value => setAttributes({
|