@wordpress/block-library 9.15.1 → 9.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/build/archives/edit.js +2 -2
- package/build/archives/edit.js.map +1 -1
- package/build/button/edit.js +2 -1
- package/build/button/edit.js.map +1 -1
- package/build/categories/edit.js +115 -37
- package/build/categories/edit.js.map +1 -1
- package/build/columns/edit.js +1 -1
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +1 -1
- package/build/columns/edit.native.js.map +1 -1
- package/build/comment-template/edit.js +2 -2
- package/build/comment-template/edit.js.map +1 -1
- package/build/comments/edit/comments-inspector-controls.js +6 -5
- package/build/comments/edit/comments-inspector-controls.js.map +1 -1
- package/build/comments-pagination/index.js +5 -0
- package/build/comments-pagination/index.js.map +1 -1
- package/build/comments-pagination-next/index.js +7 -6
- package/build/comments-pagination-next/index.js.map +1 -1
- package/build/comments-pagination-previous/index.js +7 -6
- package/build/comments-pagination-previous/index.js.map +1 -1
- package/build/cover/deprecated.js +1 -1
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +2 -9
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/details/edit.js +27 -18
- package/build/details/edit.js.map +1 -1
- package/build/details/index.js +12 -0
- package/build/details/index.js.map +1 -1
- package/build/details/save.js +2 -0
- package/build/details/save.js.map +1 -1
- package/build/embed/transforms.js +5 -2
- package/build/embed/transforms.js.map +1 -1
- package/build/embed/util.js +1 -1
- package/build/embed/util.js.map +1 -1
- package/build/file/edit.js +7 -4
- package/build/file/edit.js.map +1 -1
- package/build/file/transforms.js +1 -1
- package/build/file/transforms.js.map +1 -1
- package/build/file/utils/index.js +1 -1
- package/build/file/utils/index.js.map +1 -1
- package/build/form/variations.js +1 -1
- package/build/form/variations.js.map +1 -1
- package/build/form-input/edit.js +1 -1
- package/build/form-input/edit.js.map +1 -1
- package/build/gallery/edit.js +1 -1
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/transforms.js +2 -2
- package/build/gallery/transforms.js.map +1 -1
- package/build/gallery/use-get-new-images.js +1 -1
- package/build/gallery/use-get-new-images.js.map +1 -1
- package/build/group/edit.js +2 -9
- package/build/group/edit.js.map +1 -1
- package/build/home-link/edit.js +1 -2
- package/build/home-link/edit.js.map +1 -1
- package/build/latest-comments/edit.js +73 -26
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-posts/constants.js +2 -1
- package/build/latest-posts/constants.js.map +1 -1
- package/build/latest-posts/edit.js +91 -38
- package/build/latest-posts/edit.js.map +1 -1
- package/build/list-item/edit.native.js +2 -2
- package/build/list-item/edit.native.js.map +1 -1
- package/build/list-item/index.js +1 -1
- package/build/media-text/edit.native.js +2 -2
- package/build/media-text/edit.native.js.map +1 -1
- package/build/media-text/media-container.native.js +4 -4
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/navigation/edit/index.js +8 -4
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js +4 -4
- package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build/navigation/index.js +15 -0
- package/build/navigation/index.js.map +1 -1
- package/build/navigation-link/edit.js +15 -20
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/link-ui.js +9 -18
- package/build/navigation-link/link-ui.js.map +1 -1
- package/build/navigation-submenu/edit.js +1 -1
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/navigation-submenu/index.js +7 -0
- package/build/navigation-submenu/index.js.map +1 -1
- package/build/page-list/edit.js +1 -1
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/index.js +11 -0
- package/build/page-list/index.js.map +1 -1
- package/build/paragraph/edit.js +4 -14
- package/build/paragraph/edit.js.map +1 -1
- package/build/pattern/index.js +1 -1
- package/build/post-author-name/edit.js +41 -12
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-comments-link/index.js +7 -1
- package/build/post-comments-link/index.js.map +1 -1
- package/build/post-content/index.js +1 -0
- package/build/post-content/index.js.map +1 -1
- package/build/post-date/edit.js +1 -1
- package/build/post-date/edit.js.map +1 -1
- package/build/post-featured-image/edit.js +0 -6
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/overlay-controls.js +2 -1
- package/build/post-featured-image/overlay-controls.js.map +1 -1
- package/build/post-navigation-link/variations.js +2 -2
- package/build/post-navigation-link/variations.js.map +1 -1
- package/build/post-terms/edit.js +1 -0
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-time-to-read/index.js +1 -1
- package/build/query/edit/inspector-controls/author-control.js +1 -1
- package/build/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +110 -61
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/query-content.js +2 -6
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/utils.js +1 -1
- package/build/query/utils.js.map +1 -1
- package/build/query-no-results/index.js +1 -1
- package/build/query-pagination-numbers/edit.js +1 -1
- package/build/query-pagination-numbers/edit.js.map +1 -1
- package/build/query-title/edit.js +40 -14
- package/build/query-title/edit.js.map +1 -1
- package/build/query-total/index.js +7 -1
- package/build/query-total/index.js.map +1 -1
- package/build/quote/transforms.js +1 -1
- package/build/quote/transforms.js.map +1 -1
- package/build/read-more/edit.js +25 -7
- package/build/read-more/edit.js.map +1 -1
- package/build/rss/edit.js +1 -0
- package/build/rss/edit.js.map +1 -1
- package/build/rss/index.js +6 -0
- package/build/rss/index.js.map +1 -1
- package/build/search/edit.js +67 -48
- package/build/search/edit.js.map +1 -1
- package/build/separator/edit.js +2 -4
- package/build/separator/edit.js.map +1 -1
- package/build/site-logo/edit.js +26 -35
- package/build/site-logo/edit.js.map +1 -1
- package/build/social-links/edit.js +2 -1
- package/build/social-links/edit.js.map +1 -1
- package/build/spacer/controls.js +13 -9
- package/build/spacer/controls.js.map +1 -1
- package/build/spacer/edit.js +23 -21
- package/build/spacer/edit.js.map +1 -1
- package/build/table-of-contents/edit.js +24 -8
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +2 -9
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/utils/messages.js +22 -0
- package/build/utils/messages.js.map +1 -0
- package/build/video/edit-common-settings.js +1 -1
- package/build/video/edit-common-settings.js.map +1 -1
- package/build/video/edit.native.js +3 -3
- package/build/video/edit.native.js.map +1 -1
- package/build-module/archives/edit.js +2 -2
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/button/edit.js +3 -2
- package/build-module/button/edit.js.map +1 -1
- package/build-module/categories/edit.js +116 -38
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/columns/edit.js +1 -1
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +1 -1
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/comment-template/edit.js +2 -2
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comments/edit/comments-inspector-controls.js +5 -4
- package/build-module/comments/edit/comments-inspector-controls.js.map +1 -1
- package/build-module/comments-pagination/index.js +5 -0
- package/build-module/comments-pagination/index.js.map +1 -1
- package/build-module/comments-pagination-next/index.js +7 -6
- package/build-module/comments-pagination-next/index.js.map +1 -1
- package/build-module/comments-pagination-previous/index.js +7 -6
- package/build-module/comments-pagination-previous/index.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/inspector-controls.js +1 -8
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/details/edit.js +29 -20
- package/build-module/details/edit.js.map +1 -1
- package/build-module/details/index.js +12 -0
- package/build-module/details/index.js.map +1 -1
- package/build-module/details/save.js +2 -0
- package/build-module/details/save.js.map +1 -1
- package/build-module/embed/transforms.js +5 -2
- package/build-module/embed/transforms.js.map +1 -1
- package/build-module/embed/util.js +1 -1
- package/build-module/embed/util.js.map +1 -1
- package/build-module/file/edit.js +7 -4
- package/build-module/file/edit.js.map +1 -1
- package/build-module/file/transforms.js +1 -1
- package/build-module/file/transforms.js.map +1 -1
- package/build-module/file/utils/index.js +1 -1
- package/build-module/file/utils/index.js.map +1 -1
- package/build-module/form/variations.js +1 -1
- package/build-module/form/variations.js.map +1 -1
- package/build-module/form-input/edit.js +1 -1
- package/build-module/form-input/edit.js.map +1 -1
- package/build-module/gallery/edit.js +1 -1
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/transforms.js +2 -2
- package/build-module/gallery/transforms.js.map +1 -1
- package/build-module/gallery/use-get-new-images.js +1 -1
- package/build-module/gallery/use-get-new-images.js.map +1 -1
- package/build-module/group/edit.js +1 -8
- package/build-module/group/edit.js.map +1 -1
- package/build-module/home-link/edit.js +1 -2
- package/build-module/home-link/edit.js.map +1 -1
- package/build-module/latest-comments/edit.js +74 -27
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-posts/constants.js +1 -0
- package/build-module/latest-posts/constants.js.map +1 -1
- package/build-module/latest-posts/edit.js +93 -40
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/list-item/edit.native.js +2 -2
- package/build-module/list-item/edit.native.js.map +1 -1
- package/build-module/list-item/index.js +1 -1
- package/build-module/media-text/edit.native.js +2 -2
- package/build-module/media-text/edit.native.js.map +1 -1
- package/build-module/media-text/media-container.native.js +4 -4
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/navigation/edit/index.js +8 -4
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js +4 -4
- package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build-module/navigation/index.js +15 -0
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation-link/edit.js +16 -21
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/link-ui.js +9 -18
- package/build-module/navigation-link/link-ui.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +1 -1
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/navigation-submenu/index.js +7 -0
- package/build-module/navigation-submenu/index.js.map +1 -1
- package/build-module/page-list/edit.js +1 -1
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/index.js +11 -0
- package/build-module/page-list/index.js.map +1 -1
- package/build-module/paragraph/edit.js +5 -15
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/pattern/index.js +1 -1
- package/build-module/post-author-name/edit.js +42 -13
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-comments-link/index.js +7 -1
- package/build-module/post-comments-link/index.js.map +1 -1
- package/build-module/post-content/index.js +1 -0
- package/build-module/post-content/index.js.map +1 -1
- package/build-module/post-date/edit.js +1 -1
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-featured-image/edit.js +0 -6
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/overlay-controls.js +2 -1
- package/build-module/post-featured-image/overlay-controls.js.map +1 -1
- package/build-module/post-navigation-link/variations.js +2 -2
- package/build-module/post-navigation-link/variations.js.map +1 -1
- package/build-module/post-terms/edit.js +1 -0
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-time-to-read/index.js +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +111 -62
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/query-content.js +1 -5
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/utils.js +1 -1
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query-no-results/index.js +1 -1
- package/build-module/query-pagination-numbers/edit.js +1 -1
- package/build-module/query-pagination-numbers/edit.js.map +1 -1
- package/build-module/query-title/edit.js +41 -15
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/query-total/index.js +7 -1
- package/build-module/query-total/index.js.map +1 -1
- package/build-module/quote/transforms.js +1 -1
- package/build-module/quote/transforms.js.map +1 -1
- package/build-module/read-more/edit.js +26 -8
- package/build-module/read-more/edit.js.map +1 -1
- package/build-module/rss/edit.js +1 -0
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/rss/index.js +6 -0
- package/build-module/rss/index.js.map +1 -1
- package/build-module/search/edit.js +69 -50
- package/build-module/search/edit.js.map +1 -1
- package/build-module/separator/edit.js +1 -3
- package/build-module/separator/edit.js.map +1 -1
- package/build-module/site-logo/edit.js +27 -36
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/social-links/edit.js +2 -1
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/spacer/controls.js +13 -9
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/spacer/edit.js +24 -22
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/table-of-contents/edit.js +25 -9
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +1 -8
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/utils/messages.js +15 -0
- package/build-module/utils/messages.js.map +1 -0
- package/build-module/video/edit-common-settings.js +1 -1
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-module/video/edit.native.js +3 -3
- package/build-module/video/edit.native.js.map +1 -1
- package/build-style/editor-rtl.css +12 -86
- package/build-style/editor.css +12 -86
- package/build-style/freeform/editor-rtl.css +2 -4
- package/build-style/freeform/editor.css +2 -4
- package/build-style/gallery/editor-rtl.css +0 -46
- package/build-style/gallery/editor.css +0 -46
- package/build-style/image/style-rtl.css +24 -10
- package/build-style/image/style.css +24 -10
- package/build-style/navigation/style-rtl.css +8 -6
- package/build-style/navigation/style.css +8 -6
- package/build-style/navigation-link/editor-rtl.css +3 -0
- package/build-style/navigation-link/editor.css +3 -0
- package/build-style/paragraph/editor-rtl.css +4 -0
- package/build-style/paragraph/editor.css +4 -0
- package/build-style/post-featured-image/editor-rtl.css +1 -1
- package/build-style/post-featured-image/editor.css +1 -1
- package/build-style/query/editor-rtl.css +0 -27
- package/build-style/query/editor.css +0 -27
- package/build-style/site-logo/editor-rtl.css +2 -8
- package/build-style/site-logo/editor.css +2 -8
- package/build-style/social-links/style-rtl.css +2 -5
- package/build-style/social-links/style.css +2 -5
- package/build-style/style-rtl.css +34 -21
- package/build-style/style.css +34 -21
- package/package.json +35 -35
- package/src/archives/edit.js +2 -2
- package/src/audio/test/transforms.native.js +4 -3
- package/src/button/edit.js +6 -2
- package/src/categories/edit.js +133 -45
- package/src/columns/edit.js +1 -1
- package/src/columns/edit.native.js +1 -1
- package/src/comment-template/edit.js +2 -2
- package/src/comments/edit/comments-inspector-controls.js +5 -8
- package/src/comments-pagination/block.json +5 -0
- package/src/comments-pagination-next/block.json +0 -5
- package/src/comments-pagination-next/index.js +6 -0
- package/src/comments-pagination-previous/block.json +0 -5
- package/src/comments-pagination-previous/index.js +6 -0
- package/src/cover/deprecated.js +1 -1
- package/src/cover/edit/inspector-controls.js +1 -21
- package/src/cover/test/__snapshots__/edit.native.js.snap +1 -1
- package/src/cover/test/edit.js +7 -7
- package/src/cover/test/edit.native.js +2 -2
- package/src/cover/test/transforms.native.js +9 -5
- package/src/details/block.json +12 -0
- package/src/details/edit.js +29 -24
- package/src/details/save.js +6 -2
- package/src/editor.scss +1 -1
- package/src/embed/test/index.js +1 -1
- package/src/embed/transforms.js +3 -1
- package/src/embed/util.js +1 -1
- package/src/file/edit.js +4 -3
- package/src/file/test/transforms.native.js +4 -3
- package/src/file/transforms.js +1 -1
- package/src/file/utils/index.js +1 -1
- package/src/form/variations.js +1 -1
- package/src/form-input/edit.js +1 -1
- package/src/freeform/editor.scss +4 -3
- package/src/gallery/edit.js +1 -1
- package/src/gallery/editor.scss +0 -54
- package/src/gallery/test/transforms.native.js +4 -3
- package/src/gallery/transforms.js +2 -2
- package/src/gallery/use-get-new-images.js +1 -1
- package/src/group/edit.js +1 -20
- package/src/home-link/edit.js +0 -6
- package/src/image/block.json +8 -1
- package/src/image/editor.scss +1 -1
- package/src/image/index.php +9 -13
- package/src/image/style.scss +17 -7
- package/src/image/test/edit.native.js +1 -1
- package/src/image/test/transforms.native.js +4 -3
- package/src/latest-comments/edit.js +93 -33
- package/src/latest-posts/constants.js +1 -0
- package/src/latest-posts/edit.js +119 -44
- package/src/list/test/edit.native.js +10 -10
- package/src/list-item/block.json +1 -1
- package/src/list-item/edit.native.js +2 -2
- package/src/media-text/edit.native.js +2 -2
- package/src/media-text/media-container.native.js +4 -4
- package/src/media-text/test/transforms.native.js +9 -5
- package/src/navigation/edit/index.js +4 -0
- package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
- package/src/navigation/edit/use-generate-default-navigation-title.js +4 -4
- package/src/navigation/index.js +20 -0
- package/src/navigation/style.scss +7 -4
- package/src/navigation-link/edit.js +26 -30
- package/src/navigation-link/editor.scss +27 -18
- package/src/navigation-link/link-ui.js +7 -13
- package/src/navigation-submenu/edit.js +1 -1
- package/src/navigation-submenu/index.js +7 -0
- package/src/navigation-submenu/index.php +21 -4
- package/src/page-list/block.json +11 -0
- package/src/page-list/edit.js +52 -50
- package/src/paragraph/edit.js +3 -18
- package/src/paragraph/editor.scss +7 -0
- package/src/paragraph/style.scss +1 -1
- package/src/pattern/block.json +1 -1
- package/src/post-author-name/edit.js +53 -15
- package/src/post-comments-link/block.json +7 -1
- package/src/post-content/block.json +2 -1
- package/src/post-date/edit.js +1 -3
- package/src/post-featured-image/edit.js +2 -15
- package/src/post-featured-image/editor.scss +2 -2
- package/src/post-featured-image/overlay-controls.js +1 -0
- package/src/post-navigation-link/variations.js +2 -2
- package/src/post-terms/edit.js +1 -0
- package/src/post-time-to-read/block.json +1 -1
- package/src/query/edit/inspector-controls/author-control.js +1 -1
- package/src/query/edit/inspector-controls/index.js +148 -88
- package/src/query/edit/query-content.js +1 -11
- package/src/query/editor.scss +0 -31
- package/src/query/utils.js +1 -1
- package/src/query-no-results/block.json +1 -1
- package/src/query-pagination-numbers/edit.js +1 -1
- package/src/query-title/edit.js +61 -19
- package/src/query-total/block.json +7 -1
- package/src/quote/transforms.js +1 -1
- package/src/read-more/edit.js +35 -11
- package/src/rss/block.json +6 -0
- package/src/rss/edit.js +1 -0
- package/src/search/edit.js +100 -71
- package/src/separator/deprecated.scss +1 -1
- package/src/separator/edit.js +1 -6
- package/src/site-logo/edit.js +34 -47
- package/src/site-logo/editor.scss +3 -6
- package/src/social-link/index.php +2 -2
- package/src/social-links/edit.js +1 -0
- package/src/social-links/style.scss +3 -3
- package/src/spacer/controls.js +10 -9
- package/src/spacer/edit.js +25 -23
- package/src/table-of-contents/edit.js +38 -19
- package/src/template-part/edit/advanced-controls.js +1 -21
- package/src/utils/messages.js +31 -0
- package/src/video/edit-common-settings.js +1 -1
- package/src/video/edit.native.js +3 -3
- package/src/video/test/transforms.native.js +4 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_blockEditor","_i18n","_useDeprecatedOpacity","
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_blockEditor","_i18n","_useDeprecatedOpacity","_messages","_jsxRuntime","SeparatorEdit","attributes","setAttributes","backgroundColor","opacity","style","tagName","colorProps","useColorProps","currentColor","hasCustomColor","color","background","useDeprecatedOpacity","colorClass","getColorClassName","className","clsx","styles","Wrapper","HorizontalRule","jsxs","Fragment","children","jsx","InspectorControls","group","SelectControl","__nextHasNoMarginBottom","__next40pxDefaultSize","label","__","options","value","onChange","help","htmlElementMessages","useBlockProps","undefined"],"sources":["@wordpress/block-library/src/separator/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { HorizontalRule, SelectControl } from '@wordpress/components';\nimport {\n\tuseBlockProps,\n\tgetColorClassName,\n\t__experimentalUseColorProps as useColorProps,\n\tInspectorControls,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useDeprecatedOpacity from './use-deprecated-opacity';\nimport { htmlElementMessages } from '../utils/messages';\n\nexport default function SeparatorEdit( { attributes, setAttributes } ) {\n\tconst { backgroundColor, opacity, style, tagName } = attributes;\n\tconst colorProps = useColorProps( attributes );\n\tconst currentColor = colorProps?.style?.backgroundColor;\n\tconst hasCustomColor = !! style?.color?.background;\n\n\tuseDeprecatedOpacity( opacity, currentColor, setAttributes );\n\n\t// The dots styles uses text for the dots, to change those dots color is\n\t// using color, not backgroundColor.\n\tconst colorClass = getColorClassName( 'color', backgroundColor );\n\n\tconst className = clsx(\n\t\t{\n\t\t\t'has-text-color': backgroundColor || currentColor,\n\t\t\t[ colorClass ]: colorClass,\n\t\t\t'has-css-opacity': opacity === 'css',\n\t\t\t'has-alpha-channel-opacity': opacity === 'alpha-channel',\n\t\t},\n\t\tcolorProps.className\n\t);\n\n\tconst styles = {\n\t\tcolor: currentColor,\n\t\tbackgroundColor: currentColor,\n\t};\n\tconst Wrapper = tagName === 'hr' ? HorizontalRule : tagName;\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<hr>)' ), value: 'hr' },\n\t\t\t\t\t\t{ label: '<div>', value: 'div' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ tagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<Wrapper\n\t\t\t\t{ ...useBlockProps( {\n\t\t\t\t\tclassName,\n\t\t\t\t\tstyle: hasCustomColor ? styles : undefined,\n\t\t\t\t} ) }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,sBAAA,CAAAC,OAAA;AAKA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAMA,IAAAG,KAAA,GAAAH,OAAA;AAKA,IAAAI,qBAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AAAwD,IAAAM,WAAA,GAAAN,OAAA;AArBxD;AACA;AACA;;AAGA;AACA;AACA;;AAUA;AACA;AACA;;AAIe,SAASO,aAAaA,CAAE;EAAEC,UAAU;EAAEC;AAAc,CAAC,EAAG;EACtE,MAAM;IAAEC,eAAe;IAAEC,OAAO;IAAEC,KAAK;IAAEC;EAAQ,CAAC,GAAGL,UAAU;EAC/D,MAAMM,UAAU,GAAG,IAAAC,wCAAa,EAAEP,UAAW,CAAC;EAC9C,MAAMQ,YAAY,GAAGF,UAAU,EAAEF,KAAK,EAAEF,eAAe;EACvD,MAAMO,cAAc,GAAG,CAAC,CAAEL,KAAK,EAAEM,KAAK,EAAEC,UAAU;EAElD,IAAAC,6BAAoB,EAAET,OAAO,EAAEK,YAAY,EAAEP,aAAc,CAAC;;EAE5D;EACA;EACA,MAAMY,UAAU,GAAG,IAAAC,8BAAiB,EAAE,OAAO,EAAEZ,eAAgB,CAAC;EAEhE,MAAMa,SAAS,GAAG,IAAAC,aAAI,EACrB;IACC,gBAAgB,EAAEd,eAAe,IAAIM,YAAY;IACjD,CAAEK,UAAU,GAAIA,UAAU;IAC1B,iBAAiB,EAAEV,OAAO,KAAK,KAAK;IACpC,2BAA2B,EAAEA,OAAO,KAAK;EAC1C,CAAC,EACDG,UAAU,CAACS,SACZ,CAAC;EAED,MAAME,MAAM,GAAG;IACdP,KAAK,EAAEF,YAAY;IACnBN,eAAe,EAAEM;EAClB,CAAC;EACD,MAAMU,OAAO,GAAGb,OAAO,KAAK,IAAI,GAAGc,0BAAc,GAAGd,OAAO;EAE3D,oBACC,IAAAP,WAAA,CAAAsB,IAAA,EAAAtB,WAAA,CAAAuB,QAAA;IAAAC,QAAA,gBACC,IAAAxB,WAAA,CAAAyB,GAAA,EAAC7B,YAAA,CAAA8B,iBAAiB;MAACC,KAAK,EAAC,UAAU;MAAAH,QAAA,eAClC,IAAAxB,WAAA,CAAAyB,GAAA,EAAC9B,WAAA,CAAAiC,aAAa;QACbC,uBAAuB;QACvBC,qBAAqB;QACrBC,KAAK,EAAG,IAAAC,QAAE,EAAE,cAAe,CAAG;QAC9BC,OAAO,EAAG,CACT;UAAEF,KAAK,EAAE,IAAAC,QAAE,EAAE,gBAAiB,CAAC;UAAEE,KAAK,EAAE;QAAK,CAAC,EAC9C;UAAEH,KAAK,EAAE,OAAO;UAAEG,KAAK,EAAE;QAAM,CAAC,CAC9B;QACHA,KAAK,EAAG3B,OAAS;QACjB4B,QAAQ,EAAKD,KAAK,IACjB/B,aAAa,CAAE;UAAEI,OAAO,EAAE2B;QAAM,CAAE,CAClC;QACDE,IAAI,EAAGC,6BAAmB,CAAE9B,OAAO;MAAI,CACvC;IAAC,CACgB,CAAC,eACpB,IAAAP,WAAA,CAAAyB,GAAA,EAACL,OAAO;MAAA,GACF,IAAAkB,0BAAa,EAAE;QACnBrB,SAAS;QACTX,KAAK,EAAEK,cAAc,GAAGQ,MAAM,GAAGoB;MAClC,CAAE;IAAC,CACH,CAAC;EAAA,CACD,CAAC;AAEL","ignoreList":[]}
|
package/build/site-logo/edit.js
CHANGED
|
@@ -304,19 +304,17 @@ const SiteLogo = ({
|
|
|
304
304
|
// different MediaReplaceFlows, one for the inspector and one for the toolbar.
|
|
305
305
|
function SiteLogoReplaceFlow({
|
|
306
306
|
mediaURL,
|
|
307
|
-
onRemoveLogo,
|
|
308
307
|
...mediaReplaceProps
|
|
309
308
|
}) {
|
|
310
309
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.MediaReplaceFlow, {
|
|
311
310
|
...mediaReplaceProps,
|
|
312
311
|
mediaURL: mediaURL,
|
|
313
312
|
allowedTypes: ALLOWED_MEDIA_TYPES,
|
|
314
|
-
accept: ACCEPT_MEDIA_STRING
|
|
315
|
-
onReset: onRemoveLogo
|
|
313
|
+
accept: ACCEPT_MEDIA_STRING
|
|
316
314
|
});
|
|
317
315
|
}
|
|
318
316
|
const InspectorLogoPreview = ({
|
|
319
|
-
|
|
317
|
+
media,
|
|
320
318
|
itemGroupProps
|
|
321
319
|
}) => {
|
|
322
320
|
const {
|
|
@@ -324,7 +322,7 @@ const InspectorLogoPreview = ({
|
|
|
324
322
|
source_url: logoUrl,
|
|
325
323
|
slug: logoSlug,
|
|
326
324
|
media_details: logoMediaDetails
|
|
327
|
-
} =
|
|
325
|
+
} = media !== null && media !== void 0 ? media : {};
|
|
328
326
|
const logoLabel = logoMediaDetails?.sizes?.full?.file || logoSlug;
|
|
329
327
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalItemGroup, {
|
|
330
328
|
...itemGroupProps,
|
|
@@ -462,6 +460,10 @@ function LogoEdit({
|
|
|
462
460
|
setTemporaryURL();
|
|
463
461
|
};
|
|
464
462
|
const onFilesDrop = filesList => {
|
|
463
|
+
if (filesList?.length > 1) {
|
|
464
|
+
onUploadError((0, _i18n.__)('Only one image can be used as a site logo.'));
|
|
465
|
+
return;
|
|
466
|
+
}
|
|
465
467
|
getSettings().mediaUpload({
|
|
466
468
|
allowedTypes: ALLOWED_MEDIA_TYPES,
|
|
467
469
|
filesList,
|
|
@@ -472,8 +474,7 @@ function LogoEdit({
|
|
|
472
474
|
}
|
|
473
475
|
onInitialSelectLogo(image);
|
|
474
476
|
},
|
|
475
|
-
onError: onUploadError
|
|
476
|
-
onRemoveLogo
|
|
477
|
+
onError: onUploadError
|
|
477
478
|
});
|
|
478
479
|
};
|
|
479
480
|
const mediaReplaceFlowProps = {
|
|
@@ -481,7 +482,7 @@ function LogoEdit({
|
|
|
481
482
|
name: !logoUrl ? (0, _i18n.__)('Choose logo') : (0, _i18n.__)('Replace'),
|
|
482
483
|
onSelect: onSelectLogo,
|
|
483
484
|
onError: onUploadError,
|
|
484
|
-
onRemoveLogo
|
|
485
|
+
onReset: onRemoveLogo
|
|
485
486
|
};
|
|
486
487
|
const controls = canUserEdit && /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.BlockControls, {
|
|
487
488
|
group: "other",
|
|
@@ -543,39 +544,29 @@ function LogoEdit({
|
|
|
543
544
|
const mediaInspectorPanel = (canUserEdit || logoUrl) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.InspectorControls, {
|
|
544
545
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.PanelBody, {
|
|
545
546
|
title: (0, _i18n.__)('Media'),
|
|
546
|
-
children: /*#__PURE__*/(0, _jsxRuntime.
|
|
547
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
547
548
|
className: "block-library-site-logo__inspector-media-replace-container",
|
|
548
|
-
children:
|
|
549
|
-
|
|
549
|
+
children: !canUserEdit ? /*#__PURE__*/(0, _jsxRuntime.jsx)(InspectorLogoPreview, {
|
|
550
|
+
media: mediaItemData,
|
|
550
551
|
itemGroupProps: {
|
|
551
552
|
isBordered: true,
|
|
552
553
|
className: 'block-library-site-logo__inspector-readonly-logo-preview'
|
|
553
554
|
}
|
|
554
|
-
})
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
render: ({
|
|
565
|
-
open
|
|
566
|
-
}) => /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
567
|
-
className: "block-library-site-logo__inspector-upload-container",
|
|
568
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
569
|
-
__next40pxDefaultSize: true,
|
|
570
|
-
onClick: open,
|
|
571
|
-
variant: "secondary",
|
|
572
|
-
children: isLoading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Spinner, {}) : (0, _i18n.__)('Choose logo')
|
|
573
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.DropZone, {
|
|
574
|
-
onFilesDrop: onFilesDrop
|
|
575
|
-
})]
|
|
555
|
+
}) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
556
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(SiteLogoReplaceFlow, {
|
|
557
|
+
...mediaReplaceFlowProps,
|
|
558
|
+
name: !!logoUrl ? /*#__PURE__*/(0, _jsxRuntime.jsx)(InspectorLogoPreview, {
|
|
559
|
+
media: mediaItemData
|
|
560
|
+
}) : (0, _i18n.__)('Choose logo'),
|
|
561
|
+
renderToggle: props => /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
562
|
+
...props,
|
|
563
|
+
__next40pxDefaultSize: true,
|
|
564
|
+
children: temporaryURL ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Spinner, {}) : props.children
|
|
576
565
|
})
|
|
577
|
-
})
|
|
578
|
-
|
|
566
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.DropZone, {
|
|
567
|
+
onFilesDrop: onFilesDrop
|
|
568
|
+
})]
|
|
569
|
+
})
|
|
579
570
|
})
|
|
580
571
|
})
|
|
581
572
|
});
|
|
@@ -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","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","DropZone","placeholder","content","placeholderClassName","clsx","Placeholder","preview","withIllustration","classes","blockProps","useBlockProps","mediaInspectorPanel","isBordered","popoverProps","MediaUploadCheck","MediaUpload","render","open","Button","variant","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\t{ canUserEdit && <DropZone onFilesDrop={ onFilesDrop } /> }\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":[]}
|
|
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","mediaReplaceProps","MediaReplaceFlow","allowedTypes","accept","InspectorLogoPreview","media","itemGroupProps","alt_text","source_url","slug","logoSlug","media_details","logoMediaDetails","logoLabel","sizes","full","file","__experimentalItemGroup","as","__experimentalHStack","justify","FlexItem","__experimentalTruncate","numberOfLines","LogoEdit","siteLogoId","siteIconId","mediaItemData","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","onSelectLogo","onRemoveLogo","createErrorNotice","noticesStore","onUploadError","message","type","onFilesDrop","filesList","length","mediaUpload","onFileChange","image","onError","mediaReplaceFlowProps","onSelect","onReset","controls","logoImage","isLoading","DropZone","placeholder","content","placeholderClassName","clsx","Placeholder","preview","withIllustration","classes","blockProps","useBlockProps","mediaInspectorPanel","isBordered","renderToggle","props","Button","MediaPlaceholder","mediaLibraryButton","open","upload","variant","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\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( { mediaURL, ...mediaReplaceProps } ) {\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/>\n\t);\n}\n\nconst InspectorLogoPreview = ( { media, itemGroupProps } ) => {\n\tconst {\n\t\talt_text: alt,\n\t\tsource_url: logoUrl,\n\t\tslug: logoSlug,\n\t\tmedia_details: logoMediaDetails,\n\t} = media ?? {};\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\tif ( filesList?.length > 1 ) {\n\t\t\tonUploadError( __( 'Only one image can be used as a site logo.' ) );\n\t\t\treturn;\n\t\t}\n\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} );\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\tonReset: onRemoveLogo,\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\t{ canUserEdit && <DropZone onFilesDrop={ onFilesDrop } /> }\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 ? (\n\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\tmedia={ 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\t<>\n\t\t\t\t\t\t\t<SiteLogoReplaceFlow\n\t\t\t\t\t\t\t\t{ ...mediaReplaceFlowProps }\n\t\t\t\t\t\t\t\tname={\n\t\t\t\t\t\t\t\t\t!! logoUrl ? (\n\t\t\t\t\t\t\t\t\t\t<InspectorLogoPreview\n\t\t\t\t\t\t\t\t\t\t\tmedia={ mediaItemData }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t__( 'Choose logo' )\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\trenderToggle={ ( props ) => (\n\t\t\t\t\t\t\t\t\t<Button { ...props } __next40pxDefaultSize>\n\t\t\t\t\t\t\t\t\t\t{ temporaryURL ? (\n\t\t\t\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\tprops.children\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</Button>\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<DropZone onFilesDrop={ onFilesDrop } />\n\t\t\t\t\t\t</>\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":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_element","_blockEditor","_components","_i18n","_icons","_data","_hooks","_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","dropdownMenuProps","useToolsPanelDropdownMenuProps","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","__experimentalToolsPanel","resetAll","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","ToggleControl","__nextHasNoMarginBottom","checked","hasColorsOrGradients","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","onColorChange","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\tToggleControl,\n\tToolbarDropdownMenu,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { check } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\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\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\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}, [ 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<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\topenInNewTab: false,\n\t\t\t\t\t\t\tshowLabels: false,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tlabel={ __( 'Open links in new tab' ) }\n\t\t\t\t\t\thasValue={ () => !! openInNewTab }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( { openInNewTab: false } )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Open links in new tab' ) }\n\t\t\t\t\t\t\tchecked={ openInNewTab }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\topenInNewTab: ! openInNewTab,\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</ToolsPanelItem>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tlabel={ __( 'Show text' ) }\n\t\t\t\t\t\thasValue={ () => !! showLabels }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( { showLabels: false } )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show text' ) }\n\t\t\t\t\t\t\tchecked={ showLabels }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { showLabels: ! showLabels } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t</ToolsPanel>\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","_hooks","_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","dropdownMenuProps","useToolsPanelDropdownMenuProps","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","__experimentalToolsPanel","resetAll","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","ToggleControl","__nextHasNoMarginBottom","checked","hasColorsOrGradients","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","onColorChange","enableAlpha","clearable","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\tToggleControl,\n\tToolbarDropdownMenu,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { check } from '@wordpress/icons';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\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\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\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}, [ 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<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\topenInNewTab: false,\n\t\t\t\t\t\t\tshowLabels: false,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tlabel={ __( 'Open links in new tab' ) }\n\t\t\t\t\t\thasValue={ () => !! openInNewTab }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( { openInNewTab: false } )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Open links in new tab' ) }\n\t\t\t\t\t\t\tchecked={ openInNewTab }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\topenInNewTab: ! openInNewTab,\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</ToolsPanelItem>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tlabel={ __( 'Show text' ) }\n\t\t\t\t\t\thasValue={ () => !! showLabels }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( { showLabels: false } )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Show text' ) }\n\t\t\t\t\t\t\tchecked={ showLabels }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { showLabels: ! showLabels } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t</ToolsPanel>\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\tclearable: 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":[]}
|
package/build/spacer/controls.js
CHANGED
|
@@ -12,6 +12,7 @@ var _compose = require("@wordpress/compose");
|
|
|
12
12
|
var _primitives = require("@wordpress/primitives");
|
|
13
13
|
var _lockUnlock = require("../lock-unlock");
|
|
14
14
|
var _constants = require("./constants");
|
|
15
|
+
var _hooks = require("../utils/hooks");
|
|
15
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
17
|
/**
|
|
17
18
|
* WordPress dependencies
|
|
@@ -47,30 +48,31 @@ function DimensionInput({
|
|
|
47
48
|
vh: 25
|
|
48
49
|
}
|
|
49
50
|
});
|
|
50
|
-
const handleOnChange = unprocessedValue => {
|
|
51
|
-
onChange(unprocessedValue.all);
|
|
52
|
-
};
|
|
53
51
|
|
|
54
52
|
// Force the unit to update to `px` when the Spacer is being resized.
|
|
55
53
|
const [parsedQuantity, parsedUnit] = (0, _components.__experimentalParseQuantityAndUnitFromRawValue)(value);
|
|
56
54
|
const computedValue = (0, _blockEditor.isValueSpacingPreset)(value) ? value : [parsedQuantity, isResizing ? 'px' : parsedUnit].join('');
|
|
57
|
-
return /*#__PURE__*/(0, _jsxRuntime.
|
|
58
|
-
children:
|
|
55
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
|
|
56
|
+
children: spacingSizes?.length < 2 ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalUnitControl, {
|
|
59
57
|
id: inputId,
|
|
60
58
|
isResetValueOnUnitChange: true,
|
|
61
59
|
min: _constants.MIN_SPACER_SIZE,
|
|
62
|
-
onChange:
|
|
60
|
+
onChange: onChange,
|
|
63
61
|
value: computedValue,
|
|
64
62
|
units: units,
|
|
65
63
|
label: label,
|
|
66
64
|
__next40pxDefaultSize: true
|
|
67
|
-
})
|
|
65
|
+
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_primitives.View, {
|
|
68
66
|
className: "tools-panel-item-spacing",
|
|
69
67
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.__experimentalSpacingSizesControl, {
|
|
70
68
|
values: {
|
|
71
69
|
all: computedValue
|
|
72
70
|
},
|
|
73
|
-
onChange:
|
|
71
|
+
onChange: ({
|
|
72
|
+
all
|
|
73
|
+
}) => {
|
|
74
|
+
onChange(all);
|
|
75
|
+
},
|
|
74
76
|
label: label,
|
|
75
77
|
sides: ['all'],
|
|
76
78
|
units: units,
|
|
@@ -78,7 +80,7 @@ function DimensionInput({
|
|
|
78
80
|
splitOnAxis: false,
|
|
79
81
|
showSideInLabel: false
|
|
80
82
|
})
|
|
81
|
-
})
|
|
83
|
+
})
|
|
82
84
|
});
|
|
83
85
|
}
|
|
84
86
|
function SpacerControls({
|
|
@@ -88,6 +90,7 @@ function SpacerControls({
|
|
|
88
90
|
width,
|
|
89
91
|
isResizing
|
|
90
92
|
}) {
|
|
93
|
+
const dropdownMenuProps = (0, _hooks.useToolsPanelDropdownMenuProps)();
|
|
91
94
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_blockEditor.InspectorControls, {
|
|
92
95
|
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalToolsPanel, {
|
|
93
96
|
label: (0, _i18n.__)('Settings'),
|
|
@@ -97,6 +100,7 @@ function SpacerControls({
|
|
|
97
100
|
height: '100px'
|
|
98
101
|
});
|
|
99
102
|
},
|
|
103
|
+
dropdownMenuProps: dropdownMenuProps,
|
|
100
104
|
children: [orientation === 'horizontal' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalToolsPanelItem, {
|
|
101
105
|
label: (0, _i18n.__)('Width'),
|
|
102
106
|
isShownByDefault: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_blockEditor","_components","_compose","_primitives","_lockUnlock","_constants","_jsxRuntime","useSpacingSizes","unlock","blockEditorPrivateApis","DimensionInput","label","onChange","isResizing","value","inputId","useInstanceId","UnitControl","spacingSizes","spacingUnits","useSettings","availableUnits","filter","unit","units","useCustomUnits","defaultValues","px","em","rem","vw","vh","
|
|
1
|
+
{"version":3,"names":["_i18n","require","_blockEditor","_components","_compose","_primitives","_lockUnlock","_constants","_hooks","_jsxRuntime","useSpacingSizes","unlock","blockEditorPrivateApis","DimensionInput","label","onChange","isResizing","value","inputId","useInstanceId","UnitControl","spacingSizes","spacingUnits","useSettings","availableUnits","filter","unit","units","useCustomUnits","defaultValues","px","em","rem","vw","vh","parsedQuantity","parsedUnit","parseQuantityAndUnitFromRawValue","computedValue","isValueSpacingPreset","join","jsx","Fragment","children","length","__experimentalUnitControl","id","isResetValueOnUnitChange","min","MIN_SPACER_SIZE","__next40pxDefaultSize","View","className","__experimentalSpacingSizesControl","values","all","sides","allowReset","splitOnAxis","showSideInLabel","SpacerControls","setAttributes","orientation","height","width","dropdownMenuProps","useToolsPanelDropdownMenuProps","InspectorControls","jsxs","__experimentalToolsPanel","__","resetAll","undefined","__experimentalToolsPanelItem","isShownByDefault","hasValue","onDeselect","nextWidth","nextHeight"],"sources":["@wordpress/block-library/src/spacer/controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tuseSettings,\n\t__experimentalSpacingSizesControl as SpacingSizesControl,\n\tisValueSpacingPreset,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { View } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\nimport { MIN_SPACER_SIZE } from './constants';\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\n\nconst { useSpacingSizes } = unlock( blockEditorPrivateApis );\n\nfunction DimensionInput( { label, onChange, isResizing, value = '' } ) {\n\tconst inputId = useInstanceId( UnitControl, 'block-spacer-height-input' );\n\tconst spacingSizes = useSpacingSizes();\n\tconst [ spacingUnits ] = useSettings( 'spacing.units' );\n\t// In most contexts the spacer size cannot meaningfully be set to a\n\t// percentage, since this is relative to the parent container. This\n\t// unit is disabled from the UI.\n\tconst availableUnits = spacingUnits\n\t\t? spacingUnits.filter( ( unit ) => unit !== '%' )\n\t\t: [ 'px', 'em', 'rem', 'vw', 'vh' ];\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits,\n\t\tdefaultValues: { px: 100, em: 10, rem: 10, vw: 10, vh: 25 },\n\t} );\n\n\t// Force the unit to update to `px` when the Spacer is being resized.\n\tconst [ parsedQuantity, parsedUnit ] =\n\t\tparseQuantityAndUnitFromRawValue( value );\n\tconst computedValue = isValueSpacingPreset( value )\n\t\t? value\n\t\t: [ parsedQuantity, isResizing ? 'px' : parsedUnit ].join( '' );\n\n\treturn (\n\t\t<>\n\t\t\t{ spacingSizes?.length < 2 ? (\n\t\t\t\t<UnitControl\n\t\t\t\t\tid={ inputId }\n\t\t\t\t\tisResetValueOnUnitChange\n\t\t\t\t\tmin={ MIN_SPACER_SIZE }\n\t\t\t\t\tonChange={ onChange }\n\t\t\t\t\tvalue={ computedValue }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<View className=\"tools-panel-item-spacing\">\n\t\t\t\t\t<SpacingSizesControl\n\t\t\t\t\t\tvalues={ { all: computedValue } }\n\t\t\t\t\t\tonChange={ ( { all } ) => {\n\t\t\t\t\t\t\tonChange( all );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\tsides={ [ 'all' ] }\n\t\t\t\t\t\tunits={ units }\n\t\t\t\t\t\tallowReset={ false }\n\t\t\t\t\t\tsplitOnAxis={ false }\n\t\t\t\t\t\tshowSideInLabel={ false }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default function SpacerControls( {\n\tsetAttributes,\n\torientation,\n\theight,\n\twidth,\n\tisResizing,\n} ) {\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\treturn (\n\t\t<InspectorControls>\n\t\t\t<ToolsPanel\n\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\tresetAll={ () => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: undefined,\n\t\t\t\t\t\theight: '100px',\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t>\n\t\t\t\t{ orientation === 'horizontal' && (\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => width !== undefined }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( { width: undefined } )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<DimensionInput\n\t\t\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\t\t\tvalue={ width }\n\t\t\t\t\t\t\tonChange={ ( nextWidth ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { width: nextWidth } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t) }\n\t\t\t\t{ orientation !== 'horizontal' && (\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => height !== '100px' }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( { height: '100px' } )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<DimensionInput\n\t\t\t\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\t\t\t\tvalue={ height }\n\t\t\t\t\t\t\tonChange={ ( nextHeight ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { height: nextHeight } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisResizing={ isResizing }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t) }\n\t\t\t</ToolsPanel>\n\t\t</InspectorControls>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|