@wordpress/block-library 9.15.1 → 9.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/build/archives/edit.js +2 -2
- package/build/archives/edit.js.map +1 -1
- package/build/button/edit.js +2 -1
- package/build/button/edit.js.map +1 -1
- package/build/categories/edit.js +115 -37
- package/build/categories/edit.js.map +1 -1
- package/build/columns/edit.js +1 -1
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +1 -1
- package/build/columns/edit.native.js.map +1 -1
- package/build/comment-template/edit.js +2 -2
- package/build/comment-template/edit.js.map +1 -1
- package/build/comments/edit/comments-inspector-controls.js +6 -5
- package/build/comments/edit/comments-inspector-controls.js.map +1 -1
- package/build/comments-pagination/index.js +5 -0
- package/build/comments-pagination/index.js.map +1 -1
- package/build/comments-pagination-next/index.js +7 -6
- package/build/comments-pagination-next/index.js.map +1 -1
- package/build/comments-pagination-previous/index.js +7 -6
- package/build/comments-pagination-previous/index.js.map +1 -1
- package/build/cover/deprecated.js +1 -1
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +2 -9
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/details/edit.js +27 -18
- package/build/details/edit.js.map +1 -1
- package/build/details/index.js +12 -0
- package/build/details/index.js.map +1 -1
- package/build/details/save.js +2 -0
- package/build/details/save.js.map +1 -1
- package/build/embed/transforms.js +5 -2
- package/build/embed/transforms.js.map +1 -1
- package/build/embed/util.js +1 -1
- package/build/embed/util.js.map +1 -1
- package/build/file/edit.js +7 -4
- package/build/file/edit.js.map +1 -1
- package/build/file/transforms.js +1 -1
- package/build/file/transforms.js.map +1 -1
- package/build/file/utils/index.js +1 -1
- package/build/file/utils/index.js.map +1 -1
- package/build/form/variations.js +1 -1
- package/build/form/variations.js.map +1 -1
- package/build/form-input/edit.js +1 -1
- package/build/form-input/edit.js.map +1 -1
- package/build/gallery/edit.js +1 -1
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/transforms.js +2 -2
- package/build/gallery/transforms.js.map +1 -1
- package/build/gallery/use-get-new-images.js +1 -1
- package/build/gallery/use-get-new-images.js.map +1 -1
- package/build/group/edit.js +2 -9
- package/build/group/edit.js.map +1 -1
- package/build/home-link/edit.js +1 -2
- package/build/home-link/edit.js.map +1 -1
- package/build/latest-comments/edit.js +73 -26
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-posts/constants.js +2 -1
- package/build/latest-posts/constants.js.map +1 -1
- package/build/latest-posts/edit.js +91 -38
- package/build/latest-posts/edit.js.map +1 -1
- package/build/list-item/edit.native.js +2 -2
- package/build/list-item/edit.native.js.map +1 -1
- package/build/list-item/index.js +1 -1
- package/build/media-text/edit.native.js +2 -2
- package/build/media-text/edit.native.js.map +1 -1
- package/build/media-text/media-container.native.js +4 -4
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/navigation/edit/index.js +8 -4
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js +4 -4
- package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build/navigation/index.js +15 -0
- package/build/navigation/index.js.map +1 -1
- package/build/navigation-link/edit.js +15 -20
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/link-ui.js +9 -18
- package/build/navigation-link/link-ui.js.map +1 -1
- package/build/navigation-submenu/edit.js +1 -1
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/navigation-submenu/index.js +7 -0
- package/build/navigation-submenu/index.js.map +1 -1
- package/build/page-list/edit.js +1 -1
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/index.js +11 -0
- package/build/page-list/index.js.map +1 -1
- package/build/paragraph/edit.js +4 -14
- package/build/paragraph/edit.js.map +1 -1
- package/build/pattern/index.js +1 -1
- package/build/post-author-name/edit.js +41 -12
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-comments-link/index.js +7 -1
- package/build/post-comments-link/index.js.map +1 -1
- package/build/post-content/index.js +1 -0
- package/build/post-content/index.js.map +1 -1
- package/build/post-date/edit.js +1 -1
- package/build/post-date/edit.js.map +1 -1
- package/build/post-featured-image/edit.js +0 -6
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/overlay-controls.js +2 -1
- package/build/post-featured-image/overlay-controls.js.map +1 -1
- package/build/post-navigation-link/variations.js +2 -2
- package/build/post-navigation-link/variations.js.map +1 -1
- package/build/post-terms/edit.js +1 -0
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-time-to-read/index.js +1 -1
- package/build/query/edit/inspector-controls/author-control.js +1 -1
- package/build/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +110 -61
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/query-content.js +2 -6
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/utils.js +1 -1
- package/build/query/utils.js.map +1 -1
- package/build/query-no-results/index.js +1 -1
- package/build/query-pagination-numbers/edit.js +1 -1
- package/build/query-pagination-numbers/edit.js.map +1 -1
- package/build/query-title/edit.js +40 -14
- package/build/query-title/edit.js.map +1 -1
- package/build/query-total/index.js +7 -1
- package/build/query-total/index.js.map +1 -1
- package/build/quote/transforms.js +1 -1
- package/build/quote/transforms.js.map +1 -1
- package/build/read-more/edit.js +25 -7
- package/build/read-more/edit.js.map +1 -1
- package/build/rss/edit.js +1 -0
- package/build/rss/edit.js.map +1 -1
- package/build/rss/index.js +6 -0
- package/build/rss/index.js.map +1 -1
- package/build/search/edit.js +67 -48
- package/build/search/edit.js.map +1 -1
- package/build/separator/edit.js +2 -4
- package/build/separator/edit.js.map +1 -1
- package/build/site-logo/edit.js +26 -35
- package/build/site-logo/edit.js.map +1 -1
- package/build/social-links/edit.js +2 -1
- package/build/social-links/edit.js.map +1 -1
- package/build/spacer/controls.js +13 -9
- package/build/spacer/controls.js.map +1 -1
- package/build/spacer/edit.js +23 -21
- package/build/spacer/edit.js.map +1 -1
- package/build/table-of-contents/edit.js +24 -8
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +2 -9
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/utils/messages.js +22 -0
- package/build/utils/messages.js.map +1 -0
- package/build/video/edit-common-settings.js +1 -1
- package/build/video/edit-common-settings.js.map +1 -1
- package/build/video/edit.native.js +3 -3
- package/build/video/edit.native.js.map +1 -1
- package/build-module/archives/edit.js +2 -2
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/button/edit.js +3 -2
- package/build-module/button/edit.js.map +1 -1
- package/build-module/categories/edit.js +116 -38
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/columns/edit.js +1 -1
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +1 -1
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/comment-template/edit.js +2 -2
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comments/edit/comments-inspector-controls.js +5 -4
- package/build-module/comments/edit/comments-inspector-controls.js.map +1 -1
- package/build-module/comments-pagination/index.js +5 -0
- package/build-module/comments-pagination/index.js.map +1 -1
- package/build-module/comments-pagination-next/index.js +7 -6
- package/build-module/comments-pagination-next/index.js.map +1 -1
- package/build-module/comments-pagination-previous/index.js +7 -6
- package/build-module/comments-pagination-previous/index.js.map +1 -1
- package/build-module/cover/deprecated.js +1 -1
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +1 -8
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/details/edit.js +29 -20
- package/build-module/details/edit.js.map +1 -1
- package/build-module/details/index.js +12 -0
- package/build-module/details/index.js.map +1 -1
- package/build-module/details/save.js +2 -0
- package/build-module/details/save.js.map +1 -1
- package/build-module/embed/transforms.js +5 -2
- package/build-module/embed/transforms.js.map +1 -1
- package/build-module/embed/util.js +1 -1
- package/build-module/embed/util.js.map +1 -1
- package/build-module/file/edit.js +7 -4
- package/build-module/file/edit.js.map +1 -1
- package/build-module/file/transforms.js +1 -1
- package/build-module/file/transforms.js.map +1 -1
- package/build-module/file/utils/index.js +1 -1
- package/build-module/file/utils/index.js.map +1 -1
- package/build-module/form/variations.js +1 -1
- package/build-module/form/variations.js.map +1 -1
- package/build-module/form-input/edit.js +1 -1
- package/build-module/form-input/edit.js.map +1 -1
- package/build-module/gallery/edit.js +1 -1
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/transforms.js +2 -2
- package/build-module/gallery/transforms.js.map +1 -1
- package/build-module/gallery/use-get-new-images.js +1 -1
- package/build-module/gallery/use-get-new-images.js.map +1 -1
- package/build-module/group/edit.js +1 -8
- package/build-module/group/edit.js.map +1 -1
- package/build-module/home-link/edit.js +1 -2
- package/build-module/home-link/edit.js.map +1 -1
- package/build-module/latest-comments/edit.js +74 -27
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-posts/constants.js +1 -0
- package/build-module/latest-posts/constants.js.map +1 -1
- package/build-module/latest-posts/edit.js +93 -40
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/list-item/edit.native.js +2 -2
- package/build-module/list-item/edit.native.js.map +1 -1
- package/build-module/list-item/index.js +1 -1
- package/build-module/media-text/edit.native.js +2 -2
- package/build-module/media-text/edit.native.js.map +1 -1
- package/build-module/media-text/media-container.native.js +4 -4
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/navigation/edit/index.js +8 -4
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js +4 -4
- package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build-module/navigation/index.js +15 -0
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation-link/edit.js +16 -21
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/link-ui.js +9 -18
- package/build-module/navigation-link/link-ui.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +1 -1
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/navigation-submenu/index.js +7 -0
- package/build-module/navigation-submenu/index.js.map +1 -1
- package/build-module/page-list/edit.js +1 -1
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/index.js +11 -0
- package/build-module/page-list/index.js.map +1 -1
- package/build-module/paragraph/edit.js +5 -15
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/pattern/index.js +1 -1
- package/build-module/post-author-name/edit.js +42 -13
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-comments-link/index.js +7 -1
- package/build-module/post-comments-link/index.js.map +1 -1
- package/build-module/post-content/index.js +1 -0
- package/build-module/post-content/index.js.map +1 -1
- package/build-module/post-date/edit.js +1 -1
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-featured-image/edit.js +0 -6
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/overlay-controls.js +2 -1
- package/build-module/post-featured-image/overlay-controls.js.map +1 -1
- package/build-module/post-navigation-link/variations.js +2 -2
- package/build-module/post-navigation-link/variations.js.map +1 -1
- package/build-module/post-terms/edit.js +1 -0
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-time-to-read/index.js +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +111 -62
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/query-content.js +1 -5
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/utils.js +1 -1
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query-no-results/index.js +1 -1
- package/build-module/query-pagination-numbers/edit.js +1 -1
- package/build-module/query-pagination-numbers/edit.js.map +1 -1
- package/build-module/query-title/edit.js +41 -15
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/query-total/index.js +7 -1
- package/build-module/query-total/index.js.map +1 -1
- package/build-module/quote/transforms.js +1 -1
- package/build-module/quote/transforms.js.map +1 -1
- package/build-module/read-more/edit.js +26 -8
- package/build-module/read-more/edit.js.map +1 -1
- package/build-module/rss/edit.js +1 -0
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/rss/index.js +6 -0
- package/build-module/rss/index.js.map +1 -1
- package/build-module/search/edit.js +69 -50
- package/build-module/search/edit.js.map +1 -1
- package/build-module/separator/edit.js +1 -3
- package/build-module/separator/edit.js.map +1 -1
- package/build-module/site-logo/edit.js +27 -36
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/social-links/edit.js +2 -1
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/spacer/controls.js +13 -9
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/spacer/edit.js +24 -22
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/table-of-contents/edit.js +25 -9
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +1 -8
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/utils/messages.js +15 -0
- package/build-module/utils/messages.js.map +1 -0
- package/build-module/video/edit-common-settings.js +1 -1
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-module/video/edit.native.js +3 -3
- package/build-module/video/edit.native.js.map +1 -1
- package/build-style/editor-rtl.css +12 -86
- package/build-style/editor.css +12 -86
- package/build-style/freeform/editor-rtl.css +2 -4
- package/build-style/freeform/editor.css +2 -4
- package/build-style/gallery/editor-rtl.css +0 -46
- package/build-style/gallery/editor.css +0 -46
- package/build-style/image/style-rtl.css +24 -10
- package/build-style/image/style.css +24 -10
- package/build-style/navigation/style-rtl.css +8 -6
- package/build-style/navigation/style.css +8 -6
- package/build-style/navigation-link/editor-rtl.css +3 -0
- package/build-style/navigation-link/editor.css +3 -0
- package/build-style/paragraph/editor-rtl.css +4 -0
- package/build-style/paragraph/editor.css +4 -0
- package/build-style/post-featured-image/editor-rtl.css +1 -1
- package/build-style/post-featured-image/editor.css +1 -1
- package/build-style/query/editor-rtl.css +0 -27
- package/build-style/query/editor.css +0 -27
- package/build-style/site-logo/editor-rtl.css +2 -8
- package/build-style/site-logo/editor.css +2 -8
- package/build-style/social-links/style-rtl.css +2 -5
- package/build-style/social-links/style.css +2 -5
- package/build-style/style-rtl.css +34 -21
- package/build-style/style.css +34 -21
- package/package.json +35 -35
- package/src/archives/edit.js +2 -2
- package/src/audio/test/transforms.native.js +4 -3
- package/src/button/edit.js +6 -2
- package/src/categories/edit.js +133 -45
- package/src/columns/edit.js +1 -1
- package/src/columns/edit.native.js +1 -1
- package/src/comment-template/edit.js +2 -2
- package/src/comments/edit/comments-inspector-controls.js +5 -8
- package/src/comments-pagination/block.json +5 -0
- package/src/comments-pagination-next/block.json +0 -5
- package/src/comments-pagination-next/index.js +6 -0
- package/src/comments-pagination-previous/block.json +0 -5
- package/src/comments-pagination-previous/index.js +6 -0
- package/src/cover/deprecated.js +1 -1
- package/src/cover/edit/inspector-controls.js +1 -21
- package/src/cover/test/__snapshots__/edit.native.js.snap +1 -1
- package/src/cover/test/edit.js +7 -7
- package/src/cover/test/edit.native.js +2 -2
- package/src/cover/test/transforms.native.js +9 -5
- package/src/details/block.json +12 -0
- package/src/details/edit.js +29 -24
- package/src/details/save.js +6 -2
- package/src/editor.scss +1 -1
- package/src/embed/test/index.js +1 -1
- package/src/embed/transforms.js +3 -1
- package/src/embed/util.js +1 -1
- package/src/file/edit.js +4 -3
- package/src/file/test/transforms.native.js +4 -3
- package/src/file/transforms.js +1 -1
- package/src/file/utils/index.js +1 -1
- package/src/form/variations.js +1 -1
- package/src/form-input/edit.js +1 -1
- package/src/freeform/editor.scss +4 -3
- package/src/gallery/edit.js +1 -1
- package/src/gallery/editor.scss +0 -54
- package/src/gallery/test/transforms.native.js +4 -3
- package/src/gallery/transforms.js +2 -2
- package/src/gallery/use-get-new-images.js +1 -1
- package/src/group/edit.js +1 -20
- package/src/home-link/edit.js +0 -6
- package/src/image/block.json +8 -1
- package/src/image/editor.scss +1 -1
- package/src/image/index.php +9 -13
- package/src/image/style.scss +17 -7
- package/src/image/test/edit.native.js +1 -1
- package/src/image/test/transforms.native.js +4 -3
- package/src/latest-comments/edit.js +93 -33
- package/src/latest-posts/constants.js +1 -0
- package/src/latest-posts/edit.js +119 -44
- package/src/list/test/edit.native.js +10 -10
- package/src/list-item/block.json +1 -1
- package/src/list-item/edit.native.js +2 -2
- package/src/media-text/edit.native.js +2 -2
- package/src/media-text/media-container.native.js +4 -4
- package/src/media-text/test/transforms.native.js +9 -5
- package/src/navigation/edit/index.js +4 -0
- package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +4 -4
- package/src/navigation/edit/use-generate-default-navigation-title.js +4 -4
- package/src/navigation/index.js +20 -0
- package/src/navigation/style.scss +7 -4
- package/src/navigation-link/edit.js +26 -30
- package/src/navigation-link/editor.scss +27 -18
- package/src/navigation-link/link-ui.js +7 -13
- package/src/navigation-submenu/edit.js +1 -1
- package/src/navigation-submenu/index.js +7 -0
- package/src/navigation-submenu/index.php +21 -4
- package/src/page-list/block.json +11 -0
- package/src/page-list/edit.js +52 -50
- package/src/paragraph/edit.js +3 -18
- package/src/paragraph/editor.scss +7 -0
- package/src/paragraph/style.scss +1 -1
- package/src/pattern/block.json +1 -1
- package/src/post-author-name/edit.js +53 -15
- package/src/post-comments-link/block.json +7 -1
- package/src/post-content/block.json +2 -1
- package/src/post-date/edit.js +1 -3
- package/src/post-featured-image/edit.js +2 -15
- package/src/post-featured-image/editor.scss +2 -2
- package/src/post-featured-image/overlay-controls.js +1 -0
- package/src/post-navigation-link/variations.js +2 -2
- package/src/post-terms/edit.js +1 -0
- package/src/post-time-to-read/block.json +1 -1
- package/src/query/edit/inspector-controls/author-control.js +1 -1
- package/src/query/edit/inspector-controls/index.js +148 -88
- package/src/query/edit/query-content.js +1 -11
- package/src/query/editor.scss +0 -31
- package/src/query/utils.js +1 -1
- package/src/query-no-results/block.json +1 -1
- package/src/query-pagination-numbers/edit.js +1 -1
- package/src/query-title/edit.js +61 -19
- package/src/query-total/block.json +7 -1
- package/src/quote/transforms.js +1 -1
- package/src/read-more/edit.js +35 -11
- package/src/rss/block.json +6 -0
- package/src/rss/edit.js +1 -0
- package/src/search/edit.js +100 -71
- package/src/separator/deprecated.scss +1 -1
- package/src/separator/edit.js +1 -6
- package/src/site-logo/edit.js +34 -47
- package/src/site-logo/editor.scss +3 -6
- package/src/social-link/index.php +2 -2
- package/src/social-links/edit.js +1 -0
- package/src/social-links/style.scss +3 -3
- package/src/spacer/controls.js +10 -9
- package/src/spacer/edit.js +25 -23
- package/src/table-of-contents/edit.js +38 -19
- package/src/template-part/edit/advanced-controls.js +1 -21
- package/src/utils/messages.js +31 -0
- package/src/video/edit-common-settings.js +1 -1
- package/src/video/edit.native.js +3 -3
- package/src/video/test/transforms.native.js +4 -3
package/build/file/edit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_components","_data","_blockEditor","_element","_compose","_i18n","_icons","_coreData","_notices","_inspector","_utils","_removeAnchorTag","_hooks","_jsxRuntime","MIN_PREVIEW_HEIGHT","exports","MAX_PREVIEW_HEIGHT","ClipboardToolbarButton","text","disabled","createNotice","useDispatch","noticesStore","ref","useCopyToClipboard","__","isDismissible","type","jsx","ToolbarButton","className","children","FileEdit","attributes","isSelected","setAttributes","clientId","id","fileName","href","textLinkHref","textLinkTarget","showDownloadButton","downloadButtonText","displayPreview","previewHeight","temporaryURL","setTemporaryURL","useState","blob","media","useSelect","select","undefined","coreStore","getMedia","createErrorNotice","toggleSelection","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","useUploadMediaFromBlobURL","url","onChange","onSelectFile","onError","onUploadError","useEffect","RichText","isEmpty","_x","newMedia","_attributes$displayPr","_attributes$previewHe","fileId","isBlobURL","isPdf","endsWith","pdfAttributes","title","message","changeLinkDestinationOption","newHref","changeOpenInNewWindow","newValue","changeShowDownloadButton","changeDisplayPreview","handleOnResizeStop","event","direction","elt","delta","newHeight","parseInt","height","changePreviewHeight","Math","max","attachmentPage","link","blockProps","useBlockProps","clsx","getAnimateClassName","displayPreviewInEditor","browserSupportsPdfs","MediaPlaceholder","icon","BlockIcon","labels","instructions","onSelect","accept","jsxs","Fragment","default","hrefs","openInNewWindow","BlockControls","group","MediaReplaceFlow","mediaId","mediaURL","onReset","ResizableBox","size","minHeight","maxHeight","minWidth","grid","enable","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","onResizeStart","onResizeStop","showHandle","data","identifier","tagName","value","placeholder","withoutInteractiveFormatting","removeAnchorTag","__experimentalGetElementClassName","_default"],"sources":["@wordpress/block-library/src/file/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\t__unstableGetAnimateClassName as getAnimateClassName,\n\tResizableBox,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { useEffect, useState } from '@wordpress/element';\nimport { useCopyToClipboard } from '@wordpress/compose';\nimport { __, _x } from '@wordpress/i18n';\nimport { file as icon } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport FileBlockInspector from './inspector';\nimport { browserSupportsPdfs } from './utils';\nimport removeAnchorTag from '../utils/remove-anchor-tag';\nimport { useUploadMediaFromBlobURL } from '../utils/hooks';\n\nexport const MIN_PREVIEW_HEIGHT = 200;\nexport const MAX_PREVIEW_HEIGHT = 2000;\n\nfunction ClipboardToolbarButton( { text, disabled } ) {\n\tconst { createNotice } = useDispatch( noticesStore );\n\tconst ref = useCopyToClipboard( text, () => {\n\t\tcreateNotice( 'info', __( 'Copied URL to clipboard.' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t} );\n\n\treturn (\n\t\t<ToolbarButton\n\t\t\tclassName=\"components-clipboard-toolbar-button\"\n\t\t\tref={ ref }\n\t\t\tdisabled={ disabled }\n\t\t>\n\t\t\t{ __( 'Copy URL' ) }\n\t\t</ToolbarButton>\n\t);\n}\n\nfunction FileEdit( { attributes, isSelected, setAttributes, clientId } ) {\n\tconst {\n\t\tid,\n\t\tfileName,\n\t\thref,\n\t\ttextLinkHref,\n\t\ttextLinkTarget,\n\t\tshowDownloadButton,\n\t\tdownloadButtonText,\n\t\tdisplayPreview,\n\t\tpreviewHeight,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\tconst { media } = useSelect(\n\t\t( select ) => ( {\n\t\t\tmedia:\n\t\t\t\tid === undefined\n\t\t\t\t\t? undefined\n\t\t\t\t\t: select( coreStore ).getMedia( id ),\n\t\t} ),\n\t\t[ id ]\n\t);\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { toggleSelection, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tonChange: onSelectFile,\n\t\tonError: onUploadError,\n\t} );\n\n\t// Note: Handle setting a default value for `downloadButtonText` via HTML API\n\t// when it supports replacing text content for HTML tags.\n\tuseEffect( () => {\n\t\tif ( RichText.isEmpty( downloadButtonText ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tdownloadButtonText: _x( 'Download', 'button label' ),\n\t\t\t} );\n\t\t}\n\t\t// This effect should only run on mount.\n\t}, [] );\n\n\tfunction onSelectFile( newMedia ) {\n\t\tif ( ! newMedia || ! newMedia.url ) {\n\t\t\t// Reset attributes.\n\t\t\tsetAttributes( {\n\t\t\t\thref: undefined,\n\t\t\t\tfileName: undefined,\n\t\t\t\ttextLinkHref: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tfileId: undefined,\n\t\t\t\tdisplayPreview: undefined,\n\t\t\t\tpreviewHeight: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( newMedia.url ) ) {\n\t\t\tsetTemporaryURL( newMedia.url );\n\t\t\treturn;\n\t\t}\n\n\t\tconst isPdf = newMedia.url.endsWith( '.pdf' );\n\t\tconst pdfAttributes = {\n\t\t\tdisplayPreview: isPdf\n\t\t\t\t? attributes.displayPreview ?? true\n\t\t\t\t: undefined,\n\t\t\tpreviewHeight: isPdf ? attributes.previewHeight ?? 600 : undefined,\n\t\t};\n\n\t\tsetAttributes( {\n\t\t\thref: newMedia.url,\n\t\t\tfileName: newMedia.title,\n\t\t\ttextLinkHref: newMedia.url,\n\t\t\tid: newMedia.id,\n\t\t\tfileId: `wp-block-file--media-${ clientId }`,\n\t\t\tblob: undefined,\n\t\t\t...pdfAttributes,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tsetAttributes( { href: undefined } );\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction changeLinkDestinationOption( newHref ) {\n\t\t// Choose Media File or Attachment Page (when file is in Media Library).\n\t\tsetAttributes( { textLinkHref: newHref } );\n\t}\n\n\tfunction changeOpenInNewWindow( newValue ) {\n\t\tsetAttributes( {\n\t\t\ttextLinkTarget: newValue ? '_blank' : false,\n\t\t} );\n\t}\n\n\tfunction changeShowDownloadButton( newValue ) {\n\t\tsetAttributes( { showDownloadButton: newValue } );\n\t}\n\n\tfunction changeDisplayPreview( newValue ) {\n\t\tsetAttributes( { displayPreview: newValue } );\n\t}\n\n\tfunction handleOnResizeStop( event, direction, elt, delta ) {\n\t\ttoggleSelection( true );\n\n\t\tconst newHeight = parseInt( previewHeight + delta.height, 10 );\n\t\tsetAttributes( { previewHeight: newHeight } );\n\t}\n\n\tfunction changePreviewHeight( newValue ) {\n\t\tconst newHeight = Math.max(\n\t\t\tparseInt( newValue, 10 ),\n\t\t\tMIN_PREVIEW_HEIGHT\n\t\t);\n\t\tsetAttributes( { previewHeight: newHeight } );\n\t}\n\n\tconst attachmentPage = media && media.link;\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx(\n\t\t\t!! temporaryURL && getAnimateClassName( { type: 'loading' } ),\n\t\t\t{\n\t\t\t\t'is-transient': !! temporaryURL,\n\t\t\t}\n\t\t),\n\t} );\n\n\tconst displayPreviewInEditor = browserSupportsPdfs() && displayPreview;\n\n\tif ( ! href && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tlabels={ {\n\t\t\t\t\t\ttitle: __( 'File' ),\n\t\t\t\t\t\tinstructions: __(\n\t\t\t\t\t\t\t'Drag and drop a file, upload, or choose from your library.'\n\t\t\t\t\t\t),\n\t\t\t\t\t} }\n\t\t\t\t\tonSelect={ onSelectFile }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\taccept=\"*\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<FileBlockInspector\n\t\t\t\threfs={ {\n\t\t\t\t\thref: href || temporaryURL,\n\t\t\t\t\ttextLinkHref,\n\t\t\t\t\tattachmentPage,\n\t\t\t\t} }\n\t\t\t\t{ ...{\n\t\t\t\t\topenInNewWindow: !! textLinkTarget,\n\t\t\t\t\tshowDownloadButton,\n\t\t\t\t\tchangeLinkDestinationOption,\n\t\t\t\t\tchangeOpenInNewWindow,\n\t\t\t\t\tchangeShowDownloadButton,\n\t\t\t\t\tdisplayPreview,\n\t\t\t\t\tchangeDisplayPreview,\n\t\t\t\t\tpreviewHeight,\n\t\t\t\t\tchangePreviewHeight,\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ href }\n\t\t\t\t\taccept=\"*\"\n\t\t\t\t\tonSelect={ onSelectFile }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tonReset={ () => onSelectFile( undefined ) }\n\t\t\t\t/>\n\t\t\t\t<ClipboardToolbarButton\n\t\t\t\t\ttext={ href }\n\t\t\t\t\tdisabled={ isBlobURL( href ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ displayPreviewInEditor && (\n\t\t\t\t\t<ResizableBox\n\t\t\t\t\t\tsize={ { height: previewHeight } }\n\t\t\t\t\t\tminHeight={ MIN_PREVIEW_HEIGHT }\n\t\t\t\t\t\tmaxHeight={ MAX_PREVIEW_HEIGHT }\n\t\t\t\t\t\tminWidth=\"100%\"\n\t\t\t\t\t\tgrid={ [ 10, 10 ] }\n\t\t\t\t\t\tenable={ {\n\t\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\t\tright: false,\n\t\t\t\t\t\t\tbottom: true,\n\t\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResizeStart={ () => toggleSelection( false ) }\n\t\t\t\t\t\tonResizeStop={ handleOnResizeStop }\n\t\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t\t>\n\t\t\t\t\t\t<object\n\t\t\t\t\t\t\tclassName=\"wp-block-file__preview\"\n\t\t\t\t\t\t\tdata={ href }\n\t\t\t\t\t\t\ttype=\"application/pdf\"\n\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t'Embed of the selected PDF file.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ ! isSelected && (\n\t\t\t\t\t\t\t<div className=\"wp-block-file__preview-overlay\" />\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ResizableBox>\n\t\t\t\t) }\n\t\t\t\t<div className=\"wp-block-file__content-wrapper\">\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"fileName\"\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tvalue={ fileName }\n\t\t\t\t\t\tplaceholder={ __( 'Write file name…' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tonChange={ ( text ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tfileName: removeAnchorTag( text ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thref={ textLinkHref }\n\t\t\t\t\t/>\n\t\t\t\t\t{ showDownloadButton && (\n\t\t\t\t\t\t<div className=\"wp-block-file__button-richtext-wrapper\">\n\t\t\t\t\t\t\t{ /* Using RichText here instead of PlainText so that it can be styled like a button. */ }\n\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\tidentifier=\"downloadButtonText\"\n\t\t\t\t\t\t\t\ttagName=\"div\" // Must be block-level or else cursor disappears.\n\t\t\t\t\t\t\t\taria-label={ __( 'Download button text' ) }\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'wp-block-file__button',\n\t\t\t\t\t\t\t\t\t__experimentalGetElementClassName(\n\t\t\t\t\t\t\t\t\t\t'button'\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tvalue={ downloadButtonText }\n\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\tplaceholder={ __( 'Add text…' ) }\n\t\t\t\t\t\t\t\tonChange={ ( text ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tdownloadButtonText:\n\t\t\t\t\t\t\t\t\t\t\tremoveAnchorTag( text ),\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default FileEdit;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_blob","_components","_data","_blockEditor","_element","_compose","_i18n","_icons","_coreData","_notices","_inspector","_utils","_removeAnchorTag","_hooks","_jsxRuntime","MIN_PREVIEW_HEIGHT","exports","MAX_PREVIEW_HEIGHT","ClipboardToolbarButton","text","disabled","createNotice","useDispatch","noticesStore","ref","useCopyToClipboard","__","isDismissible","type","jsx","ToolbarButton","className","children","FileEdit","attributes","isSelected","setAttributes","clientId","id","fileName","href","textLinkHref","textLinkTarget","showDownloadButton","downloadButtonText","displayPreview","previewHeight","temporaryURL","setTemporaryURL","useState","blob","media","useSelect","select","undefined","coreStore","getMedia","createErrorNotice","toggleSelection","__unstableMarkNextChangeAsNotPersistent","blockEditorStore","useUploadMediaFromBlobURL","url","onChange","onSelectFile","onError","onUploadError","useEffect","RichText","isEmpty","_x","newMedia","_attributes$displayPr","_attributes$previewHe","fileId","isBlobURL","isPdf","endsWith","pdfAttributes","title","message","changeLinkDestinationOption","newHref","changeOpenInNewWindow","newValue","changeShowDownloadButton","changeDisplayPreview","handleOnResizeStop","event","direction","elt","delta","newHeight","parseInt","height","changePreviewHeight","Math","max","attachmentPage","link","blockProps","useBlockProps","clsx","getAnimateClassName","displayPreviewInEditor","browserSupportsPdfs","MediaPlaceholder","icon","BlockIcon","labels","instructions","onSelect","accept","jsxs","Fragment","default","hrefs","openInNewWindow","BlockControls","group","MediaReplaceFlow","mediaId","mediaURL","onReset","ResizableBox","size","width","minHeight","maxHeight","grid","enable","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","onResizeStart","onResizeStop","showHandle","data","identifier","tagName","value","placeholder","withoutInteractiveFormatting","removeAnchorTag","__experimentalGetElementClassName","_default"],"sources":["@wordpress/block-library/src/file/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\t__unstableGetAnimateClassName as getAnimateClassName,\n\tResizableBox,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tBlockIcon,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { useEffect, useState } from '@wordpress/element';\nimport { useCopyToClipboard } from '@wordpress/compose';\nimport { __, _x } from '@wordpress/i18n';\nimport { file as icon } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport FileBlockInspector from './inspector';\nimport { browserSupportsPdfs } from './utils';\nimport removeAnchorTag from '../utils/remove-anchor-tag';\nimport { useUploadMediaFromBlobURL } from '../utils/hooks';\n\nexport const MIN_PREVIEW_HEIGHT = 200;\nexport const MAX_PREVIEW_HEIGHT = 2000;\n\nfunction ClipboardToolbarButton( { text, disabled } ) {\n\tconst { createNotice } = useDispatch( noticesStore );\n\tconst ref = useCopyToClipboard( text, () => {\n\t\tcreateNotice( 'info', __( 'Copied URL to clipboard.' ), {\n\t\t\tisDismissible: true,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t} );\n\n\treturn (\n\t\t<ToolbarButton\n\t\t\tclassName=\"components-clipboard-toolbar-button\"\n\t\t\tref={ ref }\n\t\t\tdisabled={ disabled }\n\t\t>\n\t\t\t{ __( 'Copy URL' ) }\n\t\t</ToolbarButton>\n\t);\n}\n\nfunction FileEdit( { attributes, isSelected, setAttributes, clientId } ) {\n\tconst {\n\t\tid,\n\t\tfileName,\n\t\thref,\n\t\ttextLinkHref,\n\t\ttextLinkTarget,\n\t\tshowDownloadButton,\n\t\tdownloadButtonText,\n\t\tdisplayPreview,\n\t\tpreviewHeight,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState( attributes.blob );\n\tconst { media } = useSelect(\n\t\t( select ) => ( {\n\t\t\tmedia:\n\t\t\t\tid === undefined\n\t\t\t\t\t? undefined\n\t\t\t\t\t: select( coreStore ).getMedia( id ),\n\t\t} ),\n\t\t[ id ]\n\t);\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { toggleSelection, __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseUploadMediaFromBlobURL( {\n\t\turl: temporaryURL,\n\t\tonChange: onSelectFile,\n\t\tonError: onUploadError,\n\t} );\n\n\t// Note: Handle setting a default value for `downloadButtonText` via HTML API\n\t// when it supports replacing text content for HTML tags.\n\tuseEffect( () => {\n\t\tif ( RichText.isEmpty( downloadButtonText ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tdownloadButtonText: _x( 'Download', 'button label' ),\n\t\t\t} );\n\t\t}\n\t\t// This effect should only run on mount.\n\t}, [] );\n\n\tfunction onSelectFile( newMedia ) {\n\t\tif ( ! newMedia || ! newMedia.url ) {\n\t\t\t// Reset attributes.\n\t\t\tsetAttributes( {\n\t\t\t\thref: undefined,\n\t\t\t\tfileName: undefined,\n\t\t\t\ttextLinkHref: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\tfileId: undefined,\n\t\t\t\tdisplayPreview: undefined,\n\t\t\t\tpreviewHeight: undefined,\n\t\t\t} );\n\t\t\tsetTemporaryURL();\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( newMedia.url ) ) {\n\t\t\tsetTemporaryURL( newMedia.url );\n\t\t\treturn;\n\t\t}\n\n\t\tconst isPdf = newMedia.url.endsWith( '.pdf' );\n\t\tconst pdfAttributes = {\n\t\t\tdisplayPreview: isPdf\n\t\t\t\t? attributes.displayPreview ?? true\n\t\t\t\t: undefined,\n\t\t\tpreviewHeight: isPdf ? attributes.previewHeight ?? 600 : undefined,\n\t\t};\n\n\t\tsetAttributes( {\n\t\t\thref: newMedia.url,\n\t\t\tfileName: newMedia.title,\n\t\t\ttextLinkHref: newMedia.url,\n\t\t\tid: newMedia.id,\n\t\t\tfileId: `wp-block-file--media-${ clientId }`,\n\t\t\tblob: undefined,\n\t\t\t...pdfAttributes,\n\t\t} );\n\t\tsetTemporaryURL();\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tsetAttributes( { href: undefined } );\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction changeLinkDestinationOption( newHref ) {\n\t\t// Choose Media File or Attachment Page (when file is in Media Library).\n\t\tsetAttributes( { textLinkHref: newHref } );\n\t}\n\n\tfunction changeOpenInNewWindow( newValue ) {\n\t\tsetAttributes( {\n\t\t\ttextLinkTarget: newValue ? '_blank' : false,\n\t\t} );\n\t}\n\n\tfunction changeShowDownloadButton( newValue ) {\n\t\tsetAttributes( { showDownloadButton: newValue } );\n\t}\n\n\tfunction changeDisplayPreview( newValue ) {\n\t\tsetAttributes( { displayPreview: newValue } );\n\t}\n\n\tfunction handleOnResizeStop( event, direction, elt, delta ) {\n\t\ttoggleSelection( true );\n\n\t\tconst newHeight = parseInt( previewHeight + delta.height, 10 );\n\t\tsetAttributes( { previewHeight: newHeight } );\n\t}\n\n\tfunction changePreviewHeight( newValue ) {\n\t\tconst newHeight = Math.max(\n\t\t\tparseInt( newValue, 10 ),\n\t\t\tMIN_PREVIEW_HEIGHT\n\t\t);\n\t\tsetAttributes( { previewHeight: newHeight } );\n\t}\n\n\tconst attachmentPage = media && media.link;\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx(\n\t\t\t!! temporaryURL && getAnimateClassName( { type: 'loading' } ),\n\t\t\t{\n\t\t\t\t'is-transient': !! temporaryURL,\n\t\t\t}\n\t\t),\n\t} );\n\n\tconst displayPreviewInEditor = browserSupportsPdfs() && displayPreview;\n\n\tif ( ! href && ! temporaryURL ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<MediaPlaceholder\n\t\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\t\tlabels={ {\n\t\t\t\t\t\ttitle: __( 'File' ),\n\t\t\t\t\t\tinstructions: __(\n\t\t\t\t\t\t\t'Drag and drop a file, upload, or choose from your library.'\n\t\t\t\t\t\t),\n\t\t\t\t\t} }\n\t\t\t\t\tonSelect={ onSelectFile }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\taccept=\"*\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<FileBlockInspector\n\t\t\t\threfs={ {\n\t\t\t\t\thref: href || temporaryURL,\n\t\t\t\t\ttextLinkHref,\n\t\t\t\t\tattachmentPage,\n\t\t\t\t} }\n\t\t\t\t{ ...{\n\t\t\t\t\topenInNewWindow: !! textLinkTarget,\n\t\t\t\t\tshowDownloadButton,\n\t\t\t\t\tchangeLinkDestinationOption,\n\t\t\t\t\tchangeOpenInNewWindow,\n\t\t\t\t\tchangeShowDownloadButton,\n\t\t\t\t\tdisplayPreview,\n\t\t\t\t\tchangeDisplayPreview,\n\t\t\t\t\tpreviewHeight,\n\t\t\t\t\tchangePreviewHeight,\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ href }\n\t\t\t\t\taccept=\"*\"\n\t\t\t\t\tonSelect={ onSelectFile }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\tonReset={ () => onSelectFile( undefined ) }\n\t\t\t\t/>\n\t\t\t\t<ClipboardToolbarButton\n\t\t\t\t\ttext={ href }\n\t\t\t\t\tdisabled={ isBlobURL( href ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ displayPreviewInEditor && (\n\t\t\t\t\t<ResizableBox\n\t\t\t\t\t\tsize={ { height: previewHeight, width: '100%' } }\n\t\t\t\t\t\tminHeight={ MIN_PREVIEW_HEIGHT }\n\t\t\t\t\t\tmaxHeight={ MAX_PREVIEW_HEIGHT }\n\t\t\t\t\t\t// The horizontal grid value must be 1 or else the width may snap during a\n\t\t\t\t\t\t// resize even though only vertical resizing is enabled.\n\t\t\t\t\t\tgrid={ [ 1, 10 ] }\n\t\t\t\t\t\tenable={ {\n\t\t\t\t\t\t\ttop: false,\n\t\t\t\t\t\t\tright: false,\n\t\t\t\t\t\t\tbottom: true,\n\t\t\t\t\t\t\tleft: false,\n\t\t\t\t\t\t\ttopRight: false,\n\t\t\t\t\t\t\tbottomRight: false,\n\t\t\t\t\t\t\tbottomLeft: false,\n\t\t\t\t\t\t\ttopLeft: false,\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonResizeStart={ () => toggleSelection( false ) }\n\t\t\t\t\t\tonResizeStop={ handleOnResizeStop }\n\t\t\t\t\t\tshowHandle={ isSelected }\n\t\t\t\t\t>\n\t\t\t\t\t\t<object\n\t\t\t\t\t\t\tclassName=\"wp-block-file__preview\"\n\t\t\t\t\t\t\tdata={ href }\n\t\t\t\t\t\t\ttype=\"application/pdf\"\n\t\t\t\t\t\t\taria-label={ __(\n\t\t\t\t\t\t\t\t'Embed of the selected PDF file.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{ ! isSelected && (\n\t\t\t\t\t\t\t<div className=\"wp-block-file__preview-overlay\" />\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ResizableBox>\n\t\t\t\t) }\n\t\t\t\t<div className=\"wp-block-file__content-wrapper\">\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"fileName\"\n\t\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\t\tvalue={ fileName }\n\t\t\t\t\t\tplaceholder={ __( 'Write file name…' ) }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tonChange={ ( text ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tfileName: removeAnchorTag( text ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thref={ textLinkHref }\n\t\t\t\t\t/>\n\t\t\t\t\t{ showDownloadButton && (\n\t\t\t\t\t\t<div className=\"wp-block-file__button-richtext-wrapper\">\n\t\t\t\t\t\t\t{ /* Using RichText here instead of PlainText so that it can be styled like a button. */ }\n\t\t\t\t\t\t\t<RichText\n\t\t\t\t\t\t\t\tidentifier=\"downloadButtonText\"\n\t\t\t\t\t\t\t\ttagName=\"div\" // Must be block-level or else cursor disappears.\n\t\t\t\t\t\t\t\taria-label={ __( 'Download button text' ) }\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'wp-block-file__button',\n\t\t\t\t\t\t\t\t\t__experimentalGetElementClassName(\n\t\t\t\t\t\t\t\t\t\t'button'\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tvalue={ downloadButtonText }\n\t\t\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\t\t\tplaceholder={ __( 'Add text…' ) }\n\t\t\t\t\t\t\t\tonChange={ ( text ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tdownloadButtonText:\n\t\t\t\t\t\t\t\t\t\t\tremoveAnchorTag( text ),\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n\nexport default FileEdit;\n"],"mappings":"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","ignoreList":[]}
|
package/build/file/transforms.js
CHANGED
|
@@ -20,7 +20,7 @@ const transforms = {
|
|
|
20
20
|
isMatch(files) {
|
|
21
21
|
return files.length > 0;
|
|
22
22
|
},
|
|
23
|
-
// We define a lower
|
|
23
|
+
// We define a lower priority (higher number) than the default of 10. This
|
|
24
24
|
// ensures that the File block is only created as a fallback.
|
|
25
25
|
priority: 15,
|
|
26
26
|
transform: files => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_blob","require","_blocks","_data","_coreData","_url","transforms","from","type","isMatch","files","length","priority","transform","blocks","forEach","file","blobURL","createBlobURL","startsWith","push","createBlock","blob","fileName","name","attributes","href","src","caption","textLinkHref","id","anchor","url","getFilename","to","getMedia","select","coreStore","media","mime_type","includes","_default","exports","default"],"sources":["@wordpress/block-library/src/file/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlobURL } from '@wordpress/blob';\nimport { createBlock } from '@wordpress/blocks';\nimport { select } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { getFilename } from '@wordpress/url';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'files',\n\t\t\tisMatch( files ) {\n\t\t\t\treturn files.length > 0;\n\t\t\t},\n\t\t\t// We define a lower
|
|
1
|
+
{"version":3,"names":["_blob","require","_blocks","_data","_coreData","_url","transforms","from","type","isMatch","files","length","priority","transform","blocks","forEach","file","blobURL","createBlobURL","startsWith","push","createBlock","blob","fileName","name","attributes","href","src","caption","textLinkHref","id","anchor","url","getFilename","to","getMedia","select","coreStore","media","mime_type","includes","_default","exports","default"],"sources":["@wordpress/block-library/src/file/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlobURL } from '@wordpress/blob';\nimport { createBlock } from '@wordpress/blocks';\nimport { select } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { getFilename } from '@wordpress/url';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'files',\n\t\t\tisMatch( files ) {\n\t\t\t\treturn files.length > 0;\n\t\t\t},\n\t\t\t// We define a lower priority (higher number) than the default of 10. This\n\t\t\t// ensures that the File block is only created as a fallback.\n\t\t\tpriority: 15,\n\t\t\ttransform: ( files ) => {\n\t\t\t\tconst blocks = [];\n\n\t\t\t\tfiles.forEach( ( file ) => {\n\t\t\t\t\tconst blobURL = createBlobURL( file );\n\n\t\t\t\t\t// File will be uploaded in componentDidMount()\n\t\t\t\t\tif ( file.type.startsWith( 'video/' ) ) {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/video', {\n\t\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( file.type.startsWith( 'image/' ) ) {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/image', {\n\t\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( file.type.startsWith( 'audio/' ) ) {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/audio', {\n\t\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tblocks.push(\n\t\t\t\t\t\t\tcreateBlock( 'core/file', {\n\t\t\t\t\t\t\t\tblob: blobURL,\n\t\t\t\t\t\t\t\tfileName: file.name,\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\n\t\t\t\treturn blocks;\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/audio' ],\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/file', {\n\t\t\t\t\thref: attributes.src,\n\t\t\t\t\tfileName: attributes.caption,\n\t\t\t\t\ttextLinkHref: attributes.src,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/video' ],\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/file', {\n\t\t\t\t\thref: attributes.src,\n\t\t\t\t\tfileName: attributes.caption,\n\t\t\t\t\ttextLinkHref: attributes.src,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/file', {\n\t\t\t\t\thref: attributes.url,\n\t\t\t\t\tfileName:\n\t\t\t\t\t\tattributes.caption || getFilename( attributes.url ),\n\t\t\t\t\ttextLinkHref: attributes.url,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/audio' ],\n\t\t\tisMatch: ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tconst { getMedia } = select( coreStore );\n\t\t\t\tconst media = getMedia( id );\n\t\t\t\treturn !! media && media.mime_type.includes( 'audio' );\n\t\t\t},\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/audio', {\n\t\t\t\t\tsrc: attributes.href,\n\t\t\t\t\tcaption: attributes.fileName,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/video' ],\n\t\t\tisMatch: ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tconst { getMedia } = select( coreStore );\n\t\t\t\tconst media = getMedia( id );\n\t\t\t\treturn !! media && media.mime_type.includes( 'video' );\n\t\t\t},\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/video', {\n\t\t\t\t\tsrc: attributes.href,\n\t\t\t\t\tcaption: attributes.fileName,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/image' ],\n\t\t\tisMatch: ( { id } ) => {\n\t\t\t\tif ( ! id ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tconst { getMedia } = select( coreStore );\n\t\t\t\tconst media = getMedia( id );\n\t\t\t\treturn !! media && media.mime_type.includes( 'image' );\n\t\t\t},\n\t\t\ttransform: ( attributes ) => {\n\t\t\t\treturn createBlock( 'core/image', {\n\t\t\t\t\turl: attributes.href,\n\t\t\t\t\tcaption: attributes.fileName,\n\t\t\t\t\tid: attributes.id,\n\t\t\t\t\tanchor: attributes.anchor,\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["browserSupportsPdfs","window","navigator","userAgent","indexOf","maxTouchPoints","ActiveXObject","createActiveXObject","exports","type","ax","e","undefined"],"sources":["@wordpress/block-library/src/file/utils/index.js"],"sourcesContent":["/**\n * Uses a combination of user agent matching and feature detection to determine whether\n * the current browser supports rendering PDFs inline.\n *\n * @return {boolean} Whether or not the browser supports inline PDFs.\n */\nexport const browserSupportsPdfs = () => {\n\t// Most mobile devices include \"Mobi\" in their UA.\n\tif ( window.navigator.userAgent.indexOf( 'Mobi' ) > -1 ) {\n\t\treturn false;\n\t}\n\n\t// Android tablets are the
|
|
1
|
+
{"version":3,"names":["browserSupportsPdfs","window","navigator","userAgent","indexOf","maxTouchPoints","ActiveXObject","createActiveXObject","exports","type","ax","e","undefined"],"sources":["@wordpress/block-library/src/file/utils/index.js"],"sourcesContent":["/**\n * Uses a combination of user agent matching and feature detection to determine whether\n * the current browser supports rendering PDFs inline.\n *\n * @return {boolean} Whether or not the browser supports inline PDFs.\n */\nexport const browserSupportsPdfs = () => {\n\t// Most mobile devices include \"Mobi\" in their UA.\n\tif ( window.navigator.userAgent.indexOf( 'Mobi' ) > -1 ) {\n\t\treturn false;\n\t}\n\n\t// Android tablets are the notable exception.\n\tif ( window.navigator.userAgent.indexOf( 'Android' ) > -1 ) {\n\t\treturn false;\n\t}\n\n\t// iPad pretends to be a Mac.\n\tif (\n\t\twindow.navigator.userAgent.indexOf( 'Macintosh' ) > -1 &&\n\t\twindow.navigator.maxTouchPoints &&\n\t\twindow.navigator.maxTouchPoints > 2\n\t) {\n\t\treturn false;\n\t}\n\n\t// IE only supports PDFs when there's an ActiveX object available for it.\n\tif (\n\t\t!! ( window.ActiveXObject || 'ActiveXObject' in window ) &&\n\t\t! (\n\t\t\tcreateActiveXObject( 'AcroPDF.PDF' ) ||\n\t\t\tcreateActiveXObject( 'PDF.PdfCtrl' )\n\t\t)\n\t) {\n\t\treturn false;\n\t}\n\n\treturn true;\n};\n\n/**\n * Helper function for creating ActiveX objects, catching any errors that are thrown\n * when it's generated.\n *\n * @param {string} type The name of the ActiveX object to create.\n * @return {window.ActiveXObject|undefined} The generated ActiveXObject, or null if it failed.\n */\nconst createActiveXObject = ( type ) => {\n\tlet ax;\n\ttry {\n\t\tax = new window.ActiveXObject( type );\n\t} catch ( e ) {\n\t\tax = undefined;\n\t}\n\treturn ax;\n};\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,mBAAmB,GAAGA,CAAA,KAAM;EACxC;EACA,IAAKC,MAAM,CAACC,SAAS,CAACC,SAAS,CAACC,OAAO,CAAE,MAAO,CAAC,GAAG,CAAC,CAAC,EAAG;IACxD,OAAO,KAAK;EACb;;EAEA;EACA,IAAKH,MAAM,CAACC,SAAS,CAACC,SAAS,CAACC,OAAO,CAAE,SAAU,CAAC,GAAG,CAAC,CAAC,EAAG;IAC3D,OAAO,KAAK;EACb;;EAEA;EACA,IACCH,MAAM,CAACC,SAAS,CAACC,SAAS,CAACC,OAAO,CAAE,WAAY,CAAC,GAAG,CAAC,CAAC,IACtDH,MAAM,CAACC,SAAS,CAACG,cAAc,IAC/BJ,MAAM,CAACC,SAAS,CAACG,cAAc,GAAG,CAAC,EAClC;IACD,OAAO,KAAK;EACb;;EAEA;EACA,IACC,CAAC,EAAIJ,MAAM,CAACK,aAAa,IAAI,eAAe,IAAIL,MAAM,CAAE,IACxD,EACCM,mBAAmB,CAAE,aAAc,CAAC,IACpCA,mBAAmB,CAAE,aAAc,CAAC,CACpC,EACA;IACD,OAAO,KAAK;EACb;EAEA,OAAO,IAAI;AACZ,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AANAC,OAAA,CAAAR,mBAAA,GAAAA,mBAAA;AAOA,MAAMO,mBAAmB,GAAKE,IAAI,IAAM;EACvC,IAAIC,EAAE;EACN,IAAI;IACHA,EAAE,GAAG,IAAIT,MAAM,CAACK,aAAa,CAAEG,IAAK,CAAC;EACtC,CAAC,CAAC,OAAQE,CAAC,EAAG;IACbD,EAAE,GAAGE,SAAS;EACf;EACA,OAAOF,EAAE;AACV,CAAC","ignoreList":[]}
|
package/build/form/variations.js
CHANGED
|
@@ -48,7 +48,7 @@ const variations = [{
|
|
|
48
48
|
isActive: blockAttributes => !blockAttributes?.type || blockAttributes?.type === 'text'
|
|
49
49
|
}, {
|
|
50
50
|
name: 'wp-privacy-form',
|
|
51
|
-
title: (0, _i18n.__)('Experimental
|
|
51
|
+
title: (0, _i18n.__)('Experimental Privacy Request Form'),
|
|
52
52
|
keywords: ['GDPR'],
|
|
53
53
|
description: (0, _i18n.__)('A form to request data exports and/or deletion.'),
|
|
54
54
|
attributes: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_utils","variations","name","title","__","description","attributes","submissionMethod","action","method","anchor","isDefault","innerBlocks","type","label","required","visibilityPermissions","scope","isActive","blockAttributes","keywords","formSubmissionNotificationSuccess","formSubmissionNotificationError","content","value","_default","exports","default"],"sources":["@wordpress/block-library/src/form/variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n/**\n * Internal dependencies\n */\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst variations = [\n\t{\n\t\tname: 'comment-form',\n\t\ttitle: __( 'Experimental Comment form' ),\n\t\tdescription: __( 'A comment form for posts and pages.' ),\n\t\tattributes: {\n\t\t\tsubmissionMethod: 'custom',\n\t\t\taction: '{SITE_URL}/wp-comments-post.php',\n\t\t\tmethod: 'post',\n\t\t\tanchor: 'comment-form',\n\t\t},\n\t\tisDefault: false,\n\t\tinnerBlocks: [\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'text',\n\t\t\t\t\tname: 'author',\n\t\t\t\t\tlabel: __( 'Name' ),\n\t\t\t\t\trequired: true,\n\t\t\t\t\tvisibilityPermissions: 'logged-out',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'email',\n\t\t\t\t\tname: 'email',\n\t\t\t\t\tlabel: __( 'Email' ),\n\t\t\t\t\trequired: true,\n\t\t\t\t\tvisibilityPermissions: 'logged-out',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'textarea',\n\t\t\t\t\tname: 'comment',\n\t\t\t\t\tlabel: __( 'Comment' ),\n\t\t\t\t\trequired: true,\n\t\t\t\t\tvisibilityPermissions: 'all',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[ 'core/form-submit-button', {} ],\n\t\t],\n\t\tscope: [ 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\t! blockAttributes?.type || blockAttributes?.type === 'text',\n\t},\n\t{\n\t\tname: 'wp-privacy-form',\n\t\ttitle: __( 'Experimental
|
|
1
|
+
{"version":3,"names":["_i18n","require","_utils","variations","name","title","__","description","attributes","submissionMethod","action","method","anchor","isDefault","innerBlocks","type","label","required","visibilityPermissions","scope","isActive","blockAttributes","keywords","formSubmissionNotificationSuccess","formSubmissionNotificationError","content","value","_default","exports","default"],"sources":["@wordpress/block-library/src/form/variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n/**\n * Internal dependencies\n */\nimport {\n\tformSubmissionNotificationSuccess,\n\tformSubmissionNotificationError,\n} from './utils.js';\n\nconst variations = [\n\t{\n\t\tname: 'comment-form',\n\t\ttitle: __( 'Experimental Comment form' ),\n\t\tdescription: __( 'A comment form for posts and pages.' ),\n\t\tattributes: {\n\t\t\tsubmissionMethod: 'custom',\n\t\t\taction: '{SITE_URL}/wp-comments-post.php',\n\t\t\tmethod: 'post',\n\t\t\tanchor: 'comment-form',\n\t\t},\n\t\tisDefault: false,\n\t\tinnerBlocks: [\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'text',\n\t\t\t\t\tname: 'author',\n\t\t\t\t\tlabel: __( 'Name' ),\n\t\t\t\t\trequired: true,\n\t\t\t\t\tvisibilityPermissions: 'logged-out',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'email',\n\t\t\t\t\tname: 'email',\n\t\t\t\t\tlabel: __( 'Email' ),\n\t\t\t\t\trequired: true,\n\t\t\t\t\tvisibilityPermissions: 'logged-out',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'textarea',\n\t\t\t\t\tname: 'comment',\n\t\t\t\t\tlabel: __( 'Comment' ),\n\t\t\t\t\trequired: true,\n\t\t\t\t\tvisibilityPermissions: 'all',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[ 'core/form-submit-button', {} ],\n\t\t],\n\t\tscope: [ 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\t! blockAttributes?.type || blockAttributes?.type === 'text',\n\t},\n\t{\n\t\tname: 'wp-privacy-form',\n\t\ttitle: __( 'Experimental Privacy Request Form' ),\n\t\tkeywords: [ 'GDPR' ],\n\t\tdescription: __( 'A form to request data exports and/or deletion.' ),\n\t\tattributes: {\n\t\t\tsubmissionMethod: 'custom',\n\t\t\taction: '',\n\t\t\tmethod: 'post',\n\t\t\tanchor: 'gdpr-form',\n\t\t},\n\t\tisDefault: false,\n\t\tinnerBlocks: [\n\t\t\tformSubmissionNotificationSuccess,\n\t\t\tformSubmissionNotificationError,\n\t\t\t[\n\t\t\t\t'core/paragraph',\n\t\t\t\t{\n\t\t\t\t\tcontent: __(\n\t\t\t\t\t\t'To request an export or deletion of your personal data on this site, please fill-in the form below. You can define the type of request you wish to perform, and your email address. Once the form is submitted, you will receive a confirmation email with instructions on the next steps.'\n\t\t\t\t\t),\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'email',\n\t\t\t\t\tname: 'email',\n\t\t\t\t\tlabel: __( 'Enter your email address.' ),\n\t\t\t\t\trequired: true,\n\t\t\t\t\tvisibilityPermissions: 'all',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'checkbox',\n\t\t\t\t\tname: 'export_personal_data',\n\t\t\t\t\tlabel: __( 'Request data export' ),\n\t\t\t\t\trequired: false,\n\t\t\t\t\tvisibilityPermissions: 'all',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'checkbox',\n\t\t\t\t\tname: 'remove_personal_data',\n\t\t\t\t\tlabel: __( 'Request data deletion' ),\n\t\t\t\t\trequired: false,\n\t\t\t\t\tvisibilityPermissions: 'all',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[ 'core/form-submit-button', {} ],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'hidden',\n\t\t\t\t\tname: 'wp-action',\n\t\t\t\t\tvalue: 'wp_privacy_send_request',\n\t\t\t\t},\n\t\t\t],\n\t\t\t[\n\t\t\t\t'core/form-input',\n\t\t\t\t{\n\t\t\t\t\ttype: 'hidden',\n\t\t\t\t\tname: 'wp-privacy-request',\n\t\t\t\t\tvalue: '1',\n\t\t\t\t},\n\t\t\t],\n\t\t],\n\t\tscope: [ 'inserter', 'transform' ],\n\t\tisActive: ( blockAttributes ) =>\n\t\t\t! blockAttributes?.type || blockAttributes?.type === 'text',\n\t},\n];\n\nexport default variations;\n"],"mappings":"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","ignoreList":[]}
|
package/build/form-input/edit.js
CHANGED
|
@@ -81,7 +81,7 @@ function InputFieldBlock({
|
|
|
81
81
|
name: newVal
|
|
82
82
|
});
|
|
83
83
|
},
|
|
84
|
-
help: (0, _i18n.__)('Affects the "name"
|
|
84
|
+
help: (0, _i18n.__)('Affects the "name" attribute of the input element, and is used as a name for the form submission results.')
|
|
85
85
|
})
|
|
86
86
|
})]
|
|
87
87
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_blockEditor","_components","_element","_jsxRuntime","InputFieldBlock","attributes","setAttributes","className","type","name","label","inlineLabel","required","placeholder","value","blockProps","useBlockProps","ref","useRef","TagName","borderProps","useBorderProps","colorProps","useColorProps","current","focus","isCheckboxOrRadio","controls","jsxs","Fragment","children","jsx","InspectorControls","PanelBody","title","__","CheckboxControl","__nextHasNoMarginBottom","checked","onChange","newVal","group","TextControl","__next40pxDefaultSize","autoComplete","help","content","RichText","tagName","newLabel","clsx","event","target","undefined","style","_default","exports","default"],"sources":["@wordpress/block-library/src/form-input/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n} from '@wordpress/block-editor';\nimport { PanelBody, TextControl, CheckboxControl } from '@wordpress/components';\n\nimport { useRef } from '@wordpress/element';\n\nfunction InputFieldBlock( { attributes, setAttributes, className } ) {\n\tconst { type, name, label, inlineLabel, required, placeholder, value } =\n\t\tattributes;\n\tconst blockProps = useBlockProps();\n\tconst ref = useRef();\n\tconst TagName = type === 'textarea' ? 'textarea' : 'input';\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tif ( ref.current ) {\n\t\tref.current.focus();\n\t}\n\n\t// Note: radio inputs aren't implemented yet.\n\tconst isCheckboxOrRadio = type === 'checkbox' || type === 'radio';\n\n\tconst controls = (\n\t\t<>\n\t\t\t{ 'hidden' !== type && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t{ 'checkbox' !== type && (\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Inline label' ) }\n\t\t\t\t\t\t\t\tchecked={ inlineLabel }\n\t\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tinlineLabel: newVal,\n\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Required' ) }\n\t\t\t\t\t\t\tchecked={ required }\n\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\trequired: newVal,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ name }\n\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tname: newVal,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Affects the \"name\"
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_blockEditor","_components","_element","_jsxRuntime","InputFieldBlock","attributes","setAttributes","className","type","name","label","inlineLabel","required","placeholder","value","blockProps","useBlockProps","ref","useRef","TagName","borderProps","useBorderProps","colorProps","useColorProps","current","focus","isCheckboxOrRadio","controls","jsxs","Fragment","children","jsx","InspectorControls","PanelBody","title","__","CheckboxControl","__nextHasNoMarginBottom","checked","onChange","newVal","group","TextControl","__next40pxDefaultSize","autoComplete","help","content","RichText","tagName","newLabel","clsx","event","target","undefined","style","_default","exports","default"],"sources":["@wordpress/block-library/src/form-input/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n} from '@wordpress/block-editor';\nimport { PanelBody, TextControl, CheckboxControl } from '@wordpress/components';\n\nimport { useRef } from '@wordpress/element';\n\nfunction InputFieldBlock( { attributes, setAttributes, className } ) {\n\tconst { type, name, label, inlineLabel, required, placeholder, value } =\n\t\tattributes;\n\tconst blockProps = useBlockProps();\n\tconst ref = useRef();\n\tconst TagName = type === 'textarea' ? 'textarea' : 'input';\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tif ( ref.current ) {\n\t\tref.current.focus();\n\t}\n\n\t// Note: radio inputs aren't implemented yet.\n\tconst isCheckboxOrRadio = type === 'checkbox' || type === 'radio';\n\n\tconst controls = (\n\t\t<>\n\t\t\t{ 'hidden' !== type && (\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t{ 'checkbox' !== type && (\n\t\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Inline label' ) }\n\t\t\t\t\t\t\t\tchecked={ inlineLabel }\n\t\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tinlineLabel: newVal,\n\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<CheckboxControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Required' ) }\n\t\t\t\t\t\t\tchecked={ required }\n\t\t\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\trequired: newVal,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\tvalue={ name }\n\t\t\t\t\tonChange={ ( newVal ) => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tname: newVal,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Affects the \"name\" attribute of the input element, and is used as a name for the form submission results.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tconst content = (\n\t\t<RichText\n\t\t\ttagName=\"span\"\n\t\t\tclassName=\"wp-block-form-input__label-content\"\n\t\t\tvalue={ label }\n\t\t\tonChange={ ( newLabel ) => setAttributes( { label: newLabel } ) }\n\t\t\taria-label={ label ? __( 'Label' ) : __( 'Empty label' ) }\n\t\t\tdata-empty={ ! label }\n\t\t\tplaceholder={ __( 'Type the label for this input' ) }\n\t\t/>\n\t);\n\n\tif ( 'hidden' === type ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<input\n\t\t\t\t\ttype=\"hidden\"\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-form-input__input',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className\n\t\t\t\t\t) }\n\t\t\t\t\taria-label={ __( 'Value' ) }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\t\tsetAttributes( { value: event.target.value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t{ controls }\n\t\t\t<span\n\t\t\t\tclassName={ clsx( 'wp-block-form-input__label', {\n\t\t\t\t\t'is-label-inline': inlineLabel || 'checkbox' === type,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t{ ! isCheckboxOrRadio && content }\n\t\t\t\t<TagName\n\t\t\t\t\ttype={ 'textarea' === type ? undefined : type }\n\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-form-input__input',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className\n\t\t\t\t\t) }\n\t\t\t\t\taria-label={ __( 'Optional placeholder text' ) }\n\t\t\t\t\t// We hide the placeholder field's placeholder when there is a value. This\n\t\t\t\t\t// stops screen readers from reading the placeholder field's placeholder\n\t\t\t\t\t// which is confusing.\n\t\t\t\t\tplaceholder={\n\t\t\t\t\t\tplaceholder ? undefined : __( 'Optional placeholder…' )\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ placeholder }\n\t\t\t\t\tonChange={ ( event ) =>\n\t\t\t\t\t\tsetAttributes( { placeholder: event.target.value } )\n\t\t\t\t\t}\n\t\t\t\t\taria-required={ required }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t\t{ isCheckboxOrRadio && content }\n\t\t\t</span>\n\t\t</div>\n\t);\n}\n\nexport default InputFieldBlock;\n"],"mappings":"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","ignoreList":[]}
|
package/build/gallery/edit.js
CHANGED
|
@@ -53,7 +53,7 @@ const LINK_OPTIONS = [{
|
|
|
53
53
|
noticeText: (0, _i18n.__)('Media Files')
|
|
54
54
|
}, {
|
|
55
55
|
icon: _icons.fullscreen,
|
|
56
|
-
label: (0, _i18n.__)('
|
|
56
|
+
label: (0, _i18n.__)('Enlarge on click'),
|
|
57
57
|
value: _constants.LINK_DESTINATION_LIGHTBOX,
|
|
58
58
|
noticeText: (0, _i18n.__)('Lightbox effect'),
|
|
59
59
|
infoText: (0, _i18n.__)('Scale images with a lightbox effect')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_blockEditor","_element","_i18n","_data","_primitives","_blocks","_blob","_notices","_icons","_sharedIcon","_shared","_utils","_utils2","_gallery","_constants","_useImageSizes","_useGetNewImages","_useGetMedia","_gapStyles","_jsxRuntime","MAX_COLUMNS","LINK_OPTIONS","icon","customLink","label","__","value","LINK_DESTINATION_ATTACHMENT","noticeText","imageIcon","LINK_DESTINATION_MEDIA","fullscreen","LINK_DESTINATION_LIGHTBOX","infoText","linkOff","_x","LINK_DESTINATION_NONE","ALLOWED_MEDIA_TYPES","PLACEHOLDER_TEXT","Platform","isNative","MOBILE_CONTROL_PROPS_RANGE_CONTROL","type","DEFAULT_BLOCK","name","EMPTY_ARRAY","GalleryEdit","props","setAttributes","attributes","className","clientId","isSelected","insertBlocksAfter","isContentLocked","onFocus","lightboxSetting","useSettings","linkOptions","allowEditing","filter","option","columns","imageCrop","randomOrder","linkTarget","linkTo","sizeSlug","__unstableMarkNextChangeAsNotPersistent","replaceInnerBlocks","updateBlockAttributes","selectBlock","useDispatch","blockEditorStore","createSuccessNotice","createErrorNotice","noticesStore","getBlock","getSettings","innerBlockImages","blockWasJustInserted","multiGallerySelection","useSelect","select","_getBlock$innerBlocks","getBlockName","getMultiSelectedBlockClientIds","_getSettings","_getBlock","wasBlockJustInserted","multiSelectedClientIds","innerBlocks","length","every","_clientId","images","useMemo","map","block","id","url","fromSavedContent","Boolean","originalContent","imageData","useGetMedia","newImages","useGetNewImages","useEffect","forEach","newImage","buildImageAttributes","align","undefined","imageSizeOptions","useImageSizes","imageAttributes","image","find","newClassName","newLinkTarget","rel","getUpdatedLinkTargetSettings","pickRelevantMediaFiles","getHrefAndDestination","linkDestination","caption","raw","alt","alt_text","isValidFileType","file","nativeFileData","mediaTypeSelector","media_type","some","mediaType","indexOf","blob","updateImages","selectedImages","newFileUploads","Object","prototype","toString","call","imageArray","Array","from","createBlobURL","processedImages","newOrderMap","reduce","result","index","existingImageBlocks","img","newImageList","existingImg","newBlocks","createBlock","concat","sort","a","b","onUploadError","message","setLinkTo","changedAttributes","blocks","push","linkToText","linkType","sprintf","setColumnsNumber","toggleImageCrop","toggleRandomOrder","toggleOpenInNewTab","openInNewTab","updateImagesSize","newSizeSlug","getImageSizeAttributes","imageSize","size","window","wp","media","view","settings","defaultProps","link","hasImages","hasImageIds","imagesUploading","mediaPlaceholderProps","web","addToGallery","disableMediaButtons","native","isAppender","autoOpenMediaUpload","mediaPlaceholder","jsx","MediaPlaceholder","handleUpload","sharedIcon","labels","title","instructions","onSelect","accept","allowedTypes","multiple","onError","blockProps","useBlockProps","clsx","nativeInnerBlockProps","marginHorizontal","marginVertical","innerBlocksProps","useInnerBlocksProps","defaultBlock","directInsert","orientation","renderAppender","jsxs","View","children","hasLinkTo","Fragment","InspectorControls","PanelBody","RangeControl","__nextHasNoMarginBottom","defaultColumnsNumber","onChange","min","max","Math","required","__next40pxDefaultSize","SelectControl","help","options","hideCancelButton","ToggleControl","checked","isWeb","BaseControl","VisualLabel","Spinner","BlockControls","group","ToolbarDropdownMenu","linkIcon","onClose","MenuGroup","linkItem","isOptionSelected","MenuItem","iconPosition","onClick","role","info","MediaReplaceFlow","mediaIds","default","blockGap","style","spacing"],"sources":["@wordpress/block-library/src/gallery/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tRangeControl,\n\tSpinner,\n\tMenuGroup,\n\tMenuItem,\n\tToolbarDropdownMenu,\n} from '@wordpress/components';\nimport {\n\tstore as blockEditorStore,\n\tMediaPlaceholder,\n\tInspectorControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tMediaReplaceFlow,\n\tuseSettings,\n} from '@wordpress/block-editor';\nimport { Platform, useEffect, useMemo } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { View } from '@wordpress/primitives';\nimport { createBlock } from '@wordpress/blocks';\nimport { createBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\nimport {\n\tlink as linkIcon,\n\tcustomLink,\n\timage as imageIcon,\n\tlinkOff,\n\tfullscreen,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { sharedIcon } from './shared-icon';\nimport { defaultColumnsNumber, pickRelevantMediaFiles } from './shared';\nimport { getHrefAndDestination } from './utils';\nimport {\n\tgetUpdatedLinkTargetSettings,\n\tgetImageSizeAttributes,\n} from '../image/utils';\nimport Gallery from './gallery';\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tLINK_DESTINATION_LIGHTBOX,\n} from './constants';\nimport useImageSizes from './use-image-sizes';\nimport useGetNewImages from './use-get-new-images';\nimport useGetMedia from './use-get-media';\nimport GapStyles from './gap-styles';\n\nconst MAX_COLUMNS = 8;\nconst LINK_OPTIONS = [\n\t{\n\t\ticon: customLink,\n\t\tlabel: __( 'Link images to attachment pages' ),\n\t\tvalue: LINK_DESTINATION_ATTACHMENT,\n\t\tnoticeText: __( 'Attachment Pages' ),\n\t},\n\t{\n\t\ticon: imageIcon,\n\t\tlabel: __( 'Link images to media files' ),\n\t\tvalue: LINK_DESTINATION_MEDIA,\n\t\tnoticeText: __( 'Media Files' ),\n\t},\n\t{\n\t\ticon: fullscreen,\n\t\tlabel: __( 'Expand on click' ),\n\t\tvalue: LINK_DESTINATION_LIGHTBOX,\n\t\tnoticeText: __( 'Lightbox effect' ),\n\t\tinfoText: __( 'Scale images with a lightbox effect' ),\n\t},\n\t{\n\t\ticon: linkOff,\n\t\tlabel: _x( 'None', 'Media item link option' ),\n\t\tvalue: LINK_DESTINATION_NONE,\n\t\tnoticeText: __( 'None' ),\n\t},\n];\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nconst PLACEHOLDER_TEXT = Platform.isNative\n\t? __( 'Add media' )\n\t: __( 'Drag and drop images, upload, or choose from your library.' );\n\nconst MOBILE_CONTROL_PROPS_RANGE_CONTROL = Platform.isNative\n\t? { type: 'stepper' }\n\t: {};\n\nconst DEFAULT_BLOCK = { name: 'core/image' };\nconst EMPTY_ARRAY = [];\n\nexport default function GalleryEdit( props ) {\n\tconst {\n\t\tsetAttributes,\n\t\tattributes,\n\t\tclassName,\n\t\tclientId,\n\t\tisSelected,\n\t\tinsertBlocksAfter,\n\t\tisContentLocked,\n\t\tonFocus,\n\t} = props;\n\n\tconst [ lightboxSetting ] = useSettings( 'blocks.core/image.lightbox' );\n\n\tconst linkOptions = ! lightboxSetting?.allowEditing\n\t\t? LINK_OPTIONS.filter(\n\t\t\t\t( option ) => option.value !== LINK_DESTINATION_LIGHTBOX\n\t\t )\n\t\t: LINK_OPTIONS;\n\n\tconst { columns, imageCrop, randomOrder, linkTarget, linkTo, sizeSlug } =\n\t\tattributes;\n\n\tconst {\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\treplaceInnerBlocks,\n\t\tupdateBlockAttributes,\n\t\tselectBlock,\n\t} = useDispatch( blockEditorStore );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst {\n\t\tgetBlock,\n\t\tgetSettings,\n\t\tinnerBlockImages,\n\t\tblockWasJustInserted,\n\t\tmultiGallerySelection,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tgetMultiSelectedBlockClientIds,\n\t\t\t\tgetSettings: _getSettings,\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\twasBlockJustInserted,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst multiSelectedClientIds = getMultiSelectedBlockClientIds();\n\n\t\t\treturn {\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\tgetSettings: _getSettings,\n\t\t\t\tinnerBlockImages:\n\t\t\t\t\t_getBlock( clientId )?.innerBlocks ?? EMPTY_ARRAY,\n\t\t\t\tblockWasJustInserted: wasBlockJustInserted(\n\t\t\t\t\tclientId,\n\t\t\t\t\t'inserter_menu'\n\t\t\t\t),\n\t\t\t\tmultiGallerySelection:\n\t\t\t\t\tmultiSelectedClientIds.length &&\n\t\t\t\t\tmultiSelectedClientIds.every(\n\t\t\t\t\t\t( _clientId ) =>\n\t\t\t\t\t\t\tgetBlockName( _clientId ) === 'core/gallery'\n\t\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst images = useMemo(\n\t\t() =>\n\t\t\tinnerBlockImages?.map( ( block ) => ( {\n\t\t\t\tclientId: block.clientId,\n\t\t\t\tid: block.attributes.id,\n\t\t\t\turl: block.attributes.url,\n\t\t\t\tattributes: block.attributes,\n\t\t\t\tfromSavedContent: Boolean( block.originalContent ),\n\t\t\t} ) ),\n\t\t[ innerBlockImages ]\n\t);\n\n\tconst imageData = useGetMedia( innerBlockImages );\n\n\tconst newImages = useGetNewImages( images, imageData );\n\n\tuseEffect( () => {\n\t\tnewImages?.forEach( ( newImage ) => {\n\t\t\t// Update the images data without creating new undo levels.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateBlockAttributes( newImage.clientId, {\n\t\t\t\t...buildImageAttributes( newImage.attributes ),\n\t\t\t\tid: newImage.id,\n\t\t\t\talign: undefined,\n\t\t\t} );\n\t\t} );\n\t}, [ newImages ] );\n\n\tconst imageSizeOptions = useImageSizes(\n\t\timageData,\n\t\tisSelected,\n\t\tgetSettings\n\t);\n\n\t/**\n\t * Determines the image attributes that should be applied to an image block\n\t * after the gallery updates.\n\t *\n\t * The gallery will receive the full collection of images when a new image\n\t * is added. As a result we need to reapply the image's original settings if\n\t * it already existed in the gallery. If the image is in fact new, we need\n\t * to apply the gallery's current settings to the image.\n\t *\n\t * @param {Object} imageAttributes Media object for the actual image.\n\t * @return {Object} Attributes to set on the new image block.\n\t */\n\tfunction buildImageAttributes( imageAttributes ) {\n\t\tconst image = imageAttributes.id\n\t\t\t? imageData.find( ( { id } ) => id === imageAttributes.id )\n\t\t\t: null;\n\n\t\tlet newClassName;\n\t\tif ( imageAttributes.className && imageAttributes.className !== '' ) {\n\t\t\tnewClassName = imageAttributes.className;\n\t\t}\n\n\t\tlet newLinkTarget;\n\t\tif ( imageAttributes.linkTarget || imageAttributes.rel ) {\n\t\t\t// When transformed from image blocks, the link destination and rel attributes are inherited.\n\t\t\tnewLinkTarget = {\n\t\t\t\tlinkTarget: imageAttributes.linkTarget,\n\t\t\t\trel: imageAttributes.rel,\n\t\t\t};\n\t\t} else {\n\t\t\t// When an image is added, update the link destination and rel attributes according to the gallery settings\n\t\t\tnewLinkTarget = getUpdatedLinkTargetSettings(\n\t\t\t\tlinkTarget,\n\t\t\t\tattributes\n\t\t\t);\n\t\t}\n\n\t\treturn {\n\t\t\t...pickRelevantMediaFiles( image, sizeSlug ),\n\t\t\t...getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tlinkTo,\n\t\t\t\timageAttributes?.linkDestination\n\t\t\t),\n\t\t\t...newLinkTarget,\n\t\t\tclassName: newClassName,\n\t\t\tsizeSlug,\n\t\t\tcaption: imageAttributes.caption || image.caption?.raw,\n\t\t\talt: imageAttributes.alt || image.alt_text,\n\t\t};\n\t}\n\n\tfunction isValidFileType( file ) {\n\t\t// It's necessary to retrieve the media type from the raw image data for already-uploaded images on native.\n\t\tconst nativeFileData =\n\t\t\tPlatform.isNative && file.id\n\t\t\t\t? imageData.find( ( { id } ) => id === file.id )\n\t\t\t\t: null;\n\n\t\tconst mediaTypeSelector = nativeFileData\n\t\t\t? nativeFileData?.media_type\n\t\t\t: file.type;\n\n\t\treturn (\n\t\t\tALLOWED_MEDIA_TYPES.some(\n\t\t\t\t( mediaType ) => mediaTypeSelector?.indexOf( mediaType ) === 0\n\t\t\t) || file.blob\n\t\t);\n\t}\n\n\tfunction updateImages( selectedImages ) {\n\t\tconst newFileUploads =\n\t\t\tObject.prototype.toString.call( selectedImages ) ===\n\t\t\t'[object FileList]';\n\n\t\tconst imageArray = newFileUploads\n\t\t\t? Array.from( selectedImages ).map( ( file ) => {\n\t\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\treturn file;\n\t\t\t } )\n\t\t\t: selectedImages;\n\n\t\tif ( ! imageArray.every( isValidFileType ) ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\t__(\n\t\t\t\t\t'If uploading to a gallery all files need to be image formats'\n\t\t\t\t),\n\t\t\t\t{ id: 'gallery-upload-invalid-file', type: 'snackbar' }\n\t\t\t);\n\t\t}\n\n\t\tconst processedImages = imageArray\n\t\t\t.filter( ( file ) => file.url || isValidFileType( file ) )\n\t\t\t.map( ( file ) => {\n\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tblob: file.blob || createBlobURL( file ),\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\treturn file;\n\t\t\t} );\n\n\t\t// Because we are reusing existing innerImage blocks any reordering\n\t\t// done in the media library will be lost so we need to reapply that ordering\n\t\t// once the new image blocks are merged in with existing.\n\t\tconst newOrderMap = processedImages.reduce(\n\t\t\t( result, image, index ) => (\n\t\t\t\t( result[ image.id ] = index ), result\n\t\t\t),\n\t\t\t{}\n\t\t);\n\n\t\tconst existingImageBlocks = ! newFileUploads\n\t\t\t? innerBlockImages.filter( ( block ) =>\n\t\t\t\t\tprocessedImages.find(\n\t\t\t\t\t\t( img ) => img.id === block.attributes.id\n\t\t\t\t\t)\n\t\t\t )\n\t\t\t: innerBlockImages;\n\n\t\tconst newImageList = processedImages.filter(\n\t\t\t( img ) =>\n\t\t\t\t! existingImageBlocks.find(\n\t\t\t\t\t( existingImg ) => img.id === existingImg.attributes.id\n\t\t\t\t)\n\t\t);\n\n\t\tconst newBlocks = newImageList.map( ( image ) => {\n\t\t\treturn createBlock( 'core/image', {\n\t\t\t\tid: image.id,\n\t\t\t\tblob: image.blob,\n\t\t\t\turl: image.url,\n\t\t\t\tcaption: image.caption,\n\t\t\t\talt: image.alt,\n\t\t\t} );\n\t\t} );\n\n\t\treplaceInnerBlocks(\n\t\t\tclientId,\n\t\t\texistingImageBlocks\n\t\t\t\t.concat( newBlocks )\n\t\t\t\t.sort(\n\t\t\t\t\t( a, b ) =>\n\t\t\t\t\t\tnewOrderMap[ a.attributes.id ] -\n\t\t\t\t\t\tnewOrderMap[ b.attributes.id ]\n\t\t\t\t)\n\t\t);\n\n\t\t// Select the first block to scroll into view when new blocks are added.\n\t\tif ( newBlocks?.length > 0 ) {\n\t\t\tselectBlock( newBlocks[ 0 ].clientId );\n\t\t}\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction setLinkTo( value ) {\n\t\tsetAttributes( { linkTo: value } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\n\t\t\tchangedAttributes[ block.clientId ] = getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tvalue,\n\t\t\t\tfalse,\n\t\t\t\tblock.attributes,\n\t\t\t\tlightboxSetting\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst linkToText = [ ...linkOptions ].find(\n\t\t\t( linkType ) => linkType.value === value\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image links updated to: %s' ),\n\t\t\t\tlinkToText.noticeText\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-linkTo',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tfunction setColumnsNumber( value ) {\n\t\tsetAttributes( { columns: value } );\n\t}\n\n\tfunction toggleImageCrop() {\n\t\tsetAttributes( { imageCrop: ! imageCrop } );\n\t}\n\n\tfunction toggleRandomOrder() {\n\t\tsetAttributes( { randomOrder: ! randomOrder } );\n\t}\n\n\tfunction toggleOpenInNewTab( openInNewTab ) {\n\t\tconst newLinkTarget = openInNewTab ? '_blank' : undefined;\n\t\tsetAttributes( { linkTarget: newLinkTarget } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tchangedAttributes[ block.clientId ] = getUpdatedLinkTargetSettings(\n\t\t\t\tnewLinkTarget,\n\t\t\t\tblock.attributes\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst noticeText = openInNewTab\n\t\t\t? __( 'All gallery images updated to open in new tab' )\n\t\t\t: __( 'All gallery images updated to not open in new tab' );\n\t\tcreateSuccessNotice( noticeText, {\n\t\t\tid: 'gallery-attributes-openInNewTab',\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t}\n\n\tfunction updateImagesSize( newSizeSlug ) {\n\t\tsetAttributes( { sizeSlug: newSizeSlug } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\t\t\tchangedAttributes[ block.clientId ] = getImageSizeAttributes(\n\t\t\t\timage,\n\t\t\t\tnewSizeSlug\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst imageSize = imageSizeOptions.find(\n\t\t\t( size ) => size.value === newSizeSlug\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image sizes updated to: %s' ),\n\t\t\t\timageSize.label\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-sizeSlug',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tuseEffect( () => {\n\t\t// linkTo attribute must be saved so blocks don't break when changing image_default_link_type in options.php.\n\t\tif ( ! linkTo ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tlinkTo:\n\t\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\t\tLINK_DESTINATION_NONE,\n\t\t\t} );\n\t\t}\n\t}, [ linkTo ] );\n\n\tconst hasImages = !! images.length;\n\tconst hasImageIds = hasImages && images.some( ( image ) => !! image.id );\n\tconst imagesUploading = images.some( ( img ) =>\n\t\t! Platform.isNative\n\t\t\t? ! img.id && img.url?.indexOf( 'blob:' ) === 0\n\t\t\t: img.url?.indexOf( 'file:' ) === 0\n\t);\n\n\t// MediaPlaceholder props are different between web and native hence, we provide a platform-specific set.\n\tconst mediaPlaceholderProps = Platform.select( {\n\t\tweb: {\n\t\t\taddToGallery: false,\n\t\t\tdisableMediaButtons: imagesUploading,\n\t\t\tvalue: {},\n\t\t},\n\t\tnative: {\n\t\t\taddToGallery: hasImageIds,\n\t\t\tisAppender: hasImages,\n\t\t\tdisableMediaButtons:\n\t\t\t\t( hasImages && ! isSelected ) || imagesUploading,\n\t\t\tvalue: hasImageIds ? images : {},\n\t\t\tautoOpenMediaUpload:\n\t\t\t\t! hasImages && isSelected && blockWasJustInserted,\n\t\t\tonFocus,\n\t\t},\n\t} );\n\tconst mediaPlaceholder = (\n\t\t<MediaPlaceholder\n\t\t\thandleUpload={ false }\n\t\t\ticon={ sharedIcon }\n\t\t\tlabels={ {\n\t\t\t\ttitle: __( 'Gallery' ),\n\t\t\t\tinstructions: PLACEHOLDER_TEXT,\n\t\t\t} }\n\t\t\tonSelect={ updateImages }\n\t\t\taccept=\"image/*\"\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\tmultiple\n\t\t\tonError={ onUploadError }\n\t\t\t{ ...mediaPlaceholderProps }\n\t\t/>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( className, 'has-nested-images' ),\n\t} );\n\n\tconst nativeInnerBlockProps = Platform.isNative && {\n\t\tmarginHorizontal: 0,\n\t\tmarginVertical: 0,\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\tdirectInsert: true,\n\t\torientation: 'horizontal',\n\t\trenderAppender: false,\n\t\t...nativeInnerBlockProps,\n\t} );\n\n\tif ( ! hasImages ) {\n\t\treturn (\n\t\t\t<View { ...innerBlocksProps }>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t\t{ mediaPlaceholder }\n\t\t\t</View>\n\t\t);\n\t}\n\n\tconst hasLinkTo = linkTo && linkTo !== 'none';\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t{ images.length > 1 && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\t\tcolumns\n\t\t\t\t\t\t\t\t\t? columns\n\t\t\t\t\t\t\t\t\t: defaultColumnsNumber( images.length )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonChange={ setColumnsNumber }\n\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\tmax={ Math.min( MAX_COLUMNS, images.length ) }\n\t\t\t\t\t\t\t{ ...MOBILE_CONTROL_PROPS_RANGE_CONTROL }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ imageSizeOptions?.length > 0 && (\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Select the size of the source images.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChange={ updateImagesSize }\n\t\t\t\t\t\t\thideCancelButton\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ Platform.isNative ? (\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\t\t\tvalue={ linkTo }\n\t\t\t\t\t\t\tonChange={ setLinkTo }\n\t\t\t\t\t\t\toptions={ linkOptions }\n\t\t\t\t\t\t\thideCancelButton\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : null }\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Crop images to fit' ) }\n\t\t\t\t\t\tchecked={ !! imageCrop }\n\t\t\t\t\t\tonChange={ toggleImageCrop }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Randomize order' ) }\n\t\t\t\t\t\tchecked={ !! randomOrder }\n\t\t\t\t\t\tonChange={ toggleRandomOrder }\n\t\t\t\t\t/>\n\t\t\t\t\t{ hasLinkTo && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Open images in new tab' ) }\n\t\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\tonChange={ toggleOpenInNewTab }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ Platform.isWeb && ! imageSizeOptions && hasImageIds && (\n\t\t\t\t\t\t<BaseControl\n\t\t\t\t\t\t\tclassName=\"gallery-image-sizes\"\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Resolution' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<View className=\"gallery-image-sizes__loading\">\n\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t{ __( 'Loading options…' ) }\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ Platform.isWeb ? (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t{ linkOptions.map( ( linkItem ) => {\n\t\t\t\t\t\t\t\t\tconst isOptionSelected =\n\t\t\t\t\t\t\t\t\t\tlinkTo === linkItem.value;\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\tkey={ linkItem.value }\n\t\t\t\t\t\t\t\t\t\t\tisSelected={ isOptionSelected }\n\t\t\t\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t\t\t\t'components-dropdown-menu__menu-item',\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t'is-active':\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tisOptionSelected,\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\t\t\t\t\t\ticon={ linkItem.icon }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetLinkTo( linkItem.value );\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\trole=\"menuitemradio\"\n\t\t\t\t\t\t\t\t\t\t\tinfo={ linkItem.infoText }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ linkItem.label }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolbarDropdownMenu>\n\t\t\t\t</BlockControls>\n\t\t\t) : null }\n\t\t\t{ Platform.isWeb && (\n\t\t\t\t<>\n\t\t\t\t\t{ ! multiGallerySelection && (\n\t\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\t\t\thandleUpload={ false }\n\t\t\t\t\t\t\t\tonSelect={ updateImages }\n\t\t\t\t\t\t\t\tname={ __( 'Add' ) }\n\t\t\t\t\t\t\t\tmultiple\n\t\t\t\t\t\t\t\tmediaIds={ images\n\t\t\t\t\t\t\t\t\t.filter( ( image ) => image.id )\n\t\t\t\t\t\t\t\t\t.map( ( image ) => image.id ) }\n\t\t\t\t\t\t\t\taddToGallery={ hasImageIds }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BlockControls>\n\t\t\t\t\t) }\n\t\t\t\t\t<GapStyles\n\t\t\t\t\t\tblockGap={ attributes.style?.spacing?.blockGap }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<Gallery\n\t\t\t\t{ ...props }\n\t\t\t\tisContentLocked={ isContentLocked }\n\t\t\t\timages={ images }\n\t\t\t\tmediaPlaceholder={\n\t\t\t\t\t! hasImages || Platform.isNative\n\t\t\t\t\t\t? mediaPlaceholder\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\tblockProps={ innerBlocksProps }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tmultiGallerySelection={ multiGallerySelection }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_blockEditor","_element","_i18n","_data","_primitives","_blocks","_blob","_notices","_icons","_sharedIcon","_shared","_utils","_utils2","_gallery","_constants","_useImageSizes","_useGetNewImages","_useGetMedia","_gapStyles","_jsxRuntime","MAX_COLUMNS","LINK_OPTIONS","icon","customLink","label","__","value","LINK_DESTINATION_ATTACHMENT","noticeText","imageIcon","LINK_DESTINATION_MEDIA","fullscreen","LINK_DESTINATION_LIGHTBOX","infoText","linkOff","_x","LINK_DESTINATION_NONE","ALLOWED_MEDIA_TYPES","PLACEHOLDER_TEXT","Platform","isNative","MOBILE_CONTROL_PROPS_RANGE_CONTROL","type","DEFAULT_BLOCK","name","EMPTY_ARRAY","GalleryEdit","props","setAttributes","attributes","className","clientId","isSelected","insertBlocksAfter","isContentLocked","onFocus","lightboxSetting","useSettings","linkOptions","allowEditing","filter","option","columns","imageCrop","randomOrder","linkTarget","linkTo","sizeSlug","__unstableMarkNextChangeAsNotPersistent","replaceInnerBlocks","updateBlockAttributes","selectBlock","useDispatch","blockEditorStore","createSuccessNotice","createErrorNotice","noticesStore","getBlock","getSettings","innerBlockImages","blockWasJustInserted","multiGallerySelection","useSelect","select","_getBlock$innerBlocks","getBlockName","getMultiSelectedBlockClientIds","_getSettings","_getBlock","wasBlockJustInserted","multiSelectedClientIds","innerBlocks","length","every","_clientId","images","useMemo","map","block","id","url","fromSavedContent","Boolean","originalContent","imageData","useGetMedia","newImages","useGetNewImages","useEffect","forEach","newImage","buildImageAttributes","align","undefined","imageSizeOptions","useImageSizes","imageAttributes","image","find","newClassName","newLinkTarget","rel","getUpdatedLinkTargetSettings","pickRelevantMediaFiles","getHrefAndDestination","linkDestination","caption","raw","alt","alt_text","isValidFileType","file","nativeFileData","mediaTypeSelector","media_type","some","mediaType","indexOf","blob","updateImages","selectedImages","newFileUploads","Object","prototype","toString","call","imageArray","Array","from","createBlobURL","processedImages","newOrderMap","reduce","result","index","existingImageBlocks","img","newImageList","existingImg","newBlocks","createBlock","concat","sort","a","b","onUploadError","message","setLinkTo","changedAttributes","blocks","push","linkToText","linkType","sprintf","setColumnsNumber","toggleImageCrop","toggleRandomOrder","toggleOpenInNewTab","openInNewTab","updateImagesSize","newSizeSlug","getImageSizeAttributes","imageSize","size","window","wp","media","view","settings","defaultProps","link","hasImages","hasImageIds","imagesUploading","mediaPlaceholderProps","web","addToGallery","disableMediaButtons","native","isAppender","autoOpenMediaUpload","mediaPlaceholder","jsx","MediaPlaceholder","handleUpload","sharedIcon","labels","title","instructions","onSelect","accept","allowedTypes","multiple","onError","blockProps","useBlockProps","clsx","nativeInnerBlockProps","marginHorizontal","marginVertical","innerBlocksProps","useInnerBlocksProps","defaultBlock","directInsert","orientation","renderAppender","jsxs","View","children","hasLinkTo","Fragment","InspectorControls","PanelBody","RangeControl","__nextHasNoMarginBottom","defaultColumnsNumber","onChange","min","max","Math","required","__next40pxDefaultSize","SelectControl","help","options","hideCancelButton","ToggleControl","checked","isWeb","BaseControl","VisualLabel","Spinner","BlockControls","group","ToolbarDropdownMenu","linkIcon","onClose","MenuGroup","linkItem","isOptionSelected","MenuItem","iconPosition","onClick","role","info","MediaReplaceFlow","mediaIds","default","blockGap","style","spacing"],"sources":["@wordpress/block-library/src/gallery/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tRangeControl,\n\tSpinner,\n\tMenuGroup,\n\tMenuItem,\n\tToolbarDropdownMenu,\n} from '@wordpress/components';\nimport {\n\tstore as blockEditorStore,\n\tMediaPlaceholder,\n\tInspectorControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tMediaReplaceFlow,\n\tuseSettings,\n} from '@wordpress/block-editor';\nimport { Platform, useEffect, useMemo } from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { View } from '@wordpress/primitives';\nimport { createBlock } from '@wordpress/blocks';\nimport { createBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\nimport {\n\tlink as linkIcon,\n\tcustomLink,\n\timage as imageIcon,\n\tlinkOff,\n\tfullscreen,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { sharedIcon } from './shared-icon';\nimport { defaultColumnsNumber, pickRelevantMediaFiles } from './shared';\nimport { getHrefAndDestination } from './utils';\nimport {\n\tgetUpdatedLinkTargetSettings,\n\tgetImageSizeAttributes,\n} from '../image/utils';\nimport Gallery from './gallery';\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tLINK_DESTINATION_LIGHTBOX,\n} from './constants';\nimport useImageSizes from './use-image-sizes';\nimport useGetNewImages from './use-get-new-images';\nimport useGetMedia from './use-get-media';\nimport GapStyles from './gap-styles';\n\nconst MAX_COLUMNS = 8;\nconst LINK_OPTIONS = [\n\t{\n\t\ticon: customLink,\n\t\tlabel: __( 'Link images to attachment pages' ),\n\t\tvalue: LINK_DESTINATION_ATTACHMENT,\n\t\tnoticeText: __( 'Attachment Pages' ),\n\t},\n\t{\n\t\ticon: imageIcon,\n\t\tlabel: __( 'Link images to media files' ),\n\t\tvalue: LINK_DESTINATION_MEDIA,\n\t\tnoticeText: __( 'Media Files' ),\n\t},\n\t{\n\t\ticon: fullscreen,\n\t\tlabel: __( 'Enlarge on click' ),\n\t\tvalue: LINK_DESTINATION_LIGHTBOX,\n\t\tnoticeText: __( 'Lightbox effect' ),\n\t\tinfoText: __( 'Scale images with a lightbox effect' ),\n\t},\n\t{\n\t\ticon: linkOff,\n\t\tlabel: _x( 'None', 'Media item link option' ),\n\t\tvalue: LINK_DESTINATION_NONE,\n\t\tnoticeText: __( 'None' ),\n\t},\n];\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nconst PLACEHOLDER_TEXT = Platform.isNative\n\t? __( 'Add media' )\n\t: __( 'Drag and drop images, upload, or choose from your library.' );\n\nconst MOBILE_CONTROL_PROPS_RANGE_CONTROL = Platform.isNative\n\t? { type: 'stepper' }\n\t: {};\n\nconst DEFAULT_BLOCK = { name: 'core/image' };\nconst EMPTY_ARRAY = [];\n\nexport default function GalleryEdit( props ) {\n\tconst {\n\t\tsetAttributes,\n\t\tattributes,\n\t\tclassName,\n\t\tclientId,\n\t\tisSelected,\n\t\tinsertBlocksAfter,\n\t\tisContentLocked,\n\t\tonFocus,\n\t} = props;\n\n\tconst [ lightboxSetting ] = useSettings( 'blocks.core/image.lightbox' );\n\n\tconst linkOptions = ! lightboxSetting?.allowEditing\n\t\t? LINK_OPTIONS.filter(\n\t\t\t\t( option ) => option.value !== LINK_DESTINATION_LIGHTBOX\n\t\t )\n\t\t: LINK_OPTIONS;\n\n\tconst { columns, imageCrop, randomOrder, linkTarget, linkTo, sizeSlug } =\n\t\tattributes;\n\n\tconst {\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\treplaceInnerBlocks,\n\t\tupdateBlockAttributes,\n\t\tselectBlock,\n\t} = useDispatch( blockEditorStore );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst {\n\t\tgetBlock,\n\t\tgetSettings,\n\t\tinnerBlockImages,\n\t\tblockWasJustInserted,\n\t\tmultiGallerySelection,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tgetMultiSelectedBlockClientIds,\n\t\t\t\tgetSettings: _getSettings,\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\twasBlockJustInserted,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst multiSelectedClientIds = getMultiSelectedBlockClientIds();\n\n\t\t\treturn {\n\t\t\t\tgetBlock: _getBlock,\n\t\t\t\tgetSettings: _getSettings,\n\t\t\t\tinnerBlockImages:\n\t\t\t\t\t_getBlock( clientId )?.innerBlocks ?? EMPTY_ARRAY,\n\t\t\t\tblockWasJustInserted: wasBlockJustInserted(\n\t\t\t\t\tclientId,\n\t\t\t\t\t'inserter_menu'\n\t\t\t\t),\n\t\t\t\tmultiGallerySelection:\n\t\t\t\t\tmultiSelectedClientIds.length &&\n\t\t\t\t\tmultiSelectedClientIds.every(\n\t\t\t\t\t\t( _clientId ) =>\n\t\t\t\t\t\t\tgetBlockName( _clientId ) === 'core/gallery'\n\t\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst images = useMemo(\n\t\t() =>\n\t\t\tinnerBlockImages?.map( ( block ) => ( {\n\t\t\t\tclientId: block.clientId,\n\t\t\t\tid: block.attributes.id,\n\t\t\t\turl: block.attributes.url,\n\t\t\t\tattributes: block.attributes,\n\t\t\t\tfromSavedContent: Boolean( block.originalContent ),\n\t\t\t} ) ),\n\t\t[ innerBlockImages ]\n\t);\n\n\tconst imageData = useGetMedia( innerBlockImages );\n\n\tconst newImages = useGetNewImages( images, imageData );\n\n\tuseEffect( () => {\n\t\tnewImages?.forEach( ( newImage ) => {\n\t\t\t// Update the images data without creating new undo levels.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateBlockAttributes( newImage.clientId, {\n\t\t\t\t...buildImageAttributes( newImage.attributes ),\n\t\t\t\tid: newImage.id,\n\t\t\t\talign: undefined,\n\t\t\t} );\n\t\t} );\n\t}, [ newImages ] );\n\n\tconst imageSizeOptions = useImageSizes(\n\t\timageData,\n\t\tisSelected,\n\t\tgetSettings\n\t);\n\n\t/**\n\t * Determines the image attributes that should be applied to an image block\n\t * after the gallery updates.\n\t *\n\t * The gallery will receive the full collection of images when a new image\n\t * is added. As a result we need to reapply the image's original settings if\n\t * it already existed in the gallery. If the image is in fact new, we need\n\t * to apply the gallery's current settings to the image.\n\t *\n\t * @param {Object} imageAttributes Media object for the actual image.\n\t * @return {Object} Attributes to set on the new image block.\n\t */\n\tfunction buildImageAttributes( imageAttributes ) {\n\t\tconst image = imageAttributes.id\n\t\t\t? imageData.find( ( { id } ) => id === imageAttributes.id )\n\t\t\t: null;\n\n\t\tlet newClassName;\n\t\tif ( imageAttributes.className && imageAttributes.className !== '' ) {\n\t\t\tnewClassName = imageAttributes.className;\n\t\t}\n\n\t\tlet newLinkTarget;\n\t\tif ( imageAttributes.linkTarget || imageAttributes.rel ) {\n\t\t\t// When transformed from image blocks, the link destination and rel attributes are inherited.\n\t\t\tnewLinkTarget = {\n\t\t\t\tlinkTarget: imageAttributes.linkTarget,\n\t\t\t\trel: imageAttributes.rel,\n\t\t\t};\n\t\t} else {\n\t\t\t// When an image is added, update the link destination and rel attributes according to the gallery settings\n\t\t\tnewLinkTarget = getUpdatedLinkTargetSettings(\n\t\t\t\tlinkTarget,\n\t\t\t\tattributes\n\t\t\t);\n\t\t}\n\n\t\treturn {\n\t\t\t...pickRelevantMediaFiles( image, sizeSlug ),\n\t\t\t...getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tlinkTo,\n\t\t\t\timageAttributes?.linkDestination\n\t\t\t),\n\t\t\t...newLinkTarget,\n\t\t\tclassName: newClassName,\n\t\t\tsizeSlug,\n\t\t\tcaption: imageAttributes.caption || image.caption?.raw,\n\t\t\talt: imageAttributes.alt || image.alt_text,\n\t\t};\n\t}\n\n\tfunction isValidFileType( file ) {\n\t\t// It's necessary to retrieve the media type from the raw image data for already-uploaded images on native.\n\t\tconst nativeFileData =\n\t\t\tPlatform.isNative && file.id\n\t\t\t\t? imageData.find( ( { id } ) => id === file.id )\n\t\t\t\t: null;\n\n\t\tconst mediaTypeSelector = nativeFileData\n\t\t\t? nativeFileData?.media_type\n\t\t\t: file.type;\n\n\t\treturn (\n\t\t\tALLOWED_MEDIA_TYPES.some(\n\t\t\t\t( mediaType ) => mediaTypeSelector?.indexOf( mediaType ) === 0\n\t\t\t) || file.blob\n\t\t);\n\t}\n\n\tfunction updateImages( selectedImages ) {\n\t\tconst newFileUploads =\n\t\t\tObject.prototype.toString.call( selectedImages ) ===\n\t\t\t'[object FileList]';\n\n\t\tconst imageArray = newFileUploads\n\t\t\t? Array.from( selectedImages ).map( ( file ) => {\n\t\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tblob: createBlobURL( file ),\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\n\t\t\t\t\treturn file;\n\t\t\t } )\n\t\t\t: selectedImages;\n\n\t\tif ( ! imageArray.every( isValidFileType ) ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\t__(\n\t\t\t\t\t'If uploading to a gallery all files need to be image formats'\n\t\t\t\t),\n\t\t\t\t{ id: 'gallery-upload-invalid-file', type: 'snackbar' }\n\t\t\t);\n\t\t}\n\n\t\tconst processedImages = imageArray\n\t\t\t.filter( ( file ) => file.url || isValidFileType( file ) )\n\t\t\t.map( ( file ) => {\n\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tblob: file.blob || createBlobURL( file ),\n\t\t\t\t\t};\n\t\t\t\t}\n\n\t\t\t\treturn file;\n\t\t\t} );\n\n\t\t// Because we are reusing existing innerImage blocks any reordering\n\t\t// done in the media library will be lost so we need to reapply that ordering\n\t\t// once the new image blocks are merged in with existing.\n\t\tconst newOrderMap = processedImages.reduce(\n\t\t\t( result, image, index ) => (\n\t\t\t\t( result[ image.id ] = index ), result\n\t\t\t),\n\t\t\t{}\n\t\t);\n\n\t\tconst existingImageBlocks = ! newFileUploads\n\t\t\t? innerBlockImages.filter( ( block ) =>\n\t\t\t\t\tprocessedImages.find(\n\t\t\t\t\t\t( img ) => img.id === block.attributes.id\n\t\t\t\t\t)\n\t\t\t )\n\t\t\t: innerBlockImages;\n\n\t\tconst newImageList = processedImages.filter(\n\t\t\t( img ) =>\n\t\t\t\t! existingImageBlocks.find(\n\t\t\t\t\t( existingImg ) => img.id === existingImg.attributes.id\n\t\t\t\t)\n\t\t);\n\n\t\tconst newBlocks = newImageList.map( ( image ) => {\n\t\t\treturn createBlock( 'core/image', {\n\t\t\t\tid: image.id,\n\t\t\t\tblob: image.blob,\n\t\t\t\turl: image.url,\n\t\t\t\tcaption: image.caption,\n\t\t\t\talt: image.alt,\n\t\t\t} );\n\t\t} );\n\n\t\treplaceInnerBlocks(\n\t\t\tclientId,\n\t\t\texistingImageBlocks\n\t\t\t\t.concat( newBlocks )\n\t\t\t\t.sort(\n\t\t\t\t\t( a, b ) =>\n\t\t\t\t\t\tnewOrderMap[ a.attributes.id ] -\n\t\t\t\t\t\tnewOrderMap[ b.attributes.id ]\n\t\t\t\t)\n\t\t);\n\n\t\t// Select the first block to scroll into view when new blocks are added.\n\t\tif ( newBlocks?.length > 0 ) {\n\t\t\tselectBlock( newBlocks[ 0 ].clientId );\n\t\t}\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction setLinkTo( value ) {\n\t\tsetAttributes( { linkTo: value } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\n\t\t\tchangedAttributes[ block.clientId ] = getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tvalue,\n\t\t\t\tfalse,\n\t\t\t\tblock.attributes,\n\t\t\t\tlightboxSetting\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst linkToText = [ ...linkOptions ].find(\n\t\t\t( linkType ) => linkType.value === value\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image links updated to: %s' ),\n\t\t\t\tlinkToText.noticeText\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-linkTo',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tfunction setColumnsNumber( value ) {\n\t\tsetAttributes( { columns: value } );\n\t}\n\n\tfunction toggleImageCrop() {\n\t\tsetAttributes( { imageCrop: ! imageCrop } );\n\t}\n\n\tfunction toggleRandomOrder() {\n\t\tsetAttributes( { randomOrder: ! randomOrder } );\n\t}\n\n\tfunction toggleOpenInNewTab( openInNewTab ) {\n\t\tconst newLinkTarget = openInNewTab ? '_blank' : undefined;\n\t\tsetAttributes( { linkTarget: newLinkTarget } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tchangedAttributes[ block.clientId ] = getUpdatedLinkTargetSettings(\n\t\t\t\tnewLinkTarget,\n\t\t\t\tblock.attributes\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst noticeText = openInNewTab\n\t\t\t? __( 'All gallery images updated to open in new tab' )\n\t\t\t: __( 'All gallery images updated to not open in new tab' );\n\t\tcreateSuccessNotice( noticeText, {\n\t\t\tid: 'gallery-attributes-openInNewTab',\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t}\n\n\tfunction updateImagesSize( newSizeSlug ) {\n\t\tsetAttributes( { sizeSlug: newSizeSlug } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\t\t\tchangedAttributes[ block.clientId ] = getImageSizeAttributes(\n\t\t\t\timage,\n\t\t\t\tnewSizeSlug\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst imageSize = imageSizeOptions.find(\n\t\t\t( size ) => size.value === newSizeSlug\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image sizes updated to: %s' ),\n\t\t\t\timageSize.label\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-sizeSlug',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tuseEffect( () => {\n\t\t// linkTo attribute must be saved so blocks don't break when changing image_default_link_type in options.php.\n\t\tif ( ! linkTo ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tlinkTo:\n\t\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\t\tLINK_DESTINATION_NONE,\n\t\t\t} );\n\t\t}\n\t}, [ linkTo ] );\n\n\tconst hasImages = !! images.length;\n\tconst hasImageIds = hasImages && images.some( ( image ) => !! image.id );\n\tconst imagesUploading = images.some( ( img ) =>\n\t\t! Platform.isNative\n\t\t\t? ! img.id && img.url?.indexOf( 'blob:' ) === 0\n\t\t\t: img.url?.indexOf( 'file:' ) === 0\n\t);\n\n\t// MediaPlaceholder props are different between web and native hence, we provide a platform-specific set.\n\tconst mediaPlaceholderProps = Platform.select( {\n\t\tweb: {\n\t\t\taddToGallery: false,\n\t\t\tdisableMediaButtons: imagesUploading,\n\t\t\tvalue: {},\n\t\t},\n\t\tnative: {\n\t\t\taddToGallery: hasImageIds,\n\t\t\tisAppender: hasImages,\n\t\t\tdisableMediaButtons:\n\t\t\t\t( hasImages && ! isSelected ) || imagesUploading,\n\t\t\tvalue: hasImageIds ? images : {},\n\t\t\tautoOpenMediaUpload:\n\t\t\t\t! hasImages && isSelected && blockWasJustInserted,\n\t\t\tonFocus,\n\t\t},\n\t} );\n\tconst mediaPlaceholder = (\n\t\t<MediaPlaceholder\n\t\t\thandleUpload={ false }\n\t\t\ticon={ sharedIcon }\n\t\t\tlabels={ {\n\t\t\t\ttitle: __( 'Gallery' ),\n\t\t\t\tinstructions: PLACEHOLDER_TEXT,\n\t\t\t} }\n\t\t\tonSelect={ updateImages }\n\t\t\taccept=\"image/*\"\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\tmultiple\n\t\t\tonError={ onUploadError }\n\t\t\t{ ...mediaPlaceholderProps }\n\t\t/>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( className, 'has-nested-images' ),\n\t} );\n\n\tconst nativeInnerBlockProps = Platform.isNative && {\n\t\tmarginHorizontal: 0,\n\t\tmarginVertical: 0,\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\tdirectInsert: true,\n\t\torientation: 'horizontal',\n\t\trenderAppender: false,\n\t\t...nativeInnerBlockProps,\n\t} );\n\n\tif ( ! hasImages ) {\n\t\treturn (\n\t\t\t<View { ...innerBlocksProps }>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t\t{ mediaPlaceholder }\n\t\t\t</View>\n\t\t);\n\t}\n\n\tconst hasLinkTo = linkTo && linkTo !== 'none';\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t{ images.length > 1 && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\t\tcolumns\n\t\t\t\t\t\t\t\t\t? columns\n\t\t\t\t\t\t\t\t\t: defaultColumnsNumber( images.length )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonChange={ setColumnsNumber }\n\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\tmax={ Math.min( MAX_COLUMNS, images.length ) }\n\t\t\t\t\t\t\t{ ...MOBILE_CONTROL_PROPS_RANGE_CONTROL }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ imageSizeOptions?.length > 0 && (\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Select the size of the source images.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChange={ updateImagesSize }\n\t\t\t\t\t\t\thideCancelButton\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ Platform.isNative ? (\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\t\t\tvalue={ linkTo }\n\t\t\t\t\t\t\tonChange={ setLinkTo }\n\t\t\t\t\t\t\toptions={ linkOptions }\n\t\t\t\t\t\t\thideCancelButton\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : null }\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Crop images to fit' ) }\n\t\t\t\t\t\tchecked={ !! imageCrop }\n\t\t\t\t\t\tonChange={ toggleImageCrop }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Randomize order' ) }\n\t\t\t\t\t\tchecked={ !! randomOrder }\n\t\t\t\t\t\tonChange={ toggleRandomOrder }\n\t\t\t\t\t/>\n\t\t\t\t\t{ hasLinkTo && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Open images in new tab' ) }\n\t\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\tonChange={ toggleOpenInNewTab }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ Platform.isWeb && ! imageSizeOptions && hasImageIds && (\n\t\t\t\t\t\t<BaseControl\n\t\t\t\t\t\t\tclassName=\"gallery-image-sizes\"\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Resolution' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<View className=\"gallery-image-sizes__loading\">\n\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t{ __( 'Loading options…' ) }\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ Platform.isWeb ? (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\ticon={ linkIcon }\n\t\t\t\t\t\tlabel={ __( 'Link' ) }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t{ linkOptions.map( ( linkItem ) => {\n\t\t\t\t\t\t\t\t\tconst isOptionSelected =\n\t\t\t\t\t\t\t\t\t\tlinkTo === linkItem.value;\n\t\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\tkey={ linkItem.value }\n\t\t\t\t\t\t\t\t\t\t\tisSelected={ isOptionSelected }\n\t\t\t\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t\t\t\t'components-dropdown-menu__menu-item',\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t'is-active':\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tisOptionSelected,\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\ticonPosition=\"left\"\n\t\t\t\t\t\t\t\t\t\t\ticon={ linkItem.icon }\n\t\t\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\t\t\tsetLinkTo( linkItem.value );\n\t\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\t\trole=\"menuitemradio\"\n\t\t\t\t\t\t\t\t\t\t\tinfo={ linkItem.infoText }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ linkItem.label }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</ToolbarDropdownMenu>\n\t\t\t\t</BlockControls>\n\t\t\t) : null }\n\t\t\t{ Platform.isWeb && (\n\t\t\t\t<>\n\t\t\t\t\t{ ! multiGallerySelection && (\n\t\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\t\t\thandleUpload={ false }\n\t\t\t\t\t\t\t\tonSelect={ updateImages }\n\t\t\t\t\t\t\t\tname={ __( 'Add' ) }\n\t\t\t\t\t\t\t\tmultiple\n\t\t\t\t\t\t\t\tmediaIds={ images\n\t\t\t\t\t\t\t\t\t.filter( ( image ) => image.id )\n\t\t\t\t\t\t\t\t\t.map( ( image ) => image.id ) }\n\t\t\t\t\t\t\t\taddToGallery={ hasImageIds }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BlockControls>\n\t\t\t\t\t) }\n\t\t\t\t\t<GapStyles\n\t\t\t\t\t\tblockGap={ attributes.style?.spacing?.blockGap }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<Gallery\n\t\t\t\t{ ...props }\n\t\t\t\tisContentLocked={ isContentLocked }\n\t\t\t\timages={ images }\n\t\t\t\tmediaPlaceholder={\n\t\t\t\t\t! hasImages || Platform.isNative\n\t\t\t\t\t\t? mediaPlaceholder\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\tblockProps={ innerBlocksProps }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\tmultiGallerySelection={ multiGallerySelection }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -27,7 +27,7 @@ const parseShortcodeIds = ids => {
|
|
|
27
27
|
/**
|
|
28
28
|
* Third party block plugins don't have an easy way to detect if the
|
|
29
29
|
* innerBlocks version of the Gallery is running when they run a
|
|
30
|
-
* 3rdPartyBlock -> GalleryBlock transform so this
|
|
30
|
+
* 3rdPartyBlock -> GalleryBlock transform so this transform filter
|
|
31
31
|
* will handle this. Once the innerBlocks version is the default
|
|
32
32
|
* in a core release, this could be deprecated and removed after
|
|
33
33
|
* plugin authors have been given time to update transforms.
|
|
@@ -164,7 +164,7 @@ const transforms = {
|
|
|
164
164
|
// When created by drag and dropping multiple files on an insertion point. Because multiple
|
|
165
165
|
// files must not be transformed to a gallery when dropped within a gallery there is another transform
|
|
166
166
|
// within the image block to handle that case. Therefore this transform has to have priority 1
|
|
167
|
-
// set so that it
|
|
167
|
+
// set so that it overrides the image block transformation when multiple images are dropped outside
|
|
168
168
|
// of a gallery block.
|
|
169
169
|
type: 'files',
|
|
170
170
|
priority: 1,
|