@wordpress/block-library 7.3.10 → 7.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/README.md +3 -2
- package/babel-plugin.js +154 -0
- package/build/archives/edit.js +1 -1
- package/build/archives/edit.js.map +1 -1
- package/build/audio/edit.js +5 -17
- package/build/audio/edit.js.map +1 -1
- package/build/audio/edit.native.js +1 -1
- package/build/audio/edit.native.js.map +1 -1
- package/build/block/edit.js +10 -9
- package/build/block/edit.js.map +1 -1
- package/build/button/edit.native.js +7 -3
- package/build/button/edit.native.js.map +1 -1
- package/build/button/index.js +1 -0
- package/build/button/index.js.map +1 -1
- package/build/categories/edit.js +9 -4
- package/build/categories/edit.js.map +1 -1
- package/build/categories/index.js +5 -1
- package/build/categories/index.js.map +1 -1
- package/build/column/index.js +10 -0
- package/build/column/index.js.map +1 -1
- package/build/comment-author-avatar/index.js +1 -0
- package/build/comment-author-avatar/index.js.map +1 -1
- package/build/comment-template/edit.js +1 -3
- package/build/comment-template/edit.js.map +1 -1
- package/build/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
- package/{build-module/comments-query-loop → build/comments}/edit/comments-inspector-controls.js.map +1 -1
- package/build/{comments-query-loop → comments}/edit.js +2 -2
- package/build/comments/edit.js.map +1 -0
- package/build/{comments-query-loop → comments}/index.js +1 -1
- package/build/comments/index.js.map +1 -0
- package/build/{comments-query-loop → comments}/save.js +2 -2
- package/build/comments/save.js.map +1 -0
- package/build/comments-title/index.js +1 -1
- package/build/comments-title/index.js.map +1 -1
- package/build/cover/controls.native.js +2 -3
- package/build/cover/controls.native.js.map +1 -1
- package/build/cover/edit/block-controls.js +115 -0
- package/build/cover/edit/block-controls.js.map +1 -0
- package/build/cover/edit/cover-placeholder.js +49 -0
- package/build/cover/edit/cover-placeholder.js.map +1 -0
- package/build/cover/edit/index.js +333 -0
- package/build/cover/edit/index.js.map +1 -0
- package/build/cover/edit/inspector-controls.js +224 -0
- package/build/cover/edit/inspector-controls.js.map +1 -0
- package/build/cover/edit/resizable-cover.js +67 -0
- package/build/cover/edit/resizable-cover.js.map +1 -0
- package/build/cover/edit/use-cover-is-dark.js +81 -0
- package/build/cover/edit/use-cover-is-dark.js.map +1 -0
- package/build/cover/edit.native.js +36 -16
- package/build/cover/edit.native.js.map +1 -1
- package/build/cover/focal-point-settings-button.native.js.map +1 -1
- package/build/cover/shared.js +9 -0
- package/build/cover/shared.js.map +1 -1
- package/build/cover/transforms.js +77 -6
- package/build/cover/transforms.js.map +1 -1
- package/build/cover/use-cover-is-dark.native.js +60 -0
- package/build/cover/use-cover-is-dark.native.js.map +1 -0
- package/build/embed/edit.js +12 -18
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +1 -7
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/embed-preview.js +1 -1
- package/build/embed/embed-preview.js.map +1 -1
- package/build/embed/util.js +29 -4
- package/build/embed/util.js.map +1 -1
- package/build/file/edit.native.js +0 -1
- package/build/file/edit.native.js.map +1 -1
- package/build/file/inspector.js +2 -4
- package/build/file/inspector.js.map +1 -1
- package/build/gallery/edit.js +3 -2
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +1 -1
- package/build/gallery/gallery.js.map +1 -1
- package/build/gallery/shared.js +2 -2
- package/build/gallery/shared.js.map +1 -1
- package/build/gallery/use-get-media.js +2 -1
- package/build/gallery/use-get-media.js.map +1 -1
- package/build/gallery/use-short-code-transform.js +19 -18
- package/build/gallery/use-short-code-transform.js.map +1 -1
- package/build/gallery/v1/edit.js +1 -1
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/gallery/v1/gallery.js +1 -1
- package/build/gallery/v1/gallery.js.map +1 -1
- package/build/group/index.js +1 -0
- package/build/group/index.js.map +1 -1
- package/build/heading/edit.js +6 -2
- package/build/heading/edit.js.map +1 -1
- package/build/heading/index.js +1 -0
- package/build/heading/index.js.map +1 -1
- package/build/heading/transforms.js +9 -4
- package/build/heading/transforms.js.map +1 -1
- package/build/html/edit.js +2 -2
- package/build/html/edit.js.map +1 -1
- package/build/image/edit.js +9 -8
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +1 -2
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +2 -2
- package/build/image/image.js.map +1 -1
- package/build/index.js +48 -12
- package/build/index.js.map +1 -1
- package/build/index.native.js +14 -3
- package/build/index.native.js.map +1 -1
- package/build/is-block-metadata-experimental.js +18 -0
- package/build/is-block-metadata-experimental.js.map +1 -0
- package/build/latest-comments/edit.js +1 -1
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-posts/edit.js +30 -4
- package/build/latest-posts/edit.js.map +1 -1
- package/build/latest-posts/edit.native.js +49 -0
- package/build/latest-posts/edit.native.js.map +1 -1
- package/build/list/transforms.js +6 -0
- package/build/list/transforms.js.map +1 -1
- package/build/list/v2/edit.js +2 -1
- package/build/list/v2/edit.js.map +1 -1
- package/build/list/v2/migrate.js +1 -0
- package/build/list/v2/migrate.js.map +1 -1
- package/build/list/v2/transforms.js +46 -9
- package/build/list/v2/transforms.js.map +1 -1
- package/build/list-item/edit.js +7 -9
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/hooks/index.js +24 -0
- package/build/list-item/hooks/index.js.map +1 -1
- package/build/list-item/hooks/use-backspace.js +59 -0
- package/build/list-item/hooks/use-backspace.js.map +1 -0
- package/build/list-item/hooks/use-enter.js +6 -9
- package/build/list-item/hooks/use-enter.js.map +1 -1
- package/build/list-item/hooks/use-indent-list-item.js +33 -39
- package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
- package/build/list-item/hooks/use-space.js +54 -0
- package/build/list-item/hooks/use-space.js.map +1 -0
- package/build/list-item/hooks/use-split.js +30 -0
- package/build/list-item/hooks/use-split.js.map +1 -0
- package/build/list-item/index.js +1 -0
- package/build/list-item/index.js.map +1 -1
- package/build/list-item/utils.js +1 -1
- package/build/list-item/utils.js.map +1 -1
- package/build/loginout/edit.js +1 -1
- package/build/loginout/edit.js.map +1 -1
- package/build/media-text/edit.js +1 -2
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/edit.native.js +3 -2
- package/build/media-text/edit.native.js.map +1 -1
- package/build/media-text/media-container.native.js +2 -4
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/media-text/transforms.js +137 -8
- package/build/media-text/transforms.js.map +1 -1
- package/build/navigation/edit/index.js +86 -81
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +1 -5
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +5 -4
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/index.js +1 -1
- package/build/navigation/use-navigation-entities.js +3 -3
- package/build/navigation/use-navigation-entities.js.map +1 -1
- package/build/navigation/view-modal.js +62 -0
- package/build/navigation/view-modal.js.map +1 -0
- package/build/navigation/view.js +1 -34
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +1 -1
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/fallback-variations.js +1 -1
- package/build/navigation-link/fallback-variations.js.map +1 -1
- package/build/navigation-link/hooks.js +1 -1
- package/build/navigation-link/hooks.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +1 -1
- package/build/page-list/convert-to-links-modal.js.map +1 -1
- package/build/page-list/edit.js +1 -1
- package/build/page-list/edit.js.map +1 -1
- package/build/paragraph/edit.js +10 -0
- package/build/paragraph/edit.js.map +1 -1
- package/build/paragraph/edit.native.js +6 -2
- package/build/paragraph/edit.native.js.map +1 -1
- package/build/paragraph/use-enter.js +94 -0
- package/build/paragraph/use-enter.js.map +1 -0
- package/build/post-author/edit.js +2 -2
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-name/index.js +1 -0
- package/build/post-author-name/index.js.map +1 -1
- package/build/post-comment/index.js +2 -1
- package/build/post-comment/index.js.map +1 -1
- package/build/post-comments/edit.js +14 -35
- package/build/post-comments/edit.js.map +1 -1
- package/build/post-comments/index.js +1 -1
- package/build/post-comments-count/index.js +1 -0
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-comments-form/edit.js +37 -24
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-comments-form/form.js +48 -0
- package/build/post-comments-form/form.js.map +1 -0
- package/build/post-comments-link/index.js +1 -0
- package/build/post-comments-link/index.js.map +1 -1
- package/build/post-excerpt/edit.js +1 -1
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-featured-image/edit.js +1 -1
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-template/edit.js +7 -2
- package/build/post-template/edit.js.map +1 -1
- package/build/post-terms/edit.js +35 -4
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-terms/hooks.js +33 -0
- package/build/post-terms/hooks.js.map +1 -0
- package/build/post-terms/index.js +20 -5
- package/build/post-terms/index.js.map +1 -1
- package/build/post-title/index.js +1 -1
- package/build/post-title/index.js.map +1 -1
- package/build/pullquote/edit.js +1 -1
- package/build/pullquote/edit.js.map +1 -1
- package/build/pullquote/edit.native.js +1 -1
- package/build/pullquote/edit.native.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +26 -17
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/parent-control.js +148 -0
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -0
- package/build/query/edit/inspector-controls/sticky-control.js +41 -0
- package/build/query/edit/inspector-controls/sticky-control.js.map +1 -0
- package/build/query/index.js +2 -1
- package/build/query/index.js.map +1 -1
- package/build/query/utils.js +28 -2
- package/build/query/utils.js.map +1 -1
- package/build/query-title/index.js +1 -1
- package/build/query-title/index.js.map +1 -1
- package/build/query-title/variations.js +1 -1
- package/build/query-title/variations.js.map +1 -1
- package/build/quote/edit.js +3 -2
- package/build/quote/edit.js.map +1 -1
- package/build/quote/index.js +7 -0
- package/build/quote/index.js.map +1 -1
- package/build/quote/v2/edit.js +12 -4
- package/build/quote/v2/edit.js.map +1 -1
- package/build/rss/edit.js +1 -1
- package/build/rss/edit.js.map +1 -1
- package/build/search/edit.js +12 -9
- package/build/search/edit.js.map +1 -1
- package/build/separator/index.js +3 -0
- package/build/separator/index.js.map +1 -1
- package/build/site-logo/edit.js +1 -1
- package/build/site-logo/edit.js.map +1 -1
- package/build/spacer/constants.js +9 -0
- package/build/spacer/constants.js.map +1 -0
- package/build/spacer/controls.js +3 -3
- package/build/spacer/controls.js.map +1 -1
- package/build/spacer/controls.native.js +2 -2
- package/build/spacer/controls.native.js.map +1 -1
- package/build/spacer/edit.js +5 -6
- package/build/spacer/edit.js.map +1 -1
- package/build/table/edit.js +23 -4
- package/build/table/edit.js.map +1 -1
- package/build/table-of-contents/edit.js +138 -66
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/table-of-contents/index.js +13 -3
- package/build/table-of-contents/index.js.map +1 -1
- package/build/table-of-contents/list.js +16 -9
- package/build/table-of-contents/list.js.map +1 -1
- package/build/table-of-contents/save.js +40 -0
- package/build/table-of-contents/save.js.map +1 -0
- package/build/table-of-contents/utils.js +11 -77
- package/build/table-of-contents/utils.js.map +1 -1
- package/build/tag-cloud/edit.js +1 -1
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/index.js +7 -3
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/inner-blocks.js +3 -8
- package/build/template-part/edit/inner-blocks.js.map +1 -1
- package/build/video/edit.js +5 -9
- package/build/video/edit.js.map +1 -1
- package/build/video/edit.native.js +1 -1
- package/build/video/edit.native.js.map +1 -1
- package/build-module/archives/edit.js +1 -1
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/audio/edit.js +6 -18
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/audio/edit.native.js +1 -1
- package/build-module/audio/edit.native.js.map +1 -1
- package/build-module/block/edit.js +11 -10
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/edit.native.js +7 -3
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/button/index.js +1 -0
- package/build-module/button/index.js.map +1 -1
- package/build-module/categories/edit.js +9 -4
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/categories/index.js +5 -1
- package/build-module/categories/index.js.map +1 -1
- package/build-module/column/index.js +10 -0
- package/build-module/column/index.js.map +1 -1
- package/build-module/comment-author-avatar/index.js +1 -0
- package/build-module/comment-author-avatar/index.js.map +1 -1
- package/build-module/comment-template/edit.js +1 -3
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
- package/build-module/comments/edit/comments-inspector-controls.js.map +1 -0
- package/build-module/{comments-query-loop → comments}/edit.js +1 -1
- package/build-module/comments/edit.js.map +1 -0
- package/build-module/{comments-query-loop → comments}/index.js +1 -1
- package/build-module/comments/index.js.map +1 -0
- package/build-module/{comments-query-loop → comments}/save.js +1 -1
- package/build-module/comments/save.js.map +1 -0
- package/build-module/comments-title/index.js +1 -1
- package/build-module/comments-title/index.js.map +1 -1
- package/build-module/cover/controls.native.js +2 -3
- package/build-module/cover/controls.native.js.map +1 -1
- package/build-module/cover/edit/block-controls.js +104 -0
- package/build-module/cover/edit/block-controls.js.map +1 -0
- package/build-module/cover/edit/cover-placeholder.js +38 -0
- package/build-module/cover/edit/cover-placeholder.js.map +1 -0
- package/build-module/cover/edit/index.js +307 -0
- package/build-module/cover/edit/index.js.map +1 -0
- package/build-module/cover/edit/inspector-controls.js +215 -0
- package/build-module/cover/edit/inspector-controls.js.map +1 -0
- package/build-module/cover/edit/resizable-cover.js +55 -0
- package/build-module/cover/edit/resizable-cover.js.map +1 -0
- package/build-module/cover/edit/use-cover-is-dark.js +70 -0
- package/build-module/cover/edit/use-cover-is-dark.js.map +1 -0
- package/build-module/cover/edit.native.js +35 -17
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/focal-point-settings-button.native.js.map +1 -1
- package/build-module/cover/shared.js +7 -0
- package/build-module/cover/shared.js.map +1 -1
- package/build-module/cover/transforms.js +74 -6
- package/build-module/cover/transforms.js.map +1 -1
- package/build-module/cover/use-cover-is-dark.native.js +51 -0
- package/build-module/cover/use-cover-is-dark.native.js.map +1 -0
- package/build-module/embed/edit.js +13 -19
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +2 -8
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-preview.js +2 -2
- package/build-module/embed/embed-preview.js.map +1 -1
- package/build-module/embed/util.js +25 -3
- package/build-module/embed/util.js.map +1 -1
- package/build-module/file/edit.native.js +0 -1
- package/build-module/file/edit.native.js.map +1 -1
- package/build-module/file/inspector.js +2 -4
- package/build-module/file/inspector.js.map +1 -1
- package/build-module/gallery/edit.js +3 -2
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +2 -2
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/gallery/shared.js +2 -2
- package/build-module/gallery/shared.js.map +1 -1
- package/build-module/gallery/use-get-media.js +2 -1
- package/build-module/gallery/use-get-media.js.map +1 -1
- package/build-module/gallery/use-short-code-transform.js +19 -18
- package/build-module/gallery/use-short-code-transform.js.map +1 -1
- package/build-module/gallery/v1/edit.js +1 -1
- package/build-module/gallery/v1/edit.js.map +1 -1
- package/build-module/gallery/v1/gallery.js +2 -2
- package/build-module/gallery/v1/gallery.js.map +1 -1
- package/build-module/group/index.js +1 -0
- package/build-module/group/index.js.map +1 -1
- package/build-module/heading/edit.js +6 -2
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/index.js +1 -0
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/transforms.js +9 -4
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/html/edit.js +2 -2
- package/build-module/html/edit.js.map +1 -1
- package/build-module/image/edit.js +10 -9
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +1 -2
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +3 -3
- package/build-module/image/image.js.map +1 -1
- package/build-module/index.js +43 -11
- package/build-module/index.js.map +1 -1
- package/build-module/index.native.js +14 -3
- package/build-module/index.native.js.map +1 -1
- package/build-module/is-block-metadata-experimental.js +16 -0
- package/build-module/is-block-metadata-experimental.js.map +1 -0
- package/build-module/latest-comments/edit.js +1 -1
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-posts/edit.js +29 -5
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/latest-posts/edit.native.js +51 -2
- package/build-module/latest-posts/edit.native.js.map +1 -1
- package/build-module/list/transforms.js +6 -0
- package/build-module/list/transforms.js.map +1 -1
- package/build-module/list/v2/edit.js +2 -1
- package/build-module/list/v2/edit.js.map +1 -1
- package/build-module/list/v2/migrate.js +1 -3
- package/build-module/list/v2/migrate.js.map +1 -1
- package/build-module/list/v2/transforms.js +46 -9
- package/build-module/list/v2/transforms.js.map +1 -1
- package/build-module/list-item/edit.js +8 -9
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/hooks/index.js +3 -0
- package/build-module/list-item/hooks/index.js.map +1 -1
- package/build-module/list-item/hooks/use-backspace.js +44 -0
- package/build-module/list-item/hooks/use-backspace.js.map +1 -0
- package/build-module/list-item/hooks/use-enter.js +6 -9
- package/build-module/list-item/hooks/use-enter.js.map +1 -1
- package/build-module/list-item/hooks/use-indent-list-item.js +33 -38
- package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
- package/build-module/list-item/hooks/use-space.js +40 -0
- package/build-module/list-item/hooks/use-space.js.map +1 -0
- package/build-module/list-item/hooks/use-split.js +19 -0
- package/build-module/list-item/hooks/use-split.js.map +1 -0
- package/build-module/list-item/index.js +1 -0
- package/build-module/list-item/index.js.map +1 -1
- package/build-module/list-item/utils.js +1 -1
- package/build-module/list-item/utils.js.map +1 -1
- package/build-module/loginout/edit.js +1 -1
- package/build-module/loginout/edit.js.map +1 -1
- package/build-module/media-text/edit.js +1 -2
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/edit.native.js +3 -2
- package/build-module/media-text/edit.native.js.map +1 -1
- package/build-module/media-text/media-container.native.js +2 -4
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/media-text/transforms.js +137 -8
- package/build-module/media-text/transforms.js.map +1 -1
- package/build-module/navigation/edit/index.js +87 -82
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +2 -6
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +5 -4
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/index.js +1 -1
- package/build-module/navigation/use-navigation-entities.js +1 -1
- package/build-module/navigation/use-navigation-entities.js.map +1 -1
- package/build-module/navigation/view-modal.js +56 -0
- package/build-module/navigation/view-modal.js.map +1 -0
- package/build-module/navigation/view.js +1 -30
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +1 -1
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/fallback-variations.js +1 -1
- package/build-module/navigation-link/fallback-variations.js.map +1 -1
- package/build-module/navigation-link/hooks.js +2 -2
- package/build-module/navigation-link/hooks.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +1 -1
- package/build-module/page-list/convert-to-links-modal.js.map +1 -1
- package/build-module/page-list/edit.js +1 -1
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/paragraph/edit.js +9 -0
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/paragraph/edit.native.js +6 -2
- package/build-module/paragraph/edit.native.js.map +1 -1
- package/build-module/paragraph/use-enter.js +81 -0
- package/build-module/paragraph/use-enter.js.map +1 -0
- package/build-module/post-author/edit.js +2 -2
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-name/index.js +1 -0
- package/build-module/post-author-name/index.js.map +1 -1
- package/build-module/post-comment/index.js +2 -1
- package/build-module/post-comment/index.js.map +1 -1
- package/build-module/post-comments/edit.js +13 -35
- package/build-module/post-comments/edit.js.map +1 -1
- package/build-module/post-comments/index.js +1 -1
- package/build-module/post-comments-count/index.js +1 -0
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-comments-form/edit.js +38 -26
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-comments-form/form.js +39 -0
- package/build-module/post-comments-form/form.js.map +1 -0
- package/build-module/post-comments-link/index.js +1 -0
- package/build-module/post-comments-link/index.js.map +1 -1
- package/build-module/post-excerpt/edit.js +1 -1
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-featured-image/edit.js +1 -1
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-template/edit.js +7 -2
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +35 -6
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-terms/hooks.js +25 -0
- package/build-module/post-terms/hooks.js.map +1 -0
- package/build-module/post-terms/index.js +18 -8
- package/build-module/post-terms/index.js.map +1 -1
- package/build-module/post-title/index.js +1 -1
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/pullquote/edit.js +2 -2
- package/build-module/pullquote/edit.js.map +1 -1
- package/build-module/pullquote/edit.native.js +2 -2
- package/build-module/pullquote/edit.native.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +24 -17
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/parent-control.js +135 -0
- package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -0
- package/build-module/query/edit/inspector-controls/sticky-control.js +31 -0
- package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -0
- package/build-module/query/index.js +2 -1
- package/build-module/query/index.js.map +1 -1
- package/build-module/query/utils.js +21 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query-title/index.js +1 -1
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/query-title/variations.js +2 -2
- package/build-module/query-title/variations.js.map +1 -1
- package/build-module/quote/edit.js +4 -3
- package/build-module/quote/edit.js.map +1 -1
- package/build-module/quote/index.js +2 -1
- package/build-module/quote/index.js.map +1 -1
- package/build-module/quote/v2/edit.js +12 -5
- package/build-module/quote/v2/edit.js.map +1 -1
- package/build-module/rss/edit.js +1 -1
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/search/edit.js +12 -9
- package/build-module/search/edit.js.map +1 -1
- package/build-module/separator/index.js +3 -0
- package/build-module/separator/index.js.map +1 -1
- package/build-module/site-logo/edit.js +1 -1
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/spacer/constants.js +2 -0
- package/build-module/spacer/constants.js.map +1 -0
- package/build-module/spacer/controls.js +2 -2
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/spacer/controls.native.js +1 -1
- package/build-module/spacer/controls.native.js.map +1 -1
- package/build-module/spacer/edit.js +1 -1
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/table/edit.js +26 -7
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table-of-contents/edit.js +136 -68
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/table-of-contents/index.js +12 -3
- package/build-module/table-of-contents/index.js.map +1 -1
- package/build-module/table-of-contents/list.js +18 -10
- package/build-module/table-of-contents/list.js.map +1 -1
- package/build-module/table-of-contents/save.js +28 -0
- package/build-module/table-of-contents/save.js.map +1 -0
- package/build-module/table-of-contents/utils.js +11 -73
- package/build-module/table-of-contents/utils.js.map +1 -1
- package/build-module/tag-cloud/edit.js +1 -1
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/template-part/edit/index.js +8 -4
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/inner-blocks.js +4 -9
- package/build-module/template-part/edit/inner-blocks.js.map +1 -1
- package/build-module/video/edit.js +6 -10
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/edit.native.js +1 -1
- package/build-module/video/edit.native.js.map +1 -1
- package/build-style/{comments-query-loop → comments}/editor-rtl.css +0 -0
- package/build-style/{comments-query-loop → comments}/editor.css +0 -0
- package/build-style/common-rtl.css +32 -0
- package/build-style/common.css +32 -0
- package/build-style/cover/style-rtl.css +0 -4
- package/build-style/cover/style.css +0 -4
- package/build-style/editor-rtl.css +16 -10
- package/build-style/editor.css +16 -10
- package/build-style/image/editor-rtl.css +1 -1
- package/build-style/image/editor.css +1 -1
- package/build-style/navigation/style-rtl.css +3 -0
- package/build-style/navigation/style.css +3 -0
- package/build-style/separator/editor-rtl.css +1 -0
- package/build-style/separator/editor.css +1 -0
- package/build-style/style-rtl.css +73 -4
- package/build-style/style.css +73 -4
- package/build-style/table/editor-rtl.css +8 -0
- package/build-style/table/editor.css +8 -0
- package/build-style/table/style-rtl.css +38 -0
- package/build-style/table/style.css +38 -0
- package/build-style/video/editor-rtl.css +2 -5
- package/build-style/video/editor.css +2 -5
- package/build-types/table-of-contents/list.d.ts +12 -0
- package/build-types/table-of-contents/list.d.ts.map +1 -0
- package/build-types/table-of-contents/utils.d.ts +24 -0
- package/build-types/table-of-contents/utils.d.ts.map +1 -0
- package/package.json +30 -29
- package/src/archives/edit.js +1 -1
- package/src/audio/edit.js +7 -10
- package/src/audio/edit.native.js +1 -1
- package/src/avatar/block.json +0 -1
- package/src/avatar/index.php +2 -2
- package/src/block/edit.js +39 -42
- package/src/block/test/edit.native.js +1 -1
- package/src/button/block.json +1 -0
- package/src/button/edit.native.js +6 -3
- package/src/categories/block.json +5 -1
- package/src/categories/edit.js +9 -3
- package/src/categories/index.php +1 -0
- package/src/column/block.json +10 -0
- package/src/comment-author-avatar/block.json +1 -0
- package/src/comment-template/edit.js +1 -5
- package/src/{comments-query-loop → comments}/block.json +1 -1
- package/src/{comments-query-loop → comments}/edit/comments-inspector-controls.js +0 -0
- package/src/{comments-query-loop → comments}/edit.js +1 -1
- package/src/{comments-query-loop → comments}/editor.scss +0 -0
- package/src/{comments-query-loop → comments}/index.js +0 -0
- package/src/{comments-query-loop → comments}/save.js +1 -3
- package/src/comments-title/index.js +1 -1
- package/src/common.scss +24 -1
- package/src/cover/controls.native.js +1 -2
- package/src/cover/edit/block-controls.js +119 -0
- package/src/cover/edit/cover-placeholder.js +39 -0
- package/src/cover/edit/index.js +381 -0
- package/src/cover/edit/inspector-controls.js +286 -0
- package/src/cover/edit/resizable-cover.js +55 -0
- package/src/cover/edit/use-cover-is-dark.js +71 -0
- package/src/cover/edit.native.js +40 -14
- package/src/cover/editor.scss +1 -1
- package/src/cover/focal-point-settings-button.native.js +1 -1
- package/src/cover/shared.js +4 -0
- package/src/cover/style.native.scss +4 -0
- package/src/cover/style.scss +0 -4
- package/src/cover/test/__snapshots__/edit.native.js.snap +6 -6
- package/src/cover/test/block-controls.js +62 -0
- package/src/cover/test/transforms.js +301 -0
- package/src/cover/transforms.js +112 -7
- package/src/cover/use-cover-is-dark.native.js +51 -0
- package/src/editor.scss +1 -1
- package/src/embed/edit.js +19 -24
- package/src/embed/edit.native.js +9 -14
- package/src/embed/embed-preview.js +4 -2
- package/src/embed/util.js +34 -2
- package/src/file/edit.native.js +0 -1
- package/src/file/inspector.js +1 -3
- package/src/gallery/edit.js +3 -2
- package/src/gallery/gallery.js +2 -2
- package/src/gallery/shared.js +3 -2
- package/src/gallery/use-get-media.js +2 -1
- package/src/gallery/use-short-code-transform.js +19 -16
- package/src/gallery/v1/edit.js +1 -1
- package/src/gallery/v1/gallery.js +2 -2
- package/src/group/block.json +1 -0
- package/src/heading/block.json +1 -0
- package/src/heading/edit.js +5 -2
- package/src/heading/transforms.js +4 -3
- package/src/html/edit.js +2 -2
- package/src/image/edit.js +11 -5
- package/src/image/edit.native.js +1 -2
- package/src/image/editor.scss +1 -1
- package/src/image/image.js +9 -3
- package/src/image/test/edit.native.js +7 -7
- package/src/index.js +52 -30
- package/src/index.native.js +12 -2
- package/src/is-block-metadata-experimental.js +19 -0
- package/src/latest-comments/edit.js +1 -1
- package/src/latest-posts/edit.js +27 -2
- package/src/latest-posts/edit.native.js +56 -1
- package/src/list/transforms.js +7 -0
- package/src/list/v2/edit.js +1 -0
- package/src/list/v2/migrate.js +1 -1
- package/src/list/v2/transforms.js +35 -0
- package/src/list-item/block.json +2 -1
- package/src/list-item/edit.js +17 -10
- package/src/list-item/hooks/index.js +3 -0
- package/src/list-item/hooks/use-backspace.js +52 -0
- package/src/list-item/hooks/use-enter.js +9 -16
- package/src/list-item/hooks/use-indent-list-item.js +50 -63
- package/src/list-item/hooks/use-space.js +48 -0
- package/src/list-item/hooks/use-split.js +24 -0
- package/src/list-item/utils.js +1 -1
- package/src/loginout/edit.js +1 -1
- package/src/media-text/edit.js +1 -2
- package/src/media-text/edit.native.js +4 -2
- package/src/media-text/media-container.native.js +2 -4
- package/src/media-text/transforms.js +154 -0
- package/src/navigation/block.json +1 -1
- package/src/navigation/edit/index.js +175 -169
- package/src/navigation/edit/inner-blocks.js +1 -8
- package/src/navigation/edit/unsaved-inner-blocks.js +5 -4
- package/src/navigation/index.php +5 -0
- package/src/navigation/style.scss +3 -0
- package/src/navigation/use-navigation-entities.js +1 -1
- package/src/navigation/view-modal.js +68 -0
- package/src/navigation/view.js +0 -35
- package/src/navigation-link/edit.js +1 -1
- package/src/navigation-link/fallback-variations.js +1 -1
- package/src/navigation-link/hooks.js +2 -2
- package/src/navigation-link/test/__snapshots__/hooks.js.snap +4 -4
- package/src/page-list/convert-to-links-modal.js +1 -1
- package/src/page-list/edit.js +1 -4
- package/src/paragraph/edit.js +6 -0
- package/src/paragraph/edit.native.js +13 -1
- package/src/paragraph/use-enter.js +103 -0
- package/src/post-author/edit.js +25 -23
- package/src/post-author-name/block.json +1 -0
- package/src/post-comment/block.json +2 -1
- package/src/post-comments/block.json +1 -1
- package/src/post-comments/edit.js +13 -43
- package/src/post-comments/index.php +2 -0
- package/src/post-comments-count/block.json +1 -0
- package/src/post-comments-form/edit.js +50 -58
- package/src/post-comments-form/form.js +40 -0
- package/src/post-comments-link/block.json +1 -0
- package/src/post-excerpt/edit.js +1 -1
- package/src/post-featured-image/edit.js +1 -1
- package/src/post-template/edit.js +5 -0
- package/src/post-terms/block.json +8 -0
- package/src/post-terms/edit.js +47 -1
- package/src/post-terms/hooks.js +27 -0
- package/src/post-terms/index.js +14 -7
- package/src/post-terms/index.php +50 -2
- package/src/post-title/index.js +1 -1
- package/src/pullquote/edit.js +2 -2
- package/src/pullquote/edit.native.js +2 -2
- package/src/query/block.json +2 -1
- package/src/query/edit/inspector-controls/index.js +25 -11
- package/src/query/edit/inspector-controls/parent-control.js +133 -0
- package/src/query/edit/inspector-controls/sticky-control.js +25 -0
- package/src/query/utils.js +22 -0
- package/src/query-title/index.js +1 -1
- package/src/query-title/variations.js +2 -2
- package/src/quote/block.json +1 -0
- package/src/quote/edit.js +5 -2
- package/src/quote/index.js +1 -1
- package/src/quote/v2/edit.js +7 -2
- package/src/rss/edit.js +1 -1
- package/src/search/edit.js +14 -7
- package/src/search/index.php +85 -34
- package/src/separator/block.json +3 -0
- package/src/separator/editor.scss +1 -0
- package/src/site-logo/edit.js +1 -1
- package/src/spacer/constants.js +1 -0
- package/src/spacer/controls.js +2 -2
- package/src/spacer/controls.native.js +1 -1
- package/src/spacer/edit.js +1 -2
- package/src/table/edit.js +30 -6
- package/src/table/editor.scss +13 -0
- package/src/table/style.scss +52 -0
- package/src/table-of-contents/block.json +9 -2
- package/src/table-of-contents/edit.js +155 -75
- package/src/table-of-contents/index.js +2 -0
- package/src/table-of-contents/list.tsx +46 -0
- package/src/table-of-contents/save.js +25 -0
- package/src/table-of-contents/utils.ts +71 -0
- package/src/tag-cloud/block.json +1 -1
- package/src/tag-cloud/edit.js +1 -1
- package/src/template-part/edit/index.js +25 -15
- package/src/template-part/edit/inner-blocks.js +2 -10
- package/src/video/edit.js +8 -7
- package/src/video/edit.native.js +1 -1
- package/src/video/editor.scss +3 -6
- package/test/babel-plugin.js +67 -0
- package/tsconfig.json +11 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/build/comments-query-loop/edit/comments-inspector-controls.js.map +0 -1
- package/build/comments-query-loop/edit.js.map +0 -1
- package/build/comments-query-loop/index.js.map +0 -1
- package/build/comments-query-loop/save.js.map +0 -1
- package/build/cover/edit.js +0 -668
- package/build/cover/edit.js.map +0 -1
- package/build/post-terms/variations.js +0 -37
- package/build/post-terms/variations.js.map +0 -1
- package/build-module/comments-query-loop/edit.js.map +0 -1
- package/build-module/comments-query-loop/index.js.map +0 -1
- package/build-module/comments-query-loop/save.js.map +0 -1
- package/build-module/cover/edit.js +0 -645
- package/build-module/cover/edit.js.map +0 -1
- package/build-module/post-terms/variations.js +0 -27
- package/build-module/post-terms/variations.js.map +0 -1
- package/src/cover/edit.js +0 -827
- package/src/post-terms/variations.js +0 -28
- package/src/table-of-contents/index.php +0 -346
- package/src/table-of-contents/list.js +0 -28
- package/src/table-of-contents/utils.js +0 -126
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/cover/controls.native.js"],"names":["Controls","attributes","didUploadFail","hasOnlyColorBackground","isUploadInProgress","onClearMedia","onSelectMedia","setAttributes","backgroundType","dimRatio","hasParallax","focalPoint","minHeight","minHeightUnit","url","CONTAINER_HEIGHT","COVER_DEFAULT_HEIGHT","onHeightChange","value","units","availableUnits","defaultValues","px","em","rem","vw","vh","onOpacityChange","onChangeUnit","nextUnit","Math","max","COVER_MIN_HEIGHT","displayPlaceholder","setDisplayPlaceholder","setFocalPoint","toggleParallax","undefined","IMAGE_DEFAULT_FOCAL_POINT","addMediaButtonStyle","styles","addMediaButton","addMediaButtonDark","focalPointPosition","x","y","left","top","videoNaturalSize","setVideoNaturalSize","videoRef","mediaBackground","mediaBackgroundDark","imagePreviewStyles","imagePlaceholder","videoPreviewStyles","aspectRatio","width","height","opacity","video","focalPointHint","plus","renderMediaSection","open","openMediaOptions","getMediaOptions","mediaPreview","mediaInner","IMAGE_BACKGROUND_TYPE","destructiveButton","id","label","onPress","separated","image","VIDEO_BACKGROUND_TYPE","event","naturalSize","current","seek","uri","clearMediaButton","ALLOWED_MEDIA_TYPES","overlayColor","customOverlayColor","gradient","customGradient","rangeCellContainer","COVER_MAX_HEIGHT"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\nimport Video from 'react-native-video';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tImage,\n\tIcon,\n\tIMAGE_DEFAULT_FOCAL_POINT,\n\tPanelBody,\n\tRangeControl,\n\tUnitControl,\n\tTextControl,\n\tBottomSheet,\n\tToggleControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport { plus } from '@wordpress/icons';\nimport { useState, useCallback, useRef } from '@wordpress/element';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { useSetting, MediaUpload } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport OverlayColorSettings from './overlay-color-settings';\nimport FocalPointSettingsButton from './focal-point-settings-button';\nimport {\n\tALLOWED_MEDIA_TYPES,\n\tCOVER_MIN_HEIGHT,\n\tCOVER_MAX_HEIGHT,\n\tCOVER_DEFAULT_HEIGHT,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n} from './shared';\n\nfunction Controls( {\n\tattributes,\n\tdidUploadFail,\n\thasOnlyColorBackground,\n\tisUploadInProgress,\n\tonClearMedia,\n\tonSelectMedia,\n\tsetAttributes,\n} ) {\n\tconst {\n\t\tbackgroundType,\n\t\tdimRatio,\n\t\thasParallax,\n\t\tfocalPoint,\n\t\tminHeight,\n\t\tminHeightUnit = 'px',\n\t\turl,\n\t} = attributes;\n\tconst CONTAINER_HEIGHT = minHeight || COVER_DEFAULT_HEIGHT;\n\tconst onHeightChange = useCallback(\n\t\t( value ) => {\n\t\t\tif ( minHeight || value !== COVER_DEFAULT_HEIGHT ) {\n\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t}\n\t\t},\n\t\t[ minHeight ]\n\t);\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t\t'vh',\n\t\t],\n\t\tdefaultValues: { px: 430, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst onOpacityChange = useCallback( ( value ) => {\n\t\tsetAttributes( { dimRatio: value } );\n\t}, [] );\n\n\tconst onChangeUnit = useCallback( ( nextUnit ) => {\n\t\tsetAttributes( {\n\t\t\tminHeightUnit: nextUnit,\n\t\t\tminHeight:\n\t\t\t\tnextUnit === 'px'\n\t\t\t\t\t? Math.max( CONTAINER_HEIGHT, COVER_MIN_HEIGHT )\n\t\t\t\t\t: CONTAINER_HEIGHT,\n\t\t} );\n\t}, [] );\n\n\tconst [ displayPlaceholder, setDisplayPlaceholder ] = useState( true );\n\n\tfunction setFocalPoint( value ) {\n\t\tsetAttributes( { focalPoint: value } );\n\t}\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax\n\t\t\t\t? { focalPoint: undefined }\n\t\t\t\t: { focalPoint: IMAGE_DEFAULT_FOCAL_POINT } ),\n\t\t} );\n\t};\n\n\tconst addMediaButtonStyle = usePreferredColorSchemeStyle(\n\t\tstyles.addMediaButton,\n\t\tstyles.addMediaButtonDark\n\t);\n\n\tfunction focalPointPosition( { x, y } = IMAGE_DEFAULT_FOCAL_POINT ) {\n\t\treturn {\n\t\t\tleft: `${ ( hasParallax ? 0.5 : x ) * 100 }%`,\n\t\t\ttop: `${ ( hasParallax ? 0.5 : y ) * 100 }%`,\n\t\t};\n\t}\n\n\tconst [ videoNaturalSize, setVideoNaturalSize ] = useState( null );\n\tconst videoRef = useRef( null );\n\n\tconst mediaBackground = usePreferredColorSchemeStyle(\n\t\tstyles.mediaBackground,\n\t\tstyles.mediaBackgroundDark\n\t);\n\tconst imagePreviewStyles = [\n\t\tdisplayPlaceholder && styles.imagePlaceholder,\n\t];\n\tconst videoPreviewStyles = [\n\t\t{\n\t\t\taspectRatio:\n\t\t\t\tvideoNaturalSize &&\n\t\t\t\tvideoNaturalSize.width / videoNaturalSize.height,\n\t\t\t// Hide Video component since it has black background while loading the source\n\t\t\topacity: displayPlaceholder ? 0 : 1,\n\t\t},\n\t\tstyles.video,\n\t\tdisplayPlaceholder && styles.imagePlaceholder,\n\t];\n\n\tconst focalPointHint = ! hasParallax && ! displayPlaceholder && (\n\t\t<Icon\n\t\t\ticon={ plus }\n\t\t\tsize={ styles.focalPointHint?.width }\n\t\t\tstyle={ [\n\t\t\t\tstyles.focalPointHint,\n\t\t\t\tfocalPointPosition( focalPoint ),\n\t\t\t] }\n\t\t/>\n\t);\n\n\tconst renderMediaSection = ( {\n\t\topen: openMediaOptions,\n\t\tgetMediaOptions,\n\t} ) => (\n\t\t<>\n\t\t\t{ getMediaOptions() }\n\t\t\t{ url ? (\n\t\t\t\t<>\n\t\t\t\t\t<BottomSheet.Cell\n\t\t\t\t\t\taccessible={ false }\n\t\t\t\t\t\tcellContainerStyle={ [\n\t\t\t\t\t\t\tstyles.mediaPreview,\n\t\t\t\t\t\t\tmediaBackground,\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tonLongPress={ openMediaOptions }\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={ styles.mediaInner }>\n\t\t\t\t\t\t\t{ IMAGE_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\t\t\teditButton={ ! displayPlaceholder }\n\t\t\t\t\t\t\t\t\thighlightSelected={ false }\n\t\t\t\t\t\t\t\t\tisSelected={ ! displayPlaceholder }\n\t\t\t\t\t\t\t\t\tisUploadFailed={ didUploadFail }\n\t\t\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\t\t\tmediaPickerOptions={ [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tdestructiveButton: true,\n\t\t\t\t\t\t\t\t\t\t\tid: 'clearMedia',\n\t\t\t\t\t\t\t\t\t\t\tlabel: __( 'Clear Media' ),\n\t\t\t\t\t\t\t\t\t\t\tonPress: onClearMedia,\n\t\t\t\t\t\t\t\t\t\t\tseparated: true,\n\t\t\t\t\t\t\t\t\t\t\tvalue: 'clearMedia',\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\tonImageDataLoad={ () => {\n\t\t\t\t\t\t\t\t\t\tsetDisplayPlaceholder( false );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tonSelectMediaUploadOption={ onSelectMedia }\n\t\t\t\t\t\t\t\t\topenMediaOptions={ openMediaOptions }\n\t\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\t\theight=\"100%\"\n\t\t\t\t\t\t\t\t\tstyle={ imagePreviewStyles }\n\t\t\t\t\t\t\t\t\twidth={ styles.image?.width }\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{ VIDEO_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t\t\t\t<Video\n\t\t\t\t\t\t\t\t\tmuted\n\t\t\t\t\t\t\t\t\tpaused\n\t\t\t\t\t\t\t\t\tdisableFocus\n\t\t\t\t\t\t\t\t\tonLoadStart={ () => {\n\t\t\t\t\t\t\t\t\t\tsetDisplayPlaceholder( true );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\theight,\n\t\t\t\t\t\t\t\t\t\t\twidth,\n\t\t\t\t\t\t\t\t\t\t} = event.naturalSize;\n\t\t\t\t\t\t\t\t\t\tsetVideoNaturalSize( {\n\t\t\t\t\t\t\t\t\t\t\theight,\n\t\t\t\t\t\t\t\t\t\t\twidth,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\tsetDisplayPlaceholder( false );\n\t\t\t\t\t\t\t\t\t\t// Avoid invisible, paused video on Android, presumably\n\t\t\t\t\t\t\t\t\t\t// related to https://git.io/Jt6Dr\n\t\t\t\t\t\t\t\t\t\tvideoRef?.current.seek( 0 );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tref={ videoRef }\n\t\t\t\t\t\t\t\t\tresizeMode={ 'cover' }\n\t\t\t\t\t\t\t\t\tsource={ { uri: url } }\n\t\t\t\t\t\t\t\t\tstyle={ videoPreviewStyles }\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{ displayPlaceholder ? null : focalPointHint }\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</BottomSheet.Cell>\n\t\t\t\t\t<FocalPointSettingsButton\n\t\t\t\t\t\tdisabled={ hasParallax }\n\t\t\t\t\t\tfocalPoint={ focalPoint || IMAGE_DEFAULT_FOCAL_POINT }\n\t\t\t\t\t\tonFocalPointChange={ setFocalPoint }\n\t\t\t\t\t\turl={ url }\n\t\t\t\t\t/>\n\t\t\t\t\t{ IMAGE_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tleftAlign\n\t\t\t\t\t\tlabel={ __( 'Clear Media' ) }\n\t\t\t\t\t\tlabelStyle={ styles.clearMediaButton }\n\t\t\t\t\t\tonPress={ onClearMedia }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) : (\n\t\t\t\t<TextControl\n\t\t\t\t\taccessibilityLabel={ __( 'Add image or video' ) }\n\t\t\t\t\tlabel={ __( 'Add image or video' ) }\n\t\t\t\t\tlabelStyle={ addMediaButtonStyle }\n\t\t\t\t\tleftAlign\n\t\t\t\t\tonPress={ openMediaOptions }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<PanelBody title={ __( 'Media' ) }>\n\t\t\t\t<MediaUpload\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tisReplacingMedia={ ! hasOnlyColorBackground }\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\trender={ renderMediaSection }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<OverlayColorSettings\n\t\t\t\toverlayColor={ attributes.overlayColor }\n\t\t\t\tcustomOverlayColor={ attributes.customOverlayColor }\n\t\t\t\tgradient={ attributes.gradient }\n\t\t\t\tcustomGradient={ attributes.customGradient }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t/>\n\n\t\t\t{ url ? (\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Opacity' ) }\n\t\t\t\t\t\tminimumValue={ 0 }\n\t\t\t\t\t\tmaximumValue={ 100 }\n\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\tonChange={ onOpacityChange }\n\t\t\t\t\t\tstyle={ styles.rangeCellContainer }\n\t\t\t\t\t\tseparatorType={ 'topFullWidth' }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t) : null }\n\n\t\t\t<PanelBody title={ __( 'Dimensions' ) }>\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tmin={ minHeightUnit === 'px' ? COVER_MIN_HEIGHT : 1 }\n\t\t\t\t\tmax={ COVER_MAX_HEIGHT }\n\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\tvalue={ CONTAINER_HEIGHT }\n\t\t\t\t\tonChange={ onHeightChange }\n\t\t\t\t\tonUnitChange={ onChangeUnit }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tstyle={ styles.rangeCellContainer }\n\t\t\t\t\tkey={ minHeightUnit }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</>\n\t);\n}\n\nexport default Controls;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/cover/controls.native.js"],"names":["Controls","attributes","didUploadFail","hasOnlyColorBackground","isUploadInProgress","onClearMedia","onSelectMedia","setAttributes","backgroundType","dimRatio","hasParallax","focalPoint","minHeight","minHeightUnit","url","CONTAINER_HEIGHT","COVER_DEFAULT_HEIGHT","onHeightChange","value","units","availableUnits","defaultValues","px","em","rem","vw","vh","onOpacityChange","onChangeUnit","nextUnit","Math","max","COVER_MIN_HEIGHT","displayPlaceholder","setDisplayPlaceholder","setFocalPoint","toggleParallax","undefined","IMAGE_DEFAULT_FOCAL_POINT","addMediaButtonStyle","styles","addMediaButton","addMediaButtonDark","focalPointPosition","x","y","left","top","videoNaturalSize","setVideoNaturalSize","videoRef","mediaBackground","mediaBackgroundDark","imagePreviewStyles","imagePlaceholder","videoPreviewStyles","aspectRatio","width","height","opacity","video","focalPointHint","plus","renderMediaSection","open","openMediaOptions","getMediaOptions","mediaPreview","mediaInner","IMAGE_BACKGROUND_TYPE","destructiveButton","id","label","onPress","separated","image","VIDEO_BACKGROUND_TYPE","event","naturalSize","current","seek","uri","clearMediaButton","ALLOWED_MEDIA_TYPES","overlayColor","customOverlayColor","gradient","customGradient","rangeCellContainer","COVER_MAX_HEIGHT"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View } from 'react-native';\nimport Video from 'react-native-video';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tImage,\n\tIcon,\n\tIMAGE_DEFAULT_FOCAL_POINT,\n\tPanelBody,\n\tRangeControl,\n\tUnitControl,\n\tTextControl,\n\tBottomSheet,\n\tToggleControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport { plus } from '@wordpress/icons';\nimport { useState, useCallback, useRef } from '@wordpress/element';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { useSetting, MediaUpload } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport OverlayColorSettings from './overlay-color-settings';\nimport FocalPointSettingsButton from './focal-point-settings-button';\nimport {\n\tALLOWED_MEDIA_TYPES,\n\tCOVER_MIN_HEIGHT,\n\tCOVER_MAX_HEIGHT,\n\tCOVER_DEFAULT_HEIGHT,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n} from './shared';\n\nfunction Controls( {\n\tattributes,\n\tdidUploadFail,\n\thasOnlyColorBackground,\n\tisUploadInProgress,\n\tonClearMedia,\n\tonSelectMedia,\n\tsetAttributes,\n} ) {\n\tconst {\n\t\tbackgroundType,\n\t\tdimRatio,\n\t\thasParallax,\n\t\tfocalPoint,\n\t\tminHeight,\n\t\tminHeightUnit = 'px',\n\t\turl,\n\t} = attributes;\n\tconst CONTAINER_HEIGHT = minHeight || COVER_DEFAULT_HEIGHT;\n\tconst onHeightChange = useCallback(\n\t\t( value ) => {\n\t\t\tif ( minHeight || value !== COVER_DEFAULT_HEIGHT ) {\n\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t}\n\t\t},\n\t\t[ minHeight ]\n\t);\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t\t'vh',\n\t\t],\n\t\tdefaultValues: { px: 430, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst onOpacityChange = useCallback( ( value ) => {\n\t\tsetAttributes( { dimRatio: value } );\n\t}, [] );\n\n\tconst onChangeUnit = useCallback( ( nextUnit ) => {\n\t\tsetAttributes( {\n\t\t\tminHeightUnit: nextUnit,\n\t\t\tminHeight:\n\t\t\t\tnextUnit === 'px'\n\t\t\t\t\t? Math.max( CONTAINER_HEIGHT, COVER_MIN_HEIGHT )\n\t\t\t\t\t: CONTAINER_HEIGHT,\n\t\t} );\n\t}, [] );\n\n\tconst [ displayPlaceholder, setDisplayPlaceholder ] = useState( true );\n\n\tfunction setFocalPoint( value ) {\n\t\tsetAttributes( { focalPoint: value } );\n\t}\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax\n\t\t\t\t? { focalPoint: undefined }\n\t\t\t\t: { focalPoint: IMAGE_DEFAULT_FOCAL_POINT } ),\n\t\t} );\n\t};\n\n\tconst addMediaButtonStyle = usePreferredColorSchemeStyle(\n\t\tstyles.addMediaButton,\n\t\tstyles.addMediaButtonDark\n\t);\n\n\tfunction focalPointPosition( { x, y } = IMAGE_DEFAULT_FOCAL_POINT ) {\n\t\treturn {\n\t\t\tleft: `${ ( hasParallax ? 0.5 : x ) * 100 }%`,\n\t\t\ttop: `${ ( hasParallax ? 0.5 : y ) * 100 }%`,\n\t\t};\n\t}\n\n\tconst [ videoNaturalSize, setVideoNaturalSize ] = useState( null );\n\tconst videoRef = useRef( null );\n\n\tconst mediaBackground = usePreferredColorSchemeStyle(\n\t\tstyles.mediaBackground,\n\t\tstyles.mediaBackgroundDark\n\t);\n\tconst imagePreviewStyles = [\n\t\tdisplayPlaceholder && styles.imagePlaceholder,\n\t];\n\tconst videoPreviewStyles = [\n\t\t{\n\t\t\taspectRatio:\n\t\t\t\tvideoNaturalSize &&\n\t\t\t\tvideoNaturalSize.width / videoNaturalSize.height,\n\t\t\t// Hide Video component since it has black background while loading the source\n\t\t\topacity: displayPlaceholder ? 0 : 1,\n\t\t},\n\t\tstyles.video,\n\t\tdisplayPlaceholder && styles.imagePlaceholder,\n\t];\n\n\tconst focalPointHint = ! hasParallax && ! displayPlaceholder && (\n\t\t<Icon\n\t\t\ticon={ plus }\n\t\t\tsize={ styles.focalPointHint?.width }\n\t\t\tstyle={ [\n\t\t\t\tstyles.focalPointHint,\n\t\t\t\tfocalPointPosition( focalPoint ),\n\t\t\t] }\n\t\t/>\n\t);\n\n\tconst renderMediaSection = ( {\n\t\topen: openMediaOptions,\n\t\tgetMediaOptions,\n\t} ) => (\n\t\t<>\n\t\t\t{ getMediaOptions() }\n\t\t\t{ url ? (\n\t\t\t\t<>\n\t\t\t\t\t<BottomSheet.Cell\n\t\t\t\t\t\taccessible={ false }\n\t\t\t\t\t\tcellContainerStyle={ [\n\t\t\t\t\t\t\tstyles.mediaPreview,\n\t\t\t\t\t\t\tmediaBackground,\n\t\t\t\t\t\t] }\n\t\t\t\t\t>\n\t\t\t\t\t\t<View style={ styles.mediaInner }>\n\t\t\t\t\t\t\t{ IMAGE_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\t\t\teditButton={ ! displayPlaceholder }\n\t\t\t\t\t\t\t\t\thighlightSelected={ false }\n\t\t\t\t\t\t\t\t\tisSelected={ ! displayPlaceholder }\n\t\t\t\t\t\t\t\t\tisUploadFailed={ didUploadFail }\n\t\t\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\t\t\tmediaPickerOptions={ [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tdestructiveButton: true,\n\t\t\t\t\t\t\t\t\t\t\tid: 'clearMedia',\n\t\t\t\t\t\t\t\t\t\t\tlabel: __( 'Clear Media' ),\n\t\t\t\t\t\t\t\t\t\t\tonPress: onClearMedia,\n\t\t\t\t\t\t\t\t\t\t\tseparated: true,\n\t\t\t\t\t\t\t\t\t\t\tvalue: 'clearMedia',\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\tonImageDataLoad={ () => {\n\t\t\t\t\t\t\t\t\t\tsetDisplayPlaceholder( false );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tonSelectMediaUploadOption={ onSelectMedia }\n\t\t\t\t\t\t\t\t\topenMediaOptions={ openMediaOptions }\n\t\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\t\theight=\"100%\"\n\t\t\t\t\t\t\t\t\tstyle={ imagePreviewStyles }\n\t\t\t\t\t\t\t\t\twidth={ styles.image?.width }\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{ VIDEO_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t\t\t\t<Video\n\t\t\t\t\t\t\t\t\tmuted\n\t\t\t\t\t\t\t\t\tpaused\n\t\t\t\t\t\t\t\t\tdisableFocus\n\t\t\t\t\t\t\t\t\tonLoadStart={ () => {\n\t\t\t\t\t\t\t\t\t\tsetDisplayPlaceholder( true );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\tconst {\n\t\t\t\t\t\t\t\t\t\t\theight,\n\t\t\t\t\t\t\t\t\t\t\twidth,\n\t\t\t\t\t\t\t\t\t\t} = event.naturalSize;\n\t\t\t\t\t\t\t\t\t\tsetVideoNaturalSize( {\n\t\t\t\t\t\t\t\t\t\t\theight,\n\t\t\t\t\t\t\t\t\t\t\twidth,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t\tsetDisplayPlaceholder( false );\n\t\t\t\t\t\t\t\t\t\t// Avoid invisible, paused video on Android, presumably\n\t\t\t\t\t\t\t\t\t\t// related to https://github.com/react-native-video/react-native-video/issues/1979\n\t\t\t\t\t\t\t\t\t\tvideoRef?.current.seek( 0 );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tref={ videoRef }\n\t\t\t\t\t\t\t\t\tresizeMode={ 'cover' }\n\t\t\t\t\t\t\t\t\tsource={ { uri: url } }\n\t\t\t\t\t\t\t\t\tstyle={ videoPreviewStyles }\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{ displayPlaceholder ? null : focalPointHint }\n\t\t\t\t\t\t</View>\n\t\t\t\t\t</BottomSheet.Cell>\n\t\t\t\t\t<FocalPointSettingsButton\n\t\t\t\t\t\tdisabled={ hasParallax }\n\t\t\t\t\t\tfocalPoint={ focalPoint || IMAGE_DEFAULT_FOCAL_POINT }\n\t\t\t\t\t\tonFocalPointChange={ setFocalPoint }\n\t\t\t\t\t\turl={ url }\n\t\t\t\t\t/>\n\t\t\t\t\t{ IMAGE_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tleftAlign\n\t\t\t\t\t\tlabel={ __( 'Clear Media' ) }\n\t\t\t\t\t\tlabelStyle={ styles.clearMediaButton }\n\t\t\t\t\t\tonPress={ onClearMedia }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) : (\n\t\t\t\t<TextControl\n\t\t\t\t\taccessibilityLabel={ __( 'Add image or video' ) }\n\t\t\t\t\tlabel={ __( 'Add image or video' ) }\n\t\t\t\t\tlabelStyle={ addMediaButtonStyle }\n\t\t\t\t\tleftAlign\n\t\t\t\t\tonPress={ openMediaOptions }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<PanelBody title={ __( 'Media' ) }>\n\t\t\t\t<MediaUpload\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tisReplacingMedia={ ! hasOnlyColorBackground }\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\trender={ renderMediaSection }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<OverlayColorSettings\n\t\t\t\toverlayColor={ attributes.overlayColor }\n\t\t\t\tcustomOverlayColor={ attributes.customOverlayColor }\n\t\t\t\tgradient={ attributes.gradient }\n\t\t\t\tcustomGradient={ attributes.customGradient }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t/>\n\n\t\t\t{ url ? (\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Opacity' ) }\n\t\t\t\t\t\tminimumValue={ 0 }\n\t\t\t\t\t\tmaximumValue={ 100 }\n\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\tonChange={ onOpacityChange }\n\t\t\t\t\t\tstyle={ styles.rangeCellContainer }\n\t\t\t\t\t\tseparatorType={ 'topFullWidth' }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t) : null }\n\n\t\t\t<PanelBody title={ __( 'Dimensions' ) }>\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tmin={ minHeightUnit === 'px' ? COVER_MIN_HEIGHT : 1 }\n\t\t\t\t\tmax={ COVER_MAX_HEIGHT }\n\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\tvalue={ CONTAINER_HEIGHT }\n\t\t\t\t\tonChange={ onHeightChange }\n\t\t\t\t\tonUnitChange={ onChangeUnit }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tstyle={ styles.rangeCellContainer }\n\t\t\t\t\tkey={ minHeightUnit }\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\t\t</>\n\t);\n}\n\nexport default Controls;\n"]}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = CoverBlockControls;
|
|
7
|
+
|
|
8
|
+
var _element = require("@wordpress/element");
|
|
9
|
+
|
|
10
|
+
var _components = require("@wordpress/components");
|
|
11
|
+
|
|
12
|
+
var _blockEditor = require("@wordpress/block-editor");
|
|
13
|
+
|
|
14
|
+
var _i18n = require("@wordpress/i18n");
|
|
15
|
+
|
|
16
|
+
var _icons = require("@wordpress/icons");
|
|
17
|
+
|
|
18
|
+
var _shared = require("../shared");
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* WordPress dependencies
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Internal dependencies
|
|
26
|
+
*/
|
|
27
|
+
function CoverBlockControls(_ref) {
|
|
28
|
+
let {
|
|
29
|
+
attributes,
|
|
30
|
+
setAttributes,
|
|
31
|
+
onSelectMedia,
|
|
32
|
+
currentSettings
|
|
33
|
+
} = _ref;
|
|
34
|
+
const {
|
|
35
|
+
contentPosition,
|
|
36
|
+
id,
|
|
37
|
+
useFeaturedImage,
|
|
38
|
+
dimRatio,
|
|
39
|
+
minHeight,
|
|
40
|
+
minHeightUnit
|
|
41
|
+
} = attributes;
|
|
42
|
+
const {
|
|
43
|
+
hasInnerBlocks,
|
|
44
|
+
url
|
|
45
|
+
} = currentSettings;
|
|
46
|
+
const [prevMinHeightValue, setPrevMinHeightValue] = (0, _element.useState)(minHeight);
|
|
47
|
+
const [prevMinHeightUnit, setPrevMinHeightUnit] = (0, _element.useState)(minHeightUnit);
|
|
48
|
+
const isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100;
|
|
49
|
+
|
|
50
|
+
const toggleMinFullHeight = () => {
|
|
51
|
+
if (isMinFullHeight) {
|
|
52
|
+
// If there aren't previous values, take the default ones.
|
|
53
|
+
if (prevMinHeightUnit === 'vh' && prevMinHeightValue === 100) {
|
|
54
|
+
return setAttributes({
|
|
55
|
+
minHeight: undefined,
|
|
56
|
+
minHeightUnit: undefined
|
|
57
|
+
});
|
|
58
|
+
} // Set the previous values of height.
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
return setAttributes({
|
|
62
|
+
minHeight: prevMinHeightValue,
|
|
63
|
+
minHeightUnit: prevMinHeightUnit
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
setPrevMinHeightValue(minHeight);
|
|
68
|
+
setPrevMinHeightUnit(minHeightUnit); // Set full height.
|
|
69
|
+
|
|
70
|
+
return setAttributes({
|
|
71
|
+
minHeight: 100,
|
|
72
|
+
minHeightUnit: 'vh'
|
|
73
|
+
});
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
const toggleUseFeaturedImage = () => {
|
|
77
|
+
setAttributes({
|
|
78
|
+
id: undefined,
|
|
79
|
+
url: undefined,
|
|
80
|
+
useFeaturedImage: !useFeaturedImage,
|
|
81
|
+
dimRatio: dimRatio === 100 ? 50 : dimRatio,
|
|
82
|
+
backgroundType: useFeaturedImage ? _shared.IMAGE_BACKGROUND_TYPE : undefined
|
|
83
|
+
});
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockEditor.BlockControls, {
|
|
87
|
+
group: "block"
|
|
88
|
+
}, (0, _element.createElement)(_blockEditor.__experimentalBlockAlignmentMatrixControl, {
|
|
89
|
+
label: (0, _i18n.__)('Change content position'),
|
|
90
|
+
value: contentPosition,
|
|
91
|
+
onChange: nextPosition => setAttributes({
|
|
92
|
+
contentPosition: nextPosition
|
|
93
|
+
}),
|
|
94
|
+
isDisabled: !hasInnerBlocks
|
|
95
|
+
}), (0, _element.createElement)(_blockEditor.__experimentalBlockFullHeightAligmentControl, {
|
|
96
|
+
isActive: isMinFullHeight,
|
|
97
|
+
onToggle: toggleMinFullHeight,
|
|
98
|
+
isDisabled: !hasInnerBlocks
|
|
99
|
+
})), (0, _element.createElement)(_blockEditor.BlockControls, {
|
|
100
|
+
group: "other"
|
|
101
|
+
}, (0, _element.createElement)(_components.ToolbarButton, {
|
|
102
|
+
icon: _icons.postFeaturedImage,
|
|
103
|
+
label: (0, _i18n.__)('Use featured image'),
|
|
104
|
+
isPressed: useFeaturedImage,
|
|
105
|
+
onClick: toggleUseFeaturedImage
|
|
106
|
+
}), !useFeaturedImage && (0, _element.createElement)(_blockEditor.MediaReplaceFlow, {
|
|
107
|
+
mediaId: id,
|
|
108
|
+
mediaURL: url,
|
|
109
|
+
allowedTypes: _shared.ALLOWED_MEDIA_TYPES,
|
|
110
|
+
accept: "image/*,video/*",
|
|
111
|
+
onSelect: onSelectMedia,
|
|
112
|
+
name: !url ? (0, _i18n.__)('Add Media') : (0, _i18n.__)('Replace')
|
|
113
|
+
})));
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=block-controls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/cover/edit/block-controls.js"],"names":["CoverBlockControls","attributes","setAttributes","onSelectMedia","currentSettings","contentPosition","id","useFeaturedImage","dimRatio","minHeight","minHeightUnit","hasInnerBlocks","url","prevMinHeightValue","setPrevMinHeightValue","prevMinHeightUnit","setPrevMinHeightUnit","isMinFullHeight","toggleMinFullHeight","undefined","toggleUseFeaturedImage","backgroundType","IMAGE_BACKGROUND_TYPE","nextPosition","postFeaturedImage","ALLOWED_MEDIA_TYPES"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { ToolbarButton } from '@wordpress/components';\n\nimport {\n\tBlockControls,\n\tMediaReplaceFlow,\n\t__experimentalBlockAlignmentMatrixControl as BlockAlignmentMatrixControl,\n\t__experimentalBlockFullHeightAligmentControl as FullHeightAlignmentControl,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { postFeaturedImage } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_MEDIA_TYPES, IMAGE_BACKGROUND_TYPE } from '../shared';\n\nexport default function CoverBlockControls( {\n\tattributes,\n\tsetAttributes,\n\tonSelectMedia,\n\tcurrentSettings,\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t} = attributes;\n\tconst { hasInnerBlocks, url } = currentSettings;\n\n\tconst [ prevMinHeightValue, setPrevMinHeightValue ] = useState( minHeight );\n\tconst [ prevMinHeightUnit, setPrevMinHeightUnit ] = useState(\n\t\tminHeightUnit\n\t);\n\tconst isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100;\n\tconst toggleMinFullHeight = () => {\n\t\tif ( isMinFullHeight ) {\n\t\t\t// If there aren't previous values, take the default ones.\n\t\t\tif ( prevMinHeightUnit === 'vh' && prevMinHeightValue === 100 ) {\n\t\t\t\treturn setAttributes( {\n\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Set the previous values of height.\n\t\t\treturn setAttributes( {\n\t\t\t\tminHeight: prevMinHeightValue,\n\t\t\t\tminHeightUnit: prevMinHeightUnit,\n\t\t\t} );\n\t\t}\n\n\t\tsetPrevMinHeightValue( minHeight );\n\t\tsetPrevMinHeightUnit( minHeightUnit );\n\n\t\t// Set full height.\n\t\treturn setAttributes( {\n\t\t\tminHeight: 100,\n\t\t\tminHeightUnit: 'vh',\n\t\t} );\n\t};\n\n\tconst toggleUseFeaturedImage = () => {\n\t\tsetAttributes( {\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tuseFeaturedImage: ! useFeaturedImage,\n\t\t\tdimRatio: dimRatio === 100 ? 50 : dimRatio,\n\t\t\tbackgroundType: useFeaturedImage\n\t\t\t\t? IMAGE_BACKGROUND_TYPE\n\t\t\t\t: undefined,\n\t\t} );\n\t};\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<BlockAlignmentMatrixControl\n\t\t\t\t\tlabel={ __( 'Change content position' ) }\n\t\t\t\t\tvalue={ contentPosition }\n\t\t\t\t\tonChange={ ( nextPosition ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tcontentPosition: nextPosition,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t\t<FullHeightAlignmentControl\n\t\t\t\t\tisActive={ isMinFullHeight }\n\t\t\t\t\tonToggle={ toggleMinFullHeight }\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<ToolbarButton\n\t\t\t\t\ticon={ postFeaturedImage }\n\t\t\t\t\tlabel={ __( 'Use featured image' ) }\n\t\t\t\t\tisPressed={ useFeaturedImage }\n\t\t\t\t\tonClick={ toggleUseFeaturedImage }\n\t\t\t\t/>\n\t\t\t\t{ ! useFeaturedImage && (\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*,video/*\"\n\t\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\t\tname={ ! url ? __( 'Add Media' ) : __( 'Replace' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = CoverPlaceholder;
|
|
7
|
+
|
|
8
|
+
var _element = require("@wordpress/element");
|
|
9
|
+
|
|
10
|
+
var _blockEditor = require("@wordpress/block-editor");
|
|
11
|
+
|
|
12
|
+
var _i18n = require("@wordpress/i18n");
|
|
13
|
+
|
|
14
|
+
var _icons = require("@wordpress/icons");
|
|
15
|
+
|
|
16
|
+
var _shared = require("../shared");
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* WordPress dependencies
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Internal dependencies
|
|
24
|
+
*/
|
|
25
|
+
function CoverPlaceholder(_ref) {
|
|
26
|
+
let {
|
|
27
|
+
disableMediaButtons = false,
|
|
28
|
+
children,
|
|
29
|
+
onSelectMedia,
|
|
30
|
+
onError,
|
|
31
|
+
style
|
|
32
|
+
} = _ref;
|
|
33
|
+
return (0, _element.createElement)(_blockEditor.MediaPlaceholder, {
|
|
34
|
+
icon: (0, _element.createElement)(_blockEditor.BlockIcon, {
|
|
35
|
+
icon: _icons.cover
|
|
36
|
+
}),
|
|
37
|
+
labels: {
|
|
38
|
+
title: (0, _i18n.__)('Cover'),
|
|
39
|
+
instructions: (0, _i18n.__)('Drag and drop onto this block, upload, or select existing media from your library.')
|
|
40
|
+
},
|
|
41
|
+
onSelect: onSelectMedia,
|
|
42
|
+
accept: "image/*,video/*",
|
|
43
|
+
allowedTypes: _shared.ALLOWED_MEDIA_TYPES,
|
|
44
|
+
disableMediaButtons: disableMediaButtons,
|
|
45
|
+
onError: onError,
|
|
46
|
+
style: style
|
|
47
|
+
}, children);
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=cover-placeholder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/cover/edit/cover-placeholder.js"],"names":["CoverPlaceholder","disableMediaButtons","children","onSelectMedia","onError","style","icon","title","instructions","ALLOWED_MEDIA_TYPES"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AAVA;AACA;AACA;;AAKA;AACA;AACA;AAGe,SAASA,gBAAT,OAMX;AAAA,MANsC;AACzCC,IAAAA,mBAAmB,GAAG,KADmB;AAEzCC,IAAAA,QAFyC;AAGzCC,IAAAA,aAHyC;AAIzCC,IAAAA,OAJyC;AAKzCC,IAAAA;AALyC,GAMtC;AACH,SACC,4BAAC,6BAAD;AACC,IAAA,IAAI,EAAG,4BAAC,sBAAD;AAAW,MAAA,IAAI,EAAGC;AAAlB,MADR;AAEC,IAAA,MAAM,EAAG;AACRC,MAAAA,KAAK,EAAE,cAAI,OAAJ,CADC;AAERC,MAAAA,YAAY,EAAE,cACb,oFADa;AAFN,KAFV;AAQC,IAAA,QAAQ,EAAGL,aARZ;AASC,IAAA,MAAM,EAAC,iBATR;AAUC,IAAA,YAAY,EAAGM,2BAVhB;AAWC,IAAA,mBAAmB,EAAGR,mBAXvB;AAYC,IAAA,OAAO,EAAGG,OAZX;AAaC,IAAA,KAAK,EAAGC;AAbT,KAeGH,QAfH,CADD;AAmBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { BlockIcon, MediaPlaceholder } from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { cover as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_MEDIA_TYPES } from '../shared';\n\nexport default function CoverPlaceholder( {\n\tdisableMediaButtons = false,\n\tchildren,\n\tonSelectMedia,\n\tonError,\n\tstyle,\n} ) {\n\treturn (\n\t\t<MediaPlaceholder\n\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\tlabels={ {\n\t\t\t\ttitle: __( 'Cover' ),\n\t\t\t\tinstructions: __(\n\t\t\t\t\t'Drag and drop onto this block, upload, or select existing media from your library.'\n\t\t\t\t),\n\t\t\t} }\n\t\t\tonSelect={ onSelectMedia }\n\t\t\taccept=\"image/*,video/*\"\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\tdisableMediaButtons={ disableMediaButtons }\n\t\t\tonError={ onError }\n\t\t\tstyle={ style }\n\t\t>\n\t\t\t{ children }\n\t\t</MediaPlaceholder>\n\t);\n}\n"]}
|
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _element = require("@wordpress/element");
|
|
11
|
+
|
|
12
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
|
+
|
|
14
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
15
|
+
|
|
16
|
+
var _colord = require("colord");
|
|
17
|
+
|
|
18
|
+
var _names = _interopRequireDefault(require("colord/plugins/names"));
|
|
19
|
+
|
|
20
|
+
var _coreData = require("@wordpress/core-data");
|
|
21
|
+
|
|
22
|
+
var _components = require("@wordpress/components");
|
|
23
|
+
|
|
24
|
+
var _compose = require("@wordpress/compose");
|
|
25
|
+
|
|
26
|
+
var _blockEditor = require("@wordpress/block-editor");
|
|
27
|
+
|
|
28
|
+
var _i18n = require("@wordpress/i18n");
|
|
29
|
+
|
|
30
|
+
var _data = require("@wordpress/data");
|
|
31
|
+
|
|
32
|
+
var _blob = require("@wordpress/blob");
|
|
33
|
+
|
|
34
|
+
var _notices = require("@wordpress/notices");
|
|
35
|
+
|
|
36
|
+
var _shared = require("../shared");
|
|
37
|
+
|
|
38
|
+
var _useCoverIsDark = _interopRequireDefault(require("./use-cover-is-dark"));
|
|
39
|
+
|
|
40
|
+
var _inspectorControls = _interopRequireDefault(require("./inspector-controls"));
|
|
41
|
+
|
|
42
|
+
var _blockControls = _interopRequireDefault(require("./block-controls"));
|
|
43
|
+
|
|
44
|
+
var _coverPlaceholder = _interopRequireDefault(require("./cover-placeholder"));
|
|
45
|
+
|
|
46
|
+
var _resizableCover = _interopRequireDefault(require("./resizable-cover"));
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* External dependencies
|
|
50
|
+
*/
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* WordPress dependencies
|
|
54
|
+
*/
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Internal dependencies
|
|
58
|
+
*/
|
|
59
|
+
(0, _colord.extend)([_names.default]);
|
|
60
|
+
|
|
61
|
+
function getInnerBlocksTemplate(attributes) {
|
|
62
|
+
return [['core/paragraph', {
|
|
63
|
+
align: 'center',
|
|
64
|
+
placeholder: (0, _i18n.__)('Write title…'),
|
|
65
|
+
...attributes
|
|
66
|
+
}]];
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Is the URL a temporary blob URL? A blob URL is one that is used temporarily while
|
|
70
|
+
* the media (image or video) is being uploaded and will not have an id allocated yet.
|
|
71
|
+
*
|
|
72
|
+
* @param {number} id The id of the media.
|
|
73
|
+
* @param {string} url The url of the media.
|
|
74
|
+
*
|
|
75
|
+
* @return {boolean} Is the URL a Blob URL.
|
|
76
|
+
*/
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
const isTemporaryMedia = (id, url) => !id && (0, _blob.isBlobURL)(url);
|
|
80
|
+
|
|
81
|
+
function CoverEdit(_ref) {
|
|
82
|
+
var _useSetting;
|
|
83
|
+
|
|
84
|
+
let {
|
|
85
|
+
attributes,
|
|
86
|
+
clientId,
|
|
87
|
+
isSelected,
|
|
88
|
+
overlayColor,
|
|
89
|
+
setAttributes,
|
|
90
|
+
setOverlayColor,
|
|
91
|
+
toggleSelection,
|
|
92
|
+
context: {
|
|
93
|
+
postId,
|
|
94
|
+
postType
|
|
95
|
+
}
|
|
96
|
+
} = _ref;
|
|
97
|
+
const {
|
|
98
|
+
contentPosition,
|
|
99
|
+
id,
|
|
100
|
+
useFeaturedImage,
|
|
101
|
+
dimRatio,
|
|
102
|
+
focalPoint,
|
|
103
|
+
hasParallax,
|
|
104
|
+
isDark,
|
|
105
|
+
isRepeated,
|
|
106
|
+
minHeight,
|
|
107
|
+
minHeightUnit,
|
|
108
|
+
alt,
|
|
109
|
+
allowedBlocks,
|
|
110
|
+
templateLock
|
|
111
|
+
} = attributes;
|
|
112
|
+
const [featuredImage] = (0, _coreData.useEntityProp)('postType', postType, 'featured_media', postId);
|
|
113
|
+
const media = (0, _data.useSelect)(select => featuredImage && select(_coreData.store).getMedia(featuredImage, {
|
|
114
|
+
context: 'view'
|
|
115
|
+
}), [featuredImage]);
|
|
116
|
+
const mediaUrl = media === null || media === void 0 ? void 0 : media.source_url; // instead of destructuring the attributes
|
|
117
|
+
// we define the url and background type
|
|
118
|
+
// depending on the value of the useFeaturedImage flag
|
|
119
|
+
// to preview in edit the dynamic featured image
|
|
120
|
+
|
|
121
|
+
const url = useFeaturedImage ? mediaUrl : attributes.url;
|
|
122
|
+
const backgroundType = useFeaturedImage ? _shared.IMAGE_BACKGROUND_TYPE : attributes.backgroundType;
|
|
123
|
+
const {
|
|
124
|
+
__unstableMarkNextChangeAsNotPersistent
|
|
125
|
+
} = (0, _data.useDispatch)(_blockEditor.store);
|
|
126
|
+
const {
|
|
127
|
+
createErrorNotice
|
|
128
|
+
} = (0, _data.useDispatch)(_notices.store);
|
|
129
|
+
const {
|
|
130
|
+
gradientClass,
|
|
131
|
+
gradientValue
|
|
132
|
+
} = (0, _blockEditor.__experimentalUseGradient)();
|
|
133
|
+
const onSelectMedia = (0, _shared.attributesFromMedia)(setAttributes, dimRatio);
|
|
134
|
+
const isUploadingMedia = isTemporaryMedia(id, url);
|
|
135
|
+
|
|
136
|
+
const onUploadError = message => {
|
|
137
|
+
createErrorNotice(message, {
|
|
138
|
+
type: 'snackbar'
|
|
139
|
+
});
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
const mediaElement = (0, _element.useRef)();
|
|
143
|
+
const isCoverDark = (0, _useCoverIsDark.default)(url, dimRatio, overlayColor.color, mediaElement);
|
|
144
|
+
(0, _element.useEffect)(() => {
|
|
145
|
+
// This side-effect should not create an undo level.
|
|
146
|
+
__unstableMarkNextChangeAsNotPersistent();
|
|
147
|
+
|
|
148
|
+
setAttributes({
|
|
149
|
+
isDark: isCoverDark
|
|
150
|
+
});
|
|
151
|
+
}, [isCoverDark]);
|
|
152
|
+
const isImageBackground = _shared.IMAGE_BACKGROUND_TYPE === backgroundType;
|
|
153
|
+
const isVideoBackground = _shared.VIDEO_BACKGROUND_TYPE === backgroundType;
|
|
154
|
+
const minHeightWithUnit = minHeight && minHeightUnit ? `${minHeight}${minHeightUnit}` : minHeight;
|
|
155
|
+
const isImgElement = !(hasParallax || isRepeated);
|
|
156
|
+
const style = { ...(isImageBackground && !isImgElement ? (0, _shared.backgroundImageStyles)(url) : undefined),
|
|
157
|
+
minHeight: minHeightWithUnit || undefined
|
|
158
|
+
};
|
|
159
|
+
const bgStyle = {
|
|
160
|
+
backgroundColor: overlayColor.color
|
|
161
|
+
};
|
|
162
|
+
const mediaStyle = {
|
|
163
|
+
objectPosition: focalPoint && isImgElement ? (0, _shared.mediaPosition)(focalPoint) : undefined
|
|
164
|
+
};
|
|
165
|
+
const hasBackground = !!(url || overlayColor.color || gradientValue);
|
|
166
|
+
const hasInnerBlocks = (0, _data.useSelect)(select => select(_blockEditor.store).getBlock(clientId).innerBlocks.length > 0, [clientId]);
|
|
167
|
+
const ref = (0, _element.useRef)();
|
|
168
|
+
const blockProps = (0, _blockEditor.useBlockProps)({
|
|
169
|
+
ref
|
|
170
|
+
}); // Check for fontSize support before we pass a fontSize attribute to the innerBlocks.
|
|
171
|
+
|
|
172
|
+
const hasFontSizes = !!((_useSetting = (0, _blockEditor.useSetting)('typography.fontSizes')) !== null && _useSetting !== void 0 && _useSetting.length);
|
|
173
|
+
const innerBlocksTemplate = getInnerBlocksTemplate({
|
|
174
|
+
fontSize: hasFontSizes ? 'large' : undefined
|
|
175
|
+
});
|
|
176
|
+
const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)({
|
|
177
|
+
className: 'wp-block-cover__inner-container'
|
|
178
|
+
}, {
|
|
179
|
+
template: innerBlocksTemplate,
|
|
180
|
+
templateInsertUpdatesSelection: true,
|
|
181
|
+
allowedBlocks,
|
|
182
|
+
templateLock
|
|
183
|
+
});
|
|
184
|
+
const currentSettings = {
|
|
185
|
+
isVideoBackground,
|
|
186
|
+
isImageBackground,
|
|
187
|
+
mediaElement,
|
|
188
|
+
hasInnerBlocks,
|
|
189
|
+
url,
|
|
190
|
+
isImgElement,
|
|
191
|
+
overlayColor
|
|
192
|
+
};
|
|
193
|
+
|
|
194
|
+
if (!hasInnerBlocks && !hasBackground) {
|
|
195
|
+
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockControls.default, {
|
|
196
|
+
attributes: attributes,
|
|
197
|
+
setAttributes: setAttributes,
|
|
198
|
+
onSelectMedia: onSelectMedia,
|
|
199
|
+
currentSettings: currentSettings
|
|
200
|
+
}), (0, _element.createElement)(_inspectorControls.default, {
|
|
201
|
+
attributes: attributes,
|
|
202
|
+
setAttributes: setAttributes,
|
|
203
|
+
clientId: clientId,
|
|
204
|
+
setOverlayColor: setOverlayColor,
|
|
205
|
+
coverRef: ref,
|
|
206
|
+
currentSettings: currentSettings
|
|
207
|
+
}), (0, _element.createElement)("div", (0, _extends2.default)({}, blockProps, {
|
|
208
|
+
className: (0, _classnames.default)('is-placeholder', blockProps.className)
|
|
209
|
+
}), (0, _element.createElement)(_coverPlaceholder.default, {
|
|
210
|
+
onSelectMedia: onSelectMedia,
|
|
211
|
+
onError: onUploadError,
|
|
212
|
+
style: {
|
|
213
|
+
minHeight: minHeightWithUnit || undefined
|
|
214
|
+
}
|
|
215
|
+
}, (0, _element.createElement)("div", {
|
|
216
|
+
className: "wp-block-cover__placeholder-background-options"
|
|
217
|
+
}, (0, _element.createElement)(_blockEditor.ColorPalette, {
|
|
218
|
+
disableCustomColors: true,
|
|
219
|
+
value: overlayColor.color,
|
|
220
|
+
onChange: setOverlayColor,
|
|
221
|
+
clearable: false
|
|
222
|
+
}))), (0, _element.createElement)(_resizableCover.default, {
|
|
223
|
+
className: "block-library-cover__resize-container",
|
|
224
|
+
onResizeStart: () => {
|
|
225
|
+
setAttributes({
|
|
226
|
+
minHeightUnit: 'px'
|
|
227
|
+
});
|
|
228
|
+
toggleSelection(false);
|
|
229
|
+
},
|
|
230
|
+
onResize: value => {
|
|
231
|
+
setAttributes({
|
|
232
|
+
minHeight: value
|
|
233
|
+
});
|
|
234
|
+
},
|
|
235
|
+
onResizeStop: newMinHeight => {
|
|
236
|
+
toggleSelection(true);
|
|
237
|
+
setAttributes({
|
|
238
|
+
minHeight: newMinHeight
|
|
239
|
+
});
|
|
240
|
+
},
|
|
241
|
+
showHandle: isSelected
|
|
242
|
+
})));
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
const classes = (0, _classnames.default)({
|
|
246
|
+
'is-dark-theme': isDark,
|
|
247
|
+
'is-light': !isDark,
|
|
248
|
+
'is-transient': isUploadingMedia,
|
|
249
|
+
'has-parallax': hasParallax,
|
|
250
|
+
'is-repeated': isRepeated,
|
|
251
|
+
'has-custom-content-position': !(0, _shared.isContentPositionCenter)(contentPosition)
|
|
252
|
+
}, (0, _shared.getPositionClassName)(contentPosition));
|
|
253
|
+
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockControls.default, {
|
|
254
|
+
attributes: attributes,
|
|
255
|
+
setAttributes: setAttributes,
|
|
256
|
+
onSelectMedia: onSelectMedia,
|
|
257
|
+
currentSettings: currentSettings
|
|
258
|
+
}), (0, _element.createElement)(_inspectorControls.default, {
|
|
259
|
+
attributes: attributes,
|
|
260
|
+
setAttributes: setAttributes,
|
|
261
|
+
clientId: clientId,
|
|
262
|
+
setOverlayColor: setOverlayColor,
|
|
263
|
+
coverRef: ref,
|
|
264
|
+
currentSettings: currentSettings
|
|
265
|
+
}), (0, _element.createElement)("div", (0, _extends2.default)({}, blockProps, {
|
|
266
|
+
className: (0, _classnames.default)(classes, blockProps.className),
|
|
267
|
+
style: { ...style,
|
|
268
|
+
...blockProps.style
|
|
269
|
+
},
|
|
270
|
+
"data-url": url
|
|
271
|
+
}), (0, _element.createElement)(_resizableCover.default, {
|
|
272
|
+
className: "block-library-cover__resize-container",
|
|
273
|
+
onResizeStart: () => {
|
|
274
|
+
setAttributes({
|
|
275
|
+
minHeightUnit: 'px'
|
|
276
|
+
});
|
|
277
|
+
toggleSelection(false);
|
|
278
|
+
},
|
|
279
|
+
onResize: value => {
|
|
280
|
+
setAttributes({
|
|
281
|
+
minHeight: value
|
|
282
|
+
});
|
|
283
|
+
},
|
|
284
|
+
onResizeStop: newMinHeight => {
|
|
285
|
+
toggleSelection(true);
|
|
286
|
+
setAttributes({
|
|
287
|
+
minHeight: newMinHeight
|
|
288
|
+
});
|
|
289
|
+
},
|
|
290
|
+
showHandle: isSelected
|
|
291
|
+
}), (0, _element.createElement)("span", {
|
|
292
|
+
"aria-hidden": "true",
|
|
293
|
+
className: (0, _classnames.default)('wp-block-cover__background', (0, _shared.dimRatioToClass)(dimRatio), {
|
|
294
|
+
[overlayColor.class]: overlayColor.class,
|
|
295
|
+
'has-background-dim': dimRatio !== undefined,
|
|
296
|
+
// For backwards compatibility. Former versions of the Cover Block applied
|
|
297
|
+
// `.wp-block-cover__gradient-background` in the presence of
|
|
298
|
+
// media, a gradient and a dim.
|
|
299
|
+
'wp-block-cover__gradient-background': url && gradientValue && dimRatio !== 0,
|
|
300
|
+
'has-background-gradient': gradientValue,
|
|
301
|
+
[gradientClass]: gradientClass
|
|
302
|
+
}),
|
|
303
|
+
style: {
|
|
304
|
+
backgroundImage: gradientValue,
|
|
305
|
+
...bgStyle
|
|
306
|
+
}
|
|
307
|
+
}), url && isImageBackground && isImgElement && (0, _element.createElement)("img", {
|
|
308
|
+
ref: mediaElement,
|
|
309
|
+
className: "wp-block-cover__image-background",
|
|
310
|
+
alt: alt,
|
|
311
|
+
src: url,
|
|
312
|
+
style: mediaStyle
|
|
313
|
+
}), url && isVideoBackground && (0, _element.createElement)("video", {
|
|
314
|
+
ref: mediaElement,
|
|
315
|
+
className: "wp-block-cover__video-background",
|
|
316
|
+
autoPlay: true,
|
|
317
|
+
muted: true,
|
|
318
|
+
loop: true,
|
|
319
|
+
src: url,
|
|
320
|
+
style: mediaStyle
|
|
321
|
+
}), isUploadingMedia && (0, _element.createElement)(_components.Spinner, null), (0, _element.createElement)(_coverPlaceholder.default, {
|
|
322
|
+
disableMediaButtons: true,
|
|
323
|
+
onSelectMedia: onSelectMedia,
|
|
324
|
+
onError: onUploadError
|
|
325
|
+
}), (0, _element.createElement)("div", innerBlocksProps)));
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
var _default = (0, _compose.compose)([(0, _blockEditor.withColors)({
|
|
329
|
+
overlayColor: 'background-color'
|
|
330
|
+
})])(CoverEdit);
|
|
331
|
+
|
|
332
|
+
exports.default = _default;
|
|
333
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/cover/edit/index.js"],"names":["namesPlugin","getInnerBlocksTemplate","attributes","align","placeholder","isTemporaryMedia","id","url","CoverEdit","clientId","isSelected","overlayColor","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","contentPosition","useFeaturedImage","dimRatio","focalPoint","hasParallax","isDark","isRepeated","minHeight","minHeightUnit","alt","allowedBlocks","templateLock","featuredImage","media","select","coreStore","getMedia","mediaUrl","source_url","backgroundType","IMAGE_BACKGROUND_TYPE","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","createErrorNotice","noticesStore","gradientClass","gradientValue","onSelectMedia","isUploadingMedia","onUploadError","message","type","mediaElement","isCoverDark","color","isImageBackground","isVideoBackground","VIDEO_BACKGROUND_TYPE","minHeightWithUnit","isImgElement","style","undefined","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","hasInnerBlocks","getBlock","innerBlocks","length","ref","blockProps","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","className","template","templateInsertUpdatesSelection","currentSettings","value","newMinHeight","classes","class","backgroundImage"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { Spinner } from '@wordpress/components';\nimport { compose } from '@wordpress/compose';\nimport {\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSetting,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { isBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport {\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tbackgroundImageStyles,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n\tmediaPosition,\n} from '../shared';\nimport useCoverIsDark from './use-cover-is-dark';\nimport CoverInspectorControls from './inspector-controls';\nimport CoverBlockControls from './block-controls';\nimport CoverPlaceholder from './cover-placeholder';\nimport ResizableCover from './resizable-cover';\n\nextend( [ namesPlugin ] );\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while\n * the media (image or video) is being uploaded and will not have an id allocated yet.\n *\n * @param {number} id The id of the media.\n * @param {string} url The url of the media.\n *\n * @return {boolean} Is the URL a Blob URL.\n */\nconst isTemporaryMedia = ( id, url ) => ! id && isBlobURL( url );\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\tconst media = useSelect(\n\t\t( select ) =>\n\t\t\tfeaturedImage &&\n\t\t\tselect( coreStore ).getMedia( featuredImage, { context: 'view' } ),\n\t\t[ featuredImage ]\n\t);\n\tconst mediaUrl = media?.source_url;\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage ? mediaUrl : attributes.url;\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: attributes.backgroundType;\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { gradientClass, gradientValue } = __experimentalUseGradient();\n\tconst onSelectMedia = attributesFromMedia( setAttributes, dimRatio );\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst mediaElement = useRef();\n\tconst isCoverDark = useCoverIsDark(\n\t\turl,\n\t\tdimRatio,\n\t\toverlayColor.color,\n\t\tmediaElement\n\t);\n\n\tuseEffect( () => {\n\t\t// This side-effect should not create an undo level.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetAttributes( { isDark: isCoverDark } );\n\t}, [ isCoverDark ] );\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\n\n\tconst minHeightWithUnit =\n\t\tminHeight && minHeightUnit\n\t\t\t? `${ minHeight }${ minHeightUnit }`\n\t\t\t: minHeight;\n\n\tconst isImgElement = ! ( hasParallax || isRepeated );\n\n\tconst style = {\n\t\t...( isImageBackground && ! isImgElement\n\t\t\t? backgroundImageStyles( url )\n\t\t\t: undefined ),\n\t\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst bgStyle = { backgroundColor: overlayColor.color };\n\tconst mediaStyle = {\n\t\tobjectPosition:\n\t\t\tfocalPoint && isImgElement\n\t\t\t\t? mediaPosition( focalPoint )\n\t\t\t\t: undefined,\n\t};\n\n\tconst hasBackground = !! ( url || overlayColor.color || gradientValue );\n\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlock( clientId ).innerBlocks.length >\n\t\t\t0,\n\t\t[ clientId ]\n\t);\n\n\tconst ref = useRef();\n\tconst blockProps = useBlockProps( { ref } );\n\n\t// Check for fontSize support before we pass a fontSize attribute to the innerBlocks.\n\tconst hasFontSizes = !! useSetting( 'typography.fontSizes' )?.length;\n\tconst innerBlocksTemplate = getInnerBlocksTemplate( {\n\t\tfontSize: hasFontSizes ? 'large' : undefined,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t},\n\t\t{\n\t\t\ttemplate: innerBlocksTemplate,\n\t\t\ttemplateInsertUpdatesSelection: true,\n\t\t\tallowedBlocks,\n\t\t\ttemplateLock,\n\t\t}\n\t);\n\n\tconst currentSettings = {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\thasInnerBlocks,\n\t\turl,\n\t\tisImgElement,\n\t\toverlayColor,\n\t};\n\n\tif ( ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t<CoverBlockControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tcurrentSettings={ currentSettings }\n\t\t\t\t/>\n\t\t\t\t<CoverInspectorControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tsetOverlayColor={ setOverlayColor }\n\t\t\t\t\tcoverRef={ ref }\n\t\t\t\t\tcurrentSettings={ currentSettings }\n\t\t\t\t/>\n\t\t\t\t<div\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'is-placeholder',\n\t\t\t\t\t\tblockProps.className\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<CoverPlaceholder\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\tminHeight: minHeightWithUnit || undefined,\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"wp-block-cover__placeholder-background-options\">\n\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\tdisableCustomColors={ true }\n\t\t\t\t\t\t\t\tvalue={ overlayColor.color }\n\t\t\t\t\t\t\t\tonChange={ setOverlayColor }\n\t\t\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</CoverPlaceholder>\n\t\t\t\t\t<ResizableCover\n\t\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst classes = classnames(\n\t\t{\n\t\t\t'is-dark-theme': isDark,\n\t\t\t'is-light': ! isDark,\n\t\t\t'is-transient': isUploadingMedia,\n\t\t\t'has-parallax': hasParallax,\n\t\t\t'is-repeated': isRepeated,\n\t\t\t'has-custom-content-position': ! isContentPositionCenter(\n\t\t\t\tcontentPosition\n\t\t\t),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<CoverBlockControls\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\tcurrentSettings={ currentSettings }\n\t\t\t/>\n\t\t\t<CoverInspectorControls\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tsetOverlayColor={ setOverlayColor }\n\t\t\t\tcoverRef={ ref }\n\t\t\t\tcurrentSettings={ currentSettings }\n\t\t\t/>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t<ResizableCover\n\t\t\t\t\tclassName=\"block-library-cover__resize-container\"\n\t\t\t\t\tonResizeStart={ () => {\n\t\t\t\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\t\t\t\ttoggleSelection( false );\n\t\t\t\t\t} }\n\t\t\t\t\tonResize={ ( value ) => {\n\t\t\t\t\t\tsetAttributes( { minHeight: value } );\n\t\t\t\t\t} }\n\t\t\t\t\tonResizeStop={ ( newMinHeight ) => {\n\t\t\t\t\t\ttoggleSelection( true );\n\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t\t\t\t} }\n\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t/>\n\n\t\t\t\t<span\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t}\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t/>\n\n\t\t\t\t{ url && isImageBackground && isImgElement && (\n\t\t\t\t\t<img\n\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ url && isVideoBackground && (\n\t\t\t\t\t<video\n\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__video-background\"\n\t\t\t\t\t\tautoPlay\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tloop\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isUploadingMedia && <Spinner /> }\n\t\t\t\t<CoverPlaceholder\n\t\t\t\t\tdisableMediaButtons\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t/>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( CoverEdit );\n"]}
|