@wordpress/block-library 9.6.1 → 9.7.1-next.1f6eadc42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/archives/edit.js +1 -1
- package/build/archives/edit.js.map +1 -1
- package/build/audio/edit.js +2 -1
- package/build/audio/edit.js.map +1 -1
- package/build/block/edit.js +5 -8
- package/build/block/edit.js.map +1 -1
- package/build/button/edit.js +1 -1
- package/build/button/edit.js.map +1 -1
- package/build/buttons/index.js +1 -1
- package/build/categories/index.js +1 -0
- package/build/categories/index.js.map +1 -1
- package/build/comment-edit-link/index.js +13 -2
- package/build/comment-edit-link/index.js.map +1 -1
- package/build/comment-reply-link/index.js +13 -2
- package/build/comment-reply-link/index.js.map +1 -1
- package/build/comments/edit/comments-legacy.js +1 -0
- package/build/comments/edit/comments-legacy.js.map +1 -1
- package/build/cover/deprecated.js +1 -1
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit/block-controls.js +4 -2
- package/build/cover/edit/block-controls.js.map +1 -1
- package/build/cover/edit/index.js +6 -3
- package/build/cover/edit/index.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +4 -12
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/details/index.js +3 -1
- package/build/details/index.js.map +1 -1
- package/build/details/transforms.js +24 -0
- package/build/details/transforms.js.map +1 -0
- package/build/embed/edit.js +5 -11
- package/build/embed/edit.js.map +1 -1
- package/build/embed/embed-placeholder.js +2 -0
- package/build/embed/embed-placeholder.js.map +1 -1
- package/build/embed/embed-preview.js +16 -4
- package/build/embed/embed-preview.js.map +1 -1
- package/build/file/edit.js +12 -1
- package/build/file/edit.js.map +1 -1
- package/build/file/transforms.js +18 -4
- package/build/file/transforms.js.map +1 -1
- package/build/form-input/deprecated.js +113 -1
- package/build/form-input/deprecated.js.map +1 -1
- package/build/form-input/edit.js +16 -12
- package/build/form-input/edit.js.map +1 -1
- package/build/form-input/save.js +9 -1
- package/build/form-input/save.js.map +1 -1
- package/build/freeform/edit.js +4 -4
- package/build/freeform/edit.js.map +1 -1
- package/build/freeform/modal.js +3 -0
- package/build/freeform/modal.js.map +1 -1
- package/build/home-link/edit.js +3 -9
- package/build/home-link/edit.js.map +1 -1
- package/build/image/edit.js +95 -45
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +39 -24
- package/build/image/image.js.map +1 -1
- package/build/image/transforms.js +0 -13
- package/build/image/transforms.js.map +1 -1
- package/build/image/use-max-width-observer.js +35 -0
- package/build/image/use-max-width-observer.js.map +1 -0
- package/build/image/utils.js +11 -0
- package/build/image/utils.js.map +1 -1
- package/build/latest-posts/edit.js +1 -1
- package/build/latest-posts/edit.js.map +1 -1
- package/build/media-text/deprecated.js +144 -3
- package/build/media-text/deprecated.js.map +1 -1
- package/build/media-text/edit.js +5 -5
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/image-fill.js +12 -0
- package/build/media-text/image-fill.js.map +1 -0
- package/build/media-text/media-container.js +21 -18
- package/build/media-text/media-container.js.map +1 -1
- package/build/media-text/media-container.native.js +0 -7
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/media-text/save.js +5 -6
- package/build/media-text/save.js.map +1 -1
- package/build/missing/edit.js +3 -2
- package/build/missing/edit.js.map +1 -1
- package/build/navigation/edit/deleted-navigation-warning.js +14 -7
- package/build/navigation/edit/deleted-navigation-warning.js.map +1 -1
- package/build/navigation/edit/index.js +1 -0
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/menu-inspector-controls.js +2 -1
- package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build/navigation/edit/navigation-menu-delete-control.js +1 -0
- package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +1 -0
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js +2 -0
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +4 -4
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation-link/link-ui.js +2 -1
- package/build/navigation-link/link-ui.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +2 -0
- package/build/page-list/convert-to-links-modal.js.map +1 -1
- package/build/page-list/edit.js +4 -1
- package/build/page-list/edit.js.map +1 -1
- package/build/post-comments-form/form.js +1 -0
- package/build/post-comments-form/form.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +6 -8
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +2 -4
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-title/index.js +4 -1
- package/build/post-title/index.js.map +1 -1
- package/build/query/edit/enhanced-pagination-modal.js +3 -2
- package/build/query/edit/enhanced-pagination-modal.js.map +1 -1
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js +3 -3
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +2 -10
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/query-content.js +9 -3
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/edit/query-placeholder.js +2 -0
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/site-logo/edit.js +9 -13
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-title/index.js +4 -1
- package/build/site-title/index.js.map +1 -1
- package/build/social-link/edit.js +4 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-links/edit.js +10 -9
- package/build/social-links/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/index.js +1 -1
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/inner-blocks.js +10 -1
- package/build/template-part/edit/inner-blocks.js.map +1 -1
- package/build/template-part/edit/placeholder.js +2 -0
- package/build/template-part/edit/placeholder.js.map +1 -1
- package/build/utils/hooks.js +10 -10
- package/build/utils/hooks.js.map +1 -1
- package/build/video/edit.js +16 -12
- 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-module/archives/edit.js +1 -1
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/audio/edit.js +2 -1
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/block/edit.js +6 -9
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/edit.js +1 -1
- package/build-module/button/edit.js.map +1 -1
- package/build-module/buttons/index.js +1 -1
- package/build-module/categories/index.js +1 -0
- package/build-module/categories/index.js.map +1 -1
- package/build-module/comment-edit-link/index.js +13 -2
- package/build-module/comment-edit-link/index.js.map +1 -1
- package/build-module/comment-reply-link/index.js +13 -2
- package/build-module/comment-reply-link/index.js.map +1 -1
- package/build-module/comments/edit/comments-legacy.js +1 -0
- package/build-module/comments/edit/comments-legacy.js.map +1 -1
- package/build-module/cover/deprecated.js +1 -1
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit/block-controls.js +4 -2
- package/build-module/cover/edit/block-controls.js.map +1 -1
- package/build-module/cover/edit/index.js +6 -3
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +5 -13
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/details/index.js +3 -1
- package/build-module/details/index.js.map +1 -1
- package/build-module/details/transforms.js +18 -0
- package/build-module/details/transforms.js.map +1 -0
- package/build-module/embed/edit.js +6 -12
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/embed-placeholder.js +2 -0
- package/build-module/embed/embed-placeholder.js.map +1 -1
- package/build-module/embed/embed-preview.js +16 -4
- package/build-module/embed/embed-preview.js.map +1 -1
- package/build-module/file/edit.js +12 -1
- package/build-module/file/edit.js.map +1 -1
- package/build-module/file/transforms.js +18 -4
- package/build-module/file/transforms.js.map +1 -1
- package/build-module/form-input/deprecated.js +114 -2
- package/build-module/form-input/deprecated.js.map +1 -1
- package/build-module/form-input/edit.js +16 -12
- package/build-module/form-input/edit.js.map +1 -1
- package/build-module/form-input/save.js +9 -1
- package/build-module/form-input/save.js.map +1 -1
- package/build-module/freeform/edit.js +4 -4
- package/build-module/freeform/edit.js.map +1 -1
- package/build-module/freeform/modal.js +3 -0
- package/build-module/freeform/modal.js.map +1 -1
- package/build-module/home-link/edit.js +3 -9
- package/build-module/home-link/edit.js.map +1 -1
- package/build-module/image/edit.js +99 -48
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/image.js +40 -25
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/transforms.js +0 -13
- package/build-module/image/transforms.js.map +1 -1
- package/build-module/image/use-max-width-observer.js +29 -0
- package/build-module/image/use-max-width-observer.js.map +1 -0
- package/build-module/image/utils.js +11 -1
- package/build-module/image/utils.js.map +1 -1
- package/build-module/latest-posts/edit.js +1 -1
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/media-text/deprecated.js +144 -3
- package/build-module/media-text/deprecated.js.map +1 -1
- package/build-module/media-text/edit.js +5 -5
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/image-fill.js +6 -0
- package/build-module/media-text/image-fill.js.map +1 -0
- package/build-module/media-text/media-container.js +21 -17
- package/build-module/media-text/media-container.js.map +1 -1
- package/build-module/media-text/media-container.native.js +0 -1
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/media-text/save.js +5 -6
- package/build-module/media-text/save.js.map +1 -1
- package/build-module/missing/edit.js +3 -2
- package/build-module/missing/edit.js.map +1 -1
- package/build-module/navigation/edit/deleted-navigation-warning.js +15 -8
- package/build-module/navigation/edit/deleted-navigation-warning.js.map +1 -1
- package/build-module/navigation/edit/index.js +1 -0
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/menu-inspector-controls.js +2 -1
- package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-delete-control.js +1 -0
- package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +1 -0
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +2 -0
- package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +4 -4
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation-link/link-ui.js +4 -3
- package/build-module/navigation-link/link-ui.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +2 -0
- package/build-module/page-list/convert-to-links-modal.js.map +1 -1
- package/build-module/page-list/edit.js +4 -1
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/post-comments-form/form.js +1 -0
- package/build-module/post-comments-form/form.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +6 -8
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +3 -5
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-title/index.js +4 -1
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/query/edit/enhanced-pagination-modal.js +3 -2
- package/build-module/query/edit/enhanced-pagination-modal.js.map +1 -1
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +3 -3
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +2 -10
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/query-content.js +10 -4
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/edit/query-placeholder.js +2 -0
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/site-logo/edit.js +10 -14
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-title/index.js +4 -1
- package/build-module/site-title/index.js.map +1 -1
- package/build-module/social-link/edit.js +4 -1
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-links/edit.js +11 -10
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/index.js +1 -1
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/inner-blocks.js +10 -1
- package/build-module/template-part/edit/inner-blocks.js.map +1 -1
- package/build-module/template-part/edit/placeholder.js +2 -0
- package/build-module/template-part/edit/placeholder.js.map +1 -1
- package/build-module/utils/hooks.js +10 -10
- package/build-module/utils/hooks.js.map +1 -1
- package/build-module/video/edit.js +16 -13
- 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-style/button/editor-rtl.css +0 -4
- package/build-style/button/editor.css +0 -4
- package/build-style/buttons/editor-rtl.css +2 -5
- package/build-style/buttons/editor.css +2 -5
- package/build-style/buttons/style-rtl.css +2 -2
- package/build-style/buttons/style.css +2 -2
- package/build-style/comment-edit-link/style-rtl.css +94 -0
- package/build-style/comment-edit-link/style.css +94 -0
- package/build-style/comment-reply-link/style-rtl.css +94 -0
- package/build-style/comment-reply-link/style.css +94 -0
- package/build-style/comments-pagination/editor-rtl.css +2 -2
- package/build-style/comments-pagination/editor.css +2 -2
- package/build-style/common-rtl.css +2 -2
- package/build-style/common.css +2 -2
- package/build-style/cover/editor-rtl.css +0 -6
- package/build-style/cover/editor.css +0 -6
- package/build-style/editor-rtl.css +35 -99
- package/build-style/editor.css +35 -101
- package/build-style/form-input/style-rtl.css +7 -8
- package/build-style/form-input/style.css +7 -8
- package/build-style/group/editor-rtl.css +0 -1
- package/build-style/group/editor.css +0 -1
- package/build-style/image/editor-rtl.css +6 -27
- package/build-style/image/editor.css +6 -27
- package/build-style/media-text/editor-rtl.css +3 -1
- package/build-style/media-text/editor.css +3 -1
- package/build-style/media-text/style-rtl.css +20 -0
- package/build-style/media-text/style.css +20 -0
- package/build-style/navigation/editor-rtl.css +1 -2
- package/build-style/navigation/editor.css +1 -2
- package/build-style/post-featured-image/style-rtl.css +1 -1
- package/build-style/post-featured-image/style.css +1 -1
- package/build-style/post-title/style-rtl.css +21 -0
- package/build-style/post-title/style.css +21 -0
- package/build-style/query-pagination/editor-rtl.css +2 -16
- package/build-style/query-pagination/editor.css +2 -18
- package/build-style/query-pagination/style-rtl.css +0 -11
- package/build-style/query-pagination/style.css +0 -13
- package/build-style/site-title/editor-rtl.css +0 -4
- package/build-style/site-title/editor.css +0 -4
- package/build-style/site-title/style-rtl.css +21 -0
- package/build-style/site-title/style.css +21 -0
- package/build-style/social-links/editor-rtl.css +17 -0
- package/build-style/social-links/editor.css +17 -0
- package/build-style/style-rtl.css +82 -24
- package/build-style/style.css +82 -26
- package/build-style/video/editor-rtl.css +0 -29
- package/build-style/video/editor.css +0 -29
- package/package.json +42 -35
- package/src/archives/edit.js +1 -1
- package/src/audio/edit.js +1 -0
- package/src/block/edit.js +9 -11
- package/src/button/edit.js +1 -1
- package/src/button/editor.scss +0 -5
- package/src/buttons/block.json +1 -1
- package/src/buttons/editor.scss +2 -8
- package/src/buttons/style.scss +2 -2
- package/src/categories/block.json +1 -0
- package/src/categories/index.php +13 -2
- package/src/comment-edit-link/block.json +13 -2
- package/src/comment-edit-link/style.scss +4 -0
- package/src/comment-reply-link/block.json +13 -2
- package/src/comment-reply-link/style.scss +4 -0
- package/src/comments/edit/comments-legacy.js +1 -0
- package/src/comments-pagination/editor.scss +1 -1
- package/src/cover/deprecated.js +3 -2
- package/src/cover/edit/block-controls.js +2 -0
- package/src/cover/edit/index.js +6 -1
- package/src/cover/edit/inspector-controls.js +3 -15
- package/src/cover/editor.scss +0 -5
- package/src/cover/test/edit.js +30 -26
- package/src/details/index.js +2 -0
- package/src/details/transforms.js +26 -0
- package/src/embed/edit.js +0 -7
- package/src/embed/embed-placeholder.js +10 -2
- package/src/embed/embed-preview.js +22 -2
- package/src/file/edit.js +11 -0
- package/src/file/index.php +1 -1
- package/src/file/transforms.js +26 -6
- package/src/form-input/deprecated.js +114 -1
- package/src/form-input/edit.js +17 -11
- package/src/form-input/save.js +13 -3
- package/src/form-input/style.scss +9 -8
- package/src/freeform/edit.js +4 -4
- package/src/freeform/editor.scss +1 -1
- package/src/freeform/modal.js +7 -1
- package/src/gallery/editor.scss +1 -1
- package/src/group/editor.scss +0 -1
- package/src/home-link/edit.js +4 -7
- package/src/image/edit.js +130 -47
- package/src/image/editor.scss +7 -41
- package/src/image/image.js +100 -67
- package/src/image/index.php +1 -1
- package/src/image/transforms.js +0 -23
- package/src/image/use-max-width-observer.js +32 -0
- package/src/image/utils.js +13 -1
- package/src/latest-posts/edit.js +1 -1
- package/src/media-text/deprecated.js +159 -3
- package/src/media-text/edit.js +5 -5
- package/src/media-text/editor.scss +3 -1
- package/src/media-text/image-fill.js +11 -0
- package/src/media-text/index.php +53 -43
- package/src/media-text/media-container.js +25 -25
- package/src/media-text/media-container.native.js +0 -2
- package/src/media-text/save.js +9 -13
- package/src/media-text/style.scss +21 -0
- package/src/media-text/test/image-fill.js +19 -0
- package/src/missing/edit.js +8 -3
- package/src/navigation/edit/deleted-navigation-warning.js +23 -13
- package/src/navigation/edit/index.js +1 -0
- package/src/navigation/edit/menu-inspector-controls.js +3 -1
- package/src/navigation/edit/navigation-menu-delete-control.js +1 -0
- package/src/navigation/edit/placeholder/index.js +1 -0
- package/src/navigation/edit/responsive-wrapper.js +2 -0
- package/src/navigation/edit/unsaved-inner-blocks.js +4 -4
- package/src/navigation/editor.scss +11 -4
- package/src/navigation/index.php +1 -1
- package/src/navigation-link/link-ui.js +4 -3
- package/src/page-list/convert-to-links-modal.js +6 -1
- package/src/page-list/edit.js +6 -1
- package/src/page-list/index.php +3 -1
- package/src/post-comments-form/form.js +1 -0
- package/src/post-featured-image/dimension-controls.js +4 -4
- package/src/post-featured-image/edit.js +3 -6
- package/src/post-featured-image/style.scss +1 -1
- package/src/post-title/block.json +4 -1
- package/src/post-title/style.scss +24 -0
- package/src/query/edit/enhanced-pagination-modal.js +7 -3
- package/src/query/edit/inspector-controls/enhanced-pagination-control.js +3 -3
- package/src/query/edit/inspector-controls/index.js +2 -9
- package/src/query/edit/query-content.js +7 -0
- package/src/query/edit/query-placeholder.js +2 -0
- package/src/query/index.php +1 -1
- package/src/query-pagination/editor.scss +1 -21
- package/src/query-pagination/style.scss +0 -15
- package/src/search/index.php +1 -1
- package/src/site-logo/edit.js +11 -20
- package/src/site-title/block.json +4 -1
- package/src/site-title/editor.scss +0 -4
- package/src/site-title/style.scss +24 -0
- package/src/social-link/edit.js +2 -0
- package/src/social-links/edit.js +17 -10
- package/src/social-links/editor.scss +24 -5
- package/src/style.scss +2 -0
- package/src/tag-cloud/index.php +7 -2
- package/src/template-part/edit/advanced-controls.js +0 -1
- package/src/template-part/edit/index.js +12 -10
- package/src/template-part/edit/inner-blocks.js +20 -1
- package/src/template-part/edit/placeholder.js +6 -1
- package/src/utils/hooks.js +11 -11
- package/src/video/edit.js +24 -21
- package/src/video/editor.scss +0 -45
- package/src/video/tracks-editor.js +3 -0
- package/src/media-text/test/media-container.js +0 -24
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_element","_i18n","_components","_compose","_blockEditor","_data","_coreData","_icons","_notices","_constants","_jsxRuntime","ALLOWED_MEDIA_TYPES","ACCEPT_MEDIA_STRING","SiteLogo","alt","attributes","align","width","height","isLink","linkTarget","shouldSyncIcon","isSelected","setAttributes","setLogo","logoUrl","siteUrl","logoId","iconId","setIcon","canUserEdit","isLargeViewport","useViewportMatch","isWideAligned","includes","isResizable","naturalWidth","naturalHeight","setNaturalSize","useState","isEditingImage","setIsEditingImage","toggleSelection","useDispatch","blockEditorStore","imageEditing","maxWidth","title","useSelect","select","settings","getSettings","siteEntities","coreStore","getEntityRecord","name","useEffect","onResizeStart","onResizeStop","img","jsxs","Fragment","children","jsx","className","src","onLoad","event","target","isBlobURL","Spinner","imgWrapper","href","rel","onClick","preventDefault","style","defaultWidth","currentWidth","ratio","currentHeight","minWidth","MIN_SIZE","Math","ceil","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","isRTL","canEditImage","imgEdit","__experimentalImageEditor","id","url","onSaveImage","imageAttributes","onFinishEditing","ResizableBox","size","showHandle","maxHeight","lockAspectRatio","enable","top","right","bottom","left","direction","elt","delta","parseInt","shouldUseNewUrl","window","__experimentalUseCustomizerSiteLogoUrl","siteIconSettingsUrl","syncSiteIconHelpText","createInterpolateElement","__","a","InspectorControls","PanelBody","RangeControl","__nextHasNoMarginBottom","__next40pxDefaultSize","label","onChange","newWidth","min","max","initialPosition","value","disabled","ToggleControl","checked","undefined","help","BlockControls","group","ToolbarButton","icon","crop","SiteLogoReplaceFlow","mediaURL","onRemoveLogo","mediaReplaceProps","MediaReplaceFlow","allowedTypes","accept","onClose","MenuItem","InspectorLogoPreview","mediaItemData","itemGroupProps","alt_text","source_url","slug","logoSlug","media_details","logoMediaDetails","logoLabel","sizes","full","file","__experimentalItemGroup","as","__experimentalHStack","justify","FlexItem","__experimentalTruncate","numberOfLines","LogoEdit","siteLogoId","siteIconId","isRequestingMediaItem","canUser","getEditedEntityRecord","_canUserEdit","kind","siteSettings","siteData","_siteLogoId","site_logo","_siteIconId","site_icon","mediaItem","getMedia","context","_isRequestingMediaItem","hasFinishedResolution","home","temporaryURL","setTemporaryURL","editEntityRecord","newValue","shouldForceSync","onInitialSelectLogo","media","onSelectLogo","createErrorNotice","noticesStore","onUploadError","message","type","onFilesDrop","filesList","mediaUpload","onFileChange","image","onError","mediaReplaceFlowProps","onSelect","controls","logoImage","isLoading","placeholder","content","placeholderClassName","clsx","Placeholder","preview","withIllustration","classes","blockProps","useBlockProps","mediaInspectorPanel","isBordered","popoverProps","MediaUploadCheck","MediaUpload","render","open","Button","variant","DropZone","MediaPlaceholder","mediaLibraryButton","upload","showTooltip","tooltipPosition"],"sources":["@wordpress/block-library/src/site-logo/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tcreateInterpolateElement,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tMenuItem,\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tToggleControl,\n\tToolbarButton,\n\tPlaceholder,\n\tButton,\n\tDropZone,\n\tFlexItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadCheck,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalImageEditor as ImageEditor,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { crop, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SIZE } from '../image/constants';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst ACCEPT_MEDIA_STRING = 'image/*';\n\nconst SiteLogo = ( {\n\talt,\n\tattributes: { align, width, height, isLink, linkTarget, shouldSyncIcon },\n\tisSelected,\n\tsetAttributes,\n\tsetLogo,\n\tlogoUrl,\n\tsiteUrl,\n\tlogoId,\n\ticonId,\n\tsetIcon,\n\tcanUserEdit,\n} ) => {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst isResizable = ! isWideAligned && isLargeViewport;\n\tconst [ { naturalWidth, naturalHeight }, setNaturalSize ] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst { toggleSelection } = useDispatch( blockEditorStore );\n\tconst { imageEditing, maxWidth, title } = useSelect( ( select ) => {\n\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\tconst siteEntities = select( coreStore ).getEntityRecord(\n\t\t\t'root',\n\t\t\t'__unstableBase'\n\t\t);\n\t\treturn {\n\t\t\ttitle: siteEntities?.name,\n\t\t\timageEditing: settings.imageEditing,\n\t\t\tmaxWidth: settings.maxWidth,\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Turn the `Use as site icon` toggle off if it is on but the logo and icon have\n\t\t// fallen out of sync. This can happen if the toggle is saved in the `on` position,\n\t\t// but changes are later made to the site icon in the Customizer.\n\t\tif ( shouldSyncIcon && logoId !== iconId ) {\n\t\t\tsetAttributes( { shouldSyncIcon: false } );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tconst img = (\n\t\t<>\n\t\t\t<img\n\t\t\t\tclassName=\"custom-logo\"\n\t\t\t\tsrc={ logoUrl }\n\t\t\t\talt={ alt }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetNaturalSize( {\n\t\t\t\t\t\tnaturalWidth: event.target.naturalWidth,\n\t\t\t\t\t\tnaturalHeight: event.target.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ isBlobURL( logoUrl ) && <Spinner /> }\n\t\t</>\n\t);\n\n\tlet imgWrapper = img;\n\n\t// Disable reason: Image itself is not meant to be interactive, but\n\t// should direct focus to block.\n\tif ( isLink ) {\n\t\timgWrapper = (\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<a\n\t\t\t\thref={ siteUrl }\n\t\t\t\tclassName=\"custom-logo-link\"\n\t\t\t\trel=\"home\"\n\t\t\t\ttitle={ title }\n\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</a>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\t}\n\n\tif ( ! isResizable || ! naturalWidth || ! naturalHeight ) {\n\t\treturn <div style={ { width, height } }>{ imgWrapper }</div>;\n\t}\n\n\t// Set the default width to a responsible size.\n\t// Note that this width is also set in the attached frontend CSS file.\n\tconst defaultWidth = 120;\n\n\tconst currentWidth = width || defaultWidth;\n\tconst ratio = naturalWidth / naturalHeight;\n\tconst currentHeight = currentWidth / ratio;\n\tconst minWidth =\n\t\tnaturalWidth < naturalHeight ? MIN_SIZE : Math.ceil( MIN_SIZE * ratio );\n\tconst minHeight =\n\t\tnaturalHeight < naturalWidth ? MIN_SIZE : Math.ceil( MIN_SIZE / ratio );\n\n\t// With the current implementation of ResizableBox, an image needs an\n\t// explicit pixel value for the max-width. In absence of being able to\n\t// set the content-width, this max-width is currently dictated by the\n\t// vanilla editor style. The following variable adds a buffer to this\n\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t// in most cases, allow you to scale the image beyond the width of the\n\t// main column, though not infinitely.\n\t// @todo It would be good to revisit this once a content-width variable\n\t// becomes available.\n\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\tlet showRightHandle = false;\n\tlet showLeftHandle = false;\n\n\t/* eslint-disable no-lonely-if */\n\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\tif ( align === 'center' ) {\n\t\t// When the image is centered, show both handles.\n\t\tshowRightHandle = true;\n\t\tshowLeftHandle = true;\n\t} else if ( isRTL() ) {\n\t\t// In RTL mode the image is on the right by default.\n\t\t// Show the right handle and hide the left handle only when it is\n\t\t// aligned left. Otherwise always show the left handle.\n\t\tif ( align === 'left' ) {\n\t\t\tshowRightHandle = true;\n\t\t} else {\n\t\t\tshowLeftHandle = true;\n\t\t}\n\t} else {\n\t\t// Show the left handle and hide the right handle only when the\n\t\t// image is aligned right. Otherwise always show the right handle.\n\t\tif ( align === 'right' ) {\n\t\t\tshowLeftHandle = true;\n\t\t} else {\n\t\t\tshowRightHandle = true;\n\t\t}\n\t}\n\t/* eslint-enable no-lonely-if */\n\n\tconst canEditImage =\n\t\tlogoId && naturalWidth && naturalHeight && imageEditing;\n\n\tconst imgEdit =\n\t\tcanEditImage && isEditingImage ? (\n\t\t\t<ImageEditor\n\t\t\t\tid={ logoId }\n\t\t\t\turl={ logoUrl }\n\t\t\t\twidth={ currentWidth }\n\t\t\t\theight={ currentHeight }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) => {\n\t\t\t\t\tsetLogo( imageAttributes.id );\n\t\t\t\t} }\n\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t) : (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth,\n\t\t\t\t\theight: currentHeight,\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ imgWrapper }\n\t\t\t</ResizableBox>\n\t\t);\n\n\t// Support the previous location for the Site Icon settings. To be removed\n\t// when the required WP core version for Gutenberg is >= 6.5.0.\n\tconst shouldUseNewUrl = ! window?.__experimentalUseCustomizerSiteLogoUrl;\n\n\tconst siteIconSettingsUrl = shouldUseNewUrl\n\t\t? siteUrl + '/wp-admin/options-general.php'\n\t\t: siteUrl + '/wp-admin/customize.php?autofocus[section]=title_tagline';\n\n\tconst syncSiteIconHelpText = createInterpolateElement(\n\t\t__(\n\t\t\t'Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. To use a custom icon that is different from your site logo, use the <a>Site Icon settings</a>.'\n\t\t),\n\t\t{\n\t\t\ta: (\n\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t<a\n\t\t\t\t\thref={ siteIconSettingsUrl }\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t/>\n\t\t\t),\n\t\t}\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Image width' ) }\n\t\t\t\t\t\tonChange={ ( newWidth ) =>\n\t\t\t\t\t\t\tsetAttributes( { width: newWidth } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ minWidth }\n\t\t\t\t\t\tmax={ maxWidthBuffer }\n\t\t\t\t\t\tinitialPosition={ Math.min(\n\t\t\t\t\t\t\tdefaultWidth,\n\t\t\t\t\t\t\tmaxWidthBuffer\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\t\tdisabled={ ! isResizable }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link image to home' ) }\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\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{ canUserEdit && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Use as Site Icon' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( { shouldSyncIcon: value } );\n\t\t\t\t\t\t\t\t\tsetIcon( value ? logoId : undefined );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tchecked={ !! shouldSyncIcon }\n\t\t\t\t\t\t\t\thelp={ syncSiteIconHelpText }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ canEditImage && ! isEditingImage && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ imgEdit }\n\t\t</>\n\t);\n};\n\n// This is a light wrapper around MediaReplaceFlow because the block has two\n// different MediaReplaceFlows, one for the inspector and one for the toolbar.\nfunction SiteLogoReplaceFlow( {\n\tmediaURL,\n\tonRemoveLogo,\n\t...mediaReplaceProps\n} ) {\n\treturn (\n\t\t<MediaReplaceFlow\n\t\t\t{ ...mediaReplaceProps }\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t>\n\t\t\t{ ( { onClose } ) =>\n\t\t\t\tmediaURL && (\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tonRemoveLogo();\n\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t)\n\t\t\t}\n\t\t</MediaReplaceFlow>\n\t);\n}\n\nconst InspectorLogoPreview = ( { mediaItemData = {}, itemGroupProps } ) => {\n\tconst {\n\t\talt_text: alt,\n\t\tsource_url: logoUrl,\n\t\tslug: logoSlug,\n\t\tmedia_details: logoMediaDetails,\n\t} = mediaItemData;\n\tconst logoLabel = logoMediaDetails?.sizes?.full?.file || logoSlug;\n\treturn (\n\t\t<ItemGroup { ...itemGroupProps } as=\"span\">\n\t\t\t<HStack justify=\"flex-start\" as=\"span\">\n\t\t\t\t<img src={ logoUrl } alt={ alt } />\n\t\t\t\t<FlexItem as=\"span\">\n\t\t\t\t\t<Truncate\n\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\tclassName=\"block-library-site-logo__inspector-media-replace-title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ logoLabel }\n\t\t\t\t\t</Truncate>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</ItemGroup>\n\t);\n};\n\nexport default function LogoEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tisSelected,\n} ) {\n\tconst { width, shouldSyncIcon } = attributes;\n\tconst {\n\t\tsiteLogoId,\n\t\tcanUserEdit,\n\t\turl,\n\t\tsiteIconId,\n\t\tmediaItemData,\n\t\tisRequestingMediaItem,\n\t} = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst _canUserEdit = canUser( 'update', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} );\n\t\tconst siteSettings = _canUserEdit\n\t\t\t? getEditedEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\t\tconst _siteLogoId = _canUserEdit\n\t\t\t? siteSettings?.site_logo\n\t\t\t: siteData?.site_logo;\n\t\tconst _siteIconId = siteSettings?.site_icon;\n\t\tconst mediaItem =\n\t\t\t_siteLogoId &&\n\t\t\tselect( coreStore ).getMedia( _siteLogoId, {\n\t\t\t\tcontext: 'view',\n\t\t\t} );\n\t\tconst _isRequestingMediaItem =\n\t\t\t_siteLogoId &&\n\t\t\t! select( coreStore ).hasFinishedResolution( 'getMedia', [\n\t\t\t\t_siteLogoId,\n\t\t\t\t{ context: 'view' },\n\t\t\t] );\n\n\t\treturn {\n\t\t\tsiteLogoId: _siteLogoId,\n\t\t\tcanUserEdit: _canUserEdit,\n\t\t\turl: siteData?.home,\n\t\t\tmediaItemData: mediaItem,\n\t\t\tisRequestingMediaItem: _isRequestingMediaItem,\n\t\t\tsiteIconId: _siteIconId,\n\t\t};\n\t}, [] );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst setLogo = ( newValue, shouldForceSync = false ) => {\n\t\t// `shouldForceSync` is used to force syncing when the attribute\n\t\t// may not have updated yet.\n\t\tif ( shouldSyncIcon || shouldForceSync ) {\n\t\t\tsetIcon( newValue );\n\t\t}\n\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_logo: newValue,\n\t\t} );\n\t};\n\n\tconst setIcon = ( newValue ) =>\n\t\t// The new value needs to be `null` to reset the Site Icon.\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_icon: newValue ?? null,\n\t\t} );\n\n\tconst { alt_text: alt, source_url: logoUrl } = mediaItemData ?? {};\n\n\tconst onInitialSelectLogo = ( media ) => {\n\t\t// Initialize the syncSiteIcon toggle. If we currently have no Site logo and no\n\t\t// site icon, automatically sync the logo to the icon.\n\t\tif ( shouldSyncIcon === undefined ) {\n\t\t\tconst shouldForceSync = ! siteIconId;\n\t\t\tsetAttributes( { shouldSyncIcon: shouldForceSync } );\n\n\t\t\t// Because we cannot rely on the `shouldSyncIcon` attribute to have updated by\n\t\t\t// the time `setLogo` is called, pass an argument to force the syncing.\n\t\t\tonSelectLogo( media, shouldForceSync );\n\t\t\treturn;\n\t\t}\n\n\t\tonSelectLogo( media );\n\t};\n\n\tconst onSelectLogo = ( media, shouldForceSync = false ) => {\n\t\tif ( ! media ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media.id && media.url ) {\n\t\t\t// This is a temporary blob image.\n\t\t\tsetTemporaryURL( media.url );\n\t\t\tsetLogo( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tsetLogo( media.id, shouldForceSync );\n\t};\n\n\tconst onRemoveLogo = () => {\n\t\tsetLogo( null );\n\t\tsetAttributes( { width: undefined } );\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst onFilesDrop = ( filesList ) => {\n\t\tgetSettings().mediaUpload( {\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tfilesList,\n\t\t\tonFileChange( [ image ] ) {\n\t\t\t\tif ( isBlobURL( image?.url ) ) {\n\t\t\t\t\tsetTemporaryURL( image.url );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tonInitialSelectLogo( image );\n\t\t\t},\n\t\t\tonError: onUploadError,\n\t\t\tonRemoveLogo,\n\t\t} );\n\t};\n\n\tconst mediaReplaceFlowProps = {\n\t\tmediaURL: logoUrl,\n\t\tname: ! logoUrl ? __( 'Choose logo' ) : __( 'Replace' ),\n\t\tonSelect: onSelectLogo,\n\t\tonError: onUploadError,\n\t\tonRemoveLogo,\n\t};\n\tconst controls = canUserEdit && (\n\t\t<BlockControls group=\"other\">\n\t\t\t<SiteLogoReplaceFlow { ...mediaReplaceFlowProps } />\n\t\t</BlockControls>\n\t);\n\n\tlet logoImage;\n\tconst isLoading = siteLogoId === undefined || isRequestingMediaItem;\n\tif ( isLoading ) {\n\t\tlogoImage = <Spinner />;\n\t}\n\n\t// Reset temporary url when logoUrl is available.\n\tuseEffect( () => {\n\t\tif ( logoUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ logoUrl, temporaryURL ] );\n\n\tif ( !! logoUrl || !! temporaryURL ) {\n\t\tlogoImage = (\n\t\t\t<>\n\t\t\t\t<SiteLogo\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tlogoUrl={ temporaryURL || logoUrl }\n\t\t\t\t\tsetLogo={ setLogo }\n\t\t\t\t\tlogoId={ mediaItemData?.id || siteLogoId }\n\t\t\t\t\tsiteUrl={ url }\n\t\t\t\t\tsetIcon={ setIcon }\n\t\t\t\t\ticonId={ siteIconId }\n\t\t\t\t\tcanUserEdit={ canUserEdit }\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\tconst placeholder = ( content ) => {\n\t\tconst placeholderClassName = clsx(\n\t\t\t'block-editor-media-placeholder',\n\t\t\tclassName\n\t\t);\n\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ placeholderClassName }\n\t\t\t\tpreview={ logoImage }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\twidth,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = clsx( className, {\n\t\t'is-default-size': ! width,\n\t\t'is-transient': temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( { className: classes } );\n\n\tconst mediaInspectorPanel = ( canUserEdit || logoUrl ) && (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Media' ) }>\n\t\t\t\t<div className=\"block-library-site-logo__inspector-media-replace-container\">\n\t\t\t\t\t{ ! canUserEdit && !! logoUrl && (\n\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\tmediaItemData={ mediaItemData }\n\t\t\t\t\t\t\titemGroupProps={ {\n\t\t\t\t\t\t\t\tisBordered: true,\n\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t'block-library-site-logo__inspector-readonly-logo-preview',\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{ canUserEdit && !! logoUrl && (\n\t\t\t\t\t\t<SiteLogoReplaceFlow\n\t\t\t\t\t\t\t{ ...mediaReplaceFlowProps }\n\t\t\t\t\t\t\tname={\n\t\t\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\t\t\tmediaItemData={ mediaItemData }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tpopoverProps={ {} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canUserEdit && ! logoUrl && (\n\t\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t<div className=\"block-library-site-logo__inspector-upload-container\">\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ isLoading ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<Spinner />\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__( 'Choose logo' )\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t<DropZone onFilesDrop={ onFilesDrop } />\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t{ mediaInspectorPanel }\n\t\t\t{ ( !! logoUrl || !! temporaryURL ) && logoImage }\n\t\t\t{ ! temporaryURL && ! logoUrl && ! canUserEdit && (\n\t\t\t\t<Placeholder className=\"site-logo_placeholder\">\n\t\t\t\t\t{ !! isLoading && (\n\t\t\t\t\t\t<span className=\"components-placeholder__preview\">\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t) }\n\t\t\t{ ! temporaryURL && ! logoUrl && canUserEdit && (\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Choose logo' ) }\n\t\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\t\ttooltipPosition=\"middle right\"\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAKA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAgBA,IAAAK,QAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAWA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAR,OAAA;AACA,IAAAS,MAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AAKA,IAAAW,UAAA,GAAAX,OAAA;AAA8C,IAAAY,WAAA,GAAAZ,OAAA;AAnD9C;AACA;AACA;;AAGA;AACA;AACA;;AAyCA;AACA;AACA;;AAGA,MAAMa,mBAAmB,GAAG,CAAE,OAAO,CAAE;AACvC,MAAMC,mBAAmB,GAAG,SAAS;AAErC,MAAMC,QAAQ,GAAGA,CAAE;EAClBC,GAAG;EACHC,UAAU,EAAE;IAAEC,KAAK;IAAEC,KAAK;IAAEC,MAAM;IAAEC,MAAM;IAAEC,UAAU;IAAEC;EAAe,CAAC;EACxEC,UAAU;EACVC,aAAa;EACbC,OAAO;EACPC,OAAO;EACPC,OAAO;EACPC,MAAM;EACNC,MAAM;EACNC,OAAO;EACPC;AACD,CAAC,KAAM;EACN,MAAMC,eAAe,GAAG,IAAAC,yBAAgB,EAAE,QAAS,CAAC;EACpD,MAAMC,aAAa,GAAG,CAAE,MAAM,EAAE,MAAM,CAAE,CAACC,QAAQ,CAAElB,KAAM,CAAC;EAC1D,MAAMmB,WAAW,GAAG,CAAEF,aAAa,IAAIF,eAAe;EACtD,MAAM,CAAE;IAAEK,YAAY;IAAEC;EAAc,CAAC,EAAEC,cAAc,CAAE,GAAG,IAAAC,iBAAQ,EAAE,CAAC,CAAE,CAAC;EAC1E,MAAM,CAAEC,cAAc,EAAEC,iBAAiB,CAAE,GAAG,IAAAF,iBAAQ,EAAE,KAAM,CAAC;EAC/D,MAAM;IAAEG;EAAgB,CAAC,GAAG,IAAAC,iBAAW,EAAEC,kBAAiB,CAAC;EAC3D,MAAM;IAAEC,YAAY;IAAEC,QAAQ;IAAEC;EAAM,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IAClE,MAAMC,QAAQ,GAAGD,MAAM,CAAEL,kBAAiB,CAAC,CAACO,WAAW,CAAC,CAAC;IACzD,MAAMC,YAAY,GAAGH,MAAM,CAAEI,eAAU,CAAC,CAACC,eAAe,CACvD,MAAM,EACN,gBACD,CAAC;IACD,OAAO;MACNP,KAAK,EAAEK,YAAY,EAAEG,IAAI;MACzBV,YAAY,EAAEK,QAAQ,CAACL,YAAY;MACnCC,QAAQ,EAAEI,QAAQ,CAACJ;IACpB,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,IAAAU,kBAAS,EAAE,MAAM;IAChB;IACA;IACA;IACA,IAAKnC,cAAc,IAAIM,MAAM,KAAKC,MAAM,EAAG;MAC1CL,aAAa,CAAE;QAAEF,cAAc,EAAE;MAAM,CAAE,CAAC;IAC3C;EACD,CAAC,EAAE,EAAG,CAAC;EAEP,IAAAmC,kBAAS,EAAE,MAAM;IAChB,IAAK,CAAElC,UAAU,EAAG;MACnBmB,iBAAiB,CAAE,KAAM,CAAC;IAC3B;EACD,CAAC,EAAE,CAAEnB,UAAU,CAAG,CAAC;EAEnB,SAASmC,aAAaA,CAAA,EAAG;IACxBf,eAAe,CAAE,KAAM,CAAC;EACzB;EAEA,SAASgB,YAAYA,CAAA,EAAG;IACvBhB,eAAe,CAAE,IAAK,CAAC;EACxB;EAEA,MAAMiB,GAAG,gBACR,IAAAjD,WAAA,CAAAkD,IAAA,EAAAlD,WAAA,CAAAmD,QAAA;IAAAC,QAAA,gBACC,IAAApD,WAAA,CAAAqD,GAAA;MACCC,SAAS,EAAC,aAAa;MACvBC,GAAG,EAAGxC,OAAS;MACfX,GAAG,EAAGA,GAAK;MACXoD,MAAM,EAAKC,KAAK,IAAM;QACrB7B,cAAc,CAAE;UACfF,YAAY,EAAE+B,KAAK,CAACC,MAAM,CAAChC,YAAY;UACvCC,aAAa,EAAE8B,KAAK,CAACC,MAAM,CAAC/B;QAC7B,CAAE,CAAC;MACJ;IAAG,CACH,CAAC,EACA,IAAAgC,eAAS,EAAE5C,OAAQ,CAAC,iBAAI,IAAAf,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAoE,OAAO,IAAE,CAAC;EAAA,CACpC,CACF;EAED,IAAIC,UAAU,GAAGZ,GAAG;;EAEpB;EACA;EACA,IAAKxC,MAAM,EAAG;IACboD,UAAU;IAAA;IACT;IACA,IAAA7D,WAAA,CAAAqD,GAAA;MACCS,IAAI,EAAG9C,OAAS;MAChBsC,SAAS,EAAC,kBAAkB;MAC5BS,GAAG,EAAC,MAAM;MACV1B,KAAK,EAAGA,KAAO;MACf2B,OAAO,EAAKP,KAAK,IAAMA,KAAK,CAACQ,cAAc,CAAC,CAAG;MAAAb,QAAA,EAE7CH;IAAG,CACH;IACH,0GACA;EACF;EAEA,IAAK,CAAExB,WAAW,IAAI,CAAEC,YAAY,IAAI,CAAEC,aAAa,EAAG;IACzD,oBAAO,IAAA3B,WAAA,CAAAqD,GAAA;MAAKa,KAAK,EAAG;QAAE3D,KAAK;QAAEC;MAAO,CAAG;MAAA4C,QAAA,EAAGS;IAAU,CAAO,CAAC;EAC7D;;EAEA;EACA;EACA,MAAMM,YAAY,GAAG,GAAG;EAExB,MAAMC,YAAY,GAAG7D,KAAK,IAAI4D,YAAY;EAC1C,MAAME,KAAK,GAAG3C,YAAY,GAAGC,aAAa;EAC1C,MAAM2C,aAAa,GAAGF,YAAY,GAAGC,KAAK;EAC1C,MAAME,QAAQ,GACb7C,YAAY,GAAGC,aAAa,GAAG6C,mBAAQ,GAAGC,IAAI,CAACC,IAAI,CAAEF,mBAAQ,GAAGH,KAAM,CAAC;EACxE,MAAMM,SAAS,GACdhD,aAAa,GAAGD,YAAY,GAAG8C,mBAAQ,GAAGC,IAAI,CAACC,IAAI,CAAEF,mBAAQ,GAAGH,KAAM,CAAC;;EAExE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMO,cAAc,GAAGxC,QAAQ,GAAG,GAAG;EAErC,IAAIyC,eAAe,GAAG,KAAK;EAC3B,IAAIC,cAAc,GAAG,KAAK;;EAE1B;EACA;EACA,IAAKxE,KAAK,KAAK,QAAQ,EAAG;IACzB;IACAuE,eAAe,GAAG,IAAI;IACtBC,cAAc,GAAG,IAAI;EACtB,CAAC,MAAM,IAAK,IAAAC,WAAK,EAAC,CAAC,EAAG;IACrB;IACA;IACA;IACA,IAAKzE,KAAK,KAAK,MAAM,EAAG;MACvBuE,eAAe,GAAG,IAAI;IACvB,CAAC,MAAM;MACNC,cAAc,GAAG,IAAI;IACtB;EACD,CAAC,MAAM;IACN;IACA;IACA,IAAKxE,KAAK,KAAK,OAAO,EAAG;MACxBwE,cAAc,GAAG,IAAI;IACtB,CAAC,MAAM;MACND,eAAe,GAAG,IAAI;IACvB;EACD;EACA;;EAEA,MAAMG,YAAY,GACjB/D,MAAM,IAAIS,YAAY,IAAIC,aAAa,IAAIQ,YAAY;EAExD,MAAM8C,OAAO,GACZD,YAAY,IAAIlD,cAAc,gBAC7B,IAAA9B,WAAA,CAAAqD,GAAA,EAAC3D,YAAA,CAAAwF,yBAAW;IACXC,EAAE,EAAGlE,MAAQ;IACbmE,GAAG,EAAGrE,OAAS;IACfR,KAAK,EAAG6D,YAAc;IACtB5D,MAAM,EAAG8D,aAAe;IACxB3C,aAAa,EAAGA,aAAe;IAC/BD,YAAY,EAAGA,YAAc;IAC7B2D,WAAW,EAAKC,eAAe,IAAM;MACpCxE,OAAO,CAAEwE,eAAe,CAACH,EAAG,CAAC;IAC9B,CAAG;IACHI,eAAe,EAAGA,CAAA,KAAM;MACvBxD,iBAAiB,CAAE,KAAM,CAAC;IAC3B;EAAG,CACH,CAAC,gBAEF,IAAA/B,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAgG,YAAY;IACZC,IAAI,EAAG;MACNlF,KAAK,EAAE6D,YAAY;MACnB5D,MAAM,EAAE8D;IACT,CAAG;IACHoB,UAAU,EAAG9E,UAAY;IACzB2D,QAAQ,EAAGA,QAAU;IACrBnC,QAAQ,EAAGwC,cAAgB;IAC3BD,SAAS,EAAGA,SAAW;IACvBgB,SAAS,EAAGf,cAAc,GAAGP,KAAO;IACpCuB,eAAe;IACfC,MAAM,EAAG;MACRC,GAAG,EAAE,KAAK;MACVC,KAAK,EAAElB,eAAe;MACtBmB,MAAM,EAAE,IAAI;MACZC,IAAI,EAAEnB;IACP,CAAG;IACH/B,aAAa,EAAGA,aAAe;IAC/BC,YAAY,EAAGA,CAAES,KAAK,EAAEyC,SAAS,EAAEC,GAAG,EAAEC,KAAK,KAAM;MAClDpD,YAAY,CAAC,CAAC;MACdnC,aAAa,CAAE;QACdN,KAAK,EAAE8F,QAAQ,CAAEjC,YAAY,GAAGgC,KAAK,CAAC7F,KAAK,EAAE,EAAG,CAAC;QACjDC,MAAM,EAAE6F,QAAQ,CAAE/B,aAAa,GAAG8B,KAAK,CAAC5F,MAAM,EAAE,EAAG;MACpD,CAAE,CAAC;IACJ,CAAG;IAAA4C,QAAA,EAEDS;EAAU,CACC,CACd;;EAEF;EACA;EACA,MAAMyC,eAAe,GAAG,CAAEC,MAAM,EAAEC,sCAAsC;EAExE,MAAMC,mBAAmB,GAAGH,eAAe,GACxCtF,OAAO,GAAG,+BAA+B,GACzCA,OAAO,GAAG,0DAA0D;EAEvE,MAAM0F,oBAAoB,GAAG,IAAAC,iCAAwB,EACpD,IAAAC,QAAE,EACD,kMACD,CAAC,EACD;IACCC,CAAC;IAAA;IACA;IACA,IAAA7G,WAAA,CAAAqD,GAAA;MACCS,IAAI,EAAG2C,mBAAqB;MAC5B/C,MAAM,EAAC,QAAQ;MACfK,GAAG,EAAC;IAAqB,CACzB;EAEH,CACD,CAAC;EAED,oBACC,IAAA/D,WAAA,CAAAkD,IAAA,EAAAlD,WAAA,CAAAmD,QAAA;IAAAC,QAAA,gBACC,IAAApD,WAAA,CAAAqD,GAAA,EAAC3D,YAAA,CAAAoH,iBAAiB;MAAA1D,QAAA,eACjB,IAAApD,WAAA,CAAAkD,IAAA,EAAC1D,WAAA,CAAAuH,SAAS;QAAC1E,KAAK,EAAG,IAAAuE,QAAE,EAAE,UAAW,CAAG;QAAAxD,QAAA,gBACpC,IAAApD,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAwH,YAAY;UACZC,uBAAuB;UACvBC,qBAAqB;UACrBC,KAAK,EAAG,IAAAP,QAAE,EAAE,aAAc,CAAG;UAC7BQ,QAAQ,EAAKC,QAAQ,IACpBxG,aAAa,CAAE;YAAEN,KAAK,EAAE8G;UAAS,CAAE,CACnC;UACDC,GAAG,EAAG/C,QAAU;UAChBgD,GAAG,EAAG3C,cAAgB;UACtB4C,eAAe,EAAG/C,IAAI,CAAC6C,GAAG,CACzBnD,YAAY,EACZS,cACD,CAAG;UACH6C,KAAK,EAAGlH,KAAK,IAAI,EAAI;UACrBmH,QAAQ,EAAG,CAAEjG;QAAa,CAC1B,CAAC,eACF,IAAAzB,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAmI,aAAa;UACbV,uBAAuB;UACvBE,KAAK,EAAG,IAAAP,QAAE,EAAE,oBAAqB,CAAG;UACpCQ,QAAQ,EAAGA,CAAA,KAAMvG,aAAa,CAAE;YAAEJ,MAAM,EAAE,CAAEA;UAAO,CAAE,CAAG;UACxDmH,OAAO,EAAGnH;QAAQ,CAClB,CAAC,EACAA,MAAM,iBACP,IAAAT,WAAA,CAAAqD,GAAA,EAAArD,WAAA,CAAAmD,QAAA;UAAAC,QAAA,eACC,IAAApD,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAmI,aAAa;YACbV,uBAAuB;YACvBE,KAAK,EAAG,IAAAP,QAAE,EAAE,iBAAkB,CAAG;YACjCQ,QAAQ,EAAKK,KAAK,IACjB5G,aAAa,CAAE;cACdH,UAAU,EAAE+G,KAAK,GAAG,QAAQ,GAAG;YAChC,CAAE,CACF;YACDG,OAAO,EAAGlH,UAAU,KAAK;UAAU,CACnC;QAAC,CACD,CACF,EACCU,WAAW,iBACZ,IAAApB,WAAA,CAAAqD,GAAA,EAAArD,WAAA,CAAAmD,QAAA;UAAAC,QAAA,eACC,IAAApD,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAmI,aAAa;YACbV,uBAAuB;YACvBE,KAAK,EAAG,IAAAP,QAAE,EAAE,kBAAmB,CAAG;YAClCQ,QAAQ,EAAKK,KAAK,IAAM;cACvB5G,aAAa,CAAE;gBAAEF,cAAc,EAAE8G;cAAM,CAAE,CAAC;cAC1CtG,OAAO,CAAEsG,KAAK,GAAGxG,MAAM,GAAG4G,SAAU,CAAC;YACtC,CAAG;YACHD,OAAO,EAAG,CAAC,CAAEjH,cAAgB;YAC7BmH,IAAI,EAAGpB;UAAsB,CAC7B;QAAC,CACD,CACF;MAAA,CACS;IAAC,CACM,CAAC,eACpB,IAAA1G,WAAA,CAAAqD,GAAA,EAAC3D,YAAA,CAAAqI,aAAa;MAACC,KAAK,EAAC,OAAO;MAAA5E,QAAA,EACzB4B,YAAY,IAAI,CAAElD,cAAc,iBACjC,IAAA9B,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAyI,aAAa;QACbjE,OAAO,EAAGA,CAAA,KAAMjC,iBAAiB,CAAE,IAAK,CAAG;QAC3CmG,IAAI,EAAGC,WAAM;QACbhB,KAAK,EAAG,IAAAP,QAAE,EAAE,MAAO;MAAG,CACtB;IACD,CACa,CAAC,EACd3B,OAAO;EAAA,CACR,CAAC;AAEL,CAAC;;AAED;AACA;AACA,SAASmD,mBAAmBA,CAAE;EAC7BC,QAAQ;EACRC,YAAY;EACZ,GAAGC;AACJ,CAAC,EAAG;EACH,oBACC,IAAAvI,WAAA,CAAAqD,GAAA,EAAC3D,YAAA,CAAA8I,gBAAgB;IAAA,GACXD,iBAAiB;IACtBE,YAAY,EAAGxI,mBAAqB;IACpCyI,MAAM,EAAGxI,mBAAqB;IAAAkD,QAAA,EAE5BA,CAAE;MAAEuF;IAAQ,CAAC,KACdN,QAAQ,iBACP,IAAArI,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAoJ,QAAQ;MACR5E,OAAO,EAAGA,CAAA,KAAM;QACfsE,YAAY,CAAC,CAAC;QACdK,OAAO,CAAC,CAAC;MACV,CAAG;MAAAvF,QAAA,EAED,IAAAwD,QAAE,EAAE,OAAQ;IAAC,CACN;EACV,CAEe,CAAC;AAErB;AAEA,MAAMiC,oBAAoB,GAAGA,CAAE;EAAEC,aAAa,GAAG,CAAC,CAAC;EAAEC;AAAe,CAAC,KAAM;EAC1E,MAAM;IACLC,QAAQ,EAAE5I,GAAG;IACb6I,UAAU,EAAElI,OAAO;IACnBmI,IAAI,EAAEC,QAAQ;IACdC,aAAa,EAAEC;EAChB,CAAC,GAAGP,aAAa;EACjB,MAAMQ,SAAS,GAAGD,gBAAgB,EAAEE,KAAK,EAAEC,IAAI,EAAEC,IAAI,IAAIN,QAAQ;EACjE,oBACC,IAAAnJ,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAkK,uBAAS;IAAA,GAAMX,cAAc;IAAGY,EAAE,EAAC,MAAM;IAAAvG,QAAA,eACzC,IAAApD,WAAA,CAAAkD,IAAA,EAAC1D,WAAA,CAAAoK,oBAAM;MAACC,OAAO,EAAC,YAAY;MAACF,EAAE,EAAC,MAAM;MAAAvG,QAAA,gBACrC,IAAApD,WAAA,CAAAqD,GAAA;QAAKE,GAAG,EAAGxC,OAAS;QAACX,GAAG,EAAGA;MAAK,CAAE,CAAC,eACnC,IAAAJ,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAsK,QAAQ;QAACH,EAAE,EAAC,MAAM;QAAAvG,QAAA,eAClB,IAAApD,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAuK,sBAAQ;UACRC,aAAa,EAAG,CAAG;UACnB1G,SAAS,EAAC,wDAAwD;UAAAF,QAAA,EAEhEkG;QAAS,CACF;MAAC,CACF,CAAC;IAAA,CACJ;EAAC,CACC,CAAC;AAEd,CAAC;AAEc,SAASW,QAAQA,CAAE;EACjC5J,UAAU;EACViD,SAAS;EACTzC,aAAa;EACbD;AACD,CAAC,EAAG;EACH,MAAM;IAAEL,KAAK;IAAEI;EAAe,CAAC,GAAGN,UAAU;EAC5C,MAAM;IACL6J,UAAU;IACV9I,WAAW;IACXgE,GAAG;IACH+E,UAAU;IACVrB,aAAa;IACbsB;EACD,CAAC,GAAG,IAAA9H,eAAS,EAAIC,MAAM,IAAM;IAC5B,MAAM;MAAE8H,OAAO;MAAEzH,eAAe;MAAE0H;IAAsB,CAAC,GACxD/H,MAAM,CAAEI,eAAU,CAAC;IACpB,MAAM4H,YAAY,GAAGF,OAAO,CAAE,QAAQ,EAAE;MACvCG,IAAI,EAAE,MAAM;MACZ3H,IAAI,EAAE;IACP,CAAE,CAAC;IACH,MAAM4H,YAAY,GAAGF,YAAY,GAC9BD,qBAAqB,CAAE,MAAM,EAAE,MAAO,CAAC,GACvCzC,SAAS;IACZ,MAAM6C,QAAQ,GAAG9H,eAAe,CAAE,MAAM,EAAE,gBAAiB,CAAC;IAC5D,MAAM+H,WAAW,GAAGJ,YAAY,GAC7BE,YAAY,EAAEG,SAAS,GACvBF,QAAQ,EAAEE,SAAS;IACtB,MAAMC,WAAW,GAAGJ,YAAY,EAAEK,SAAS;IAC3C,MAAMC,SAAS,GACdJ,WAAW,IACXpI,MAAM,CAAEI,eAAU,CAAC,CAACqI,QAAQ,CAAEL,WAAW,EAAE;MAC1CM,OAAO,EAAE;IACV,CAAE,CAAC;IACJ,MAAMC,sBAAsB,GAC3BP,WAAW,IACX,CAAEpI,MAAM,CAAEI,eAAU,CAAC,CAACwI,qBAAqB,CAAE,UAAU,EAAE,CACxDR,WAAW,EACX;MAAEM,OAAO,EAAE;IAAO,CAAC,CAClB,CAAC;IAEJ,OAAO;MACNf,UAAU,EAAES,WAAW;MACvBvJ,WAAW,EAAEmJ,YAAY;MACzBnF,GAAG,EAAEsF,QAAQ,EAAEU,IAAI;MACnBtC,aAAa,EAAEiC,SAAS;MACxBX,qBAAqB,EAAEc,sBAAsB;MAC7Cf,UAAU,EAAEU;IACb,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAM;IAAEpI;EAAY,CAAC,GAAG,IAAAH,eAAS,EAAEJ,kBAAiB,CAAC;EACrD,MAAM,CAAEmJ,YAAY,EAAEC,eAAe,CAAE,GAAG,IAAAzJ,iBAAQ,EAAC,CAAC;EAEpD,MAAM;IAAE0J;EAAiB,CAAC,GAAG,IAAAtJ,iBAAW,EAAEU,eAAU,CAAC;EAErD,MAAM7B,OAAO,GAAGA,CAAE0K,QAAQ,EAAEC,eAAe,GAAG,KAAK,KAAM;IACxD;IACA;IACA,IAAK9K,cAAc,IAAI8K,eAAe,EAAG;MACxCtK,OAAO,CAAEqK,QAAS,CAAC;IACpB;IAEAD,gBAAgB,CAAE,MAAM,EAAE,MAAM,EAAE1D,SAAS,EAAE;MAC5C+C,SAAS,EAAEY;IACZ,CAAE,CAAC;EACJ,CAAC;EAED,MAAMrK,OAAO,GAAKqK,QAAQ;EACzB;EACAD,gBAAgB,CAAE,MAAM,EAAE,MAAM,EAAE1D,SAAS,EAAE;IAC5CiD,SAAS,EAAEU,QAAQ,aAARA,QAAQ,cAARA,QAAQ,GAAI;EACxB,CAAE,CAAC;EAEJ,MAAM;IAAExC,QAAQ,EAAE5I,GAAG;IAAE6I,UAAU,EAAElI;EAAQ,CAAC,GAAG+H,aAAa,aAAbA,aAAa,cAAbA,aAAa,GAAI,CAAC,CAAC;EAElE,MAAM4C,mBAAmB,GAAKC,KAAK,IAAM;IACxC;IACA;IACA,IAAKhL,cAAc,KAAKkH,SAAS,EAAG;MACnC,MAAM4D,eAAe,GAAG,CAAEtB,UAAU;MACpCtJ,aAAa,CAAE;QAAEF,cAAc,EAAE8K;MAAgB,CAAE,CAAC;;MAEpD;MACA;MACAG,YAAY,CAAED,KAAK,EAAEF,eAAgB,CAAC;MACtC;IACD;IAEAG,YAAY,CAAED,KAAM,CAAC;EACtB,CAAC;EAED,MAAMC,YAAY,GAAGA,CAAED,KAAK,EAAEF,eAAe,GAAG,KAAK,KAAM;IAC1D,IAAK,CAAEE,KAAK,EAAG;MACd;IACD;IAEA,IAAK,CAAEA,KAAK,CAACxG,EAAE,IAAIwG,KAAK,CAACvG,GAAG,EAAG;MAC9B;MACAkG,eAAe,CAAEK,KAAK,CAACvG,GAAI,CAAC;MAC5BtE,OAAO,CAAE+G,SAAU,CAAC;MACpB;IACD;IAEA/G,OAAO,CAAE6K,KAAK,CAACxG,EAAE,EAAEsG,eAAgB,CAAC;EACrC,CAAC;EAED,MAAMnD,YAAY,GAAGA,CAAA,KAAM;IAC1BxH,OAAO,CAAE,IAAK,CAAC;IACfD,aAAa,CAAE;MAAEN,KAAK,EAAEsH;IAAU,CAAE,CAAC;EACtC,CAAC;EAED,MAAM;IAAEgE;EAAkB,CAAC,GAAG,IAAA5J,iBAAW,EAAE6J,cAAa,CAAC;EACzD,MAAMC,aAAa,GAAKC,OAAO,IAAM;IACpCH,iBAAiB,CAAEG,OAAO,EAAE;MAAEC,IAAI,EAAE;IAAW,CAAE,CAAC;IAClDX,eAAe,CAAC,CAAC;EAClB,CAAC;EAED,MAAMY,WAAW,GAAKC,SAAS,IAAM;IACpC1J,WAAW,CAAC,CAAC,CAAC2J,WAAW,CAAE;MAC1B3D,YAAY,EAAExI,mBAAmB;MACjCkM,SAAS;MACTE,YAAYA,CAAE,CAAEC,KAAK,CAAE,EAAG;QACzB,IAAK,IAAA3I,eAAS,EAAE2I,KAAK,EAAElH,GAAI,CAAC,EAAG;UAC9BkG,eAAe,CAAEgB,KAAK,CAAClH,GAAI,CAAC;UAC5B;QACD;QACAsG,mBAAmB,CAAEY,KAAM,CAAC;MAC7B,CAAC;MACDC,OAAO,EAAER,aAAa;MACtBzD;IACD,CAAE,CAAC;EACJ,CAAC;EAED,MAAMkE,qBAAqB,GAAG;IAC7BnE,QAAQ,EAAEtH,OAAO;IACjB8B,IAAI,EAAE,CAAE9B,OAAO,GAAG,IAAA6F,QAAE,EAAE,aAAc,CAAC,GAAG,IAAAA,QAAE,EAAE,SAAU,CAAC;IACvD6F,QAAQ,EAAEb,YAAY;IACtBW,OAAO,EAAER,aAAa;IACtBzD;EACD,CAAC;EACD,MAAMoE,QAAQ,GAAGtL,WAAW,iBAC3B,IAAApB,WAAA,CAAAqD,GAAA,EAAC3D,YAAA,CAAAqI,aAAa;IAACC,KAAK,EAAC,OAAO;IAAA5E,QAAA,eAC3B,IAAApD,WAAA,CAAAqD,GAAA,EAAC+E,mBAAmB;MAAA,GAAMoE;IAAqB,CAAI;EAAC,CACtC,CACf;EAED,IAAIG,SAAS;EACb,MAAMC,SAAS,GAAG1C,UAAU,KAAKrC,SAAS,IAAIuC,qBAAqB;EACnE,IAAKwC,SAAS,EAAG;IAChBD,SAAS,gBAAG,IAAA3M,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAoE,OAAO,IAAE,CAAC;EACxB;;EAEA;EACA,IAAAd,kBAAS,EAAE,MAAM;IAChB,IAAK/B,OAAO,IAAIsK,YAAY,EAAG;MAC9BC,eAAe,CAAC,CAAC;IAClB;EACD,CAAC,EAAE,CAAEvK,OAAO,EAAEsK,YAAY,CAAG,CAAC;EAE9B,IAAK,CAAC,CAAEtK,OAAO,IAAI,CAAC,CAAEsK,YAAY,EAAG;IACpCsB,SAAS,gBACR,IAAA3M,WAAA,CAAAqD,GAAA,EAAArD,WAAA,CAAAmD,QAAA;MAAAC,QAAA,eACC,IAAApD,WAAA,CAAAqD,GAAA,EAAClD,QAAQ;QACRC,GAAG,EAAGA,GAAK;QACXC,UAAU,EAAGA,UAAY;QACzBiD,SAAS,EAAGA,SAAW;QACvB1C,UAAU,EAAGA,UAAY;QACzBC,aAAa,EAAGA,aAAe;QAC/BE,OAAO,EAAGsK,YAAY,IAAItK,OAAS;QACnCD,OAAO,EAAGA,OAAS;QACnBG,MAAM,EAAG6H,aAAa,EAAE3D,EAAE,IAAI+E,UAAY;QAC1ClJ,OAAO,EAAGoE,GAAK;QACfjE,OAAO,EAAGA,OAAS;QACnBD,MAAM,EAAGiJ,UAAY;QACrB/I,WAAW,EAAGA;MAAa,CAC3B;IAAC,CACD,CACF;EACF;EACA,MAAMyL,WAAW,GAAKC,OAAO,IAAM;IAClC,MAAMC,oBAAoB,GAAG,IAAAC,aAAI,EAChC,gCAAgC,EAChC1J,SACD,CAAC;IAED,oBACC,IAAAtD,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAyN,WAAW;MACX3J,SAAS,EAAGyJ,oBAAsB;MAClCG,OAAO,EAAGP,SAAW;MACrBQ,gBAAgB;MAChBjJ,KAAK,EAAG;QACP3D;MACD,CAAG;MAAA6C,QAAA,EAED0J;IAAO,CACG,CAAC;EAEhB,CAAC;EAED,MAAMM,OAAO,GAAG,IAAAJ,aAAI,EAAE1J,SAAS,EAAE;IAChC,iBAAiB,EAAE,CAAE/C,KAAK;IAC1B,cAAc,EAAE8K;EACjB,CAAE,CAAC;EAEH,MAAMgC,UAAU,GAAG,IAAAC,0BAAa,EAAE;IAAEhK,SAAS,EAAE8J;EAAQ,CAAE,CAAC;EAE1D,MAAMG,mBAAmB,GAAG,CAAEnM,WAAW,IAAIL,OAAO,kBACnD,IAAAf,WAAA,CAAAqD,GAAA,EAAC3D,YAAA,CAAAoH,iBAAiB;IAAA1D,QAAA,eACjB,IAAApD,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAuH,SAAS;MAAC1E,KAAK,EAAG,IAAAuE,QAAE,EAAE,OAAQ,CAAG;MAAAxD,QAAA,eACjC,IAAApD,WAAA,CAAAkD,IAAA;QAAKI,SAAS,EAAC,4DAA4D;QAAAF,QAAA,GACxE,CAAEhC,WAAW,IAAI,CAAC,CAAEL,OAAO,iBAC5B,IAAAf,WAAA,CAAAqD,GAAA,EAACwF,oBAAoB;UACpBC,aAAa,EAAGA,aAAe;UAC/BC,cAAc,EAAG;YAChByE,UAAU,EAAE,IAAI;YAChBlK,SAAS,EACR;UACF;QAAG,CACH,CACD,EACClC,WAAW,IAAI,CAAC,CAAEL,OAAO,iBAC1B,IAAAf,WAAA,CAAAqD,GAAA,EAAC+E,mBAAmB;UAAA,GACdoE,qBAAqB;UAC1B3J,IAAI,eACH,IAAA7C,WAAA,CAAAqD,GAAA,EAACwF,oBAAoB;YACpBC,aAAa,EAAGA;UAAe,CAC/B,CACD;UACD2E,YAAY,EAAG,CAAC;QAAG,CACnB,CACD,EACCrM,WAAW,IAAI,CAAEL,OAAO,iBACzB,IAAAf,WAAA,CAAAqD,GAAA,EAAC3D,YAAA,CAAAgO,gBAAgB;UAAAtK,QAAA,eAChB,IAAApD,WAAA,CAAAqD,GAAA,EAAC3D,YAAA,CAAAiO,WAAW;YACXlB,QAAQ,EAAGf,mBAAqB;YAChCjD,YAAY,EAAGxI,mBAAqB;YACpC2N,MAAM,EAAGA,CAAE;cAAEC;YAAK,CAAC,kBAClB,IAAA7N,WAAA,CAAAkD,IAAA;cAAKI,SAAS,EAAC,qDAAqD;cAAAF,QAAA,gBACnE,IAAApD,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAsO,MAAM;gBACN9J,OAAO,EAAG6J,IAAM;gBAChBE,OAAO,EAAC,WAAW;gBAAA3K,QAAA,EAEjBwJ,SAAS,gBACV,IAAA5M,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAoE,OAAO,IAAE,CAAC,GAEX,IAAAgD,QAAE,EAAE,aAAc;cAClB,CACM,CAAC,eACT,IAAA5G,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAwO,QAAQ;gBAAC9B,WAAW,EAAGA;cAAa,CAAE,CAAC;YAAA,CACpC;UACH,CACH;QAAC,CACe,CAClB;MAAA,CACG;IAAC,CACI;EAAC,CACM,CACnB;EAED,oBACC,IAAAlM,WAAA,CAAAkD,IAAA;IAAA,GAAUmK,UAAU;IAAAjK,QAAA,GACjBsJ,QAAQ,EACRa,mBAAmB,EACnB,CAAE,CAAC,CAAExM,OAAO,IAAI,CAAC,CAAEsK,YAAY,KAAMsB,SAAS,EAC9C,CAAEtB,YAAY,IAAI,CAAEtK,OAAO,IAAI,CAAEK,WAAW,iBAC7C,IAAApB,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAyN,WAAW;MAAC3J,SAAS,EAAC,uBAAuB;MAAAF,QAAA,EAC3C,CAAC,CAAEwJ,SAAS,iBACb,IAAA5M,WAAA,CAAAqD,GAAA;QAAMC,SAAS,EAAC,iCAAiC;QAAAF,QAAA,eAChD,IAAApD,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAoE,OAAO,IAAE;MAAC,CACN;IACN,CACW,CACb,EACC,CAAEyH,YAAY,IAAI,CAAEtK,OAAO,IAAIK,WAAW,iBAC3C,IAAApB,WAAA,CAAAqD,GAAA,EAAC3D,YAAA,CAAAuO,gBAAgB;MAChBxB,QAAQ,EAAGf,mBAAqB;MAChChD,MAAM,EAAGxI,mBAAqB;MAC9BuI,YAAY,EAAGxI,mBAAqB;MACpCsM,OAAO,EAAGR,aAAe;MACzBc,WAAW,EAAGA,WAAa;MAC3BqB,kBAAkB,EAAGA,CAAE;QAAEL;MAAK,CAAC,KAAM;QACpC,oBACC,IAAA7N,WAAA,CAAAqD,GAAA,EAAC7D,WAAA,CAAAsO,MAAM;UACN5F,IAAI,EAAGiG,aAAQ;UACfJ,OAAO,EAAC,SAAS;UACjB5G,KAAK,EAAG,IAAAP,QAAE,EAAE,aAAc,CAAG;UAC7BwH,WAAW;UACXC,eAAe,EAAC,cAAc;UAC9BrK,OAAO,EAAGA,CAAA,KAAM;YACf6J,IAAI,CAAC,CAAC;UACP;QAAG,CACH,CAAC;MAEJ;IAAG,CACH,CACD;EAAA,CACG,CAAC;AAER","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_element","_i18n","_components","_compose","_blockEditor","_data","_coreData","_icons","_notices","_constants","_jsxRuntime","ALLOWED_MEDIA_TYPES","ACCEPT_MEDIA_STRING","SiteLogo","alt","attributes","align","width","height","isLink","linkTarget","shouldSyncIcon","isSelected","setAttributes","setLogo","logoUrl","siteUrl","logoId","iconId","setIcon","canUserEdit","isLargeViewport","useViewportMatch","isWideAligned","includes","isResizable","naturalWidth","naturalHeight","setNaturalSize","useState","isEditingImage","setIsEditingImage","toggleSelection","useDispatch","blockEditorStore","imageEditing","maxWidth","title","useSelect","select","settings","getSettings","siteEntities","coreStore","getEntityRecord","name","useEffect","onResizeStart","onResizeStop","img","jsxs","Fragment","children","jsx","className","src","onLoad","event","target","isBlobURL","Spinner","imgWrapper","href","rel","onClick","preventDefault","style","defaultWidth","currentWidth","ratio","currentHeight","minWidth","MIN_SIZE","Math","ceil","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","isRTL","canEditImage","imgEdit","__experimentalImageEditor","id","url","onSaveImage","imageAttributes","onFinishEditing","ResizableBox","size","showHandle","maxHeight","lockAspectRatio","enable","top","right","bottom","left","direction","elt","delta","parseInt","shouldUseNewUrl","window","__experimentalUseCustomizerSiteLogoUrl","siteIconSettingsUrl","syncSiteIconHelpText","createInterpolateElement","__","a","InspectorControls","PanelBody","RangeControl","__nextHasNoMarginBottom","__next40pxDefaultSize","label","onChange","newWidth","min","max","initialPosition","value","disabled","ToggleControl","checked","undefined","help","BlockControls","group","ToolbarButton","icon","crop","SiteLogoReplaceFlow","mediaURL","onRemoveLogo","mediaReplaceProps","MediaReplaceFlow","allowedTypes","accept","onReset","InspectorLogoPreview","mediaItemData","itemGroupProps","alt_text","source_url","slug","logoSlug","media_details","logoMediaDetails","logoLabel","sizes","full","file","__experimentalItemGroup","as","__experimentalHStack","justify","FlexItem","__experimentalTruncate","numberOfLines","LogoEdit","siteLogoId","siteIconId","isRequestingMediaItem","canUser","getEditedEntityRecord","_canUserEdit","kind","siteSettings","siteData","_siteLogoId","site_logo","_siteIconId","site_icon","mediaItem","getMedia","context","_isRequestingMediaItem","hasFinishedResolution","home","temporaryURL","setTemporaryURL","editEntityRecord","newValue","shouldForceSync","onInitialSelectLogo","media","onSelectLogo","createErrorNotice","noticesStore","onUploadError","message","type","onFilesDrop","filesList","mediaUpload","onFileChange","image","onError","mediaReplaceFlowProps","onSelect","controls","logoImage","isLoading","placeholder","content","placeholderClassName","clsx","Placeholder","preview","withIllustration","classes","blockProps","useBlockProps","mediaInspectorPanel","isBordered","popoverProps","MediaUploadCheck","MediaUpload","render","open","Button","variant","DropZone","MediaPlaceholder","mediaLibraryButton","upload","showTooltip","tooltipPosition"],"sources":["@wordpress/block-library/src/site-logo/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tcreateInterpolateElement,\n\tuseEffect,\n\tuseState,\n} from '@wordpress/element';\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tToggleControl,\n\tToolbarButton,\n\tPlaceholder,\n\tButton,\n\tDropZone,\n\tFlexItem,\n\t__experimentalItemGroup as ItemGroup,\n\t__experimentalHStack as HStack,\n\t__experimentalTruncate as Truncate,\n} from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadCheck,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalImageEditor as ImageEditor,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { crop, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport { MIN_SIZE } from '../image/constants';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst ACCEPT_MEDIA_STRING = 'image/*';\n\nconst SiteLogo = ( {\n\talt,\n\tattributes: { align, width, height, isLink, linkTarget, shouldSyncIcon },\n\tisSelected,\n\tsetAttributes,\n\tsetLogo,\n\tlogoUrl,\n\tsiteUrl,\n\tlogoId,\n\ticonId,\n\tsetIcon,\n\tcanUserEdit,\n} ) => {\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = [ 'wide', 'full' ].includes( align );\n\tconst isResizable = ! isWideAligned && isLargeViewport;\n\tconst [ { naturalWidth, naturalHeight }, setNaturalSize ] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst { toggleSelection } = useDispatch( blockEditorStore );\n\tconst { imageEditing, maxWidth, title } = useSelect( ( select ) => {\n\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\tconst siteEntities = select( coreStore ).getEntityRecord(\n\t\t\t'root',\n\t\t\t'__unstableBase'\n\t\t);\n\t\treturn {\n\t\t\ttitle: siteEntities?.name,\n\t\t\timageEditing: settings.imageEditing,\n\t\t\tmaxWidth: settings.maxWidth,\n\t\t};\n\t}, [] );\n\n\tuseEffect( () => {\n\t\t// Turn the `Use as site icon` toggle off if it is on but the logo and icon have\n\t\t// fallen out of sync. This can happen if the toggle is saved in the `on` position,\n\t\t// but changes are later made to the site icon in the Customizer.\n\t\tif ( shouldSyncIcon && logoId !== iconId ) {\n\t\t\tsetAttributes( { shouldSyncIcon: false } );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tconst img = (\n\t\t<>\n\t\t\t<img\n\t\t\t\tclassName=\"custom-logo\"\n\t\t\t\tsrc={ logoUrl }\n\t\t\t\talt={ alt }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetNaturalSize( {\n\t\t\t\t\t\tnaturalWidth: event.target.naturalWidth,\n\t\t\t\t\t\tnaturalHeight: event.target.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t{ isBlobURL( logoUrl ) && <Spinner /> }\n\t\t</>\n\t);\n\n\tlet imgWrapper = img;\n\n\t// Disable reason: Image itself is not meant to be interactive, but\n\t// should direct focus to block.\n\tif ( isLink ) {\n\t\timgWrapper = (\n\t\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t\t<a\n\t\t\t\thref={ siteUrl }\n\t\t\t\tclassName=\"custom-logo-link\"\n\t\t\t\trel=\"home\"\n\t\t\t\ttitle={ title }\n\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</a>\n\t\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t);\n\t}\n\n\tif ( ! isResizable || ! naturalWidth || ! naturalHeight ) {\n\t\treturn <div style={ { width, height } }>{ imgWrapper }</div>;\n\t}\n\n\t// Set the default width to a responsible size.\n\t// Note that this width is also set in the attached frontend CSS file.\n\tconst defaultWidth = 120;\n\n\tconst currentWidth = width || defaultWidth;\n\tconst ratio = naturalWidth / naturalHeight;\n\tconst currentHeight = currentWidth / ratio;\n\tconst minWidth =\n\t\tnaturalWidth < naturalHeight ? MIN_SIZE : Math.ceil( MIN_SIZE * ratio );\n\tconst minHeight =\n\t\tnaturalHeight < naturalWidth ? MIN_SIZE : Math.ceil( MIN_SIZE / ratio );\n\n\t// With the current implementation of ResizableBox, an image needs an\n\t// explicit pixel value for the max-width. In absence of being able to\n\t// set the content-width, this max-width is currently dictated by the\n\t// vanilla editor style. The following variable adds a buffer to this\n\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t// in most cases, allow you to scale the image beyond the width of the\n\t// main column, though not infinitely.\n\t// @todo It would be good to revisit this once a content-width variable\n\t// becomes available.\n\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\tlet showRightHandle = false;\n\tlet showLeftHandle = false;\n\n\t/* eslint-disable no-lonely-if */\n\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\tif ( align === 'center' ) {\n\t\t// When the image is centered, show both handles.\n\t\tshowRightHandle = true;\n\t\tshowLeftHandle = true;\n\t} else if ( isRTL() ) {\n\t\t// In RTL mode the image is on the right by default.\n\t\t// Show the right handle and hide the left handle only when it is\n\t\t// aligned left. Otherwise always show the left handle.\n\t\tif ( align === 'left' ) {\n\t\t\tshowRightHandle = true;\n\t\t} else {\n\t\t\tshowLeftHandle = true;\n\t\t}\n\t} else {\n\t\t// Show the left handle and hide the right handle only when the\n\t\t// image is aligned right. Otherwise always show the right handle.\n\t\tif ( align === 'right' ) {\n\t\t\tshowLeftHandle = true;\n\t\t} else {\n\t\t\tshowRightHandle = true;\n\t\t}\n\t}\n\t/* eslint-enable no-lonely-if */\n\n\tconst canEditImage =\n\t\tlogoId && naturalWidth && naturalHeight && imageEditing;\n\n\tconst imgEdit =\n\t\tcanEditImage && isEditingImage ? (\n\t\t\t<ImageEditor\n\t\t\t\tid={ logoId }\n\t\t\t\turl={ logoUrl }\n\t\t\t\twidth={ currentWidth }\n\t\t\t\theight={ currentHeight }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t\tonSaveImage={ ( imageAttributes ) => {\n\t\t\t\t\tsetLogo( imageAttributes.id );\n\t\t\t\t} }\n\t\t\t\tonFinishEditing={ () => {\n\t\t\t\t\tsetIsEditingImage( false );\n\t\t\t\t} }\n\t\t\t/>\n\t\t) : (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: currentWidth,\n\t\t\t\t\theight: currentHeight,\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ imgWrapper }\n\t\t\t</ResizableBox>\n\t\t);\n\n\t// Support the previous location for the Site Icon settings. To be removed\n\t// when the required WP core version for Gutenberg is >= 6.5.0.\n\tconst shouldUseNewUrl = ! window?.__experimentalUseCustomizerSiteLogoUrl;\n\n\tconst siteIconSettingsUrl = shouldUseNewUrl\n\t\t? siteUrl + '/wp-admin/options-general.php'\n\t\t: siteUrl + '/wp-admin/customize.php?autofocus[section]=title_tagline';\n\n\tconst syncSiteIconHelpText = createInterpolateElement(\n\t\t__(\n\t\t\t'Site Icons are what you see in browser tabs, bookmark bars, and within the WordPress mobile apps. To use a custom icon that is different from your site logo, use the <a>Site Icon settings</a>.'\n\t\t),\n\t\t{\n\t\t\ta: (\n\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t<a\n\t\t\t\t\thref={ siteIconSettingsUrl }\n\t\t\t\t\ttarget=\"_blank\"\n\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t/>\n\t\t\t),\n\t\t}\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Image width' ) }\n\t\t\t\t\t\tonChange={ ( newWidth ) =>\n\t\t\t\t\t\t\tsetAttributes( { width: newWidth } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ minWidth }\n\t\t\t\t\t\tmax={ maxWidthBuffer }\n\t\t\t\t\t\tinitialPosition={ Math.min(\n\t\t\t\t\t\t\tdefaultWidth,\n\t\t\t\t\t\t\tmaxWidthBuffer\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\t\tdisabled={ ! isResizable }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link image to home' ) }\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\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{ canUserEdit && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Use as Site Icon' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( { shouldSyncIcon: value } );\n\t\t\t\t\t\t\t\t\tsetIcon( value ? logoId : undefined );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\tchecked={ !! shouldSyncIcon }\n\t\t\t\t\t\t\t\thelp={ syncSiteIconHelpText }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ canEditImage && ! isEditingImage && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ imgEdit }\n\t\t</>\n\t);\n};\n\n// This is a light wrapper around MediaReplaceFlow because the block has two\n// different MediaReplaceFlows, one for the inspector and one for the toolbar.\nfunction SiteLogoReplaceFlow( {\n\tmediaURL,\n\tonRemoveLogo,\n\t...mediaReplaceProps\n} ) {\n\treturn (\n\t\t<MediaReplaceFlow\n\t\t\t{ ...mediaReplaceProps }\n\t\t\tmediaURL={ mediaURL }\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t\tonReset={ onRemoveLogo }\n\t\t/>\n\t);\n}\n\nconst InspectorLogoPreview = ( { mediaItemData = {}, itemGroupProps } ) => {\n\tconst {\n\t\talt_text: alt,\n\t\tsource_url: logoUrl,\n\t\tslug: logoSlug,\n\t\tmedia_details: logoMediaDetails,\n\t} = mediaItemData;\n\tconst logoLabel = logoMediaDetails?.sizes?.full?.file || logoSlug;\n\treturn (\n\t\t<ItemGroup { ...itemGroupProps } as=\"span\">\n\t\t\t<HStack justify=\"flex-start\" as=\"span\">\n\t\t\t\t<img src={ logoUrl } alt={ alt } />\n\t\t\t\t<FlexItem as=\"span\">\n\t\t\t\t\t<Truncate\n\t\t\t\t\t\tnumberOfLines={ 1 }\n\t\t\t\t\t\tclassName=\"block-library-site-logo__inspector-media-replace-title\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ logoLabel }\n\t\t\t\t\t</Truncate>\n\t\t\t\t</FlexItem>\n\t\t\t</HStack>\n\t\t</ItemGroup>\n\t);\n};\n\nexport default function LogoEdit( {\n\tattributes,\n\tclassName,\n\tsetAttributes,\n\tisSelected,\n} ) {\n\tconst { width, shouldSyncIcon } = attributes;\n\tconst {\n\t\tsiteLogoId,\n\t\tcanUserEdit,\n\t\turl,\n\t\tsiteIconId,\n\t\tmediaItemData,\n\t\tisRequestingMediaItem,\n\t} = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst _canUserEdit = canUser( 'update', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} );\n\t\tconst siteSettings = _canUserEdit\n\t\t\t? getEditedEntityRecord( 'root', 'site' )\n\t\t\t: undefined;\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\t\tconst _siteLogoId = _canUserEdit\n\t\t\t? siteSettings?.site_logo\n\t\t\t: siteData?.site_logo;\n\t\tconst _siteIconId = siteSettings?.site_icon;\n\t\tconst mediaItem =\n\t\t\t_siteLogoId &&\n\t\t\tselect( coreStore ).getMedia( _siteLogoId, {\n\t\t\t\tcontext: 'view',\n\t\t\t} );\n\t\tconst _isRequestingMediaItem =\n\t\t\t!! _siteLogoId &&\n\t\t\t! select( coreStore ).hasFinishedResolution( 'getMedia', [\n\t\t\t\t_siteLogoId,\n\t\t\t\t{ context: 'view' },\n\t\t\t] );\n\n\t\treturn {\n\t\t\tsiteLogoId: _siteLogoId,\n\t\t\tcanUserEdit: _canUserEdit,\n\t\t\turl: siteData?.home,\n\t\t\tmediaItemData: mediaItem,\n\t\t\tisRequestingMediaItem: _isRequestingMediaItem,\n\t\t\tsiteIconId: _siteIconId,\n\t\t};\n\t}, [] );\n\tconst { getSettings } = useSelect( blockEditorStore );\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst setLogo = ( newValue, shouldForceSync = false ) => {\n\t\t// `shouldForceSync` is used to force syncing when the attribute\n\t\t// may not have updated yet.\n\t\tif ( shouldSyncIcon || shouldForceSync ) {\n\t\t\tsetIcon( newValue );\n\t\t}\n\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_logo: newValue,\n\t\t} );\n\t};\n\n\tconst setIcon = ( newValue ) =>\n\t\t// The new value needs to be `null` to reset the Site Icon.\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\tsite_icon: newValue ?? null,\n\t\t} );\n\n\tconst { alt_text: alt, source_url: logoUrl } = mediaItemData ?? {};\n\n\tconst onInitialSelectLogo = ( media ) => {\n\t\t// Initialize the syncSiteIcon toggle. If we currently have no Site logo and no\n\t\t// site icon, automatically sync the logo to the icon.\n\t\tif ( shouldSyncIcon === undefined ) {\n\t\t\tconst shouldForceSync = ! siteIconId;\n\t\t\tsetAttributes( { shouldSyncIcon: shouldForceSync } );\n\n\t\t\t// Because we cannot rely on the `shouldSyncIcon` attribute to have updated by\n\t\t\t// the time `setLogo` is called, pass an argument to force the syncing.\n\t\t\tonSelectLogo( media, shouldForceSync );\n\t\t\treturn;\n\t\t}\n\n\t\tonSelectLogo( media );\n\t};\n\n\tconst onSelectLogo = ( media, shouldForceSync = false ) => {\n\t\tif ( ! media ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! media.id && media.url ) {\n\t\t\t// This is a temporary blob image.\n\t\t\tsetTemporaryURL( media.url );\n\t\t\tsetLogo( undefined );\n\t\t\treturn;\n\t\t}\n\n\t\tsetLogo( media.id, shouldForceSync );\n\t};\n\n\tconst onRemoveLogo = () => {\n\t\tsetLogo( null );\n\t\tsetAttributes( { width: undefined } );\n\t};\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst onFilesDrop = ( filesList ) => {\n\t\tgetSettings().mediaUpload( {\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tfilesList,\n\t\t\tonFileChange( [ image ] ) {\n\t\t\t\tif ( isBlobURL( image?.url ) ) {\n\t\t\t\t\tsetTemporaryURL( image.url );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tonInitialSelectLogo( image );\n\t\t\t},\n\t\t\tonError: onUploadError,\n\t\t\tonRemoveLogo,\n\t\t} );\n\t};\n\n\tconst mediaReplaceFlowProps = {\n\t\tmediaURL: logoUrl,\n\t\tname: ! logoUrl ? __( 'Choose logo' ) : __( 'Replace' ),\n\t\tonSelect: onSelectLogo,\n\t\tonError: onUploadError,\n\t\tonRemoveLogo,\n\t};\n\tconst controls = canUserEdit && (\n\t\t<BlockControls group=\"other\">\n\t\t\t<SiteLogoReplaceFlow { ...mediaReplaceFlowProps } />\n\t\t</BlockControls>\n\t);\n\n\tlet logoImage;\n\tconst isLoading = siteLogoId === undefined || isRequestingMediaItem;\n\tif ( isLoading ) {\n\t\tlogoImage = <Spinner />;\n\t}\n\n\t// Reset temporary url when logoUrl is available.\n\tuseEffect( () => {\n\t\tif ( logoUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ logoUrl, temporaryURL ] );\n\n\tif ( !! logoUrl || !! temporaryURL ) {\n\t\tlogoImage = (\n\t\t\t<>\n\t\t\t\t<SiteLogo\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tclassName={ className }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tlogoUrl={ temporaryURL || logoUrl }\n\t\t\t\t\tsetLogo={ setLogo }\n\t\t\t\t\tlogoId={ mediaItemData?.id || siteLogoId }\n\t\t\t\t\tsiteUrl={ url }\n\t\t\t\t\tsetIcon={ setIcon }\n\t\t\t\t\ticonId={ siteIconId }\n\t\t\t\t\tcanUserEdit={ canUserEdit }\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\tconst placeholder = ( content ) => {\n\t\tconst placeholderClassName = clsx(\n\t\t\t'block-editor-media-placeholder',\n\t\t\tclassName\n\t\t);\n\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ placeholderClassName }\n\t\t\t\tpreview={ logoImage }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\twidth,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst classes = clsx( className, {\n\t\t'is-default-size': ! width,\n\t\t'is-transient': temporaryURL,\n\t} );\n\n\tconst blockProps = useBlockProps( { className: classes } );\n\n\tconst mediaInspectorPanel = ( canUserEdit || logoUrl ) && (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Media' ) }>\n\t\t\t\t<div className=\"block-library-site-logo__inspector-media-replace-container\">\n\t\t\t\t\t{ ! canUserEdit && !! logoUrl && (\n\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\tmediaItemData={ mediaItemData }\n\t\t\t\t\t\t\titemGroupProps={ {\n\t\t\t\t\t\t\t\tisBordered: true,\n\t\t\t\t\t\t\t\tclassName:\n\t\t\t\t\t\t\t\t\t'block-library-site-logo__inspector-readonly-logo-preview',\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{ canUserEdit && !! logoUrl && (\n\t\t\t\t\t\t<SiteLogoReplaceFlow\n\t\t\t\t\t\t\t{ ...mediaReplaceFlowProps }\n\t\t\t\t\t\t\tname={\n\t\t\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\t\t\tmediaItemData={ mediaItemData }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tpopoverProps={ {} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ canUserEdit && ! logoUrl && (\n\t\t\t\t\t\t<MediaUploadCheck>\n\t\t\t\t\t\t\t<MediaUpload\n\t\t\t\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\t\trender={ ( { open } ) => (\n\t\t\t\t\t\t\t\t\t<div className=\"block-library-site-logo__inspector-upload-container\">\n\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t\t\t\tonClick={ open }\n\t\t\t\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ isLoading ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<Spinner />\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__( 'Choose logo' )\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t<DropZone onFilesDrop={ onFilesDrop } />\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</MediaUploadCheck>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t{ mediaInspectorPanel }\n\t\t\t{ ( !! logoUrl || !! temporaryURL ) && logoImage }\n\t\t\t{ ( isLoading ||\n\t\t\t\t( ! temporaryURL && ! logoUrl && ! canUserEdit ) ) && (\n\t\t\t\t<Placeholder className=\"site-logo_placeholder\" withIllustration>\n\t\t\t\t\t{ isLoading && (\n\t\t\t\t\t\t<span className=\"components-placeholder__preview\">\n\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t) }\n\t\t\t{ ! isLoading && ! temporaryURL && ! logoUrl && canUserEdit && (\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\tonSelect={ onInitialSelectLogo }\n\t\t\t\t\taccept={ ACCEPT_MEDIA_STRING }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Choose logo' ) }\n\t\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\t\ttooltipPosition=\"middle right\"\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\topen();\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -93,7 +93,10 @@ const metadata = exports.metadata = {
|
|
|
93
93
|
}
|
|
94
94
|
},
|
|
95
95
|
editorStyle: "wp-block-site-title-editor",
|
|
96
|
-
style: "wp-block-site-title"
|
|
96
|
+
style: "wp-block-site-title",
|
|
97
|
+
selectors: {
|
|
98
|
+
typography: ".wp-block-site-title > span, .wp-block-site-title > a"
|
|
99
|
+
}
|
|
97
100
|
};
|
|
98
101
|
const {
|
|
99
102
|
name
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_icons","require","_initBlock","_interopRequireDefault","_edit","_deprecated","_transforms","metadata","exports","$schema","apiVersion","name","title","category","description","textdomain","attributes","level","type","levelOptions","textAlign","isLink","linkTarget","example","viewportWidth","supports","align","html","color","gradients","link","__experimentalDefaultControls","background","text","spacing","padding","margin","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalTextTransform","__experimentalTextDecoration","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalWritingMode","interactivity","clientNavigation","__experimentalBorder","radius","width","style","editorStyle","settings","icon","edit","transforms","deprecated","init","initBlock"],"sources":["@wordpress/block-library/src/site-title/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { mapMarker as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport deprecated from './deprecated';\nimport transforms from './transforms';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tviewportWidth: 350,\n\t\tattributes: {\n\t\t\ttextAlign: 'center',\n\t\t},\n\t},\n\tedit,\n\ttransforms,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AAKA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,KAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,WAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,WAAA,GAAAH,sBAAA,CAAAF,OAAA;AAZA;AACA;AACA;AAGA;AACA;AACA;AAFA,MAAAM,QAAA,GAAAC,OAAA,CAAAD,QAAA;EAAAE,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,KAAA;MAAAC,IAAA;MAAA;IAAA;IAAAC,YAAA;MAAAD,IAAA;MAAA;IAAA;IAAAE,SAAA;MAAAF,IAAA;IAAA;IAAAG,MAAA;MAAAH,IAAA;MAAA;IAAA;IAAAI,UAAA;MAAAJ,IAAA;MAAA;IAAA;EAAA;EAAAK,OAAA;IAAAC,aAAA;EAAA;EAAAC,QAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;QAAAH,IAAA;MAAA;IAAA;IAAAI,OAAA;MAAAC,OAAA;MAAAC,MAAA;MAAAL,6BAAA;QAAAK,MAAA;QAAAD,OAAA;MAAA;IAAA;IAAAE,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,uBAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,yBAAA;MAAAf,6BAAA;QAAAO,QAAA;MAAA;IAAA;IAAAS,aAAA;MAAAC,gBAAA;IAAA;IAAAC,oBAAA;MAAAC,MAAA;MAAAtB,KAAA;MAAAuB,KAAA;MAAAC,KAAA;IAAA;EAAA;EAAAC,WAAA;EAAAD,KAAA;AAAA;AASA,MAAM;
|
|
1
|
+
{"version":3,"names":["_icons","require","_initBlock","_interopRequireDefault","_edit","_deprecated","_transforms","metadata","exports","$schema","apiVersion","name","title","category","description","textdomain","attributes","level","type","levelOptions","textAlign","isLink","linkTarget","example","viewportWidth","supports","align","html","color","gradients","link","__experimentalDefaultControls","background","text","spacing","padding","margin","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalTextTransform","__experimentalTextDecoration","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalWritingMode","interactivity","clientNavigation","__experimentalBorder","radius","width","style","editorStyle","selectors","settings","icon","edit","transforms","deprecated","init","initBlock"],"sources":["@wordpress/block-library/src/site-title/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { mapMarker as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\nimport deprecated from './deprecated';\nimport transforms from './transforms';\n\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tviewportWidth: 350,\n\t\tattributes: {\n\t\t\ttextAlign: 'center',\n\t\t},\n\t},\n\tedit,\n\ttransforms,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AAKA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEA,IAAAG,KAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,WAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,WAAA,GAAAH,sBAAA,CAAAF,OAAA;AAZA;AACA;AACA;AAGA;AACA;AACA;AAFA,MAAAM,QAAA,GAAAC,OAAA,CAAAD,QAAA;EAAAE,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,KAAA;MAAAC,IAAA;MAAA;IAAA;IAAAC,YAAA;MAAAD,IAAA;MAAA;IAAA;IAAAE,SAAA;MAAAF,IAAA;IAAA;IAAAG,MAAA;MAAAH,IAAA;MAAA;IAAA;IAAAI,UAAA;MAAAJ,IAAA;MAAA;IAAA;EAAA;EAAAK,OAAA;IAAAC,aAAA;EAAA;EAAAC,QAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;QAAAH,IAAA;MAAA;IAAA;IAAAI,OAAA;MAAAC,OAAA;MAAAC,MAAA;MAAAL,6BAAA;QAAAK,MAAA;QAAAD,OAAA;MAAA;IAAA;IAAAE,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,uBAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,yBAAA;MAAAf,6BAAA;QAAAO,QAAA;MAAA;IAAA;IAAAS,aAAA;MAAAC,gBAAA;IAAA;IAAAC,oBAAA;MAAAC,MAAA;MAAAtB,KAAA;MAAAuB,KAAA;MAAAC,KAAA;IAAA;EAAA;EAAAC,WAAA;EAAAD,KAAA;EAAAE,SAAA;IAAAjB,UAAA;EAAA;AAAA;AASA,MAAM;EAAE1B;AAAK,CAAC,GAAGJ,QAAQ;AAACC,OAAA,CAAAG,IAAA,GAAAA,IAAA;AAGnB,MAAM4C,QAAQ,GAAA/C,OAAA,CAAA+C,QAAA,GAAG;EACvBC,IAAI,EAAJA,gBAAI;EACJjC,OAAO,EAAE;IACRC,aAAa,EAAE,GAAG;IAClBR,UAAU,EAAE;MACXI,SAAS,EAAE;IACZ;EACD,CAAC;EACDqC,IAAI,EAAJA,aAAI;EACJC,UAAU,EAAVA,mBAAU;EACVC,UAAU,EAAVA;AACD,CAAC;AAEM,MAAMC,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAElD,IAAI;EAAEJ,QAAQ;EAAEgD;AAAS,CAAE,CAAC;AAAC/C,OAAA,CAAAoD,IAAA,GAAAA,IAAA","ignoreList":[]}
|
|
@@ -69,7 +69,10 @@ const SocialLinkURLPopover = ({
|
|
|
69
69
|
removeBlock(clientId);
|
|
70
70
|
}
|
|
71
71
|
})
|
|
72
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
72
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button
|
|
73
|
+
// TODO: Switch to `true` (40px size) if possible.
|
|
74
|
+
, {
|
|
75
|
+
__next40pxDefaultSize: false,
|
|
73
76
|
icon: _icons.keyboardReturn,
|
|
74
77
|
label: (0, _i18n.__)('Apply'),
|
|
75
78
|
type: "submit"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_keycodes","_data","_blockEditor","_element","_components","_i18n","_icons","_socialList","_jsxRuntime","SocialLinkURLPopover","url","setAttributes","setPopover","popoverAnchor","clientId","removeBlock","useDispatch","blockEditorStore","jsx","URLPopover","anchor","__","onClose","focus","children","jsxs","className","onSubmit","event","preventDefault","URLInput","value","onChange","nextURL","placeholder","label","hideLabelFromVision","disableSuggestions","onKeyDown","defaultPrevented","BACKSPACE","DELETE","includes","keyCode","Button","icon","keyboardReturn","type","SocialLinkEdit","attributes","context","isSelected","service","rel","showLabels","iconColor","iconColorValue","iconBackgroundColor","iconBackgroundColorValue","showURLPopover","useState","classes","clsx","setPopoverAnchor","IconComponent","getIconBySite","socialLinkName","getNameBySite","socialLinkText","trim","blockProps","useBlockProps","style","color","backgroundColor","Fragment","InspectorControls","PanelBody","title","PanelRow","TextControl","__next40pxDefaultSize","__nextHasNoMarginBottom","help","group","ref","onClick","_default","exports","default"],"sources":["@wordpress/block-library/src/social-link/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { DELETE, BACKSPACE } from '@wordpress/keycodes';\nimport { useDispatch } from '@wordpress/data';\n\nimport {\n\tInspectorControls,\n\tURLPopover,\n\tURLInput,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useState } from '@wordpress/element';\nimport {\n\tButton,\n\tPanelBody,\n\tPanelRow,\n\tTextControl,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { keyboardReturn } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { getIconBySite, getNameBySite } from './social-list';\n\nconst SocialLinkURLPopover = ( {\n\turl,\n\tsetAttributes,\n\tsetPopover,\n\tpopoverAnchor,\n\tclientId,\n} ) => {\n\tconst { removeBlock } = useDispatch( blockEditorStore );\n\treturn (\n\t\t<URLPopover\n\t\t\tanchor={ popoverAnchor }\n\t\t\taria-label={ __( 'Edit social link' ) }\n\t\t\tonClose={ () => {\n\t\t\t\tsetPopover( false );\n\t\t\t\tpopoverAnchor?.focus();\n\t\t\t} }\n\t\t>\n\t\t\t<form\n\t\t\t\tclassName=\"block-editor-url-popover__link-editor\"\n\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tsetPopover( false );\n\t\t\t\t\tpopoverAnchor?.focus();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<div className=\"block-editor-url-input\">\n\t\t\t\t\t<URLInput\n\t\t\t\t\t\tvalue={ url }\n\t\t\t\t\t\tonChange={ ( nextURL ) =>\n\t\t\t\t\t\t\tsetAttributes( { url: nextURL } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tplaceholder={ __( 'Enter social link' ) }\n\t\t\t\t\t\tlabel={ __( 'Enter social link' ) }\n\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\tdisableSuggestions\n\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t!! url ||\n\t\t\t\t\t\t\t\tevent.defaultPrevented ||\n\t\t\t\t\t\t\t\t! [ BACKSPACE, DELETE ].includes(\n\t\t\t\t\t\t\t\t\tevent.keyCode\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\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tremoveBlock( clientId );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<Button\n\t\t\t\t\ticon={ keyboardReturn }\n\t\t\t\t\tlabel={ __( 'Apply' ) }\n\t\t\t\t\ttype=\"submit\"\n\t\t\t\t/>\n\t\t\t</form>\n\t\t</URLPopover>\n\t);\n};\n\nconst SocialLinkEdit = ( {\n\tattributes,\n\tcontext,\n\tisSelected,\n\tsetAttributes,\n\tclientId,\n} ) => {\n\tconst { url, service, label = '', rel } = attributes;\n\tconst {\n\t\tshowLabels,\n\t\ticonColor,\n\t\ticonColorValue,\n\t\ticonBackgroundColor,\n\t\ticonBackgroundColorValue,\n\t} = context;\n\tconst [ showURLPopover, setPopover ] = useState( false );\n\tconst classes = clsx( 'wp-social-link', 'wp-social-link-' + service, {\n\t\t'wp-social-link__is-incomplete': ! url,\n\t\t[ `has-${ iconColor }-color` ]: iconColor,\n\t\t[ `has-${ iconBackgroundColor }-background-color` ]:\n\t\t\ticonBackgroundColor,\n\t} );\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst IconComponent = getIconBySite( service );\n\tconst socialLinkName = getNameBySite( service );\n\t// The initial label (ie. the link text) is an empty string.\n\t// We want to prevent empty links so that the link text always fallbacks to\n\t// the social name, even when users enter and save an empty string or only\n\t// spaces. The PHP render callback fallbacks to the social name as well.\n\tconst socialLinkText = label.trim() === '' ? socialLinkName : label;\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t\tstyle: {\n\t\t\tcolor: iconColorValue,\n\t\t\tbackgroundColor: iconBackgroundColorValue,\n\t\t},\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Text' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'The text is visible when enabled from the parent Social Icons block.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { label: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tplaceholder={ socialLinkName }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelRow>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\tonChange={ ( value ) => setAttributes( { rel: value } ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<li { ...blockProps }>\n\t\t\t\t<button\n\t\t\t\t\tclassName=\"wp-block-social-link-anchor\"\n\t\t\t\t\tref={ setPopoverAnchor }\n\t\t\t\t\tonClick={ () => setPopover( true ) }\n\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t>\n\t\t\t\t\t<IconComponent />\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ clsx( 'wp-block-social-link-label', {\n\t\t\t\t\t\t\t'screen-reader-text': ! showLabels,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ socialLinkText }\n\t\t\t\t\t</span>\n\t\t\t\t</button>\n\t\t\t\t{ isSelected && showURLPopover && (\n\t\t\t\t\t<SocialLinkURLPopover\n\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tsetPopover={ setPopover }\n\t\t\t\t\t\tpopoverAnchor={ popoverAnchor }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</li>\n\t\t</>\n\t);\n};\n\nexport default SocialLinkEdit;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_keycodes","_data","_blockEditor","_element","_components","_i18n","_icons","_socialList","_jsxRuntime","SocialLinkURLPopover","url","setAttributes","setPopover","popoverAnchor","clientId","removeBlock","useDispatch","blockEditorStore","jsx","URLPopover","anchor","__","onClose","focus","children","jsxs","className","onSubmit","event","preventDefault","URLInput","value","onChange","nextURL","placeholder","label","hideLabelFromVision","disableSuggestions","onKeyDown","defaultPrevented","BACKSPACE","DELETE","includes","keyCode","Button","__next40pxDefaultSize","icon","keyboardReturn","type","SocialLinkEdit","attributes","context","isSelected","service","rel","showLabels","iconColor","iconColorValue","iconBackgroundColor","iconBackgroundColorValue","showURLPopover","useState","classes","clsx","setPopoverAnchor","IconComponent","getIconBySite","socialLinkName","getNameBySite","socialLinkText","trim","blockProps","useBlockProps","style","color","backgroundColor","Fragment","InspectorControls","PanelBody","title","PanelRow","TextControl","__nextHasNoMarginBottom","help","group","ref","onClick","_default","exports","default"],"sources":["@wordpress/block-library/src/social-link/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { DELETE, BACKSPACE } from '@wordpress/keycodes';\nimport { useDispatch } from '@wordpress/data';\n\nimport {\n\tInspectorControls,\n\tURLPopover,\n\tURLInput,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useState } from '@wordpress/element';\nimport {\n\tButton,\n\tPanelBody,\n\tPanelRow,\n\tTextControl,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { keyboardReturn } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { getIconBySite, getNameBySite } from './social-list';\n\nconst SocialLinkURLPopover = ( {\n\turl,\n\tsetAttributes,\n\tsetPopover,\n\tpopoverAnchor,\n\tclientId,\n} ) => {\n\tconst { removeBlock } = useDispatch( blockEditorStore );\n\treturn (\n\t\t<URLPopover\n\t\t\tanchor={ popoverAnchor }\n\t\t\taria-label={ __( 'Edit social link' ) }\n\t\t\tonClose={ () => {\n\t\t\t\tsetPopover( false );\n\t\t\t\tpopoverAnchor?.focus();\n\t\t\t} }\n\t\t>\n\t\t\t<form\n\t\t\t\tclassName=\"block-editor-url-popover__link-editor\"\n\t\t\t\tonSubmit={ ( event ) => {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tsetPopover( false );\n\t\t\t\t\tpopoverAnchor?.focus();\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t<div className=\"block-editor-url-input\">\n\t\t\t\t\t<URLInput\n\t\t\t\t\t\tvalue={ url }\n\t\t\t\t\t\tonChange={ ( nextURL ) =>\n\t\t\t\t\t\t\tsetAttributes( { url: nextURL } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tplaceholder={ __( 'Enter social link' ) }\n\t\t\t\t\t\tlabel={ __( 'Enter social link' ) }\n\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\tdisableSuggestions\n\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t!! url ||\n\t\t\t\t\t\t\t\tevent.defaultPrevented ||\n\t\t\t\t\t\t\t\t! [ BACKSPACE, DELETE ].includes(\n\t\t\t\t\t\t\t\t\tevent.keyCode\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\treturn;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tremoveBlock( clientId );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t\t<Button\n\t\t\t\t\t// TODO: Switch to `true` (40px size) if possible.\n\t\t\t\t\t__next40pxDefaultSize={ false }\n\t\t\t\t\ticon={ keyboardReturn }\n\t\t\t\t\tlabel={ __( 'Apply' ) }\n\t\t\t\t\ttype=\"submit\"\n\t\t\t\t/>\n\t\t\t</form>\n\t\t</URLPopover>\n\t);\n};\n\nconst SocialLinkEdit = ( {\n\tattributes,\n\tcontext,\n\tisSelected,\n\tsetAttributes,\n\tclientId,\n} ) => {\n\tconst { url, service, label = '', rel } = attributes;\n\tconst {\n\t\tshowLabels,\n\t\ticonColor,\n\t\ticonColorValue,\n\t\ticonBackgroundColor,\n\t\ticonBackgroundColorValue,\n\t} = context;\n\tconst [ showURLPopover, setPopover ] = useState( false );\n\tconst classes = clsx( 'wp-social-link', 'wp-social-link-' + service, {\n\t\t'wp-social-link__is-incomplete': ! url,\n\t\t[ `has-${ iconColor }-color` ]: iconColor,\n\t\t[ `has-${ iconBackgroundColor }-background-color` ]:\n\t\t\ticonBackgroundColor,\n\t} );\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst IconComponent = getIconBySite( service );\n\tconst socialLinkName = getNameBySite( service );\n\t// The initial label (ie. the link text) is an empty string.\n\t// We want to prevent empty links so that the link text always fallbacks to\n\t// the social name, even when users enter and save an empty string or only\n\t// spaces. The PHP render callback fallbacks to the social name as well.\n\tconst socialLinkText = label.trim() === '' ? socialLinkName : label;\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classes,\n\t\tstyle: {\n\t\t\tcolor: iconColorValue,\n\t\t\tbackgroundColor: iconBackgroundColorValue,\n\t\t},\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Text' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'The text is visible when enabled from the parent Social Icons block.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ label }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { label: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tplaceholder={ socialLinkName }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelRow>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\tonChange={ ( value ) => setAttributes( { rel: value } ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<li { ...blockProps }>\n\t\t\t\t<button\n\t\t\t\t\tclassName=\"wp-block-social-link-anchor\"\n\t\t\t\t\tref={ setPopoverAnchor }\n\t\t\t\t\tonClick={ () => setPopover( true ) }\n\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t>\n\t\t\t\t\t<IconComponent />\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ clsx( 'wp-block-social-link-label', {\n\t\t\t\t\t\t\t'screen-reader-text': ! showLabels,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ socialLinkText }\n\t\t\t\t\t</span>\n\t\t\t\t</button>\n\t\t\t\t{ isSelected && showURLPopover && (\n\t\t\t\t\t<SocialLinkURLPopover\n\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tsetPopover={ setPopover }\n\t\t\t\t\t\tpopoverAnchor={ popoverAnchor }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</li>\n\t\t</>\n\t);\n};\n\nexport default SocialLinkEdit;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,6 +12,7 @@ var _blockEditor = require("@wordpress/block-editor");
|
|
|
12
12
|
var _components = require("@wordpress/components");
|
|
13
13
|
var _i18n = require("@wordpress/i18n");
|
|
14
14
|
var _icons = require("@wordpress/icons");
|
|
15
|
+
var _data = require("@wordpress/data");
|
|
15
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
17
|
/**
|
|
17
18
|
* External dependencies
|
|
@@ -54,14 +55,16 @@ function SocialLinksEdit(props) {
|
|
|
54
55
|
showLabels,
|
|
55
56
|
size
|
|
56
57
|
} = attributes;
|
|
58
|
+
const hasSelectedChild = (0, _data.useSelect)(select => select(_blockEditor.store).hasSelectedInnerBlock(clientId), [clientId]);
|
|
59
|
+
const hasAnySelected = isSelected || hasSelectedChild;
|
|
57
60
|
const logosOnly = attributes.className?.includes('is-style-logos-only');
|
|
58
61
|
|
|
59
62
|
// Remove icon background color when logos only style is selected or
|
|
60
63
|
// restore it when any other style is selected.
|
|
61
|
-
const
|
|
64
|
+
const backgroundBackupRef = (0, _element.useRef)({});
|
|
62
65
|
(0, _element.useEffect)(() => {
|
|
63
66
|
if (logosOnly) {
|
|
64
|
-
|
|
67
|
+
backgroundBackupRef.current = {
|
|
65
68
|
iconBackgroundColor,
|
|
66
69
|
iconBackgroundColorValue,
|
|
67
70
|
customIconBackgroundColor
|
|
@@ -73,9 +76,10 @@ function SocialLinksEdit(props) {
|
|
|
73
76
|
});
|
|
74
77
|
} else {
|
|
75
78
|
setAttributes({
|
|
76
|
-
...
|
|
79
|
+
...backgroundBackupRef.current
|
|
77
80
|
});
|
|
78
81
|
}
|
|
82
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
79
83
|
}, [logosOnly]);
|
|
80
84
|
const SocialPlaceholder = /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
|
|
81
85
|
className: "wp-block-social-links__social-placeholder",
|
|
@@ -90,10 +94,6 @@ function SocialLinksEdit(props) {
|
|
|
90
94
|
})]
|
|
91
95
|
})
|
|
92
96
|
});
|
|
93
|
-
const SelectedSocialPlaceholder = /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
|
|
94
|
-
className: "wp-block-social-links__social-prompt",
|
|
95
|
-
children: (0, _i18n.__)('Click plus to add')
|
|
96
|
-
});
|
|
97
97
|
|
|
98
98
|
// Fallback color values are used maintain selections in case switching
|
|
99
99
|
// themes and named colors in palette do not match.
|
|
@@ -106,10 +106,11 @@ function SocialLinksEdit(props) {
|
|
|
106
106
|
className
|
|
107
107
|
});
|
|
108
108
|
const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps, {
|
|
109
|
-
placeholder: isSelected
|
|
109
|
+
placeholder: !isSelected && SocialPlaceholder,
|
|
110
110
|
templateLock: false,
|
|
111
111
|
orientation: (_attributes$layout$or = attributes.layout?.orientation) !== null && _attributes$layout$or !== void 0 ? _attributes$layout$or : 'horizontal',
|
|
112
|
-
__experimentalAppenderTagName: 'li'
|
|
112
|
+
__experimentalAppenderTagName: 'li',
|
|
113
|
+
renderAppender: hasAnySelected && _blockEditor.InnerBlocks.ButtonBlockAppender
|
|
113
114
|
});
|
|
114
115
|
const POPOVER_PROPS = {
|
|
115
116
|
position: 'bottom right'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_blockEditor","_components","_i18n","_icons","_jsxRuntime","sizeOptions","name","__","value","SocialLinksEdit","props","_attributes$layout$or","clientId","attributes","iconBackgroundColor","iconColor","isSelected","setAttributes","setIconBackgroundColor","setIconColor","iconBackgroundColorValue","customIconBackgroundColor","iconColorValue","openInNewTab","showLabels","size","logosOnly","className","includes","backgroundBackup","useRef","useEffect","current","undefined","SocialPlaceholder","jsx","children","jsxs","SelectedSocialPlaceholder","clsx","color","blockProps","useBlockProps","innerBlocksProps","useInnerBlocksProps","placeholder","templateLock","orientation","layout","__experimentalAppenderTagName","POPOVER_PROPS","position","colorSettings","onChange","colorValue","label","resetAllFilter","push","colorGradientSettings","useMultipleOriginColorsAndGradients","Fragment","BlockControls","group","ToolbarDropdownMenu","text","icon","popoverProps","onClose","MenuGroup","map","entry","MenuItem","check","onClick","role","InspectorControls","PanelBody","title","ToggleControl","__nextHasNoMarginBottom","checked","hasColorsOrGradients","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","onColorChange","isShownByDefault","enableAlpha","panelId","ContrastChecker","textColor","backgroundColor","isLargeText","iconColorAttributes","_default","exports","default","withColors"],"sources":["@wordpress/block-library/src/social-links/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tBlockControls,\n\tuseInnerBlocksProps,\n\tuseBlockProps,\n\tInspectorControls,\n\tContrastChecker,\n\twithColors,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n} from '@wordpress/block-editor';\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tPanelBody,\n\tToggleControl,\n\tToolbarDropdownMenu,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { check } from '@wordpress/icons';\n\nconst sizeOptions = [\n\t{ name: __( 'Small' ), value: 'has-small-icon-size' },\n\t{ name: __( 'Normal' ), value: 'has-normal-icon-size' },\n\t{ name: __( 'Large' ), value: 'has-large-icon-size' },\n\t{ name: __( 'Huge' ), value: 'has-huge-icon-size' },\n];\n\nexport function SocialLinksEdit( props ) {\n\tconst {\n\t\tclientId,\n\t\tattributes,\n\t\ticonBackgroundColor,\n\t\ticonColor,\n\t\tisSelected,\n\t\tsetAttributes,\n\t\tsetIconBackgroundColor,\n\t\tsetIconColor,\n\t} = props;\n\n\tconst {\n\t\ticonBackgroundColorValue,\n\t\tcustomIconBackgroundColor,\n\t\ticonColorValue,\n\t\topenInNewTab,\n\t\tshowLabels,\n\t\tsize,\n\t} = attributes;\n\n\tconst logosOnly = attributes.className?.includes( 'is-style-logos-only' );\n\n\t// Remove icon background color when logos only style is selected or\n\t// restore it when any other style is selected.\n\tconst backgroundBackup = useRef( {} );\n\tuseEffect( () => {\n\t\tif ( logosOnly ) {\n\t\t\tbackgroundBackup.current = {\n\t\t\t\ticonBackgroundColor,\n\t\t\t\ticonBackgroundColorValue,\n\t\t\t\tcustomIconBackgroundColor,\n\t\t\t};\n\t\t\tsetAttributes( {\n\t\t\t\ticonBackgroundColor: undefined,\n\t\t\t\tcustomIconBackgroundColor: undefined,\n\t\t\t\ticonBackgroundColorValue: undefined,\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( { ...backgroundBackup.current } );\n\t\t}\n\t}, [ logosOnly ] );\n\n\tconst SocialPlaceholder = (\n\t\t<li className=\"wp-block-social-links__social-placeholder\">\n\t\t\t<div className=\"wp-block-social-links__social-placeholder-icons\">\n\t\t\t\t<div className=\"wp-social-link wp-social-link-twitter\"></div>\n\t\t\t\t<div className=\"wp-social-link wp-social-link-facebook\"></div>\n\t\t\t\t<div className=\"wp-social-link wp-social-link-instagram\"></div>\n\t\t\t</div>\n\t\t</li>\n\t);\n\n\tconst SelectedSocialPlaceholder = (\n\t\t<li className=\"wp-block-social-links__social-prompt\">\n\t\t\t{ __( 'Click plus to add' ) }\n\t\t</li>\n\t);\n\n\t// Fallback color values are used maintain selections in case switching\n\t// themes and named colors in palette do not match.\n\tconst className = clsx( size, {\n\t\t'has-visible-labels': showLabels,\n\t\t'has-icon-color': iconColor.color || iconColorValue,\n\t\t'has-icon-background-color':\n\t\t\ticonBackgroundColor.color || iconBackgroundColorValue,\n\t} );\n\n\tconst blockProps = useBlockProps( { className } );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tplaceholder: isSelected ? SelectedSocialPlaceholder : SocialPlaceholder,\n\t\ttemplateLock: false,\n\t\torientation: attributes.layout?.orientation ?? 'horizontal',\n\t\t__experimentalAppenderTagName: 'li',\n\t} );\n\n\tconst POPOVER_PROPS = {\n\t\tposition: 'bottom right',\n\t};\n\n\tconst colorSettings = [\n\t\t{\n\t\t\t// Use custom attribute as fallback to prevent loss of named color selection when\n\t\t\t// switching themes to a new theme that does not have a matching named color.\n\t\t\tvalue: iconColor.color || iconColorValue,\n\t\t\tonChange: ( colorValue ) => {\n\t\t\t\tsetIconColor( colorValue );\n\t\t\t\tsetAttributes( { iconColorValue: colorValue } );\n\t\t\t},\n\t\t\tlabel: __( 'Icon color' ),\n\t\t\tresetAllFilter: () => {\n\t\t\t\tsetIconColor( undefined );\n\t\t\t\tsetAttributes( { iconColorValue: undefined } );\n\t\t\t},\n\t\t},\n\t];\n\n\tif ( ! logosOnly ) {\n\t\tcolorSettings.push( {\n\t\t\t// Use custom attribute as fallback to prevent loss of named color selection when\n\t\t\t// switching themes to a new theme that does not have a matching named color.\n\t\t\tvalue: iconBackgroundColor.color || iconBackgroundColorValue,\n\t\t\tonChange: ( colorValue ) => {\n\t\t\t\tsetIconBackgroundColor( colorValue );\n\t\t\t\tsetAttributes( {\n\t\t\t\t\ticonBackgroundColorValue: colorValue,\n\t\t\t\t} );\n\t\t\t},\n\t\t\tlabel: __( 'Icon background' ),\n\t\t\tresetAllFilter: () => {\n\t\t\t\tsetIconBackgroundColor( undefined );\n\t\t\t\tsetAttributes( { iconBackgroundColorValue: undefined } );\n\t\t\t},\n\t\t} );\n\t}\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\tlabel={ __( 'Size' ) }\n\t\t\t\t\ttext={ __( 'Size' ) }\n\t\t\t\t\ticon={ null }\n\t\t\t\t\tpopoverProps={ POPOVER_PROPS }\n\t\t\t\t>\n\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ sizeOptions.map( ( entry ) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\t( size === entry.value ||\n\t\t\t\t\t\t\t\t\t\t\t\t( ! size &&\n\t\t\t\t\t\t\t\t\t\t\t\t\tentry.value ===\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'has-normal-icon-size' ) ) &&\n\t\t\t\t\t\t\t\t\t\t\tcheck\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tisSelected={ size === entry.value }\n\t\t\t\t\t\t\t\t\t\tkey={ entry.value }\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tsize: entry.value,\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\tonClose={ onClose }\n\t\t\t\t\t\t\t\t\t\trole=\"menuitemradio\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ entry.name }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarDropdownMenu>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Open links in new tab' ) }\n\t\t\t\t\t\tchecked={ openInNewTab }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( { openInNewTab: ! openInNewTab } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Show text' ) }\n\t\t\t\t\t\tchecked={ showLabels }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( { showLabels: ! showLabels } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t{ colorSettings.map(\n\t\t\t\t\t\t( { onChange, label, value, resetAllFilter } ) => (\n\t\t\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t\t\tkey={ `social-links-color-${ label }` }\n\t\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tcolorValue: value,\n\t\t\t\t\t\t\t\t\t\tlabel,\n\t\t\t\t\t\t\t\t\t\tonColorChange: onChange,\n\t\t\t\t\t\t\t\t\t\tisShownByDefault: true,\n\t\t\t\t\t\t\t\t\t\tresetAllFilter,\n\t\t\t\t\t\t\t\t\t\tenableAlpha: true,\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\tpanelId={ clientId }\n\t\t\t\t\t\t\t\t{ ...colorGradientSettings }\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{ ! logosOnly && (\n\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t{ ...{\n\t\t\t\t\t\t\t\ttextColor: iconColorValue,\n\t\t\t\t\t\t\t\tbackgroundColor: iconBackgroundColorValue,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tisLargeText={ false }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<ul { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n\nconst iconColorAttributes = {\n\ticonColor: 'icon-color',\n\ticonBackgroundColor: 'icon-background-color',\n};\n\nexport default withColors( iconColorAttributes )( SocialLinksEdit );\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_blockEditor","_components","_i18n","_icons","_data","_jsxRuntime","sizeOptions","name","__","value","SocialLinksEdit","props","_attributes$layout$or","clientId","attributes","iconBackgroundColor","iconColor","isSelected","setAttributes","setIconBackgroundColor","setIconColor","iconBackgroundColorValue","customIconBackgroundColor","iconColorValue","openInNewTab","showLabels","size","hasSelectedChild","useSelect","select","blockEditorStore","hasSelectedInnerBlock","hasAnySelected","logosOnly","className","includes","backgroundBackupRef","useRef","useEffect","current","undefined","SocialPlaceholder","jsx","children","jsxs","clsx","color","blockProps","useBlockProps","innerBlocksProps","useInnerBlocksProps","placeholder","templateLock","orientation","layout","__experimentalAppenderTagName","renderAppender","InnerBlocks","ButtonBlockAppender","POPOVER_PROPS","position","colorSettings","onChange","colorValue","label","resetAllFilter","push","colorGradientSettings","useMultipleOriginColorsAndGradients","Fragment","BlockControls","group","ToolbarDropdownMenu","text","icon","popoverProps","onClose","MenuGroup","map","entry","MenuItem","check","onClick","role","InspectorControls","PanelBody","title","ToggleControl","__nextHasNoMarginBottom","checked","hasColorsOrGradients","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","onColorChange","isShownByDefault","enableAlpha","panelId","ContrastChecker","textColor","backgroundColor","isLargeText","iconColorAttributes","_default","exports","default","withColors"],"sources":["@wordpress/block-library/src/social-links/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useEffect, useRef } from '@wordpress/element';\nimport {\n\tBlockControls,\n\tuseInnerBlocksProps,\n\tuseBlockProps,\n\tInspectorControls,\n\tContrastChecker,\n\twithColors,\n\tInnerBlocks,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport {\n\tMenuGroup,\n\tMenuItem,\n\tPanelBody,\n\tToggleControl,\n\tToolbarDropdownMenu,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { check } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\n\nconst sizeOptions = [\n\t{ name: __( 'Small' ), value: 'has-small-icon-size' },\n\t{ name: __( 'Normal' ), value: 'has-normal-icon-size' },\n\t{ name: __( 'Large' ), value: 'has-large-icon-size' },\n\t{ name: __( 'Huge' ), value: 'has-huge-icon-size' },\n];\n\nexport function SocialLinksEdit( props ) {\n\tconst {\n\t\tclientId,\n\t\tattributes,\n\t\ticonBackgroundColor,\n\t\ticonColor,\n\t\tisSelected,\n\t\tsetAttributes,\n\t\tsetIconBackgroundColor,\n\t\tsetIconColor,\n\t} = props;\n\n\tconst {\n\t\ticonBackgroundColorValue,\n\t\tcustomIconBackgroundColor,\n\t\ticonColorValue,\n\t\topenInNewTab,\n\t\tshowLabels,\n\t\tsize,\n\t} = attributes;\n\n\tconst hasSelectedChild = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).hasSelectedInnerBlock( clientId ),\n\t\t[ clientId ]\n\t);\n\n\tconst hasAnySelected = isSelected || hasSelectedChild;\n\n\tconst logosOnly = attributes.className?.includes( 'is-style-logos-only' );\n\n\t// Remove icon background color when logos only style is selected or\n\t// restore it when any other style is selected.\n\tconst backgroundBackupRef = useRef( {} );\n\tuseEffect( () => {\n\t\tif ( logosOnly ) {\n\t\t\tbackgroundBackupRef.current = {\n\t\t\t\ticonBackgroundColor,\n\t\t\t\ticonBackgroundColorValue,\n\t\t\t\tcustomIconBackgroundColor,\n\t\t\t};\n\t\t\tsetAttributes( {\n\t\t\t\ticonBackgroundColor: undefined,\n\t\t\t\tcustomIconBackgroundColor: undefined,\n\t\t\t\ticonBackgroundColorValue: undefined,\n\t\t\t} );\n\t\t} else {\n\t\t\tsetAttributes( { ...backgroundBackupRef.current } );\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ logosOnly ] );\n\n\tconst SocialPlaceholder = (\n\t\t<li className=\"wp-block-social-links__social-placeholder\">\n\t\t\t<div className=\"wp-block-social-links__social-placeholder-icons\">\n\t\t\t\t<div className=\"wp-social-link wp-social-link-twitter\"></div>\n\t\t\t\t<div className=\"wp-social-link wp-social-link-facebook\"></div>\n\t\t\t\t<div className=\"wp-social-link wp-social-link-instagram\"></div>\n\t\t\t</div>\n\t\t</li>\n\t);\n\n\t// Fallback color values are used maintain selections in case switching\n\t// themes and named colors in palette do not match.\n\tconst className = clsx( size, {\n\t\t'has-visible-labels': showLabels,\n\t\t'has-icon-color': iconColor.color || iconColorValue,\n\t\t'has-icon-background-color':\n\t\t\ticonBackgroundColor.color || iconBackgroundColorValue,\n\t} );\n\n\tconst blockProps = useBlockProps( { className } );\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tplaceholder: ! isSelected && SocialPlaceholder,\n\t\ttemplateLock: false,\n\t\torientation: attributes.layout?.orientation ?? 'horizontal',\n\t\t__experimentalAppenderTagName: 'li',\n\t\trenderAppender: hasAnySelected && InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\tconst POPOVER_PROPS = {\n\t\tposition: 'bottom right',\n\t};\n\n\tconst colorSettings = [\n\t\t{\n\t\t\t// Use custom attribute as fallback to prevent loss of named color selection when\n\t\t\t// switching themes to a new theme that does not have a matching named color.\n\t\t\tvalue: iconColor.color || iconColorValue,\n\t\t\tonChange: ( colorValue ) => {\n\t\t\t\tsetIconColor( colorValue );\n\t\t\t\tsetAttributes( { iconColorValue: colorValue } );\n\t\t\t},\n\t\t\tlabel: __( 'Icon color' ),\n\t\t\tresetAllFilter: () => {\n\t\t\t\tsetIconColor( undefined );\n\t\t\t\tsetAttributes( { iconColorValue: undefined } );\n\t\t\t},\n\t\t},\n\t];\n\n\tif ( ! logosOnly ) {\n\t\tcolorSettings.push( {\n\t\t\t// Use custom attribute as fallback to prevent loss of named color selection when\n\t\t\t// switching themes to a new theme that does not have a matching named color.\n\t\t\tvalue: iconBackgroundColor.color || iconBackgroundColorValue,\n\t\t\tonChange: ( colorValue ) => {\n\t\t\t\tsetIconBackgroundColor( colorValue );\n\t\t\t\tsetAttributes( {\n\t\t\t\t\ticonBackgroundColorValue: colorValue,\n\t\t\t\t} );\n\t\t\t},\n\t\t\tlabel: __( 'Icon background' ),\n\t\t\tresetAllFilter: () => {\n\t\t\t\tsetIconBackgroundColor( undefined );\n\t\t\t\tsetAttributes( { iconBackgroundColorValue: undefined } );\n\t\t\t},\n\t\t} );\n\t}\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\tlabel={ __( 'Size' ) }\n\t\t\t\t\ttext={ __( 'Size' ) }\n\t\t\t\t\ticon={ null }\n\t\t\t\t\tpopoverProps={ POPOVER_PROPS }\n\t\t\t\t>\n\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ sizeOptions.map( ( entry ) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\t\t\t( size === entry.value ||\n\t\t\t\t\t\t\t\t\t\t\t\t( ! size &&\n\t\t\t\t\t\t\t\t\t\t\t\t\tentry.value ===\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'has-normal-icon-size' ) ) &&\n\t\t\t\t\t\t\t\t\t\t\tcheck\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tisSelected={ size === entry.value }\n\t\t\t\t\t\t\t\t\t\tkey={ entry.value }\n\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\t\tsize: entry.value,\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\tonClose={ onClose }\n\t\t\t\t\t\t\t\t\t\trole=\"menuitemradio\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ entry.name }\n\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</ToolbarDropdownMenu>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Open links in new tab' ) }\n\t\t\t\t\t\tchecked={ openInNewTab }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( { openInNewTab: ! openInNewTab } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Show text' ) }\n\t\t\t\t\t\tchecked={ showLabels }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( { showLabels: ! showLabels } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t{ colorSettings.map(\n\t\t\t\t\t\t( { onChange, label, value, resetAllFilter } ) => (\n\t\t\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t\t\tkey={ `social-links-color-${ label }` }\n\t\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tcolorValue: value,\n\t\t\t\t\t\t\t\t\t\tlabel,\n\t\t\t\t\t\t\t\t\t\tonColorChange: onChange,\n\t\t\t\t\t\t\t\t\t\tisShownByDefault: true,\n\t\t\t\t\t\t\t\t\t\tresetAllFilter,\n\t\t\t\t\t\t\t\t\t\tenableAlpha: true,\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\tpanelId={ clientId }\n\t\t\t\t\t\t\t\t{ ...colorGradientSettings }\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{ ! logosOnly && (\n\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t{ ...{\n\t\t\t\t\t\t\t\ttextColor: iconColorValue,\n\t\t\t\t\t\t\t\tbackgroundColor: iconBackgroundColorValue,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tisLargeText={ false }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<ul { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n\nconst iconColorAttributes = {\n\ticonColor: 'icon-color',\n\ticonBackgroundColor: 'icon-background-color',\n};\n\nexport default withColors( iconColorAttributes )( SocialLinksEdit );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_coreData","require","_components","_i18n","_data","_importControls","_jsxRuntime","htmlElementMessages","header","__","main","section","article","aside","footer","TemplatePartAdvancedControls","tagName","setAttributes","isEntityAvailable","templatePartId","defaultWrapper","hasInnerBlocks","area","setArea","useEntityProp","title","setTitle","definedAreas","useSelect","select","__experimentalGetDefaultTemplatePartAreas","areaOptions","map","label","_area","value","jsxs","Fragment","children","jsx","TextControl","__next40pxDefaultSize","__nextHasNoMarginBottom","onChange","onFocus","event","target","SelectControl","labelPosition","options","sprintf","help","TemplatePartImportControls"],"sources":["@wordpress/block-library/src/template-part/edit/advanced-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp } from '@wordpress/core-data';\nimport { SelectControl, TextControl } from '@wordpress/components';\nimport { sprintf, __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { TemplatePartImportControls } from './import-controls';\n\nconst htmlElementMessages = {\n\theader: __(\n\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t),\n\tmain: __(\n\t\t'The <main> element should be used for the primary content of your document only.'\n\t),\n\tsection: __(\n\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t),\n\tarticle: __(\n\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t),\n\taside: __(\n\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t),\n\tfooter: __(\n\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t),\n};\n\nexport function TemplatePartAdvancedControls( {\n\ttagName,\n\tsetAttributes,\n\tisEntityAvailable,\n\ttemplatePartId,\n\tdefaultWrapper,\n\thasInnerBlocks,\n} ) {\n\tconst [ area, setArea ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'area',\n\t\ttemplatePartId\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'title',\n\t\ttemplatePartId\n\t);\n\n\tconst definedAreas = useSelect( ( select ) => {\n\t\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t\t// Blocks can be loaded into a *non-post* block editor.\n\t\t/* eslint-disable-next-line @wordpress/data-no-store-string-literals */\n\t\treturn select(\n\t\t\t'core/editor'\n\t\t).__experimentalGetDefaultTemplatePartAreas();\n\t}, [] );\n\n\tconst areaOptions = definedAreas.map( ( { label, area: _area } ) => ( {\n\t\tlabel,\n\t\tvalue: _area,\n\t} ) );\n\n\treturn (\n\t\t<>\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Title' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetTitle( value );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonFocus={ ( event ) => event.target.select() }\n\t\t\t\t\t/>\n\
|
|
1
|
+
{"version":3,"names":["_coreData","require","_components","_i18n","_data","_importControls","_jsxRuntime","htmlElementMessages","header","__","main","section","article","aside","footer","TemplatePartAdvancedControls","tagName","setAttributes","isEntityAvailable","templatePartId","defaultWrapper","hasInnerBlocks","area","setArea","useEntityProp","title","setTitle","definedAreas","useSelect","select","__experimentalGetDefaultTemplatePartAreas","areaOptions","map","label","_area","value","jsxs","Fragment","children","jsx","TextControl","__next40pxDefaultSize","__nextHasNoMarginBottom","onChange","onFocus","event","target","SelectControl","labelPosition","options","sprintf","help","TemplatePartImportControls"],"sources":["@wordpress/block-library/src/template-part/edit/advanced-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityProp } from '@wordpress/core-data';\nimport { SelectControl, TextControl } from '@wordpress/components';\nimport { sprintf, __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { TemplatePartImportControls } from './import-controls';\n\nconst htmlElementMessages = {\n\theader: __(\n\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t),\n\tmain: __(\n\t\t'The <main> element should be used for the primary content of your document only.'\n\t),\n\tsection: __(\n\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t),\n\tarticle: __(\n\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t),\n\taside: __(\n\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t),\n\tfooter: __(\n\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t),\n};\n\nexport function TemplatePartAdvancedControls( {\n\ttagName,\n\tsetAttributes,\n\tisEntityAvailable,\n\ttemplatePartId,\n\tdefaultWrapper,\n\thasInnerBlocks,\n} ) {\n\tconst [ area, setArea ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'area',\n\t\ttemplatePartId\n\t);\n\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_template_part',\n\t\t'title',\n\t\ttemplatePartId\n\t);\n\n\tconst definedAreas = useSelect( ( select ) => {\n\t\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t\t// Blocks can be loaded into a *non-post* block editor.\n\t\t/* eslint-disable-next-line @wordpress/data-no-store-string-literals */\n\t\treturn select(\n\t\t\t'core/editor'\n\t\t).__experimentalGetDefaultTemplatePartAreas();\n\t}, [] );\n\n\tconst areaOptions = definedAreas.map( ( { label, area: _area } ) => ( {\n\t\tlabel,\n\t\tvalue: _area,\n\t} ) );\n\n\treturn (\n\t\t<>\n\t\t\t{ isEntityAvailable && (\n\t\t\t\t<>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Title' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetTitle( value );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonFocus={ ( event ) => event.target.select() }\n\t\t\t\t\t/>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Area' ) }\n\t\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\t\toptions={ areaOptions }\n\t\t\t\t\t\tvalue={ area }\n\t\t\t\t\t\tonChange={ setArea }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: sprintf(\n\t\t\t\t\t\t\t/* translators: %s: HTML tag based on area. */\n\t\t\t\t\t\t\t__( 'Default based on area (%s)' ),\n\t\t\t\t\t\t\t`<${ defaultWrapper }>`\n\t\t\t\t\t\t),\n\t\t\t\t\t\tvalue: '',\n\t\t\t\t\t},\n\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t{ label: '<div>', value: 'div' },\n\t\t\t\t] }\n\t\t\t\tvalue={ tagName || '' }\n\t\t\t\tonChange={ ( value ) => setAttributes( { tagName: value } ) }\n\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t/>\n\t\t\t{ ! hasInnerBlocks && (\n\t\t\t\t<TemplatePartImportControls\n\t\t\t\t\tarea={ area }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -184,7 +184,7 @@ function TemplatePartEdit({
|
|
|
184
184
|
}),
|
|
185
185
|
children: (0, _i18n.__)('Edit')
|
|
186
186
|
})
|
|
187
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.InspectorControls, {
|
|
187
|
+
}), canUserEdit && /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.InspectorControls, {
|
|
188
188
|
group: "advanced",
|
|
189
189
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_advancedControls.TemplatePartAdvancedControls, {
|
|
190
190
|
tagName: tagName,
|