@wordpress/block-library 5.0.1 → 6.0.1
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 +6 -0
- package/README.md +1 -1
- package/build/audio/edit.js +2 -2
- package/build/audio/edit.js.map +1 -1
- package/build/audio/edit.native.js +2 -2
- package/build/audio/edit.native.js.map +1 -1
- package/build/button/edit.js +97 -87
- package/build/button/edit.js.map +1 -1
- package/build/button/edit.native.js +1 -1
- package/build/button/edit.native.js.map +1 -1
- package/build/button/index.js +4 -1
- package/build/button/index.js.map +1 -1
- package/build/buttons/edit.js +2 -1
- package/build/buttons/edit.js.map +1 -1
- package/build/buttons/index.js +2 -1
- package/build/buttons/index.js.map +1 -1
- package/build/buttons/transforms.js +2 -1
- package/build/buttons/transforms.js.map +1 -1
- package/build/column/index.js +4 -1
- package/build/column/index.js.map +1 -1
- package/build/column/save.js +9 -1
- package/build/column/save.js.map +1 -1
- package/build/columns/edit.native.js +5 -2
- package/build/columns/edit.native.js.map +1 -1
- package/build/columns/index.js +10 -1
- package/build/columns/index.js.map +1 -1
- package/build/cover/deprecated.js +0 -27
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit.js +57 -27
- package/build/cover/edit.js.map +1 -1
- package/build/cover/index.js +11 -1
- package/build/cover/index.js.map +1 -1
- package/build/cover/save.js +2 -1
- package/build/cover/save.js.map +1 -1
- package/build/cover/shared.js +1 -0
- package/build/cover/shared.js.map +1 -1
- package/build/cover/transforms.js +4 -0
- package/build/cover/transforms.js.map +1 -1
- package/build/embed/edit.js +1 -5
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js +85 -22
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/embed-bottom-sheet.native.js +17 -16
- package/build/embed/embed-bottom-sheet.native.js.map +1 -1
- package/build/embed/embed-controls.js +4 -1
- package/build/embed/embed-controls.js.map +1 -1
- package/build/embed/embed-no-preview.native.js +22 -9
- package/build/embed/embed-no-preview.native.js.map +1 -1
- package/build/embed/embed-placeholder.native.js +51 -7
- package/build/embed/embed-placeholder.native.js.map +1 -1
- package/build/embed/embed-preview.native.js +28 -10
- package/build/embed/embed-preview.native.js.map +1 -1
- package/build/embed/variations.js +0 -10
- package/build/embed/variations.js.map +1 -1
- package/build/embed/wp-embed-preview.js +44 -56
- package/build/embed/wp-embed-preview.js.map +1 -1
- package/build/embed/wp-embed-preview.native.js +95 -0
- package/build/embed/wp-embed-preview.native.js.map +1 -0
- package/build/file/deprecated.js +108 -0
- package/build/file/deprecated.js.map +1 -0
- package/build/file/edit.js +8 -1
- package/build/file/edit.js.map +1 -1
- package/build/file/index.js +9 -0
- package/build/file/index.js.map +1 -1
- package/build/file/inspector.js +1 -1
- package/build/file/inspector.js.map +1 -1
- package/build/file/save.js +4 -1
- package/build/file/save.js.map +1 -1
- package/build/file/transforms.js +3 -1
- package/build/file/transforms.js.map +1 -1
- package/build/gallery/constants.js +2 -2
- package/build/gallery/constants.js.map +1 -1
- package/build/gallery/deprecated.js +17 -8
- package/build/gallery/deprecated.js.map +1 -1
- package/build/gallery/edit-wrapper.js +63 -0
- package/build/gallery/edit-wrapper.js.map +1 -0
- package/build/gallery/edit.js +225 -231
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +67 -49
- package/build/gallery/gallery.js.map +1 -1
- package/build/gallery/gallery.native.js +42 -79
- package/build/gallery/gallery.native.js.map +1 -1
- package/build/gallery/index.js +31 -7
- package/build/gallery/index.js.map +1 -1
- package/build/gallery/save.js +26 -43
- package/build/gallery/save.js.map +1 -1
- package/build/gallery/shared.js +9 -2
- package/build/gallery/shared.js.map +1 -1
- package/build/gallery/transforms.js +211 -12
- package/build/gallery/transforms.js.map +1 -1
- package/build/gallery/use-get-media.js +58 -0
- package/build/gallery/use-get-media.js.map +1 -0
- package/build/gallery/use-get-new-images.js +58 -0
- package/build/gallery/use-get-new-images.js.map +1 -0
- package/build/gallery/use-image-sizes.js +73 -0
- package/build/gallery/use-image-sizes.js.map +1 -0
- package/build/gallery/use-short-code-transform.js +63 -0
- package/build/gallery/use-short-code-transform.js.map +1 -0
- package/build/gallery/utils.js +51 -0
- package/build/gallery/utils.js.map +1 -0
- package/build/gallery/v1/constants.js +13 -0
- package/build/gallery/v1/constants.js.map +1 -0
- package/build/gallery/v1/edit.js +459 -0
- package/build/gallery/v1/edit.js.map +1 -0
- package/build/gallery/{gallery-button.native.js → v1/gallery-button.native.js} +0 -0
- package/build/gallery/v1/gallery-button.native.js.map +1 -0
- package/build/gallery/{gallery-image.js → v1/gallery-image.js} +0 -0
- package/build/gallery/v1/gallery-image.js.map +1 -0
- package/build/gallery/{gallery-image.native.js → v1/gallery-image.native.js} +0 -0
- package/build/gallery/v1/gallery-image.native.js.map +1 -0
- package/build/gallery/v1/gallery.js +122 -0
- package/build/gallery/v1/gallery.js.map +1 -0
- package/build/gallery/v1/gallery.native.js +159 -0
- package/build/gallery/v1/gallery.native.js.map +1 -0
- package/build/gallery/v1/save.js +75 -0
- package/build/gallery/v1/save.js.map +1 -0
- package/build/gallery/v1/shared.js +26 -0
- package/build/gallery/v1/shared.js.map +1 -0
- package/build/gallery/{tiles.native.js → v1/tiles.native.js} +2 -1
- package/build/gallery/v1/tiles.native.js.map +1 -0
- package/build/gallery/v1/update-gallery-modal.js +110 -0
- package/build/gallery/v1/update-gallery-modal.js.map +1 -0
- package/build/group/edit.js +21 -5
- package/build/group/edit.js.map +1 -1
- package/build/group/index.js +8 -2
- package/build/group/index.js.map +1 -1
- package/build/group/variations.js +31 -0
- package/build/group/variations.js.map +1 -0
- package/build/heading/heading-level-dropdown.js +11 -37
- package/build/heading/heading-level-dropdown.js.map +1 -1
- package/build/home-link/edit.js +2 -2
- package/build/home-link/edit.js.map +1 -1
- package/build/image/edit.js +8 -6
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +46 -17
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +11 -17
- package/build/image/image.js.map +1 -1
- package/build/image/index.js +1 -0
- package/build/image/index.js.map +1 -1
- package/build/image/transforms.js +30 -7
- package/build/image/transforms.js.map +1 -1
- package/build/image/utils.js +23 -0
- package/build/image/utils.js.map +1 -1
- package/build/index.js +3 -1
- package/build/index.js.map +1 -1
- package/build/latest-comments/edit.js +7 -1
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-posts/edit.native.js +12 -6
- package/build/latest-posts/edit.native.js.map +1 -1
- package/build/media-text/edit.js +1 -1
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/index.js +2 -0
- package/build/media-text/index.js.map +1 -1
- package/build/navigation/block-navigation-list.js +14 -3
- package/build/navigation/block-navigation-list.js.map +1 -1
- package/build/navigation/edit.js +44 -14
- package/build/navigation/edit.js.map +1 -1
- package/build/navigation/index.js +7 -1
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/menu-items-to-blocks.js +6 -5
- package/build/navigation/menu-items-to-blocks.js.map +1 -1
- package/build/navigation/placeholder-preview.js +3 -3
- package/build/navigation/placeholder-preview.js.map +1 -1
- package/build/navigation/placeholder.js +1 -1
- package/build/navigation/placeholder.js.map +1 -1
- package/build/navigation/use-block-navigator.js +2 -1
- package/build/navigation/use-block-navigator.js.map +1 -1
- package/build/navigation/variations.js +2 -3
- package/build/navigation/variations.js.map +1 -1
- package/build/navigation/view.js +53 -1
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +56 -72
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/index.js +6 -2
- package/build/navigation-link/index.js.map +1 -1
- package/build/navigation-link/transforms.js +83 -0
- package/build/navigation-link/transforms.js.map +1 -0
- package/build/navigation-submenu/edit.js +651 -0
- package/build/navigation-submenu/edit.js.map +1 -0
- package/build/navigation-submenu/icons.js +27 -0
- package/build/navigation-submenu/icons.js.map +1 -0
- package/build/navigation-submenu/index.js +89 -0
- package/build/navigation-submenu/index.js.map +1 -0
- package/build/navigation-submenu/save.js +18 -0
- package/build/navigation-submenu/save.js.map +1 -0
- package/build/navigation-submenu/transforms.js +82 -0
- package/build/navigation-submenu/transforms.js.map +1 -0
- package/build/navigation-submenu/view.js +51 -0
- package/build/navigation-submenu/view.js.map +1 -0
- package/build/page-list/convert-to-links-modal.js +19 -1
- package/build/page-list/convert-to-links-modal.js.map +1 -1
- package/build/page-list/edit.js +16 -5
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/index.js +10 -1
- package/build/page-list/index.js.map +1 -1
- package/build/post-author/index.js +2 -1
- package/build/post-author/index.js.map +1 -1
- package/build/post-comment/edit.js +7 -4
- package/build/post-comment/edit.js.map +1 -1
- package/build/post-comment-author/edit.js +1 -1
- package/build/post-comment-author/edit.js.map +1 -1
- package/build/post-comment-content/edit.js +16 -12
- package/build/post-comment-content/edit.js.map +1 -1
- package/build/post-content/edit.js +1 -3
- package/build/post-content/edit.js.map +1 -1
- package/build/post-date/edit.js +35 -14
- package/build/post-date/edit.js.map +1 -1
- package/build/post-date/index.js +2 -1
- package/build/post-date/index.js.map +1 -1
- package/build/post-excerpt/edit.js +2 -1
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +24 -10
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/index.js +5 -0
- package/build/post-featured-image/index.js.map +1 -1
- package/build/post-navigation-link/edit.js +19 -3
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-navigation-link/index.js +9 -1
- package/build/post-navigation-link/index.js.map +1 -1
- package/build/post-template/index.js +5 -2
- package/build/post-template/index.js.map +1 -1
- package/build/post-terms/edit.js +4 -2
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-terms/index.js +2 -1
- package/build/post-terms/index.js.map +1 -1
- package/build/post-title/edit.js +3 -3
- package/build/post-title/edit.js.map +1 -1
- package/build/post-title/index.js +4 -1
- package/build/post-title/index.js.map +1 -1
- package/build/query/edit/index.js +3 -1
- package/build/query/edit/index.js.map +1 -1
- package/build/query/variations.js +4 -4
- package/build/query/variations.js.map +1 -1
- package/build/query-pagination/deprecated.js +24 -0
- package/build/query-pagination/deprecated.js.map +1 -0
- package/build/query-pagination/edit.js +54 -3
- package/build/query-pagination/edit.js.map +1 -1
- package/build/query-pagination/index.js +20 -1
- package/build/query-pagination/index.js.map +1 -1
- package/build/query-pagination/query-pagination-arrow-controls.js +38 -0
- package/build/query-pagination/query-pagination-arrow-controls.js.map +1 -0
- package/build/query-pagination/save.js +1 -1
- package/build/query-pagination/save.js.map +1 -1
- package/build/query-pagination-next/edit.js +19 -4
- package/build/query-pagination-next/edit.js.map +1 -1
- package/build/query-pagination-next/index.js +1 -1
- package/build/query-pagination-previous/edit.js +19 -4
- package/build/query-pagination-previous/edit.js.map +1 -1
- package/build/query-pagination-previous/index.js +1 -1
- package/build/site-logo/edit.js +75 -30
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-logo/index.js +7 -2
- package/build/site-logo/index.js.map +1 -1
- package/build/site-tagline/index.js +1 -0
- package/build/site-tagline/index.js.map +1 -1
- package/build/site-title/edit/index.js +25 -6
- package/build/site-title/edit/index.js.map +1 -1
- package/build/site-title/index.js +9 -2
- package/build/site-title/index.js.map +1 -1
- package/build/social-links/deprecated.js +106 -2
- package/build/social-links/deprecated.js.map +1 -1
- package/build/social-links/edit.js +15 -19
- package/build/social-links/edit.js.map +1 -1
- package/build/social-links/index.js +16 -1
- package/build/social-links/index.js.map +1 -1
- package/build/social-links/save.js +1 -3
- package/build/social-links/save.js.map +1 -1
- package/build/table/index.js +1 -1
- package/build/template-part/edit/advanced-controls.js +3 -1
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/index.js +1 -4
- package/build/template-part/edit/index.js.map +1 -1
- package/build/video/edit-common-settings.js +1 -1
- package/build/video/edit-common-settings.js.map +1 -1
- package/build/video/edit.js +10 -5
- package/build/video/edit.js.map +1 -1
- package/build/video/tracks-editor.js +3 -1
- package/build/video/tracks-editor.js.map +1 -1
- package/build-module/audio/edit.js +3 -3
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/audio/edit.native.js +3 -3
- package/build-module/audio/edit.native.js.map +1 -1
- package/build-module/button/edit.js +101 -91
- 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/button/index.js +4 -1
- package/build-module/button/index.js.map +1 -1
- package/build-module/buttons/edit.js +2 -1
- package/build-module/buttons/edit.js.map +1 -1
- package/build-module/buttons/index.js +2 -1
- package/build-module/buttons/index.js.map +1 -1
- package/build-module/buttons/transforms.js +2 -1
- package/build-module/buttons/transforms.js.map +1 -1
- package/build-module/column/index.js +4 -1
- package/build-module/column/index.js.map +1 -1
- package/build-module/column/save.js +9 -1
- package/build-module/column/save.js.map +1 -1
- package/build-module/columns/edit.native.js +6 -3
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/columns/index.js +10 -1
- package/build-module/columns/index.js.map +1 -1
- package/build-module/cover/deprecated.js +0 -27
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit.js +57 -28
- package/build-module/cover/edit.js.map +1 -1
- package/build-module/cover/index.js +11 -1
- package/build-module/cover/index.js.map +1 -1
- package/build-module/cover/save.js +2 -1
- package/build-module/cover/save.js.map +1 -1
- package/build-module/cover/shared.js +1 -0
- package/build-module/cover/shared.js.map +1 -1
- package/build-module/cover/transforms.js +4 -0
- package/build-module/cover/transforms.js.map +1 -1
- package/build-module/embed/edit.js +1 -5
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +87 -25
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-bottom-sheet.native.js +18 -16
- package/build-module/embed/embed-bottom-sheet.native.js.map +1 -1
- package/build-module/embed/embed-controls.js +4 -1
- package/build-module/embed/embed-controls.js.map +1 -1
- package/build-module/embed/embed-no-preview.native.js +22 -10
- package/build-module/embed/embed-no-preview.native.js.map +1 -1
- package/build-module/embed/embed-placeholder.native.js +51 -8
- package/build-module/embed/embed-placeholder.native.js.map +1 -1
- package/build-module/embed/embed-preview.native.js +26 -11
- package/build-module/embed/embed-preview.native.js.map +1 -1
- package/build-module/embed/variations.js +0 -10
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/embed/wp-embed-preview.js +39 -56
- package/build-module/embed/wp-embed-preview.js.map +1 -1
- package/build-module/embed/wp-embed-preview.native.js +83 -0
- package/build-module/embed/wp-embed-preview.native.js.map +1 -0
- package/build-module/file/deprecated.js +98 -0
- package/build-module/file/deprecated.js.map +1 -0
- package/build-module/file/edit.js +8 -1
- package/build-module/file/edit.js.map +1 -1
- package/build-module/file/index.js +8 -0
- package/build-module/file/index.js.map +1 -1
- package/build-module/file/inspector.js +1 -1
- package/build-module/file/inspector.js.map +1 -1
- package/build-module/file/save.js +4 -1
- package/build-module/file/save.js.map +1 -1
- package/build-module/file/transforms.js +2 -1
- package/build-module/file/transforms.js.map +1 -1
- package/build-module/gallery/constants.js +2 -2
- package/build-module/gallery/constants.js.map +1 -1
- package/build-module/gallery/deprecated.js +15 -7
- package/build-module/gallery/deprecated.js.map +1 -1
- package/build-module/gallery/edit-wrapper.js +50 -0
- package/build-module/gallery/edit-wrapper.js.map +1 -0
- package/build-module/gallery/edit.js +222 -234
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +70 -51
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/gallery/gallery.native.js +43 -78
- package/build-module/gallery/gallery.native.js.map +1 -1
- package/build-module/gallery/index.js +30 -6
- package/build-module/gallery/index.js.map +1 -1
- package/build-module/gallery/save.js +24 -43
- package/build-module/gallery/save.js.map +1 -1
- package/build-module/gallery/shared.js +8 -2
- package/build-module/gallery/shared.js.map +1 -1
- package/build-module/gallery/transforms.js +207 -12
- package/build-module/gallery/transforms.js.map +1 -1
- package/build-module/gallery/use-get-media.js +48 -0
- package/build-module/gallery/use-get-media.js.map +1 -0
- package/build-module/gallery/use-get-new-images.js +50 -0
- package/build-module/gallery/use-get-new-images.js.map +1 -0
- package/build-module/gallery/use-image-sizes.js +64 -0
- package/build-module/gallery/use-image-sizes.js.map +1 -0
- package/build-module/gallery/use-short-code-transform.js +53 -0
- package/build-module/gallery/use-short-code-transform.js.map +1 -0
- package/build-module/gallery/utils.js +42 -0
- package/build-module/gallery/utils.js.map +1 -0
- package/build-module/gallery/v1/constants.js +4 -0
- package/build-module/gallery/v1/constants.js.map +1 -0
- package/build-module/gallery/v1/edit.js +430 -0
- package/build-module/gallery/v1/edit.js.map +1 -0
- package/build-module/gallery/{gallery-button.native.js → v1/gallery-button.native.js} +0 -0
- package/build-module/gallery/v1/gallery-button.native.js.map +1 -0
- package/build-module/gallery/{gallery-image.js → v1/gallery-image.js} +0 -0
- package/build-module/gallery/v1/gallery-image.js.map +1 -0
- package/build-module/gallery/{gallery-image.native.js → v1/gallery-image.native.js} +0 -0
- package/build-module/gallery/v1/gallery-image.native.js.map +1 -0
- package/build-module/gallery/v1/gallery.js +102 -0
- package/build-module/gallery/v1/gallery.js.map +1 -0
- package/build-module/gallery/v1/gallery.native.js +136 -0
- package/build-module/gallery/v1/gallery.native.js.map +1 -0
- package/build-module/gallery/v1/save.js +65 -0
- package/build-module/gallery/v1/save.js.map +1 -0
- package/build-module/gallery/v1/shared.js +16 -0
- package/build-module/gallery/v1/shared.js.map +1 -0
- package/build-module/gallery/{tiles.native.js → v1/tiles.native.js} +2 -1
- package/build-module/gallery/v1/tiles.native.js.map +1 -0
- package/build-module/gallery/v1/update-gallery-modal.js +93 -0
- package/build-module/gallery/v1/update-gallery-modal.js.map +1 -0
- package/build-module/group/edit.js +21 -6
- package/build-module/group/edit.js.map +1 -1
- package/build-module/group/index.js +7 -2
- package/build-module/group/index.js.map +1 -1
- package/build-module/group/variations.js +22 -0
- package/build-module/group/variations.js.map +1 -0
- package/build-module/heading/heading-level-dropdown.js +12 -37
- package/build-module/heading/heading-level-dropdown.js.map +1 -1
- package/build-module/home-link/edit.js +2 -2
- package/build-module/home-link/edit.js.map +1 -1
- package/build-module/image/edit.js +8 -6
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +48 -19
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +11 -15
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/index.js +1 -0
- package/build-module/image/index.js.map +1 -1
- package/build-module/image/transforms.js +26 -7
- package/build-module/image/transforms.js.map +1 -1
- package/build-module/image/utils.js +22 -1
- package/build-module/image/utils.js.map +1 -1
- package/build-module/index.js +2 -1
- package/build-module/index.js.map +1 -1
- package/build-module/latest-comments/edit.js +7 -1
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-posts/edit.native.js +12 -6
- package/build-module/latest-posts/edit.native.js.map +1 -1
- package/build-module/media-text/edit.js +1 -1
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/index.js +2 -0
- package/build-module/media-text/index.js.map +1 -1
- package/build-module/navigation/block-navigation-list.js +15 -3
- package/build-module/navigation/block-navigation-list.js.map +1 -1
- package/build-module/navigation/edit.js +45 -15
- package/build-module/navigation/edit.js.map +1 -1
- package/build-module/navigation/index.js +7 -1
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation/menu-items-to-blocks.js +6 -5
- package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
- package/build-module/navigation/placeholder-preview.js +3 -3
- package/build-module/navigation/placeholder-preview.js.map +1 -1
- package/build-module/navigation/placeholder.js +1 -1
- package/build-module/navigation/placeholder.js.map +1 -1
- package/build-module/navigation/use-block-navigator.js +2 -1
- package/build-module/navigation/use-block-navigator.js.map +1 -1
- package/build-module/navigation/variations.js +2 -3
- package/build-module/navigation/variations.js.map +1 -1
- package/build-module/navigation/view.js +53 -2
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +59 -74
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/index.js +5 -2
- package/build-module/navigation-link/index.js.map +1 -1
- package/build-module/navigation-link/transforms.js +74 -0
- package/build-module/navigation-link/transforms.js.map +1 -0
- package/build-module/navigation-submenu/edit.js +628 -0
- package/build-module/navigation-submenu/edit.js.map +1 -0
- package/build-module/navigation-submenu/icons.js +17 -0
- package/build-module/navigation-submenu/icons.js.map +1 -0
- package/build-module/navigation-submenu/index.js +74 -0
- package/build-module/navigation-submenu/index.js.map +1 -0
- package/build-module/navigation-submenu/save.js +10 -0
- package/build-module/navigation-submenu/save.js.map +1 -0
- package/build-module/navigation-submenu/transforms.js +73 -0
- package/build-module/navigation-submenu/transforms.js.map +1 -0
- package/build-module/navigation-submenu/view.js +49 -0
- package/build-module/navigation-submenu/view.js.map +1 -0
- package/build-module/page-list/convert-to-links-modal.js +19 -1
- package/build-module/page-list/convert-to-links-modal.js.map +1 -1
- package/build-module/page-list/edit.js +16 -5
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/index.js +10 -1
- package/build-module/page-list/index.js.map +1 -1
- package/build-module/post-author/index.js +2 -1
- package/build-module/post-author/index.js.map +1 -1
- package/build-module/post-comment/edit.js +8 -6
- package/build-module/post-comment/edit.js.map +1 -1
- package/build-module/post-comment-author/edit.js +1 -1
- package/build-module/post-comment-author/edit.js.map +1 -1
- package/build-module/post-comment-content/edit.js +16 -13
- package/build-module/post-comment-content/edit.js.map +1 -1
- package/build-module/post-content/edit.js +1 -3
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-date/edit.js +36 -16
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-date/index.js +2 -1
- package/build-module/post-date/index.js.map +1 -1
- package/build-module/post-excerpt/edit.js +2 -1
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +22 -11
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/index.js +5 -0
- package/build-module/post-featured-image/index.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +19 -3
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-navigation-link/index.js +9 -1
- package/build-module/post-navigation-link/index.js.map +1 -1
- package/build-module/post-template/index.js +6 -3
- package/build-module/post-template/index.js.map +1 -1
- package/build-module/post-terms/edit.js +5 -3
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-terms/index.js +2 -1
- package/build-module/post-terms/index.js.map +1 -1
- package/build-module/post-title/edit.js +3 -3
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/post-title/index.js +4 -1
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/query/edit/index.js +4 -2
- package/build-module/query/edit/index.js.map +1 -1
- package/build-module/query/variations.js +4 -4
- package/build-module/query/variations.js.map +1 -1
- package/build-module/query-pagination/deprecated.js +15 -0
- package/build-module/query-pagination/deprecated.js.map +1 -0
- package/build-module/query-pagination/edit.js +52 -5
- package/build-module/query-pagination/edit.js.map +1 -1
- package/build-module/query-pagination/index.js +19 -1
- package/build-module/query-pagination/index.js.map +1 -1
- package/build-module/query-pagination/query-pagination-arrow-controls.js +29 -0
- package/build-module/query-pagination/query-pagination-arrow-controls.js.map +1 -0
- package/build-module/query-pagination/save.js +2 -2
- package/build-module/query-pagination/save.js.map +1 -1
- package/build-module/query-pagination-next/edit.js +18 -4
- package/build-module/query-pagination-next/edit.js.map +1 -1
- package/build-module/query-pagination-next/index.js +1 -1
- package/build-module/query-pagination-previous/edit.js +18 -4
- package/build-module/query-pagination-previous/edit.js.map +1 -1
- package/build-module/query-pagination-previous/index.js +1 -1
- package/build-module/site-logo/edit.js +79 -34
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-logo/index.js +7 -2
- package/build-module/site-logo/index.js.map +1 -1
- package/build-module/site-tagline/index.js +1 -0
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/site-title/edit/index.js +25 -7
- package/build-module/site-title/edit/index.js.map +1 -1
- package/build-module/site-title/index.js +9 -2
- package/build-module/site-title/index.js.map +1 -1
- package/build-module/social-links/deprecated.js +106 -2
- package/build-module/social-links/deprecated.js.map +1 -1
- package/build-module/social-links/edit.js +16 -20
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/social-links/index.js +16 -1
- package/build-module/social-links/index.js.map +1 -1
- package/build-module/social-links/save.js +1 -3
- package/build-module/social-links/save.js.map +1 -1
- package/build-module/table/index.js +1 -1
- package/build-module/template-part/edit/advanced-controls.js +4 -2
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/index.js +1 -4
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/video/edit-common-settings.js +2 -2
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-module/video/edit.js +10 -5
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/tracks-editor.js +2 -1
- package/build-module/video/tracks-editor.js.map +1 -1
- package/build-style/button/style-rtl.css +1 -1
- package/build-style/button/style.css +1 -1
- package/build-style/columns/editor-rtl.css +2 -2
- package/build-style/columns/editor.css +2 -2
- package/build-style/columns/style-rtl.css +4 -4
- package/build-style/columns/style.css +4 -4
- package/build-style/common-rtl.css +4 -105
- package/build-style/common.css +4 -105
- package/build-style/editor-rtl.css +188 -205
- package/build-style/editor.css +188 -205
- package/build-style/embed/style-rtl.css +1 -0
- package/build-style/embed/style.css +1 -0
- package/build-style/gallery/editor-rtl.css +89 -21
- package/build-style/gallery/editor.css +89 -21
- package/build-style/gallery/style-rtl.css +202 -39
- package/build-style/gallery/style.css +202 -39
- package/build-style/group/theme-rtl.css +1 -3
- package/build-style/group/theme.css +1 -3
- package/build-style/heading/style-rtl.css +8 -0
- package/build-style/heading/style.css +8 -0
- package/build-style/html/editor-rtl.css +12 -11
- package/build-style/html/editor.css +12 -11
- package/build-style/list/style-rtl.css +4 -0
- package/build-style/list/style.css +4 -0
- package/build-style/navigation/editor-rtl.css +12 -7
- package/build-style/navigation/editor.css +12 -7
- package/build-style/navigation/style-rtl.css +140 -134
- package/build-style/navigation/style.css +140 -134
- package/build-style/navigation-link/editor-rtl.css +22 -13
- package/build-style/navigation-link/editor.css +22 -13
- package/build-style/{post-content → navigation-submenu}/editor-rtl.css +29 -8
- package/build-style/{post-content → navigation-submenu}/editor.css +29 -8
- package/build-style/{heading/editor.css → navigation-submenu/style-rtl.css} +13 -7
- package/build-style/{heading/editor-rtl.css → navigation-submenu/style.css} +13 -7
- package/build-style/page-list/editor-rtl.css +8 -0
- package/build-style/page-list/editor.css +8 -0
- package/build-style/page-list/style-rtl.css +2 -8
- package/build-style/page-list/style.css +2 -8
- package/build-style/paragraph/style-rtl.css +5 -1
- package/build-style/paragraph/style.css +5 -1
- package/build-style/post-featured-image/editor-rtl.css +4 -8
- package/build-style/post-featured-image/editor.css +4 -8
- package/build-style/post-featured-image/style-rtl.css +1 -0
- package/build-style/post-featured-image/style.css +1 -0
- package/build-style/post-template/style-rtl.css +2 -0
- package/build-style/post-template/style.css +2 -0
- package/build-style/pullquote/style-rtl.css +1 -0
- package/build-style/pullquote/style.css +1 -0
- package/build-style/query-pagination/editor-rtl.css +2 -5
- package/build-style/query-pagination/editor.css +2 -5
- package/build-style/query-pagination/style-rtl.css +17 -6
- package/build-style/query-pagination/style.css +17 -6
- package/build-style/quote/style-rtl.css +3 -0
- package/build-style/quote/style.css +3 -0
- package/build-style/reset-rtl.css +2 -1
- package/build-style/reset.css +2 -1
- package/build-style/social-links/style-rtl.css +0 -5
- package/build-style/social-links/style.css +0 -5
- package/build-style/style-rtl.css +415 -307
- package/build-style/style.css +415 -307
- package/build-style/theme-rtl.css +1 -11
- package/build-style/theme.css +1 -11
- package/package.json +30 -31
- package/src/audio/edit.js +6 -3
- package/src/audio/edit.native.js +9 -3
- package/src/button/block.json +4 -1
- package/src/button/edit.js +107 -115
- package/src/button/edit.native.js +5 -2
- package/src/button/style.scss +1 -1
- package/src/buttons/block.json +2 -1
- package/src/buttons/edit.js +1 -1
- package/src/column/block.json +4 -1
- package/src/column/save.js +11 -1
- package/src/columns/block.json +8 -1
- package/src/columns/edit.native.js +8 -3
- package/src/columns/editor.scss +2 -2
- package/src/columns/index.js +1 -0
- package/src/columns/style.scss +4 -4
- package/src/common.scss +3 -9
- package/src/cover/block.json +11 -1
- package/src/cover/deprecated.js +0 -27
- package/src/cover/edit.js +82 -32
- package/src/cover/save.js +2 -1
- package/src/cover/shared.js +1 -0
- package/src/cover/transforms.js +4 -2
- package/src/editor.scss +4 -20
- package/src/embed/edit.js +1 -11
- package/src/embed/edit.native.js +120 -32
- package/src/embed/embed-bottom-sheet.native.js +26 -20
- package/src/embed/embed-controls.js +10 -1
- package/src/embed/embed-no-preview.native.js +53 -14
- package/src/embed/embed-placeholder.native.js +58 -9
- package/src/embed/embed-preview.native.js +58 -41
- package/src/embed/style.scss +1 -0
- package/src/embed/styles.native.scss +18 -8
- package/src/embed/variations.js +0 -8
- package/src/embed/wp-embed-preview.js +41 -62
- package/src/embed/wp-embed-preview.native.js +80 -0
- package/src/file/block.json +6 -0
- package/src/file/deprecated.js +123 -0
- package/src/file/edit.js +6 -0
- package/src/file/index.js +2 -0
- package/src/file/inspector.js +12 -10
- package/src/file/save.js +3 -0
- package/src/file/test/__snapshots__/edit.native.js.snap +4 -0
- package/src/file/transforms.js +3 -1
- package/src/gallery/block.json +18 -0
- package/src/gallery/constants.js +2 -2
- package/src/gallery/deprecated.js +15 -7
- package/src/gallery/deprecated.scss +132 -0
- package/src/gallery/edit-wrapper.js +47 -0
- package/src/gallery/edit.js +317 -276
- package/src/gallery/editor.scss +106 -22
- package/src/gallery/gallery-styles.native.scss +4 -2
- package/src/gallery/gallery.js +82 -71
- package/src/gallery/gallery.native.js +49 -85
- package/src/gallery/index.js +12 -6
- package/src/gallery/save.js +20 -60
- package/src/gallery/shared.js +9 -2
- package/src/gallery/style.scss +113 -75
- package/src/gallery/transforms.js +212 -11
- package/src/gallery/use-get-media.js +59 -0
- package/src/gallery/use-get-new-images.js +68 -0
- package/src/gallery/use-image-sizes.js +66 -0
- package/src/gallery/use-short-code-transform.js +52 -0
- package/src/gallery/utils.js +46 -0
- package/src/gallery/v1/constants.js +3 -0
- package/src/gallery/v1/edit.js +509 -0
- package/src/gallery/{gallery-button.native.js → v1/gallery-button.native.js} +0 -0
- package/src/gallery/{gallery-image-style.native.scss → v1/gallery-image-style.native.scss} +0 -0
- package/src/gallery/{gallery-image.js → v1/gallery-image.js} +0 -0
- package/src/gallery/{gallery-image.native.js → v1/gallery-image.native.js} +0 -0
- package/src/gallery/v1/gallery-styles.native.scss +8 -0
- package/src/gallery/v1/gallery.js +119 -0
- package/src/gallery/v1/gallery.native.js +162 -0
- package/src/gallery/v1/save.js +81 -0
- package/src/gallery/v1/shared.js +19 -0
- package/src/gallery/{tiles-styles.native.scss → v1/tiles-styles.native.scss} +0 -0
- package/src/gallery/{tiles.native.js → v1/tiles.native.js} +2 -1
- package/src/gallery/v1/update-gallery-modal.js +97 -0
- package/src/group/block.json +4 -1
- package/src/group/edit.js +31 -7
- package/src/group/index.js +2 -0
- package/src/group/theme.scss +1 -3
- package/src/group/variations.js +18 -0
- package/src/heading/heading-level-dropdown.js +26 -58
- package/src/heading/style.scss +3 -0
- package/src/home-link/edit.js +2 -2
- package/src/home-link/index.php +2 -2
- package/src/html/editor.scss +16 -10
- package/src/image/block.json +1 -0
- package/src/image/edit.js +9 -7
- package/src/image/edit.native.js +75 -35
- package/src/image/image.js +10 -14
- package/src/image/styles.native.scss +5 -0
- package/src/image/transforms.js +32 -9
- package/src/image/utils.js +17 -1
- package/src/index.js +2 -0
- package/src/latest-comments/edit.js +4 -0
- package/src/latest-comments/index.php +2 -1
- package/src/latest-posts/edit.native.js +10 -8
- package/src/list/style.scss +8 -3
- package/src/media-text/edit.js +1 -1
- package/src/media-text/index.js +1 -0
- package/src/navigation/block-navigation-list.js +16 -7
- package/src/navigation/block.json +7 -1
- package/src/navigation/edit.js +60 -17
- package/src/navigation/editor.scss +38 -19
- package/src/navigation/index.php +12 -4
- package/src/navigation/menu-items-to-blocks.js +8 -7
- package/src/navigation/placeholder-preview.js +3 -3
- package/src/navigation/placeholder.js +1 -1
- package/src/navigation/style.scss +191 -145
- package/src/navigation/test/menu-items-to-blocks.js +6 -6
- package/src/navigation/use-block-navigator.js +1 -0
- package/src/navigation/variations.js +2 -3
- package/src/navigation/view.js +74 -4
- package/src/navigation-link/block.json +2 -1
- package/src/navigation-link/edit.js +63 -90
- package/src/navigation-link/editor.scss +30 -15
- package/src/navigation-link/index.js +2 -0
- package/src/navigation-link/index.php +8 -8
- package/src/navigation-link/transforms.js +93 -0
- package/src/navigation-submenu/block.json +65 -0
- package/src/navigation-submenu/edit.js +662 -0
- package/src/navigation-submenu/editor.scss +42 -0
- package/src/navigation-submenu/icons.js +16 -0
- package/src/navigation-submenu/index.js +29 -0
- package/src/navigation-submenu/index.php +299 -0
- package/src/navigation-submenu/save.js +8 -0
- package/src/navigation-submenu/style.scss +20 -0
- package/src/navigation-submenu/transforms.js +58 -0
- package/src/navigation-submenu/view.js +62 -0
- package/src/page-list/block.json +11 -1
- package/src/page-list/convert-to-links-modal.js +20 -0
- package/src/page-list/edit.js +18 -4
- package/src/page-list/editor.scss +14 -0
- package/src/page-list/index.php +48 -12
- package/src/page-list/style.scss +2 -14
- package/src/page-list/test/convert-to-links-modal.js +6 -6
- package/src/paragraph/style.scss +10 -1
- package/src/post-author/block.json +2 -1
- package/src/post-comment/edit.js +14 -7
- package/src/post-comment-author/edit.js +13 -10
- package/src/post-comment-content/edit.js +17 -9
- package/src/post-comment-content/index.php +6 -3
- package/src/post-content/edit.js +1 -3
- package/src/post-date/block.json +2 -1
- package/src/post-date/edit.js +36 -22
- package/src/post-excerpt/edit.js +1 -0
- package/src/post-featured-image/block.json +5 -0
- package/src/post-featured-image/dimension-controls.js +43 -35
- package/src/post-featured-image/editor.scss +4 -9
- package/src/post-featured-image/style.scss +1 -0
- package/src/post-navigation-link/block.json +9 -1
- package/src/post-navigation-link/edit.js +29 -2
- package/src/post-navigation-link/index.php +28 -3
- package/src/post-template/block.json +4 -1
- package/src/post-template/index.js +2 -2
- package/src/post-template/index.php +11 -0
- package/src/post-template/style.scss +2 -0
- package/src/post-terms/block.json +2 -1
- package/src/post-terms/edit.js +4 -5
- package/src/post-title/block.json +4 -1
- package/src/post-title/edit.js +4 -6
- package/src/post-title/index.php +1 -1
- package/src/pullquote/style.scss +1 -0
- package/src/query/edit/index.js +3 -3
- package/src/query/variations.js +4 -0
- package/src/query-pagination/block.json +16 -0
- package/src/query-pagination/deprecated.js +19 -0
- package/src/query-pagination/edit.js +58 -3
- package/src/query-pagination/editor.scss +3 -6
- package/src/query-pagination/index.js +2 -0
- package/src/query-pagination/index.php +24 -1
- package/src/query-pagination/query-pagination-arrow-controls.js +44 -0
- package/src/query-pagination/save.js +2 -6
- package/src/query-pagination/style.scss +22 -5
- package/src/query-pagination-next/block.json +1 -1
- package/src/query-pagination-next/edit.js +30 -8
- package/src/query-pagination-next/index.php +5 -1
- package/src/query-pagination-previous/block.json +1 -1
- package/src/query-pagination-previous/edit.js +30 -8
- package/src/query-pagination-previous/index.php +5 -1
- package/src/quote/style.scss +2 -0
- package/src/reset.scss +2 -1
- package/src/search/index.php +12 -15
- package/src/search/test/__snapshots__/edit.native.js.snap +7 -0
- package/src/site-logo/block.json +7 -2
- package/src/site-logo/edit.js +98 -30
- package/src/site-logo/index.php +31 -2
- package/src/site-tagline/block.json +1 -0
- package/src/site-title/block.json +9 -2
- package/src/site-title/edit/index.js +36 -9
- package/src/site-title/index.php +12 -2
- package/src/social-links/block.json +22 -1
- package/src/social-links/deprecated.js +99 -0
- package/src/social-links/edit.js +13 -24
- package/src/social-links/save.js +1 -7
- package/src/social-links/style.scss +0 -8
- package/src/style.scss +1 -5
- package/src/table/block.json +1 -1
- package/src/template-part/edit/advanced-controls.js +3 -3
- package/src/template-part/edit/index.js +0 -3
- package/src/template-part/index.php +1 -1
- package/src/theme.scss +0 -10
- package/src/video/edit-common-settings.js +2 -2
- package/src/video/edit.js +15 -5
- package/src/video/tracks-editor.js +2 -3
- package/build/embed/embed-controls.native.js +0 -32
- package/build/embed/embed-controls.native.js.map +0 -1
- package/build/embed/variations.native.js +0 -10
- package/build/embed/variations.native.js.map +0 -1
- package/build/gallery/gallery-button.native.js.map +0 -1
- package/build/gallery/gallery-image.js.map +0 -1
- package/build/gallery/gallery-image.native.js.map +0 -1
- package/build/gallery/tiles.native.js.map +0 -1
- package/build/image/image-editing/aspect-ratio-dropdown.js +0 -126
- package/build/image/image-editing/aspect-ratio-dropdown.js.map +0 -1
- package/build/image/image-editing/constants.js +0 -16
- package/build/image/image-editing/constants.js.map +0 -1
- package/build/image/image-editing/context.js +0 -59
- package/build/image/image-editing/context.js.map +0 -1
- package/build/image/image-editing/cropper.js +0 -83
- package/build/image/image-editing/cropper.js.map +0 -1
- package/build/image/image-editing/form-controls.js +0 -36
- package/build/image/image-editing/form-controls.js.map +0 -1
- package/build/image/image-editing/index.js +0 -60
- package/build/image/image-editing/index.js.map +0 -1
- package/build/image/image-editing/rotation-button.js +0 -37
- package/build/image/image-editing/rotation-button.js.map +0 -1
- package/build/image/image-editing/use-save-image.js +0 -84
- package/build/image/image-editing/use-save-image.js.map +0 -1
- package/build/image/image-editing/use-transform-image.js +0 -135
- package/build/image/image-editing/use-transform-image.js.map +0 -1
- package/build/image/image-editing/zoom-dropdown.js +0 -55
- package/build/image/image-editing/zoom-dropdown.js.map +0 -1
- package/build-module/embed/embed-controls.native.js +0 -21
- package/build-module/embed/embed-controls.native.js.map +0 -1
- package/build-module/embed/variations.native.js +0 -3
- package/build-module/embed/variations.native.js.map +0 -1
- package/build-module/gallery/gallery-button.native.js.map +0 -1
- package/build-module/gallery/gallery-image.js.map +0 -1
- package/build-module/gallery/gallery-image.native.js.map +0 -1
- package/build-module/gallery/tiles.native.js.map +0 -1
- package/build-module/image/image-editing/aspect-ratio-dropdown.js +0 -115
- package/build-module/image/image-editing/aspect-ratio-dropdown.js.map +0 -1
- package/build-module/image/image-editing/constants.js +0 -7
- package/build-module/image/image-editing/constants.js.map +0 -1
- package/build-module/image/image-editing/context.js +0 -44
- package/build-module/image/image-editing/context.js.map +0 -1
- package/build-module/image/image-editing/cropper.js +0 -69
- package/build-module/image/image-editing/cropper.js.map +0 -1
- package/build-module/image/image-editing/form-controls.js +0 -26
- package/build-module/image/image-editing/form-controls.js.map +0 -1
- package/build-module/image/image-editing/index.js +0 -37
- package/build-module/image/image-editing/index.js.map +0 -1
- package/build-module/image/image-editing/rotation-button.js +0 -26
- package/build-module/image/image-editing/rotation-button.js.map +0 -1
- package/build-module/image/image-editing/use-save-image.js +0 -70
- package/build-module/image/image-editing/use-save-image.js.map +0 -1
- package/build-module/image/image-editing/use-transform-image.js +0 -127
- package/build-module/image/image-editing/use-transform-image.js.map +0 -1
- package/build-module/image/image-editing/zoom-dropdown.js +0 -43
- package/build-module/image/image-editing/zoom-dropdown.js.map +0 -1
- package/src/embed/embed-controls.native.js +0 -23
- package/src/embed/variations.native.js +0 -3
- package/src/heading/editor.scss +0 -20
- package/src/image/image-editing/aspect-ratio-dropdown.js +0 -129
- package/src/image/image-editing/constants.js +0 -6
- package/src/image/image-editing/context.js +0 -56
- package/src/image/image-editing/cropper.js +0 -74
- package/src/image/image-editing/form-controls.js +0 -22
- package/src/image/image-editing/index.js +0 -52
- package/src/image/image-editing/rotation-button.js +0 -24
- package/src/image/image-editing/use-save-image.js +0 -97
- package/src/image/image-editing/use-transform-image.js +0 -162
- package/src/image/image-editing/zoom-dropdown.js +0 -40
- package/src/post-content/editor.scss +0 -11
|
@@ -7,7 +7,7 @@ import { gallery as icon } from '@wordpress/icons';
|
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import deprecated from './deprecated';
|
|
10
|
-
import edit from './edit';
|
|
10
|
+
import edit from './edit-wrapper';
|
|
11
11
|
const metadata = {
|
|
12
12
|
apiVersion: 2,
|
|
13
13
|
name: "core/gallery",
|
|
@@ -68,6 +68,13 @@ const metadata = {
|
|
|
68
68
|
},
|
|
69
69
|
"default": []
|
|
70
70
|
},
|
|
71
|
+
shortCodeTransforms: {
|
|
72
|
+
type: "array",
|
|
73
|
+
"default": [],
|
|
74
|
+
items: {
|
|
75
|
+
type: "object"
|
|
76
|
+
}
|
|
77
|
+
},
|
|
71
78
|
columns: {
|
|
72
79
|
type: "number",
|
|
73
80
|
minimum: 1,
|
|
@@ -82,14 +89,25 @@ const metadata = {
|
|
|
82
89
|
type: "boolean",
|
|
83
90
|
"default": true
|
|
84
91
|
},
|
|
92
|
+
linkTarget: {
|
|
93
|
+
type: "string"
|
|
94
|
+
},
|
|
85
95
|
linkTo: {
|
|
86
96
|
type: "string"
|
|
87
97
|
},
|
|
88
98
|
sizeSlug: {
|
|
89
99
|
type: "string",
|
|
90
100
|
"default": "large"
|
|
101
|
+
},
|
|
102
|
+
allowResize: {
|
|
103
|
+
type: "boolean",
|
|
104
|
+
"default": false
|
|
91
105
|
}
|
|
92
106
|
},
|
|
107
|
+
providesContext: {
|
|
108
|
+
allowResize: "allowResize",
|
|
109
|
+
imageCrop: "imageCrop"
|
|
110
|
+
},
|
|
93
111
|
supports: {
|
|
94
112
|
anchor: true,
|
|
95
113
|
align: true
|
|
@@ -107,13 +125,19 @@ export const settings = {
|
|
|
107
125
|
icon,
|
|
108
126
|
example: {
|
|
109
127
|
attributes: {
|
|
110
|
-
columns: 2
|
|
111
|
-
|
|
128
|
+
columns: 2
|
|
129
|
+
},
|
|
130
|
+
innerBlocks: [{
|
|
131
|
+
name: 'core/image',
|
|
132
|
+
attributes: {
|
|
112
133
|
url: 'https://s.w.org/images/core/5.3/Glacial_lakes%2C_Bhutan.jpg'
|
|
113
|
-
}
|
|
134
|
+
}
|
|
135
|
+
}, {
|
|
136
|
+
name: 'core/image',
|
|
137
|
+
attributes: {
|
|
114
138
|
url: 'https://s.w.org/images/core/5.3/Sediment_off_the_Yucatan_Peninsula.jpg'
|
|
115
|
-
}
|
|
116
|
-
}
|
|
139
|
+
}
|
|
140
|
+
}]
|
|
117
141
|
},
|
|
118
142
|
transforms,
|
|
119
143
|
edit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/gallery/index.js"],"names":["gallery","icon","deprecated","edit","save","transforms","name","metadata","settings","example","attributes","columns","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/gallery/index.js"],"names":["gallery","icon","deprecated","edit","save","transforms","name","metadata","settings","example","attributes","columns","innerBlocks","url"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAO,IAAIC,IAApB,QAAgC,kBAAhC;AAEA;AACA;AACA;;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,gBAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBP,EAAAA,IADuB;AAEvBQ,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,OAAO,EAAE;AADE,KADJ;AAIRC,IAAAA,WAAW,EAAE,CACZ;AACCN,MAAAA,IAAI,EAAE,YADP;AAECI,MAAAA,UAAU,EAAE;AACXG,QAAAA,GAAG,EACF;AAFU;AAFb,KADY,EAQZ;AACCP,MAAAA,IAAI,EAAE,YADP;AAECI,MAAAA,UAAU,EAAE;AACXG,QAAAA,GAAG,EACF;AAFU;AAFb,KARY;AAJL,GAFc;AAuBvBR,EAAAA,UAvBuB;AAwBvBF,EAAAA,IAxBuB;AAyBvBC,EAAAA,IAzBuB;AA0BvBF,EAAAA;AA1BuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { gallery as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport deprecated from './deprecated';\nimport edit from './edit-wrapper';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcolumns: 2,\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/image',\n\t\t\t\tattributes: {\n\t\t\t\t\turl:\n\t\t\t\t\t\t'https://s.w.org/images/core/5.3/Glacial_lakes%2C_Bhutan.jpg',\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/image',\n\t\t\t\tattributes: {\n\t\t\t\t\turl:\n\t\t\t\t\t\t'https://s.w.org/images/core/5.3/Sediment_off_the_Yucatan_Peninsula.jpg',\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n"]}
|
|
@@ -1,62 +1,43 @@
|
|
|
1
1
|
import { createElement } from "@wordpress/element";
|
|
2
2
|
|
|
3
|
+
/**
|
|
4
|
+
* External dependencies
|
|
5
|
+
*/
|
|
6
|
+
import classnames from 'classnames';
|
|
3
7
|
/**
|
|
4
8
|
* WordPress dependencies
|
|
5
9
|
*/
|
|
6
|
-
|
|
10
|
+
|
|
11
|
+
import { RichText, useBlockProps, InnerBlocks } from '@wordpress/block-editor';
|
|
7
12
|
/**
|
|
8
13
|
* Internal dependencies
|
|
9
14
|
*/
|
|
10
15
|
|
|
11
|
-
import
|
|
12
|
-
|
|
13
|
-
export default function save({
|
|
16
|
+
import saveWithoutInnerBlocks from './v1/save';
|
|
17
|
+
export default function saveWithInnerBlocks({
|
|
14
18
|
attributes
|
|
15
19
|
}) {
|
|
20
|
+
var _attributes$ids, _attributes$images;
|
|
21
|
+
|
|
22
|
+
if ((attributes === null || attributes === void 0 ? void 0 : (_attributes$ids = attributes.ids) === null || _attributes$ids === void 0 ? void 0 : _attributes$ids.length) > 0 || (attributes === null || attributes === void 0 ? void 0 : (_attributes$images = attributes.images) === null || _attributes$images === void 0 ? void 0 : _attributes$images.length) > 0) {
|
|
23
|
+
return saveWithoutInnerBlocks({
|
|
24
|
+
attributes
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
|
|
16
28
|
const {
|
|
17
|
-
images,
|
|
18
|
-
columns = defaultColumnsNumber(attributes),
|
|
19
|
-
imageCrop,
|
|
20
29
|
caption,
|
|
21
|
-
|
|
30
|
+
columns,
|
|
31
|
+
imageCrop
|
|
22
32
|
} = attributes;
|
|
23
|
-
const className =
|
|
33
|
+
const className = classnames('has-nested-images', {
|
|
34
|
+
[`columns-${columns}`]: columns !== undefined,
|
|
35
|
+
[`columns-default`]: columns === undefined,
|
|
36
|
+
'is-cropped': imageCrop
|
|
37
|
+
});
|
|
24
38
|
return createElement("figure", useBlockProps.save({
|
|
25
39
|
className
|
|
26
|
-
}), createElement(
|
|
27
|
-
className: "blocks-gallery-grid"
|
|
28
|
-
}, images.map(image => {
|
|
29
|
-
let href;
|
|
30
|
-
|
|
31
|
-
switch (linkTo) {
|
|
32
|
-
case LINK_DESTINATION_MEDIA:
|
|
33
|
-
href = image.fullUrl || image.url;
|
|
34
|
-
break;
|
|
35
|
-
|
|
36
|
-
case LINK_DESTINATION_ATTACHMENT:
|
|
37
|
-
href = image.link;
|
|
38
|
-
break;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
const img = createElement("img", {
|
|
42
|
-
src: image.url,
|
|
43
|
-
alt: image.alt,
|
|
44
|
-
"data-id": image.id,
|
|
45
|
-
"data-full-url": image.fullUrl,
|
|
46
|
-
"data-link": image.link,
|
|
47
|
-
className: image.id ? `wp-image-${image.id}` : null
|
|
48
|
-
});
|
|
49
|
-
return createElement("li", {
|
|
50
|
-
key: image.id || image.url,
|
|
51
|
-
className: "blocks-gallery-item"
|
|
52
|
-
}, createElement("figure", null, href ? createElement("a", {
|
|
53
|
-
href: href
|
|
54
|
-
}, img) : img, !RichText.isEmpty(image.caption) && createElement(RichText.Content, {
|
|
55
|
-
tagName: "figcaption",
|
|
56
|
-
className: "blocks-gallery-item__caption",
|
|
57
|
-
value: image.caption
|
|
58
|
-
})));
|
|
59
|
-
})), !RichText.isEmpty(caption) && createElement(RichText.Content, {
|
|
40
|
+
}), createElement(InnerBlocks.Content, null), !RichText.isEmpty(caption) && createElement(RichText.Content, {
|
|
60
41
|
tagName: "figcaption",
|
|
61
42
|
className: "blocks-gallery-caption",
|
|
62
43
|
value: caption
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/gallery/save.js"],"names":["
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/gallery/save.js"],"names":["classnames","RichText","useBlockProps","InnerBlocks","saveWithoutInnerBlocks","saveWithInnerBlocks","attributes","ids","length","images","caption","columns","imageCrop","className","undefined","save","isEmpty"],"mappings":";;AAAA;AACA;AACA;AACA,OAAOA,UAAP,MAAuB,YAAvB;AAEA;AACA;AACA;;AACA,SAASC,QAAT,EAAmBC,aAAnB,EAAkCC,WAAlC,QAAqD,yBAArD;AAEA;AACA;AACA;;AACA,OAAOC,sBAAP,MAAmC,WAAnC;AAEA,eAAe,SAASC,mBAAT,CAA8B;AAAEC,EAAAA;AAAF,CAA9B,EAA+C;AAAA;;AAC7D,MAAK,CAAAA,UAAU,SAAV,IAAAA,UAAU,WAAV,+BAAAA,UAAU,CAAEC,GAAZ,oEAAiBC,MAAjB,IAA0B,CAA1B,IAA+B,CAAAF,UAAU,SAAV,IAAAA,UAAU,WAAV,kCAAAA,UAAU,CAAEG,MAAZ,0EAAoBD,MAApB,IAA6B,CAAjE,EAAqE;AACpE,WAAOJ,sBAAsB,CAAE;AAAEE,MAAAA;AAAF,KAAF,CAA7B;AACA;;AAED,QAAM;AAAEI,IAAAA,OAAF;AAAWC,IAAAA,OAAX;AAAoBC,IAAAA;AAApB,MAAkCN,UAAxC;AAEA,QAAMO,SAAS,GAAGb,UAAU,CAAE,mBAAF,EAAuB;AAClD,KAAG,WAAWW,OAAS,EAAvB,GAA4BA,OAAO,KAAKG,SADU;AAElD,KAAG,iBAAH,GAAuBH,OAAO,KAAKG,SAFe;AAGlD,kBAAcF;AAHoC,GAAvB,CAA5B;AAMA,SACC,wBAAaV,aAAa,CAACa,IAAd,CAAoB;AAAEF,IAAAA;AAAF,GAApB,CAAb,EACC,cAAC,WAAD,CAAa,OAAb,OADD,EAEG,CAAEZ,QAAQ,CAACe,OAAT,CAAkBN,OAAlB,CAAF,IACD,cAAC,QAAD,CAAU,OAAV;AACC,IAAA,OAAO,EAAC,YADT;AAEC,IAAA,SAAS,EAAC,wBAFX;AAGC,IAAA,KAAK,EAAGA;AAHT,IAHF,CADD;AAYA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { RichText, useBlockProps, InnerBlocks } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport saveWithoutInnerBlocks from './v1/save';\n\nexport default function saveWithInnerBlocks( { attributes } ) {\n\tif ( attributes?.ids?.length > 0 || attributes?.images?.length > 0 ) {\n\t\treturn saveWithoutInnerBlocks( { attributes } );\n\t}\n\n\tconst { caption, columns, imageCrop } = attributes;\n\n\tconst className = classnames( 'has-nested-images', {\n\t\t[ `columns-${ columns }` ]: columns !== undefined,\n\t\t[ `columns-default` ]: columns === undefined,\n\t\t'is-cropped': imageCrop,\n\t} );\n\n\treturn (\n\t\t<figure { ...useBlockProps.save( { className } ) }>\n\t\t\t<InnerBlocks.Content />\n\t\t\t{ ! RichText.isEmpty( caption ) && (\n\t\t\t\t<RichText.Content\n\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\tclassName=\"blocks-gallery-caption\"\n\t\t\t\t\tvalue={ caption }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</figure>\n\t);\n}\n"]}
|
|
@@ -2,8 +2,13 @@
|
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { get, pick } from 'lodash';
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
/**
|
|
6
|
+
* WordPress dependencies
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
import { __ } from '@wordpress/i18n';
|
|
10
|
+
export function defaultColumnsNumber(imageCount) {
|
|
11
|
+
return imageCount ? Math.min(3, imageCount) : 3;
|
|
7
12
|
}
|
|
8
13
|
export const pickRelevantMediaFiles = (image, sizeSlug = 'large') => {
|
|
9
14
|
const imageProps = pick(image, ['alt', 'id', 'link', 'caption']);
|
|
@@ -14,6 +19,7 @@ export const pickRelevantMediaFiles = (image, sizeSlug = 'large') => {
|
|
|
14
19
|
imageProps.fullUrl = fullUrl;
|
|
15
20
|
}
|
|
16
21
|
|
|
22
|
+
imageProps.alt = imageProps.alt !== '' ? imageProps.alt : __('Image gallery image');
|
|
17
23
|
return imageProps;
|
|
18
24
|
};
|
|
19
25
|
//# sourceMappingURL=shared.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/gallery/shared.js"],"names":["get","pick","defaultColumnsNumber","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/gallery/shared.js"],"names":["get","pick","__","defaultColumnsNumber","imageCount","Math","min","pickRelevantMediaFiles","image","sizeSlug","imageProps","url","fullUrl","alt"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,GAAT,EAAcC,IAAd,QAA0B,QAA1B;AAEA;AACA;AACA;;AACA,SAASC,EAAT,QAAmB,iBAAnB;AAEA,OAAO,SAASC,oBAAT,CAA+BC,UAA/B,EAA4C;AAClD,SAAOA,UAAU,GAAGC,IAAI,CAACC,GAAL,CAAU,CAAV,EAAaF,UAAb,CAAH,GAA+B,CAAhD;AACA;AAED,OAAO,MAAMG,sBAAsB,GAAG,CAAEC,KAAF,EAASC,QAAQ,GAAG,OAApB,KAAiC;AACtE,QAAMC,UAAU,GAAGT,IAAI,CAAEO,KAAF,EAAS,CAAE,KAAF,EAAS,IAAT,EAAe,MAAf,EAAuB,SAAvB,CAAT,CAAvB;AACAE,EAAAA,UAAU,CAACC,GAAX,GACCX,GAAG,CAAEQ,KAAF,EAAS,CAAE,OAAF,EAAWC,QAAX,EAAqB,KAArB,CAAT,CAAH,IACAT,GAAG,CAAEQ,KAAF,EAAS,CAAE,eAAF,EAAmB,OAAnB,EAA4BC,QAA5B,EAAsC,YAAtC,CAAT,CADH,IAEAD,KAAK,CAACG,GAHP;AAIA,QAAMC,OAAO,GACZZ,GAAG,CAAEQ,KAAF,EAAS,CAAE,OAAF,EAAW,MAAX,EAAmB,KAAnB,CAAT,CAAH,IACAR,GAAG,CAAEQ,KAAF,EAAS,CAAE,eAAF,EAAmB,OAAnB,EAA4B,MAA5B,EAAoC,YAApC,CAAT,CAFJ;;AAGA,MAAKI,OAAL,EAAe;AACdF,IAAAA,UAAU,CAACE,OAAX,GAAqBA,OAArB;AACA;;AACDF,EAAAA,UAAU,CAACG,GAAX,GACCH,UAAU,CAACG,GAAX,KAAmB,EAAnB,GAAwBH,UAAU,CAACG,GAAnC,GAAyCX,EAAE,CAAE,qBAAF,CAD5C;AAEA,SAAOQ,UAAP;AACA,CAfM","sourcesContent":["/**\n * External dependencies\n */\nimport { get, pick } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\nexport function defaultColumnsNumber( imageCount ) {\n\treturn imageCount ? Math.min( 3, imageCount ) : 3;\n}\n\nexport const pickRelevantMediaFiles = ( image, sizeSlug = 'large' ) => {\n\tconst imageProps = pick( image, [ 'alt', 'id', 'link', 'caption' ] );\n\timageProps.url =\n\t\tget( image, [ 'sizes', sizeSlug, 'url' ] ) ||\n\t\tget( image, [ 'media_details', 'sizes', sizeSlug, 'source_url' ] ) ||\n\t\timage.url;\n\tconst fullUrl =\n\t\tget( image, [ 'sizes', 'full', 'url' ] ) ||\n\t\tget( image, [ 'media_details', 'sizes', 'full', 'source_url' ] );\n\tif ( fullUrl ) {\n\t\timageProps.fullUrl = fullUrl;\n\t}\n\timageProps.alt =\n\t\timageProps.alt !== '' ? imageProps.alt : __( 'Image gallery image' );\n\treturn imageProps;\n};\n"]}
|
|
@@ -8,12 +8,16 @@ import { filter, every, toString } from 'lodash';
|
|
|
8
8
|
|
|
9
9
|
import { createBlock } from '@wordpress/blocks';
|
|
10
10
|
import { createBlobURL } from '@wordpress/blob';
|
|
11
|
+
import { select } from '@wordpress/data';
|
|
12
|
+
import { store as blockEditorStore } from '@wordpress/block-editor';
|
|
13
|
+
import { addFilter } from '@wordpress/hooks';
|
|
11
14
|
/**
|
|
12
15
|
* Internal dependencies
|
|
13
16
|
*/
|
|
14
17
|
|
|
18
|
+
import { LINK_DESTINATION_ATTACHMENT, LINK_DESTINATION_NONE, LINK_DESTINATION_MEDIA } from './constants';
|
|
19
|
+
import { LINK_DESTINATION_ATTACHMENT as DEPRECATED_LINK_DESTINATION_ATTACHMENT, LINK_DESTINATION_MEDIA as DEPRECATED_LINK_DESTINATION_MEDIA } from './v1/constants';
|
|
15
20
|
import { pickRelevantMediaFiles } from './shared';
|
|
16
|
-
import { LINK_DESTINATION_ATTACHMENT } from './constants';
|
|
17
21
|
|
|
18
22
|
const parseShortcodeIds = ids => {
|
|
19
23
|
if (!ids) {
|
|
@@ -22,7 +26,97 @@ const parseShortcodeIds = ids => {
|
|
|
22
26
|
|
|
23
27
|
return ids.split(',').map(id => parseInt(id, 10));
|
|
24
28
|
};
|
|
29
|
+
/**
|
|
30
|
+
* Third party block plugins don't have an easy way to detect if the
|
|
31
|
+
* innerBlocks version of the Gallery is running when they run a
|
|
32
|
+
* 3rdPartyBlock -> GalleryBlock transform so this tranform filter
|
|
33
|
+
* will handle this. Once the innerBlocks version is the default
|
|
34
|
+
* in a core release, this could be deprecated and removed after
|
|
35
|
+
* plugin authors have been given time to update transforms.
|
|
36
|
+
*
|
|
37
|
+
* @typedef {Object} Attributes
|
|
38
|
+
* @typedef {Object} Block
|
|
39
|
+
* @property {Attributes} attributes The attributes of the block.
|
|
40
|
+
* @param {Block} block The transformed block.
|
|
41
|
+
* @return {Block} The transformed block.
|
|
42
|
+
*/
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
function updateThirdPartyTransformToGallery(block) {
|
|
46
|
+
var _block$attributes;
|
|
47
|
+
|
|
48
|
+
const settings = select(blockEditorStore).getSettings();
|
|
49
|
+
|
|
50
|
+
if (settings.__unstableGalleryWithImageBlocks && block.name === 'core/gallery' && ((_block$attributes = block.attributes) === null || _block$attributes === void 0 ? void 0 : _block$attributes.images.length) > 0) {
|
|
51
|
+
const innerBlocks = block.attributes.images.map(({
|
|
52
|
+
url,
|
|
53
|
+
id,
|
|
54
|
+
alt
|
|
55
|
+
}) => {
|
|
56
|
+
return createBlock('core/image', {
|
|
57
|
+
url,
|
|
58
|
+
id: id ? parseInt(id, 10) : null,
|
|
59
|
+
alt,
|
|
60
|
+
sizeSlug: block.attributes.sizeSlug,
|
|
61
|
+
linkDestination: block.attributes.linkDestination
|
|
62
|
+
});
|
|
63
|
+
});
|
|
64
|
+
delete block.attributes.ids;
|
|
65
|
+
delete block.attributes.images;
|
|
66
|
+
block.innerBlocks = innerBlocks;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
return block;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
addFilter('blocks.switchToBlockType.transformedBlock', 'core/gallery/update-third-party-transform-to', updateThirdPartyTransformToGallery);
|
|
73
|
+
/**
|
|
74
|
+
* Third party block plugins don't have an easy way to detect if the
|
|
75
|
+
* innerBlocks version of the Gallery is running when they run a
|
|
76
|
+
* GalleryBlock -> 3rdPartyBlock transform so this transform filter
|
|
77
|
+
* will handle this. Once the innerBlocks version is the default
|
|
78
|
+
* in a core release, this could be deprecated and removed after
|
|
79
|
+
* plugin authors have been given time to update transforms.
|
|
80
|
+
*
|
|
81
|
+
* @typedef {Object} Attributes
|
|
82
|
+
* @typedef {Object} Block
|
|
83
|
+
* @property {Attributes} attributes The attributes of the block.
|
|
84
|
+
* @param {Block} toBlock The block to transform to.
|
|
85
|
+
* @param {Block[]} fromBlocks The blocks to transform from.
|
|
86
|
+
* @return {Block} The transformed block.
|
|
87
|
+
*/
|
|
88
|
+
|
|
89
|
+
function updateThirdPartyTransformFromGallery(toBlock, fromBlocks) {
|
|
90
|
+
const from = Array.isArray(fromBlocks) ? fromBlocks : [fromBlocks];
|
|
91
|
+
const galleryBlock = from.find(transformedBlock => {
|
|
92
|
+
var _transformedBlock$att;
|
|
93
|
+
|
|
94
|
+
return transformedBlock.name === 'core/gallery' && transformedBlock.innerBlocks.length > 0 && !((_transformedBlock$att = transformedBlock.attributes.images) !== null && _transformedBlock$att !== void 0 && _transformedBlock$att.length) > 0 && !toBlock.name.includes('core/');
|
|
95
|
+
});
|
|
25
96
|
|
|
97
|
+
if (galleryBlock) {
|
|
98
|
+
const images = galleryBlock.innerBlocks.map(({
|
|
99
|
+
attributes: {
|
|
100
|
+
url,
|
|
101
|
+
id,
|
|
102
|
+
alt
|
|
103
|
+
}
|
|
104
|
+
}) => ({
|
|
105
|
+
url,
|
|
106
|
+
id: id ? parseInt(id, 10) : null,
|
|
107
|
+
alt
|
|
108
|
+
}));
|
|
109
|
+
const ids = images.map(({
|
|
110
|
+
id
|
|
111
|
+
}) => id);
|
|
112
|
+
galleryBlock.attributes.images = images;
|
|
113
|
+
galleryBlock.attributes.ids = ids;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
return toBlock;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
addFilter('blocks.switchToBlockType.transformedBlock', 'core/gallery/update-third-party-transform-from', updateThirdPartyTransformFromGallery);
|
|
26
120
|
const transforms = {
|
|
27
121
|
from: [{
|
|
28
122
|
type: 'block',
|
|
@@ -40,6 +134,18 @@ const transforms = {
|
|
|
40
134
|
const validImages = filter(attributes, ({
|
|
41
135
|
url
|
|
42
136
|
}) => url);
|
|
137
|
+
const settings = select(blockEditorStore).getSettings();
|
|
138
|
+
|
|
139
|
+
if (settings.__unstableGalleryWithImageBlocks) {
|
|
140
|
+
const innerBlocks = validImages.map(image => {
|
|
141
|
+
return createBlock('core/image', image);
|
|
142
|
+
});
|
|
143
|
+
return createBlock('core/gallery', {
|
|
144
|
+
align,
|
|
145
|
+
sizeSlug
|
|
146
|
+
}, innerBlocks);
|
|
147
|
+
}
|
|
148
|
+
|
|
43
149
|
return createBlock('core/gallery', {
|
|
44
150
|
images: validImages.map(({
|
|
45
151
|
id,
|
|
@@ -70,9 +176,13 @@ const transforms = {
|
|
|
70
176
|
ids
|
|
71
177
|
}
|
|
72
178
|
}) => {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
179
|
+
const settings = select(blockEditorStore).getSettings();
|
|
180
|
+
|
|
181
|
+
if (!settings.__unstableGalleryWithImageBlocks) {
|
|
182
|
+
return parseShortcodeIds(ids).map(id => ({
|
|
183
|
+
id: toString(id)
|
|
184
|
+
}));
|
|
185
|
+
}
|
|
76
186
|
}
|
|
77
187
|
},
|
|
78
188
|
ids: {
|
|
@@ -82,7 +192,27 @@ const transforms = {
|
|
|
82
192
|
ids
|
|
83
193
|
}
|
|
84
194
|
}) => {
|
|
85
|
-
|
|
195
|
+
const settings = select(blockEditorStore).getSettings();
|
|
196
|
+
|
|
197
|
+
if (!settings.__unstableGalleryWithImageBlocks) {
|
|
198
|
+
return parseShortcodeIds(ids);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
},
|
|
202
|
+
shortCodeTransforms: {
|
|
203
|
+
type: 'array',
|
|
204
|
+
shortcode: ({
|
|
205
|
+
named: {
|
|
206
|
+
ids
|
|
207
|
+
}
|
|
208
|
+
}) => {
|
|
209
|
+
const settings = select(blockEditorStore).getSettings();
|
|
210
|
+
|
|
211
|
+
if (settings.__unstableGalleryWithImageBlocks) {
|
|
212
|
+
return parseShortcodeIds(ids).map(id => ({
|
|
213
|
+
id: parseInt(id)
|
|
214
|
+
}));
|
|
215
|
+
}
|
|
86
216
|
}
|
|
87
217
|
},
|
|
88
218
|
columns: {
|
|
@@ -99,10 +229,34 @@ const transforms = {
|
|
|
99
229
|
type: 'string',
|
|
100
230
|
shortcode: ({
|
|
101
231
|
named: {
|
|
102
|
-
link
|
|
232
|
+
link
|
|
103
233
|
}
|
|
104
234
|
}) => {
|
|
105
|
-
|
|
235
|
+
const settings = select(blockEditorStore).getSettings();
|
|
236
|
+
|
|
237
|
+
if (!settings.__unstableGalleryWithImageBlocks) {
|
|
238
|
+
switch (link) {
|
|
239
|
+
case 'post':
|
|
240
|
+
return DEPRECATED_LINK_DESTINATION_ATTACHMENT;
|
|
241
|
+
|
|
242
|
+
case 'file':
|
|
243
|
+
return DEPRECATED_LINK_DESTINATION_MEDIA;
|
|
244
|
+
|
|
245
|
+
default:
|
|
246
|
+
return DEPRECATED_LINK_DESTINATION_ATTACHMENT;
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
switch (link) {
|
|
251
|
+
case 'post':
|
|
252
|
+
return LINK_DESTINATION_ATTACHMENT;
|
|
253
|
+
|
|
254
|
+
case 'file':
|
|
255
|
+
return LINK_DESTINATION_MEDIA;
|
|
256
|
+
|
|
257
|
+
default:
|
|
258
|
+
return LINK_DESTINATION_NONE;
|
|
259
|
+
}
|
|
106
260
|
}
|
|
107
261
|
}
|
|
108
262
|
},
|
|
@@ -114,14 +268,28 @@ const transforms = {
|
|
|
114
268
|
}
|
|
115
269
|
|
|
116
270
|
}, {
|
|
117
|
-
// When created by drag and dropping multiple files on an insertion point
|
|
271
|
+
// When created by drag and dropping multiple files on an insertion point. Because multiple
|
|
272
|
+
// files must not be transformed to a gallery when dropped within a gallery there is another transform
|
|
273
|
+
// within the image block to handle that case. Therefore this transform has to have priority 1
|
|
274
|
+
// set so that it overrrides the image block transformation when mulitple images are dropped outside
|
|
275
|
+
// of a gallery block.
|
|
118
276
|
type: 'files',
|
|
277
|
+
priority: 1,
|
|
119
278
|
|
|
120
279
|
isMatch(files) {
|
|
121
280
|
return files.length !== 1 && every(files, file => file.type.indexOf('image/') === 0);
|
|
122
281
|
},
|
|
123
282
|
|
|
124
283
|
transform(files) {
|
|
284
|
+
const settings = select(blockEditorStore).getSettings();
|
|
285
|
+
|
|
286
|
+
if (settings.__unstableGalleryWithImageBlocks) {
|
|
287
|
+
const innerBlocks = files.map(file => createBlock('core/image', {
|
|
288
|
+
url: createBlobURL(file)
|
|
289
|
+
}));
|
|
290
|
+
return createBlock('core/gallery', {}, innerBlocks);
|
|
291
|
+
}
|
|
292
|
+
|
|
125
293
|
const block = createBlock('core/gallery', {
|
|
126
294
|
images: files.map(file => pickRelevantMediaFiles({
|
|
127
295
|
url: createBlobURL(file)
|
|
@@ -135,11 +303,38 @@ const transforms = {
|
|
|
135
303
|
type: 'block',
|
|
136
304
|
blocks: ['core/image'],
|
|
137
305
|
transform: ({
|
|
138
|
-
images,
|
|
139
306
|
align,
|
|
140
|
-
|
|
141
|
-
ids
|
|
142
|
-
|
|
307
|
+
images,
|
|
308
|
+
ids,
|
|
309
|
+
sizeSlug
|
|
310
|
+
}, innerBlocks) => {
|
|
311
|
+
const settings = select(blockEditorStore).getSettings();
|
|
312
|
+
|
|
313
|
+
if (settings.__unstableGalleryWithImageBlocks) {
|
|
314
|
+
if (innerBlocks.length > 0) {
|
|
315
|
+
return innerBlocks.map(({
|
|
316
|
+
attributes: {
|
|
317
|
+
id,
|
|
318
|
+
url,
|
|
319
|
+
alt,
|
|
320
|
+
caption,
|
|
321
|
+
imageSizeSlug
|
|
322
|
+
}
|
|
323
|
+
}) => createBlock('core/image', {
|
|
324
|
+
id,
|
|
325
|
+
url,
|
|
326
|
+
alt,
|
|
327
|
+
caption,
|
|
328
|
+
sizeSlug: imageSizeSlug,
|
|
329
|
+
align
|
|
330
|
+
}));
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
return createBlock('core/image', {
|
|
334
|
+
align
|
|
335
|
+
});
|
|
336
|
+
}
|
|
337
|
+
|
|
143
338
|
if (images.length > 0) {
|
|
144
339
|
return images.map(({
|
|
145
340
|
url,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/gallery/transforms.js"],"names":["filter","every","toString","createBlock","createBlobURL","pickRelevantMediaFiles","LINK_DESTINATION_ATTACHMENT","parseShortcodeIds","ids","split","map","id","parseInt","transforms","from","type","isMultiBlock","blocks","transform","attributes","align","sizeSlug","undefined","validImages","url","images","alt","caption","tag","shortcode","named","columns","linkTo","link","isMatch","files","length","file","indexOf","block","to","index"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,MAAT,EAAiBC,KAAjB,EAAwBC,QAAxB,QAAwC,QAAxC;AAEA;AACA;AACA;;AACA,SAASC,WAAT,QAA4B,mBAA5B;AACA,SAASC,aAAT,QAA8B,iBAA9B;AAEA;AACA;AACA;;AACA,SAASC,sBAAT,QAAuC,UAAvC;AACA,SAASC,2BAAT,QAA4C,aAA5C;;AAEA,MAAMC,iBAAiB,GAAKC,GAAF,IAAW;AACpC,MAAK,CAAEA,GAAP,EAAa;AACZ,WAAO,EAAP;AACA;;AAED,SAAOA,GAAG,CAACC,KAAJ,CAAW,GAAX,EAAiBC,GAAjB,CAAwBC,EAAF,IAAUC,QAAQ,CAAED,EAAF,EAAM,EAAN,CAAxC,CAAP;AACA,CAND;;AAQA,MAAME,UAAU,GAAG;AAClBC,EAAAA,IAAI,EAAE,CACL;AACCC,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,YAAY,EAAE,IAFf;AAGCC,IAAAA,MAAM,EAAE,CAAE,YAAF,CAHT;AAICC,IAAAA,SAAS,EAAIC,UAAF,IAAkB;AAC5B;AACA,UAAI;AAAEC,QAAAA,KAAF;AAASC,QAAAA;AAAT,UAAsBF,UAAU,CAAE,CAAF,CAApC,CAF4B,CAG5B;;AACAC,MAAAA,KAAK,GAAGnB,KAAK,CAAEkB,UAAF,EAAc,CAAE,OAAF,EAAWC,KAAX,CAAd,CAAL,GACLA,KADK,GAELE,SAFH;AAGAD,MAAAA,QAAQ,GAAGpB,KAAK,CAAEkB,UAAF,EAAc,CAAE,UAAF,EAAcE,QAAd,CAAd,CAAL,GACRA,QADQ,GAERC,SAFH;AAIA,YAAMC,WAAW,GAAGvB,MAAM,CAAEmB,UAAF,EAAc,CAAE;AAAEK,QAAAA;AAAF,OAAF,KAAeA,GAA7B,CAA1B;AAEA,aAAOrB,WAAW,CAAE,cAAF,EAAkB;AACnCsB,QAAAA,MAAM,EAAEF,WAAW,CAACb,GAAZ,CACP,CAAE;AAAEC,UAAAA,EAAF;AAAMa,UAAAA,GAAN;AAAWE,UAAAA,GAAX;AAAgBC,UAAAA;AAAhB,SAAF,MAAmC;AAClChB,UAAAA,EAAE,EAAET,QAAQ,CAAES,EAAF,CADsB;AAElCa,UAAAA,GAFkC;AAGlCE,UAAAA,GAHkC;AAIlCC,UAAAA;AAJkC,SAAnC,CADO,CAD2B;AASnCnB,QAAAA,GAAG,EAAEe,WAAW,CAACb,GAAZ,CAAiB,CAAE;AAAEC,UAAAA;AAAF,SAAF,KAAcC,QAAQ,CAAED,EAAF,EAAM,EAAN,CAAvC,CAT8B;AAUnCS,QAAAA,KAVmC;AAWnCC,QAAAA;AAXmC,OAAlB,CAAlB;AAaA;AA9BF,GADK,EAiCL;AACCN,IAAAA,IAAI,EAAE,WADP;AAECa,IAAAA,GAAG,EAAE,SAFN;AAGCT,IAAAA,UAAU,EAAE;AACXM,MAAAA,MAAM,EAAE;AACPV,QAAAA,IAAI,EAAE,OADC;AAEPc,QAAAA,SAAS,EAAE,CAAE;AAAEC,UAAAA,KAAK,EAAE;AAAEtB,YAAAA;AAAF;AAAT,SAAF,KAA0B;AACpC,iBAAOD,iBAAiB,CAAEC,GAAF,CAAjB,CAAyBE,GAAzB,CAAgCC,EAAF,KAAY;AAChDA,YAAAA,EAAE,EAAET,QAAQ,CAAES,EAAF;AADoC,WAAZ,CAA9B,CAAP;AAGA;AANM,OADG;AASXH,MAAAA,GAAG,EAAE;AACJO,QAAAA,IAAI,EAAE,OADF;AAEJc,QAAAA,SAAS,EAAE,CAAE;AAAEC,UAAAA,KAAK,EAAE;AAAEtB,YAAAA;AAAF;AAAT,SAAF,KAA0B;AACpC,iBAAOD,iBAAiB,CAAEC,GAAF,CAAxB;AACA;AAJG,OATM;AAeXuB,MAAAA,OAAO,EAAE;AACRhB,QAAAA,IAAI,EAAE,QADE;AAERc,QAAAA,SAAS,EAAE,CAAE;AAAEC,UAAAA,KAAK,EAAE;AAAEC,YAAAA,OAAO,GAAG;AAAZ;AAAT,SAAF,KAAoC;AAC9C,iBAAOnB,QAAQ,CAAEmB,OAAF,EAAW,EAAX,CAAf;AACA;AAJO,OAfE;AAqBXC,MAAAA,MAAM,EAAE;AACPjB,QAAAA,IAAI,EAAE,QADC;AAEPc,QAAAA,SAAS,EAAE,CAAE;AACZC,UAAAA,KAAK,EAAE;AAAEG,YAAAA,IAAI,GAAG3B;AAAT;AADK,SAAF,KAEJ;AACN,iBAAO2B,IAAP;AACA;AANM;AArBG,KAHb;;AAiCCC,IAAAA,OAAO,CAAE;AAAEJ,MAAAA;AAAF,KAAF,EAAc;AACpB,aAAOR,SAAS,KAAKQ,KAAK,CAACtB,GAA3B;AACA;;AAnCF,GAjCK,EAsEL;AACC;AACAO,IAAAA,IAAI,EAAE,OAFP;;AAGCmB,IAAAA,OAAO,CAAEC,KAAF,EAAU;AAChB,aACCA,KAAK,CAACC,MAAN,KAAiB,CAAjB,IACAnC,KAAK,CACJkC,KADI,EAEFE,IAAF,IAAYA,IAAI,CAACtB,IAAL,CAAUuB,OAAV,CAAmB,QAAnB,MAAkC,CAF1C,CAFN;AAOA,KAXF;;AAYCpB,IAAAA,SAAS,CAAEiB,KAAF,EAAU;AAClB,YAAMI,KAAK,GAAGpC,WAAW,CAAE,cAAF,EAAkB;AAC1CsB,QAAAA,MAAM,EAAEU,KAAK,CAACzB,GAAN,CAAa2B,IAAF,IAClBhC,sBAAsB,CAAE;AACvBmB,UAAAA,GAAG,EAAEpB,aAAa,CAAEiC,IAAF;AADK,SAAF,CADf;AADkC,OAAlB,CAAzB;AAOA,aAAOE,KAAP;AACA;;AArBF,GAtEK,CADY;AA+FlBC,EAAAA,EAAE,EAAE,CACH;AACCzB,IAAAA,IAAI,EAAE,OADP;AAECE,IAAAA,MAAM,EAAE,CAAE,YAAF,CAFT;AAGCC,IAAAA,SAAS,EAAE,CAAE;AAAEO,MAAAA,MAAF;AAAUL,MAAAA,KAAV;AAAiBC,MAAAA,QAAjB;AAA2Bb,MAAAA;AAA3B,KAAF,KAAwC;AAClD,UAAKiB,MAAM,CAACW,MAAP,GAAgB,CAArB,EAAyB;AACxB,eAAOX,MAAM,CAACf,GAAP,CAAY,CAAE;AAAEc,UAAAA,GAAF;AAAOE,UAAAA,GAAP;AAAYC,UAAAA;AAAZ,SAAF,EAAyBc,KAAzB,KAClBtC,WAAW,CAAE,YAAF,EAAgB;AAC1BQ,UAAAA,EAAE,EAAEH,GAAG,CAAEiC,KAAF,CADmB;AAE1BjB,UAAAA,GAF0B;AAG1BE,UAAAA,GAH0B;AAI1BC,UAAAA,OAJ0B;AAK1BP,UAAAA,KAL0B;AAM1BC,UAAAA;AAN0B,SAAhB,CADL,CAAP;AAUA;;AACD,aAAOlB,WAAW,CAAE,YAAF,EAAgB;AAAEiB,QAAAA;AAAF,OAAhB,CAAlB;AACA;AAjBF,GADG;AA/Fc,CAAnB;AAsHA,eAAeP,UAAf","sourcesContent":["/**\n * External dependencies\n */\nimport { filter, every, toString } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { createBlobURL } from '@wordpress/blob';\n\n/**\n * Internal dependencies\n */\nimport { pickRelevantMediaFiles } from './shared';\nimport { LINK_DESTINATION_ATTACHMENT } from './constants';\n\nconst parseShortcodeIds = ( ids ) => {\n\tif ( ! ids ) {\n\t\treturn [];\n\t}\n\n\treturn ids.split( ',' ).map( ( id ) => parseInt( id, 10 ) );\n};\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\t// Init the align and size from the first item which may be either the placeholder or an image.\n\t\t\t\tlet { align, sizeSlug } = attributes[ 0 ];\n\t\t\t\t// Loop through all the images and check if they have the same align and size.\n\t\t\t\talign = every( attributes, [ 'align', align ] )\n\t\t\t\t\t? align\n\t\t\t\t\t: undefined;\n\t\t\t\tsizeSlug = every( attributes, [ 'sizeSlug', sizeSlug ] )\n\t\t\t\t\t? sizeSlug\n\t\t\t\t\t: undefined;\n\n\t\t\t\tconst validImages = filter( attributes, ( { url } ) => url );\n\n\t\t\t\treturn createBlock( 'core/gallery', {\n\t\t\t\t\timages: validImages.map(\n\t\t\t\t\t\t( { id, url, alt, caption } ) => ( {\n\t\t\t\t\t\t\tid: toString( id ),\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t} )\n\t\t\t\t\t),\n\t\t\t\t\tids: validImages.map( ( { id } ) => parseInt( id, 10 ) ),\n\t\t\t\t\talign,\n\t\t\t\t\tsizeSlug,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'shortcode',\n\t\t\ttag: 'gallery',\n\t\t\tattributes: {\n\t\t\t\timages: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tshortcode: ( { named: { ids } } ) => {\n\t\t\t\t\t\treturn parseShortcodeIds( ids ).map( ( id ) => ( {\n\t\t\t\t\t\t\tid: toString( id ),\n\t\t\t\t\t\t} ) );\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tids: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tshortcode: ( { named: { ids } } ) => {\n\t\t\t\t\t\treturn parseShortcodeIds( ids );\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tcolumns: {\n\t\t\t\t\ttype: 'number',\n\t\t\t\t\tshortcode: ( { named: { columns = '3' } } ) => {\n\t\t\t\t\t\treturn parseInt( columns, 10 );\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tlinkTo: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tshortcode: ( {\n\t\t\t\t\t\tnamed: { link = LINK_DESTINATION_ATTACHMENT },\n\t\t\t\t\t} ) => {\n\t\t\t\t\t\treturn link;\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tisMatch( { named } ) {\n\t\t\t\treturn undefined !== named.ids;\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\t// When created by drag and dropping multiple files on an insertion point\n\t\t\ttype: 'files',\n\t\t\tisMatch( files ) {\n\t\t\t\treturn (\n\t\t\t\t\tfiles.length !== 1 &&\n\t\t\t\t\tevery(\n\t\t\t\t\t\tfiles,\n\t\t\t\t\t\t( file ) => file.type.indexOf( 'image/' ) === 0\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t},\n\t\t\ttransform( files ) {\n\t\t\t\tconst block = createBlock( 'core/gallery', {\n\t\t\t\t\timages: files.map( ( file ) =>\n\t\t\t\t\t\tpickRelevantMediaFiles( {\n\t\t\t\t\t\t\turl: createBlobURL( file ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t\treturn block;\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( { images, align, sizeSlug, ids } ) => {\n\t\t\t\tif ( images.length > 0 ) {\n\t\t\t\t\treturn images.map( ( { url, alt, caption }, index ) =>\n\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\tid: ids[ index ],\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\tsizeSlug,\n\t\t\t\t\t\t} )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn createBlock( 'core/image', { align } );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/gallery/transforms.js"],"names":["filter","every","toString","createBlock","createBlobURL","select","store","blockEditorStore","addFilter","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_NONE","LINK_DESTINATION_MEDIA","DEPRECATED_LINK_DESTINATION_ATTACHMENT","DEPRECATED_LINK_DESTINATION_MEDIA","pickRelevantMediaFiles","parseShortcodeIds","ids","split","map","id","parseInt","updateThirdPartyTransformToGallery","block","settings","getSettings","__unstableGalleryWithImageBlocks","name","attributes","images","length","innerBlocks","url","alt","sizeSlug","linkDestination","updateThirdPartyTransformFromGallery","toBlock","fromBlocks","from","Array","isArray","galleryBlock","find","transformedBlock","includes","transforms","type","isMultiBlock","blocks","transform","align","undefined","validImages","image","caption","tag","shortcode","named","shortCodeTransforms","columns","linkTo","link","isMatch","priority","files","file","indexOf","to","imageSizeSlug","index"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { filter, every, toString } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { createBlobURL } from '@wordpress/blob';\nimport { select } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_NONE,\n\tLINK_DESTINATION_MEDIA,\n} from './constants';\nimport {\n\tLINK_DESTINATION_ATTACHMENT as DEPRECATED_LINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA as DEPRECATED_LINK_DESTINATION_MEDIA,\n} from './v1/constants';\nimport { pickRelevantMediaFiles } from './shared';\n\nconst parseShortcodeIds = ( ids ) => {\n\tif ( ! ids ) {\n\t\treturn [];\n\t}\n\n\treturn ids.split( ',' ).map( ( id ) => parseInt( id, 10 ) );\n};\n\n/**\n * Third party block plugins don't have an easy way to detect if the\n * innerBlocks version of the Gallery is running when they run a\n * 3rdPartyBlock -> GalleryBlock transform so this tranform filter\n * will handle this. Once the innerBlocks version is the default\n * in a core release, this could be deprecated and removed after\n * plugin authors have been given time to update transforms.\n *\n * @typedef {Object} Attributes\n * @typedef {Object} Block\n * @property {Attributes} attributes The attributes of the block.\n * @param {Block} block The transformed block.\n * @return {Block} The transformed block.\n */\nfunction updateThirdPartyTransformToGallery( block ) {\n\tconst settings = select( blockEditorStore ).getSettings();\n\tif (\n\t\tsettings.__unstableGalleryWithImageBlocks &&\n\t\tblock.name === 'core/gallery' &&\n\t\tblock.attributes?.images.length > 0\n\t) {\n\t\tconst innerBlocks = block.attributes.images.map(\n\t\t\t( { url, id, alt } ) => {\n\t\t\t\treturn createBlock( 'core/image', {\n\t\t\t\t\turl,\n\t\t\t\t\tid: id ? parseInt( id, 10 ) : null,\n\t\t\t\t\talt,\n\t\t\t\t\tsizeSlug: block.attributes.sizeSlug,\n\t\t\t\t\tlinkDestination: block.attributes.linkDestination,\n\t\t\t\t} );\n\t\t\t}\n\t\t);\n\n\t\tdelete block.attributes.ids;\n\t\tdelete block.attributes.images;\n\t\tblock.innerBlocks = innerBlocks;\n\t}\n\n\treturn block;\n}\naddFilter(\n\t'blocks.switchToBlockType.transformedBlock',\n\t'core/gallery/update-third-party-transform-to',\n\tupdateThirdPartyTransformToGallery\n);\n\n/**\n * Third party block plugins don't have an easy way to detect if the\n * innerBlocks version of the Gallery is running when they run a\n * GalleryBlock -> 3rdPartyBlock transform so this transform filter\n * will handle this. Once the innerBlocks version is the default\n * in a core release, this could be deprecated and removed after\n * plugin authors have been given time to update transforms.\n *\n * @typedef {Object} Attributes\n * @typedef {Object} Block\n * @property {Attributes} attributes The attributes of the block.\n * @param {Block} toBlock The block to transform to.\n * @param {Block[]} fromBlocks The blocks to transform from.\n * @return {Block} The transformed block.\n */\nfunction updateThirdPartyTransformFromGallery( toBlock, fromBlocks ) {\n\tconst from = Array.isArray( fromBlocks ) ? fromBlocks : [ fromBlocks ];\n\tconst galleryBlock = from.find(\n\t\t( transformedBlock ) =>\n\t\t\ttransformedBlock.name === 'core/gallery' &&\n\t\t\ttransformedBlock.innerBlocks.length > 0 &&\n\t\t\t! transformedBlock.attributes.images?.length > 0 &&\n\t\t\t! toBlock.name.includes( 'core/' )\n\t);\n\n\tif ( galleryBlock ) {\n\t\tconst images = galleryBlock.innerBlocks.map(\n\t\t\t( { attributes: { url, id, alt } } ) => ( {\n\t\t\t\turl,\n\t\t\t\tid: id ? parseInt( id, 10 ) : null,\n\t\t\t\talt,\n\t\t\t} )\n\t\t);\n\t\tconst ids = images.map( ( { id } ) => id );\n\t\tgalleryBlock.attributes.images = images;\n\t\tgalleryBlock.attributes.ids = ids;\n\t}\n\n\treturn toBlock;\n}\naddFilter(\n\t'blocks.switchToBlockType.transformedBlock',\n\t'core/gallery/update-third-party-transform-from',\n\tupdateThirdPartyTransformFromGallery\n);\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\t// Init the align and size from the first item which may be either the placeholder or an image.\n\t\t\t\tlet { align, sizeSlug } = attributes[ 0 ];\n\t\t\t\t// Loop through all the images and check if they have the same align and size.\n\t\t\t\talign = every( attributes, [ 'align', align ] )\n\t\t\t\t\t? align\n\t\t\t\t\t: undefined;\n\t\t\t\tsizeSlug = every( attributes, [ 'sizeSlug', sizeSlug ] )\n\t\t\t\t\t? sizeSlug\n\t\t\t\t\t: undefined;\n\n\t\t\t\tconst validImages = filter( attributes, ( { url } ) => url );\n\n\t\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\t\tif ( settings.__unstableGalleryWithImageBlocks ) {\n\t\t\t\t\tconst innerBlocks = validImages.map( ( image ) => {\n\t\t\t\t\t\treturn createBlock( 'core/image', image );\n\t\t\t\t\t} );\n\n\t\t\t\t\treturn createBlock(\n\t\t\t\t\t\t'core/gallery',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\tsizeSlug,\n\t\t\t\t\t\t},\n\t\t\t\t\t\tinnerBlocks\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( 'core/gallery', {\n\t\t\t\t\timages: validImages.map(\n\t\t\t\t\t\t( { id, url, alt, caption } ) => ( {\n\t\t\t\t\t\t\tid: toString( id ),\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t} )\n\t\t\t\t\t),\n\t\t\t\t\tids: validImages.map( ( { id } ) => parseInt( id, 10 ) ),\n\t\t\t\t\talign,\n\t\t\t\t\tsizeSlug,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'shortcode',\n\t\t\ttag: 'gallery',\n\n\t\t\tattributes: {\n\t\t\t\timages: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tshortcode: ( { named: { ids } } ) => {\n\t\t\t\t\t\tconst settings = select(\n\t\t\t\t\t\t\tblockEditorStore\n\t\t\t\t\t\t).getSettings();\n\t\t\t\t\t\tif ( ! settings.__unstableGalleryWithImageBlocks ) {\n\t\t\t\t\t\t\treturn parseShortcodeIds( ids ).map( ( id ) => ( {\n\t\t\t\t\t\t\t\tid: toString( id ),\n\t\t\t\t\t\t\t} ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tids: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tshortcode: ( { named: { ids } } ) => {\n\t\t\t\t\t\tconst settings = select(\n\t\t\t\t\t\t\tblockEditorStore\n\t\t\t\t\t\t).getSettings();\n\t\t\t\t\t\tif ( ! settings.__unstableGalleryWithImageBlocks ) {\n\t\t\t\t\t\t\treturn parseShortcodeIds( ids );\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tshortCodeTransforms: {\n\t\t\t\t\ttype: 'array',\n\t\t\t\t\tshortcode: ( { named: { ids } } ) => {\n\t\t\t\t\t\tconst settings = select(\n\t\t\t\t\t\t\tblockEditorStore\n\t\t\t\t\t\t).getSettings();\n\t\t\t\t\t\tif ( settings.__unstableGalleryWithImageBlocks ) {\n\t\t\t\t\t\t\treturn parseShortcodeIds( ids ).map( ( id ) => ( {\n\t\t\t\t\t\t\t\tid: parseInt( id ),\n\t\t\t\t\t\t\t} ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tcolumns: {\n\t\t\t\t\ttype: 'number',\n\t\t\t\t\tshortcode: ( { named: { columns = '3' } } ) => {\n\t\t\t\t\t\treturn parseInt( columns, 10 );\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tlinkTo: {\n\t\t\t\t\ttype: 'string',\n\t\t\t\t\tshortcode: ( { named: { link } } ) => {\n\t\t\t\t\t\tconst settings = select(\n\t\t\t\t\t\t\tblockEditorStore\n\t\t\t\t\t\t).getSettings();\n\t\t\t\t\t\tif ( ! settings.__unstableGalleryWithImageBlocks ) {\n\t\t\t\t\t\t\tswitch ( link ) {\n\t\t\t\t\t\t\t\tcase 'post':\n\t\t\t\t\t\t\t\t\treturn DEPRECATED_LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\t\t\t\tcase 'file':\n\t\t\t\t\t\t\t\t\treturn DEPRECATED_LINK_DESTINATION_MEDIA;\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn DEPRECATED_LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tswitch ( link ) {\n\t\t\t\t\t\t\tcase 'post':\n\t\t\t\t\t\t\t\treturn LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\t\t\tcase 'file':\n\t\t\t\t\t\t\t\treturn LINK_DESTINATION_MEDIA;\n\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\treturn LINK_DESTINATION_NONE;\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tisMatch( { named } ) {\n\t\t\t\treturn undefined !== named.ids;\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\t// When created by drag and dropping multiple files on an insertion point. Because multiple\n\t\t\t// files must not be transformed to a gallery when dropped within a gallery there is another transform\n\t\t\t// within the image block to handle that case. Therefore this transform has to have priority 1\n\t\t\t// set so that it overrrides the image block transformation when mulitple images are dropped outside\n\t\t\t// of a gallery block.\n\t\t\ttype: 'files',\n\t\t\tpriority: 1,\n\t\t\tisMatch( files ) {\n\t\t\t\treturn (\n\t\t\t\t\tfiles.length !== 1 &&\n\t\t\t\t\tevery(\n\t\t\t\t\t\tfiles,\n\t\t\t\t\t\t( file ) => file.type.indexOf( 'image/' ) === 0\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t},\n\t\t\ttransform( files ) {\n\t\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\t\tif ( settings.__unstableGalleryWithImageBlocks ) {\n\t\t\t\t\tconst innerBlocks = files.map( ( file ) =>\n\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\turl: createBlobURL( file ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t);\n\n\t\t\t\t\treturn createBlock( 'core/gallery', {}, innerBlocks );\n\t\t\t\t}\n\t\t\t\tconst block = createBlock( 'core/gallery', {\n\t\t\t\t\timages: files.map( ( file ) =>\n\t\t\t\t\t\tpickRelevantMediaFiles( {\n\t\t\t\t\t\t\turl: createBlobURL( file ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t\treturn block;\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( { align, images, ids, sizeSlug }, innerBlocks ) => {\n\t\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\t\tif ( settings.__unstableGalleryWithImageBlocks ) {\n\t\t\t\t\tif ( innerBlocks.length > 0 ) {\n\t\t\t\t\t\treturn innerBlocks.map(\n\t\t\t\t\t\t\t( {\n\t\t\t\t\t\t\t\tattributes: {\n\t\t\t\t\t\t\t\t\tid,\n\t\t\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t\t\t\timageSizeSlug,\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\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\t\t\tid,\n\t\t\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t\t\t\tsizeSlug: imageSizeSlug,\n\t\t\t\t\t\t\t\t\talign,\n\t\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\treturn createBlock( 'core/image', { align } );\n\t\t\t\t}\n\t\t\t\tif ( images.length > 0 ) {\n\t\t\t\t\treturn images.map( ( { url, alt, caption }, index ) =>\n\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\tid: ids[ index ],\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\talt,\n\t\t\t\t\t\t\tcaption,\n\t\t\t\t\t\t\talign,\n\t\t\t\t\t\t\tsizeSlug,\n\t\t\t\t\t\t} )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn createBlock( 'core/image', { align } );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { useState } from '@wordpress/element';
|
|
5
|
+
import { useSelect } from '@wordpress/data';
|
|
6
|
+
import { store as coreStore } from '@wordpress/core-data';
|
|
7
|
+
/**
|
|
8
|
+
* Retrieves the extended media info for each gallery image from the store. This is used to
|
|
9
|
+
* determine which image size options are available for the current gallery.
|
|
10
|
+
*
|
|
11
|
+
* @param {Array} innerBlockImages An array of the innerBlock images currently in the gallery.
|
|
12
|
+
*
|
|
13
|
+
* @return {Array} An array of media info options for each gallery image.
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
export default function useGetMedia(innerBlockImages) {
|
|
17
|
+
const [currentImageMedia, setCurrentImageMedia] = useState([]);
|
|
18
|
+
const imageMedia = useSelect(select => {
|
|
19
|
+
if (!(innerBlockImages !== null && innerBlockImages !== void 0 && innerBlockImages.length)) {
|
|
20
|
+
return currentImageMedia;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
const imageIds = innerBlockImages.map(imageBlock => imageBlock.attributes.id).filter(id => id !== undefined);
|
|
24
|
+
|
|
25
|
+
if (imageIds.length === 0) {
|
|
26
|
+
return currentImageMedia;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
const getMedia = select(coreStore).getMedia;
|
|
30
|
+
const newImageMedia = imageIds.map(img => {
|
|
31
|
+
return getMedia(img);
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
if (newImageMedia.some(img => !img)) {
|
|
35
|
+
return currentImageMedia;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
return newImageMedia;
|
|
39
|
+
}, [innerBlockImages]);
|
|
40
|
+
|
|
41
|
+
if ((imageMedia === null || imageMedia === void 0 ? void 0 : imageMedia.length) !== currentImageMedia.length || imageMedia.some(newImage => !currentImageMedia.find(currentImage => currentImage.id === newImage.id))) {
|
|
42
|
+
setCurrentImageMedia(imageMedia);
|
|
43
|
+
return imageMedia;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
return currentImageMedia;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=use-get-media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/gallery/use-get-media.js"],"names":["useState","useSelect","store","coreStore","useGetMedia","innerBlockImages","currentImageMedia","setCurrentImageMedia","imageMedia","select","length","imageIds","map","imageBlock","attributes","id","filter","undefined","getMedia","newImageMedia","img","some","newImage","find","currentImage"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,QAAT,QAAyB,oBAAzB;AACA,SAASC,SAAT,QAA0B,iBAA1B;AACA,SAASC,KAAK,IAAIC,SAAlB,QAAmC,sBAAnC;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,eAAe,SAASC,WAAT,CAAsBC,gBAAtB,EAAyC;AACvD,QAAM,CAAEC,iBAAF,EAAqBC,oBAArB,IAA8CP,QAAQ,CAAE,EAAF,CAA5D;AAEA,QAAMQ,UAAU,GAAGP,SAAS,CACzBQ,MAAF,IAAc;AACb,QAAK,EAAEJ,gBAAF,aAAEA,gBAAF,eAAEA,gBAAgB,CAAEK,MAApB,CAAL,EAAkC;AACjC,aAAOJ,iBAAP;AACA;;AAED,UAAMK,QAAQ,GAAGN,gBAAgB,CAC/BO,GADe,CACRC,UAAF,IAAkBA,UAAU,CAACC,UAAX,CAAsBC,EAD9B,EAEfC,MAFe,CAELD,EAAF,IAAUA,EAAE,KAAKE,SAFV,CAAjB;;AAIA,QAAKN,QAAQ,CAACD,MAAT,KAAoB,CAAzB,EAA6B;AAC5B,aAAOJ,iBAAP;AACA;;AACD,UAAMY,QAAQ,GAAGT,MAAM,CAAEN,SAAF,CAAN,CAAoBe,QAArC;AACA,UAAMC,aAAa,GAAGR,QAAQ,CAACC,GAAT,CAAgBQ,GAAF,IAAW;AAC9C,aAAOF,QAAQ,CAAEE,GAAF,CAAf;AACA,KAFqB,CAAtB;;AAIA,QAAKD,aAAa,CAACE,IAAd,CAAsBD,GAAF,IAAW,CAAEA,GAAjC,CAAL,EAA8C;AAC7C,aAAOd,iBAAP;AACA;;AAED,WAAOa,aAAP;AACA,GAvB0B,EAwB3B,CAAEd,gBAAF,CAxB2B,CAA5B;;AA2BA,MACC,CAAAG,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAEE,MAAZ,MAAuBJ,iBAAiB,CAACI,MAAzC,IACAF,UAAU,CAACa,IAAX,CACGC,QAAF,IACC,CAAEhB,iBAAiB,CAACiB,IAAlB,CACCC,YAAF,IAAoBA,YAAY,CAACT,EAAb,KAAoBO,QAAQ,CAACP,EADhD,CAFJ,CAFD,EAQE;AACDR,IAAAA,oBAAoB,CAAEC,UAAF,CAApB;AACA,WAAOA,UAAP;AACA;;AACD,SAAOF,iBAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Retrieves the extended media info for each gallery image from the store. This is used to\n * determine which image size options are available for the current gallery.\n *\n * @param {Array} innerBlockImages An array of the innerBlock images currently in the gallery.\n *\n * @return {Array} An array of media info options for each gallery image.\n */\nexport default function useGetMedia( innerBlockImages ) {\n\tconst [ currentImageMedia, setCurrentImageMedia ] = useState( [] );\n\n\tconst imageMedia = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! innerBlockImages?.length ) {\n\t\t\t\treturn currentImageMedia;\n\t\t\t}\n\n\t\t\tconst imageIds = innerBlockImages\n\t\t\t\t.map( ( imageBlock ) => imageBlock.attributes.id )\n\t\t\t\t.filter( ( id ) => id !== undefined );\n\n\t\t\tif ( imageIds.length === 0 ) {\n\t\t\t\treturn currentImageMedia;\n\t\t\t}\n\t\t\tconst getMedia = select( coreStore ).getMedia;\n\t\t\tconst newImageMedia = imageIds.map( ( img ) => {\n\t\t\t\treturn getMedia( img );\n\t\t\t} );\n\n\t\t\tif ( newImageMedia.some( ( img ) => ! img ) ) {\n\t\t\t\treturn currentImageMedia;\n\t\t\t}\n\n\t\t\treturn newImageMedia;\n\t\t},\n\t\t[ innerBlockImages ]\n\t);\n\n\tif (\n\t\timageMedia?.length !== currentImageMedia.length ||\n\t\timageMedia.some(\n\t\t\t( newImage ) =>\n\t\t\t\t! currentImageMedia.find(\n\t\t\t\t\t( currentImage ) => currentImage.id === newImage.id\n\t\t\t\t)\n\t\t)\n\t) {\n\t\tsetCurrentImageMedia( imageMedia );\n\t\treturn imageMedia;\n\t}\n\treturn currentImageMedia;\n}\n"]}
|