@wordpress/block-library 7.0.2 → 7.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/audio/edit.js +4 -4
- package/build/audio/edit.js.map +1 -1
- package/build/audio/edit.native.js +4 -4
- package/build/audio/edit.native.js.map +1 -1
- package/build/audio/transforms.js +1 -1
- package/build/audio/transforms.js.map +1 -1
- package/build/block/edit.js +3 -9
- package/build/block/edit.js.map +1 -1
- package/build/button/edit.js +3 -2
- package/build/button/edit.js.map +1 -1
- package/build/button/edit.native.js +2 -2
- package/build/button/edit.native.js.map +1 -1
- package/build/buttons/transforms.js +8 -8
- package/build/buttons/transforms.js.map +1 -1
- package/build/categories/edit.js +15 -26
- package/build/categories/edit.js.map +1 -1
- package/build/code/index.js +0 -1
- package/build/code/index.js.map +1 -1
- package/build/columns/columnCalculations.native.js +1 -1
- package/build/columns/columnCalculations.native.js.map +1 -1
- package/build/columns/edit.js +1 -1
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +3 -3
- package/build/columns/edit.native.js.map +1 -1
- package/build/cover/controls.native.js +5 -5
- package/build/cover/controls.native.js.map +1 -1
- package/build/cover/deprecated.js +188 -17
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit.js +8 -11
- package/build/cover/edit.js.map +1 -1
- package/build/cover/edit.native.js +8 -8
- package/build/cover/edit.native.js.map +1 -1
- package/build/cover/overlay-color-settings.native.js +3 -3
- package/build/cover/overlay-color-settings.native.js.map +1 -1
- package/build/cover/save.js +1 -1
- package/build/cover/save.js.map +1 -1
- package/build/cover/shared.js +2 -2
- package/build/cover/shared.js.map +1 -1
- package/build/embed/edit.js +1 -1
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +1 -1
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/util.js +2 -2
- package/build/embed/util.js.map +1 -1
- package/build/embed/variations.js +1 -1
- package/build/embed/variations.js.map +1 -1
- package/build/file/edit.js +20 -17
- package/build/file/edit.js.map +1 -1
- package/build/file/edit.native.js +1 -1
- package/build/file/edit.native.js.map +1 -1
- package/build/file/save.js +7 -3
- package/build/file/save.js.map +1 -1
- package/build/freeform/edit.js +2 -2
- package/build/freeform/edit.js.map +1 -1
- package/build/gallery/edit.js +1 -1
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.native.js +1 -1
- package/build/gallery/gallery.native.js.map +1 -1
- package/build/gallery/v1/edit.js +3 -3
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/gallery/v1/gallery-image.native.js +3 -3
- package/build/gallery/v1/gallery-image.native.js.map +1 -1
- package/build/gallery/v1/gallery.native.js +2 -2
- package/build/gallery/v1/gallery.native.js.map +1 -1
- package/build/group/index.js +3 -37
- package/build/group/index.js.map +1 -1
- package/build/group/transforms.js +45 -0
- package/build/group/transforms.js.map +1 -0
- package/build/home-link/edit.js +1 -1
- package/build/home-link/edit.js.map +1 -1
- package/build/image/edit.js +7 -6
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +25 -10
- package/build/image/edit.native.js.map +1 -1
- package/build/image/transforms.js +1 -1
- package/build/image/transforms.js.map +1 -1
- package/build/index.js +3 -4
- package/build/index.js.map +1 -1
- package/build/index.native.js +2 -2
- package/build/index.native.js.map +1 -1
- package/build/media-text/edit.js +21 -2
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/edit.native.js +2 -2
- package/build/media-text/edit.native.js.map +1 -1
- package/build/media-text/media-container.native.js +1 -1
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/missing/edit.native.js +1 -1
- package/build/missing/edit.native.js.map +1 -1
- package/build/more/transforms.js +2 -2
- package/build/more/transforms.js.map +1 -1
- package/build/navigation/edit/index.js +134 -60
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +8 -3
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +66 -53
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +31 -46
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/placeholder/placeholder-preview.js +3 -12
- package/build/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +3 -1
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +120 -0
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -0
- package/build/navigation/edit/use-create-navigation-menu.js +53 -4
- package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build/navigation/edit/use-navigation-notice.js +3 -3
- package/build/navigation/edit/use-navigation-notice.js.map +1 -1
- package/build/navigation/menu-items-to-blocks.js +1 -1
- package/build/navigation/menu-items-to-blocks.js.map +1 -1
- package/build/navigation/use-navigation-entities.js +25 -49
- package/build/navigation/use-navigation-entities.js.map +1 -1
- package/build/navigation/use-navigation-menu.js +2 -0
- package/build/navigation/use-navigation-menu.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 +2 -2
- package/build/navigation-link/hooks.js.map +1 -1
- package/build/navigation-submenu/edit.js +2 -2
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +13 -23
- package/build/page-list/convert-to-links-modal.js.map +1 -1
- package/build/page-list/edit.js +8 -22
- package/build/page-list/edit.js.map +1 -1
- package/build/post-author-name/edit.js +2 -1
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-comments-form/edit.js +3 -1
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-excerpt/edit.js +7 -4
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-terms/edit.js +3 -1
- package/build/post-terms/edit.js.map +1 -1
- package/build/query-title/edit.js +0 -1
- package/build/query-title/edit.js.map +1 -1
- package/build/search/edit.js +4 -1
- package/build/search/edit.js.map +1 -1
- package/build/search/edit.native.js +1 -1
- package/build/search/edit.native.js.map +1 -1
- package/build/separator/save.js +4 -4
- package/build/separator/save.js.map +1 -1
- package/build/separator/separator-settings.native.js +1 -1
- package/build/separator/separator-settings.native.js.map +1 -1
- package/build/site-logo/edit.js +1 -1
- package/build/site-logo/edit.js.map +1 -1
- package/build/social-link/edit.native.js +11 -3
- package/build/social-link/edit.native.js.map +1 -1
- package/build/spacer/controls.js +5 -5
- package/build/spacer/controls.js.map +1 -1
- package/build/spacer/controls.native.js +5 -5
- package/build/spacer/controls.native.js.map +1 -1
- package/build/table/edit.js +2 -2
- package/build/table/edit.js.map +1 -1
- package/build/video/edit.js +4 -4
- package/build/video/edit.js.map +1 -1
- package/build/video/edit.native.js +3 -3
- package/build/video/edit.native.js.map +1 -1
- package/build-module/audio/edit.js +4 -4
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/audio/edit.native.js +4 -4
- package/build-module/audio/edit.native.js.map +1 -1
- package/build-module/audio/transforms.js +1 -1
- package/build-module/audio/transforms.js.map +1 -1
- package/build-module/block/edit.js +5 -11
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/edit.js +3 -2
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/edit.native.js +2 -2
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/buttons/transforms.js +8 -8
- package/build-module/buttons/transforms.js.map +1 -1
- package/build-module/categories/edit.js +15 -25
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/code/index.js +0 -1
- package/build-module/code/index.js.map +1 -1
- package/build-module/columns/columnCalculations.native.js +1 -1
- package/build-module/columns/columnCalculations.native.js.map +1 -1
- package/build-module/columns/edit.js +1 -1
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +3 -3
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/cover/controls.native.js +5 -5
- package/build-module/cover/controls.native.js.map +1 -1
- package/build-module/cover/deprecated.js +190 -17
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit.js +8 -11
- package/build-module/cover/edit.js.map +1 -1
- package/build-module/cover/edit.native.js +8 -8
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/overlay-color-settings.native.js +3 -3
- package/build-module/cover/overlay-color-settings.native.js.map +1 -1
- package/build-module/cover/save.js +1 -1
- package/build-module/cover/save.js.map +1 -1
- package/build-module/cover/shared.js +2 -2
- package/build-module/cover/shared.js.map +1 -1
- package/build-module/embed/edit.js +1 -1
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +1 -1
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/util.js +2 -2
- package/build-module/embed/util.js.map +1 -1
- package/build-module/embed/variations.js +1 -1
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/file/edit.js +21 -18
- package/build-module/file/edit.js.map +1 -1
- package/build-module/file/edit.native.js +1 -1
- package/build-module/file/edit.native.js.map +1 -1
- package/build-module/file/save.js +7 -3
- package/build-module/file/save.js.map +1 -1
- package/build-module/freeform/edit.js +2 -2
- package/build-module/freeform/edit.js.map +1 -1
- package/build-module/gallery/edit.js +1 -1
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.native.js +1 -1
- package/build-module/gallery/gallery.native.js.map +1 -1
- package/build-module/gallery/v1/edit.js +3 -3
- package/build-module/gallery/v1/edit.js.map +1 -1
- package/build-module/gallery/v1/gallery-image.native.js +3 -3
- package/build-module/gallery/v1/gallery-image.native.js.map +1 -1
- package/build-module/gallery/v1/gallery.native.js +2 -2
- package/build-module/gallery/v1/gallery.native.js.map +1 -1
- package/build-module/group/index.js +2 -36
- package/build-module/group/index.js.map +1 -1
- package/build-module/group/transforms.js +36 -0
- package/build-module/group/transforms.js.map +1 -0
- package/build-module/home-link/edit.js +1 -1
- package/build-module/home-link/edit.js.map +1 -1
- package/build-module/image/edit.js +7 -6
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +25 -10
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/transforms.js +1 -1
- package/build-module/image/transforms.js.map +1 -1
- package/build-module/index.js +4 -5
- package/build-module/index.js.map +1 -1
- package/build-module/index.native.js +2 -2
- package/build-module/index.native.js.map +1 -1
- package/build-module/media-text/edit.js +20 -2
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/edit.native.js +2 -2
- package/build-module/media-text/edit.native.js.map +1 -1
- package/build-module/media-text/media-container.native.js +1 -1
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/missing/edit.native.js +1 -1
- package/build-module/missing/edit.native.js.map +1 -1
- package/build-module/more/transforms.js +2 -2
- package/build-module/more/transforms.js.map +1 -1
- package/build-module/navigation/edit/index.js +128 -60
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +8 -3
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +66 -50
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +32 -45
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/placeholder/placeholder-preview.js +3 -9
- package/build-module/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +3 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +100 -0
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -0
- package/build-module/navigation/edit/use-create-navigation-menu.js +48 -5
- package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build-module/navigation/edit/use-navigation-notice.js +3 -3
- package/build-module/navigation/edit/use-navigation-notice.js.map +1 -1
- package/build-module/navigation/menu-items-to-blocks.js +1 -1
- package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
- package/build-module/navigation/use-navigation-entities.js +26 -50
- package/build-module/navigation/use-navigation-entities.js.map +1 -1
- package/build-module/navigation/use-navigation-menu.js +2 -0
- package/build-module/navigation/use-navigation-menu.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/navigation-submenu/edit.js +2 -2
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +15 -25
- package/build-module/page-list/convert-to-links-modal.js.map +1 -1
- package/build-module/page-list/edit.js +9 -23
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/post-author-name/edit.js +2 -1
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-comments-form/edit.js +4 -2
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-excerpt/edit.js +9 -6
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +2 -1
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/query-title/edit.js +0 -1
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/search/edit.js +3 -1
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/edit.native.js +1 -1
- package/build-module/search/edit.native.js.map +1 -1
- package/build-module/separator/save.js +4 -4
- package/build-module/separator/save.js.map +1 -1
- package/build-module/separator/separator-settings.native.js +1 -1
- package/build-module/separator/separator-settings.native.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/social-link/edit.native.js +11 -3
- package/build-module/social-link/edit.native.js.map +1 -1
- package/build-module/spacer/controls.js +5 -5
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/spacer/controls.native.js +5 -5
- package/build-module/spacer/controls.native.js.map +1 -1
- package/build-module/table/edit.js +2 -2
- package/build-module/table/edit.js.map +1 -1
- package/build-module/video/edit.js +4 -4
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/edit.native.js +3 -3
- package/build-module/video/edit.native.js.map +1 -1
- package/build-style/button/editor-rtl.css +0 -3
- package/build-style/button/editor.css +0 -3
- package/build-style/code/style-rtl.css +2 -1
- package/build-style/code/style.css +2 -1
- package/build-style/code/theme-rtl.css +0 -3
- package/build-style/code/theme.css +0 -3
- package/build-style/common-rtl.css +1 -1
- package/build-style/common.css +1 -1
- package/build-style/cover/style-rtl.css +1 -5
- package/build-style/cover/style.css +1 -5
- package/build-style/editor-rtl.css +16 -3
- package/build-style/editor.css +16 -3
- package/build-style/image/style-rtl.css +2 -1
- package/build-style/image/style.css +2 -1
- package/build-style/navigation/editor-rtl.css +16 -0
- package/build-style/navigation/editor.css +16 -0
- package/build-style/style-rtl.css +12 -10
- package/build-style/style.css +12 -10
- package/build-style/tag-cloud/style-rtl.css +6 -2
- package/build-style/tag-cloud/style.css +6 -2
- package/build-style/theme-rtl.css +0 -3
- package/build-style/theme.css +0 -3
- package/package.json +32 -28
- package/src/audio/edit.js +4 -4
- package/src/audio/edit.native.js +4 -4
- package/src/audio/transforms.js +1 -1
- package/src/block/edit.js +7 -22
- package/src/block/test/edit.native.js +9 -9
- package/src/button/edit.js +2 -1
- package/src/button/edit.native.js +2 -2
- package/src/button/editor.scss +0 -5
- package/src/buttons/test/edit.native.js +3 -3
- package/src/buttons/transforms.js +8 -8
- package/src/categories/edit.js +12 -22
- package/src/code/block.json +0 -1
- package/src/code/style.scss +4 -2
- package/src/code/theme.scss +0 -3
- package/src/columns/columnCalculations.native.js +1 -1
- package/src/columns/edit.js +1 -1
- package/src/columns/edit.native.js +3 -3
- package/src/comments-pagination-numbers/index.php +1 -1
- package/src/common.scss +1 -1
- package/src/cover/controls.native.js +1 -1
- package/src/cover/deprecated.js +214 -1
- package/src/cover/edit.js +6 -8
- package/src/cover/edit.native.js +8 -8
- package/src/cover/overlay-color-settings.native.js +3 -3
- package/src/cover/save.js +4 -3
- package/src/cover/shared.js +2 -2
- package/src/cover/style.scss +1 -3
- package/src/cover/test/edit.native.js +39 -39
- package/src/embed/edit.js +1 -1
- package/src/embed/edit.native.js +1 -1
- package/src/embed/test/index.native.js +105 -105
- package/src/embed/util.js +2 -2
- package/src/embed/variations.js +1 -1
- package/src/file/edit.js +19 -17
- package/src/file/edit.native.js +1 -1
- package/src/file/save.js +9 -3
- package/src/file/style.native.scss +1 -0
- package/src/freeform/edit.js +2 -2
- package/src/gallery/edit.js +1 -1
- package/src/gallery/gallery.native.js +1 -1
- package/src/gallery/test/__snapshots__/index.native.js.snap +164 -0
- package/src/gallery/test/helpers.native.js +293 -0
- package/src/gallery/test/index.native.js +583 -65
- package/src/gallery/v1/edit.js +3 -4
- package/src/gallery/v1/gallery-image.native.js +3 -3
- package/src/gallery/v1/gallery.native.js +2 -2
- package/src/group/index.js +2 -54
- package/src/group/transforms.js +52 -0
- package/src/home-link/edit.js +1 -1
- package/src/image/edit.js +7 -6
- package/src/image/edit.native.js +25 -8
- package/src/image/style.scss +2 -1
- package/src/image/test/edit.native.js +1 -1
- package/src/image/transforms.js +1 -1
- package/src/index.js +2 -3
- package/src/index.native.js +2 -2
- package/src/media-text/edit.js +20 -2
- package/src/media-text/edit.native.js +2 -2
- package/src/media-text/media-container.native.js +1 -1
- package/src/media-text/style.native.scss +1 -0
- package/src/missing/edit.native.js +1 -1
- package/src/missing/test/edit-integration.native.js +4 -4
- package/src/missing/test/edit.native.js +2 -2
- package/src/more/transforms.js +2 -2
- package/src/navigation/edit/index.js +194 -69
- package/src/navigation/edit/inner-blocks.js +11 -4
- package/src/navigation/edit/navigation-menu-selector.js +97 -79
- package/src/navigation/edit/placeholder/index.js +61 -84
- package/src/navigation/edit/placeholder/placeholder-preview.js +3 -10
- package/src/navigation/edit/unsaved-inner-blocks.js +3 -1
- package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +137 -0
- package/src/navigation/edit/use-create-navigation-menu.js +59 -8
- package/src/navigation/edit/use-navigation-notice.js +3 -3
- package/src/navigation/editor.scss +23 -1
- package/src/navigation/menu-items-to-blocks.js +1 -1
- package/src/navigation/test/menu-items-to-blocks.js +1 -1
- package/src/navigation/use-navigation-entities.js +26 -60
- package/src/navigation/use-navigation-menu.js +5 -0
- package/src/navigation-link/fallback-variations.js +1 -1
- package/src/navigation-link/hooks.js +2 -2
- package/src/navigation-link/test/edit.js +5 -5
- package/src/navigation-submenu/edit.js +2 -2
- package/src/page-list/convert-to-links-modal.js +17 -31
- package/src/page-list/edit.js +14 -23
- package/src/post-author-name/edit.js +1 -0
- package/src/post-author-name/index.php +1 -1
- package/src/post-comments-form/edit.js +7 -3
- package/src/post-excerpt/edit.js +9 -12
- package/src/post-terms/edit.js +2 -1
- package/src/query-title/edit.js +0 -1
- package/src/search/edit.js +6 -0
- package/src/search/edit.native.js +1 -1
- package/src/search/index.php +3 -2
- package/src/search/test/edit.native.js +0 -1
- package/src/separator/save.js +4 -4
- package/src/separator/separator-settings.native.js +1 -1
- package/src/site-logo/edit.js +1 -1
- package/src/social-link/edit.native.js +17 -8
- package/src/social-link/test/index.native.js +138 -0
- package/src/spacer/controls.js +1 -1
- package/src/spacer/controls.native.js +1 -1
- package/src/table/edit.js +2 -2
- package/src/tag-cloud/style.scss +12 -7
- package/src/video/edit.js +4 -4
- package/src/video/edit.native.js +3 -3
- package/src/video/style.native.scss +1 -0
- package/build/navigation/use-convert-classic-menu.js +0 -59
- package/build/navigation/use-convert-classic-menu.js.map +0 -1
- package/build-module/navigation/use-convert-classic-menu.js +0 -47
- package/build-module/navigation/use-convert-classic-menu.js.map +0 -1
- package/src/navigation/use-convert-classic-menu.js +0 -58
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/cover/edit.js"],"names":["classnames","FastAverageColor","colord","extend","namesPlugin","Fragment","useEffect","useRef","useState","BaseControl","Button","ExternalLink","FocalPointPicker","PanelBody","PanelRow","RangeControl","ResizableBox","Spinner","TextareaControl","ToggleControl","withNotices","__experimentalUseCustomUnits","useCustomUnits","__experimentalBoxControl","BoxControl","__experimentalToolsPanelItem","ToolsPanelItem","compose","useInstanceId","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaReplaceFlow","withColors","ColorPalette","useBlockProps","useSetting","useInnerBlocksProps","__experimentalUseGradient","__experimentalPanelColorGradientSettings","PanelColorGradientSettings","__experimentalUnitControl","UnitControl","__experimentalBlockAlignmentMatrixControl","BlockAlignmentMatrixControl","__experimentalBlockFullHeightAligmentControl","FullHeightAlignmentControl","store","blockEditorStore","__","useSelect","useDispatch","cover","icon","isBlobURL","ALLOWED_MEDIA_TYPES","attributesFromMedia","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","COVER_MIN_HEIGHT","backgroundImageStyles","dimRatioToClass","isContentPositionCenter","getPositionClassName","__Visualizer","BoxControlVisualizer","getInnerBlocksTemplate","attributes","align","placeholder","retrieveFastAverageColor","fastAverageColor","CoverHeightInput","onChange","onUnitChange","unit","value","temporaryInput","setTemporaryInput","instanceId","inputId","isPx","units","availableUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","handleOnBlur","min","maxWidth","RESIZABLE_BOX_ENABLE_OPTION","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","ResizableCover","className","onResizeStart","onResize","onResizeStop","props","isResizing","setIsResizing","_event","_direction","elt","clientHeight","useCoverIsDark","url","dimRatio","overlayColor","elementRef","isDark","setIsDark","current","getColorAsync","color","mediaPosition","x","y","Math","round","isTemporaryMedia","id","CoverPlaceholder","disableMediaButtons","children","noticeUI","noticeOperations","onSelectMedia","style","removeAllNotices","createErrorNotice","title","instructions","message","CoverEdit","clientId","isSelected","setAttributes","setOverlayColor","toggleSelection","contentPosition","backgroundType","focalPoint","hasParallax","isRepeated","minHeight","minHeightUnit","styleAttribute","alt","allowedBlocks","templateLock","__unstableMarkNextChangeAsNotPersistent","gradientClass","gradientValue","setGradient","isUploadingMedia","prevMinHeightValue","setPrevMinHeightValue","prevMinHeightUnit","setPrevMinHeightUnit","isMinFullHeight","toggleMinFullHeight","toggleParallax","toggleIsRepeated","isDarkElement","isCoverDark","isImageBackground","isVideoBackground","minHeightWithUnit","isImgElement","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","ref","hasInnerBlocks","select","getBlock","innerBlocks","length","controls","nextPosition","newFocalPoint","newAlt","colorValue","onColorChange","onGradientChange","label","newDimRation","newMinHeight","nextUnit","blockProps","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","template","templateInsertUpdatesSelection","classes","spacing","padding","visualizers","class","backgroundImage"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport FastAverageColor from 'fast-average-color';\nimport { colord, extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\n\n/**\n * WordPress dependencies\n */\nimport { Fragment, useEffect, useRef, useState } from '@wordpress/element';\nimport {\n\tBaseControl,\n\tButton,\n\tExternalLink,\n\tFocalPointPicker,\n\tPanelBody,\n\tPanelRow,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tToggleControl,\n\twithNotices,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalBoxControl as BoxControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { compose, useInstanceId } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSetting,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\t__experimentalPanelColorGradientSettings as PanelColorGradientSettings,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalBlockAlignmentMatrixControl as BlockAlignmentMatrixControl,\n\t__experimentalBlockFullHeightAligmentControl as FullHeightAlignmentControl,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { cover as icon } from '@wordpress/icons';\nimport { isBlobURL } from '@wordpress/blob';\n\n/**\n * Internal dependencies\n */\nimport {\n\tALLOWED_MEDIA_TYPES,\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tCOVER_MIN_HEIGHT,\n\tbackgroundImageStyles,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n} from './shared';\n\nextend( [ namesPlugin ] );\n\nconst { __Visualizer: BoxControlVisualizer } = BoxControl;\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\nfunction retrieveFastAverageColor() {\n\tif ( ! retrieveFastAverageColor.fastAverageColor ) {\n\t\tretrieveFastAverageColor.fastAverageColor = new FastAverageColor();\n\t}\n\treturn retrieveFastAverageColor.fastAverageColor;\n}\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst [ temporaryInput, setTemporaryInput ] = useState( null );\n\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\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 handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\tsetTemporaryInput( unprocessedValue );\n\t\t\treturn;\n\t\t}\n\t\tsetTemporaryInput( null );\n\t\tonChange( inputValue );\n\t\tif ( inputValue === undefined ) {\n\t\t\tonUnitChange();\n\t\t}\n\t};\n\n\tconst handleOnBlur = () => {\n\t\tif ( temporaryInput !== null ) {\n\t\t\tsetTemporaryInput( null );\n\t\t}\n\t};\n\n\tconst inputValue = temporaryInput !== null ? temporaryInput : value;\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<BaseControl label={ __( 'Minimum height of cover' ) } id={ inputId }>\n\t\t\t<UnitControl\n\t\t\t\tid={ inputId }\n\t\t\t\tisResetValueOnUnitChange\n\t\t\t\tmin={ min }\n\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\tonChange={ handleOnChange }\n\t\t\t\tonUnitChange={ onUnitChange }\n\t\t\t\tstyle={ { maxWidth: 80 } }\n\t\t\t\tunit={ unit }\n\t\t\t\tunits={ units }\n\t\t\t\tvalue={ inputValue }\n\t\t\t/>\n\t\t</BaseControl>\n\t);\n}\n\nconst RESIZABLE_BOX_ENABLE_OPTION = {\n\ttop: false,\n\tright: false,\n\tbottom: true,\n\tleft: false,\n\ttopRight: false,\n\tbottomRight: false,\n\tbottomLeft: false,\n\ttopLeft: false,\n};\n\nfunction ResizableCover( {\n\tclassName,\n\tonResizeStart,\n\tonResize,\n\tonResizeStop,\n\t...props\n} ) {\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ classnames( className, {\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t} ) }\n\t\t\tenable={ RESIZABLE_BOX_ENABLE_OPTION }\n\t\t\tonResizeStart={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStart( elt.clientHeight );\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t} }\n\t\t\tonResize={ ( _event, _direction, elt ) => {\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t\tif ( ! isResizing ) {\n\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResizeStop={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStop( elt.clientHeight );\n\t\t\t\tsetIsResizing( false );\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\n/**\n * useCoverIsDark is a hook that returns a boolean variable specifying if the cover\n * background is dark or not.\n *\n * @param {?string} url Url of the media background.\n * @param {?number} dimRatio Transparency of the overlay color. If an image and\n * color are set, dimRatio is used to decide what is used\n * for background darkness checking purposes.\n * @param {?string} overlayColor String containing the overlay color value if one exists.\n * @param {?Object} elementRef If a media background is set, elementRef should contain a reference to a\n * dom element that renders that media.\n *\n * @return {boolean} True if the cover background is considered \"dark\" and false otherwise.\n */\nfunction useCoverIsDark( url, dimRatio = 50, overlayColor, elementRef ) {\n\tconst [ isDark, setIsDark ] = useState( false );\n\tuseEffect( () => {\n\t\t// If opacity is lower than 50 the dominant color is the image or video color,\n\t\t// so use that color for the dark mode computation.\n\t\tif ( url && dimRatio <= 50 && elementRef.current ) {\n\t\t\tretrieveFastAverageColor().getColorAsync(\n\t\t\t\telementRef.current,\n\t\t\t\t( color ) => {\n\t\t\t\t\tsetIsDark( color.isDark );\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}, [ url, url && dimRatio <= 50 && elementRef.current, setIsDark ] );\n\tuseEffect( () => {\n\t\t// If opacity is greater than 50 the dominant color is the overlay color,\n\t\t// so use that color for the dark mode computation.\n\t\tif ( dimRatio > 50 || ! url ) {\n\t\t\tif ( ! overlayColor ) {\n\t\t\t\t// If no overlay color exists the overlay color is black (isDark )\n\t\t\t\tsetIsDark( true );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetIsDark( colord( overlayColor ).isDark() );\n\t\t}\n\t}, [ overlayColor, dimRatio > 50 || ! url, setIsDark ] );\n\tuseEffect( () => {\n\t\tif ( ! url && ! overlayColor ) {\n\t\t\t// Reset isDark\n\t\t\tsetIsDark( false );\n\t\t}\n\t}, [ ! url && ! overlayColor, setIsDark ] );\n\treturn isDark;\n}\n\nfunction mediaPosition( { x, y } ) {\n\treturn `${ Math.round( x * 100 ) }% ${ Math.round( y * 100 ) }%`;\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 CoverPlaceholder( {\n\tdisableMediaButtons = false,\n\tchildren,\n\tnoticeUI,\n\tnoticeOperations,\n\tonSelectMedia,\n\tstyle,\n} ) {\n\tconst { removeAllNotices, createErrorNotice } = noticeOperations;\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\tnotices={ noticeUI }\n\t\t\tdisableMediaButtons={ disableMediaButtons }\n\t\t\tonError={ ( message ) => {\n\t\t\t\tremoveAllNotices();\n\t\t\t\tcreateErrorNotice( message );\n\t\t\t} }\n\t\t\tstyle={ style }\n\t\t>\n\t\t\t{ children }\n\t\t</MediaPlaceholder>\n\t);\n}\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\tnoticeUI,\n\tnoticeOperations,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\tbackgroundType,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\tstyle: styleAttribute,\n\t\turl,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t} = attributes;\n\tconst { __unstableMarkNextChangeAsNotPersistent } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tconst {\n\t\tgradientClass,\n\t\tgradientValue,\n\t\tsetGradient,\n\t} = __experimentalUseGradient();\n\tconst onSelectMedia = attributesFromMedia( setAttributes, dimRatio );\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\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\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 toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst isDarkElement = useRef();\n\tconst isCoverDark = useCoverIsDark(\n\t\turl,\n\t\tdimRatio,\n\t\toverlayColor.color,\n\t\tisDarkElement\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 = minHeightUnit\n\t\t? `${ minHeight }${ minHeightUnit }`\n\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\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = isDarkElement.current\n\t\t\t? [ isDarkElement.current.style, 'objectPosition' ]\n\t\t\t: [ ref.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\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 controls = (\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<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"image/*,video/*\"\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\tname={ ! url ? __( 'Add Media' ) : __( 'Replace' ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<PanelBody title={ __( 'Media settings' ) }>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point picker' ) }\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ url && isImageBackground && isImgElement && (\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Alt text (alternative text)' ) }\n\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'Leave empty if the image is purely decorative.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\tclassName=\"block-library-cover__reset-button\"\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\turl: undefined,\n\t\t\t\t\t\t\t\t\t\tid: undefined,\n\t\t\t\t\t\t\t\t\t\tbackgroundType: undefined,\n\t\t\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\t\t\thasParallax: undefined,\n\t\t\t\t\t\t\t\t\t\tisRepeated: undefined,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Clear Media' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</PanelRow>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t<PanelColorGradientSettings\n\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\ttitle={ __( 'Overlay' ) }\n\t\t\t\t\tinitialOpen={ true }\n\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\tlabel: __( 'Color' ),\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Opacity' ) }\n\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\tonChange={ ( newDimRation ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdimRatio: newDimRation,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t</PanelColorGradientSettings>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={ minHeight }\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t</>\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\tif ( ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\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\tnoticeUI={ noticeUI }\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tnoticeOperations={ noticeOperations }\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{ controls }\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<BoxControlVisualizer\n\t\t\t\t\tvalues={ styleAttribute?.spacing?.padding }\n\t\t\t\t\tshowValues={ styleAttribute?.visualizers?.padding }\n\t\t\t\t\tclassName=\"block-library-cover__padding-visualizer\"\n\t\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={ isDarkElement }\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={ isDarkElement }\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\tnoticeUI={ noticeUI }\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tnoticeOperations={ noticeOperations }\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\twithNotices,\n] )( CoverEdit );\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/cover/edit.js"],"names":["classnames","FastAverageColor","colord","extend","namesPlugin","Fragment","useEffect","useRef","useState","BaseControl","Button","ExternalLink","FocalPointPicker","PanelBody","PanelRow","RangeControl","ResizableBox","Spinner","TextareaControl","ToggleControl","withNotices","__experimentalUseCustomUnits","useCustomUnits","__experimentalBoxControl","BoxControl","__experimentalToolsPanelItem","ToolsPanelItem","compose","useInstanceId","BlockControls","BlockIcon","InspectorControls","MediaPlaceholder","MediaReplaceFlow","withColors","ColorPalette","useBlockProps","useSetting","useInnerBlocksProps","__experimentalUseGradient","__experimentalPanelColorGradientSettings","PanelColorGradientSettings","__experimentalUnitControl","UnitControl","__experimentalBlockAlignmentMatrixControl","BlockAlignmentMatrixControl","__experimentalBlockFullHeightAligmentControl","FullHeightAlignmentControl","store","blockEditorStore","__","useSelect","useDispatch","cover","icon","isBlobURL","ALLOWED_MEDIA_TYPES","attributesFromMedia","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","COVER_MIN_HEIGHT","backgroundImageStyles","dimRatioToClass","isContentPositionCenter","getPositionClassName","__Visualizer","BoxControlVisualizer","getInnerBlocksTemplate","attributes","align","placeholder","retrieveFastAverageColor","fastAverageColor","CoverHeightInput","onChange","onUnitChange","unit","value","temporaryInput","setTemporaryInput","instanceId","inputId","isPx","units","availableUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","handleOnBlur","min","maxWidth","RESIZABLE_BOX_ENABLE_OPTION","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","ResizableCover","className","onResizeStart","onResize","onResizeStop","props","isResizing","setIsResizing","_event","_direction","elt","clientHeight","useCoverIsDark","url","dimRatio","overlayColor","elementRef","isDark","setIsDark","current","getColorAsync","color","mediaPosition","x","y","Math","round","isTemporaryMedia","id","CoverPlaceholder","disableMediaButtons","children","noticeUI","noticeOperations","onSelectMedia","style","removeAllNotices","createErrorNotice","title","instructions","message","CoverEdit","clientId","isSelected","setAttributes","setOverlayColor","toggleSelection","contentPosition","backgroundType","focalPoint","hasParallax","isRepeated","minHeight","minHeightUnit","styleAttribute","alt","allowedBlocks","templateLock","__unstableMarkNextChangeAsNotPersistent","gradientClass","gradientValue","setGradient","isUploadingMedia","prevMinHeightValue","setPrevMinHeightValue","prevMinHeightUnit","setPrevMinHeightUnit","isMinFullHeight","toggleMinFullHeight","toggleParallax","toggleIsRepeated","isDarkElement","isCoverDark","isImageBackground","isVideoBackground","minHeightWithUnit","isImgElement","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","ref","hasInnerBlocks","select","getBlock","innerBlocks","length","controls","nextPosition","newFocalPoint","newAlt","colorValue","onColorChange","onGradientChange","label","newDimRation","newMinHeight","nextUnit","blockProps","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","template","templateInsertUpdatesSelection","classes","spacing","padding","visualizers","class","backgroundImage"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport FastAverageColor from 'fast-average-color';\nimport { colord, extend } from 'colord';\nimport namesPlugin from 'colord/plugins/names';\n\n/**\n * WordPress dependencies\n */\nimport { Fragment, useEffect, useRef, useState } from '@wordpress/element';\nimport {\n\tBaseControl,\n\tButton,\n\tExternalLink,\n\tFocalPointPicker,\n\tPanelBody,\n\tPanelRow,\n\tRangeControl,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tToggleControl,\n\twithNotices,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalBoxControl as BoxControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { compose, useInstanceId } from '@wordpress/compose';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tInspectorControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSetting,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\t__experimentalPanelColorGradientSettings as PanelColorGradientSettings,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalBlockAlignmentMatrixControl as BlockAlignmentMatrixControl,\n\t__experimentalBlockFullHeightAligmentControl as FullHeightAlignmentControl,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { cover as icon } from '@wordpress/icons';\nimport { isBlobURL } from '@wordpress/blob';\n\n/**\n * Internal dependencies\n */\nimport {\n\tALLOWED_MEDIA_TYPES,\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tCOVER_MIN_HEIGHT,\n\tbackgroundImageStyles,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n} from './shared';\n\nextend( [ namesPlugin ] );\n\nconst { __Visualizer: BoxControlVisualizer } = BoxControl;\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\nfunction retrieveFastAverageColor() {\n\tif ( ! retrieveFastAverageColor.fastAverageColor ) {\n\t\tretrieveFastAverageColor.fastAverageColor = new FastAverageColor();\n\t}\n\treturn retrieveFastAverageColor.fastAverageColor;\n}\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst [ temporaryInput, setTemporaryInput ] = useState( null );\n\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\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, '%': 20, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\tsetTemporaryInput( unprocessedValue );\n\t\t\treturn;\n\t\t}\n\t\tsetTemporaryInput( null );\n\t\tonChange( inputValue );\n\t};\n\n\tconst handleOnBlur = () => {\n\t\tif ( temporaryInput !== null ) {\n\t\t\tsetTemporaryInput( null );\n\t\t}\n\t};\n\n\tconst inputValue = temporaryInput !== null ? temporaryInput : value;\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<BaseControl label={ __( 'Minimum height of cover' ) } id={ inputId }>\n\t\t\t<UnitControl\n\t\t\t\tid={ inputId }\n\t\t\t\tisResetValueOnUnitChange\n\t\t\t\tmin={ min }\n\t\t\t\tonBlur={ handleOnBlur }\n\t\t\t\tonChange={ handleOnChange }\n\t\t\t\tonUnitChange={ onUnitChange }\n\t\t\t\tstyle={ { maxWidth: 80 } }\n\t\t\t\tunit={ unit }\n\t\t\t\tunits={ units }\n\t\t\t\tvalue={ inputValue }\n\t\t\t/>\n\t\t</BaseControl>\n\t);\n}\n\nconst RESIZABLE_BOX_ENABLE_OPTION = {\n\ttop: false,\n\tright: false,\n\tbottom: true,\n\tleft: false,\n\ttopRight: false,\n\tbottomRight: false,\n\tbottomLeft: false,\n\ttopLeft: false,\n};\n\nfunction ResizableCover( {\n\tclassName,\n\tonResizeStart,\n\tonResize,\n\tonResizeStop,\n\t...props\n} ) {\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ classnames( className, {\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t} ) }\n\t\t\tenable={ RESIZABLE_BOX_ENABLE_OPTION }\n\t\t\tonResizeStart={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStart( elt.clientHeight );\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t} }\n\t\t\tonResize={ ( _event, _direction, elt ) => {\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t\tif ( ! isResizing ) {\n\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResizeStop={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStop( elt.clientHeight );\n\t\t\t\tsetIsResizing( false );\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n\n/**\n * useCoverIsDark is a hook that returns a boolean variable specifying if the cover\n * background is dark or not.\n *\n * @param {?string} url Url of the media background.\n * @param {?number} dimRatio Transparency of the overlay color. If an image and\n * color are set, dimRatio is used to decide what is used\n * for background darkness checking purposes.\n * @param {?string} overlayColor String containing the overlay color value if one exists.\n * @param {?Object} elementRef If a media background is set, elementRef should contain a reference to a\n * dom element that renders that media.\n *\n * @return {boolean} True if the cover background is considered \"dark\" and false otherwise.\n */\nfunction useCoverIsDark( url, dimRatio = 50, overlayColor, elementRef ) {\n\tconst [ isDark, setIsDark ] = useState( false );\n\tuseEffect( () => {\n\t\t// If opacity is lower than 50 the dominant color is the image or video color,\n\t\t// so use that color for the dark mode computation.\n\t\tif ( url && dimRatio <= 50 && elementRef.current ) {\n\t\t\tretrieveFastAverageColor().getColorAsync(\n\t\t\t\telementRef.current,\n\t\t\t\t( color ) => {\n\t\t\t\t\tsetIsDark( color.isDark );\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}, [ url, url && dimRatio <= 50 && elementRef.current, setIsDark ] );\n\tuseEffect( () => {\n\t\t// If opacity is greater than 50 the dominant color is the overlay color,\n\t\t// so use that color for the dark mode computation.\n\t\tif ( dimRatio > 50 || ! url ) {\n\t\t\tif ( ! overlayColor ) {\n\t\t\t\t// If no overlay color exists the overlay color is black (isDark )\n\t\t\t\tsetIsDark( true );\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tsetIsDark( colord( overlayColor ).isDark() );\n\t\t}\n\t}, [ overlayColor, dimRatio > 50 || ! url, setIsDark ] );\n\tuseEffect( () => {\n\t\tif ( ! url && ! overlayColor ) {\n\t\t\t// Reset isDark.\n\t\t\tsetIsDark( false );\n\t\t}\n\t}, [ ! url && ! overlayColor, setIsDark ] );\n\treturn isDark;\n}\n\nfunction mediaPosition( { x, y } ) {\n\treturn `${ Math.round( x * 100 ) }% ${ Math.round( y * 100 ) }%`;\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 CoverPlaceholder( {\n\tdisableMediaButtons = false,\n\tchildren,\n\tnoticeUI,\n\tnoticeOperations,\n\tonSelectMedia,\n\tstyle,\n} ) {\n\tconst { removeAllNotices, createErrorNotice } = noticeOperations;\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\tnotices={ noticeUI }\n\t\t\tdisableMediaButtons={ disableMediaButtons }\n\t\t\tonError={ ( message ) => {\n\t\t\t\tremoveAllNotices();\n\t\t\t\tcreateErrorNotice( message );\n\t\t\t} }\n\t\t\tstyle={ style }\n\t\t>\n\t\t\t{ children }\n\t\t</MediaPlaceholder>\n\t);\n}\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\tnoticeUI,\n\tnoticeOperations,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\tbackgroundType,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\tstyle: styleAttribute,\n\t\turl,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t} = attributes;\n\tconst { __unstableMarkNextChangeAsNotPersistent } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tconst {\n\t\tgradientClass,\n\t\tgradientValue,\n\t\tsetGradient,\n\t} = __experimentalUseGradient();\n\tconst onSelectMedia = attributesFromMedia( setAttributes, dimRatio );\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\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\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 toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst isDarkElement = useRef();\n\tconst isCoverDark = useCoverIsDark(\n\t\turl,\n\t\tdimRatio,\n\t\toverlayColor.color,\n\t\tisDarkElement\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\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = isDarkElement.current\n\t\t\t? [ isDarkElement.current.style, 'objectPosition' ]\n\t\t\t: [ ref.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\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 controls = (\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<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"image/*,video/*\"\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\tname={ ! url ? __( 'Add Media' ) : __( 'Replace' ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<PanelBody title={ __( 'Media settings' ) }>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<Fragment>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Fragment>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point picker' ) }\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ url && isImageBackground && isImgElement && (\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Alt text (alternative text)' ) }\n\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t'Leave empty if the image is purely decorative.'\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\tclassName=\"block-library-cover__reset-button\"\n\t\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\turl: undefined,\n\t\t\t\t\t\t\t\t\t\tid: undefined,\n\t\t\t\t\t\t\t\t\t\tbackgroundType: undefined,\n\t\t\t\t\t\t\t\t\t\tfocalPoint: undefined,\n\t\t\t\t\t\t\t\t\t\thasParallax: undefined,\n\t\t\t\t\t\t\t\t\t\tisRepeated: undefined,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Clear Media' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</PanelRow>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t<PanelColorGradientSettings\n\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\ttitle={ __( 'Overlay' ) }\n\t\t\t\t\tinitialOpen={ true }\n\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\tlabel: __( 'Color' ),\n\t\t\t\t\t\t},\n\t\t\t\t\t] }\n\t\t\t\t>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\tlabel={ __( 'Opacity' ) }\n\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\tonChange={ ( newDimRation ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdimRatio: newDimRation,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t</PanelColorGradientSettings>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={ minHeight }\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( { minHeight: newMinHeight } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t</>\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\tif ( ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\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\tnoticeUI={ noticeUI }\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tnoticeOperations={ noticeOperations }\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{ controls }\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<BoxControlVisualizer\n\t\t\t\t\tvalues={ styleAttribute?.spacing?.padding }\n\t\t\t\t\tshowValues={ styleAttribute?.visualizers?.padding }\n\t\t\t\t\tclassName=\"block-library-cover__padding-visualizer\"\n\t\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={ isDarkElement }\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={ isDarkElement }\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\tnoticeUI={ noticeUI }\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tnoticeOperations={ noticeOperations }\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\twithNotices,\n] )( CoverEdit );\n"]}
|
|
@@ -70,7 +70,7 @@ const Cover = _ref => {
|
|
|
70
70
|
} = attributes;
|
|
71
71
|
const [isScreenReaderEnabled, setIsScreenReaderEnabled] = useState(false);
|
|
72
72
|
useEffect(() => {
|
|
73
|
-
let isCurrent = true; //
|
|
73
|
+
let isCurrent = true; // Sync with local media store.
|
|
74
74
|
|
|
75
75
|
mediaUploadSync();
|
|
76
76
|
const a11yInfoChangeSubscription = AccessibilityInfo.addEventListener('screenReaderChanged', setIsScreenReaderEnabled);
|
|
@@ -106,17 +106,17 @@ const Cover = _ref => {
|
|
|
106
106
|
// it will use that color instead.
|
|
107
107
|
|
|
108
108
|
useEffect(() => {
|
|
109
|
-
// While we don't support theme colors
|
|
109
|
+
// While we don't support theme colors.
|
|
110
110
|
if (!attributes.overlayColor || !attributes.overlay && url) {
|
|
111
111
|
setAttributes({
|
|
112
112
|
childrenStyles: styles.defaultColor
|
|
113
113
|
});
|
|
114
114
|
}
|
|
115
|
-
}, [setAttributes]); //
|
|
115
|
+
}, [setAttributes]); // Initialize uploading flag to false, awaiting sync.
|
|
116
116
|
|
|
117
|
-
const [isUploadInProgress, setIsUploadInProgress] = useState(false); //
|
|
117
|
+
const [isUploadInProgress, setIsUploadInProgress] = useState(false); // Initialize upload failure flag to true if url is local.
|
|
118
118
|
|
|
119
|
-
const [didUploadFail, setDidUploadFail] = useState(id && getProtocol(url) === 'file:'); //
|
|
119
|
+
const [didUploadFail, setDidUploadFail] = useState(id && getProtocol(url) === 'file:'); // Don't show failure if upload is in progress.
|
|
120
120
|
|
|
121
121
|
const shouldShowFailure = didUploadFail && !isUploadInProgress;
|
|
122
122
|
|
|
@@ -161,7 +161,7 @@ const Cover = _ref => {
|
|
|
161
161
|
|
|
162
162
|
const colorValue = getColorObjectByColorValue(colorsDefault, color);
|
|
163
163
|
setAttributes({
|
|
164
|
-
//
|
|
164
|
+
// Clear all related attributes (only one should be set).
|
|
165
165
|
overlayColor: (_colorValue$slug = colorValue === null || colorValue === void 0 ? void 0 : colorValue.slug) !== null && _colorValue$slug !== void 0 ? _colorValue$slug : undefined,
|
|
166
166
|
customOverlayColor: (_ref2 = !(colorValue !== null && colorValue !== void 0 && colorValue.slug) && color) !== null && _ref2 !== void 0 ? _ref2 : undefined,
|
|
167
167
|
gradient: undefined,
|
|
@@ -180,7 +180,7 @@ const Cover = _ref => {
|
|
|
180
180
|
opacity: dimRatio / 100
|
|
181
181
|
}, !gradientValue && {
|
|
182
182
|
backgroundColor: customOverlayColor || (overlayColorValue === null || overlayColorValue === void 0 ? void 0 : overlayColorValue.color) || (style === null || style === void 0 ? void 0 : (_style$color = style.color) === null || _style$color === void 0 ? void 0 : _style$color.background) || ((_styles$overlay = styles.overlay) === null || _styles$overlay === void 0 ? void 0 : _styles$overlay.color)
|
|
183
|
-
}, // While we don't support theme colors we add a default bg color
|
|
183
|
+
}, // While we don't support theme colors we add a default bg color.
|
|
184
184
|
!overlayColorValue.color && !url ? backgroundColor : {}, isImage && isParentSelected && !isUploadInProgress && !didUploadFail && styles.overlaySelected];
|
|
185
185
|
const placeholderIconStyle = getStylesFromColorScheme(styles.icon, styles.iconDark);
|
|
186
186
|
const placeholderIcon = createElement(Icon, _extends({
|
|
@@ -301,7 +301,7 @@ const Cover = _ref => {
|
|
|
301
301
|
},
|
|
302
302
|
onLoad: onVideoLoad,
|
|
303
303
|
onLoadStart: onVideoLoadStart,
|
|
304
|
-
style: [styles.background, // Hide Video component since it has black background while loading the source
|
|
304
|
+
style: [styles.background, // Hide Video component since it has black background while loading the source.
|
|
305
305
|
{
|
|
306
306
|
opacity: isVideoLoading ? 0 : 1
|
|
307
307
|
}]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/cover/edit.native.js"],"names":["View","TouchableWithoutFeedback","InteractionManager","AccessibilityInfo","Platform","Video","requestImageFailedRetryDialog","requestImageUploadCancelDialog","requestImageFullscreenPreview","mediaUploadSync","__","Icon","Image","ImageEditingButton","IMAGE_DEFAULT_FOCAL_POINT","ToolbarButton","Gradient","ColorPalette","ColorPicker","BottomSheetConsumer","useConvertUnitToMobile","useMobileGlobalStylesColors","BlockControls","InnerBlocks","InspectorControls","MEDIA_TYPE_IMAGE","MediaPlaceholder","MediaUpload","MediaUploadProgress","getColorObjectByColorValue","getColorObjectByAttributeValues","getGradientValueBySlug","store","blockEditorStore","compose","withPreferredColorScheme","withSelect","withDispatch","useEffect","useState","useRef","useCallback","useMemo","cover","icon","replace","image","warning","getProtocol","editPostStore","styles","attributesFromMedia","ALLOWED_MEDIA_TYPES","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","COVER_DEFAULT_HEIGHT","Controls","INNER_BLOCKS_TEMPLATE","align","placeholder","Cover","attributes","getStylesFromColorScheme","isParentSelected","onFocus","setAttributes","openGeneralSidebar","closeSettingsBottomSheet","isSelected","selectBlock","blockWidth","hasInnerBlocks","backgroundType","dimRatio","focalPoint","minHeight","url","id","style","customOverlayColor","minHeightUnit","allowedBlocks","templateLock","customGradient","gradient","overlayColor","isScreenReaderEnabled","setIsScreenReaderEnabled","isCurrent","a11yInfoChangeSubscription","addEventListener","then","remove","convertedMinHeight","isImage","THEME_COLORS_COUNT","colorsDefault","coverDefaultPalette","colors","slice","gradients","gradientValue","overlayColorValue","hasBackground","color","background","hasOnlyColorBackground","isCustomColorPickerShowing","setCustomColorPickerShowing","openMediaOptionsRef","overlay","childrenStyles","defaultColor","isUploadInProgress","setIsUploadInProgress","didUploadFail","setDidUploadFail","shouldShowFailure","onSelectMedia","media","onSelect","onMediaPressed","isVideoLoading","setIsVideoLoading","onVideoLoadStart","onVideoLoad","onClearMedia","undefined","hasParallax","setColor","colorValue","slug","openColorPicker","backgroundColor","backgroundSolid","backgroundSolidDark","overlayStyles","opacity","overlaySelected","placeholderIconStyle","iconDark","placeholderIcon","toolbarControls","open","accessibilityHint","OS","addMediaButton","current","selectImageContainer","selectImage","selectImageIcon","onBottomSheetClosed","runAfterInteractions","colorPickerControls","shouldEnableBottomSheetScroll","shouldEnableBottomSheetMaxHeight","onHandleClosingBottomSheet","onHandleHardwareButtonPress","isBottomSheetContentScrolling","renderContent","getMediaOptions","renderBackground","mediaServerId","mediaUrl","imageContainer","width","uri","mediaPlaceholderEmptyStateContainer","height","title","colorPaletteWrapper","paletteColorIndicator","paletteCustomIndicatorWrapper","backgroundContainer","content","overlayContainer","imageEditButton","destructiveButton","label","onPress","separated","value","uploadFailedContainer","uploadFailed","uploadFailedIcon","select","clientId","getSelectedBlockClientId","getBlock","selectedBlockClientId","getSettings","innerBlocks","length","settings","dispatch","closeGeneralSidebar"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tTouchableWithoutFeedback,\n\tInteractionManager,\n\tAccessibilityInfo,\n\tPlatform,\n} from 'react-native';\nimport Video from 'react-native-video';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestImageFailedRetryDialog,\n\trequestImageUploadCancelDialog,\n\trequestImageFullscreenPreview,\n\tmediaUploadSync,\n} from '@wordpress/react-native-bridge';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tIcon,\n\tImage,\n\tImageEditingButton,\n\tIMAGE_DEFAULT_FOCAL_POINT,\n\tToolbarButton,\n\tGradient,\n\tColorPalette,\n\tColorPicker,\n\tBottomSheetConsumer,\n\tuseConvertUnitToMobile,\n\tuseMobileGlobalStylesColors,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tInnerBlocks,\n\tInspectorControls,\n\tMEDIA_TYPE_IMAGE,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tgetColorObjectByColorValue,\n\tgetColorObjectByAttributeValues,\n\tgetGradientValueBySlug,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport {\n\tuseEffect,\n\tuseState,\n\tuseRef,\n\tuseCallback,\n\tuseMemo,\n} from '@wordpress/element';\nimport { cover as icon, replace, image, warning } from '@wordpress/icons';\nimport { getProtocol } from '@wordpress/url';\nimport { store as editPostStore } from '@wordpress/edit-post';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport {\n\tattributesFromMedia,\n\tALLOWED_MEDIA_TYPES,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tCOVER_DEFAULT_HEIGHT,\n} from './shared';\nimport Controls from './controls';\n\n/**\n * Constants\n */\nconst INNER_BLOCKS_TEMPLATE = [\n\t[\n\t\t'core/paragraph',\n\t\t{\n\t\t\talign: 'center',\n\t\t\tplaceholder: __( 'Write title…' ),\n\t\t},\n\t],\n];\n\nconst Cover = ( {\n\tattributes,\n\tgetStylesFromColorScheme,\n\tisParentSelected,\n\tonFocus,\n\tsetAttributes,\n\topenGeneralSidebar,\n\tcloseSettingsBottomSheet,\n\tisSelected,\n\tselectBlock,\n\tblockWidth,\n\thasInnerBlocks,\n} ) => {\n\tconst {\n\t\tbackgroundType,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\tminHeight,\n\t\turl,\n\t\tid,\n\t\tstyle,\n\t\tcustomOverlayColor,\n\t\tminHeightUnit = 'px',\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t\tcustomGradient,\n\t\tgradient,\n\t\toverlayColor,\n\t} = attributes;\n\tconst [ isScreenReaderEnabled, setIsScreenReaderEnabled ] = useState(\n\t\tfalse\n\t);\n\n\tuseEffect( () => {\n\t\tlet isCurrent = true;\n\n\t\t// sync with local media store\n\t\tmediaUploadSync();\n\t\tconst a11yInfoChangeSubscription = AccessibilityInfo.addEventListener(\n\t\t\t'screenReaderChanged',\n\t\t\tsetIsScreenReaderEnabled\n\t\t);\n\n\t\tAccessibilityInfo.isScreenReaderEnabled().then( () => {\n\t\t\tif ( isCurrent ) {\n\t\t\t\tsetIsScreenReaderEnabled();\n\t\t\t}\n\t\t} );\n\n\t\treturn () => {\n\t\t\tisCurrent = false;\n\t\t\ta11yInfoChangeSubscription.remove();\n\t\t};\n\t}, [] );\n\n\tconst convertedMinHeight = useConvertUnitToMobile(\n\t\tminHeight || COVER_DEFAULT_HEIGHT,\n\t\tminHeightUnit\n\t);\n\n\tconst isImage = backgroundType === MEDIA_TYPE_IMAGE;\n\n\tconst THEME_COLORS_COUNT = 4;\n\tconst colorsDefault = useMobileGlobalStylesColors();\n\tconst coverDefaultPalette = useMemo( () => {\n\t\treturn {\n\t\t\tcolors: colorsDefault.slice( 0, THEME_COLORS_COUNT ),\n\t\t};\n\t}, [ colorsDefault ] );\n\tconst gradients = useMobileGlobalStylesColors( 'gradients' );\n\tconst gradientValue =\n\t\tcustomGradient || getGradientValueBySlug( gradients, gradient );\n\tconst overlayColorValue = getColorObjectByAttributeValues(\n\t\tcolorsDefault,\n\t\toverlayColor\n\t);\n\n\tconst hasBackground = !! (\n\t\turl ||\n\t\t( style && style.color && style.color.background ) ||\n\t\tattributes.overlayColor ||\n\t\toverlayColorValue.color ||\n\t\tcustomOverlayColor ||\n\t\tgradientValue\n\t);\n\n\tconst hasOnlyColorBackground = ! url && ( hasBackground || hasInnerBlocks );\n\n\tconst [\n\t\tisCustomColorPickerShowing,\n\t\tsetCustomColorPickerShowing,\n\t] = useState( false );\n\n\tconst openMediaOptionsRef = useRef();\n\n\t// Used to set a default color for its InnerBlocks\n\t// since there's no system to inherit styles yet\n\t// the RichText component will check if there are\n\t// parent styles for the current block. If there are,\n\t// it will use that color instead.\n\tuseEffect( () => {\n\t\t// While we don't support theme colors\n\t\tif ( ! attributes.overlayColor || ( ! attributes.overlay && url ) ) {\n\t\t\tsetAttributes( { childrenStyles: styles.defaultColor } );\n\t\t}\n\t}, [ setAttributes ] );\n\n\t// initialize uploading flag to false, awaiting sync\n\tconst [ isUploadInProgress, setIsUploadInProgress ] = useState( false );\n\n\t// initialize upload failure flag to true if url is local\n\tconst [ didUploadFail, setDidUploadFail ] = useState(\n\t\tid && getProtocol( url ) === 'file:'\n\t);\n\n\t// don't show failure if upload is in progress\n\tconst shouldShowFailure = didUploadFail && ! isUploadInProgress;\n\n\tconst onSelectMedia = ( media ) => {\n\t\tsetDidUploadFail( false );\n\t\tconst onSelect = attributesFromMedia( setAttributes, dimRatio );\n\t\tonSelect( media );\n\t};\n\n\tconst onMediaPressed = () => {\n\t\tif ( isUploadInProgress ) {\n\t\t\trequestImageUploadCancelDialog( id );\n\t\t} else if ( shouldShowFailure ) {\n\t\t\trequestImageFailedRetryDialog( id );\n\t\t} else if ( isImage && url ) {\n\t\t\trequestImageFullscreenPreview( url );\n\t\t}\n\t};\n\n\tconst [ isVideoLoading, setIsVideoLoading ] = useState( true );\n\n\tconst onVideoLoadStart = () => {\n\t\tsetIsVideoLoading( true );\n\t};\n\n\tconst onVideoLoad = () => {\n\t\tsetIsVideoLoading( false );\n\t};\n\n\tconst onClearMedia = useCallback( () => {\n\t\tsetAttributes( {\n\t\t\tfocalPoint: undefined,\n\t\t\thasParallax: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t} );\n\t\tcloseSettingsBottomSheet();\n\t}, [ closeSettingsBottomSheet ] );\n\n\tfunction setColor( color ) {\n\t\tconst colorValue = getColorObjectByColorValue( colorsDefault, color );\n\n\t\tsetAttributes( {\n\t\t\t// clear all related attributes (only one should be set)\n\t\t\toverlayColor: colorValue?.slug ?? undefined,\n\t\t\tcustomOverlayColor: ( ! colorValue?.slug && color ) ?? undefined,\n\t\t\tgradient: undefined,\n\t\t\tcustomGradient: undefined,\n\t\t} );\n\t}\n\n\tfunction openColorPicker() {\n\t\tselectBlock();\n\t\tsetCustomColorPickerShowing( true );\n\t\topenGeneralSidebar();\n\t}\n\n\tconst backgroundColor = getStylesFromColorScheme(\n\t\tstyles.backgroundSolid,\n\t\tstyles.backgroundSolidDark\n\t);\n\n\tconst overlayStyles = [\n\t\tstyles.overlay,\n\t\turl && { opacity: dimRatio / 100 },\n\t\t! gradientValue && {\n\t\t\tbackgroundColor:\n\t\t\t\tcustomOverlayColor ||\n\t\t\t\toverlayColorValue?.color ||\n\t\t\t\tstyle?.color?.background ||\n\t\t\t\tstyles.overlay?.color,\n\t\t},\n\t\t// While we don't support theme colors we add a default bg color\n\t\t! overlayColorValue.color && ! url ? backgroundColor : {},\n\t\tisImage &&\n\t\t\tisParentSelected &&\n\t\t\t! isUploadInProgress &&\n\t\t\t! didUploadFail &&\n\t\t\tstyles.overlaySelected,\n\t];\n\n\tconst placeholderIconStyle = getStylesFromColorScheme(\n\t\tstyles.icon,\n\t\tstyles.iconDark\n\t);\n\n\tconst placeholderIcon = <Icon icon={ icon } { ...placeholderIconStyle } />;\n\n\tconst toolbarControls = ( open ) => (\n\t\t<BlockControls group=\"other\">\n\t\t\t<ToolbarButton\n\t\t\t\ttitle={ __( 'Edit cover media' ) }\n\t\t\t\ticon={ replace }\n\t\t\t\tonClick={ open }\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\n\tconst accessibilityHint =\n\t\tPlatform.OS === 'ios'\n\t\t\t? __( 'Double tap to open Action Sheet to add image or video' )\n\t\t\t: __( 'Double tap to open Bottom Sheet to add image or video' );\n\n\tconst addMediaButton = () => (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessibilityHint={ accessibilityHint }\n\t\t\taccessibilityLabel={ __( 'Add image or video' ) }\n\t\t\taccessibilityRole=\"button\"\n\t\t\tonPress={ openMediaOptionsRef.current }\n\t\t>\n\t\t\t<View style={ styles.selectImageContainer }>\n\t\t\t\t<View style={ styles.selectImage }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tsize={ 16 }\n\t\t\t\t\t\ticon={ image }\n\t\t\t\t\t\t{ ...styles.selectImageIcon }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n\n\tconst onBottomSheetClosed = useCallback( () => {\n\t\tInteractionManager.runAfterInteractions( () => {\n\t\t\tsetCustomColorPickerShowing( false );\n\t\t} );\n\t}, [] );\n\n\tconst colorPickerControls = (\n\t\t<InspectorControls>\n\t\t\t<BottomSheetConsumer>\n\t\t\t\t{ ( {\n\t\t\t\t\tshouldEnableBottomSheetScroll,\n\t\t\t\t\tshouldEnableBottomSheetMaxHeight,\n\t\t\t\t\tonHandleClosingBottomSheet,\n\t\t\t\t\tonHandleHardwareButtonPress,\n\t\t\t\t\tisBottomSheetContentScrolling,\n\t\t\t\t} ) => (\n\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\tshouldEnableBottomSheetScroll={\n\t\t\t\t\t\t\tshouldEnableBottomSheetScroll\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshouldEnableBottomSheetMaxHeight={\n\t\t\t\t\t\t\tshouldEnableBottomSheetMaxHeight\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetColor={ setColor }\n\t\t\t\t\t\tonNavigationBack={ closeSettingsBottomSheet }\n\t\t\t\t\t\tonHandleClosingBottomSheet={\n\t\t\t\t\t\t\tonHandleClosingBottomSheet\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonHandleHardwareButtonPress={\n\t\t\t\t\t\t\tonHandleHardwareButtonPress\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonBottomSheetClosed={ onBottomSheetClosed }\n\t\t\t\t\t\tisBottomSheetContentScrolling={\n\t\t\t\t\t\t\tisBottomSheetContentScrolling\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbottomLabelText={ __( 'Select a color' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BottomSheetConsumer>\n\t\t</InspectorControls>\n\t);\n\n\tconst renderContent = ( getMediaOptions ) => (\n\t\t<>\n\t\t\t{ renderBackground( getMediaOptions ) }\n\t\t\t{ isParentSelected && hasOnlyColorBackground && addMediaButton() }\n\t\t</>\n\t);\n\n\tconst renderBackground = ( getMediaOptions ) => (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessible={ ! isParentSelected }\n\t\t\tonPress={ onMediaPressed }\n\t\t\tonLongPress={ openMediaOptionsRef.current }\n\t\t\tdisabled={ ! isParentSelected }\n\t\t>\n\t\t\t<View style={ [ styles.background, backgroundColor ] }>\n\t\t\t\t{ getMediaOptions() }\n\t\t\t\t{ isParentSelected &&\n\t\t\t\t\tbackgroundType === VIDEO_BACKGROUND_TYPE &&\n\t\t\t\t\ttoolbarControls( openMediaOptionsRef.current ) }\n\t\t\t\t<MediaUploadProgress\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tonUpdateMediaProgress={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( true );\n\t\t\t\t\t} }\n\t\t\t\t\tonFinishMediaUploadWithSuccess={ ( {\n\t\t\t\t\t\tmediaServerId,\n\t\t\t\t\t\tmediaUrl,\n\t\t\t\t\t} ) => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( false );\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tid: mediaServerId,\n\t\t\t\t\t\t\turl: mediaUrl,\n\t\t\t\t\t\t\tbackgroundType,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tonFinishMediaUploadWithFailure={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( true );\n\t\t\t\t\t} }\n\t\t\t\t\tonMediaUploadStateReset={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( false );\n\t\t\t\t\t\tsetAttributes( { id: undefined, url: undefined } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\n\t\t\t\t{ IMAGE_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t<View style={ styles.imageContainer }>\n\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\teditButton={ false }\n\t\t\t\t\t\t\tfocalPoint={\n\t\t\t\t\t\t\t\tfocalPoint || IMAGE_DEFAULT_FOCAL_POINT\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisSelected={ isParentSelected }\n\t\t\t\t\t\t\tisUploadFailed={ didUploadFail }\n\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\tonSelectMediaUploadOption={ onSelectMedia }\n\t\t\t\t\t\t\topenMediaOptions={ openMediaOptionsRef.current }\n\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\twidth={ styles.image?.width }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\n\t\t\t\t{ VIDEO_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t<Video\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tdisableFocus\n\t\t\t\t\t\trepeat\n\t\t\t\t\t\tresizeMode={ 'cover' }\n\t\t\t\t\t\tsource={ { uri: url } }\n\t\t\t\t\t\tonLoad={ onVideoLoad }\n\t\t\t\t\t\tonLoadStart={ onVideoLoadStart }\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\tstyles.background,\n\t\t\t\t\t\t\t// Hide Video component since it has black background while loading the source\n\t\t\t\t\t\t\t{ opacity: isVideoLoading ? 0 : 1 },\n\t\t\t\t\t\t] }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n\n\tif (\n\t\t( ! hasBackground && ! hasInnerBlocks ) ||\n\t\tisCustomColorPickerShowing\n\t) {\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t{ isCustomColorPickerShowing && colorPickerControls }\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\theight={\n\t\t\t\t\t\tstyles.mediaPlaceholderEmptyStateContainer?.height\n\t\t\t\t\t}\n\t\t\t\t\tbackgroundColor={ customOverlayColor }\n\t\t\t\t\thideContent={\n\t\t\t\t\t\tcustomOverlayColor !== '' &&\n\t\t\t\t\t\tcustomOverlayColor !== undefined\n\t\t\t\t\t}\n\t\t\t\t\ticon={ placeholderIcon }\n\t\t\t\t\tlabels={ {\n\t\t\t\t\t\ttitle: __( 'Cover' ),\n\t\t\t\t\t} }\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ styles.colorPaletteWrapper }\n\t\t\t\t\t\tpointerEvents={\n\t\t\t\t\t\t\tisScreenReaderEnabled ? 'none' : 'auto'\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<BottomSheetConsumer>\n\t\t\t\t\t\t\t{ ( { shouldEnableBottomSheetScroll } ) => (\n\t\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\t\tcustomColorIndicatorStyles={\n\t\t\t\t\t\t\t\t\t\tstyles.paletteColorIndicator\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tcustomIndicatorWrapperStyles={\n\t\t\t\t\t\t\t\t\t\tstyles.paletteCustomIndicatorWrapper\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tsetColor={ setColor }\n\t\t\t\t\t\t\t\t\tonCustomPress={ openColorPicker }\n\t\t\t\t\t\t\t\t\tdefaultSettings={ coverDefaultPalette }\n\t\t\t\t\t\t\t\t\tshouldShowCustomLabel={ false }\n\t\t\t\t\t\t\t\t\tshouldShowCustomVerticalSeparator={ false }\n\t\t\t\t\t\t\t\t\tshouldEnableBottomSheetScroll={\n\t\t\t\t\t\t\t\t\t\tshouldEnableBottomSheetScroll\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BottomSheetConsumer>\n\t\t\t\t\t</View>\n\t\t\t\t</MediaPlaceholder>\n\t\t\t</View>\n\t\t);\n\t}\n\n\treturn (\n\t\t<View style={ styles.backgroundContainer }>\n\t\t\t{ isSelected && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<Controls\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tdidUploadFail={ didUploadFail }\n\t\t\t\t\t\thasOnlyColorBackground={ hasOnlyColorBackground }\n\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\tonClearMedia={ onClearMedia }\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\n\t\t\t<View\n\t\t\t\tpointerEvents=\"box-none\"\n\t\t\t\tstyle={ [ styles.content, { minHeight: convertedMinHeight } ] }\n\t\t\t>\n\t\t\t\t<InnerBlocks\n\t\t\t\t\tallowedBlocks={ allowedBlocks }\n\t\t\t\t\ttemplate={ INNER_BLOCKS_TEMPLATE }\n\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\ttemplateInsertUpdatesSelection\n\t\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\t/>\n\t\t\t</View>\n\n\t\t\t<View pointerEvents=\"none\" style={ styles.overlayContainer }>\n\t\t\t\t<View style={ overlayStyles }>\n\t\t\t\t\t{ gradientValue && (\n\t\t\t\t\t\t<Gradient\n\t\t\t\t\t\t\tgradientValue={ gradientValue }\n\t\t\t\t\t\t\tstyle={ styles.background }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</View>\n\t\t\t</View>\n\n\t\t\t<MediaUpload\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tisReplacingMedia={ ! hasOnlyColorBackground }\n\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\topenMediaOptionsRef.current = open;\n\t\t\t\t\treturn renderContent( getMediaOptions );\n\t\t\t\t} }\n\t\t\t/>\n\n\t\t\t{ isImage &&\n\t\t\t\turl &&\n\t\t\t\topenMediaOptionsRef.current &&\n\t\t\t\tisParentSelected &&\n\t\t\t\t! isUploadInProgress &&\n\t\t\t\t! didUploadFail && (\n\t\t\t\t\t<View style={ styles.imageEditButton }>\n\t\t\t\t\t\t<ImageEditingButton\n\t\t\t\t\t\t\tonSelectMediaUploadOption={ onSelectMedia }\n\t\t\t\t\t\t\topenMediaOptions={ openMediaOptionsRef.current }\n\t\t\t\t\t\t\tpickerOptions={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdestructiveButton: true,\n\t\t\t\t\t\t\t\t\tid: 'clearMedia',\n\t\t\t\t\t\t\t\t\tlabel: __( 'Clear Media' ),\n\t\t\t\t\t\t\t\t\tonPress: onClearMedia,\n\t\t\t\t\t\t\t\t\tseparated: true,\n\t\t\t\t\t\t\t\t\tvalue: 'clearMedia',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\n\t\t\t{ shouldShowFailure && (\n\t\t\t\t<View\n\t\t\t\t\tpointerEvents=\"none\"\n\t\t\t\t\tstyle={ styles.uploadFailedContainer }\n\t\t\t\t>\n\t\t\t\t\t<View style={ styles.uploadFailed }>\n\t\t\t\t\t\t<Icon icon={ warning } { ...styles.uploadFailedIcon } />\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t) }\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getSelectedBlockClientId, getBlock } = select(\n\t\t\tblockEditorStore\n\t\t);\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\n\t\tconst { getSettings } = select( blockEditorStore );\n\n\t\tconst hasInnerBlocks = getBlock( clientId )?.innerBlocks.length > 0;\n\n\t\treturn {\n\t\t\tsettings: getSettings(),\n\t\t\tisParentSelected: selectedBlockClientId === clientId,\n\t\t\thasInnerBlocks,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { clientId } ) => {\n\t\tconst { openGeneralSidebar } = dispatch( editPostStore );\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\n\t\treturn {\n\t\t\topenGeneralSidebar: () => openGeneralSidebar( 'edit-post/block' ),\n\t\t\tcloseSettingsBottomSheet() {\n\t\t\t\tdispatch( editPostStore ).closeGeneralSidebar();\n\t\t\t},\n\t\t\tselectBlock: () => selectBlock( clientId ),\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( Cover );\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/cover/edit.native.js"],"names":["View","TouchableWithoutFeedback","InteractionManager","AccessibilityInfo","Platform","Video","requestImageFailedRetryDialog","requestImageUploadCancelDialog","requestImageFullscreenPreview","mediaUploadSync","__","Icon","Image","ImageEditingButton","IMAGE_DEFAULT_FOCAL_POINT","ToolbarButton","Gradient","ColorPalette","ColorPicker","BottomSheetConsumer","useConvertUnitToMobile","useMobileGlobalStylesColors","BlockControls","InnerBlocks","InspectorControls","MEDIA_TYPE_IMAGE","MediaPlaceholder","MediaUpload","MediaUploadProgress","getColorObjectByColorValue","getColorObjectByAttributeValues","getGradientValueBySlug","store","blockEditorStore","compose","withPreferredColorScheme","withSelect","withDispatch","useEffect","useState","useRef","useCallback","useMemo","cover","icon","replace","image","warning","getProtocol","editPostStore","styles","attributesFromMedia","ALLOWED_MEDIA_TYPES","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","COVER_DEFAULT_HEIGHT","Controls","INNER_BLOCKS_TEMPLATE","align","placeholder","Cover","attributes","getStylesFromColorScheme","isParentSelected","onFocus","setAttributes","openGeneralSidebar","closeSettingsBottomSheet","isSelected","selectBlock","blockWidth","hasInnerBlocks","backgroundType","dimRatio","focalPoint","minHeight","url","id","style","customOverlayColor","minHeightUnit","allowedBlocks","templateLock","customGradient","gradient","overlayColor","isScreenReaderEnabled","setIsScreenReaderEnabled","isCurrent","a11yInfoChangeSubscription","addEventListener","then","remove","convertedMinHeight","isImage","THEME_COLORS_COUNT","colorsDefault","coverDefaultPalette","colors","slice","gradients","gradientValue","overlayColorValue","hasBackground","color","background","hasOnlyColorBackground","isCustomColorPickerShowing","setCustomColorPickerShowing","openMediaOptionsRef","overlay","childrenStyles","defaultColor","isUploadInProgress","setIsUploadInProgress","didUploadFail","setDidUploadFail","shouldShowFailure","onSelectMedia","media","onSelect","onMediaPressed","isVideoLoading","setIsVideoLoading","onVideoLoadStart","onVideoLoad","onClearMedia","undefined","hasParallax","setColor","colorValue","slug","openColorPicker","backgroundColor","backgroundSolid","backgroundSolidDark","overlayStyles","opacity","overlaySelected","placeholderIconStyle","iconDark","placeholderIcon","toolbarControls","open","accessibilityHint","OS","addMediaButton","current","selectImageContainer","selectImage","selectImageIcon","onBottomSheetClosed","runAfterInteractions","colorPickerControls","shouldEnableBottomSheetScroll","shouldEnableBottomSheetMaxHeight","onHandleClosingBottomSheet","onHandleHardwareButtonPress","isBottomSheetContentScrolling","renderContent","getMediaOptions","renderBackground","mediaServerId","mediaUrl","imageContainer","width","uri","mediaPlaceholderEmptyStateContainer","height","title","colorPaletteWrapper","paletteColorIndicator","paletteCustomIndicatorWrapper","backgroundContainer","content","overlayContainer","imageEditButton","destructiveButton","label","onPress","separated","value","uploadFailedContainer","uploadFailed","uploadFailedIcon","select","clientId","getSelectedBlockClientId","getBlock","selectedBlockClientId","getSettings","innerBlocks","length","settings","dispatch","closeGeneralSidebar"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tView,\n\tTouchableWithoutFeedback,\n\tInteractionManager,\n\tAccessibilityInfo,\n\tPlatform,\n} from 'react-native';\nimport Video from 'react-native-video';\n\n/**\n * WordPress dependencies\n */\nimport {\n\trequestImageFailedRetryDialog,\n\trequestImageUploadCancelDialog,\n\trequestImageFullscreenPreview,\n\tmediaUploadSync,\n} from '@wordpress/react-native-bridge';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tIcon,\n\tImage,\n\tImageEditingButton,\n\tIMAGE_DEFAULT_FOCAL_POINT,\n\tToolbarButton,\n\tGradient,\n\tColorPalette,\n\tColorPicker,\n\tBottomSheetConsumer,\n\tuseConvertUnitToMobile,\n\tuseMobileGlobalStylesColors,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tInnerBlocks,\n\tInspectorControls,\n\tMEDIA_TYPE_IMAGE,\n\tMediaPlaceholder,\n\tMediaUpload,\n\tMediaUploadProgress,\n\tgetColorObjectByColorValue,\n\tgetColorObjectByAttributeValues,\n\tgetGradientValueBySlug,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { compose, withPreferredColorScheme } from '@wordpress/compose';\nimport { withSelect, withDispatch } from '@wordpress/data';\nimport {\n\tuseEffect,\n\tuseState,\n\tuseRef,\n\tuseCallback,\n\tuseMemo,\n} from '@wordpress/element';\nimport { cover as icon, replace, image, warning } from '@wordpress/icons';\nimport { getProtocol } from '@wordpress/url';\nimport { store as editPostStore } from '@wordpress/edit-post';\n\n/**\n * Internal dependencies\n */\nimport styles from './style.scss';\nimport {\n\tattributesFromMedia,\n\tALLOWED_MEDIA_TYPES,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tCOVER_DEFAULT_HEIGHT,\n} from './shared';\nimport Controls from './controls';\n\n/**\n * Constants\n */\nconst INNER_BLOCKS_TEMPLATE = [\n\t[\n\t\t'core/paragraph',\n\t\t{\n\t\t\talign: 'center',\n\t\t\tplaceholder: __( 'Write title…' ),\n\t\t},\n\t],\n];\n\nconst Cover = ( {\n\tattributes,\n\tgetStylesFromColorScheme,\n\tisParentSelected,\n\tonFocus,\n\tsetAttributes,\n\topenGeneralSidebar,\n\tcloseSettingsBottomSheet,\n\tisSelected,\n\tselectBlock,\n\tblockWidth,\n\thasInnerBlocks,\n} ) => {\n\tconst {\n\t\tbackgroundType,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\tminHeight,\n\t\turl,\n\t\tid,\n\t\tstyle,\n\t\tcustomOverlayColor,\n\t\tminHeightUnit = 'px',\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t\tcustomGradient,\n\t\tgradient,\n\t\toverlayColor,\n\t} = attributes;\n\tconst [ isScreenReaderEnabled, setIsScreenReaderEnabled ] = useState(\n\t\tfalse\n\t);\n\n\tuseEffect( () => {\n\t\tlet isCurrent = true;\n\n\t\t// Sync with local media store.\n\t\tmediaUploadSync();\n\t\tconst a11yInfoChangeSubscription = AccessibilityInfo.addEventListener(\n\t\t\t'screenReaderChanged',\n\t\t\tsetIsScreenReaderEnabled\n\t\t);\n\n\t\tAccessibilityInfo.isScreenReaderEnabled().then( () => {\n\t\t\tif ( isCurrent ) {\n\t\t\t\tsetIsScreenReaderEnabled();\n\t\t\t}\n\t\t} );\n\n\t\treturn () => {\n\t\t\tisCurrent = false;\n\t\t\ta11yInfoChangeSubscription.remove();\n\t\t};\n\t}, [] );\n\n\tconst convertedMinHeight = useConvertUnitToMobile(\n\t\tminHeight || COVER_DEFAULT_HEIGHT,\n\t\tminHeightUnit\n\t);\n\n\tconst isImage = backgroundType === MEDIA_TYPE_IMAGE;\n\n\tconst THEME_COLORS_COUNT = 4;\n\tconst colorsDefault = useMobileGlobalStylesColors();\n\tconst coverDefaultPalette = useMemo( () => {\n\t\treturn {\n\t\t\tcolors: colorsDefault.slice( 0, THEME_COLORS_COUNT ),\n\t\t};\n\t}, [ colorsDefault ] );\n\tconst gradients = useMobileGlobalStylesColors( 'gradients' );\n\tconst gradientValue =\n\t\tcustomGradient || getGradientValueBySlug( gradients, gradient );\n\tconst overlayColorValue = getColorObjectByAttributeValues(\n\t\tcolorsDefault,\n\t\toverlayColor\n\t);\n\n\tconst hasBackground = !! (\n\t\turl ||\n\t\t( style && style.color && style.color.background ) ||\n\t\tattributes.overlayColor ||\n\t\toverlayColorValue.color ||\n\t\tcustomOverlayColor ||\n\t\tgradientValue\n\t);\n\n\tconst hasOnlyColorBackground = ! url && ( hasBackground || hasInnerBlocks );\n\n\tconst [\n\t\tisCustomColorPickerShowing,\n\t\tsetCustomColorPickerShowing,\n\t] = useState( false );\n\n\tconst openMediaOptionsRef = useRef();\n\n\t// Used to set a default color for its InnerBlocks\n\t// since there's no system to inherit styles yet\n\t// the RichText component will check if there are\n\t// parent styles for the current block. If there are,\n\t// it will use that color instead.\n\tuseEffect( () => {\n\t\t// While we don't support theme colors.\n\t\tif ( ! attributes.overlayColor || ( ! attributes.overlay && url ) ) {\n\t\t\tsetAttributes( { childrenStyles: styles.defaultColor } );\n\t\t}\n\t}, [ setAttributes ] );\n\n\t// Initialize uploading flag to false, awaiting sync.\n\tconst [ isUploadInProgress, setIsUploadInProgress ] = useState( false );\n\n\t// Initialize upload failure flag to true if url is local.\n\tconst [ didUploadFail, setDidUploadFail ] = useState(\n\t\tid && getProtocol( url ) === 'file:'\n\t);\n\n\t// Don't show failure if upload is in progress.\n\tconst shouldShowFailure = didUploadFail && ! isUploadInProgress;\n\n\tconst onSelectMedia = ( media ) => {\n\t\tsetDidUploadFail( false );\n\t\tconst onSelect = attributesFromMedia( setAttributes, dimRatio );\n\t\tonSelect( media );\n\t};\n\n\tconst onMediaPressed = () => {\n\t\tif ( isUploadInProgress ) {\n\t\t\trequestImageUploadCancelDialog( id );\n\t\t} else if ( shouldShowFailure ) {\n\t\t\trequestImageFailedRetryDialog( id );\n\t\t} else if ( isImage && url ) {\n\t\t\trequestImageFullscreenPreview( url );\n\t\t}\n\t};\n\n\tconst [ isVideoLoading, setIsVideoLoading ] = useState( true );\n\n\tconst onVideoLoadStart = () => {\n\t\tsetIsVideoLoading( true );\n\t};\n\n\tconst onVideoLoad = () => {\n\t\tsetIsVideoLoading( false );\n\t};\n\n\tconst onClearMedia = useCallback( () => {\n\t\tsetAttributes( {\n\t\t\tfocalPoint: undefined,\n\t\t\thasParallax: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t} );\n\t\tcloseSettingsBottomSheet();\n\t}, [ closeSettingsBottomSheet ] );\n\n\tfunction setColor( color ) {\n\t\tconst colorValue = getColorObjectByColorValue( colorsDefault, color );\n\n\t\tsetAttributes( {\n\t\t\t// Clear all related attributes (only one should be set).\n\t\t\toverlayColor: colorValue?.slug ?? undefined,\n\t\t\tcustomOverlayColor: ( ! colorValue?.slug && color ) ?? undefined,\n\t\t\tgradient: undefined,\n\t\t\tcustomGradient: undefined,\n\t\t} );\n\t}\n\n\tfunction openColorPicker() {\n\t\tselectBlock();\n\t\tsetCustomColorPickerShowing( true );\n\t\topenGeneralSidebar();\n\t}\n\n\tconst backgroundColor = getStylesFromColorScheme(\n\t\tstyles.backgroundSolid,\n\t\tstyles.backgroundSolidDark\n\t);\n\n\tconst overlayStyles = [\n\t\tstyles.overlay,\n\t\turl && { opacity: dimRatio / 100 },\n\t\t! gradientValue && {\n\t\t\tbackgroundColor:\n\t\t\t\tcustomOverlayColor ||\n\t\t\t\toverlayColorValue?.color ||\n\t\t\t\tstyle?.color?.background ||\n\t\t\t\tstyles.overlay?.color,\n\t\t},\n\t\t// While we don't support theme colors we add a default bg color.\n\t\t! overlayColorValue.color && ! url ? backgroundColor : {},\n\t\tisImage &&\n\t\t\tisParentSelected &&\n\t\t\t! isUploadInProgress &&\n\t\t\t! didUploadFail &&\n\t\t\tstyles.overlaySelected,\n\t];\n\n\tconst placeholderIconStyle = getStylesFromColorScheme(\n\t\tstyles.icon,\n\t\tstyles.iconDark\n\t);\n\n\tconst placeholderIcon = <Icon icon={ icon } { ...placeholderIconStyle } />;\n\n\tconst toolbarControls = ( open ) => (\n\t\t<BlockControls group=\"other\">\n\t\t\t<ToolbarButton\n\t\t\t\ttitle={ __( 'Edit cover media' ) }\n\t\t\t\ticon={ replace }\n\t\t\t\tonClick={ open }\n\t\t\t/>\n\t\t</BlockControls>\n\t);\n\n\tconst accessibilityHint =\n\t\tPlatform.OS === 'ios'\n\t\t\t? __( 'Double tap to open Action Sheet to add image or video' )\n\t\t\t: __( 'Double tap to open Bottom Sheet to add image or video' );\n\n\tconst addMediaButton = () => (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessibilityHint={ accessibilityHint }\n\t\t\taccessibilityLabel={ __( 'Add image or video' ) }\n\t\t\taccessibilityRole=\"button\"\n\t\t\tonPress={ openMediaOptionsRef.current }\n\t\t>\n\t\t\t<View style={ styles.selectImageContainer }>\n\t\t\t\t<View style={ styles.selectImage }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tsize={ 16 }\n\t\t\t\t\t\ticon={ image }\n\t\t\t\t\t\t{ ...styles.selectImageIcon }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n\n\tconst onBottomSheetClosed = useCallback( () => {\n\t\tInteractionManager.runAfterInteractions( () => {\n\t\t\tsetCustomColorPickerShowing( false );\n\t\t} );\n\t}, [] );\n\n\tconst colorPickerControls = (\n\t\t<InspectorControls>\n\t\t\t<BottomSheetConsumer>\n\t\t\t\t{ ( {\n\t\t\t\t\tshouldEnableBottomSheetScroll,\n\t\t\t\t\tshouldEnableBottomSheetMaxHeight,\n\t\t\t\t\tonHandleClosingBottomSheet,\n\t\t\t\t\tonHandleHardwareButtonPress,\n\t\t\t\t\tisBottomSheetContentScrolling,\n\t\t\t\t} ) => (\n\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\tshouldEnableBottomSheetScroll={\n\t\t\t\t\t\t\tshouldEnableBottomSheetScroll\n\t\t\t\t\t\t}\n\t\t\t\t\t\tshouldEnableBottomSheetMaxHeight={\n\t\t\t\t\t\t\tshouldEnableBottomSheetMaxHeight\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsetColor={ setColor }\n\t\t\t\t\t\tonNavigationBack={ closeSettingsBottomSheet }\n\t\t\t\t\t\tonHandleClosingBottomSheet={\n\t\t\t\t\t\t\tonHandleClosingBottomSheet\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonHandleHardwareButtonPress={\n\t\t\t\t\t\t\tonHandleHardwareButtonPress\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonBottomSheetClosed={ onBottomSheetClosed }\n\t\t\t\t\t\tisBottomSheetContentScrolling={\n\t\t\t\t\t\t\tisBottomSheetContentScrolling\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbottomLabelText={ __( 'Select a color' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BottomSheetConsumer>\n\t\t</InspectorControls>\n\t);\n\n\tconst renderContent = ( getMediaOptions ) => (\n\t\t<>\n\t\t\t{ renderBackground( getMediaOptions ) }\n\t\t\t{ isParentSelected && hasOnlyColorBackground && addMediaButton() }\n\t\t</>\n\t);\n\n\tconst renderBackground = ( getMediaOptions ) => (\n\t\t<TouchableWithoutFeedback\n\t\t\taccessible={ ! isParentSelected }\n\t\t\tonPress={ onMediaPressed }\n\t\t\tonLongPress={ openMediaOptionsRef.current }\n\t\t\tdisabled={ ! isParentSelected }\n\t\t>\n\t\t\t<View style={ [ styles.background, backgroundColor ] }>\n\t\t\t\t{ getMediaOptions() }\n\t\t\t\t{ isParentSelected &&\n\t\t\t\t\tbackgroundType === VIDEO_BACKGROUND_TYPE &&\n\t\t\t\t\ttoolbarControls( openMediaOptionsRef.current ) }\n\t\t\t\t<MediaUploadProgress\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tonUpdateMediaProgress={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( true );\n\t\t\t\t\t} }\n\t\t\t\t\tonFinishMediaUploadWithSuccess={ ( {\n\t\t\t\t\t\tmediaServerId,\n\t\t\t\t\t\tmediaUrl,\n\t\t\t\t\t} ) => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( false );\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tid: mediaServerId,\n\t\t\t\t\t\t\turl: mediaUrl,\n\t\t\t\t\t\t\tbackgroundType,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tonFinishMediaUploadWithFailure={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( true );\n\t\t\t\t\t} }\n\t\t\t\t\tonMediaUploadStateReset={ () => {\n\t\t\t\t\t\tsetIsUploadInProgress( false );\n\t\t\t\t\t\tsetDidUploadFail( false );\n\t\t\t\t\t\tsetAttributes( { id: undefined, url: undefined } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\n\t\t\t\t{ IMAGE_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t<View style={ styles.imageContainer }>\n\t\t\t\t\t\t<Image\n\t\t\t\t\t\t\teditButton={ false }\n\t\t\t\t\t\t\tfocalPoint={\n\t\t\t\t\t\t\t\tfocalPoint || IMAGE_DEFAULT_FOCAL_POINT\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisSelected={ isParentSelected }\n\t\t\t\t\t\t\tisUploadFailed={ didUploadFail }\n\t\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\t\tonSelectMediaUploadOption={ onSelectMedia }\n\t\t\t\t\t\t\topenMediaOptions={ openMediaOptionsRef.current }\n\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\twidth={ styles.image?.width }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\n\t\t\t\t{ VIDEO_BACKGROUND_TYPE === backgroundType && (\n\t\t\t\t\t<Video\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tdisableFocus\n\t\t\t\t\t\trepeat\n\t\t\t\t\t\tresizeMode={ 'cover' }\n\t\t\t\t\t\tsource={ { uri: url } }\n\t\t\t\t\t\tonLoad={ onVideoLoad }\n\t\t\t\t\t\tonLoadStart={ onVideoLoadStart }\n\t\t\t\t\t\tstyle={ [\n\t\t\t\t\t\t\tstyles.background,\n\t\t\t\t\t\t\t// Hide Video component since it has black background while loading the source.\n\t\t\t\t\t\t\t{ opacity: isVideoLoading ? 0 : 1 },\n\t\t\t\t\t\t] }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</TouchableWithoutFeedback>\n\t);\n\n\tif (\n\t\t( ! hasBackground && ! hasInnerBlocks ) ||\n\t\tisCustomColorPickerShowing\n\t) {\n\t\treturn (\n\t\t\t<View>\n\t\t\t\t{ isCustomColorPickerShowing && colorPickerControls }\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\theight={\n\t\t\t\t\t\tstyles.mediaPlaceholderEmptyStateContainer?.height\n\t\t\t\t\t}\n\t\t\t\t\tbackgroundColor={ customOverlayColor }\n\t\t\t\t\thideContent={\n\t\t\t\t\t\tcustomOverlayColor !== '' &&\n\t\t\t\t\t\tcustomOverlayColor !== undefined\n\t\t\t\t\t}\n\t\t\t\t\ticon={ placeholderIcon }\n\t\t\t\t\tlabels={ {\n\t\t\t\t\t\ttitle: __( 'Cover' ),\n\t\t\t\t\t} }\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\tonFocus={ onFocus }\n\t\t\t\t>\n\t\t\t\t\t<View\n\t\t\t\t\t\tstyle={ styles.colorPaletteWrapper }\n\t\t\t\t\t\tpointerEvents={\n\t\t\t\t\t\t\tisScreenReaderEnabled ? 'none' : 'auto'\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<BottomSheetConsumer>\n\t\t\t\t\t\t\t{ ( { shouldEnableBottomSheetScroll } ) => (\n\t\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\t\tcustomColorIndicatorStyles={\n\t\t\t\t\t\t\t\t\t\tstyles.paletteColorIndicator\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tcustomIndicatorWrapperStyles={\n\t\t\t\t\t\t\t\t\t\tstyles.paletteCustomIndicatorWrapper\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tsetColor={ setColor }\n\t\t\t\t\t\t\t\t\tonCustomPress={ openColorPicker }\n\t\t\t\t\t\t\t\t\tdefaultSettings={ coverDefaultPalette }\n\t\t\t\t\t\t\t\t\tshouldShowCustomLabel={ false }\n\t\t\t\t\t\t\t\t\tshouldShowCustomVerticalSeparator={ false }\n\t\t\t\t\t\t\t\t\tshouldEnableBottomSheetScroll={\n\t\t\t\t\t\t\t\t\t\tshouldEnableBottomSheetScroll\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</BottomSheetConsumer>\n\t\t\t\t\t</View>\n\t\t\t\t</MediaPlaceholder>\n\t\t\t</View>\n\t\t);\n\t}\n\n\treturn (\n\t\t<View style={ styles.backgroundContainer }>\n\t\t\t{ isSelected && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<Controls\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tdidUploadFail={ didUploadFail }\n\t\t\t\t\t\thasOnlyColorBackground={ hasOnlyColorBackground }\n\t\t\t\t\t\tisUploadInProgress={ isUploadInProgress }\n\t\t\t\t\t\tonClearMedia={ onClearMedia }\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t/>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\n\t\t\t<View\n\t\t\t\tpointerEvents=\"box-none\"\n\t\t\t\tstyle={ [ styles.content, { minHeight: convertedMinHeight } ] }\n\t\t\t>\n\t\t\t\t<InnerBlocks\n\t\t\t\t\tallowedBlocks={ allowedBlocks }\n\t\t\t\t\ttemplate={ INNER_BLOCKS_TEMPLATE }\n\t\t\t\t\ttemplateLock={ templateLock }\n\t\t\t\t\ttemplateInsertUpdatesSelection\n\t\t\t\t\tblockWidth={ blockWidth }\n\t\t\t\t/>\n\t\t\t</View>\n\n\t\t\t<View pointerEvents=\"none\" style={ styles.overlayContainer }>\n\t\t\t\t<View style={ overlayStyles }>\n\t\t\t\t\t{ gradientValue && (\n\t\t\t\t\t\t<Gradient\n\t\t\t\t\t\t\tgradientValue={ gradientValue }\n\t\t\t\t\t\t\tstyle={ styles.background }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</View>\n\t\t\t</View>\n\n\t\t\t<MediaUpload\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tisReplacingMedia={ ! hasOnlyColorBackground }\n\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\trender={ ( { open, getMediaOptions } ) => {\n\t\t\t\t\topenMediaOptionsRef.current = open;\n\t\t\t\t\treturn renderContent( getMediaOptions );\n\t\t\t\t} }\n\t\t\t/>\n\n\t\t\t{ isImage &&\n\t\t\t\turl &&\n\t\t\t\topenMediaOptionsRef.current &&\n\t\t\t\tisParentSelected &&\n\t\t\t\t! isUploadInProgress &&\n\t\t\t\t! didUploadFail && (\n\t\t\t\t\t<View style={ styles.imageEditButton }>\n\t\t\t\t\t\t<ImageEditingButton\n\t\t\t\t\t\t\tonSelectMediaUploadOption={ onSelectMedia }\n\t\t\t\t\t\t\topenMediaOptions={ openMediaOptionsRef.current }\n\t\t\t\t\t\t\tpickerOptions={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdestructiveButton: true,\n\t\t\t\t\t\t\t\t\tid: 'clearMedia',\n\t\t\t\t\t\t\t\t\tlabel: __( 'Clear Media' ),\n\t\t\t\t\t\t\t\t\tonPress: onClearMedia,\n\t\t\t\t\t\t\t\t\tseparated: true,\n\t\t\t\t\t\t\t\t\tvalue: 'clearMedia',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t] }\n\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</View>\n\t\t\t\t) }\n\n\t\t\t{ shouldShowFailure && (\n\t\t\t\t<View\n\t\t\t\t\tpointerEvents=\"none\"\n\t\t\t\t\tstyle={ styles.uploadFailedContainer }\n\t\t\t\t>\n\t\t\t\t\t<View style={ styles.uploadFailed }>\n\t\t\t\t\t\t<Icon icon={ warning } { ...styles.uploadFailedIcon } />\n\t\t\t\t\t</View>\n\t\t\t\t</View>\n\t\t\t) }\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getSelectedBlockClientId, getBlock } = select(\n\t\t\tblockEditorStore\n\t\t);\n\n\t\tconst selectedBlockClientId = getSelectedBlockClientId();\n\n\t\tconst { getSettings } = select( blockEditorStore );\n\n\t\tconst hasInnerBlocks = getBlock( clientId )?.innerBlocks.length > 0;\n\n\t\treturn {\n\t\t\tsettings: getSettings(),\n\t\t\tisParentSelected: selectedBlockClientId === clientId,\n\t\t\thasInnerBlocks,\n\t\t};\n\t} ),\n\twithDispatch( ( dispatch, { clientId } ) => {\n\t\tconst { openGeneralSidebar } = dispatch( editPostStore );\n\t\tconst { selectBlock } = dispatch( blockEditorStore );\n\n\t\treturn {\n\t\t\topenGeneralSidebar: () => openGeneralSidebar( 'edit-post/block' ),\n\t\t\tcloseSettingsBottomSheet() {\n\t\t\t\tdispatch( editPostStore ).closeGeneralSidebar();\n\t\t\t},\n\t\t\tselectBlock: () => selectBlock( clientId ),\n\t\t};\n\t} ),\n\twithPreferredColorScheme,\n] )( Cover );\n"]}
|
|
@@ -27,7 +27,7 @@ function OverlayColorSettings(_ref) {
|
|
|
27
27
|
const settings = useMemo(() => {
|
|
28
28
|
const setOverlayAttribute = (attributeName, value) => {
|
|
29
29
|
setAttributes({
|
|
30
|
-
//
|
|
30
|
+
// Clear all related attributes (only one should be set)
|
|
31
31
|
overlayColor: undefined,
|
|
32
32
|
customOverlayColor: undefined,
|
|
33
33
|
gradient: undefined,
|
|
@@ -37,7 +37,7 @@ function OverlayColorSettings(_ref) {
|
|
|
37
37
|
};
|
|
38
38
|
|
|
39
39
|
const onColorChange = value => {
|
|
40
|
-
//
|
|
40
|
+
// Do nothing for falsy values.
|
|
41
41
|
if (!value) {
|
|
42
42
|
return;
|
|
43
43
|
}
|
|
@@ -52,7 +52,7 @@ function OverlayColorSettings(_ref) {
|
|
|
52
52
|
};
|
|
53
53
|
|
|
54
54
|
const onGradientChange = value => {
|
|
55
|
-
//
|
|
55
|
+
// Do nothing for falsy values.
|
|
56
56
|
if (!value) {
|
|
57
57
|
return;
|
|
58
58
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/cover/overlay-color-settings.native.js"],"names":["__","getColorObjectByColorValue","getColorObjectByAttributeValues","getGradientValueBySlug","getGradientSlugByValue","__experimentalPanelColorGradientSettings","PanelColorGradientSettings","useMemo","useMobileGlobalStylesColors","OverlayColorSettings","overlayColor","customOverlayColor","gradient","customGradient","setAttributes","colors","gradients","gradientValue","colorValue","color","settings","setOverlayAttribute","attributeName","value","undefined","onColorChange","colorObject","slug","onGradientChange","onColorCleared","label"],"mappings":";;AAAA;AACA;AACA;AACA,SAASA,EAAT,QAAmB,iBAAnB;AAEA;AACA;AACA;;AACA,SACCC,0BADD,EAECC,+BAFD,EAGCC,sBAHD,EAICC,sBAJD,EAKCC,wCAAwC,IAAIC,0BAL7C,QAMO,yBANP;AAOA,SAASC,OAAT,QAAwB,oBAAxB;AACA,SAASC,2BAAT,QAA4C,uBAA5C;;AAEA,SAASC,oBAAT,OAMI;AAAA,MAN2B;AAC9BC,IAAAA,YAD8B;AAE9BC,IAAAA,kBAF8B;AAG9BC,IAAAA,QAH8B;AAI9BC,IAAAA,cAJ8B;AAK9BC,IAAAA;AAL8B,GAM3B;AACH,QAAMC,MAAM,GAAGP,2BAA2B,EAA1C;AACA,QAAMQ,SAAS,GAAGR,2BAA2B,CAAE,WAAF,CAA7C;AAEA,QAAMS,aAAa,GAClBJ,cAAc,IAAIV,sBAAsB,CAAEa,SAAF,EAAaJ,QAAb,CADzC;AAGA,QAAMM,UAAU,GAAGhB,+BAA+B,CACjDa,MADiD,EAEjDL,YAFiD,EAGjDC,kBAHiD,CAA/B,CAIjBQ,KAJF;AAMA,QAAMC,QAAQ,GAAGb,OAAO,CAAE,MAAM;AAC/B,UAAMc,mBAAmB,GAAG,CAAEC,aAAF,EAAiBC,KAAjB,KAA4B;AACvDT,MAAAA,aAAa,CAAE;AACd;AACAJ,QAAAA,YAAY,EAAEc,SAFA;AAGdb,QAAAA,kBAAkB,EAAEa,SAHN;AAIdZ,QAAAA,QAAQ,EAAEY,SAJI;AAKdX,QAAAA,cAAc,EAAEW,SALF;AAMd,SAAEF,aAAF,GAAmBC;AANL,OAAF,CAAb;AAQA,KATD;;AAWA,UAAME,aAAa,GAAKF,KAAF,IAAa;AAClC;AACA,UAAK,CAAEA,KAAP,EAAe;AACd;AACA;;AACD,YAAMG,WAAW,GAAGzB,0BAA0B,CAAEc,MAAF,EAAUQ,KAAV,CAA9C;;AACA,UAAKG,WAAL,aAAKA,WAAL,eAAKA,WAAW,CAAEC,IAAlB,EAAyB;AACxBN,QAAAA,mBAAmB,CAAE,cAAF,EAAkBK,WAAW,CAACC,IAA9B,CAAnB;AACA,OAFD,MAEO;AACNN,QAAAA,mBAAmB,CAAE,oBAAF,EAAwBE,KAAxB,CAAnB;AACA;AACD,KAXD;;AAaA,UAAMK,gBAAgB,GAAKL,KAAF,IAAa;AACrC;AACA,UAAK,CAAEA,KAAP,EAAe;AACd;AACA;;AACD,YAAMI,IAAI,GAAGvB,sBAAsB,CAAEY,SAAF,EAAaO,KAAb,CAAnC;;AACA,UAAKI,IAAL,EAAY;AACXN,QAAAA,mBAAmB,CAAE,UAAF,EAAcM,IAAd,CAAnB;AACA,OAFD,MAEO;AACNN,QAAAA,mBAAmB,CAAE,gBAAF,EAAoBE,KAApB,CAAnB;AACA;AACD,KAXD;;AAaA,UAAMM,cAAc,GAAG,MAAM;AAC5Bf,MAAAA,aAAa,CAAE;AACdJ,QAAAA,YAAY,EAAEc,SADA;AAEdb,QAAAA,kBAAkB,EAAEa,SAFN;AAGdZ,QAAAA,QAAQ,EAAEY,SAHI;AAIdX,QAAAA,cAAc,EAAEW;AAJF,OAAF,CAAb;AAMA,KAPD;;AASA,WAAO,CACN;AACCM,MAAAA,KAAK,EAAE9B,EAAE,CAAE,OAAF,CADV;AAECyB,MAAAA,aAFD;AAGCP,MAAAA,UAHD;AAICD,MAAAA,aAJD;AAKCW,MAAAA,gBALD;AAMCC,MAAAA;AAND,KADM,CAAP;AAUA,GAzDuB,EAyDrB,CAAEX,UAAF,EAAcD,aAAd,EAA6BF,MAA7B,EAAqCC,SAArC,CAzDqB,CAAxB;AA2DA,SACC,cAAC,0BAAD;AACC,IAAA,KAAK,EAAGhB,EAAE,CAAE,SAAF,CADX;AAEC,IAAA,WAAW,EAAG,KAFf;AAGC,IAAA,QAAQ,EAAGoB;AAHZ,IADD;AAOA;;AAED,eAAeX,oBAAf","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tgetColorObjectByColorValue,\n\tgetColorObjectByAttributeValues,\n\tgetGradientValueBySlug,\n\tgetGradientSlugByValue,\n\t__experimentalPanelColorGradientSettings as PanelColorGradientSettings,\n} from '@wordpress/block-editor';\nimport { useMemo } from '@wordpress/element';\nimport { useMobileGlobalStylesColors } from '@wordpress/components';\n\nfunction OverlayColorSettings( {\n\toverlayColor,\n\tcustomOverlayColor,\n\tgradient,\n\tcustomGradient,\n\tsetAttributes,\n} ) {\n\tconst colors = useMobileGlobalStylesColors();\n\tconst gradients = useMobileGlobalStylesColors( 'gradients' );\n\n\tconst gradientValue =\n\t\tcustomGradient || getGradientValueBySlug( gradients, gradient );\n\n\tconst colorValue = getColorObjectByAttributeValues(\n\t\tcolors,\n\t\toverlayColor,\n\t\tcustomOverlayColor\n\t).color;\n\n\tconst settings = useMemo( () => {\n\t\tconst setOverlayAttribute = ( attributeName, value ) => {\n\t\t\tsetAttributes( {\n\t\t\t\t//
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/cover/overlay-color-settings.native.js"],"names":["__","getColorObjectByColorValue","getColorObjectByAttributeValues","getGradientValueBySlug","getGradientSlugByValue","__experimentalPanelColorGradientSettings","PanelColorGradientSettings","useMemo","useMobileGlobalStylesColors","OverlayColorSettings","overlayColor","customOverlayColor","gradient","customGradient","setAttributes","colors","gradients","gradientValue","colorValue","color","settings","setOverlayAttribute","attributeName","value","undefined","onColorChange","colorObject","slug","onGradientChange","onColorCleared","label"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport {\n\tgetColorObjectByColorValue,\n\tgetColorObjectByAttributeValues,\n\tgetGradientValueBySlug,\n\tgetGradientSlugByValue,\n\t__experimentalPanelColorGradientSettings as PanelColorGradientSettings,\n} from '@wordpress/block-editor';\nimport { useMemo } from '@wordpress/element';\nimport { useMobileGlobalStylesColors } from '@wordpress/components';\n\nfunction OverlayColorSettings( {\n\toverlayColor,\n\tcustomOverlayColor,\n\tgradient,\n\tcustomGradient,\n\tsetAttributes,\n} ) {\n\tconst colors = useMobileGlobalStylesColors();\n\tconst gradients = useMobileGlobalStylesColors( 'gradients' );\n\n\tconst gradientValue =\n\t\tcustomGradient || getGradientValueBySlug( gradients, gradient );\n\n\tconst colorValue = getColorObjectByAttributeValues(\n\t\tcolors,\n\t\toverlayColor,\n\t\tcustomOverlayColor\n\t).color;\n\n\tconst settings = useMemo( () => {\n\t\tconst setOverlayAttribute = ( attributeName, value ) => {\n\t\t\tsetAttributes( {\n\t\t\t\t// Clear all related attributes (only one should be set)\n\t\t\t\toverlayColor: undefined,\n\t\t\t\tcustomOverlayColor: undefined,\n\t\t\t\tgradient: undefined,\n\t\t\t\tcustomGradient: undefined,\n\t\t\t\t[ attributeName ]: value,\n\t\t\t} );\n\t\t};\n\n\t\tconst onColorChange = ( value ) => {\n\t\t\t// Do nothing for falsy values.\n\t\t\tif ( ! value ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst colorObject = getColorObjectByColorValue( colors, value );\n\t\t\tif ( colorObject?.slug ) {\n\t\t\t\tsetOverlayAttribute( 'overlayColor', colorObject.slug );\n\t\t\t} else {\n\t\t\t\tsetOverlayAttribute( 'customOverlayColor', value );\n\t\t\t}\n\t\t};\n\n\t\tconst onGradientChange = ( value ) => {\n\t\t\t// Do nothing for falsy values.\n\t\t\tif ( ! value ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst slug = getGradientSlugByValue( gradients, value );\n\t\t\tif ( slug ) {\n\t\t\t\tsetOverlayAttribute( 'gradient', slug );\n\t\t\t} else {\n\t\t\t\tsetOverlayAttribute( 'customGradient', value );\n\t\t\t}\n\t\t};\n\n\t\tconst onColorCleared = () => {\n\t\t\tsetAttributes( {\n\t\t\t\toverlayColor: undefined,\n\t\t\t\tcustomOverlayColor: undefined,\n\t\t\t\tgradient: undefined,\n\t\t\t\tcustomGradient: undefined,\n\t\t\t} );\n\t\t};\n\n\t\treturn [\n\t\t\t{\n\t\t\t\tlabel: __( 'Color' ),\n\t\t\t\tonColorChange,\n\t\t\t\tcolorValue,\n\t\t\t\tgradientValue,\n\t\t\t\tonGradientChange,\n\t\t\t\tonColorCleared,\n\t\t\t},\n\t\t];\n\t}, [ colorValue, gradientValue, colors, gradients ] );\n\n\treturn (\n\t\t<PanelColorGradientSettings\n\t\t\ttitle={ __( 'Overlay' ) }\n\t\t\tinitialOpen={ false }\n\t\t\tsettings={ settings }\n\t\t/>\n\t);\n}\n\nexport default OverlayColorSettings;\n"]}
|
|
@@ -40,7 +40,7 @@ export default function save(_ref) {
|
|
|
40
40
|
|
|
41
41
|
const gradientClass = __experimentalGetGradientClass(gradient);
|
|
42
42
|
|
|
43
|
-
const minHeight = minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
|
|
43
|
+
const minHeight = minHeightProp && minHeightUnit ? `${minHeightProp}${minHeightUnit}` : minHeightProp;
|
|
44
44
|
const isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;
|
|
45
45
|
const isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;
|
|
46
46
|
const isImgElement = !(hasParallax || isRepeated);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/cover/save.js"],"names":["classnames","useInnerBlocksProps","getColorClassName","__experimentalGetGradientClass","useBlockProps","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","backgroundImageStyles","dimRatioToClass","isContentPositionCenter","getPositionClassName","save","attributes","backgroundType","gradient","contentPosition","customGradient","customOverlayColor","dimRatio","focalPoint","hasParallax","isDark","isRepeated","overlayColor","url","alt","id","minHeight","minHeightProp","minHeightUnit","overlayColorClass","gradientClass","isImageBackground","isVideoBackground","isImgElement","style","undefined","bgStyle","backgroundColor","background","objectPosition","Math","round","x","y","classes","gradientValue","className"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SACCC,mBADD,EAECC,iBAFD,EAGCC,8BAHD,EAICC,aAJD,QAKO,yBALP;AAOA;AACA;AACA;;AACA,SACCC,qBADD,EAECC,qBAFD,EAGCC,qBAHD,EAICC,eAJD,EAKCC,uBALD,EAMCC,oBAND,QAOO,UAPP;AASA,eAAe,SAASC,IAAT,OAAgC;AAAA,MAAjB;AAAEC,IAAAA;AAAF,GAAiB;AAC9C,QAAM;AACLC,IAAAA,cADK;AAELC,IAAAA,QAFK;AAGLC,IAAAA,eAHK;AAILC,IAAAA,cAJK;AAKLC,IAAAA,kBALK;AAMLC,IAAAA,QANK;AAOLC,IAAAA,UAPK;AAQLC,IAAAA,WARK;AASLC,IAAAA,MATK;AAULC,IAAAA,UAVK;AAWLC,IAAAA,YAXK;AAYLC,IAAAA,GAZK;AAaLC,IAAAA,GAbK;AAcLC,IAAAA,EAdK;AAeLC,IAAAA,SAAS,EAAEC,aAfN;AAgBLC,IAAAA;AAhBK,MAiBFjB,UAjBJ;AAkBA,QAAMkB,iBAAiB,GAAG5B,iBAAiB,CAC1C,kBAD0C,EAE1CqB,YAF0C,CAA3C;;AAIA,QAAMQ,aAAa,GAAG5B,8BAA8B,CAAEW,QAAF,CAApD;;AACA,QAAMa,SAAS,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/cover/save.js"],"names":["classnames","useInnerBlocksProps","getColorClassName","__experimentalGetGradientClass","useBlockProps","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","backgroundImageStyles","dimRatioToClass","isContentPositionCenter","getPositionClassName","save","attributes","backgroundType","gradient","contentPosition","customGradient","customOverlayColor","dimRatio","focalPoint","hasParallax","isDark","isRepeated","overlayColor","url","alt","id","minHeight","minHeightProp","minHeightUnit","overlayColorClass","gradientClass","isImageBackground","isVideoBackground","isImgElement","style","undefined","bgStyle","backgroundColor","background","objectPosition","Math","round","x","y","classes","gradientValue","className"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseInnerBlocksProps,\n\tgetColorClassName,\n\t__experimentalGetGradientClass,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport {\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tbackgroundImageStyles,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n} from './shared';\n\nexport default function save( { attributes } ) {\n\tconst {\n\t\tbackgroundType,\n\t\tgradient,\n\t\tcontentPosition,\n\t\tcustomGradient,\n\t\tcustomOverlayColor,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\toverlayColor,\n\t\turl,\n\t\talt,\n\t\tid,\n\t\tminHeight: minHeightProp,\n\t\tminHeightUnit,\n\t} = attributes;\n\tconst overlayColorClass = getColorClassName(\n\t\t'background-color',\n\t\toverlayColor\n\t);\n\tconst gradientClass = __experimentalGetGradientClass( gradient );\n\tconst minHeight =\n\t\tminHeightProp && minHeightUnit\n\t\t\t? `${ minHeightProp }${ minHeightUnit }`\n\t\t\t: minHeightProp;\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\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: {} ),\n\t\tminHeight: minHeight || undefined,\n\t};\n\n\tconst bgStyle = {\n\t\tbackgroundColor: ! overlayColorClass ? customOverlayColor : undefined,\n\t\tbackground: customGradient ? customGradient : undefined,\n\t};\n\n\tconst objectPosition =\n\t\t// prettier-ignore\n\t\tfocalPoint && isImgElement\n\t\t\t ? `${ Math.round( focalPoint.x * 100 ) }% ${ Math.round( focalPoint.y * 100 ) }%`\n\t\t\t : undefined;\n\n\tconst classes = classnames(\n\t\t{\n\t\t\t'is-light': ! isDark,\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\tconst gradientValue = gradient || customGradient;\n\n\treturn (\n\t\t<div { ...useBlockProps.save( { className: classes, style } ) }>\n\t\t\t<span\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\tclassName={ classnames(\n\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\toverlayColorClass,\n\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t{\n\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t}\n\t\t\t\t) }\n\t\t\t\tstyle={ bgStyle }\n\t\t\t/>\n\n\t\t\t{ isImageBackground && isImgElement && url && (\n\t\t\t\t<img\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'wp-block-cover__image-background',\n\t\t\t\t\t\tid ? `wp-image-${ id }` : null\n\t\t\t\t\t) }\n\t\t\t\t\talt={ alt }\n\t\t\t\t\tsrc={ url }\n\t\t\t\t\tstyle={ { objectPosition } }\n\t\t\t\t\tdata-object-fit=\"cover\"\n\t\t\t\t\tdata-object-position={ objectPosition }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ isVideoBackground && url && (\n\t\t\t\t<video\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'wp-block-cover__video-background',\n\t\t\t\t\t\t'intrinsic-ignore'\n\t\t\t\t\t) }\n\t\t\t\t\tautoPlay\n\t\t\t\t\tmuted\n\t\t\t\t\tloop\n\t\t\t\t\tplaysInline\n\t\t\t\t\tsrc={ url }\n\t\t\t\t\tstyle={ { objectPosition } }\n\t\t\t\t\tdata-object-fit=\"cover\"\n\t\t\t\t\tdata-object-position={ objectPosition }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t<div\n\t\t\t\t{ ...useInnerBlocksProps.save( {\n\t\t\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t\t\t} ) }\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -42,7 +42,7 @@ export function attributesFromMedia(setAttributes, dimRatio) {
|
|
|
42
42
|
media.type = getBlobTypeByURL(media.url);
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
let mediaType; //
|
|
45
|
+
let mediaType; // For media selections originated from a file upload.
|
|
46
46
|
|
|
47
47
|
if (media.media_type) {
|
|
48
48
|
if (media.media_type === IMAGE_BACKGROUND_TYPE) {
|
|
@@ -53,7 +53,7 @@ export function attributesFromMedia(setAttributes, dimRatio) {
|
|
|
53
53
|
mediaType = VIDEO_BACKGROUND_TYPE;
|
|
54
54
|
}
|
|
55
55
|
} else {
|
|
56
|
-
//
|
|
56
|
+
// For media selections originated from existing files in the media library.
|
|
57
57
|
if (media.type !== IMAGE_BACKGROUND_TYPE && media.type !== VIDEO_BACKGROUND_TYPE) {
|
|
58
58
|
return;
|
|
59
59
|
}
|