@wordpress/block-library 9.4.0 → 9.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/build/archives/edit.js +1 -0
- package/build/archives/edit.js.map +1 -1
- package/build/audio/edit.js +1 -0
- package/build/audio/edit.js.map +1 -1
- package/build/avatar/edit.js +1 -0
- package/build/avatar/edit.js.map +1 -1
- package/build/avatar/user-control.js +1 -0
- package/build/avatar/user-control.js.map +1 -1
- package/build/button/edit.js +1 -0
- package/build/button/edit.js.map +1 -1
- package/build/categories/index.js +12 -0
- package/build/categories/index.js.map +1 -1
- package/build/column/edit.js +2 -2
- package/build/column/edit.js.map +1 -1
- package/build/column/index.js +2 -0
- package/build/column/index.js.map +1 -1
- package/build/comment-author-name/index.js +14 -1
- package/build/comment-author-name/index.js.map +1 -1
- package/build/comment-content/index.js +14 -1
- package/build/comment-content/index.js.map +1 -1
- package/build/comment-date/index.js +14 -1
- package/build/comment-date/index.js.map +1 -1
- package/build/comment-template/index.js +12 -0
- package/build/comment-template/index.js.map +1 -1
- package/build/comments-pagination/comments-pagination-arrow-controls.js +1 -0
- package/build/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
- package/build/comments-title/deprecated.js +3 -0
- package/build/comments-title/deprecated.js.map +1 -1
- package/build/comments-title/edit.js +3 -1
- package/build/comments-title/edit.js.map +1 -1
- package/build/comments-title/index.js +3 -0
- package/build/comments-title/index.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +0 -1
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/details/edit.js +1 -0
- package/build/details/edit.js.map +1 -1
- package/build/embed/edit.js +12 -4
- package/build/embed/edit.js.map +1 -1
- package/build/embed/embed-placeholder.js +6 -3
- package/build/embed/embed-placeholder.js.map +1 -1
- package/build/embed/embed-preview.js +4 -18
- package/build/embed/embed-preview.js.map +1 -1
- package/build/file/index.js +12 -0
- package/build/file/index.js.map +1 -1
- package/build/file/inspector.js +1 -0
- package/build/file/inspector.js.map +1 -1
- package/build/form/edit.js +6 -4
- package/build/form/edit.js.map +1 -1
- package/build/form-input/edit.js +2 -0
- package/build/form-input/edit.js.map +1 -1
- package/build/gallery/edit.js +44 -14
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.native.js +4 -1
- package/build/gallery/gallery.native.js.map +1 -1
- package/build/gallery/gap-styles.js +1 -9
- package/build/gallery/gap-styles.js.map +1 -1
- package/build/gallery/use-image-sizes.js +2 -2
- package/build/gallery/use-image-sizes.js.map +1 -1
- package/build/group/edit.js +1 -1
- package/build/group/edit.js.map +1 -1
- package/build/group/index.js +27 -30
- package/build/group/index.js.map +1 -1
- package/build/group/variations.js +51 -3
- package/build/group/variations.js.map +1 -1
- package/build/heading/edit.js +2 -0
- package/build/heading/edit.js.map +1 -1
- package/build/heading/index.js +3 -0
- package/build/heading/index.js.map +1 -1
- package/build/image/image.js +6 -1
- package/build/image/image.js.map +1 -1
- package/build/image/transforms.js +4 -0
- package/build/image/transforms.js.map +1 -1
- package/build/image/view.js +1 -1
- package/build/image/view.js.map +1 -1
- package/build/latest-posts/edit.js +38 -11
- package/build/latest-posts/edit.js.map +1 -1
- package/build/list/index.js +10 -1
- package/build/list/index.js.map +1 -1
- package/build/list/ordered-list-settings.js +19 -17
- package/build/list/ordered-list-settings.js.map +1 -1
- package/build/list-item/index.js +11 -3
- package/build/list-item/index.js.map +1 -1
- package/build/loginout/index.js +14 -1
- package/build/loginout/index.js.map +1 -1
- package/build/media-text/edit.js +0 -1
- package/build/media-text/edit.js.map +1 -1
- package/build/missing/edit.js +10 -19
- package/build/missing/edit.js.map +1 -1
- package/build/navigation/edit/index.js +8 -8
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/navigation-menu-name-control.js +1 -0
- package/build/navigation/edit/navigation-menu-name-control.js.map +1 -1
- package/build/navigation/edit/overlay-menu-preview.js +2 -0
- package/build/navigation/edit/overlay-menu-preview.js.map +1 -1
- package/build/post-author/edit.js +60 -53
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author/index.js +13 -0
- package/build/post-author/index.js.map +1 -1
- package/build/post-author-biography/index.js +14 -1
- package/build/post-author-biography/index.js.map +1 -1
- package/build/post-author-name/index.js +14 -1
- package/build/post-author-name/index.js.map +1 -1
- package/build/post-comment/edit.js +2 -0
- package/build/post-comment/edit.js.map +1 -1
- package/build/post-comments-form/index.js +12 -0
- package/build/post-comments-form/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/index.js +12 -0
- package/build/post-date/index.js.map +1 -1
- package/build/post-excerpt/edit.js +1 -0
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-excerpt/index.js +12 -0
- package/build/post-excerpt/index.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +9 -2
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +1 -0
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-navigation-link/edit.js +7 -2
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-terms/edit.js +1 -0
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-terms/index.js +12 -0
- package/build/post-terms/index.js.map +1 -1
- package/build/post-time-to-read/index.js +6 -0
- package/build/post-time-to-read/index.js.map +1 -1
- package/build/post-title/edit.js +5 -2
- package/build/post-title/edit.js.map +1 -1
- package/build/post-title/index.js +15 -0
- package/build/post-title/index.js.map +1 -1
- package/build/preformatted/index.js +12 -0
- package/build/preformatted/index.js.map +1 -1
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js +1 -0
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +69 -9
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/offset-controls.js +37 -0
- package/build/query/edit/inspector-controls/offset-controls.js.map +1 -0
- package/build/query/edit/inspector-controls/pages-control.js +36 -0
- package/build/query/edit/inspector-controls/pages-control.js.map +1 -0
- package/build/query/edit/inspector-controls/parent-control.js +1 -0
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build/query/edit/inspector-controls/per-page-control.js +40 -0
- package/build/query/edit/inspector-controls/per-page-control.js.map +1 -0
- package/build/query/edit/inspector-controls/sticky-control.js +1 -1
- package/build/query/edit/inspector-controls/sticky-control.js.map +1 -1
- package/build/query/edit/query-content.js +1 -1
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/edit/query-toolbar.js +3 -76
- package/build/query/edit/query-toolbar.js.map +1 -1
- package/build/query/utils.js +10 -5
- package/build/query/utils.js.map +1 -1
- package/build/query-pagination/query-pagination-arrow-controls.js +1 -0
- package/build/query-pagination/query-pagination-arrow-controls.js.map +1 -1
- package/build/query-pagination-numbers/edit.js +1 -0
- package/build/query-pagination-numbers/edit.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 +15 -0
- package/build/query-title/index.js.map +1 -1
- package/build/quote/index.js +1 -0
- package/build/quote/index.js.map +1 -1
- package/build/quote/transforms.js +4 -0
- package/build/quote/transforms.js.map +1 -1
- package/build/search/edit.js +9 -5
- package/build/search/edit.js.map +1 -1
- package/build/site-logo/edit.js +15 -8
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-tagline/edit.js +3 -3
- package/build/site-tagline/edit.js.map +1 -1
- package/build/site-tagline/index.js +12 -1
- package/build/site-tagline/index.js.map +1 -1
- package/build/site-title/edit.js +2 -2
- package/build/site-title/edit.js.map +1 -1
- package/build/site-title/index.js +10 -0
- package/build/site-title/index.js.map +1 -1
- package/build/social-link/edit.js +2 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/spacer/controls.js +8 -13
- package/build/spacer/controls.js.map +1 -1
- package/build/table/edit.js +6 -5
- package/build/table/edit.js.map +1 -1
- package/build/table-of-contents/index.js +14 -1
- package/build/table-of-contents/index.js.map +1 -1
- package/build/tag-cloud/edit.js +69 -52
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/tag-cloud/index.js +13 -1
- package/build/tag-cloud/index.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +2 -0
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/index.js +7 -6
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/inner-blocks.js +6 -4
- package/build/template-part/edit/inner-blocks.js.map +1 -1
- package/build/video/edit-common-settings.js +1 -0
- package/build/video/edit-common-settings.js.map +1 -1
- package/build/video/edit.js +1 -1
- package/build/video/edit.js.map +1 -1
- package/build/video/tracks-editor.js +3 -0
- package/build/video/tracks-editor.js.map +1 -1
- package/build/video/transforms.js +4 -0
- package/build/video/transforms.js.map +1 -1
- package/build-module/archives/edit.js +1 -0
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/audio/edit.js +1 -0
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/avatar/edit.js +1 -0
- package/build-module/avatar/edit.js.map +1 -1
- package/build-module/avatar/user-control.js +1 -0
- package/build-module/avatar/user-control.js.map +1 -1
- package/build-module/button/edit.js +1 -0
- package/build-module/button/edit.js.map +1 -1
- package/build-module/categories/index.js +12 -0
- package/build-module/categories/index.js.map +1 -1
- package/build-module/column/edit.js +2 -2
- package/build-module/column/edit.js.map +1 -1
- package/build-module/column/index.js +2 -0
- package/build-module/column/index.js.map +1 -1
- package/build-module/comment-author-name/index.js +14 -1
- package/build-module/comment-author-name/index.js.map +1 -1
- package/build-module/comment-content/index.js +14 -1
- package/build-module/comment-content/index.js.map +1 -1
- package/build-module/comment-date/index.js +14 -1
- package/build-module/comment-date/index.js.map +1 -1
- package/build-module/comment-template/index.js +12 -0
- package/build-module/comment-template/index.js.map +1 -1
- package/build-module/comments-pagination/comments-pagination-arrow-controls.js +1 -0
- package/build-module/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
- package/build-module/comments-title/deprecated.js +3 -0
- package/build-module/comments-title/deprecated.js.map +1 -1
- package/build-module/comments-title/edit.js +3 -1
- package/build-module/comments-title/edit.js.map +1 -1
- package/build-module/comments-title/index.js +3 -0
- package/build-module/comments-title/index.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +0 -1
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/details/edit.js +1 -0
- package/build-module/details/edit.js.map +1 -1
- package/build-module/embed/edit.js +13 -5
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/embed-placeholder.js +7 -4
- package/build-module/embed/embed-placeholder.js.map +1 -1
- package/build-module/embed/embed-preview.js +5 -19
- package/build-module/embed/embed-preview.js.map +1 -1
- package/build-module/file/index.js +12 -0
- package/build-module/file/index.js.map +1 -1
- package/build-module/file/inspector.js +1 -0
- package/build-module/file/inspector.js.map +1 -1
- package/build-module/form/edit.js +6 -4
- package/build-module/form/edit.js.map +1 -1
- package/build-module/form-input/edit.js +2 -0
- package/build-module/form-input/edit.js.map +1 -1
- package/build-module/gallery/edit.js +45 -15
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.native.js +4 -1
- package/build-module/gallery/gallery.native.js.map +1 -1
- package/build-module/gallery/gap-styles.js +1 -9
- package/build-module/gallery/gap-styles.js.map +1 -1
- package/build-module/gallery/use-image-sizes.js +2 -2
- package/build-module/gallery/use-image-sizes.js.map +1 -1
- package/build-module/group/edit.js +1 -1
- package/build-module/group/edit.js.map +1 -1
- package/build-module/group/index.js +27 -30
- package/build-module/group/index.js.map +1 -1
- package/build-module/group/variations.js +51 -3
- package/build-module/group/variations.js.map +1 -1
- package/build-module/heading/edit.js +2 -0
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/index.js +3 -0
- package/build-module/heading/index.js.map +1 -1
- package/build-module/image/image.js +7 -2
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/transforms.js +5 -1
- package/build-module/image/transforms.js.map +1 -1
- package/build-module/image/view.js +1 -1
- package/build-module/image/view.js.map +1 -1
- package/build-module/latest-posts/edit.js +41 -14
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/list/index.js +10 -1
- package/build-module/list/index.js.map +1 -1
- package/build-module/list/ordered-list-settings.js +19 -17
- package/build-module/list/ordered-list-settings.js.map +1 -1
- package/build-module/list-item/index.js +11 -3
- package/build-module/list-item/index.js.map +1 -1
- package/build-module/loginout/index.js +14 -1
- package/build-module/loginout/index.js.map +1 -1
- package/build-module/media-text/edit.js +0 -1
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/missing/edit.js +10 -19
- package/build-module/missing/edit.js.map +1 -1
- package/build-module/navigation/edit/index.js +8 -8
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-name-control.js +1 -0
- package/build-module/navigation/edit/navigation-menu-name-control.js.map +1 -1
- package/build-module/navigation/edit/overlay-menu-preview.js +2 -0
- package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
- package/build-module/post-author/edit.js +61 -54
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author/index.js +13 -0
- package/build-module/post-author/index.js.map +1 -1
- package/build-module/post-author-biography/index.js +14 -1
- package/build-module/post-author-biography/index.js.map +1 -1
- package/build-module/post-author-name/index.js +14 -1
- package/build-module/post-author-name/index.js.map +1 -1
- package/build-module/post-comment/edit.js +2 -0
- package/build-module/post-comment/edit.js.map +1 -1
- package/build-module/post-comments-form/index.js +12 -0
- package/build-module/post-comments-form/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/index.js +12 -0
- package/build-module/post-date/index.js.map +1 -1
- package/build-module/post-excerpt/edit.js +1 -0
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-excerpt/index.js +12 -0
- package/build-module/post-excerpt/index.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +9 -2
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +1 -0
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +7 -2
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +1 -0
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-terms/index.js +12 -0
- package/build-module/post-terms/index.js.map +1 -1
- package/build-module/post-time-to-read/index.js +6 -0
- package/build-module/post-time-to-read/index.js.map +1 -1
- package/build-module/post-title/edit.js +5 -2
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/post-title/index.js +15 -0
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/preformatted/index.js +12 -0
- package/build-module/preformatted/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +1 -0
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +71 -11
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/offset-controls.js +29 -0
- package/build-module/query/edit/inspector-controls/offset-controls.js.map +1 -0
- package/build-module/query/edit/inspector-controls/pages-control.js +28 -0
- package/build-module/query/edit/inspector-controls/pages-control.js.map +1 -0
- package/build-module/query/edit/inspector-controls/parent-control.js +1 -0
- package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/per-page-control.js +33 -0
- package/build-module/query/edit/inspector-controls/per-page-control.js.map +1 -0
- package/build-module/query/edit/inspector-controls/sticky-control.js +1 -1
- package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -1
- package/build-module/query/edit/query-content.js +1 -1
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/edit/query-toolbar.js +4 -78
- package/build-module/query/edit/query-toolbar.js.map +1 -1
- package/build-module/query/utils.js +10 -5
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query-pagination/query-pagination-arrow-controls.js +1 -0
- package/build-module/query-pagination/query-pagination-arrow-controls.js.map +1 -1
- package/build-module/query-pagination-numbers/edit.js +1 -0
- package/build-module/query-pagination-numbers/edit.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 +15 -0
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/quote/index.js +1 -0
- package/build-module/quote/index.js.map +1 -1
- package/build-module/quote/transforms.js +4 -0
- package/build-module/quote/transforms.js.map +1 -1
- package/build-module/search/edit.js +10 -6
- package/build-module/search/edit.js.map +1 -1
- package/build-module/site-logo/edit.js +15 -8
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-tagline/edit.js +3 -3
- package/build-module/site-tagline/edit.js.map +1 -1
- package/build-module/site-tagline/index.js +12 -1
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/site-title/edit.js +2 -2
- package/build-module/site-title/edit.js.map +1 -1
- package/build-module/site-title/index.js +10 -0
- package/build-module/site-title/index.js.map +1 -1
- package/build-module/social-link/edit.js +2 -1
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/spacer/controls.js +9 -14
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/table/edit.js +6 -5
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table-of-contents/index.js +14 -1
- package/build-module/table-of-contents/index.js.map +1 -1
- package/build-module/tag-cloud/edit.js +70 -53
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/tag-cloud/index.js +13 -1
- package/build-module/tag-cloud/index.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +2 -0
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/index.js +7 -6
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/inner-blocks.js +6 -4
- package/build-module/template-part/edit/inner-blocks.js.map +1 -1
- package/build-module/video/edit-common-settings.js +1 -0
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-module/video/edit.js +1 -1
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/tracks-editor.js +3 -0
- package/build-module/video/tracks-editor.js.map +1 -1
- package/build-module/video/transforms.js +5 -1
- package/build-module/video/transforms.js.map +1 -1
- package/build-style/archives/editor-rtl.css +5 -2
- package/build-style/archives/editor.css +5 -2
- package/build-style/archives/style-rtl.css +5 -2
- package/build-style/archives/style.css +5 -2
- package/build-style/audio/editor-rtl.css +5 -2
- package/build-style/audio/editor.css +5 -2
- package/build-style/audio/style-rtl.css +5 -2
- package/build-style/audio/style.css +5 -2
- package/build-style/audio/theme-rtl.css +5 -2
- package/build-style/audio/theme.css +5 -2
- package/build-style/avatar/editor-rtl.css +5 -2
- package/build-style/avatar/editor.css +5 -2
- package/build-style/avatar/style-rtl.css +5 -2
- package/build-style/avatar/style.css +5 -2
- package/build-style/button/editor-rtl.css +5 -2
- package/build-style/button/editor.css +5 -2
- package/build-style/button/style-rtl.css +5 -2
- package/build-style/button/style.css +5 -2
- package/build-style/buttons/editor-rtl.css +5 -2
- package/build-style/buttons/editor.css +5 -2
- package/build-style/buttons/style-rtl.css +5 -2
- package/build-style/buttons/style.css +5 -2
- package/build-style/calendar/style-rtl.css +5 -2
- package/build-style/calendar/style.css +5 -2
- package/build-style/categories/editor-rtl.css +5 -2
- package/build-style/categories/editor.css +5 -2
- package/build-style/categories/style-rtl.css +5 -2
- package/build-style/categories/style.css +5 -2
- package/build-style/classic-rtl.css +5 -2
- package/build-style/classic.css +5 -2
- package/build-style/code/editor-rtl.css +5 -2
- package/build-style/code/editor.css +5 -2
- package/build-style/code/style-rtl.css +5 -2
- package/build-style/code/style.css +5 -2
- package/build-style/code/theme-rtl.css +5 -2
- package/build-style/code/theme.css +5 -2
- package/build-style/columns/editor-rtl.css +5 -2
- package/build-style/columns/editor.css +5 -2
- package/build-style/columns/style-rtl.css +5 -2
- package/build-style/columns/style.css +5 -2
- package/build-style/comment-author-avatar/editor-rtl.css +5 -2
- package/build-style/comment-author-avatar/editor.css +5 -2
- package/build-style/comment-author-name/style-rtl.css +94 -0
- package/build-style/comment-author-name/style.css +94 -0
- package/build-style/comment-content/style-rtl.css +9 -2
- package/build-style/comment-content/style.css +9 -2
- package/build-style/comment-date/style-rtl.css +94 -0
- package/build-style/comment-date/style.css +94 -0
- package/build-style/comment-template/style-rtl.css +5 -2
- package/build-style/comment-template/style.css +5 -2
- package/build-style/comments/editor-rtl.css +5 -2
- package/build-style/comments/editor.css +5 -2
- package/build-style/comments/style-rtl.css +5 -2
- package/build-style/comments/style.css +5 -2
- package/build-style/comments-pagination/editor-rtl.css +5 -2
- package/build-style/comments-pagination/editor.css +5 -2
- package/build-style/comments-pagination/style-rtl.css +5 -2
- package/build-style/comments-pagination/style.css +5 -2
- package/build-style/comments-pagination-numbers/editor-rtl.css +5 -2
- package/build-style/comments-pagination-numbers/editor.css +5 -2
- package/build-style/comments-title/editor-rtl.css +5 -2
- package/build-style/comments-title/editor.css +5 -2
- package/build-style/common-rtl.css +5 -2
- package/build-style/common.css +5 -2
- package/build-style/cover/editor-rtl.css +5 -2
- package/build-style/cover/editor.css +5 -2
- package/build-style/cover/style-rtl.css +5 -2
- package/build-style/cover/style.css +5 -2
- package/build-style/details/editor-rtl.css +5 -2
- package/build-style/details/editor.css +5 -2
- package/build-style/details/style-rtl.css +5 -2
- package/build-style/details/style.css +5 -2
- package/build-style/editor-elements-rtl.css +5 -2
- package/build-style/editor-elements.css +5 -2
- package/build-style/editor-rtl.css +47 -45
- package/build-style/editor.css +47 -45
- package/build-style/elements-rtl.css +5 -2
- package/build-style/elements.css +5 -2
- package/build-style/embed/editor-rtl.css +8 -2
- package/build-style/embed/editor.css +8 -2
- package/build-style/embed/style-rtl.css +5 -2
- package/build-style/embed/style.css +5 -2
- package/build-style/embed/theme-rtl.css +5 -2
- package/build-style/embed/theme.css +5 -2
- package/build-style/file/editor-rtl.css +5 -2
- package/build-style/file/editor.css +5 -2
- package/build-style/file/style-rtl.css +5 -2
- package/build-style/file/style.css +5 -2
- package/build-style/footnotes/style-rtl.css +5 -2
- package/build-style/footnotes/style.css +5 -2
- package/build-style/form-input/editor-rtl.css +5 -2
- package/build-style/form-input/editor.css +5 -2
- package/build-style/form-input/style-rtl.css +6 -2
- package/build-style/form-input/style.css +6 -2
- package/build-style/form-submission-notification/editor-rtl.css +5 -2
- package/build-style/form-submission-notification/editor.css +5 -2
- package/build-style/form-submit-button/style-rtl.css +5 -2
- package/build-style/form-submit-button/style.css +5 -2
- package/build-style/freeform/editor-rtl.css +5 -2
- package/build-style/freeform/editor.css +5 -2
- package/build-style/gallery/editor-rtl.css +5 -3
- package/build-style/gallery/editor.css +5 -3
- package/build-style/gallery/style-rtl.css +29 -9
- package/build-style/gallery/style.css +29 -9
- package/build-style/gallery/theme-rtl.css +5 -2
- package/build-style/gallery/theme.css +5 -2
- package/build-style/group/editor-rtl.css +5 -13
- package/build-style/group/editor.css +5 -13
- package/build-style/group/style-rtl.css +5 -2
- package/build-style/group/style.css +5 -2
- package/build-style/group/theme-rtl.css +5 -2
- package/build-style/group/theme.css +5 -2
- package/build-style/heading/style-rtl.css +5 -2
- package/build-style/heading/style.css +5 -2
- package/build-style/html/editor-rtl.css +5 -2
- package/build-style/html/editor.css +5 -2
- package/build-style/image/editor-rtl.css +13 -2
- package/build-style/image/editor.css +13 -2
- package/build-style/image/style-rtl.css +5 -2
- package/build-style/image/style.css +5 -2
- package/build-style/image/theme-rtl.css +5 -2
- package/build-style/image/theme.css +5 -2
- package/build-style/latest-comments/style-rtl.css +5 -2
- package/build-style/latest-comments/style.css +5 -2
- package/build-style/latest-posts/editor-rtl.css +12 -9
- package/build-style/latest-posts/editor.css +12 -9
- package/build-style/latest-posts/style-rtl.css +5 -2
- package/build-style/latest-posts/style.css +5 -2
- package/build-style/list/style-rtl.css +5 -2
- package/build-style/list/style.css +5 -2
- package/build-style/loginout/style-rtl.css +94 -0
- package/build-style/loginout/style.css +94 -0
- package/build-style/media-text/editor-rtl.css +5 -2
- package/build-style/media-text/editor.css +5 -2
- package/build-style/media-text/style-rtl.css +5 -2
- package/build-style/media-text/style.css +5 -2
- package/build-style/more/editor-rtl.css +5 -2
- package/build-style/more/editor.css +5 -2
- package/build-style/navigation/editor-rtl.css +9 -14
- package/build-style/navigation/editor.css +9 -14
- package/build-style/navigation/style-rtl.css +5 -2
- package/build-style/navigation/style.css +5 -2
- package/build-style/navigation-link/editor-rtl.css +5 -5
- package/build-style/navigation-link/editor.css +5 -5
- package/build-style/navigation-link/style-rtl.css +5 -2
- package/build-style/navigation-link/style.css +5 -2
- package/build-style/navigation-submenu/editor-rtl.css +5 -2
- package/build-style/navigation-submenu/editor.css +5 -2
- package/build-style/nextpage/editor-rtl.css +5 -2
- package/build-style/nextpage/editor.css +5 -2
- package/build-style/page-list/editor-rtl.css +5 -2
- package/build-style/page-list/editor.css +5 -2
- package/build-style/page-list/style-rtl.css +5 -2
- package/build-style/page-list/style.css +5 -2
- package/build-style/paragraph/editor-rtl.css +5 -2
- package/build-style/paragraph/editor.css +5 -2
- package/build-style/paragraph/style-rtl.css +5 -2
- package/build-style/paragraph/style.css +5 -2
- package/build-style/post-author/editor-rtl.css +95 -0
- package/build-style/post-author/editor.css +95 -0
- package/build-style/post-author/style-rtl.css +6 -2
- package/build-style/post-author/style.css +6 -2
- package/build-style/post-author-biography/style-rtl.css +94 -0
- package/build-style/post-author-biography/style.css +94 -0
- package/build-style/post-author-name/style-rtl.css +94 -0
- package/build-style/post-author-name/style.css +94 -0
- package/build-style/post-comments-form/editor-rtl.css +5 -2
- package/build-style/post-comments-form/editor.css +5 -2
- package/build-style/post-comments-form/style-rtl.css +5 -2
- package/build-style/post-comments-form/style.css +5 -2
- package/build-style/post-content/editor-rtl.css +5 -2
- package/build-style/post-content/editor.css +5 -2
- package/build-style/post-content/style-rtl.css +96 -0
- package/build-style/post-content/style.css +96 -0
- package/build-style/post-date/style-rtl.css +5 -2
- package/build-style/post-date/style.css +5 -2
- package/build-style/post-excerpt/editor-rtl.css +5 -2
- package/build-style/post-excerpt/editor.css +5 -2
- package/build-style/post-excerpt/style-rtl.css +6 -2
- package/build-style/post-excerpt/style.css +6 -2
- package/build-style/post-featured-image/editor-rtl.css +5 -2
- package/build-style/post-featured-image/editor.css +5 -2
- package/build-style/post-featured-image/style-rtl.css +5 -2
- package/build-style/post-featured-image/style.css +5 -2
- package/build-style/post-navigation-link/style-rtl.css +5 -2
- package/build-style/post-navigation-link/style.css +5 -2
- package/build-style/post-template/editor-rtl.css +5 -2
- package/build-style/post-template/editor.css +5 -2
- package/build-style/post-template/style-rtl.css +5 -2
- package/build-style/post-template/style.css +5 -2
- package/build-style/post-terms/style-rtl.css +5 -2
- package/build-style/post-terms/style.css +5 -2
- package/build-style/post-time-to-read/style-rtl.css +5 -2
- package/build-style/post-time-to-read/style.css +5 -2
- package/build-style/post-title/style-rtl.css +5 -2
- package/build-style/post-title/style.css +5 -2
- package/build-style/preformatted/style-rtl.css +5 -2
- package/build-style/preformatted/style.css +5 -2
- package/build-style/pullquote/editor-rtl.css +5 -2
- package/build-style/pullquote/editor.css +5 -2
- package/build-style/pullquote/style-rtl.css +5 -2
- package/build-style/pullquote/style.css +5 -2
- package/build-style/pullquote/theme-rtl.css +5 -2
- package/build-style/pullquote/theme.css +5 -2
- package/build-style/query/editor-rtl.css +5 -2
- package/build-style/query/editor.css +5 -2
- package/build-style/query-pagination/editor-rtl.css +5 -2
- package/build-style/query-pagination/editor.css +5 -2
- package/build-style/query-pagination/style-rtl.css +5 -2
- package/build-style/query-pagination/style.css +5 -2
- package/build-style/query-pagination-numbers/editor-rtl.css +5 -2
- package/build-style/query-pagination-numbers/editor.css +5 -2
- package/build-style/query-title/style-rtl.css +5 -2
- package/build-style/query-title/style.css +5 -2
- package/build-style/quote/style-rtl.css +5 -2
- package/build-style/quote/style.css +5 -2
- package/build-style/quote/theme-rtl.css +8 -5
- package/build-style/quote/theme.css +8 -5
- package/build-style/read-more/style-rtl.css +5 -2
- package/build-style/read-more/style.css +5 -2
- package/build-style/reset-rtl.css +5 -2
- package/build-style/reset.css +5 -2
- package/build-style/rss/editor-rtl.css +5 -2
- package/build-style/rss/editor.css +5 -2
- package/build-style/rss/style-rtl.css +5 -2
- package/build-style/rss/style.css +5 -2
- package/build-style/search/editor-rtl.css +8 -4
- package/build-style/search/editor.css +8 -4
- package/build-style/search/style-rtl.css +5 -2
- package/build-style/search/style.css +5 -2
- package/build-style/search/theme-rtl.css +5 -2
- package/build-style/search/theme.css +5 -2
- package/build-style/separator/editor-rtl.css +5 -2
- package/build-style/separator/editor.css +5 -2
- package/build-style/separator/style-rtl.css +5 -2
- package/build-style/separator/style.css +5 -2
- package/build-style/separator/theme-rtl.css +5 -2
- package/build-style/separator/theme.css +5 -2
- package/build-style/shortcode/editor-rtl.css +5 -2
- package/build-style/shortcode/editor.css +5 -2
- package/build-style/site-logo/editor-rtl.css +5 -2
- package/build-style/site-logo/editor.css +5 -2
- package/build-style/site-logo/style-rtl.css +5 -2
- package/build-style/site-logo/style.css +5 -2
- package/build-style/site-tagline/editor-rtl.css +5 -2
- package/build-style/site-tagline/editor.css +5 -2
- package/build-style/site-tagline/style-rtl.css +94 -0
- package/build-style/site-tagline/style.css +94 -0
- package/build-style/site-title/editor-rtl.css +5 -2
- package/build-style/site-title/editor.css +5 -2
- package/build-style/site-title/style-rtl.css +9 -3
- package/build-style/site-title/style.css +9 -3
- package/build-style/social-link/editor-rtl.css +5 -2
- package/build-style/social-link/editor.css +5 -2
- package/build-style/social-links/editor-rtl.css +5 -2
- package/build-style/social-links/editor.css +5 -2
- package/build-style/social-links/style-rtl.css +5 -2
- package/build-style/social-links/style.css +5 -2
- package/build-style/spacer/editor-rtl.css +5 -2
- package/build-style/spacer/editor.css +5 -2
- package/build-style/spacer/style-rtl.css +5 -2
- package/build-style/spacer/style.css +5 -2
- package/build-style/style-rtl.css +80 -10
- package/build-style/style.css +80 -10
- package/build-style/table/editor-rtl.css +5 -2
- package/build-style/table/editor.css +5 -2
- package/build-style/table/style-rtl.css +5 -2
- package/build-style/table/style.css +5 -2
- package/build-style/table/theme-rtl.css +5 -2
- package/build-style/table/theme.css +5 -2
- package/build-style/table-of-contents/style-rtl.css +94 -0
- package/build-style/table-of-contents/style.css +94 -0
- package/build-style/tag-cloud/editor-rtl.css +102 -0
- package/build-style/tag-cloud/editor.css +102 -0
- package/build-style/tag-cloud/style-rtl.css +5 -2
- package/build-style/tag-cloud/style.css +5 -2
- package/build-style/template-part/editor-rtl.css +5 -6
- package/build-style/template-part/editor.css +5 -6
- package/build-style/template-part/theme-rtl.css +5 -2
- package/build-style/template-part/theme.css +5 -2
- package/build-style/term-description/style-rtl.css +5 -2
- package/build-style/term-description/style.css +5 -2
- package/build-style/text-columns/editor-rtl.css +5 -2
- package/build-style/text-columns/editor.css +5 -2
- package/build-style/text-columns/style-rtl.css +5 -2
- package/build-style/text-columns/style.css +5 -2
- package/build-style/theme-rtl.css +8 -5
- package/build-style/theme.css +8 -5
- package/build-style/verse/style-rtl.css +5 -2
- package/build-style/verse/style.css +5 -2
- package/build-style/video/editor-rtl.css +5 -5
- package/build-style/video/editor.css +5 -5
- package/build-style/video/style-rtl.css +5 -2
- package/build-style/video/style.css +5 -2
- package/build-style/video/theme-rtl.css +5 -2
- package/build-style/video/theme.css +5 -2
- package/package.json +35 -35
- package/src/archives/edit.js +1 -0
- package/src/audio/edit.js +4 -3
- package/src/avatar/edit.js +1 -0
- package/src/avatar/user-control.js +1 -0
- package/src/button/edit.js +1 -0
- package/src/button/index.php +1 -14
- package/src/categories/block.json +12 -0
- package/src/column/block.json +2 -0
- package/src/column/edit.js +2 -2
- package/src/comment-author-name/block.json +14 -1
- package/src/comment-author-name/style.scss +4 -0
- package/src/comment-content/block.json +14 -1
- package/src/comment-content/style.scss +5 -0
- package/src/comment-date/block.json +14 -1
- package/src/comment-date/style.scss +4 -0
- package/src/comment-template/block.json +12 -0
- package/src/comments-pagination/comments-pagination-arrow-controls.js +1 -0
- package/src/comments-title/block.json +3 -0
- package/src/comments-title/edit.js +8 -1
- package/src/cover/edit/inspector-controls.js +0 -1
- package/src/details/edit.js +1 -0
- package/src/editor.scss +2 -0
- package/src/embed/edit.js +10 -1
- package/src/embed/editor.scss +4 -0
- package/src/embed/embed-placeholder.js +7 -4
- package/src/embed/embed-preview.js +3 -37
- package/src/file/block.json +12 -0
- package/src/file/inspector.js +1 -0
- package/src/form/edit.js +5 -2
- package/src/form-input/edit.js +2 -0
- package/src/form-input/style.scss +1 -0
- package/src/gallery/edit.js +80 -22
- package/src/gallery/editor.scss +1 -2
- package/src/gallery/gallery.native.js +2 -1
- package/src/gallery/gap-styles.js +1 -8
- package/src/gallery/style.scss +33 -7
- package/src/gallery/test/__snapshots__/index.native.js.snap +1 -1
- package/src/gallery/test/index.native.js +5 -5
- package/src/gallery/use-image-sizes.js +2 -2
- package/src/group/edit.js +1 -1
- package/src/group/editor.scss +1 -1
- package/src/group/index.js +26 -29
- package/src/group/variations.js +56 -0
- package/src/heading/block.json +3 -0
- package/src/heading/edit.js +3 -1
- package/src/image/editor.scss +12 -0
- package/src/image/image.js +7 -1
- package/src/image/transforms.js +7 -1
- package/src/image/view.js +1 -1
- package/src/latest-posts/edit.js +61 -17
- package/src/latest-posts/editor.scss +11 -10
- package/src/list/block.json +10 -1
- package/src/list/ordered-list-settings.js +20 -18
- package/src/list/test/edit.native.js +1 -3
- package/src/list-item/block.json +11 -3
- package/src/loginout/block.json +14 -1
- package/src/loginout/style.scss +4 -0
- package/src/media-text/edit.js +0 -1
- package/src/media-text/style.native.scss +2 -0
- package/src/missing/edit.js +12 -18
- package/src/navigation/edit/index.js +8 -8
- package/src/navigation/edit/navigation-menu-name-control.js +1 -0
- package/src/navigation/edit/overlay-menu-preview.js +2 -0
- package/src/navigation/editor.scss +5 -1
- package/src/navigation/index.php +10 -27
- package/src/navigation-link/editor.scss +0 -3
- package/src/post-author/block.json +13 -0
- package/src/post-author/edit.js +68 -57
- package/src/post-author/editor.scss +7 -0
- package/src/post-author/style.scss +1 -0
- package/src/post-author-biography/block.json +14 -1
- package/src/post-author-biography/style.scss +4 -0
- package/src/post-author-name/block.json +14 -1
- package/src/post-author-name/style.scss +4 -0
- package/src/post-comment/edit.js +2 -0
- package/src/post-comments-form/block.json +12 -0
- package/src/post-content/block.json +1 -0
- package/src/post-content/style.scss +5 -0
- package/src/post-date/block.json +12 -0
- package/src/post-excerpt/block.json +12 -0
- package/src/post-excerpt/edit.js +1 -0
- package/src/post-excerpt/style.scss +3 -0
- package/src/post-featured-image/dimension-controls.js +5 -0
- package/src/post-featured-image/edit.js +1 -0
- package/src/post-navigation-link/edit.js +8 -2
- package/src/post-terms/block.json +12 -0
- package/src/post-terms/edit.js +1 -0
- package/src/post-time-to-read/block.json +6 -0
- package/src/post-title/block.json +15 -0
- package/src/post-title/edit.js +5 -3
- package/src/preformatted/block.json +12 -0
- package/src/query/edit/inspector-controls/enhanced-pagination-control.js +1 -0
- package/src/query/edit/inspector-controls/index.js +85 -12
- package/src/query/edit/inspector-controls/offset-controls.js +31 -0
- package/src/query/edit/inspector-controls/pages-control.js +27 -0
- package/src/query/edit/inspector-controls/parent-control.js +1 -0
- package/src/query/edit/inspector-controls/per-page-control.js +33 -0
- package/src/query/edit/inspector-controls/sticky-control.js +1 -1
- package/src/query/edit/query-content.js +1 -1
- package/src/query/edit/query-toolbar.js +1 -90
- package/src/query/utils.js +9 -5
- package/src/query-pagination/query-pagination-arrow-controls.js +1 -0
- package/src/query-pagination-numbers/edit.js +1 -0
- package/src/query-title/block.json +15 -0
- package/src/query-title/edit.js +9 -1
- package/src/quote/block.json +1 -0
- package/src/quote/test/transforms.native.js +1 -1
- package/src/quote/theme.scss +5 -3
- package/src/quote/transforms.js +11 -2
- package/src/search/edit.js +9 -9
- package/src/search/editor.scss +5 -2
- package/src/site-logo/edit.js +23 -9
- package/src/site-tagline/block.json +12 -1
- package/src/site-tagline/edit.js +2 -4
- package/src/site-tagline/style.scss +4 -0
- package/src/site-title/block.json +10 -0
- package/src/site-title/edit.js +2 -4
- package/src/site-title/style.scss +7 -2
- package/src/social-link/edit.js +2 -1
- package/src/spacer/controls.js +10 -13
- package/src/style.scss +9 -0
- package/src/table/edit.js +5 -4
- package/src/table-of-contents/block.json +14 -1
- package/src/table-of-contents/style.scss +4 -0
- package/src/tag-cloud/block.json +13 -1
- package/src/tag-cloud/edit.js +80 -56
- package/src/tag-cloud/editor.scss +19 -0
- package/src/template-part/edit/advanced-controls.js +2 -0
- package/src/template-part/edit/index.js +10 -7
- package/src/template-part/edit/inner-blocks.js +6 -4
- package/src/template-part/editor.scss +0 -5
- package/src/video/edit-common-settings.js +1 -0
- package/src/video/edit.js +2 -2
- package/src/video/editor.scss +0 -4
- package/src/video/tracks-editor.js +3 -0
- package/src/video/transforms.js +5 -1
|
@@ -10,6 +10,51 @@ var _icons = require("@wordpress/icons");
|
|
|
10
10
|
* WordPress dependencies
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
|
+
const example = {
|
|
14
|
+
innerBlocks: [{
|
|
15
|
+
name: 'core/paragraph',
|
|
16
|
+
attributes: {
|
|
17
|
+
customTextColor: '#cf2e2e',
|
|
18
|
+
fontSize: 'large',
|
|
19
|
+
content: (0, _i18n.__)('One.')
|
|
20
|
+
}
|
|
21
|
+
}, {
|
|
22
|
+
name: 'core/paragraph',
|
|
23
|
+
attributes: {
|
|
24
|
+
customTextColor: '#ff6900',
|
|
25
|
+
fontSize: 'large',
|
|
26
|
+
content: (0, _i18n.__)('Two.')
|
|
27
|
+
}
|
|
28
|
+
}, {
|
|
29
|
+
name: 'core/paragraph',
|
|
30
|
+
attributes: {
|
|
31
|
+
customTextColor: '#fcb900',
|
|
32
|
+
fontSize: 'large',
|
|
33
|
+
content: (0, _i18n.__)('Three.')
|
|
34
|
+
}
|
|
35
|
+
}, {
|
|
36
|
+
name: 'core/paragraph',
|
|
37
|
+
attributes: {
|
|
38
|
+
customTextColor: '#00d084',
|
|
39
|
+
fontSize: 'large',
|
|
40
|
+
content: (0, _i18n.__)('Four.')
|
|
41
|
+
}
|
|
42
|
+
}, {
|
|
43
|
+
name: 'core/paragraph',
|
|
44
|
+
attributes: {
|
|
45
|
+
customTextColor: '#0693e3',
|
|
46
|
+
fontSize: 'large',
|
|
47
|
+
content: (0, _i18n.__)('Five.')
|
|
48
|
+
}
|
|
49
|
+
}, {
|
|
50
|
+
name: 'core/paragraph',
|
|
51
|
+
attributes: {
|
|
52
|
+
customTextColor: '#9b51e0',
|
|
53
|
+
fontSize: 'large',
|
|
54
|
+
content: (0, _i18n.__)('Six.')
|
|
55
|
+
}
|
|
56
|
+
}]
|
|
57
|
+
};
|
|
13
58
|
const variations = [{
|
|
14
59
|
name: 'group',
|
|
15
60
|
title: (0, _i18n.__)('Group'),
|
|
@@ -35,7 +80,8 @@ const variations = [{
|
|
|
35
80
|
},
|
|
36
81
|
scope: ['block', 'inserter', 'transform'],
|
|
37
82
|
isActive: blockAttributes => blockAttributes.layout?.type === 'flex' && (!blockAttributes.layout?.orientation || blockAttributes.layout?.orientation === 'horizontal'),
|
|
38
|
-
icon: _icons.row
|
|
83
|
+
icon: _icons.row,
|
|
84
|
+
example
|
|
39
85
|
}, {
|
|
40
86
|
name: 'group-stack',
|
|
41
87
|
title: (0, _i18n.__)('Stack'),
|
|
@@ -48,7 +94,8 @@ const variations = [{
|
|
|
48
94
|
},
|
|
49
95
|
scope: ['block', 'inserter', 'transform'],
|
|
50
96
|
isActive: blockAttributes => blockAttributes.layout?.type === 'flex' && blockAttributes.layout?.orientation === 'vertical',
|
|
51
|
-
icon: _icons.stack
|
|
97
|
+
icon: _icons.stack,
|
|
98
|
+
example
|
|
52
99
|
}, {
|
|
53
100
|
name: 'group-grid',
|
|
54
101
|
title: (0, _i18n.__)('Grid'),
|
|
@@ -60,7 +107,8 @@ const variations = [{
|
|
|
60
107
|
},
|
|
61
108
|
scope: ['block', 'inserter', 'transform'],
|
|
62
109
|
isActive: blockAttributes => blockAttributes.layout?.type === 'grid',
|
|
63
|
-
icon: _icons.grid
|
|
110
|
+
icon: _icons.grid,
|
|
111
|
+
example
|
|
64
112
|
}];
|
|
65
113
|
var _default = exports.default = variations;
|
|
66
114
|
//# sourceMappingURL=variations.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_icons","
|
|
1
|
+
{"version":3,"names":["_i18n","require","_icons","example","innerBlocks","name","attributes","customTextColor","fontSize","content","__","variations","title","description","layout","type","isDefault","scope","isActive","blockAttributes","icon","group","_x","flexWrap","orientation","row","stack","grid","_default","exports","default"],"sources":["@wordpress/block-library/src/group/variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport { group, row, stack, grid } from '@wordpress/icons';\n\nconst example = {\n\tinnerBlocks: [\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#cf2e2e',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'One.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#ff6900',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'Two.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#fcb900',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'Three.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#00d084',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'Four.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#0693e3',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'Five.' ),\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\tname: 'core/paragraph',\n\t\t\tattributes: {\n\t\t\t\tcustomTextColor: '#9b51e0',\n\t\t\t\tfontSize: 'large',\n\t\t\t\tcontent: __( 'Six.' ),\n\t\t\t},\n\t\t},\n\t],\n};\n\nconst variations = [\n\t{\n\t\tname: 'group',\n\t\ttitle: __( 'Group' ),\n\t\tdescription: __( 'Gather blocks in a container.' ),\n\t\tattributes: { layout: { type: 'constrained' } },\n\t\tisDefault: true,\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\t! blockAttributes.layout ||\n\t\t\t! blockAttributes.layout?.type ||\n\t\t\tblockAttributes.layout?.type === 'default' ||\n\t\t\tblockAttributes.layout?.type === 'constrained',\n\t\ticon: group,\n\t},\n\t{\n\t\tname: 'group-row',\n\t\ttitle: _x( 'Row', 'single horizontal line' ),\n\t\tdescription: __( 'Arrange blocks horizontally.' ),\n\t\tattributes: { layout: { type: 'flex', flexWrap: 'nowrap' } },\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'flex' &&\n\t\t\t( ! blockAttributes.layout?.orientation ||\n\t\t\t\tblockAttributes.layout?.orientation === 'horizontal' ),\n\t\ticon: row,\n\t\texample,\n\t},\n\t{\n\t\tname: 'group-stack',\n\t\ttitle: __( 'Stack' ),\n\t\tdescription: __( 'Arrange blocks vertically.' ),\n\t\tattributes: { layout: { type: 'flex', orientation: 'vertical' } },\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'flex' &&\n\t\t\tblockAttributes.layout?.orientation === 'vertical',\n\t\ticon: stack,\n\t\texample,\n\t},\n\t{\n\t\tname: 'group-grid',\n\t\ttitle: __( 'Grid' ),\n\t\tdescription: __( 'Arrange blocks in a grid.' ),\n\t\tattributes: { layout: { type: 'grid' } },\n\t\tscope: [ 'block', 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\tblockAttributes.layout?.type === 'grid',\n\t\ticon: grid,\n\t\texample,\n\t},\n];\n\nexport default variations;\n"],"mappings":"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","ignoreList":[]}
|
package/build/heading/edit.js
CHANGED
|
@@ -36,6 +36,7 @@ function HeadingEdit({
|
|
|
36
36
|
textAlign,
|
|
37
37
|
content,
|
|
38
38
|
level,
|
|
39
|
+
levelOptions,
|
|
39
40
|
placeholder,
|
|
40
41
|
anchor
|
|
41
42
|
} = attributes;
|
|
@@ -95,6 +96,7 @@ function HeadingEdit({
|
|
|
95
96
|
group: "block",
|
|
96
97
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.HeadingLevelDropdown, {
|
|
97
98
|
value: level,
|
|
99
|
+
options: levelOptions,
|
|
98
100
|
onChange: newLevel => setAttributes({
|
|
99
101
|
level: newLevel
|
|
100
102
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_element","_data","_blockEditor","_autogenerateAnchors","_jsxRuntime","HeadingEdit","attributes","setAttributes","mergeBlocks","onReplace","style","clientId","textAlign","content","level","placeholder","anchor","tagName","blockProps","useBlockProps","className","clsx","blockEditingMode","useBlockEditingMode","canGenerateAnchors","useSelect","select","getGlobalBlockCount","getSettings","blockEditorStore","settings","generateAnchors","__unstableMarkNextChangeAsNotPersistent","useDispatch","useEffect","generateAnchor","setAnchor","onContentChange","value","newAttrs","jsxs","Fragment","children","BlockControls","group","jsx","HeadingLevelDropdown","onChange","newLevel","AlignmentControl","nextAlign","RichText","identifier","onMerge","onRemove","__","Platform","isNative","deleteEnter","_default","exports","default"],"sources":["@wordpress/block-library/src/heading/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, Platform } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tHeadingLevelDropdown,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { generateAnchor, setAnchor } from './autogenerate-anchors';\n\nfunction HeadingEdit( {\n\tattributes,\n\tsetAttributes,\n\tmergeBlocks,\n\tonReplace,\n\tstyle,\n\tclientId,\n} ) {\n\tconst { textAlign, content, level, placeholder, anchor }
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_element","_data","_blockEditor","_autogenerateAnchors","_jsxRuntime","HeadingEdit","attributes","setAttributes","mergeBlocks","onReplace","style","clientId","textAlign","content","level","levelOptions","placeholder","anchor","tagName","blockProps","useBlockProps","className","clsx","blockEditingMode","useBlockEditingMode","canGenerateAnchors","useSelect","select","getGlobalBlockCount","getSettings","blockEditorStore","settings","generateAnchors","__unstableMarkNextChangeAsNotPersistent","useDispatch","useEffect","generateAnchor","setAnchor","onContentChange","value","newAttrs","jsxs","Fragment","children","BlockControls","group","jsx","HeadingLevelDropdown","options","onChange","newLevel","AlignmentControl","nextAlign","RichText","identifier","onMerge","onRemove","__","Platform","isNative","deleteEnter","_default","exports","default"],"sources":["@wordpress/block-library/src/heading/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, Platform } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tHeadingLevelDropdown,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { generateAnchor, setAnchor } from './autogenerate-anchors';\n\nfunction HeadingEdit( {\n\tattributes,\n\tsetAttributes,\n\tmergeBlocks,\n\tonReplace,\n\tstyle,\n\tclientId,\n} ) {\n\tconst { textAlign, content, level, levelOptions, placeholder, anchor } =\n\t\tattributes;\n\tconst tagName = 'h' + level;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t\tstyle,\n\t} );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst { canGenerateAnchors } = useSelect( ( select ) => {\n\t\tconst { getGlobalBlockCount, getSettings } = select( blockEditorStore );\n\t\tconst settings = getSettings();\n\n\t\treturn {\n\t\t\tcanGenerateAnchors:\n\t\t\t\t!! settings.generateAnchors ||\n\t\t\t\tgetGlobalBlockCount( 'core/table-of-contents' ) > 0,\n\t\t};\n\t}, [] );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\t// Initially set anchor for headings that have content but no anchor set.\n\t// This is used when transforming a block to heading, or for legacy anchors.\n\tuseEffect( () => {\n\t\tif ( ! canGenerateAnchors ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! anchor && content ) {\n\t\t\t// This side-effect should not create an undo level.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tanchor: generateAnchor( clientId, content ),\n\t\t\t} );\n\t\t}\n\t\tsetAnchor( clientId, anchor );\n\n\t\t// Remove anchor map when block unmounts.\n\t\treturn () => setAnchor( clientId, null );\n\t}, [ anchor, content, clientId, canGenerateAnchors ] );\n\n\tconst onContentChange = ( value ) => {\n\t\tconst newAttrs = { content: value };\n\t\tif (\n\t\t\tcanGenerateAnchors &&\n\t\t\t( ! anchor ||\n\t\t\t\t! value ||\n\t\t\t\tgenerateAnchor( clientId, content ) === anchor )\n\t\t) {\n\t\t\tnewAttrs.anchor = generateAnchor( clientId, value );\n\t\t}\n\t\tsetAttributes( newAttrs );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t{ blockEditingMode === 'default' && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\t\tvalue={ level }\n\t\t\t\t\t\toptions={ levelOptions }\n\t\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<AlignmentControl\n\t\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<RichText\n\t\t\t\tidentifier=\"content\"\n\t\t\t\ttagName={ tagName }\n\t\t\t\tvalue={ content }\n\t\t\t\tonChange={ onContentChange }\n\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\tonReplace={ onReplace }\n\t\t\t\tonRemove={ () => onReplace( [] ) }\n\t\t\t\tplaceholder={ placeholder || __( 'Heading' ) }\n\t\t\t\ttextAlign={ textAlign }\n\t\t\t\t{ ...( Platform.isNative && { deleteEnter: true } ) } // setup RichText on native mobile to delete the \"Enter\" key as it's handled by the JS/RN side\n\t\t\t\t{ ...blockProps }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default HeadingEdit;\n"],"mappings":"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","ignoreList":[]}
|
package/build/heading/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_icons","require","_i18n","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","_transforms","metadata","exports","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","textAlign","type","content","source","selector","__experimentalRole","level","placeholder","supports","align","anchor","className","splitting","__experimentalBorder","color","radius","style","width","__experimentalDefaultControls","gradients","link","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalTextDecoration","__experimentalWritingMode","__unstablePasteTextInline","__experimentalSlashInserter","interactivity","clientNavigation","editorStyle","settings","icon","example","__","__experimentalLabel","context","customName","hasContent","trim","length","sprintf","transforms","deprecated","merge","attributesToMerge","edit","save","init","initBlock"],"sources":["@wordpress/block-library/src/heading/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { heading as icon } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcontent: __( 'Code is Poetry' ),\n\t\t\tlevel: 2,\n\t\t\ttextAlign: 'center',\n\t\t},\n\t},\n\t__experimentalLabel( attributes, { context } ) {\n\t\tconst { content, level } = attributes;\n\n\t\tconst customName = attributes?.metadata?.name;\n\t\tconst hasContent = content?.trim().length > 0;\n\n\t\t// In the list view, use the block's content as the label.\n\t\t// If the content is empty, fall back to the default label.\n\t\tif ( context === 'list-view' && ( customName || hasContent ) ) {\n\t\t\treturn customName || content;\n\t\t}\n\n\t\tif ( context === 'accessibility' ) {\n\t\t\treturn ! hasContent\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. %s: heading level. */\n\t\t\t\t\t\t__( 'Level %s. Empty.' ),\n\t\t\t\t\t\tlevel\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. 1: heading level. 2: heading content. */\n\t\t\t\t\t\t__( 'Level %1$s. %2$s' ),\n\t\t\t\t\t\tlevel,\n\t\t\t\t\t\tcontent\n\t\t\t\t );\n\t\t}\n\t},\n\ttransforms,\n\tdeprecated,\n\tmerge( attributes, attributesToMerge ) {\n\t\treturn {\n\t\t\tcontent:\n\t\t\t\t( attributes.content || '' ) +\n\t\t\t\t( attributesToMerge.content || '' ),\n\t\t};\n\t},\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,WAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,KAAA,GAAAF,sBAAA,CAAAH,OAAA;AAEA,IAAAM,KAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,WAAA,GAAAJ,sBAAA,CAAAH,OAAA;AAdA;AACA;AACA;AAIA;AACA;AACA;AAFA,MAAAQ,QAAA,GAAAC,OAAA,CAAAD,QAAA;EAAAE,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,SAAA;MAAAC,IAAA;IAAA;IAAAC,OAAA;MAAAD,IAAA;MAAAE,MAAA;MAAAC,QAAA;MAAAC,kBAAA;IAAA;IAAAC,KAAA;MAAAL,IAAA;MAAA;IAAA;IAAAM,
|
|
1
|
+
{"version":3,"names":["_icons","require","_i18n","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","_transforms","metadata","exports","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","textAlign","type","content","source","selector","__experimentalRole","level","levelOptions","placeholder","supports","align","anchor","className","splitting","__experimentalBorder","color","radius","style","width","__experimentalDefaultControls","gradients","link","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalTextDecoration","__experimentalWritingMode","__unstablePasteTextInline","__experimentalSlashInserter","interactivity","clientNavigation","editorStyle","settings","icon","example","__","__experimentalLabel","context","customName","hasContent","trim","length","sprintf","transforms","deprecated","merge","attributesToMerge","edit","save","init","initBlock"],"sources":["@wordpress/block-library/src/heading/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { heading as icon } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcontent: __( 'Code is Poetry' ),\n\t\t\tlevel: 2,\n\t\t\ttextAlign: 'center',\n\t\t},\n\t},\n\t__experimentalLabel( attributes, { context } ) {\n\t\tconst { content, level } = attributes;\n\n\t\tconst customName = attributes?.metadata?.name;\n\t\tconst hasContent = content?.trim().length > 0;\n\n\t\t// In the list view, use the block's content as the label.\n\t\t// If the content is empty, fall back to the default label.\n\t\tif ( context === 'list-view' && ( customName || hasContent ) ) {\n\t\t\treturn customName || content;\n\t\t}\n\n\t\tif ( context === 'accessibility' ) {\n\t\t\treturn ! hasContent\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. %s: heading level. */\n\t\t\t\t\t\t__( 'Level %s. Empty.' ),\n\t\t\t\t\t\tlevel\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. 1: heading level. 2: heading content. */\n\t\t\t\t\t\t__( 'Level %1$s. %2$s' ),\n\t\t\t\t\t\tlevel,\n\t\t\t\t\t\tcontent\n\t\t\t\t );\n\t\t}\n\t},\n\ttransforms,\n\tdeprecated,\n\tmerge( attributes, attributesToMerge ) {\n\t\treturn {\n\t\t\tcontent:\n\t\t\t\t( attributes.content || '' ) +\n\t\t\t\t( attributesToMerge.content || '' ),\n\t\t};\n\t},\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"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","ignoreList":[]}
|
package/build/image/image.js
CHANGED
|
@@ -500,7 +500,11 @@ function Image({
|
|
|
500
500
|
accept: "image/*",
|
|
501
501
|
onSelect: onSelectImage,
|
|
502
502
|
onSelectURL: onSelectURL,
|
|
503
|
-
onError: onUploadError
|
|
503
|
+
onError: onUploadError,
|
|
504
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.MenuItem, {
|
|
505
|
+
onClick: () => onSelectImage(undefined),
|
|
506
|
+
children: (0, _i18n.__)('Reset')
|
|
507
|
+
})
|
|
504
508
|
})
|
|
505
509
|
}), isSingleSelected && externalBlob && /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.BlockControls, {
|
|
506
510
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToolbarGroup, {
|
|
@@ -574,6 +578,7 @@ function Image({
|
|
|
574
578
|
children: (0, _i18n.__)('Title')
|
|
575
579
|
}),
|
|
576
580
|
renderContent: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.TextControl, {
|
|
581
|
+
__next40pxDefaultSize: true,
|
|
577
582
|
className: "wp-block-image__toolbar_content_textarea",
|
|
578
583
|
__nextHasNoMarginBottom: true,
|
|
579
584
|
label: (0, _i18n.__)('Title attribute'),
|
package/build/image/image.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_blob","require","_components","_compose","_data","_blockEditor","_element","_i18n","_keycodes","_url","_blocks","_icons","_notices","_coreData","_lockUnlock","_util","_edit","_caption","_hooks","_constants","_utils","_jsxRuntime","DimensionsTool","ResolutionTool","unlock","blockEditorPrivateApis","scaleOptions","value","label","_x","help","__","ImageWrapper","href","children","jsx","onClick","event","preventDefault","style","pointerEvents","cursor","display","Image","temporaryURL","attributes","setAttributes","isSingleSelected","insertBlocksAfter","onReplace","onSelectImage","onSelectURL","onUploadError","context","clientId","blockEditingMode","parentLayoutType","url","alt","align","id","rel","linkClass","linkDestination","title","width","height","aspectRatio","scale","linkTarget","sizeSlug","lightbox","metadata","numericWidth","parseInt","undefined","numericHeight","imageRef","useRef","allowResize","getBlock","getSettings","useSelect","blockEditorStore","image","select","coreStore","getMedia","canInsertCover","imageEditing","imageSizes","maxWidth","getBlockRootClientId","canInsertBlockType","rootClientId","settings","replaceBlocks","toggleSelection","useDispatch","createErrorNotice","createSuccessNotice","noticesStore","isLargeViewport","useViewportMatch","isWideAligned","includes","loadedNaturalWidth","loadedNaturalHeight","setLoadedNaturalSize","useState","isEditingImage","setIsEditingImage","externalBlob","setExternalBlob","hasImageErrored","setHasImageErrored","hasNonContentControls","isContentOnlyMode","isResizable","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","useEffect","isExternalImage","mediaUpload","window","fetch","then","response","blob","catch","naturalWidth","naturalHeight","useMemo","current","complete","onResizeStart","onResizeStop","onImageError","embedBlock","createUpgradedEmbedBlock","onImageLoad","target","onSetHref","props","onSetLightbox","enable","lightboxSetting","enabled","resetLightbox","allowEditing","onSetTitle","updateAlt","newAlt","updateImage","newSizeSlug","newUrl","uploadExternal","filesList","onFileChange","img","isBlobURL","type","allowedTypes","ALLOWED_MEDIA_TYPES","onError","message","canEditImage","allowCrop","switchToCover","switchToBlockType","dimensionsUnitsOptions","useCustomUnits","availableUnits","useSettings","showLightboxSetting","lightboxChecked","dropdownMenuProps","useToolsPanelDropdownMenuProps","dimensionsControl","onChange","newWidth","newHeight","newScale","newAspectRatio","defaultScale","defaultAspectRatio","unitsOptions","aspectRatioControl","tools","resetAll","sizeControls","InspectorControls","__experimentalToolsPanel","arePatternOverridesEnabled","bindings","__default","source","lockUrlControls","lockHrefControls","lockAltControls","lockAltControlsMessage","lockTitleControls","lockTitleControlsMessage","lockCaption","getBlockBindingsSource","blocksStore","urlBinding","altBinding","titleBinding","hasParentPattern","urlBindingSource","altBindingSource","titleBindingSource","canUserEditValue","args","sprintf","showUrlInput","showCoverControls","showBlockControls","controls","jsxs","Fragment","BlockControls","group","__experimentalImageURLInputUI","onChangeUrl","mediaUrl","mediaLink","link","lightboxEnabled","ToolbarButton","icon","crop","overlayText","MediaReplaceFlow","mediaId","mediaURL","accept","onSelect","ToolbarGroup","upload","Dropdown","popoverProps","position","renderToggle","isOpen","onToggle","onKeyDown","keyCode","DOWN","renderContent","TextareaControl","className","disabled","ExternalLink","__nextHasNoMarginBottom","TextControl","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","readOnly","length","options","__next40pxDefaultSize","filename","getFilename","defaultedAlt","borderProps","useBorderProps","shadowProps","getShadowClassesAndStyles","isRounded","Placeholder","withIllustration","Spinner","src","onLoad","ref","objectFit","__experimentalImageEditor","onSaveImage","imageAttributes","onFinishEditing","numericRatio","evalAspectRatio","customRatio","naturalRatio","ratio","currentWidth","currentHeight","minWidth","MIN_SIZE","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","isRTL","ResizableBox","size","showHandle","maxHeight","lockAspectRatio","top","right","bottom","left","direction","elt","offsetWidth","String","resizeRatio","Caption","isSelected","showToolbarButton"],"sources":["@wordpress/block-library/src/image/image.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tExternalLink,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tTextControl,\n\tToolbarButton,\n\tToolbarGroup,\n\tDropdown,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\tPlaceholder,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\t__experimentalImageURLInputUI as ImageURLInputUI,\n\tMediaReplaceFlow,\n\tstore as blockEditorStore,\n\tuseSettings,\n\t__experimentalImageEditor as ImageEditor,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useEffect, useMemo, useState, useRef } from '@wordpress/element';\nimport { __, _x, sprintf, isRTL } from '@wordpress/i18n';\nimport { DOWN } from '@wordpress/keycodes';\nimport { getFilename } from '@wordpress/url';\nimport { switchToBlockType, store as blocksStore } from '@wordpress/blocks';\nimport { crop, overlayText, upload } 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 { unlock } from '../lock-unlock';\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport { isExternalImage } from './edit';\nimport { Caption } from '../utils/caption';\n\n/**\n * Module constants\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\nimport { MIN_SIZE, ALLOWED_MEDIA_TYPES } from './constants';\nimport { evalAspectRatio } from './utils';\n\nconst { DimensionsTool, ResolutionTool } = unlock( blockEditorPrivateApis );\n\nconst scaleOptions = [\n\t{\n\t\tvalue: 'cover',\n\t\tlabel: _x( 'Cover', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image covers the space evenly.' ),\n\t},\n\t{\n\t\tvalue: 'contain',\n\t\tlabel: _x( 'Contain', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image is contained without distortion.' ),\n\t},\n];\n\n// If the image has a href, wrap in an <a /> tag to trigger any inherited link element styles.\nconst ImageWrapper = ( { href, children } ) => {\n\tif ( ! href ) {\n\t\treturn children;\n\t}\n\treturn (\n\t\t<a\n\t\t\thref={ href }\n\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\taria-disabled\n\t\t\tstyle={ {\n\t\t\t\t// When the Image block is linked,\n\t\t\t\t// it's wrapped with a disabled <a /> tag.\n\t\t\t\t// Restore cursor style so it doesn't appear 'clickable'\n\t\t\t\t// and remove pointer events. Safari needs the display property.\n\t\t\t\tpointerEvents: 'none',\n\t\t\t\tcursor: 'default',\n\t\t\t\tdisplay: 'inline',\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</a>\n\t);\n};\n\nexport default function Image( {\n\ttemporaryURL,\n\tattributes,\n\tsetAttributes,\n\tisSingleSelected,\n\tinsertBlocksAfter,\n\tonReplace,\n\tonSelectImage,\n\tonSelectURL,\n\tonUploadError,\n\tcontext,\n\tclientId,\n\tblockEditingMode,\n\tparentLayoutType,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\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\taspectRatio,\n\t\tscale,\n\t\tlinkTarget,\n\t\tsizeSlug,\n\t\tlightbox,\n\t\tmetadata,\n\t} = attributes;\n\n\t// The only supported unit is px, so we can parseInt to strip the px here.\n\tconst numericWidth = width ? parseInt( width, 10 ) : undefined;\n\tconst numericHeight = height ? parseInt( height, 10 ) : undefined;\n\n\tconst imageRef = useRef();\n\tconst { allowResize = true } = context;\n\tconst { getBlock, getSettings } = useSelect( blockEditorStore );\n\n\tconst image = useSelect(\n\t\t( select ) =>\n\t\t\tid && isSingleSelected\n\t\t\t\t? select( coreStore ).getMedia( id, { context: 'view' } )\n\t\t\t\t: null,\n\t\t[ id, isSingleSelected ]\n\t);\n\n\tconst { canInsertCover, imageEditing, imageSizes, maxWidth } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, canInsertBlockType } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst settings = getSettings();\n\n\t\t\treturn {\n\t\t\t\timageEditing: settings.imageEditing,\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tmaxWidth: settings.maxWidth,\n\t\t\t\tcanInsertCover: canInsertBlockType(\n\t\t\t\t\t'core/cover',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\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 [ hasImageErrored, setHasImageErrored ] = useState( false );\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\tconst isContentOnlyMode = blockEditingMode === 'contentOnly';\n\tconst isResizable =\n\t\tallowResize &&\n\t\thasNonContentControls &&\n\t\t! isWideAligned &&\n\t\tisLargeViewport;\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 (\n\t\t\t! isExternalImage( id, url ) ||\n\t\t\t! isSingleSelected ||\n\t\t\t! getSettings().mediaUpload\n\t\t) {\n\t\t\tsetExternalBlob();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( externalBlob ) {\n\t\t\treturn;\n\t\t}\n\n\t\twindow\n\t\t\t// Avoid cache, which seems to help avoid CORS problems.\n\t\t\t.fetch( url.includes( '?' ) ? url : 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, isSingleSelected, externalBlob ] );\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\tsetHasImageErrored( true );\n\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\t\tif ( undefined !== embedBlock ) {\n\t\t\tonReplace( embedBlock );\n\t\t}\n\t}\n\n\tfunction onImageLoad( event ) {\n\t\tsetHasImageErrored( false );\n\t\tsetLoadedNaturalSize( {\n\t\t\tloadedNaturalWidth: event.target?.naturalWidth,\n\t\t\tloadedNaturalHeight: event.target?.naturalHeight,\n\t\t} );\n\t}\n\n\tfunction onSetHref( props ) {\n\t\tsetAttributes( props );\n\t}\n\n\tfunction onSetLightbox( enable ) {\n\t\tif ( enable && ! lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: true },\n\t\t\t} );\n\t\t} else if ( ! enable && lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: false },\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: undefined,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction resetLightbox() {\n\t\t// When deleting a link from an image while lightbox settings\n\t\t// are enabled by default, we should disable the lightbox,\n\t\t// otherwise the resulting UX looks like a mistake.\n\t\t// See https://github.com/WordPress/gutenberg/pull/59890/files#r1532286123.\n\t\tif ( lightboxSetting?.enabled && lightboxSetting?.allowEditing ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: false },\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: undefined,\n\t\t\t} );\n\t\t}\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\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tfunction uploadExternal() {\n\t\tconst { mediaUpload } = getSettings();\n\t\tif ( ! mediaUpload ) {\n\t\t\treturn;\n\t\t}\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\tuseEffect( () => {\n\t\tif ( ! isSingleSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSingleSelected ] );\n\n\tconst canEditImage = id && naturalWidth && naturalHeight && imageEditing;\n\tconst allowCrop = isSingleSelected && 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\t// TODO: Can allow more units after figuring out how they should interact\n\t// with the ResizableBox and ImageEditor components. Calculations later on\n\t// for those components are currently assuming px units.\n\tconst dimensionsUnitsOptions = useCustomUnits( {\n\t\tavailableUnits: [ 'px' ],\n\t} );\n\n\tconst [ lightboxSetting ] = useSettings( 'lightbox' );\n\n\tconst showLightboxSetting =\n\t\t// If a block-level override is set, we should give users the option to\n\t\t// remove that override, even if the lightbox UI is disabled in the settings.\n\t\t( !! lightbox && lightbox?.enabled !== lightboxSetting?.enabled ) ||\n\t\tlightboxSetting?.allowEditing;\n\n\tconst lightboxChecked =\n\t\t!! lightbox?.enabled || ( ! lightbox && !! lightboxSetting?.enabled );\n\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst dimensionsControl = (\n\t\t<DimensionsTool\n\t\t\tvalue={ { width, height, scale, aspectRatio } }\n\t\t\tonChange={ ( {\n\t\t\t\twidth: newWidth,\n\t\t\t\theight: newHeight,\n\t\t\t\tscale: newScale,\n\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t} ) => {\n\t\t\t\t// Rebuilding the object forces setting `undefined`\n\t\t\t\t// for values that are removed since setAttributes\n\t\t\t\t// doesn't do anything with keys that aren't set.\n\t\t\t\tsetAttributes( {\n\t\t\t\t\t// CSS includes `height: auto`, but we need\n\t\t\t\t\t// `width: auto` to fix the aspect ratio when\n\t\t\t\t\t// only height is set due to the width and\n\t\t\t\t\t// height attributes set via the server.\n\t\t\t\t\twidth: ! newWidth && newHeight ? 'auto' : newWidth,\n\t\t\t\t\theight: newHeight,\n\t\t\t\t\tscale: newScale,\n\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tdefaultScale=\"cover\"\n\t\t\tdefaultAspectRatio=\"auto\"\n\t\t\tscaleOptions={ scaleOptions }\n\t\t\tunitsOptions={ dimensionsUnitsOptions }\n\t\t/>\n\t);\n\n\tconst aspectRatioControl = (\n\t\t<DimensionsTool\n\t\t\tvalue={ { aspectRatio } }\n\t\t\tonChange={ ( { aspectRatio: newAspectRatio } ) => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t\tscale: 'cover',\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tdefaultAspectRatio=\"auto\"\n\t\t\ttools={ [ 'aspectRatio' ] }\n\t\t/>\n\t);\n\n\tconst resetAll = () => {\n\t\tsetAttributes( {\n\t\t\talt: undefined,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tscale: undefined,\n\t\t\taspectRatio: undefined,\n\t\t\tlightbox: undefined,\n\t\t} );\n\t};\n\n\tconst sizeControls = (\n\t\t<InspectorControls>\n\t\t\t<ToolsPanel\n\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\tresetAll={ resetAll }\n\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t>\n\t\t\t\t{ isResizable &&\n\t\t\t\t\t( parentLayoutType === 'grid'\n\t\t\t\t\t\t? aspectRatioControl\n\t\t\t\t\t\t: dimensionsControl ) }\n\t\t\t</ToolsPanel>\n\t\t</InspectorControls>\n\t);\n\n\tconst arePatternOverridesEnabled =\n\t\tmetadata?.bindings?.__default?.source === 'core/pattern-overrides';\n\n\tconst {\n\t\tlockUrlControls = false,\n\t\tlockHrefControls = false,\n\t\tlockAltControls = false,\n\t\tlockAltControlsMessage,\n\t\tlockTitleControls = false,\n\t\tlockTitleControlsMessage,\n\t\tlockCaption = false,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSingleSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\tconst { getBlockBindingsSource } = unlock( select( blocksStore ) );\n\t\t\tconst {\n\t\t\t\turl: urlBinding,\n\t\t\t\talt: altBinding,\n\t\t\t\ttitle: titleBinding,\n\t\t\t} = metadata?.bindings || {};\n\t\t\tconst hasParentPattern = !! context[ 'pattern/overrides' ];\n\t\t\tconst urlBindingSource = getBlockBindingsSource(\n\t\t\t\turlBinding?.source\n\t\t\t);\n\t\t\tconst altBindingSource = getBlockBindingsSource(\n\t\t\t\taltBinding?.source\n\t\t\t);\n\t\t\tconst titleBindingSource = getBlockBindingsSource(\n\t\t\t\ttitleBinding?.source\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! urlBinding &&\n\t\t\t\t\t! urlBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: urlBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockHrefControls:\n\t\t\t\t\t// Disable editing the link of the URL if the image is inside a pattern instance.\n\t\t\t\t\t// This is a temporary solution until we support overriding the link on the frontend.\n\t\t\t\t\thasParentPattern || arePatternOverridesEnabled,\n\t\t\t\tlockCaption:\n\t\t\t\t\t// Disable editing the caption if the image is inside a pattern instance.\n\t\t\t\t\t// This is a temporary solution until we support overriding the caption on the frontend.\n\t\t\t\t\thasParentPattern,\n\t\t\t\tlockAltControls:\n\t\t\t\t\t!! altBinding &&\n\t\t\t\t\t! altBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: altBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockAltControlsMessage: altBindingSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\taltBindingSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t\tlockTitleControls:\n\t\t\t\t\t!! titleBinding &&\n\t\t\t\t\t! titleBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: titleBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockTitleControlsMessage: titleBindingSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\ttitleBindingSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tarePatternOverridesEnabled,\n\t\t\tcontext,\n\t\t\tisSingleSelected,\n\t\t\tmetadata?.bindings,\n\t\t]\n\t);\n\n\tconst showUrlInput =\n\t\tisSingleSelected &&\n\t\t! isEditingImage &&\n\t\t! lockHrefControls &&\n\t\t! lockUrlControls;\n\n\tconst showCoverControls = isSingleSelected && canInsertCover;\n\n\tconst showBlockControls = showUrlInput || allowCrop || showCoverControls;\n\n\tconst controls = (\n\t\t<>\n\t\t\t{ showBlockControls && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t{ showUrlInput && (\n\t\t\t\t\t\t<ImageURLInputUI\n\t\t\t\t\t\t\turl={ href || '' }\n\t\t\t\t\t\t\tonChangeUrl={ onSetHref }\n\t\t\t\t\t\t\tlinkDestination={ linkDestination }\n\t\t\t\t\t\t\tmediaUrl={ ( image && image.source_url ) || url }\n\t\t\t\t\t\t\tmediaLink={ image && image.link }\n\t\t\t\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\t\t\t\tlinkClass={ linkClass }\n\t\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t\t\tshowLightboxSetting={ showLightboxSetting }\n\t\t\t\t\t\t\tlightboxEnabled={ lightboxChecked }\n\t\t\t\t\t\t\tonSetLightbox={ onSetLightbox }\n\t\t\t\t\t\t\tresetLightbox={ resetLightbox }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ allowCrop && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showCoverControls && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ticon={ overlayText }\n\t\t\t\t\t\t\tlabel={ __( 'Add text over image' ) }\n\t\t\t\t\t\t\tonClick={ switchToCover }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isSingleSelected && ! isEditingImage && ! lockUrlControls && (\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{ isSingleSelected && externalBlob && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ uploadExternal }\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tlabel={ __( 'Upload to Media Library' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isContentOnlyMode && (\n\t\t\t\t// Add some extra controls for content attributes when content only mode is active.\n\t\t\t\t// With content only mode active, the inspector is hidden, so users need another way\n\t\t\t\t// to edit these attributes.\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tpopoverProps={ { position: 'bottom right' } }\n\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\tonToggle();\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\t\t{ _x(\n\t\t\t\t\t\t\t\t\t'Alt',\n\t\t\t\t\t\t\t\t\t'Alternative text for an image. Block toolbar label, a low character count is preferred.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt || '' }\n\t\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\t\tdisabled={ lockAltControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t\t<>{ lockAltControlsMessage }</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={\n\t\t\t\t\t\t\t\t\t\t\t\t\t// translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.\n\t\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'https://www.w3.org/WAI/tutorials/images/decision-tree/'\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\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\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\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<Dropdown\n\t\t\t\t\t\tpopoverProps={ { position: 'bottom right' } }\n\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\tonToggle();\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\t\t{ __( 'Title' ) }\n\t\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\t\t\t\tdisabled={ lockTitleControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t\t\t\t<>{ lockTitleControlsMessage }</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\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\t\t\t\t) }\n\t\t\t\t\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\t\t\t\t{ __(\n\t\t\t\t\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\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\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<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ resetAll }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t{ isSingleSelected && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => !! alt }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { alt: undefined } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt || '' }\n\t\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\t\treadOnly={ lockAltControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t\t<>{ lockAltControlsMessage }</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={\n\t\t\t\t\t\t\t\t\t\t\t\t\t// translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.\n\t\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'https://www.w3.org/WAI/tutorials/images/decision-tree/'\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\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\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isResizable &&\n\t\t\t\t\t\t( parentLayoutType === 'grid'\n\t\t\t\t\t\t\t? aspectRatioControl\n\t\t\t\t\t\t\t: dimensionsControl ) }\n\t\t\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t\t\t<ResolutionTool\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\tonChange={ updateImage }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\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\t__next40pxDefaultSize\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\treadOnly={ lockTitleControls }\n\t\t\t\t\thelp={\n\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t<>{ lockTitleControlsMessage }</>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ __(\n\t\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\t) }\n\t\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\t{ __(\n\t\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\t) }\n\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</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 shadowProps = getShadowClassesAndStyles( attributes );\n\tconst isRounded = attributes.className?.includes( 'is-style-rounded' );\n\n\tlet img =\n\t\ttemporaryURL && hasImageErrored ? (\n\t\t\t// Show a placeholder during upload when the blob URL can't be loaded. This can\n\t\t\t// happen when the user uploads a HEIC image in a browser that doesn't support them.\n\t\t\t<Placeholder\n\t\t\t\tclassName=\"wp-block-image__placeholder\"\n\t\t\t\twithIllustration\n\t\t\t>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t) : (\n\t\t\t// Disable reason: Image itself is not meant to be interactive, but\n\t\t\t// should direct focus to block.\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<>\n\t\t\t\t<img\n\t\t\t\t\tsrc={ temporaryURL || url }\n\t\t\t\t\talt={ defaultedAlt }\n\t\t\t\t\tonError={ onImageError }\n\t\t\t\t\tonLoad={ onImageLoad }\n\t\t\t\t\tref={ imageRef }\n\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t( width && height ) || aspectRatio\n\t\t\t\t\t\t\t\t? '100%'\n\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\theight:\n\t\t\t\t\t\t\t( width && height ) || aspectRatio\n\t\t\t\t\t\t\t\t? '100%'\n\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...shadowProps.style,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t</>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\n\tif ( canEditImage && isEditingImage ) {\n\t\timg = (\n\t\t\t<ImageWrapper href={ href }>\n\t\t\t\t<ImageEditor\n\t\t\t\t\tid={ id }\n\t\t\t\t\turl={ url }\n\t\t\t\t\twidth={ numericWidth }\n\t\t\t\t\theight={ numericHeight }\n\t\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\t\tonSaveImage={ ( imageAttributes ) =>\n\t\t\t\t\t\tsetAttributes( imageAttributes )\n\t\t\t\t\t}\n\t\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t\t} }\n\t\t\t\t\tborderProps={ isRounded ? undefined : borderProps }\n\t\t\t\t/>\n\t\t\t</ImageWrapper>\n\t\t);\n\t} else if ( ! isResizable || parentLayoutType === 'grid' ) {\n\t\timg = (\n\t\t\t<div style={ { width, height, aspectRatio } }>\n\t\t\t\t<ImageWrapper href={ href }>{ img }</ImageWrapper>\n\t\t\t</div>\n\t\t);\n\t} else {\n\t\tconst numericRatio = aspectRatio && evalAspectRatio( aspectRatio );\n\t\tconst customRatio = numericWidth / numericHeight;\n\t\tconst naturalRatio = naturalWidth / naturalHeight;\n\t\tconst ratio = numericRatio || customRatio || naturalRatio || 1;\n\t\tconst currentWidth =\n\t\t\t! numericWidth && numericHeight\n\t\t\t\t? numericHeight * ratio\n\t\t\t\t: numericWidth;\n\t\tconst currentHeight =\n\t\t\t! numericHeight && numericWidth\n\t\t\t\t? numericWidth / ratio\n\t\t\t\t: numericHeight;\n\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\t\timg = (\n\t\t\t<ResizableBox\n\t\t\t\tstyle={ {\n\t\t\t\t\tdisplay: 'block',\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t! width && ! height && aspectRatio\n\t\t\t\t\t\t\t? aspectRatio\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t} }\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth ?? 'auto',\n\t\t\t\t\theight: currentHeight ?? 'auto',\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSingleSelected }\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={ ratio }\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 ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\t// Since the aspect ratio is locked when resizing, we can\n\t\t\t\t\t// use the width of the resized element to calculate the\n\t\t\t\t\t// height in CSS to prevent stretching when the max-width\n\t\t\t\t\t// is reached.\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: `${ elt.offsetWidth }px`,\n\t\t\t\t\t\theight: 'auto',\n\t\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t\tratio === naturalRatio\n\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t: String( ratio ),\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<ImageWrapper href={ href }>{ img }</ImageWrapper>\n\t\t\t</ResizableBox>\n\t\t);\n\t}\n\n\tif ( ! url && ! temporaryURL ) {\n\t\t// Add all controls if the image attributes are connected.\n\t\treturn metadata?.bindings ? controls : sizeControls;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ controls }\n\t\t\t{ img }\n\n\t\t\t<Caption\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tlabel={ __( 'Image caption text' ) }\n\t\t\t\tshowToolbarButton={\n\t\t\t\t\tisSingleSelected &&\n\t\t\t\t\thasNonContentControls &&\n\t\t\t\t\t! arePatternOverridesEnabled\n\t\t\t\t}\n\t\t\t\treadOnly={ lockCaption }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_blob","require","_components","_compose","_data","_blockEditor","_element","_i18n","_keycodes","_url","_blocks","_icons","_notices","_coreData","_lockUnlock","_util","_edit","_caption","_hooks","_constants","_utils","_jsxRuntime","DimensionsTool","ResolutionTool","unlock","blockEditorPrivateApis","scaleOptions","value","label","_x","help","__","ImageWrapper","href","children","jsx","onClick","event","preventDefault","style","pointerEvents","cursor","display","Image","temporaryURL","attributes","setAttributes","isSingleSelected","insertBlocksAfter","onReplace","onSelectImage","onSelectURL","onUploadError","context","clientId","blockEditingMode","parentLayoutType","url","alt","align","id","rel","linkClass","linkDestination","title","width","height","aspectRatio","scale","linkTarget","sizeSlug","lightbox","metadata","numericWidth","parseInt","undefined","numericHeight","imageRef","useRef","allowResize","getBlock","getSettings","useSelect","blockEditorStore","image","select","coreStore","getMedia","canInsertCover","imageEditing","imageSizes","maxWidth","getBlockRootClientId","canInsertBlockType","rootClientId","settings","replaceBlocks","toggleSelection","useDispatch","createErrorNotice","createSuccessNotice","noticesStore","isLargeViewport","useViewportMatch","isWideAligned","includes","loadedNaturalWidth","loadedNaturalHeight","setLoadedNaturalSize","useState","isEditingImage","setIsEditingImage","externalBlob","setExternalBlob","hasImageErrored","setHasImageErrored","hasNonContentControls","isContentOnlyMode","isResizable","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","useEffect","isExternalImage","mediaUpload","window","fetch","then","response","blob","catch","naturalWidth","naturalHeight","useMemo","current","complete","onResizeStart","onResizeStop","onImageError","embedBlock","createUpgradedEmbedBlock","onImageLoad","target","onSetHref","props","onSetLightbox","enable","lightboxSetting","enabled","resetLightbox","allowEditing","onSetTitle","updateAlt","newAlt","updateImage","newSizeSlug","newUrl","uploadExternal","filesList","onFileChange","img","isBlobURL","type","allowedTypes","ALLOWED_MEDIA_TYPES","onError","message","canEditImage","allowCrop","switchToCover","switchToBlockType","dimensionsUnitsOptions","useCustomUnits","availableUnits","useSettings","showLightboxSetting","lightboxChecked","dropdownMenuProps","useToolsPanelDropdownMenuProps","dimensionsControl","onChange","newWidth","newHeight","newScale","newAspectRatio","defaultScale","defaultAspectRatio","unitsOptions","aspectRatioControl","tools","resetAll","sizeControls","InspectorControls","__experimentalToolsPanel","arePatternOverridesEnabled","bindings","__default","source","lockUrlControls","lockHrefControls","lockAltControls","lockAltControlsMessage","lockTitleControls","lockTitleControlsMessage","lockCaption","getBlockBindingsSource","blocksStore","urlBinding","altBinding","titleBinding","hasParentPattern","urlBindingSource","altBindingSource","titleBindingSource","canUserEditValue","args","sprintf","showUrlInput","showCoverControls","showBlockControls","controls","jsxs","Fragment","BlockControls","group","__experimentalImageURLInputUI","onChangeUrl","mediaUrl","mediaLink","link","lightboxEnabled","ToolbarButton","icon","crop","overlayText","MediaReplaceFlow","mediaId","mediaURL","accept","onSelect","MenuItem","ToolbarGroup","upload","Dropdown","popoverProps","position","renderToggle","isOpen","onToggle","onKeyDown","keyCode","DOWN","renderContent","TextareaControl","className","disabled","ExternalLink","__nextHasNoMarginBottom","TextControl","__next40pxDefaultSize","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","readOnly","length","options","filename","getFilename","defaultedAlt","borderProps","useBorderProps","shadowProps","getShadowClassesAndStyles","isRounded","Placeholder","withIllustration","Spinner","src","onLoad","ref","objectFit","__experimentalImageEditor","onSaveImage","imageAttributes","onFinishEditing","numericRatio","evalAspectRatio","customRatio","naturalRatio","ratio","currentWidth","currentHeight","minWidth","MIN_SIZE","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","isRTL","ResizableBox","size","showHandle","maxHeight","lockAspectRatio","top","right","bottom","left","direction","elt","offsetWidth","String","resizeRatio","Caption","isSelected","showToolbarButton"],"sources":["@wordpress/block-library/src/image/image.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tMenuItem,\n\tExternalLink,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tTextControl,\n\tToolbarButton,\n\tToolbarGroup,\n\tDropdown,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\tPlaceholder,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\t__experimentalImageURLInputUI as ImageURLInputUI,\n\tMediaReplaceFlow,\n\tstore as blockEditorStore,\n\tuseSettings,\n\t__experimentalImageEditor as ImageEditor,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { useEffect, useMemo, useState, useRef } from '@wordpress/element';\nimport { __, _x, sprintf, isRTL } from '@wordpress/i18n';\nimport { DOWN } from '@wordpress/keycodes';\nimport { getFilename } from '@wordpress/url';\nimport { switchToBlockType, store as blocksStore } from '@wordpress/blocks';\nimport { crop, overlayText, upload } 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 { unlock } from '../lock-unlock';\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport { isExternalImage } from './edit';\nimport { Caption } from '../utils/caption';\n\n/**\n * Module constants\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\nimport { MIN_SIZE, ALLOWED_MEDIA_TYPES } from './constants';\nimport { evalAspectRatio } from './utils';\n\nconst { DimensionsTool, ResolutionTool } = unlock( blockEditorPrivateApis );\n\nconst scaleOptions = [\n\t{\n\t\tvalue: 'cover',\n\t\tlabel: _x( 'Cover', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image covers the space evenly.' ),\n\t},\n\t{\n\t\tvalue: 'contain',\n\t\tlabel: _x( 'Contain', 'Scale option for dimensions control' ),\n\t\thelp: __( 'Image is contained without distortion.' ),\n\t},\n];\n\n// If the image has a href, wrap in an <a /> tag to trigger any inherited link element styles.\nconst ImageWrapper = ( { href, children } ) => {\n\tif ( ! href ) {\n\t\treturn children;\n\t}\n\treturn (\n\t\t<a\n\t\t\thref={ href }\n\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\taria-disabled\n\t\t\tstyle={ {\n\t\t\t\t// When the Image block is linked,\n\t\t\t\t// it's wrapped with a disabled <a /> tag.\n\t\t\t\t// Restore cursor style so it doesn't appear 'clickable'\n\t\t\t\t// and remove pointer events. Safari needs the display property.\n\t\t\t\tpointerEvents: 'none',\n\t\t\t\tcursor: 'default',\n\t\t\t\tdisplay: 'inline',\n\t\t\t} }\n\t\t>\n\t\t\t{ children }\n\t\t</a>\n\t);\n};\n\nexport default function Image( {\n\ttemporaryURL,\n\tattributes,\n\tsetAttributes,\n\tisSingleSelected,\n\tinsertBlocksAfter,\n\tonReplace,\n\tonSelectImage,\n\tonSelectURL,\n\tonUploadError,\n\tcontext,\n\tclientId,\n\tblockEditingMode,\n\tparentLayoutType,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\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\taspectRatio,\n\t\tscale,\n\t\tlinkTarget,\n\t\tsizeSlug,\n\t\tlightbox,\n\t\tmetadata,\n\t} = attributes;\n\n\t// The only supported unit is px, so we can parseInt to strip the px here.\n\tconst numericWidth = width ? parseInt( width, 10 ) : undefined;\n\tconst numericHeight = height ? parseInt( height, 10 ) : undefined;\n\n\tconst imageRef = useRef();\n\tconst { allowResize = true } = context;\n\tconst { getBlock, getSettings } = useSelect( blockEditorStore );\n\n\tconst image = useSelect(\n\t\t( select ) =>\n\t\t\tid && isSingleSelected\n\t\t\t\t? select( coreStore ).getMedia( id, { context: 'view' } )\n\t\t\t\t: null,\n\t\t[ id, isSingleSelected ]\n\t);\n\n\tconst { canInsertCover, imageEditing, imageSizes, maxWidth } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, canInsertBlockType } =\n\t\t\t\tselect( blockEditorStore );\n\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst settings = getSettings();\n\n\t\t\treturn {\n\t\t\t\timageEditing: settings.imageEditing,\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tmaxWidth: settings.maxWidth,\n\t\t\t\tcanInsertCover: canInsertBlockType(\n\t\t\t\t\t'core/cover',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\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 [ hasImageErrored, setHasImageErrored ] = useState( false );\n\tconst hasNonContentControls = blockEditingMode === 'default';\n\tconst isContentOnlyMode = blockEditingMode === 'contentOnly';\n\tconst isResizable =\n\t\tallowResize &&\n\t\thasNonContentControls &&\n\t\t! isWideAligned &&\n\t\tisLargeViewport;\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 (\n\t\t\t! isExternalImage( id, url ) ||\n\t\t\t! isSingleSelected ||\n\t\t\t! getSettings().mediaUpload\n\t\t) {\n\t\t\tsetExternalBlob();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( externalBlob ) {\n\t\t\treturn;\n\t\t}\n\n\t\twindow\n\t\t\t// Avoid cache, which seems to help avoid CORS problems.\n\t\t\t.fetch( url.includes( '?' ) ? url : 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, isSingleSelected, externalBlob ] );\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\tsetHasImageErrored( true );\n\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\t\tif ( undefined !== embedBlock ) {\n\t\t\tonReplace( embedBlock );\n\t\t}\n\t}\n\n\tfunction onImageLoad( event ) {\n\t\tsetHasImageErrored( false );\n\t\tsetLoadedNaturalSize( {\n\t\t\tloadedNaturalWidth: event.target?.naturalWidth,\n\t\t\tloadedNaturalHeight: event.target?.naturalHeight,\n\t\t} );\n\t}\n\n\tfunction onSetHref( props ) {\n\t\tsetAttributes( props );\n\t}\n\n\tfunction onSetLightbox( enable ) {\n\t\tif ( enable && ! lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: true },\n\t\t\t} );\n\t\t} else if ( ! enable && lightboxSetting?.enabled ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: false },\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: undefined,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction resetLightbox() {\n\t\t// When deleting a link from an image while lightbox settings\n\t\t// are enabled by default, we should disable the lightbox,\n\t\t// otherwise the resulting UX looks like a mistake.\n\t\t// See https://github.com/WordPress/gutenberg/pull/59890/files#r1532286123.\n\t\tif ( lightboxSetting?.enabled && lightboxSetting?.allowEditing ) {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: { enabled: false },\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( {\n\t\t\t\tlightbox: undefined,\n\t\t\t} );\n\t\t}\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\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tfunction uploadExternal() {\n\t\tconst { mediaUpload } = getSettings();\n\t\tif ( ! mediaUpload ) {\n\t\t\treturn;\n\t\t}\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\tuseEffect( () => {\n\t\tif ( ! isSingleSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSingleSelected ] );\n\n\tconst canEditImage = id && naturalWidth && naturalHeight && imageEditing;\n\tconst allowCrop = isSingleSelected && 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\t// TODO: Can allow more units after figuring out how they should interact\n\t// with the ResizableBox and ImageEditor components. Calculations later on\n\t// for those components are currently assuming px units.\n\tconst dimensionsUnitsOptions = useCustomUnits( {\n\t\tavailableUnits: [ 'px' ],\n\t} );\n\n\tconst [ lightboxSetting ] = useSettings( 'lightbox' );\n\n\tconst showLightboxSetting =\n\t\t// If a block-level override is set, we should give users the option to\n\t\t// remove that override, even if the lightbox UI is disabled in the settings.\n\t\t( !! lightbox && lightbox?.enabled !== lightboxSetting?.enabled ) ||\n\t\tlightboxSetting?.allowEditing;\n\n\tconst lightboxChecked =\n\t\t!! lightbox?.enabled || ( ! lightbox && !! lightboxSetting?.enabled );\n\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tconst dimensionsControl = (\n\t\t<DimensionsTool\n\t\t\tvalue={ { width, height, scale, aspectRatio } }\n\t\t\tonChange={ ( {\n\t\t\t\twidth: newWidth,\n\t\t\t\theight: newHeight,\n\t\t\t\tscale: newScale,\n\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t} ) => {\n\t\t\t\t// Rebuilding the object forces setting `undefined`\n\t\t\t\t// for values that are removed since setAttributes\n\t\t\t\t// doesn't do anything with keys that aren't set.\n\t\t\t\tsetAttributes( {\n\t\t\t\t\t// CSS includes `height: auto`, but we need\n\t\t\t\t\t// `width: auto` to fix the aspect ratio when\n\t\t\t\t\t// only height is set due to the width and\n\t\t\t\t\t// height attributes set via the server.\n\t\t\t\t\twidth: ! newWidth && newHeight ? 'auto' : newWidth,\n\t\t\t\t\theight: newHeight,\n\t\t\t\t\tscale: newScale,\n\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tdefaultScale=\"cover\"\n\t\t\tdefaultAspectRatio=\"auto\"\n\t\t\tscaleOptions={ scaleOptions }\n\t\t\tunitsOptions={ dimensionsUnitsOptions }\n\t\t/>\n\t);\n\n\tconst aspectRatioControl = (\n\t\t<DimensionsTool\n\t\t\tvalue={ { aspectRatio } }\n\t\t\tonChange={ ( { aspectRatio: newAspectRatio } ) => {\n\t\t\t\tsetAttributes( {\n\t\t\t\t\taspectRatio: newAspectRatio,\n\t\t\t\t\tscale: 'cover',\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tdefaultAspectRatio=\"auto\"\n\t\t\ttools={ [ 'aspectRatio' ] }\n\t\t/>\n\t);\n\n\tconst resetAll = () => {\n\t\tsetAttributes( {\n\t\t\talt: undefined,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tscale: undefined,\n\t\t\taspectRatio: undefined,\n\t\t\tlightbox: undefined,\n\t\t} );\n\t};\n\n\tconst sizeControls = (\n\t\t<InspectorControls>\n\t\t\t<ToolsPanel\n\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\tresetAll={ resetAll }\n\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t>\n\t\t\t\t{ isResizable &&\n\t\t\t\t\t( parentLayoutType === 'grid'\n\t\t\t\t\t\t? aspectRatioControl\n\t\t\t\t\t\t: dimensionsControl ) }\n\t\t\t</ToolsPanel>\n\t\t</InspectorControls>\n\t);\n\n\tconst arePatternOverridesEnabled =\n\t\tmetadata?.bindings?.__default?.source === 'core/pattern-overrides';\n\n\tconst {\n\t\tlockUrlControls = false,\n\t\tlockHrefControls = false,\n\t\tlockAltControls = false,\n\t\tlockAltControlsMessage,\n\t\tlockTitleControls = false,\n\t\tlockTitleControlsMessage,\n\t\tlockCaption = false,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSingleSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\tconst { getBlockBindingsSource } = unlock( select( blocksStore ) );\n\t\t\tconst {\n\t\t\t\turl: urlBinding,\n\t\t\t\talt: altBinding,\n\t\t\t\ttitle: titleBinding,\n\t\t\t} = metadata?.bindings || {};\n\t\t\tconst hasParentPattern = !! context[ 'pattern/overrides' ];\n\t\t\tconst urlBindingSource = getBlockBindingsSource(\n\t\t\t\turlBinding?.source\n\t\t\t);\n\t\t\tconst altBindingSource = getBlockBindingsSource(\n\t\t\t\taltBinding?.source\n\t\t\t);\n\t\t\tconst titleBindingSource = getBlockBindingsSource(\n\t\t\t\ttitleBinding?.source\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! urlBinding &&\n\t\t\t\t\t! urlBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: urlBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockHrefControls:\n\t\t\t\t\t// Disable editing the link of the URL if the image is inside a pattern instance.\n\t\t\t\t\t// This is a temporary solution until we support overriding the link on the frontend.\n\t\t\t\t\thasParentPattern || arePatternOverridesEnabled,\n\t\t\t\tlockCaption:\n\t\t\t\t\t// Disable editing the caption if the image is inside a pattern instance.\n\t\t\t\t\t// This is a temporary solution until we support overriding the caption on the frontend.\n\t\t\t\t\thasParentPattern,\n\t\t\t\tlockAltControls:\n\t\t\t\t\t!! altBinding &&\n\t\t\t\t\t! altBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: altBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockAltControlsMessage: altBindingSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\taltBindingSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t\tlockTitleControls:\n\t\t\t\t\t!! titleBinding &&\n\t\t\t\t\t! titleBindingSource?.canUserEditValue?.( {\n\t\t\t\t\t\tselect,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\targs: titleBinding?.args,\n\t\t\t\t\t} ),\n\t\t\t\tlockTitleControlsMessage: titleBindingSource?.label\n\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t/* translators: %s: Label of the bindings source. */\n\t\t\t\t\t\t\t__( 'Connected to %s' ),\n\t\t\t\t\t\t\ttitleBindingSource.label\n\t\t\t\t\t )\n\t\t\t\t\t: __( 'Connected to dynamic data' ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tarePatternOverridesEnabled,\n\t\t\tcontext,\n\t\t\tisSingleSelected,\n\t\t\tmetadata?.bindings,\n\t\t]\n\t);\n\n\tconst showUrlInput =\n\t\tisSingleSelected &&\n\t\t! isEditingImage &&\n\t\t! lockHrefControls &&\n\t\t! lockUrlControls;\n\n\tconst showCoverControls = isSingleSelected && canInsertCover;\n\n\tconst showBlockControls = showUrlInput || allowCrop || showCoverControls;\n\n\tconst controls = (\n\t\t<>\n\t\t\t{ showBlockControls && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t{ showUrlInput && (\n\t\t\t\t\t\t<ImageURLInputUI\n\t\t\t\t\t\t\turl={ href || '' }\n\t\t\t\t\t\t\tonChangeUrl={ onSetHref }\n\t\t\t\t\t\t\tlinkDestination={ linkDestination }\n\t\t\t\t\t\t\tmediaUrl={ ( image && image.source_url ) || url }\n\t\t\t\t\t\t\tmediaLink={ image && image.link }\n\t\t\t\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\t\t\t\tlinkClass={ linkClass }\n\t\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t\t\tshowLightboxSetting={ showLightboxSetting }\n\t\t\t\t\t\t\tlightboxEnabled={ lightboxChecked }\n\t\t\t\t\t\t\tonSetLightbox={ onSetLightbox }\n\t\t\t\t\t\t\tresetLightbox={ resetLightbox }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ allowCrop && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ showCoverControls && (\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\ticon={ overlayText }\n\t\t\t\t\t\t\tlabel={ __( 'Add text over image' ) }\n\t\t\t\t\t\t\tonClick={ switchToCover }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isSingleSelected && ! isEditingImage && ! lockUrlControls && (\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\t\t<MenuItem onClick={ () => onSelectImage( undefined ) }>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t</MediaReplaceFlow>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isSingleSelected && externalBlob && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ uploadExternal }\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tlabel={ __( 'Upload to Media Library' ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t{ isContentOnlyMode && (\n\t\t\t\t// Add some extra controls for content attributes when content only mode is active.\n\t\t\t\t// With content only mode active, the inspector is hidden, so users need another way\n\t\t\t\t// to edit these attributes.\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\tpopoverProps={ { position: 'bottom right' } }\n\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\tonToggle();\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\t\t{ _x(\n\t\t\t\t\t\t\t\t\t'Alt',\n\t\t\t\t\t\t\t\t\t'Alternative text for an image. Block toolbar label, a low character count is preferred.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt || '' }\n\t\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\t\tdisabled={ lockAltControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t\t<>{ lockAltControlsMessage }</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={\n\t\t\t\t\t\t\t\t\t\t\t\t\t// translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.\n\t\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'https://www.w3.org/WAI/tutorials/images/decision-tree/'\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\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\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\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<Dropdown\n\t\t\t\t\t\tpopoverProps={ { position: 'bottom right' } }\n\t\t\t\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\t\taria-haspopup=\"true\"\n\t\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\t\tif ( ! isOpen && event.keyCode === DOWN ) {\n\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\tonToggle();\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\t\t{ __( 'Title' ) }\n\t\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\trenderContent={ () => (\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tclassName=\"wp-block-image__toolbar_content_textarea\"\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\t\t\t\tdisabled={ lockTitleControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t\t\t\t<>{ lockTitleControlsMessage }</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\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\t\t\t\t) }\n\t\t\t\t\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\t\t\t\t{ __(\n\t\t\t\t\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\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\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<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ resetAll }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t{ isSingleSelected && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => !! alt }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { alt: undefined } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt || '' }\n\t\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\t\treadOnly={ lockAltControls }\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\tlockAltControls ? (\n\t\t\t\t\t\t\t\t\t\t<>{ lockAltControlsMessage }</>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<ExternalLink\n\t\t\t\t\t\t\t\t\t\t\t\thref={\n\t\t\t\t\t\t\t\t\t\t\t\t\t// translators: Localized tutorial, if one exists. W3C Web Accessibility Initiative link has list of existing translations.\n\t\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'https://www.w3.org/WAI/tutorials/images/decision-tree/'\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\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\t\t) }\n\t\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Leave empty if decorative.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isResizable &&\n\t\t\t\t\t\t( parentLayoutType === 'grid'\n\t\t\t\t\t\t\t? aspectRatioControl\n\t\t\t\t\t\t\t: dimensionsControl ) }\n\t\t\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t\t\t<ResolutionTool\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\tonChange={ updateImage }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\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\t__next40pxDefaultSize\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\treadOnly={ lockTitleControls }\n\t\t\t\t\thelp={\n\t\t\t\t\t\tlockTitleControls ? (\n\t\t\t\t\t\t\t<>{ lockTitleControlsMessage }</>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ __(\n\t\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\t) }\n\t\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\t{ __(\n\t\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\t) }\n\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t)\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</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 shadowProps = getShadowClassesAndStyles( attributes );\n\tconst isRounded = attributes.className?.includes( 'is-style-rounded' );\n\n\tlet img =\n\t\ttemporaryURL && hasImageErrored ? (\n\t\t\t// Show a placeholder during upload when the blob URL can't be loaded. This can\n\t\t\t// happen when the user uploads a HEIC image in a browser that doesn't support them.\n\t\t\t<Placeholder\n\t\t\t\tclassName=\"wp-block-image__placeholder\"\n\t\t\t\twithIllustration\n\t\t\t>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t) : (\n\t\t\t// Disable reason: Image itself is not meant to be interactive, but\n\t\t\t// should direct focus to block.\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<>\n\t\t\t\t<img\n\t\t\t\t\tsrc={ temporaryURL || url }\n\t\t\t\t\talt={ defaultedAlt }\n\t\t\t\t\tonError={ onImageError }\n\t\t\t\t\tonLoad={ onImageLoad }\n\t\t\t\t\tref={ imageRef }\n\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t( width && height ) || aspectRatio\n\t\t\t\t\t\t\t\t? '100%'\n\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\theight:\n\t\t\t\t\t\t\t( width && height ) || aspectRatio\n\t\t\t\t\t\t\t\t? '100%'\n\t\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...shadowProps.style,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t</>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\n\tif ( canEditImage && isEditingImage ) {\n\t\timg = (\n\t\t\t<ImageWrapper href={ href }>\n\t\t\t\t<ImageEditor\n\t\t\t\t\tid={ id }\n\t\t\t\t\turl={ url }\n\t\t\t\t\twidth={ numericWidth }\n\t\t\t\t\theight={ numericHeight }\n\t\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\t\tonSaveImage={ ( imageAttributes ) =>\n\t\t\t\t\t\tsetAttributes( imageAttributes )\n\t\t\t\t\t}\n\t\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t\t} }\n\t\t\t\t\tborderProps={ isRounded ? undefined : borderProps }\n\t\t\t\t/>\n\t\t\t</ImageWrapper>\n\t\t);\n\t} else if ( ! isResizable || parentLayoutType === 'grid' ) {\n\t\timg = (\n\t\t\t<div style={ { width, height, aspectRatio } }>\n\t\t\t\t<ImageWrapper href={ href }>{ img }</ImageWrapper>\n\t\t\t</div>\n\t\t);\n\t} else {\n\t\tconst numericRatio = aspectRatio && evalAspectRatio( aspectRatio );\n\t\tconst customRatio = numericWidth / numericHeight;\n\t\tconst naturalRatio = naturalWidth / naturalHeight;\n\t\tconst ratio = numericRatio || customRatio || naturalRatio || 1;\n\t\tconst currentWidth =\n\t\t\t! numericWidth && numericHeight\n\t\t\t\t? numericHeight * ratio\n\t\t\t\t: numericWidth;\n\t\tconst currentHeight =\n\t\t\t! numericHeight && numericWidth\n\t\t\t\t? numericWidth / ratio\n\t\t\t\t: numericHeight;\n\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\t\timg = (\n\t\t\t<ResizableBox\n\t\t\t\tstyle={ {\n\t\t\t\t\tdisplay: 'block',\n\t\t\t\t\tobjectFit: scale,\n\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t! width && ! height && aspectRatio\n\t\t\t\t\t\t\t? aspectRatio\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t} }\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth ?? 'auto',\n\t\t\t\t\theight: currentHeight ?? 'auto',\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSingleSelected }\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={ ratio }\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 ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\t// Since the aspect ratio is locked when resizing, we can\n\t\t\t\t\t// use the width of the resized element to calculate the\n\t\t\t\t\t// height in CSS to prevent stretching when the max-width\n\t\t\t\t\t// is reached.\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: `${ elt.offsetWidth }px`,\n\t\t\t\t\t\theight: 'auto',\n\t\t\t\t\t\taspectRatio:\n\t\t\t\t\t\t\tratio === naturalRatio\n\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t: String( ratio ),\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<ImageWrapper href={ href }>{ img }</ImageWrapper>\n\t\t\t</ResizableBox>\n\t\t);\n\t}\n\n\tif ( ! url && ! temporaryURL ) {\n\t\t// Add all controls if the image attributes are connected.\n\t\treturn metadata?.bindings ? controls : sizeControls;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t{ controls }\n\t\t\t{ img }\n\n\t\t\t<Caption\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tisSelected={ isSingleSelected }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tlabel={ __( 'Image caption text' ) }\n\t\t\t\tshowToolbarButton={\n\t\t\t\t\tisSingleSelected &&\n\t\t\t\t\thasNonContentControls &&\n\t\t\t\t\t! arePatternOverridesEnabled\n\t\t\t\t}\n\t\t\t\treadOnly={ lockCaption }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|