@wordpress/block-library 9.3.0 → 9.5.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 +8 -0
- package/build/avatar/edit.js +1 -0
- package/build/avatar/edit.js.map +1 -1
- package/build/block/edit.js +38 -23
- package/build/block/edit.js.map +1 -1
- package/build/button/edit.js +1 -1
- package/build/button/edit.js.map +1 -1
- package/build/buttons/index.js +26 -0
- package/build/buttons/index.js.map +1 -1
- package/build/categories/edit.js +20 -3
- package/build/categories/edit.js.map +1 -1
- package/build/categories/index.js +20 -0
- package/build/categories/index.js.map +1 -1
- package/build/column/edit.js +2 -2
- package/build/column/edit.js.map +1 -1
- package/build/column/index.js +2 -0
- package/build/column/index.js.map +1 -1
- package/build/columns/index.js +2 -2
- package/build/columns/index.js.map +1 -1
- package/build/comment-template/index.js +12 -0
- package/build/comment-template/index.js.map +1 -1
- package/build/comments-title/deprecated.js +3 -0
- package/build/comments-title/deprecated.js.map +1 -1
- package/build/comments-title/edit.js +3 -1
- package/build/comments-title/edit.js.map +1 -1
- package/build/comments-title/index.js +3 -0
- package/build/comments-title/index.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +2 -1
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/details/edit.js +1 -0
- package/build/details/edit.js.map +1 -1
- package/build/embed/variations.js +39 -34
- package/build/embed/variations.js.map +1 -1
- package/build/footnotes/index.js +1 -1
- package/build/footnotes/index.js.map +1 -1
- package/build/form/edit.js +4 -4
- package/build/form/edit.js.map +1 -1
- package/build/form-input/edit.js +3 -0
- package/build/form-input/edit.js.map +1 -1
- package/build/gallery/edit.js +42 -8
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gap-styles.js +1 -9
- package/build/gallery/gap-styles.js.map +1 -1
- package/build/gallery/index.js +10 -0
- package/build/gallery/index.js.map +1 -1
- package/build/gallery/use-image-sizes.js +2 -2
- package/build/gallery/use-image-sizes.js.map +1 -1
- package/build/group/deprecated.js +2 -5
- package/build/group/deprecated.js.map +1 -1
- package/build/group/index.js +27 -30
- package/build/group/index.js.map +1 -1
- package/build/group/variations.js +51 -3
- package/build/group/variations.js.map +1 -1
- package/build/heading/edit.js +2 -0
- package/build/heading/edit.js.map +1 -1
- package/build/heading/index.js +17 -1
- package/build/heading/index.js.map +1 -1
- package/build/image/edit.js +1 -1
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +24 -11
- package/build/image/image.js.map +1 -1
- package/build/image/index.js +3 -0
- package/build/image/index.js.map +1 -1
- package/build/image/view.js +65 -49
- package/build/image/view.js.map +1 -1
- package/build/latest-comments/index.js +9 -0
- package/build/latest-comments/index.js.map +1 -1
- package/build/latest-posts/edit.js +1 -0
- package/build/latest-posts/edit.js.map +1 -1
- package/build/list/edit.js +3 -3
- package/build/list/edit.js.map +1 -1
- package/build/list/index.js +1 -1
- package/build/list/ordered-list-settings.js +19 -17
- package/build/list/ordered-list-settings.js.map +1 -1
- package/build/list-item/edit.js +2 -2
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/hooks/index.js +0 -7
- package/build/list-item/hooks/index.js.map +1 -1
- package/build/list-item/index.js +3 -2
- package/build/list-item/index.js.map +1 -1
- package/build/loginout/index.js +14 -1
- package/build/loginout/index.js.map +1 -1
- package/build/media-text/index.js +12 -0
- package/build/media-text/index.js.map +1 -1
- package/build/navigation/edit/index.js +5 -4
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/navigation-menu-delete-control.js +1 -0
- package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build/navigation/use-navigation-menu.js +5 -1
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/navigation-link/link-ui.js +13 -17
- package/build/navigation-link/link-ui.js.map +1 -1
- package/build/navigation-submenu/edit.js +0 -11
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/edit.js +1 -0
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list-item/edit.js +4 -1
- package/build/page-list-item/edit.js.map +1 -1
- package/build/paragraph/index.js +6 -0
- package/build/paragraph/index.js.map +1 -1
- package/build/paragraph/transforms.js +6 -0
- package/build/paragraph/transforms.js.map +1 -1
- package/build/post-author/index.js +8 -0
- package/build/post-author/index.js.map +1 -1
- package/build/post-author-biography/index.js +3 -0
- package/build/post-author-biography/index.js.map +1 -1
- package/build/post-author-name/index.js +3 -0
- package/build/post-author-name/index.js.map +1 -1
- package/build/post-comments-form/index.js +12 -0
- package/build/post-comments-form/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/index.js +15 -0
- package/build/post-date/index.js.map +1 -1
- package/build/post-excerpt/edit.js +1 -0
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-excerpt/index.js +12 -0
- package/build/post-excerpt/index.js.map +1 -1
- package/build/post-featured-image/index.js +3 -0
- package/build/post-featured-image/index.js.map +1 -1
- package/build/post-navigation-link/edit.js +2 -0
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-terms/index.js +15 -0
- package/build/post-terms/index.js.map +1 -1
- package/build/post-time-to-read/index.js +6 -0
- package/build/post-time-to-read/index.js.map +1 -1
- package/build/post-title/edit.js +9 -3
- package/build/post-title/edit.js.map +1 -1
- package/build/post-title/index.js +15 -0
- package/build/post-title/index.js.map +1 -1
- package/build/query/edit/inspector-controls/author-control.js +3 -1
- package/build/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js +1 -0
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +90 -12
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/offset-controls.js +37 -0
- package/build/query/edit/inspector-controls/offset-controls.js.map +1 -0
- package/build/query/edit/inspector-controls/order-control.js +1 -0
- package/build/query/edit/inspector-controls/order-control.js.map +1 -1
- package/build/query/edit/inspector-controls/pages-control.js +36 -0
- package/build/query/edit/inspector-controls/pages-control.js.map +1 -0
- package/build/query/edit/inspector-controls/parent-control.js +2 -1
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build/query/edit/inspector-controls/per-page-control.js +40 -0
- package/build/query/edit/inspector-controls/per-page-control.js.map +1 -0
- package/build/query/edit/inspector-controls/sticky-control.js +2 -1
- package/build/query/edit/inspector-controls/sticky-control.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +5 -2
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query/edit/query-content.js +11 -2
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/edit/query-placeholder.js +1 -14
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/query/edit/query-toolbar.js +3 -76
- package/build/query/edit/query-toolbar.js.map +1 -1
- package/build/query/utils.js +15 -6
- package/build/query/utils.js.map +1 -1
- package/build/query/variations.js +9 -55
- package/build/query/variations.js.map +1 -1
- package/build/query-pagination-numbers/edit.js +1 -0
- package/build/query-pagination-numbers/edit.js.map +1 -1
- package/build/query-title/edit.js +13 -19
- package/build/query-title/edit.js.map +1 -1
- package/build/query-title/index.js +3 -0
- package/build/query-title/index.js.map +1 -1
- package/build/query-title/use-archive-label.js +95 -0
- package/build/query-title/use-archive-label.js.map +1 -0
- package/build/quote/index.js +15 -1
- package/build/quote/index.js.map +1 -1
- package/build/search/index.js +3 -0
- package/build/search/index.js.map +1 -1
- package/build/site-logo/edit.js +19 -9
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-tagline/edit.js +8 -5
- package/build/site-tagline/edit.js.map +1 -1
- package/build/site-tagline/index.js +18 -2
- package/build/site-tagline/index.js.map +1 -1
- package/build/site-title/edit.js +6 -3
- package/build/site-title/edit.js.map +1 -1
- package/build/site-title/index.js +16 -1
- package/build/site-title/index.js.map +1 -1
- package/build/social-link/edit.js +0 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-link/icons/soundcloud.js +1 -1
- package/build/social-link/icons/soundcloud.js.map +1 -1
- package/build/social-links/index.js +12 -0
- package/build/social-links/index.js.map +1 -1
- package/build/spacer/controls.js +8 -13
- package/build/spacer/controls.js.map +1 -1
- package/build/table-of-contents/index.js +14 -1
- package/build/table-of-contents/index.js.map +1 -1
- package/build/tag-cloud/edit.js +42 -33
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/tag-cloud/index.js +1 -1
- package/build/template-part/edit/index.js +8 -5
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/inner-blocks.js +11 -4
- package/build/template-part/edit/inner-blocks.js.map +1 -1
- package/build/template-part/edit/placeholder.js +23 -3
- package/build/template-part/edit/placeholder.js.map +1 -1
- package/build/template-part/edit/title-modal.js +20 -8
- package/build/template-part/edit/title-modal.js.map +1 -1
- package/build/term-description/index.js +12 -0
- package/build/term-description/index.js.map +1 -1
- package/build/utils/hooks.js +5 -1
- package/build/utils/hooks.js.map +1 -1
- package/build-module/avatar/edit.js +1 -0
- package/build-module/avatar/edit.js.map +1 -1
- package/build-module/block/edit.js +38 -23
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/edit.js +1 -1
- package/build-module/button/edit.js.map +1 -1
- package/build-module/buttons/index.js +26 -0
- package/build-module/buttons/index.js.map +1 -1
- package/build-module/categories/edit.js +21 -4
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/categories/index.js +20 -0
- package/build-module/categories/index.js.map +1 -1
- package/build-module/column/edit.js +2 -2
- package/build-module/column/edit.js.map +1 -1
- package/build-module/column/index.js +2 -0
- package/build-module/column/index.js.map +1 -1
- package/build-module/columns/index.js +2 -2
- package/build-module/columns/index.js.map +1 -1
- package/build-module/comment-template/index.js +12 -0
- package/build-module/comment-template/index.js.map +1 -1
- package/build-module/comments-title/deprecated.js +3 -0
- package/build-module/comments-title/deprecated.js.map +1 -1
- package/build-module/comments-title/edit.js +3 -1
- package/build-module/comments-title/edit.js.map +1 -1
- package/build-module/comments-title/index.js +3 -0
- package/build-module/comments-title/index.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +2 -1
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/details/edit.js +1 -0
- package/build-module/details/edit.js.map +1 -1
- package/build-module/embed/variations.js +40 -35
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/footnotes/index.js +1 -1
- package/build-module/footnotes/index.js.map +1 -1
- package/build-module/form/edit.js +4 -4
- package/build-module/form/edit.js.map +1 -1
- package/build-module/form-input/edit.js +3 -0
- package/build-module/form-input/edit.js.map +1 -1
- package/build-module/gallery/edit.js +43 -9
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gap-styles.js +1 -9
- package/build-module/gallery/gap-styles.js.map +1 -1
- package/build-module/gallery/index.js +10 -0
- package/build-module/gallery/index.js.map +1 -1
- package/build-module/gallery/use-image-sizes.js +2 -2
- package/build-module/gallery/use-image-sizes.js.map +1 -1
- package/build-module/group/deprecated.js +2 -5
- package/build-module/group/deprecated.js.map +1 -1
- package/build-module/group/index.js +27 -30
- package/build-module/group/index.js.map +1 -1
- package/build-module/group/variations.js +51 -3
- package/build-module/group/variations.js.map +1 -1
- package/build-module/heading/edit.js +2 -0
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/index.js +17 -1
- package/build-module/heading/index.js.map +1 -1
- package/build-module/image/edit.js +1 -1
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/image.js +25 -12
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/index.js +3 -0
- package/build-module/image/index.js.map +1 -1
- package/build-module/image/view.js +65 -49
- package/build-module/image/view.js.map +1 -1
- package/build-module/latest-comments/index.js +9 -0
- package/build-module/latest-comments/index.js.map +1 -1
- package/build-module/latest-posts/edit.js +1 -0
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/list/edit.js +3 -3
- package/build-module/list/edit.js.map +1 -1
- package/build-module/list/index.js +1 -1
- package/build-module/list/ordered-list-settings.js +19 -17
- package/build-module/list/ordered-list-settings.js.map +1 -1
- package/build-module/list-item/edit.js +2 -2
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/hooks/index.js +0 -1
- package/build-module/list-item/hooks/index.js.map +1 -1
- package/build-module/list-item/index.js +3 -2
- package/build-module/list-item/index.js.map +1 -1
- package/build-module/loginout/index.js +14 -1
- package/build-module/loginout/index.js.map +1 -1
- package/build-module/media-text/index.js +12 -0
- package/build-module/media-text/index.js.map +1 -1
- package/build-module/navigation/edit/index.js +5 -4
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-delete-control.js +1 -0
- package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build-module/navigation/use-navigation-menu.js +5 -1
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/navigation-link/link-ui.js +13 -17
- package/build-module/navigation-link/link-ui.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +0 -11
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/edit.js +1 -0
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list-item/edit.js +4 -1
- package/build-module/page-list-item/edit.js.map +1 -1
- package/build-module/paragraph/index.js +6 -0
- package/build-module/paragraph/index.js.map +1 -1
- package/build-module/paragraph/transforms.js +6 -0
- package/build-module/paragraph/transforms.js.map +1 -1
- package/build-module/post-author/index.js +8 -0
- package/build-module/post-author/index.js.map +1 -1
- package/build-module/post-author-biography/index.js +3 -0
- package/build-module/post-author-biography/index.js.map +1 -1
- package/build-module/post-author-name/index.js +3 -0
- package/build-module/post-author-name/index.js.map +1 -1
- package/build-module/post-comments-form/index.js +12 -0
- package/build-module/post-comments-form/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/index.js +15 -0
- package/build-module/post-date/index.js.map +1 -1
- package/build-module/post-excerpt/edit.js +1 -0
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-excerpt/index.js +12 -0
- package/build-module/post-excerpt/index.js.map +1 -1
- package/build-module/post-featured-image/index.js +3 -0
- package/build-module/post-featured-image/index.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +2 -0
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-terms/index.js +15 -0
- package/build-module/post-terms/index.js.map +1 -1
- package/build-module/post-time-to-read/index.js +6 -0
- package/build-module/post-time-to-read/index.js.map +1 -1
- package/build-module/post-title/edit.js +9 -3
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/post-title/index.js +15 -0
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js +3 -1
- package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +1 -0
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +92 -14
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/offset-controls.js +29 -0
- package/build-module/query/edit/inspector-controls/offset-controls.js.map +1 -0
- package/build-module/query/edit/inspector-controls/order-control.js +1 -0
- package/build-module/query/edit/inspector-controls/order-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/pages-control.js +28 -0
- package/build-module/query/edit/inspector-controls/pages-control.js.map +1 -0
- package/build-module/query/edit/inspector-controls/parent-control.js +2 -1
- package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/per-page-control.js +33 -0
- package/build-module/query/edit/inspector-controls/per-page-control.js.map +1 -0
- package/build-module/query/edit/inspector-controls/sticky-control.js +2 -1
- package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +6 -4
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query/edit/query-content.js +11 -2
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/edit/query-placeholder.js +1 -14
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/query/edit/query-toolbar.js +4 -78
- package/build-module/query/edit/query-toolbar.js.map +1 -1
- package/build-module/query/utils.js +15 -6
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query/variations.js +4 -50
- package/build-module/query/variations.js.map +1 -1
- package/build-module/query-pagination-numbers/edit.js +1 -0
- package/build-module/query-pagination-numbers/edit.js.map +1 -1
- package/build-module/query-title/edit.js +14 -20
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/query-title/index.js +3 -0
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/query-title/use-archive-label.js +88 -0
- package/build-module/query-title/use-archive-label.js.map +1 -0
- package/build-module/quote/index.js +15 -1
- package/build-module/quote/index.js.map +1 -1
- package/build-module/search/index.js +3 -0
- package/build-module/search/index.js.map +1 -1
- package/build-module/site-logo/edit.js +19 -9
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-tagline/edit.js +8 -5
- package/build-module/site-tagline/edit.js.map +1 -1
- package/build-module/site-tagline/index.js +18 -2
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/site-title/edit.js +6 -3
- package/build-module/site-title/edit.js.map +1 -1
- package/build-module/site-title/index.js +16 -1
- package/build-module/site-title/index.js.map +1 -1
- package/build-module/social-link/edit.js +0 -1
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-link/icons/soundcloud.js +1 -1
- package/build-module/social-link/icons/soundcloud.js.map +1 -1
- package/build-module/social-links/index.js +12 -0
- package/build-module/social-links/index.js.map +1 -1
- package/build-module/spacer/controls.js +9 -14
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/table-of-contents/index.js +14 -1
- package/build-module/table-of-contents/index.js.map +1 -1
- package/build-module/tag-cloud/edit.js +43 -34
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/tag-cloud/index.js +1 -1
- package/build-module/template-part/edit/index.js +8 -5
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/inner-blocks.js +11 -4
- package/build-module/template-part/edit/inner-blocks.js.map +1 -1
- package/build-module/template-part/edit/placeholder.js +23 -3
- package/build-module/template-part/edit/placeholder.js.map +1 -1
- package/build-module/template-part/edit/title-modal.js +20 -8
- package/build-module/template-part/edit/title-modal.js.map +1 -1
- package/build-module/term-description/index.js +12 -0
- package/build-module/term-description/index.js.map +1 -1
- package/build-module/utils/hooks.js +5 -1
- package/build-module/utils/hooks.js.map +1 -1
- package/build-style/archives/editor-rtl.css +3 -0
- package/build-style/archives/editor.css +3 -0
- package/build-style/archives/style-rtl.css +3 -0
- package/build-style/archives/style.css +3 -0
- package/build-style/audio/editor-rtl.css +3 -0
- package/build-style/audio/editor.css +3 -0
- package/build-style/audio/style-rtl.css +3 -0
- package/build-style/audio/style.css +3 -0
- package/build-style/audio/theme-rtl.css +3 -0
- package/build-style/audio/theme.css +3 -0
- package/build-style/avatar/editor-rtl.css +3 -0
- package/build-style/avatar/editor.css +3 -0
- package/build-style/avatar/style-rtl.css +3 -0
- package/build-style/avatar/style.css +3 -0
- package/build-style/button/editor-rtl.css +3 -0
- package/build-style/button/editor.css +3 -0
- package/build-style/button/style-rtl.css +3 -0
- package/build-style/button/style.css +3 -0
- package/build-style/buttons/editor-rtl.css +3 -0
- package/build-style/buttons/editor.css +3 -0
- package/build-style/buttons/style-rtl.css +3 -0
- package/build-style/buttons/style.css +3 -0
- package/build-style/calendar/style-rtl.css +3 -0
- package/build-style/calendar/style.css +3 -0
- package/build-style/categories/editor-rtl.css +7 -0
- package/build-style/categories/editor.css +7 -0
- package/build-style/categories/style-rtl.css +7 -0
- package/build-style/categories/style.css +7 -0
- package/build-style/classic-rtl.css +3 -0
- package/build-style/classic.css +3 -0
- package/build-style/code/editor-rtl.css +3 -0
- package/build-style/code/editor.css +3 -0
- package/build-style/code/style-rtl.css +3 -0
- package/build-style/code/style.css +3 -0
- package/build-style/code/theme-rtl.css +3 -0
- package/build-style/code/theme.css +3 -0
- package/build-style/columns/editor-rtl.css +3 -0
- package/build-style/columns/editor.css +3 -0
- package/build-style/columns/style-rtl.css +3 -0
- package/build-style/columns/style.css +3 -0
- package/build-style/comment-author-avatar/editor-rtl.css +3 -0
- package/build-style/comment-author-avatar/editor.css +3 -0
- package/build-style/comment-content/style-rtl.css +3 -0
- package/build-style/comment-content/style.css +3 -0
- package/build-style/comment-template/style-rtl.css +3 -0
- package/build-style/comment-template/style.css +3 -0
- package/build-style/comments/editor-rtl.css +3 -0
- package/build-style/comments/editor.css +3 -0
- package/build-style/comments/style-rtl.css +3 -0
- package/build-style/comments/style.css +3 -0
- package/build-style/comments-pagination/editor-rtl.css +3 -0
- package/build-style/comments-pagination/editor.css +3 -0
- package/build-style/comments-pagination/style-rtl.css +3 -0
- package/build-style/comments-pagination/style.css +3 -0
- package/build-style/comments-pagination-numbers/editor-rtl.css +3 -0
- package/build-style/comments-pagination-numbers/editor.css +3 -0
- package/build-style/comments-title/editor-rtl.css +3 -0
- package/build-style/comments-title/editor.css +3 -0
- package/build-style/common-rtl.css +3 -0
- package/build-style/common.css +3 -0
- package/build-style/cover/editor-rtl.css +3 -0
- package/build-style/cover/editor.css +3 -0
- package/build-style/cover/style-rtl.css +3 -0
- package/build-style/cover/style.css +3 -0
- package/build-style/details/editor-rtl.css +3 -0
- package/build-style/details/editor.css +3 -0
- package/build-style/details/style-rtl.css +3 -0
- package/build-style/details/style.css +3 -0
- package/build-style/editor-elements-rtl.css +3 -0
- package/build-style/editor-elements.css +3 -0
- package/build-style/editor-rtl.css +29 -42
- package/build-style/editor.css +29 -42
- package/build-style/elements-rtl.css +3 -0
- package/build-style/elements.css +3 -0
- package/build-style/embed/editor-rtl.css +3 -0
- package/build-style/embed/editor.css +3 -0
- package/build-style/embed/style-rtl.css +3 -0
- package/build-style/embed/style.css +3 -0
- package/build-style/embed/theme-rtl.css +3 -0
- package/build-style/embed/theme.css +3 -0
- package/build-style/file/editor-rtl.css +3 -0
- package/build-style/file/editor.css +3 -0
- package/build-style/file/style-rtl.css +3 -0
- package/build-style/file/style.css +3 -0
- package/build-style/footnotes/style-rtl.css +3 -0
- package/build-style/footnotes/style.css +3 -0
- package/build-style/form-input/editor-rtl.css +3 -0
- package/build-style/form-input/editor.css +3 -0
- package/build-style/form-input/style-rtl.css +4 -0
- package/build-style/form-input/style.css +4 -0
- package/build-style/form-submission-notification/editor-rtl.css +3 -0
- package/build-style/form-submission-notification/editor.css +3 -0
- package/build-style/form-submit-button/style-rtl.css +3 -0
- package/build-style/form-submit-button/style.css +3 -0
- package/build-style/freeform/editor-rtl.css +3 -0
- package/build-style/freeform/editor.css +3 -0
- package/build-style/gallery/editor-rtl.css +3 -1
- package/build-style/gallery/editor.css +3 -1
- package/build-style/gallery/style-rtl.css +3 -0
- package/build-style/gallery/style.css +3 -0
- package/build-style/gallery/theme-rtl.css +3 -0
- package/build-style/gallery/theme.css +3 -0
- package/build-style/group/editor-rtl.css +3 -11
- package/build-style/group/editor.css +3 -11
- package/build-style/group/style-rtl.css +3 -0
- package/build-style/group/style.css +3 -0
- package/build-style/group/theme-rtl.css +3 -0
- package/build-style/group/theme.css +3 -0
- package/build-style/heading/style-rtl.css +3 -0
- package/build-style/heading/style.css +3 -0
- package/build-style/html/editor-rtl.css +3 -0
- package/build-style/html/editor.css +3 -0
- package/build-style/image/editor-rtl.css +19 -4
- package/build-style/image/editor.css +19 -4
- package/build-style/image/style-rtl.css +22 -0
- package/build-style/image/style.css +22 -0
- package/build-style/image/theme-rtl.css +3 -0
- package/build-style/image/theme.css +3 -0
- package/build-style/latest-comments/style-rtl.css +3 -0
- package/build-style/latest-comments/style.css +3 -0
- package/build-style/latest-posts/editor-rtl.css +3 -3
- package/build-style/latest-posts/editor.css +3 -3
- package/build-style/latest-posts/style-rtl.css +3 -0
- package/build-style/latest-posts/style.css +3 -0
- package/build-style/list/style-rtl.css +4 -1
- package/build-style/list/style.css +4 -1
- package/build-style/loginout/style-rtl.css +94 -0
- package/build-style/loginout/style.css +94 -0
- package/build-style/media-text/editor-rtl.css +3 -0
- package/build-style/media-text/editor.css +3 -0
- package/build-style/media-text/style-rtl.css +3 -0
- package/build-style/media-text/style.css +3 -0
- package/build-style/more/editor-rtl.css +3 -0
- package/build-style/more/editor.css +3 -0
- package/build-style/navigation/editor-rtl.css +3 -12
- package/build-style/navigation/editor.css +3 -12
- package/build-style/navigation/style-rtl.css +4 -4
- package/build-style/navigation/style.css +4 -4
- package/build-style/navigation-link/editor-rtl.css +3 -0
- package/build-style/navigation-link/editor.css +3 -0
- package/build-style/navigation-link/style-rtl.css +3 -0
- package/build-style/navigation-link/style.css +3 -0
- package/build-style/navigation-submenu/editor-rtl.css +3 -0
- package/build-style/navigation-submenu/editor.css +3 -0
- package/build-style/nextpage/editor-rtl.css +3 -0
- package/build-style/nextpage/editor.css +3 -0
- package/build-style/page-list/editor-rtl.css +3 -0
- package/build-style/page-list/editor.css +3 -0
- package/build-style/page-list/style-rtl.css +3 -0
- package/build-style/page-list/style.css +3 -0
- package/build-style/paragraph/editor-rtl.css +3 -0
- package/build-style/paragraph/editor.css +3 -0
- package/build-style/paragraph/style-rtl.css +3 -0
- package/build-style/paragraph/style.css +3 -0
- package/build-style/post-author/style-rtl.css +3 -0
- package/build-style/post-author/style.css +3 -0
- package/build-style/post-comments-form/editor-rtl.css +3 -0
- package/build-style/post-comments-form/editor.css +3 -0
- package/build-style/post-comments-form/style-rtl.css +4 -1
- package/build-style/post-comments-form/style.css +4 -1
- package/build-style/post-content/editor-rtl.css +3 -0
- package/build-style/post-content/editor.css +3 -0
- package/build-style/post-content/style-rtl.css +96 -0
- package/build-style/post-content/style.css +96 -0
- package/build-style/post-date/style-rtl.css +3 -0
- package/build-style/post-date/style.css +3 -0
- package/build-style/post-excerpt/editor-rtl.css +3 -0
- package/build-style/post-excerpt/editor.css +3 -0
- package/build-style/post-excerpt/style-rtl.css +4 -0
- package/build-style/post-excerpt/style.css +4 -0
- package/build-style/post-featured-image/editor-rtl.css +3 -0
- package/build-style/post-featured-image/editor.css +3 -0
- package/build-style/post-featured-image/style-rtl.css +3 -0
- package/build-style/post-featured-image/style.css +3 -0
- package/build-style/post-navigation-link/style-rtl.css +3 -0
- package/build-style/post-navigation-link/style.css +3 -0
- package/build-style/post-template/editor-rtl.css +3 -0
- package/build-style/post-template/editor.css +3 -0
- package/build-style/post-template/style-rtl.css +3 -0
- package/build-style/post-template/style.css +3 -0
- package/build-style/post-terms/style-rtl.css +3 -0
- package/build-style/post-terms/style.css +3 -0
- package/build-style/post-time-to-read/style-rtl.css +3 -0
- package/build-style/post-time-to-read/style.css +3 -0
- package/build-style/post-title/style-rtl.css +3 -0
- package/build-style/post-title/style.css +3 -0
- package/build-style/preformatted/style-rtl.css +3 -0
- package/build-style/preformatted/style.css +3 -0
- package/build-style/pullquote/editor-rtl.css +3 -0
- package/build-style/pullquote/editor.css +3 -0
- package/build-style/pullquote/style-rtl.css +3 -0
- package/build-style/pullquote/style.css +3 -0
- package/build-style/pullquote/theme-rtl.css +3 -0
- package/build-style/pullquote/theme.css +3 -0
- package/build-style/query/editor-rtl.css +3 -7
- package/build-style/query/editor.css +3 -7
- package/build-style/query-pagination/editor-rtl.css +3 -0
- package/build-style/query-pagination/editor.css +3 -0
- package/build-style/query-pagination/style-rtl.css +3 -0
- package/build-style/query-pagination/style.css +3 -0
- package/build-style/query-pagination-numbers/editor-rtl.css +3 -0
- package/build-style/query-pagination-numbers/editor.css +3 -0
- package/build-style/query-title/style-rtl.css +3 -0
- package/build-style/query-title/style.css +3 -0
- package/build-style/quote/style-rtl.css +3 -0
- package/build-style/quote/style.css +3 -0
- package/build-style/quote/theme-rtl.css +6 -3
- package/build-style/quote/theme.css +6 -3
- package/build-style/read-more/style-rtl.css +3 -0
- package/build-style/read-more/style.css +3 -0
- package/build-style/reset-rtl.css +3 -0
- package/build-style/reset.css +3 -0
- package/build-style/rss/editor-rtl.css +3 -0
- package/build-style/rss/editor.css +3 -0
- package/build-style/rss/style-rtl.css +3 -0
- package/build-style/rss/style.css +3 -0
- package/build-style/search/editor-rtl.css +4 -1
- package/build-style/search/editor.css +4 -1
- package/build-style/search/style-rtl.css +3 -0
- package/build-style/search/style.css +3 -0
- package/build-style/search/theme-rtl.css +3 -0
- package/build-style/search/theme.css +3 -0
- package/build-style/separator/editor-rtl.css +3 -0
- package/build-style/separator/editor.css +3 -0
- package/build-style/separator/style-rtl.css +3 -0
- package/build-style/separator/style.css +3 -0
- package/build-style/separator/theme-rtl.css +3 -0
- package/build-style/separator/theme.css +3 -0
- package/build-style/shortcode/editor-rtl.css +3 -0
- package/build-style/shortcode/editor.css +3 -0
- package/build-style/site-logo/editor-rtl.css +3 -0
- package/build-style/site-logo/editor.css +3 -0
- package/build-style/site-logo/style-rtl.css +3 -0
- package/build-style/site-logo/style.css +3 -0
- package/build-style/site-tagline/editor-rtl.css +3 -0
- package/build-style/site-tagline/editor.css +3 -0
- package/build-style/site-tagline/style-rtl.css +94 -0
- package/build-style/site-tagline/style.css +94 -0
- package/build-style/site-title/editor-rtl.css +3 -0
- package/build-style/site-title/editor.css +3 -0
- package/build-style/site-title/style-rtl.css +7 -1
- package/build-style/site-title/style.css +7 -1
- package/build-style/social-link/editor-rtl.css +3 -0
- package/build-style/social-link/editor.css +3 -0
- package/build-style/social-links/editor-rtl.css +3 -0
- package/build-style/social-links/editor.css +3 -0
- package/build-style/social-links/style-rtl.css +5 -2
- package/build-style/social-links/style.css +5 -2
- package/build-style/spacer/editor-rtl.css +3 -0
- package/build-style/spacer/editor.css +3 -0
- package/build-style/spacer/style-rtl.css +3 -0
- package/build-style/spacer/style.css +3 -0
- package/build-style/style-rtl.css +56 -9
- package/build-style/style.css +56 -9
- package/build-style/table/editor-rtl.css +3 -0
- package/build-style/table/editor.css +3 -0
- package/build-style/table/style-rtl.css +3 -0
- package/build-style/table/style.css +3 -0
- package/build-style/table/theme-rtl.css +3 -0
- package/build-style/table/theme.css +3 -0
- package/build-style/table-of-contents/style-rtl.css +94 -0
- package/build-style/table-of-contents/style.css +94 -0
- package/build-style/tag-cloud/editor-rtl.css +95 -0
- package/build-style/tag-cloud/editor.css +95 -0
- package/build-style/tag-cloud/style-rtl.css +3 -0
- package/build-style/tag-cloud/style.css +3 -0
- package/build-style/template-part/editor-rtl.css +3 -0
- package/build-style/template-part/editor.css +3 -0
- package/build-style/template-part/theme-rtl.css +3 -0
- package/build-style/template-part/theme.css +3 -0
- package/build-style/term-description/style-rtl.css +4 -0
- package/build-style/term-description/style.css +4 -0
- package/build-style/text-columns/editor-rtl.css +3 -0
- package/build-style/text-columns/editor.css +3 -0
- package/build-style/text-columns/style-rtl.css +3 -0
- package/build-style/text-columns/style.css +3 -0
- package/build-style/theme-rtl.css +6 -3
- package/build-style/theme.css +6 -3
- package/build-style/verse/style-rtl.css +3 -0
- package/build-style/verse/style.css +3 -0
- package/build-style/video/editor-rtl.css +3 -3
- package/build-style/video/editor.css +3 -3
- package/build-style/video/style-rtl.css +3 -0
- package/build-style/video/style.css +3 -0
- package/build-style/video/theme-rtl.css +3 -0
- package/build-style/video/theme.css +3 -0
- package/package.json +35 -35
- package/src/avatar/edit.js +1 -0
- package/src/block/edit.js +58 -27
- package/src/block/test/edit.native.js +6 -2
- package/src/button/edit.js +1 -1
- package/src/button/index.php +1 -14
- package/src/buttons/block.json +20 -0
- package/src/buttons/index.js +6 -0
- package/src/categories/block.json +20 -0
- package/src/categories/edit.js +32 -4
- package/src/categories/editor.scss +4 -0
- package/src/categories/index.php +4 -1
- package/src/categories/style.scss +4 -0
- package/src/column/block.json +2 -0
- package/src/column/edit.js +2 -2
- package/src/columns/index.js +1 -1
- package/src/comment-template/block.json +12 -0
- package/src/comments-title/block.json +3 -0
- package/src/comments-title/edit.js +8 -1
- package/src/cover/edit/inspector-controls.js +1 -0
- package/src/details/edit.js +1 -0
- package/src/editor.scss +1 -0
- package/src/embed/test/__snapshots__/index.native.js.snap +8 -8
- package/src/embed/test/index.js +1 -1
- package/src/embed/test/index.native.js +24 -23
- package/src/embed/variations.js +43 -35
- package/src/footnotes/index.js +1 -2
- package/src/form/edit.js +3 -2
- package/src/form-input/edit.js +3 -0
- package/src/form-input/style.scss +1 -0
- package/src/gallery/block.json +10 -0
- package/src/gallery/edit.js +75 -13
- package/src/gallery/editor.scss +0 -1
- package/src/gallery/gap-styles.js +1 -8
- package/src/gallery/test/__snapshots__/index.native.js.snap +1 -1
- package/src/gallery/test/index.native.js +5 -5
- package/src/gallery/use-image-sizes.js +2 -2
- package/src/group/deprecated.js +3 -7
- package/src/group/editor.scss +1 -1
- package/src/group/index.js +26 -29
- package/src/group/variations.js +56 -0
- package/src/heading/block.json +15 -0
- package/src/heading/edit.js +3 -1
- package/src/heading/index.js +1 -0
- package/src/image/block.json +3 -0
- package/src/image/edit.js +1 -1
- package/src/image/editor.scss +18 -1
- package/src/image/image.js +55 -35
- package/src/image/index.php +32 -15
- package/src/image/style.scss +22 -0
- package/src/image/test/edit.native.js +1 -0
- package/src/image/view.js +69 -49
- package/src/latest-comments/block.json +9 -0
- package/src/latest-posts/edit.js +1 -0
- package/src/latest-posts/editor.scss +0 -4
- package/src/list/block.json +1 -1
- package/src/list/edit.js +3 -3
- package/src/list/ordered-list-settings.js +20 -18
- package/src/list/style.scss +1 -1
- package/src/list/test/edit.native.js +1 -3
- package/src/list-item/block.json +3 -2
- package/src/list-item/edit.js +2 -2
- package/src/list-item/hooks/index.js +0 -1
- package/src/loginout/block.json +14 -1
- package/src/loginout/style.scss +4 -0
- package/src/media-text/block.json +12 -0
- package/src/media-text/style.native.scss +2 -0
- package/src/navigation/edit/index.js +5 -5
- package/src/navigation/edit/navigation-menu-delete-control.js +1 -0
- package/src/navigation/editor.scss +0 -1
- package/src/navigation/index.php +1 -1
- package/src/navigation/style.scss +4 -9
- package/src/navigation/test/use-navigation-menu.js +54 -15
- package/src/navigation/use-navigation-menu.js +5 -1
- package/src/navigation-link/link-ui.js +8 -14
- package/src/navigation-submenu/edit.js +1 -13
- package/src/page-list/edit.js +1 -0
- package/src/page-list-item/edit.js +4 -4
- package/src/paragraph/block.json +6 -0
- package/src/post-author/index.js +8 -0
- package/src/post-author-biography/block.json +3 -0
- package/src/post-author-name/block.json +3 -0
- package/src/post-comments-form/block.json +12 -0
- package/src/post-comments-form/style.scss +1 -1
- package/src/post-content/block.json +1 -0
- package/src/post-content/style.scss +5 -0
- package/src/post-date/block.json +15 -0
- package/src/post-excerpt/block.json +12 -0
- package/src/post-excerpt/edit.js +1 -0
- package/src/post-excerpt/style.scss +3 -0
- package/src/post-featured-image/block.json +3 -0
- package/src/post-navigation-link/edit.js +2 -0
- package/src/post-terms/block.json +15 -0
- package/src/post-time-to-read/block.json +6 -0
- package/src/post-title/block.json +15 -0
- package/src/post-title/edit.js +9 -8
- package/src/query/edit/inspector-controls/author-control.js +2 -0
- package/src/query/edit/inspector-controls/enhanced-pagination-control.js +1 -0
- package/src/query/edit/inspector-controls/index.js +123 -23
- package/src/query/edit/inspector-controls/offset-controls.js +31 -0
- package/src/query/edit/inspector-controls/order-control.js +1 -0
- package/src/query/edit/inspector-controls/pages-control.js +27 -0
- package/src/query/edit/inspector-controls/parent-control.js +1 -0
- package/src/query/edit/inspector-controls/per-page-control.js +33 -0
- package/src/query/edit/inspector-controls/sticky-control.js +2 -1
- package/src/query/edit/inspector-controls/taxonomy-controls.js +8 -3
- package/src/query/edit/query-content.js +17 -3
- package/src/query/edit/query-placeholder.js +1 -21
- package/src/query/edit/query-toolbar.js +1 -90
- package/src/query/editor.scss +0 -9
- package/src/query/utils.js +13 -5
- package/src/query/variations.js +4 -46
- package/src/query-pagination-numbers/edit.js +1 -0
- package/src/query-title/block.json +3 -0
- package/src/query-title/edit.js +19 -18
- package/src/query-title/use-archive-label.js +99 -0
- package/src/quote/block.json +15 -1
- package/src/quote/theme.scss +5 -3
- package/src/search/block.json +3 -0
- package/src/search/editor.scss +1 -1
- package/src/site-logo/edit.js +27 -10
- package/src/site-tagline/block.json +18 -2
- package/src/site-tagline/edit.js +7 -6
- package/src/site-tagline/style.scss +4 -0
- package/src/site-title/block.json +10 -0
- package/src/site-title/edit.js +6 -5
- package/src/site-title/index.js +6 -1
- package/src/site-title/style.scss +7 -2
- package/src/social-link/edit.js +0 -1
- package/src/social-link/icons/soundcloud.js +1 -1
- package/src/social-link/socials-with-bg.scss +1 -1
- package/src/social-link/socials-without-bg.scss +1 -1
- package/src/social-links/block.json +12 -0
- package/src/spacer/controls.js +10 -13
- package/src/style.scss +4 -0
- package/src/table-of-contents/block.json +14 -1
- package/src/table-of-contents/style.scss +4 -0
- package/src/tag-cloud/block.json +1 -1
- package/src/tag-cloud/edit.js +53 -35
- package/src/tag-cloud/editor.scss +9 -0
- package/src/template-part/edit/index.js +10 -5
- package/src/template-part/edit/inner-blocks.js +11 -6
- package/src/template-part/edit/placeholder.js +31 -6
- package/src/template-part/edit/title-modal.js +18 -4
- package/src/term-description/block.json +12 -0
- package/src/term-description/style.scss +2 -0
- package/src/utils/hooks.js +5 -1
- package/src/video/editor.scss +0 -4
- package/tsconfig.tsbuildinfo +1 -1
- package/build/list-item/hooks/use-split.js +0 -39
- package/build/list-item/hooks/use-split.js.map +0 -1
- package/build-module/list-item/hooks/use-split.js +0 -32
- package/build-module/list-item/hooks/use-split.js.map +0 -1
- package/src/list-item/hooks/use-split.js +0 -33
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["store","getContext","getElement","isTouching","lastTouchTime","imageRef","buttonRef","state","actions","callbacks","currentImage","overlayOpened","currentSrc","roleAttribute","ariaModal","enlargedSrc","uploadedSrc","imgStyles","replace","showLightbox","ctx","complete","scrollTopReset","document","documentElement","scrollTop","scrollLeftReset","scrollLeft","overlayEnabled","setOverlayStyles","hideLightbox","setTimeout","focus","preventScroll","showClosingAnimation","handleKeydown","event","key","preventDefault","ref","querySelector","handleTouchMove","handleTouchStart","handleTouchEnd","Date","now","handleScroll","window","scrollTo","naturalWidth","naturalHeight","offsetWidth","originalWidth","offsetHeight","originalHeight","x","screenPosX","y","screenPosY","getBoundingClientRect","naturalRatio","originalRatio","scaleAttr","heightWithoutSpace","widthWithoutSpace","imgMaxWidth","parseFloat","targetWidth","imgMaxHeight","targetHeight","imgRatio","containerMaxWidth","containerMaxHeight","containerWidth","containerHeight","toFixed","reducedHeight","reducedWidth","horizontalPadding","innerWidth","verticalPadding","targetMaxWidth","Math","min","targetMaxHeight","innerHeight","targetContainerRatio","containerScale","lightboxImgWidth","lightboxImgHeight","overlayStyles","clientWidth","setButtonStyles","figure","parentElement","figureWidth","figureHeight","clientHeight","caption","captionComputedStyle","getComputedStyle","includes","position","marginTop","marginBottom","buttonOffsetTop","buttonOffsetRight","offsetRatio","referenceHeight","imageButtonTop","imageButtonRight","referenceWidth","setOverlayFocus","initTriggerButton","lock"],"sources":["@wordpress/block-library/src/image/view.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store, getContext, getElement } from '@wordpress/interactivity';\n\n/**\n * Tracks whether user is touching screen; used to differentiate behavior for\n * touch and mouse input.\n *\n * @type {boolean}\n */\nlet isTouching = false;\n\n/**\n * Tracks the last time the screen was touched; used to differentiate behavior\n * for touch and mouse input.\n *\n * @type {number}\n */\nlet lastTouchTime = 0;\n\n/**\n * Stores the image reference of the currently opened lightbox.\n *\n * @type {HTMLElement}\n */\nlet imageRef;\n\n/**\n * Stores the button reference of the currently opened lightbox.\n *\n * @type {HTMLElement}\n */\nlet buttonRef;\n\nconst { state, actions, callbacks } = store(\n\t'core/image',\n\t{\n\t\tstate: {\n\t\t\tcurrentImage: {},\n\t\t\tget overlayOpened() {\n\t\t\t\treturn state.currentImage.currentSrc;\n\t\t\t},\n\t\t\tget roleAttribute() {\n\t\t\t\treturn state.overlayOpened ? 'dialog' : null;\n\t\t\t},\n\t\t\tget ariaModal() {\n\t\t\t\treturn state.overlayOpened ? 'true' : null;\n\t\t\t},\n\t\t\tget enlargedSrc() {\n\t\t\t\treturn (\n\t\t\t\t\tstate.currentImage.uploadedSrc ||\n\t\t\t\t\t'data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs='\n\t\t\t\t);\n\t\t\t},\n\t\t\tget imgStyles() {\n\t\t\t\treturn (\n\t\t\t\t\tstate.overlayOpened &&\n\t\t\t\t\t`${ state.currentImage.imgStyles?.replace(\n\t\t\t\t\t\t/;$/,\n\t\t\t\t\t\t''\n\t\t\t\t\t) }; object-fit:cover;`\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\tactions: {\n\t\t\tshowLightbox() {\n\t\t\t\tconst ctx = getContext();\n\n\t\t\t\t// Bails out if the image has not loaded yet.\n\t\t\t\tif ( ! ctx.imageRef?.complete ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Stores the positons of the scroll to fix it until the overlay is\n\t\t\t\t// closed.\n\t\t\t\tstate.scrollTopReset = document.documentElement.scrollTop;\n\t\t\t\tstate.scrollLeftReset = document.documentElement.scrollLeft;\n\n\t\t\t\t// Moves the information of the expaned image to the state.\n\t\t\t\tctx.currentSrc = ctx.imageRef.currentSrc;\n\t\t\t\timageRef = ctx.imageRef;\n\t\t\t\tbuttonRef = ctx.buttonRef;\n\t\t\t\tstate.currentImage = ctx;\n\t\t\t\tstate.overlayEnabled = true;\n\n\t\t\t\t// Computes the styles of the overlay for the animation.\n\t\t\t\tcallbacks.setOverlayStyles();\n\t\t\t},\n\t\t\thideLightbox() {\n\t\t\t\tif ( state.overlayEnabled ) {\n\t\t\t\t\t// Waits until the close animation has completed before allowing a\n\t\t\t\t\t// user to scroll again. The duration of this animation is defined in\n\t\t\t\t\t// the `styles.scss` file, but in any case we should wait a few\n\t\t\t\t\t// milliseconds longer than the duration, otherwise a user may scroll\n\t\t\t\t\t// too soon and cause the animation to look sloppy.\n\t\t\t\t\tsetTimeout( function () {\n\t\t\t\t\t\t// Delays before changing the focus. Otherwise the focus ring will\n\t\t\t\t\t\t// appear on Firefox before the image has finished animating, which\n\t\t\t\t\t\t// looks broken.\n\t\t\t\t\t\tbuttonRef.focus( {\n\t\t\t\t\t\t\tpreventScroll: true,\n\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t// Resets the current image to mark the overlay as closed.\n\t\t\t\t\t\tstate.currentImage = {};\n\t\t\t\t\t\timageRef = null;\n\t\t\t\t\t\tbuttonRef = null;\n\t\t\t\t\t}, 450 );\n\n\t\t\t\t\t// Starts the overlay closing animation. The showClosingAnimation\n\t\t\t\t\t// class is used to avoid showing it on page load.\n\t\t\t\t\tstate.showClosingAnimation = true;\n\t\t\t\t\tstate.overlayEnabled = false;\n\t\t\t\t}\n\t\t\t},\n\t\t\thandleKeydown( event ) {\n\t\t\t\tif ( state.overlayEnabled ) {\n\t\t\t\t\t// Focuses the close button when the user presses the tab key.\n\t\t\t\t\tif ( event.key === 'Tab' ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tconst { ref } = getElement();\n\t\t\t\t\t\tref.querySelector( 'button' ).focus();\n\t\t\t\t\t}\n\t\t\t\t\t// Closes the lightbox when the user presses the escape key.\n\t\t\t\t\tif ( event.key === 'Escape' ) {\n\t\t\t\t\t\tactions.hideLightbox();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\thandleTouchMove( event ) {\n\t\t\t\t// On mobile devices, prevents triggering the scroll event because\n\t\t\t\t// otherwise the page jumps around when it resets the scroll position.\n\t\t\t\t// This also means that closing the lightbox requires that a user\n\t\t\t\t// perform a simple tap. This may be changed in the future if there is a\n\t\t\t\t// better alternative to override or reset the scroll position during\n\t\t\t\t// swipe actions.\n\t\t\t\tif ( state.overlayEnabled ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\t\t\t},\n\t\t\thandleTouchStart() {\n\t\t\t\tisTouching = true;\n\t\t\t},\n\t\t\thandleTouchEnd() {\n\t\t\t\t// Waits a few milliseconds before resetting to ensure that pinch to\n\t\t\t\t// zoom works consistently on mobile devices when the lightbox is open.\n\t\t\t\tlastTouchTime = Date.now();\n\t\t\t\tisTouching = false;\n\t\t\t},\n\t\t\thandleScroll() {\n\t\t\t\t// Prevents scrolling behaviors that trigger content shift while the\n\t\t\t\t// lightbox is open. It would be better to accomplish through CSS alone,\n\t\t\t\t// but using overflow: hidden is currently the only way to do so and\n\t\t\t\t// that causes a layout to shift and prevents the zoom animation from\n\t\t\t\t// working in some cases because it's not possible to account for the\n\t\t\t\t// layout shift when doing the animation calculations. Instead, it uses\n\t\t\t\t// JavaScript to prevent and reset the scrolling behavior.\n\t\t\t\tif ( state.overlayOpened ) {\n\t\t\t\t\t// Avoids overriding the scroll behavior on mobile devices because\n\t\t\t\t\t// doing so breaks the pinch to zoom functionality, and users should\n\t\t\t\t\t// be able to zoom in further on the high-res image.\n\t\t\t\t\tif ( ! isTouching && Date.now() - lastTouchTime > 450 ) {\n\t\t\t\t\t\t// It doesn't rely on `event.preventDefault()` to prevent scrolling\n\t\t\t\t\t\t// because the scroll event can't be canceled, so it resets the\n\t\t\t\t\t\t// position instead.\n\t\t\t\t\t\twindow.scrollTo(\n\t\t\t\t\t\t\tstate.scrollLeftReset,\n\t\t\t\t\t\t\tstate.scrollTopReset\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tcallbacks: {\n\t\t\tsetOverlayStyles() {\n\t\t\t\tif ( ! imageRef ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet {\n\t\t\t\t\tnaturalWidth,\n\t\t\t\t\tnaturalHeight,\n\t\t\t\t\toffsetWidth: originalWidth,\n\t\t\t\t\toffsetHeight: originalHeight,\n\t\t\t\t} = imageRef;\n\t\t\t\tlet { x: screenPosX, y: screenPosY } =\n\t\t\t\t\timageRef.getBoundingClientRect();\n\n\t\t\t\t// Natural ratio of the image clicked to open the lightbox.\n\t\t\t\tconst naturalRatio = naturalWidth / naturalHeight;\n\t\t\t\t// Original ratio of the image clicked to open the lightbox.\n\t\t\t\tlet originalRatio = originalWidth / originalHeight;\n\n\t\t\t\t// If it has object-fit: contain, recalculates the original sizes\n\t\t\t\t// and the screen position without the blank spaces.\n\t\t\t\tif ( state.currentImage.scaleAttr === 'contain' ) {\n\t\t\t\t\tif ( naturalRatio > originalRatio ) {\n\t\t\t\t\t\tconst heightWithoutSpace = originalWidth / naturalRatio;\n\t\t\t\t\t\t// Recalculates screen position without the top space.\n\t\t\t\t\t\tscreenPosY +=\n\t\t\t\t\t\t\t( originalHeight - heightWithoutSpace ) / 2;\n\t\t\t\t\t\toriginalHeight = heightWithoutSpace;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst widthWithoutSpace = originalHeight * naturalRatio;\n\t\t\t\t\t\t// Recalculates screen position without the left space.\n\t\t\t\t\t\tscreenPosX += ( originalWidth - widthWithoutSpace ) / 2;\n\t\t\t\t\t\toriginalWidth = widthWithoutSpace;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\toriginalRatio = originalWidth / originalHeight;\n\n\t\t\t\t// Typically, it uses the image's full-sized dimensions. If those\n\t\t\t\t// dimensions have not been set (i.e. an external image with only one\n\t\t\t\t// size), the image's dimensions in the lightbox are the same\n\t\t\t\t// as those of the image in the content.\n\t\t\t\tlet imgMaxWidth = parseFloat(\n\t\t\t\t\tstate.currentImage.targetWidth !== 'none'\n\t\t\t\t\t\t? state.currentImage.targetWidth\n\t\t\t\t\t\t: naturalWidth\n\t\t\t\t);\n\t\t\t\tlet imgMaxHeight = parseFloat(\n\t\t\t\t\tstate.currentImage.targetHeight !== 'none'\n\t\t\t\t\t\t? state.currentImage.targetHeight\n\t\t\t\t\t\t: naturalHeight\n\t\t\t\t);\n\n\t\t\t\t// Ratio of the biggest image stored in the database.\n\t\t\t\tlet imgRatio = imgMaxWidth / imgMaxHeight;\n\t\t\t\tlet containerMaxWidth = imgMaxWidth;\n\t\t\t\tlet containerMaxHeight = imgMaxHeight;\n\t\t\t\tlet containerWidth = imgMaxWidth;\n\t\t\t\tlet containerHeight = imgMaxHeight;\n\t\t\t\t// Checks if the target image has a different ratio than the original\n\t\t\t\t// one (thumbnail). Recalculates the width and height.\n\t\t\t\tif ( naturalRatio.toFixed( 2 ) !== imgRatio.toFixed( 2 ) ) {\n\t\t\t\t\tif ( naturalRatio > imgRatio ) {\n\t\t\t\t\t\t// If the width is reached before the height, it keeps the maxWidth\n\t\t\t\t\t\t// and recalculates the height unless the difference between the\n\t\t\t\t\t\t// maxHeight and the reducedHeight is higher than the maxWidth,\n\t\t\t\t\t\t// where it keeps the reducedHeight and recalculate the width.\n\t\t\t\t\t\tconst reducedHeight = imgMaxWidth / naturalRatio;\n\t\t\t\t\t\tif ( imgMaxHeight - reducedHeight > imgMaxWidth ) {\n\t\t\t\t\t\t\timgMaxHeight = reducedHeight;\n\t\t\t\t\t\t\timgMaxWidth = reducedHeight * naturalRatio;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\timgMaxHeight = imgMaxWidth / naturalRatio;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// If the height is reached before the width, it keeps the maxHeight\n\t\t\t\t\t\t// and recalculate the width unlesss the difference between the\n\t\t\t\t\t\t// maxWidth and the reducedWidth is higher than the maxHeight, where\n\t\t\t\t\t\t// it keeps the reducedWidth and recalculate the height.\n\t\t\t\t\t\tconst reducedWidth = imgMaxHeight * naturalRatio;\n\t\t\t\t\t\tif ( imgMaxWidth - reducedWidth > imgMaxHeight ) {\n\t\t\t\t\t\t\timgMaxWidth = reducedWidth;\n\t\t\t\t\t\t\timgMaxHeight = reducedWidth / naturalRatio;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\timgMaxWidth = imgMaxHeight * naturalRatio;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcontainerWidth = imgMaxWidth;\n\t\t\t\t\tcontainerHeight = imgMaxHeight;\n\t\t\t\t\timgRatio = imgMaxWidth / imgMaxHeight;\n\n\t\t\t\t\t// Calculates the max size of the container.\n\t\t\t\t\tif ( originalRatio > imgRatio ) {\n\t\t\t\t\t\tcontainerMaxWidth = imgMaxWidth;\n\t\t\t\t\t\tcontainerMaxHeight = containerMaxWidth / originalRatio;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcontainerMaxHeight = imgMaxHeight;\n\t\t\t\t\t\tcontainerMaxWidth = containerMaxHeight * originalRatio;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// If the image has been pixelated on purpose, it keeps that size.\n\t\t\t\tif (\n\t\t\t\t\toriginalWidth > containerWidth ||\n\t\t\t\t\toriginalHeight > containerHeight\n\t\t\t\t) {\n\t\t\t\t\tcontainerWidth = originalWidth;\n\t\t\t\t\tcontainerHeight = originalHeight;\n\t\t\t\t}\n\n\t\t\t\t// Calculates the final lightbox image size and the scale factor.\n\t\t\t\t// MaxWidth is either the window container (accounting for padding) or\n\t\t\t\t// the image resolution.\n\t\t\t\tlet horizontalPadding = 0;\n\t\t\t\tif ( window.innerWidth > 480 ) {\n\t\t\t\t\thorizontalPadding = 80;\n\t\t\t\t} else if ( window.innerWidth > 1920 ) {\n\t\t\t\t\thorizontalPadding = 160;\n\t\t\t\t}\n\t\t\t\tconst verticalPadding = 80;\n\n\t\t\t\tconst targetMaxWidth = Math.min(\n\t\t\t\t\twindow.innerWidth - horizontalPadding,\n\t\t\t\t\tcontainerWidth\n\t\t\t\t);\n\t\t\t\tconst targetMaxHeight = Math.min(\n\t\t\t\t\twindow.innerHeight - verticalPadding,\n\t\t\t\t\tcontainerHeight\n\t\t\t\t);\n\t\t\t\tconst targetContainerRatio = targetMaxWidth / targetMaxHeight;\n\n\t\t\t\tif ( originalRatio > targetContainerRatio ) {\n\t\t\t\t\t// If targetMaxWidth is reached before targetMaxHeight.\n\t\t\t\t\tcontainerWidth = targetMaxWidth;\n\t\t\t\t\tcontainerHeight = containerWidth / originalRatio;\n\t\t\t\t} else {\n\t\t\t\t\t// If targetMaxHeight is reached before targetMaxWidth.\n\t\t\t\t\tcontainerHeight = targetMaxHeight;\n\t\t\t\t\tcontainerWidth = containerHeight * originalRatio;\n\t\t\t\t}\n\n\t\t\t\tconst containerScale = originalWidth / containerWidth;\n\t\t\t\tconst lightboxImgWidth =\n\t\t\t\t\timgMaxWidth * ( containerWidth / containerMaxWidth );\n\t\t\t\tconst lightboxImgHeight =\n\t\t\t\t\timgMaxHeight * ( containerHeight / containerMaxHeight );\n\n\t\t\t\t// As of this writing, using the calculations above will render the\n\t\t\t\t// lightbox with a small, erroneous whitespace on the left side of the\n\t\t\t\t// image in iOS Safari, perhaps due to an inconsistency in how browsers\n\t\t\t\t// handle absolute positioning and CSS transformation. In any case,\n\t\t\t\t// adding 1 pixel to the container width and height solves the problem,\n\t\t\t\t// though this can be removed if the issue is fixed in the future.\n\t\t\t\tstate.overlayStyles = `\n\t\t\t\t:root {\n\t\t\t\t\t--wp--lightbox-initial-top-position: ${ screenPosY }px;\n\t\t\t\t\t--wp--lightbox-initial-left-position: ${ screenPosX }px;\n\t\t\t\t\t--wp--lightbox-container-width: ${ containerWidth + 1 }px;\n\t\t\t\t\t--wp--lightbox-container-height: ${ containerHeight + 1 }px;\n\t\t\t\t\t--wp--lightbox-image-width: ${ lightboxImgWidth }px;\n\t\t\t\t\t--wp--lightbox-image-height: ${ lightboxImgHeight }px;\n\t\t\t\t\t--wp--lightbox-scale: ${ containerScale };\n\t\t\t\t\t--wp--lightbox-scrollbar-width: ${\n\t\t\t\t\t\twindow.innerWidth - document.documentElement.clientWidth\n\t\t\t\t\t}px;\n\t\t\t\t}\n\t\t\t`;\n\t\t\t},\n\t\t\tsetButtonStyles() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tctx.imageRef = ref;\n\n\t\t\t\tconst {\n\t\t\t\t\tnaturalWidth,\n\t\t\t\t\tnaturalHeight,\n\t\t\t\t\toffsetWidth,\n\t\t\t\t\toffsetHeight,\n\t\t\t\t} = ref;\n\n\t\t\t\t// If the image isn't loaded yet, it can't calculate where the button\n\t\t\t\t// should be.\n\t\t\t\tif ( naturalWidth === 0 || naturalHeight === 0 ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst figure = ref.parentElement;\n\t\t\t\tconst figureWidth = ref.parentElement.clientWidth;\n\n\t\t\t\t// It needs special handling for the height because a caption will cause\n\t\t\t\t// the figure to be taller than the image, which means it needs to\n\t\t\t\t// account for that when calculating the placement of the button in the\n\t\t\t\t// top right corner of the image.\n\t\t\t\tlet figureHeight = ref.parentElement.clientHeight;\n\t\t\t\tconst caption = figure.querySelector( 'figcaption' );\n\t\t\t\tif ( caption ) {\n\t\t\t\t\tconst captionComputedStyle =\n\t\t\t\t\t\twindow.getComputedStyle( caption );\n\t\t\t\t\tif (\n\t\t\t\t\t\t! [ 'absolute', 'fixed' ].includes(\n\t\t\t\t\t\t\tcaptionComputedStyle.position\n\t\t\t\t\t\t)\n\t\t\t\t\t) {\n\t\t\t\t\t\tfigureHeight =\n\t\t\t\t\t\t\tfigureHeight -\n\t\t\t\t\t\t\tcaption.offsetHeight -\n\t\t\t\t\t\t\tparseFloat( captionComputedStyle.marginTop ) -\n\t\t\t\t\t\t\tparseFloat( captionComputedStyle.marginBottom );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst buttonOffsetTop = figureHeight - offsetHeight;\n\t\t\t\tconst buttonOffsetRight = figureWidth - offsetWidth;\n\n\t\t\t\t// In the case of an image with object-fit: contain, the size of the\n\t\t\t\t// <img> element can be larger than the image itself, so it needs to\n\t\t\t\t// calculate where to place the button.\n\t\t\t\tif ( ctx.scaleAttr === 'contain' ) {\n\t\t\t\t\t// Natural ratio of the image.\n\t\t\t\t\tconst naturalRatio = naturalWidth / naturalHeight;\n\t\t\t\t\t// Offset ratio of the image.\n\t\t\t\t\tconst offsetRatio = offsetWidth / offsetHeight;\n\n\t\t\t\t\tif ( naturalRatio >= offsetRatio ) {\n\t\t\t\t\t\t// If it reaches the width first, it keeps the width and compute the\n\t\t\t\t\t\t// height.\n\t\t\t\t\t\tconst referenceHeight = offsetWidth / naturalRatio;\n\t\t\t\t\t\tctx.imageButtonTop =\n\t\t\t\t\t\t\t( offsetHeight - referenceHeight ) / 2 +\n\t\t\t\t\t\t\tbuttonOffsetTop +\n\t\t\t\t\t\t\t16;\n\t\t\t\t\t\tctx.imageButtonRight = buttonOffsetRight + 16;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// If it reaches the height first, it keeps the height and compute\n\t\t\t\t\t\t// the width.\n\t\t\t\t\t\tconst referenceWidth = offsetHeight * naturalRatio;\n\t\t\t\t\t\tctx.imageButtonTop = buttonOffsetTop + 16;\n\t\t\t\t\t\tctx.imageButtonRight =\n\t\t\t\t\t\t\t( offsetWidth - referenceWidth ) / 2 +\n\t\t\t\t\t\t\tbuttonOffsetRight +\n\t\t\t\t\t\t\t16;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tctx.imageButtonTop = buttonOffsetTop + 16;\n\t\t\t\t\tctx.imageButtonRight = buttonOffsetRight + 16;\n\t\t\t\t}\n\t\t\t},\n\t\t\tsetOverlayFocus() {\n\t\t\t\tif ( state.overlayEnabled ) {\n\t\t\t\t\t// Moves the focus to the dialog when it opens.\n\t\t\t\t\tconst { ref } = getElement();\n\t\t\t\t\tref.focus();\n\t\t\t\t}\n\t\t\t},\n\t\t\tinitTriggerButton() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tctx.buttonRef = ref;\n\t\t\t},\n\t\t},\n\t},\n\t{ lock: true }\n);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["store","getContext","getElement","isTouching","lastTouchTime","state","actions","callbacks","currentImageId","currentImage","metadata","overlayOpened","roleAttribute","ariaModal","enlargedSrc","uploadedSrc","figureStyles","replace","imgStyles","imageButtonRight","imageId","imageButtonTop","isContentHidden","ctx","overlayEnabled","isContentVisible","showLightbox","imageRef","complete","scrollTopReset","document","documentElement","scrollTop","scrollLeftReset","scrollLeft","setOverlayStyles","hideLightbox","showClosingAnimation","setTimeout","buttonRef","focus","preventScroll","handleKeydown","event","key","preventDefault","ref","querySelector","handleTouchMove","handleTouchStart","handleTouchEnd","Date","now","handleScroll","window","scrollTo","naturalWidth","naturalHeight","offsetWidth","originalWidth","offsetHeight","originalHeight","x","screenPosX","y","screenPosY","getBoundingClientRect","naturalRatio","originalRatio","scaleAttr","heightWithoutSpace","widthWithoutSpace","imgMaxWidth","parseFloat","targetWidth","imgMaxHeight","targetHeight","imgRatio","containerMaxWidth","containerMaxHeight","containerWidth","containerHeight","toFixed","reducedHeight","reducedWidth","horizontalPadding","innerWidth","verticalPadding","targetMaxWidth","Math","min","targetMaxHeight","innerHeight","targetContainerRatio","containerScale","lightboxImgWidth","lightboxImgHeight","overlayStyles","clientWidth","setButtonStyles","currentSrc","figure","parentElement","figureWidth","figureHeight","clientHeight","caption","captionComputedStyle","getComputedStyle","includes","position","marginTop","marginBottom","buttonOffsetTop","buttonOffsetRight","offsetRatio","referenceHeight","referenceWidth","setOverlayFocus","initTriggerButton","lock"],"sources":["@wordpress/block-library/src/image/view.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store, getContext, getElement } from '@wordpress/interactivity';\n\n/**\n * Tracks whether user is touching screen; used to differentiate behavior for\n * touch and mouse input.\n *\n * @type {boolean}\n */\nlet isTouching = false;\n\n/**\n * Tracks the last time the screen was touched; used to differentiate behavior\n * for touch and mouse input.\n *\n * @type {number}\n */\nlet lastTouchTime = 0;\n\nconst { state, actions, callbacks } = store(\n\t'core/image',\n\t{\n\t\tstate: {\n\t\t\tcurrentImageId: null,\n\t\t\tget currentImage() {\n\t\t\t\treturn state.metadata[ state.currentImageId ];\n\t\t\t},\n\t\t\tget overlayOpened() {\n\t\t\t\treturn state.currentImageId !== null;\n\t\t\t},\n\t\t\tget roleAttribute() {\n\t\t\t\treturn state.overlayOpened ? 'dialog' : null;\n\t\t\t},\n\t\t\tget ariaModal() {\n\t\t\t\treturn state.overlayOpened ? 'true' : null;\n\t\t\t},\n\t\t\tget enlargedSrc() {\n\t\t\t\treturn (\n\t\t\t\t\tstate.currentImage.uploadedSrc ||\n\t\t\t\t\t'data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs='\n\t\t\t\t);\n\t\t\t},\n\t\t\tget figureStyles() {\n\t\t\t\treturn (\n\t\t\t\t\tstate.overlayOpened &&\n\t\t\t\t\t`${ state.currentImage.figureStyles?.replace(\n\t\t\t\t\t\t/margin[^;]*;?/g,\n\t\t\t\t\t\t''\n\t\t\t\t\t) };`\n\t\t\t\t);\n\t\t\t},\n\t\t\tget imgStyles() {\n\t\t\t\treturn (\n\t\t\t\t\tstate.overlayOpened &&\n\t\t\t\t\t`${ state.currentImage.imgStyles?.replace(\n\t\t\t\t\t\t/;$/,\n\t\t\t\t\t\t''\n\t\t\t\t\t) }; object-fit:cover;`\n\t\t\t\t);\n\t\t\t},\n\t\t\tget imageButtonRight() {\n\t\t\t\tconst { imageId } = getContext();\n\t\t\t\treturn state.metadata[ imageId ].imageButtonRight;\n\t\t\t},\n\t\t\tget imageButtonTop() {\n\t\t\t\tconst { imageId } = getContext();\n\t\t\t\treturn state.metadata[ imageId ].imageButtonTop;\n\t\t\t},\n\t\t\tget isContentHidden() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\treturn (\n\t\t\t\t\tstate.overlayEnabled && state.currentImageId === ctx.imageId\n\t\t\t\t);\n\t\t\t},\n\t\t\tget isContentVisible() {\n\t\t\t\tconst ctx = getContext();\n\t\t\t\treturn (\n\t\t\t\t\t! state.overlayEnabled &&\n\t\t\t\t\tstate.currentImageId === ctx.imageId\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t\tactions: {\n\t\t\tshowLightbox() {\n\t\t\t\tconst { imageId } = getContext();\n\n\t\t\t\t// Bails out if the image has not loaded yet.\n\t\t\t\tif ( ! state.metadata[ imageId ].imageRef?.complete ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// Stores the positions of the scroll to fix it until the overlay is\n\t\t\t\t// closed.\n\t\t\t\tstate.scrollTopReset = document.documentElement.scrollTop;\n\t\t\t\tstate.scrollLeftReset = document.documentElement.scrollLeft;\n\n\t\t\t\t// Sets the current expanded image in the state and enables the overlay.\n\t\t\t\tstate.overlayEnabled = true;\n\t\t\t\tstate.currentImageId = imageId;\n\n\t\t\t\t// Computes the styles of the overlay for the animation.\n\t\t\t\tcallbacks.setOverlayStyles();\n\t\t\t},\n\t\t\thideLightbox() {\n\t\t\t\tif ( state.overlayEnabled ) {\n\t\t\t\t\t// Starts the overlay closing animation. The showClosingAnimation\n\t\t\t\t\t// class is used to avoid showing it on page load.\n\t\t\t\t\tstate.showClosingAnimation = true;\n\t\t\t\t\tstate.overlayEnabled = false;\n\n\t\t\t\t\t// Waits until the close animation has completed before allowing a\n\t\t\t\t\t// user to scroll again. The duration of this animation is defined in\n\t\t\t\t\t// the `styles.scss` file, but in any case we should wait a few\n\t\t\t\t\t// milliseconds longer than the duration, otherwise a user may scroll\n\t\t\t\t\t// too soon and cause the animation to look sloppy.\n\t\t\t\t\tsetTimeout( function () {\n\t\t\t\t\t\t// Delays before changing the focus. Otherwise the focus ring will\n\t\t\t\t\t\t// appear on Firefox before the image has finished animating, which\n\t\t\t\t\t\t// looks broken.\n\t\t\t\t\t\tstate.currentImage.buttonRef.focus( {\n\t\t\t\t\t\t\tpreventScroll: true,\n\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t// Resets the current image id to mark the overlay as closed.\n\t\t\t\t\t\tstate.currentImageId = null;\n\t\t\t\t\t}, 450 );\n\t\t\t\t}\n\t\t\t},\n\t\t\thandleKeydown( event ) {\n\t\t\t\tif ( state.overlayEnabled ) {\n\t\t\t\t\t// Focuses the close button when the user presses the tab key.\n\t\t\t\t\tif ( event.key === 'Tab' ) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tconst { ref } = getElement();\n\t\t\t\t\t\tref.querySelector( 'button' ).focus();\n\t\t\t\t\t}\n\t\t\t\t\t// Closes the lightbox when the user presses the escape key.\n\t\t\t\t\tif ( event.key === 'Escape' ) {\n\t\t\t\t\t\tactions.hideLightbox();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\thandleTouchMove( event ) {\n\t\t\t\t// On mobile devices, prevents triggering the scroll event because\n\t\t\t\t// otherwise the page jumps around when it resets the scroll position.\n\t\t\t\t// This also means that closing the lightbox requires that a user\n\t\t\t\t// perform a simple tap. This may be changed in the future if there is a\n\t\t\t\t// better alternative to override or reset the scroll position during\n\t\t\t\t// swipe actions.\n\t\t\t\tif ( state.overlayEnabled ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\t\t\t},\n\t\t\thandleTouchStart() {\n\t\t\t\tisTouching = true;\n\t\t\t},\n\t\t\thandleTouchEnd() {\n\t\t\t\t// Waits a few milliseconds before resetting to ensure that pinch to\n\t\t\t\t// zoom works consistently on mobile devices when the lightbox is open.\n\t\t\t\tlastTouchTime = Date.now();\n\t\t\t\tisTouching = false;\n\t\t\t},\n\t\t\thandleScroll() {\n\t\t\t\t// Prevents scrolling behaviors that trigger content shift while the\n\t\t\t\t// lightbox is open. It would be better to accomplish through CSS alone,\n\t\t\t\t// but using overflow: hidden is currently the only way to do so and\n\t\t\t\t// that causes a layout to shift and prevents the zoom animation from\n\t\t\t\t// working in some cases because it's not possible to account for the\n\t\t\t\t// layout shift when doing the animation calculations. Instead, it uses\n\t\t\t\t// JavaScript to prevent and reset the scrolling behavior.\n\t\t\t\tif ( state.overlayOpened ) {\n\t\t\t\t\t// Avoids overriding the scroll behavior on mobile devices because\n\t\t\t\t\t// doing so breaks the pinch to zoom functionality, and users should\n\t\t\t\t\t// be able to zoom in further on the high-res image.\n\t\t\t\t\tif ( ! isTouching && Date.now() - lastTouchTime > 450 ) {\n\t\t\t\t\t\t// It doesn't rely on `event.preventDefault()` to prevent scrolling\n\t\t\t\t\t\t// because the scroll event can't be canceled, so it resets the\n\t\t\t\t\t\t// position instead.\n\t\t\t\t\t\twindow.scrollTo(\n\t\t\t\t\t\t\tstate.scrollLeftReset,\n\t\t\t\t\t\t\tstate.scrollTopReset\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t},\n\t\tcallbacks: {\n\t\t\tsetOverlayStyles() {\n\t\t\t\tif ( ! state.overlayEnabled ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet {\n\t\t\t\t\tnaturalWidth,\n\t\t\t\t\tnaturalHeight,\n\t\t\t\t\toffsetWidth: originalWidth,\n\t\t\t\t\toffsetHeight: originalHeight,\n\t\t\t\t} = state.currentImage.imageRef;\n\t\t\t\tlet { x: screenPosX, y: screenPosY } =\n\t\t\t\t\tstate.currentImage.imageRef.getBoundingClientRect();\n\n\t\t\t\t// Natural ratio of the image clicked to open the lightbox.\n\t\t\t\tconst naturalRatio = naturalWidth / naturalHeight;\n\t\t\t\t// Original ratio of the image clicked to open the lightbox.\n\t\t\t\tlet originalRatio = originalWidth / originalHeight;\n\n\t\t\t\t// If it has object-fit: contain, recalculates the original sizes\n\t\t\t\t// and the screen position without the blank spaces.\n\t\t\t\tif ( state.currentImage.scaleAttr === 'contain' ) {\n\t\t\t\t\tif ( naturalRatio > originalRatio ) {\n\t\t\t\t\t\tconst heightWithoutSpace = originalWidth / naturalRatio;\n\t\t\t\t\t\t// Recalculates screen position without the top space.\n\t\t\t\t\t\tscreenPosY +=\n\t\t\t\t\t\t\t( originalHeight - heightWithoutSpace ) / 2;\n\t\t\t\t\t\toriginalHeight = heightWithoutSpace;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst widthWithoutSpace = originalHeight * naturalRatio;\n\t\t\t\t\t\t// Recalculates screen position without the left space.\n\t\t\t\t\t\tscreenPosX += ( originalWidth - widthWithoutSpace ) / 2;\n\t\t\t\t\t\toriginalWidth = widthWithoutSpace;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\toriginalRatio = originalWidth / originalHeight;\n\n\t\t\t\t// Typically, it uses the image's full-sized dimensions. If those\n\t\t\t\t// dimensions have not been set (i.e. an external image with only one\n\t\t\t\t// size), the image's dimensions in the lightbox are the same\n\t\t\t\t// as those of the image in the content.\n\t\t\t\tlet imgMaxWidth = parseFloat(\n\t\t\t\t\tstate.currentImage.targetWidth !== 'none'\n\t\t\t\t\t\t? state.currentImage.targetWidth\n\t\t\t\t\t\t: naturalWidth\n\t\t\t\t);\n\t\t\t\tlet imgMaxHeight = parseFloat(\n\t\t\t\t\tstate.currentImage.targetHeight !== 'none'\n\t\t\t\t\t\t? state.currentImage.targetHeight\n\t\t\t\t\t\t: naturalHeight\n\t\t\t\t);\n\n\t\t\t\t// Ratio of the biggest image stored in the database.\n\t\t\t\tlet imgRatio = imgMaxWidth / imgMaxHeight;\n\t\t\t\tlet containerMaxWidth = imgMaxWidth;\n\t\t\t\tlet containerMaxHeight = imgMaxHeight;\n\t\t\t\tlet containerWidth = imgMaxWidth;\n\t\t\t\tlet containerHeight = imgMaxHeight;\n\n\t\t\t\t// Checks if the target image has a different ratio than the original\n\t\t\t\t// one (thumbnail). Recalculates the width and height.\n\t\t\t\tif ( naturalRatio.toFixed( 2 ) !== imgRatio.toFixed( 2 ) ) {\n\t\t\t\t\tif ( naturalRatio > imgRatio ) {\n\t\t\t\t\t\t// If the width is reached before the height, it keeps the maxWidth\n\t\t\t\t\t\t// and recalculates the height unless the difference between the\n\t\t\t\t\t\t// maxHeight and the reducedHeight is higher than the maxWidth,\n\t\t\t\t\t\t// where it keeps the reducedHeight and recalculate the width.\n\t\t\t\t\t\tconst reducedHeight = imgMaxWidth / naturalRatio;\n\t\t\t\t\t\tif ( imgMaxHeight - reducedHeight > imgMaxWidth ) {\n\t\t\t\t\t\t\timgMaxHeight = reducedHeight;\n\t\t\t\t\t\t\timgMaxWidth = reducedHeight * naturalRatio;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\timgMaxHeight = imgMaxWidth / naturalRatio;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// If the height is reached before the width, it keeps the maxHeight\n\t\t\t\t\t\t// and recalculate the width unlesss the difference between the\n\t\t\t\t\t\t// maxWidth and the reducedWidth is higher than the maxHeight, where\n\t\t\t\t\t\t// it keeps the reducedWidth and recalculate the height.\n\t\t\t\t\t\tconst reducedWidth = imgMaxHeight * naturalRatio;\n\t\t\t\t\t\tif ( imgMaxWidth - reducedWidth > imgMaxHeight ) {\n\t\t\t\t\t\t\timgMaxWidth = reducedWidth;\n\t\t\t\t\t\t\timgMaxHeight = reducedWidth / naturalRatio;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\timgMaxWidth = imgMaxHeight * naturalRatio;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcontainerWidth = imgMaxWidth;\n\t\t\t\t\tcontainerHeight = imgMaxHeight;\n\t\t\t\t\timgRatio = imgMaxWidth / imgMaxHeight;\n\n\t\t\t\t\t// Calculates the max size of the container.\n\t\t\t\t\tif ( originalRatio > imgRatio ) {\n\t\t\t\t\t\tcontainerMaxWidth = imgMaxWidth;\n\t\t\t\t\t\tcontainerMaxHeight = containerMaxWidth / originalRatio;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tcontainerMaxHeight = imgMaxHeight;\n\t\t\t\t\t\tcontainerMaxWidth = containerMaxHeight * originalRatio;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// If the image has been pixelated on purpose, it keeps that size.\n\t\t\t\tif (\n\t\t\t\t\toriginalWidth > containerWidth ||\n\t\t\t\t\toriginalHeight > containerHeight\n\t\t\t\t) {\n\t\t\t\t\tcontainerWidth = originalWidth;\n\t\t\t\t\tcontainerHeight = originalHeight;\n\t\t\t\t}\n\n\t\t\t\t// Calculates the final lightbox image size and the scale factor.\n\t\t\t\t// MaxWidth is either the window container (accounting for padding) or\n\t\t\t\t// the image resolution.\n\t\t\t\tlet horizontalPadding = 0;\n\t\t\t\tif ( window.innerWidth > 480 ) {\n\t\t\t\t\thorizontalPadding = 80;\n\t\t\t\t} else if ( window.innerWidth > 1920 ) {\n\t\t\t\t\thorizontalPadding = 160;\n\t\t\t\t}\n\t\t\t\tconst verticalPadding = 80;\n\n\t\t\t\tconst targetMaxWidth = Math.min(\n\t\t\t\t\twindow.innerWidth - horizontalPadding,\n\t\t\t\t\tcontainerWidth\n\t\t\t\t);\n\t\t\t\tconst targetMaxHeight = Math.min(\n\t\t\t\t\twindow.innerHeight - verticalPadding,\n\t\t\t\t\tcontainerHeight\n\t\t\t\t);\n\t\t\t\tconst targetContainerRatio = targetMaxWidth / targetMaxHeight;\n\n\t\t\t\tif ( originalRatio > targetContainerRatio ) {\n\t\t\t\t\t// If targetMaxWidth is reached before targetMaxHeight.\n\t\t\t\t\tcontainerWidth = targetMaxWidth;\n\t\t\t\t\tcontainerHeight = containerWidth / originalRatio;\n\t\t\t\t} else {\n\t\t\t\t\t// If targetMaxHeight is reached before targetMaxWidth.\n\t\t\t\t\tcontainerHeight = targetMaxHeight;\n\t\t\t\t\tcontainerWidth = containerHeight * originalRatio;\n\t\t\t\t}\n\n\t\t\t\tconst containerScale = originalWidth / containerWidth;\n\t\t\t\tconst lightboxImgWidth =\n\t\t\t\t\timgMaxWidth * ( containerWidth / containerMaxWidth );\n\t\t\t\tconst lightboxImgHeight =\n\t\t\t\t\timgMaxHeight * ( containerHeight / containerMaxHeight );\n\n\t\t\t\t// As of this writing, using the calculations above will render the\n\t\t\t\t// lightbox with a small, erroneous whitespace on the left side of the\n\t\t\t\t// image in iOS Safari, perhaps due to an inconsistency in how browsers\n\t\t\t\t// handle absolute positioning and CSS transformation. In any case,\n\t\t\t\t// adding 1 pixel to the container width and height solves the problem,\n\t\t\t\t// though this can be removed if the issue is fixed in the future.\n\t\t\t\tstate.overlayStyles = `\n\t\t\t\t:root {\n\t\t\t\t\t--wp--lightbox-initial-top-position: ${ screenPosY }px;\n\t\t\t\t\t--wp--lightbox-initial-left-position: ${ screenPosX }px;\n\t\t\t\t\t--wp--lightbox-container-width: ${ containerWidth + 1 }px;\n\t\t\t\t\t--wp--lightbox-container-height: ${ containerHeight + 1 }px;\n\t\t\t\t\t--wp--lightbox-image-width: ${ lightboxImgWidth }px;\n\t\t\t\t\t--wp--lightbox-image-height: ${ lightboxImgHeight }px;\n\t\t\t\t\t--wp--lightbox-scale: ${ containerScale };\n\t\t\t\t\t--wp--lightbox-scrollbar-width: ${\n\t\t\t\t\t\twindow.innerWidth - document.documentElement.clientWidth\n\t\t\t\t\t}px;\n\t\t\t\t}\n\t\t\t`;\n\t\t\t},\n\t\t\tsetButtonStyles() {\n\t\t\t\tconst { imageId } = getContext();\n\t\t\t\tconst { ref } = getElement();\n\n\t\t\t\tstate.metadata[ imageId ].imageRef = ref;\n\t\t\t\tstate.metadata[ imageId ].currentSrc = ref.currentSrc;\n\n\t\t\t\tconst {\n\t\t\t\t\tnaturalWidth,\n\t\t\t\t\tnaturalHeight,\n\t\t\t\t\toffsetWidth,\n\t\t\t\t\toffsetHeight,\n\t\t\t\t} = ref;\n\n\t\t\t\t// If the image isn't loaded yet, it can't calculate where the button\n\t\t\t\t// should be.\n\t\t\t\tif ( naturalWidth === 0 || naturalHeight === 0 ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst figure = ref.parentElement;\n\t\t\t\tconst figureWidth = ref.parentElement.clientWidth;\n\n\t\t\t\t// It needs special handling for the height because a caption will cause\n\t\t\t\t// the figure to be taller than the image, which means it needs to\n\t\t\t\t// account for that when calculating the placement of the button in the\n\t\t\t\t// top right corner of the image.\n\t\t\t\tlet figureHeight = ref.parentElement.clientHeight;\n\t\t\t\tconst caption = figure.querySelector( 'figcaption' );\n\t\t\t\tif ( caption ) {\n\t\t\t\t\tconst captionComputedStyle =\n\t\t\t\t\t\twindow.getComputedStyle( caption );\n\t\t\t\t\tif (\n\t\t\t\t\t\t! [ 'absolute', 'fixed' ].includes(\n\t\t\t\t\t\t\tcaptionComputedStyle.position\n\t\t\t\t\t\t)\n\t\t\t\t\t) {\n\t\t\t\t\t\tfigureHeight =\n\t\t\t\t\t\t\tfigureHeight -\n\t\t\t\t\t\t\tcaption.offsetHeight -\n\t\t\t\t\t\t\tparseFloat( captionComputedStyle.marginTop ) -\n\t\t\t\t\t\t\tparseFloat( captionComputedStyle.marginBottom );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst buttonOffsetTop = figureHeight - offsetHeight;\n\t\t\t\tconst buttonOffsetRight = figureWidth - offsetWidth;\n\n\t\t\t\tlet imageButtonTop = buttonOffsetTop + 16;\n\t\t\t\tlet imageButtonRight = buttonOffsetRight + 16;\n\n\t\t\t\t// In the case of an image with object-fit: contain, the size of the\n\t\t\t\t// <img> element can be larger than the image itself, so it needs to\n\t\t\t\t// calculate where to place the button.\n\t\t\t\tif ( state.metadata[ imageId ].scaleAttr === 'contain' ) {\n\t\t\t\t\t// Natural ratio of the image.\n\t\t\t\t\tconst naturalRatio = naturalWidth / naturalHeight;\n\t\t\t\t\t// Offset ratio of the image.\n\t\t\t\t\tconst offsetRatio = offsetWidth / offsetHeight;\n\n\t\t\t\t\tif ( naturalRatio >= offsetRatio ) {\n\t\t\t\t\t\t// If it reaches the width first, it keeps the width and compute the\n\t\t\t\t\t\t// height.\n\t\t\t\t\t\tconst referenceHeight = offsetWidth / naturalRatio;\n\t\t\t\t\t\timageButtonTop =\n\t\t\t\t\t\t\t( offsetHeight - referenceHeight ) / 2 +\n\t\t\t\t\t\t\tbuttonOffsetTop +\n\t\t\t\t\t\t\t16;\n\t\t\t\t\t\timageButtonRight = buttonOffsetRight + 16;\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// If it reaches the height first, it keeps the height and compute\n\t\t\t\t\t\t// the width.\n\t\t\t\t\t\tconst referenceWidth = offsetHeight * naturalRatio;\n\t\t\t\t\t\timageButtonTop = buttonOffsetTop + 16;\n\t\t\t\t\t\timageButtonRight =\n\t\t\t\t\t\t\t( offsetWidth - referenceWidth ) / 2 +\n\t\t\t\t\t\t\tbuttonOffsetRight +\n\t\t\t\t\t\t\t16;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tstate.metadata[ imageId ].imageButtonTop = imageButtonTop;\n\t\t\t\tstate.metadata[ imageId ].imageButtonRight = imageButtonRight;\n\t\t\t},\n\t\t\tsetOverlayFocus() {\n\t\t\t\tif ( state.overlayEnabled ) {\n\t\t\t\t\t// Moves the focus to the dialog when it opens.\n\t\t\t\t\tconst { ref } = getElement();\n\t\t\t\t\tref.focus();\n\t\t\t\t}\n\t\t\t},\n\t\t\tinitTriggerButton() {\n\t\t\t\tconst { imageId } = getContext();\n\t\t\t\tconst { ref } = getElement();\n\t\t\t\tstate.metadata[ imageId ].buttonRef = ref;\n\t\t\t},\n\t\t},\n\t},\n\t{ lock: true }\n);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -38,6 +38,15 @@ const metadata = {
|
|
|
38
38
|
},
|
|
39
39
|
supports: {
|
|
40
40
|
align: true,
|
|
41
|
+
color: {
|
|
42
|
+
gradients: true,
|
|
43
|
+
link: true,
|
|
44
|
+
__experimentalDefaultControls: {
|
|
45
|
+
background: true,
|
|
46
|
+
text: true,
|
|
47
|
+
link: true
|
|
48
|
+
}
|
|
49
|
+
},
|
|
41
50
|
html: false,
|
|
42
51
|
spacing: {
|
|
43
52
|
margin: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["comment","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","commentsToShow","type","minimum","maximum","displayAvatar","displayDate","displayExcerpt","supports","align","html","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","
|
|
1
|
+
{"version":3,"names":["comment","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","commentsToShow","type","minimum","maximum","displayAvatar","displayDate","displayExcerpt","supports","align","color","gradients","link","__experimentalDefaultControls","background","text","html","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","interactivity","clientNavigation","editorStyle","style","edit","settings","example","init"],"sources":["@wordpress/block-library/src/latest-comments/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { comment as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {},\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAO,IAAIC,IAAI,QAAQ,kBAAkB;;AAElD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,cAAA;MAAAC,IAAA;MAAA;MAAAC,OAAA;MAAAC,OAAA;IAAA;IAAAC,aAAA;MAAAH,IAAA;MAAA;IAAA;IAAAI,WAAA;MAAAJ,IAAA;MAAA;IAAA;IAAAK,cAAA;MAAAL,IAAA;MAAA;IAAA;EAAA;EAAAM,QAAA;IAAAC,KAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;QAAAH,IAAA;MAAA;IAAA;IAAAI,IAAA;IAAAC,OAAA;MAAAC,MAAA;MAAAC,OAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAf,6BAAA;QAAAQ,QAAA;MAAA;IAAA;IAAAQ,aAAA;MAAAC,gBAAA;IAAA;EAAA;EAAAC,WAAA;EAAAC,KAAA;AAAA;AAE5C,OAAOC,IAAI,MAAM,QAAQ;AAEzB,MAAM;EAAEvC;AAAK,CAAC,GAAGH,QAAQ;AAEzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAMwC,QAAQ,GAAG;EACvB7C,IAAI;EACJ8C,OAAO,EAAE,CAAC,CAAC;EACXF;AACD,CAAC;AAED,OAAO,MAAMG,IAAI,GAAGA,CAAA,KAAM9C,SAAS,CAAE;EAAEI,IAAI;EAAEH,QAAQ;EAAE2C;AAAS,CAAE,CAAC","ignoreList":[]}
|
|
@@ -157,6 +157,7 @@ export default function LatestPostsEdit({
|
|
|
157
157
|
children: [/*#__PURE__*/_jsxs(PanelBody, {
|
|
158
158
|
title: __('Post content'),
|
|
159
159
|
children: [/*#__PURE__*/_jsx(ToggleControl, {
|
|
160
|
+
__nextHasNoMarginBottom: true,
|
|
160
161
|
label: __('Post content'),
|
|
161
162
|
checked: displayPostContent,
|
|
162
163
|
onChange: value => setAttributes({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","BaseControl","PanelBody","Placeholder","QueryControls","RadioControl","RangeControl","Spinner","ToggleControl","ToolbarGroup","__","_x","sprintf","dateI18n","format","getSettings","InspectorControls","BlockAlignmentToolbar","BlockControls","__experimentalImageSizeControl","ImageSizeControl","useBlockProps","store","blockEditorStore","useSelect","useDispatch","pin","list","grid","coreStore","noticeStore","useInstanceId","createInterpolateElement","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","MAX_POSTS_COLUMNS","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","CATEGORIES_LIST_QUERY","per_page","context","USERS_LIST_QUERY","has_published_posts","getFeaturedImageDetails","post","size","_image$media_details$","image","_embedded","url","media_details","sizes","source_url","alt","alt_text","LatestPostsEdit","attributes","setAttributes","_categoriesList$reduc","instanceId","postsToShow","order","orderBy","categories","selectedAuthor","displayFeaturedImage","displayPostContentRadio","displayPostContent","displayPostDate","displayAuthor","postLayout","columns","excerptLength","featuredImageAlign","featuredImageSizeSlug","featuredImageSizeWidth","featuredImageSizeHeight","addLinkToFeaturedImage","imageSizes","latestPosts","defaultImageWidth","defaultImageHeight","categoriesList","authorList","select","_settings$imageDimens","_settings$imageDimens2","getEntityRecords","getUsers","settings","catIds","length","map","cat","id","latestPostsQuery","Object","fromEntries","entries","author","orderby","_embed","filter","value","imageDimensions","width","height","createWarningNotice","removeNotice","noticeId","showRedirectionPreventedNotice","event","preventDefault","type","imageSizeOptions","slug","name","label","categorySuggestions","reduce","accumulator","category","selectCategories","tokens","hasNoSuggestion","some","token","allCategories","includes","hasPosts","inspectorControls","children","title","checked","onChange","selected","options","__nextHasNoMarginBottom","__next40pxDefaultSize","min","max","newAttrs","hasOwnProperty","imageWidth","imageHeight","imageSizeHelp","onChangeImage","undefined","className","VisualLabel","controls","isCollapsed","numberOfItems","onOrderChange","onOrderByChange","onNumberOfItemsChange","onCategoryChange","selectedCategories","onAuthorChange","Number","selectedAuthorId","Math","required","blockProps","icon","Array","isArray","displayPosts","slice","layoutControls","onClick","isActive","dateFormat","formats","date","titleTrimmed","rendered","trim","excerpt","currentAuthor","find","excerptElement","document","createElement","innerHTML","textContent","innerText","imageSourceUrl","featuredImageAlt","imageClasses","renderFeaturedImage","featuredImage","src","style","maxWidth","maxHeight","needsReadMore","split","raw","postExcerpt","join","a","href","link","rel","span","dangerouslySetInnerHTML","__html","date_gmt","dateTime","content"],"sources":["@wordpress/block-library/src/latest-posts/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tPlaceholder,\n\tQueryControls,\n\tRadioControl,\n\tRangeControl,\n\tSpinner,\n\tToggleControl,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { dateI18n, format, getSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tBlockAlignmentToolbar,\n\tBlockControls,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { pin, list, grid } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticeStore } from '@wordpress/notices';\nimport { useInstanceId } from '@wordpress/compose';\nimport { createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMIN_EXCERPT_LENGTH,\n\tMAX_EXCERPT_LENGTH,\n\tMAX_POSTS_COLUMNS,\n} from './constants';\n\n/**\n * Module Constants\n */\nconst CATEGORIES_LIST_QUERY = {\n\tper_page: -1,\n\tcontext: 'view',\n};\nconst USERS_LIST_QUERY = {\n\tper_page: -1,\n\thas_published_posts: [ 'post' ],\n\tcontext: 'view',\n};\n\nfunction getFeaturedImageDetails( post, size ) {\n\tconst image = post._embedded?.[ 'wp:featuredmedia' ]?.[ '0' ];\n\n\treturn {\n\t\turl:\n\t\t\timage?.media_details?.sizes?.[ size ]?.source_url ??\n\t\t\timage?.source_url,\n\t\talt: image?.alt_text,\n\t};\n}\n\nexport default function LatestPostsEdit( { attributes, setAttributes } ) {\n\tconst instanceId = useInstanceId( LatestPostsEdit );\n\tconst {\n\t\tpostsToShow,\n\t\torder,\n\t\torderBy,\n\t\tcategories,\n\t\tselectedAuthor,\n\t\tdisplayFeaturedImage,\n\t\tdisplayPostContentRadio,\n\t\tdisplayPostContent,\n\t\tdisplayPostDate,\n\t\tdisplayAuthor,\n\t\tpostLayout,\n\t\tcolumns,\n\t\texcerptLength,\n\t\tfeaturedImageAlign,\n\t\tfeaturedImageSizeSlug,\n\t\tfeaturedImageSizeWidth,\n\t\tfeaturedImageSizeHeight,\n\t\taddLinkToFeaturedImage,\n\t} = attributes;\n\tconst {\n\t\timageSizes,\n\t\tlatestPosts,\n\t\tdefaultImageWidth,\n\t\tdefaultImageHeight,\n\t\tcategoriesList,\n\t\tauthorList,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getUsers } = select( coreStore );\n\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\tconst catIds =\n\t\t\t\tcategories && categories.length > 0\n\t\t\t\t\t? categories.map( ( cat ) => cat.id )\n\t\t\t\t\t: [];\n\t\t\tconst latestPostsQuery = Object.fromEntries(\n\t\t\t\tObject.entries( {\n\t\t\t\t\tcategories: catIds,\n\t\t\t\t\tauthor: selectedAuthor,\n\t\t\t\t\torder,\n\t\t\t\t\torderby: orderBy,\n\t\t\t\t\tper_page: postsToShow,\n\t\t\t\t\t_embed: 'wp:featuredmedia',\n\t\t\t\t} ).filter( ( [ , value ] ) => typeof value !== 'undefined' )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tdefaultImageWidth:\n\t\t\t\t\tsettings.imageDimensions?.[ featuredImageSizeSlug ]\n\t\t\t\t\t\t?.width ?? 0,\n\t\t\t\tdefaultImageHeight:\n\t\t\t\t\tsettings.imageDimensions?.[ featuredImageSizeSlug ]\n\t\t\t\t\t\t?.height ?? 0,\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tlatestPosts: getEntityRecords(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'post',\n\t\t\t\t\tlatestPostsQuery\n\t\t\t\t),\n\t\t\t\tcategoriesList: getEntityRecords(\n\t\t\t\t\t'taxonomy',\n\t\t\t\t\t'category',\n\t\t\t\t\tCATEGORIES_LIST_QUERY\n\t\t\t\t),\n\t\t\t\tauthorList: getUsers( USERS_LIST_QUERY ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tfeaturedImageSizeSlug,\n\t\t\tpostsToShow,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tcategories,\n\t\t\tselectedAuthor,\n\t\t]\n\t);\n\n\t// If a user clicks to a link prevent redirection and show a warning.\n\tconst { createWarningNotice, removeNotice } = useDispatch( noticeStore );\n\tlet noticeId;\n\tconst showRedirectionPreventedNotice = ( event ) => {\n\t\tevent.preventDefault();\n\t\t// Remove previous warning if any, to show one at a time per block.\n\t\tremoveNotice( noticeId );\n\t\tnoticeId = `block-library/core/latest-posts/redirection-prevented/${ instanceId }`;\n\t\tcreateWarningNotice( __( 'Links are disabled in the editor.' ), {\n\t\t\tid: noticeId,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => slug !== 'full' )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\tconst categorySuggestions =\n\t\tcategoriesList?.reduce(\n\t\t\t( accumulator, category ) => ( {\n\t\t\t\t...accumulator,\n\t\t\t\t[ category.name ]: category,\n\t\t\t} ),\n\t\t\t{}\n\t\t) ?? {};\n\tconst selectCategories = ( tokens ) => {\n\t\tconst hasNoSuggestion = tokens.some(\n\t\t\t( token ) =>\n\t\t\t\ttypeof token === 'string' && ! categorySuggestions[ token ]\n\t\t);\n\t\tif ( hasNoSuggestion ) {\n\t\t\treturn;\n\t\t}\n\t\t// Categories that are already will be objects, while new additions will be strings (the name).\n\t\t// allCategories nomalizes the array so that they are all objects.\n\t\tconst allCategories = tokens.map( ( token ) => {\n\t\t\treturn typeof token === 'string'\n\t\t\t\t? categorySuggestions[ token ]\n\t\t\t\t: token;\n\t\t} );\n\t\t// We do nothing if the category is not selected\n\t\t// from suggestions.\n\t\tif ( allCategories.includes( null ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tsetAttributes( { categories: allCategories } );\n\t};\n\n\tconst hasPosts = !! latestPosts?.length;\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Post content' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Post content' ) }\n\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostContent: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t<RadioControl\n\t\t\t\t\t\tlabel={ __( 'Show:' ) }\n\t\t\t\t\t\tselected={ displayPostContentRadio }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Excerpt' ), value: 'excerpt' },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Full post' ),\n\t\t\t\t\t\t\t\tvalue: 'full_post',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayPostContentRadio: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ displayPostContent &&\n\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Max number of words' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Post meta' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display author name' ) }\n\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayAuthor: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostDate: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Featured image' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayFeaturedImage: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tconst newAttrs = {};\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'width' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeWidth =\n\t\t\t\t\t\t\t\t\t\tvalue.width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'height' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeHeight =\n\t\t\t\t\t\t\t\t\t\tvalue.height;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetAttributes( newAttrs );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tslug={ featuredImageSizeSlug }\n\t\t\t\t\t\t\twidth={ featuredImageSizeWidth }\n\t\t\t\t\t\t\theight={ featuredImageSizeHeight }\n\t\t\t\t\t\t\timageWidth={ defaultImageWidth }\n\t\t\t\t\t\t\timageHeight={ defaultImageHeight }\n\t\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\t\timageSizeHelp={ __(\n\t\t\t\t\t\t\t\t'Select the size of the source image.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonChangeImage={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeSlug: value,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeWidth: undefined,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeHeight: undefined,\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<BaseControl className=\"editor-latest-posts-image-alignment-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Image alignment' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<BlockAlignmentToolbar\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfeaturedImageAlign: value,\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\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisCollapsed={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BaseControl>\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={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taddLinkToFeaturedImage: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t<QueryControls\n\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\tonOrderChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { order: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonOrderByChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { orderBy: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonNumberOfItemsChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { postsToShow: value } )\n\t\t\t\t\t}\n\t\t\t\t\tcategorySuggestions={ categorySuggestions }\n\t\t\t\t\tonCategoryChange={ selectCategories }\n\t\t\t\t\tselectedCategories={ categories }\n\t\t\t\t\tonAuthorChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tselectedAuthor:\n\t\t\t\t\t\t\t\t'' !== value ? Number( value ) : undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tauthorList={ authorList ?? [] }\n\t\t\t\t\tselectedAuthorId={ selectedAuthor }\n\t\t\t\t/>\n\n\t\t\t\t{ postLayout === 'grid' && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t! hasPosts\n\t\t\t\t\t\t\t\t? MAX_POSTS_COLUMNS\n\t\t\t\t\t\t\t\t: Math.min(\n\t\t\t\t\t\t\t\t\t\tMAX_POSTS_COLUMNS,\n\t\t\t\t\t\t\t\t\t\tlatestPosts.length\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t'wp-block-latest-posts__list': true,\n\t\t\t'is-grid': postLayout === 'grid',\n\t\t\t'has-dates': displayPostDate,\n\t\t\t'has-author': displayAuthor,\n\t\t\t[ `columns-${ columns }` ]: postLayout === 'grid',\n\t\t} ),\n\t} );\n\n\tif ( ! hasPosts ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ inspectorControls }\n\t\t\t\t<Placeholder icon={ pin } label={ __( 'Latest Posts' ) }>\n\t\t\t\t\t{ ! Array.isArray( latestPosts ) ? (\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t__( 'No posts found.' )\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Removing posts from display should be instant.\n\tconst displayPosts =\n\t\tlatestPosts.length > postsToShow\n\t\t\t? latestPosts.slice( 0, postsToShow )\n\t\t\t: latestPosts;\n\n\tconst layoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: _x( 'List view', 'Latest posts block display setting' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'list' } ),\n\t\t\tisActive: postLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: _x( 'Grid view', 'Latest posts block display setting' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'grid' } ),\n\t\t\tisActive: postLayout === 'grid',\n\t\t},\n\t];\n\n\tconst dateFormat = getSettings().formats.date;\n\n\treturn (\n\t\t<>\n\t\t\t{ inspectorControls }\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ layoutControls } />\n\t\t\t</BlockControls>\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ displayPosts.map( ( post ) => {\n\t\t\t\t\tconst titleTrimmed = post.title.rendered.trim();\n\t\t\t\t\tlet excerpt = post.excerpt.rendered;\n\t\t\t\t\tconst currentAuthor = authorList?.find(\n\t\t\t\t\t\t( author ) => author.id === post.author\n\t\t\t\t\t);\n\n\t\t\t\t\tconst excerptElement = document.createElement( 'div' );\n\t\t\t\t\texcerptElement.innerHTML = excerpt;\n\n\t\t\t\t\texcerpt =\n\t\t\t\t\t\texcerptElement.textContent ||\n\t\t\t\t\t\texcerptElement.innerText ||\n\t\t\t\t\t\t'';\n\n\t\t\t\t\tconst { url: imageSourceUrl, alt: featuredImageAlt } =\n\t\t\t\t\t\tgetFeaturedImageDetails( post, featuredImageSizeSlug );\n\t\t\t\t\tconst imageClasses = clsx( {\n\t\t\t\t\t\t'wp-block-latest-posts__featured-image': true,\n\t\t\t\t\t\t[ `align${ featuredImageAlign }` ]:\n\t\t\t\t\t\t\t!! featuredImageAlign,\n\t\t\t\t\t} );\n\t\t\t\t\tconst renderFeaturedImage =\n\t\t\t\t\t\tdisplayFeaturedImage && imageSourceUrl;\n\t\t\t\t\tconst featuredImage = renderFeaturedImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ imageSourceUrl }\n\t\t\t\t\t\t\talt={ featuredImageAlt }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: featuredImageSizeWidth,\n\t\t\t\t\t\t\t\tmaxHeight: featuredImageSizeHeight,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\tconst needsReadMore =\n\t\t\t\t\t\texcerptLength < excerpt.trim().split( ' ' ).length &&\n\t\t\t\t\t\tpost.excerpt.raw === '';\n\n\t\t\t\t\tconst postExcerpt = needsReadMore ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ excerpt\n\t\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\t\t\t.split( ' ', excerptLength )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: 1: Hidden accessibility text: Post title */\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'… <a>Read more<span>: %1$s</span></a>'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\ttitleTrimmed || __( '(no title)' )\n\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\t\ta: (\n\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__read-more\"\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\t\t\tshowRedirectionPreventedNotice\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tspan: (\n\t\t\t\t\t\t\t\t\t\t<span className=\"screen-reader-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</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\texcerpt\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={ post.id }>\n\t\t\t\t\t\t\t{ renderFeaturedImage && (\n\t\t\t\t\t\t\t\t<div className={ imageClasses }>\n\t\t\t\t\t\t\t\t\t{ addLinkToFeaturedImage ? (\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\t\t\tshowRedirectionPreventedNotice\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ featuredImage }\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tfeaturedImage\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-title\"\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={\n\t\t\t\t\t\t\t\t\t!! titleTrimmed\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t__html: titleTrimmed,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonClick={ showRedirectionPreventedNotice }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ! titleTrimmed ? __( '(no title)' ) : null }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{ displayAuthor && currentAuthor && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-author\">\n\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: byline. %s: current author. */\n\t\t\t\t\t\t\t\t\t\t__( 'by %s' ),\n\t\t\t\t\t\t\t\t\t\tcurrentAuthor.name\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostDate && post.date_gmt && (\n\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\tdateTime={ format( 'c', post.date_gmt ) }\n\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-date\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ dateI18n( dateFormat, post.date_gmt ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-excerpt\">\n\t\t\t\t\t\t\t\t\t\t{ postExcerpt }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'full_post' && (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-full-content\"\n\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t\t\t\t\t__html: post.content.raw.trim(),\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","BaseControl","PanelBody","Placeholder","QueryControls","RadioControl","RangeControl","Spinner","ToggleControl","ToolbarGroup","__","_x","sprintf","dateI18n","format","getSettings","InspectorControls","BlockAlignmentToolbar","BlockControls","__experimentalImageSizeControl","ImageSizeControl","useBlockProps","store","blockEditorStore","useSelect","useDispatch","pin","list","grid","coreStore","noticeStore","useInstanceId","createInterpolateElement","MIN_EXCERPT_LENGTH","MAX_EXCERPT_LENGTH","MAX_POSTS_COLUMNS","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","CATEGORIES_LIST_QUERY","per_page","context","USERS_LIST_QUERY","has_published_posts","getFeaturedImageDetails","post","size","_image$media_details$","image","_embedded","url","media_details","sizes","source_url","alt","alt_text","LatestPostsEdit","attributes","setAttributes","_categoriesList$reduc","instanceId","postsToShow","order","orderBy","categories","selectedAuthor","displayFeaturedImage","displayPostContentRadio","displayPostContent","displayPostDate","displayAuthor","postLayout","columns","excerptLength","featuredImageAlign","featuredImageSizeSlug","featuredImageSizeWidth","featuredImageSizeHeight","addLinkToFeaturedImage","imageSizes","latestPosts","defaultImageWidth","defaultImageHeight","categoriesList","authorList","select","_settings$imageDimens","_settings$imageDimens2","getEntityRecords","getUsers","settings","catIds","length","map","cat","id","latestPostsQuery","Object","fromEntries","entries","author","orderby","_embed","filter","value","imageDimensions","width","height","createWarningNotice","removeNotice","noticeId","showRedirectionPreventedNotice","event","preventDefault","type","imageSizeOptions","slug","name","label","categorySuggestions","reduce","accumulator","category","selectCategories","tokens","hasNoSuggestion","some","token","allCategories","includes","hasPosts","inspectorControls","children","title","__nextHasNoMarginBottom","checked","onChange","selected","options","__next40pxDefaultSize","min","max","newAttrs","hasOwnProperty","imageWidth","imageHeight","imageSizeHelp","onChangeImage","undefined","className","VisualLabel","controls","isCollapsed","numberOfItems","onOrderChange","onOrderByChange","onNumberOfItemsChange","onCategoryChange","selectedCategories","onAuthorChange","Number","selectedAuthorId","Math","required","blockProps","icon","Array","isArray","displayPosts","slice","layoutControls","onClick","isActive","dateFormat","formats","date","titleTrimmed","rendered","trim","excerpt","currentAuthor","find","excerptElement","document","createElement","innerHTML","textContent","innerText","imageSourceUrl","featuredImageAlt","imageClasses","renderFeaturedImage","featuredImage","src","style","maxWidth","maxHeight","needsReadMore","split","raw","postExcerpt","join","a","href","link","rel","span","dangerouslySetInnerHTML","__html","date_gmt","dateTime","content"],"sources":["@wordpress/block-library/src/latest-posts/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tPlaceholder,\n\tQueryControls,\n\tRadioControl,\n\tRangeControl,\n\tSpinner,\n\tToggleControl,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { dateI18n, format, getSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tBlockAlignmentToolbar,\n\tBlockControls,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { pin, list, grid } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticeStore } from '@wordpress/notices';\nimport { useInstanceId } from '@wordpress/compose';\nimport { createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMIN_EXCERPT_LENGTH,\n\tMAX_EXCERPT_LENGTH,\n\tMAX_POSTS_COLUMNS,\n} from './constants';\n\n/**\n * Module Constants\n */\nconst CATEGORIES_LIST_QUERY = {\n\tper_page: -1,\n\tcontext: 'view',\n};\nconst USERS_LIST_QUERY = {\n\tper_page: -1,\n\thas_published_posts: [ 'post' ],\n\tcontext: 'view',\n};\n\nfunction getFeaturedImageDetails( post, size ) {\n\tconst image = post._embedded?.[ 'wp:featuredmedia' ]?.[ '0' ];\n\n\treturn {\n\t\turl:\n\t\t\timage?.media_details?.sizes?.[ size ]?.source_url ??\n\t\t\timage?.source_url,\n\t\talt: image?.alt_text,\n\t};\n}\n\nexport default function LatestPostsEdit( { attributes, setAttributes } ) {\n\tconst instanceId = useInstanceId( LatestPostsEdit );\n\tconst {\n\t\tpostsToShow,\n\t\torder,\n\t\torderBy,\n\t\tcategories,\n\t\tselectedAuthor,\n\t\tdisplayFeaturedImage,\n\t\tdisplayPostContentRadio,\n\t\tdisplayPostContent,\n\t\tdisplayPostDate,\n\t\tdisplayAuthor,\n\t\tpostLayout,\n\t\tcolumns,\n\t\texcerptLength,\n\t\tfeaturedImageAlign,\n\t\tfeaturedImageSizeSlug,\n\t\tfeaturedImageSizeWidth,\n\t\tfeaturedImageSizeHeight,\n\t\taddLinkToFeaturedImage,\n\t} = attributes;\n\tconst {\n\t\timageSizes,\n\t\tlatestPosts,\n\t\tdefaultImageWidth,\n\t\tdefaultImageHeight,\n\t\tcategoriesList,\n\t\tauthorList,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getUsers } = select( coreStore );\n\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\tconst catIds =\n\t\t\t\tcategories && categories.length > 0\n\t\t\t\t\t? categories.map( ( cat ) => cat.id )\n\t\t\t\t\t: [];\n\t\t\tconst latestPostsQuery = Object.fromEntries(\n\t\t\t\tObject.entries( {\n\t\t\t\t\tcategories: catIds,\n\t\t\t\t\tauthor: selectedAuthor,\n\t\t\t\t\torder,\n\t\t\t\t\torderby: orderBy,\n\t\t\t\t\tper_page: postsToShow,\n\t\t\t\t\t_embed: 'wp:featuredmedia',\n\t\t\t\t} ).filter( ( [ , value ] ) => typeof value !== 'undefined' )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tdefaultImageWidth:\n\t\t\t\t\tsettings.imageDimensions?.[ featuredImageSizeSlug ]\n\t\t\t\t\t\t?.width ?? 0,\n\t\t\t\tdefaultImageHeight:\n\t\t\t\t\tsettings.imageDimensions?.[ featuredImageSizeSlug ]\n\t\t\t\t\t\t?.height ?? 0,\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tlatestPosts: getEntityRecords(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'post',\n\t\t\t\t\tlatestPostsQuery\n\t\t\t\t),\n\t\t\t\tcategoriesList: getEntityRecords(\n\t\t\t\t\t'taxonomy',\n\t\t\t\t\t'category',\n\t\t\t\t\tCATEGORIES_LIST_QUERY\n\t\t\t\t),\n\t\t\t\tauthorList: getUsers( USERS_LIST_QUERY ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tfeaturedImageSizeSlug,\n\t\t\tpostsToShow,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tcategories,\n\t\t\tselectedAuthor,\n\t\t]\n\t);\n\n\t// If a user clicks to a link prevent redirection and show a warning.\n\tconst { createWarningNotice, removeNotice } = useDispatch( noticeStore );\n\tlet noticeId;\n\tconst showRedirectionPreventedNotice = ( event ) => {\n\t\tevent.preventDefault();\n\t\t// Remove previous warning if any, to show one at a time per block.\n\t\tremoveNotice( noticeId );\n\t\tnoticeId = `block-library/core/latest-posts/redirection-prevented/${ instanceId }`;\n\t\tcreateWarningNotice( __( 'Links are disabled in the editor.' ), {\n\t\t\tid: noticeId,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => slug !== 'full' )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\tconst categorySuggestions =\n\t\tcategoriesList?.reduce(\n\t\t\t( accumulator, category ) => ( {\n\t\t\t\t...accumulator,\n\t\t\t\t[ category.name ]: category,\n\t\t\t} ),\n\t\t\t{}\n\t\t) ?? {};\n\tconst selectCategories = ( tokens ) => {\n\t\tconst hasNoSuggestion = tokens.some(\n\t\t\t( token ) =>\n\t\t\t\ttypeof token === 'string' && ! categorySuggestions[ token ]\n\t\t);\n\t\tif ( hasNoSuggestion ) {\n\t\t\treturn;\n\t\t}\n\t\t// Categories that are already will be objects, while new additions will be strings (the name).\n\t\t// allCategories nomalizes the array so that they are all objects.\n\t\tconst allCategories = tokens.map( ( token ) => {\n\t\t\treturn typeof token === 'string'\n\t\t\t\t? categorySuggestions[ token ]\n\t\t\t\t: token;\n\t\t} );\n\t\t// We do nothing if the category is not selected\n\t\t// from suggestions.\n\t\tif ( allCategories.includes( null ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tsetAttributes( { categories: allCategories } );\n\t};\n\n\tconst hasPosts = !! latestPosts?.length;\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Post content' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Post content' ) }\n\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostContent: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t<RadioControl\n\t\t\t\t\t\tlabel={ __( 'Show:' ) }\n\t\t\t\t\t\tselected={ displayPostContentRadio }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Excerpt' ), value: 'excerpt' },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Full post' ),\n\t\t\t\t\t\t\t\tvalue: 'full_post',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayPostContentRadio: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ displayPostContent &&\n\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Max number of words' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Post meta' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display author name' ) }\n\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayAuthor: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostDate: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Featured image' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayFeaturedImage: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tconst newAttrs = {};\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'width' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeWidth =\n\t\t\t\t\t\t\t\t\t\tvalue.width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'height' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeHeight =\n\t\t\t\t\t\t\t\t\t\tvalue.height;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetAttributes( newAttrs );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tslug={ featuredImageSizeSlug }\n\t\t\t\t\t\t\twidth={ featuredImageSizeWidth }\n\t\t\t\t\t\t\theight={ featuredImageSizeHeight }\n\t\t\t\t\t\t\timageWidth={ defaultImageWidth }\n\t\t\t\t\t\t\timageHeight={ defaultImageHeight }\n\t\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\t\timageSizeHelp={ __(\n\t\t\t\t\t\t\t\t'Select the size of the source image.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonChangeImage={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeSlug: value,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeWidth: undefined,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeHeight: undefined,\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<BaseControl className=\"editor-latest-posts-image-alignment-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Image alignment' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<BlockAlignmentToolbar\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfeaturedImageAlign: value,\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\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisCollapsed={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BaseControl>\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={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taddLinkToFeaturedImage: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t<QueryControls\n\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\tonOrderChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { order: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonOrderByChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { orderBy: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonNumberOfItemsChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { postsToShow: value } )\n\t\t\t\t\t}\n\t\t\t\t\tcategorySuggestions={ categorySuggestions }\n\t\t\t\t\tonCategoryChange={ selectCategories }\n\t\t\t\t\tselectedCategories={ categories }\n\t\t\t\t\tonAuthorChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tselectedAuthor:\n\t\t\t\t\t\t\t\t'' !== value ? Number( value ) : undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tauthorList={ authorList ?? [] }\n\t\t\t\t\tselectedAuthorId={ selectedAuthor }\n\t\t\t\t/>\n\n\t\t\t\t{ postLayout === 'grid' && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t! hasPosts\n\t\t\t\t\t\t\t\t? MAX_POSTS_COLUMNS\n\t\t\t\t\t\t\t\t: Math.min(\n\t\t\t\t\t\t\t\t\t\tMAX_POSTS_COLUMNS,\n\t\t\t\t\t\t\t\t\t\tlatestPosts.length\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t'wp-block-latest-posts__list': true,\n\t\t\t'is-grid': postLayout === 'grid',\n\t\t\t'has-dates': displayPostDate,\n\t\t\t'has-author': displayAuthor,\n\t\t\t[ `columns-${ columns }` ]: postLayout === 'grid',\n\t\t} ),\n\t} );\n\n\tif ( ! hasPosts ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ inspectorControls }\n\t\t\t\t<Placeholder icon={ pin } label={ __( 'Latest Posts' ) }>\n\t\t\t\t\t{ ! Array.isArray( latestPosts ) ? (\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t__( 'No posts found.' )\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Removing posts from display should be instant.\n\tconst displayPosts =\n\t\tlatestPosts.length > postsToShow\n\t\t\t? latestPosts.slice( 0, postsToShow )\n\t\t\t: latestPosts;\n\n\tconst layoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: _x( 'List view', 'Latest posts block display setting' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'list' } ),\n\t\t\tisActive: postLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: _x( 'Grid view', 'Latest posts block display setting' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'grid' } ),\n\t\t\tisActive: postLayout === 'grid',\n\t\t},\n\t];\n\n\tconst dateFormat = getSettings().formats.date;\n\n\treturn (\n\t\t<>\n\t\t\t{ inspectorControls }\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ layoutControls } />\n\t\t\t</BlockControls>\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ displayPosts.map( ( post ) => {\n\t\t\t\t\tconst titleTrimmed = post.title.rendered.trim();\n\t\t\t\t\tlet excerpt = post.excerpt.rendered;\n\t\t\t\t\tconst currentAuthor = authorList?.find(\n\t\t\t\t\t\t( author ) => author.id === post.author\n\t\t\t\t\t);\n\n\t\t\t\t\tconst excerptElement = document.createElement( 'div' );\n\t\t\t\t\texcerptElement.innerHTML = excerpt;\n\n\t\t\t\t\texcerpt =\n\t\t\t\t\t\texcerptElement.textContent ||\n\t\t\t\t\t\texcerptElement.innerText ||\n\t\t\t\t\t\t'';\n\n\t\t\t\t\tconst { url: imageSourceUrl, alt: featuredImageAlt } =\n\t\t\t\t\t\tgetFeaturedImageDetails( post, featuredImageSizeSlug );\n\t\t\t\t\tconst imageClasses = clsx( {\n\t\t\t\t\t\t'wp-block-latest-posts__featured-image': true,\n\t\t\t\t\t\t[ `align${ featuredImageAlign }` ]:\n\t\t\t\t\t\t\t!! featuredImageAlign,\n\t\t\t\t\t} );\n\t\t\t\t\tconst renderFeaturedImage =\n\t\t\t\t\t\tdisplayFeaturedImage && imageSourceUrl;\n\t\t\t\t\tconst featuredImage = renderFeaturedImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ imageSourceUrl }\n\t\t\t\t\t\t\talt={ featuredImageAlt }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: featuredImageSizeWidth,\n\t\t\t\t\t\t\t\tmaxHeight: featuredImageSizeHeight,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\tconst needsReadMore =\n\t\t\t\t\t\texcerptLength < excerpt.trim().split( ' ' ).length &&\n\t\t\t\t\t\tpost.excerpt.raw === '';\n\n\t\t\t\t\tconst postExcerpt = needsReadMore ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ excerpt\n\t\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\t\t\t.split( ' ', excerptLength )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: 1: Hidden accessibility text: Post title */\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'… <a>Read more<span>: %1$s</span></a>'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\ttitleTrimmed || __( '(no title)' )\n\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\t\ta: (\n\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__read-more\"\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\t\t\tshowRedirectionPreventedNotice\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tspan: (\n\t\t\t\t\t\t\t\t\t\t<span className=\"screen-reader-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</>\n\t\t\t\t\t) : (\n\t\t\t\t\t\texcerpt\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={ post.id }>\n\t\t\t\t\t\t\t{ renderFeaturedImage && (\n\t\t\t\t\t\t\t\t<div className={ imageClasses }>\n\t\t\t\t\t\t\t\t\t{ addLinkToFeaturedImage ? (\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\t\t\tshowRedirectionPreventedNotice\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ featuredImage }\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tfeaturedImage\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-title\"\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={\n\t\t\t\t\t\t\t\t\t!! titleTrimmed\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t__html: titleTrimmed,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonClick={ showRedirectionPreventedNotice }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ! titleTrimmed ? __( '(no title)' ) : null }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{ displayAuthor && currentAuthor && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-author\">\n\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: byline. %s: current author. */\n\t\t\t\t\t\t\t\t\t\t__( 'by %s' ),\n\t\t\t\t\t\t\t\t\t\tcurrentAuthor.name\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostDate && post.date_gmt && (\n\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\tdateTime={ format( 'c', post.date_gmt ) }\n\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-date\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ dateI18n( dateFormat, post.date_gmt ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-excerpt\">\n\t\t\t\t\t\t\t\t\t\t{ postExcerpt }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'full_post' && (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-full-content\"\n\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t\t\t\t\t__html: post.content.raw.trim(),\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -97,7 +97,7 @@ function IndentUI({
|
|
|
97
97
|
children: /*#__PURE__*/_jsx(ToolbarButton, {
|
|
98
98
|
icon: isRTL() ? formatOutdentRTL : formatOutdent,
|
|
99
99
|
title: __('Outdent'),
|
|
100
|
-
|
|
100
|
+
description: __('Outdent list item'),
|
|
101
101
|
disabled: !canOutdent,
|
|
102
102
|
onClick: outdentList
|
|
103
103
|
})
|
|
@@ -140,7 +140,7 @@ export default function Edit({
|
|
|
140
140
|
children: [/*#__PURE__*/_jsx(ToolbarButton, {
|
|
141
141
|
icon: isRTL() ? formatListBulletsRTL : formatListBullets,
|
|
142
142
|
title: __('Unordered'),
|
|
143
|
-
|
|
143
|
+
description: __('Convert to unordered list'),
|
|
144
144
|
isActive: ordered === false,
|
|
145
145
|
onClick: () => {
|
|
146
146
|
setAttributes({
|
|
@@ -150,7 +150,7 @@ export default function Edit({
|
|
|
150
150
|
}), /*#__PURE__*/_jsx(ToolbarButton, {
|
|
151
151
|
icon: isRTL() ? formatListNumberedRTL : formatListNumbered,
|
|
152
152
|
title: __('Ordered'),
|
|
153
|
-
|
|
153
|
+
description: __('Convert to ordered list'),
|
|
154
154
|
isActive: ordered === true,
|
|
155
155
|
onClick: () => {
|
|
156
156
|
setAttributes({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BlockControls","useBlockProps","useInnerBlocksProps","store","blockEditorStore","ToolbarButton","useDispatch","useSelect","useRegistry","isRTL","__","formatListBullets","formatListBulletsRTL","formatListNumbered","formatListNumberedRTL","formatOutdent","formatOutdentRTL","createBlock","useCallback","useEffect","Platform","deprecated","OrderedListSettings","migrateToListV2","TagName","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DEFAULT_BLOCK","name","TEMPLATE","NATIVE_MARGIN_SPACING","useMigrateOnLoad","attributes","clientId","registry","updateBlockAttributes","replaceInnerBlocks","values","newAttributes","newInnerBlocks","since","version","alternative","batch","useOutdentList","replaceBlocks","selectionChange","getBlockRootClientId","getBlockAttributes","getBlock","parentBlockId","parentBlockAttributes","newParentBlock","innerBlocks","length","IndentUI","outdentList","canOutdent","select","getBlockName","children","icon","title","describedBy","disabled","onClick","Edit","setAttributes","style","ordered","type","reversed","start","blockProps","isNative","listStyleType","undefined","innerBlocksProps","defaultBlock","directInsert","template","templateLock","templateInsertUpdatesSelection","marginVertical","marginHorizontal","renderAppender","__experimentalCaptureToolbars","controls","group","isActive"],"sources":["@wordpress/block-library/src/list/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToolbarButton } from '@wordpress/components';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tformatListBullets,\n\tformatListBulletsRTL,\n\tformatListNumbered,\n\tformatListNumberedRTL,\n\tformatOutdent,\n\tformatOutdentRTL,\n} from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useCallback, useEffect, Platform } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport OrderedListSettings from './ordered-list-settings';\nimport { migrateToListV2 } from './utils';\nimport TagName from './tag-name';\n\nconst DEFAULT_BLOCK = {\n\tname: 'core/list-item',\n};\nconst TEMPLATE = [ [ 'core/list-item' ] ];\nconst NATIVE_MARGIN_SPACING = 8;\n\n/**\n * At the moment, deprecations don't handle create blocks from attributes\n * (like when using CPT templates). For this reason, this hook is necessary\n * to avoid breaking templates using the old list block format.\n *\n * @param {Object} attributes Block attributes.\n * @param {string} clientId Block client ID.\n */\nfunction useMigrateOnLoad( attributes, clientId ) {\n\tconst registry = useRegistry();\n\tconst { updateBlockAttributes, replaceInnerBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\t// As soon as the block is loaded, migrate it to the new version.\n\n\t\tif ( ! attributes.values ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ newAttributes, newInnerBlocks ] = migrateToListV2( attributes );\n\n\t\tdeprecated( 'Value attribute on the list block', {\n\t\t\tsince: '6.0',\n\t\t\tversion: '6.5',\n\t\t\talternative: 'inner blocks',\n\t\t} );\n\n\t\tregistry.batch( () => {\n\t\t\tupdateBlockAttributes( clientId, newAttributes );\n\t\t\treplaceInnerBlocks( clientId, newInnerBlocks );\n\t\t} );\n\t}, [ attributes.values ] );\n}\n\nfunction useOutdentList( clientId ) {\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlockRootClientId, getBlockAttributes, getBlock } =\n\t\tuseSelect( blockEditorStore );\n\n\treturn useCallback( () => {\n\t\tconst parentBlockId = getBlockRootClientId( clientId );\n\t\tconst parentBlockAttributes = getBlockAttributes( parentBlockId );\n\t\t// Create a new parent block without the inner blocks.\n\t\tconst newParentBlock = createBlock(\n\t\t\t'core/list-item',\n\t\t\tparentBlockAttributes\n\t\t);\n\t\tconst { innerBlocks } = getBlock( clientId );\n\t\t// Replace the parent block with a new parent block without inner blocks,\n\t\t// and make the inner blocks siblings of the parent.\n\t\treplaceBlocks( [ parentBlockId ], [ newParentBlock, ...innerBlocks ] );\n\t\t// Select the last child of the list being outdent.\n\t\tselectionChange( innerBlocks[ innerBlocks.length - 1 ].clientId );\n\t}, [ clientId ] );\n}\n\nfunction IndentUI( { clientId } ) {\n\tconst outdentList = useOutdentList( clientId );\n\tconst canOutdent = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, getBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn (\n\t\t\t\tgetBlockName( getBlockRootClientId( clientId ) ) ===\n\t\t\t\t'core/list-item'\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatOutdentRTL : formatOutdent }\n\t\t\t\ttitle={ __( 'Outdent' ) }\n\t\t\t\tdescribedBy={ __( 'Outdent list item' ) }\n\t\t\t\tdisabled={ ! canOutdent }\n\t\t\t\tonClick={ outdentList }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default function Edit( { attributes, setAttributes, clientId, style } ) {\n\tconst { ordered, type, reversed, start } = attributes;\n\tconst blockProps = useBlockProps( {\n\t\tstyle: {\n\t\t\t...( Platform.isNative && style ),\n\t\t\tlistStyleType: ordered && type !== 'decimal' ? type : undefined,\n\t\t},\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\tdirectInsert: true,\n\t\ttemplate: TEMPLATE,\n\t\ttemplateLock: false,\n\t\ttemplateInsertUpdatesSelection: true,\n\t\t...( Platform.isNative && {\n\t\t\tmarginVertical: NATIVE_MARGIN_SPACING,\n\t\t\tmarginHorizontal: NATIVE_MARGIN_SPACING,\n\t\t\trenderAppender: false,\n\t\t} ),\n\t\t__experimentalCaptureToolbars: true,\n\t} );\n\tuseMigrateOnLoad( attributes, clientId );\n\n\tconst controls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListBulletsRTL : formatListBullets }\n\t\t\t\ttitle={ __( 'Unordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to unordered list' ) }\n\t\t\t\tisActive={ ordered === false }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: false } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListNumberedRTL : formatListNumbered }\n\t\t\t\ttitle={ __( 'Ordered' ) }\n\t\t\t\tdescribedBy={ __( 'Convert to ordered list' ) }\n\t\t\t\tisActive={ ordered === true }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: true } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<IndentUI clientId={ clientId } />\n\t\t</BlockControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<TagName\n\t\t\t\tordered={ ordered }\n\t\t\t\treversed={ reversed }\n\t\t\t\tstart={ start }\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t/>\n\t\t\t{ controls }\n\t\t\t{ ordered && (\n\t\t\t\t<OrderedListSettings\n\t\t\t\t\t{ ...{\n\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\treversed,\n\t\t\t\t\t\tstart,\n\t\t\t\t\t\ttype,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["BlockControls","useBlockProps","useInnerBlocksProps","store","blockEditorStore","ToolbarButton","useDispatch","useSelect","useRegistry","isRTL","__","formatListBullets","formatListBulletsRTL","formatListNumbered","formatListNumberedRTL","formatOutdent","formatOutdentRTL","createBlock","useCallback","useEffect","Platform","deprecated","OrderedListSettings","migrateToListV2","TagName","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DEFAULT_BLOCK","name","TEMPLATE","NATIVE_MARGIN_SPACING","useMigrateOnLoad","attributes","clientId","registry","updateBlockAttributes","replaceInnerBlocks","values","newAttributes","newInnerBlocks","since","version","alternative","batch","useOutdentList","replaceBlocks","selectionChange","getBlockRootClientId","getBlockAttributes","getBlock","parentBlockId","parentBlockAttributes","newParentBlock","innerBlocks","length","IndentUI","outdentList","canOutdent","select","getBlockName","children","icon","title","description","disabled","onClick","Edit","setAttributes","style","ordered","type","reversed","start","blockProps","isNative","listStyleType","undefined","innerBlocksProps","defaultBlock","directInsert","template","templateLock","templateInsertUpdatesSelection","marginVertical","marginHorizontal","renderAppender","__experimentalCaptureToolbars","controls","group","isActive"],"sources":["@wordpress/block-library/src/list/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { ToolbarButton } from '@wordpress/components';\nimport { useDispatch, useSelect, useRegistry } from '@wordpress/data';\nimport { isRTL, __ } from '@wordpress/i18n';\nimport {\n\tformatListBullets,\n\tformatListBulletsRTL,\n\tformatListNumbered,\n\tformatListNumberedRTL,\n\tformatOutdent,\n\tformatOutdentRTL,\n} from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\nimport { useCallback, useEffect, Platform } from '@wordpress/element';\nimport deprecated from '@wordpress/deprecated';\n\n/**\n * Internal dependencies\n */\nimport OrderedListSettings from './ordered-list-settings';\nimport { migrateToListV2 } from './utils';\nimport TagName from './tag-name';\n\nconst DEFAULT_BLOCK = {\n\tname: 'core/list-item',\n};\nconst TEMPLATE = [ [ 'core/list-item' ] ];\nconst NATIVE_MARGIN_SPACING = 8;\n\n/**\n * At the moment, deprecations don't handle create blocks from attributes\n * (like when using CPT templates). For this reason, this hook is necessary\n * to avoid breaking templates using the old list block format.\n *\n * @param {Object} attributes Block attributes.\n * @param {string} clientId Block client ID.\n */\nfunction useMigrateOnLoad( attributes, clientId ) {\n\tconst registry = useRegistry();\n\tconst { updateBlockAttributes, replaceInnerBlocks } =\n\t\tuseDispatch( blockEditorStore );\n\n\tuseEffect( () => {\n\t\t// As soon as the block is loaded, migrate it to the new version.\n\n\t\tif ( ! attributes.values ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst [ newAttributes, newInnerBlocks ] = migrateToListV2( attributes );\n\n\t\tdeprecated( 'Value attribute on the list block', {\n\t\t\tsince: '6.0',\n\t\t\tversion: '6.5',\n\t\t\talternative: 'inner blocks',\n\t\t} );\n\n\t\tregistry.batch( () => {\n\t\t\tupdateBlockAttributes( clientId, newAttributes );\n\t\t\treplaceInnerBlocks( clientId, newInnerBlocks );\n\t\t} );\n\t}, [ attributes.values ] );\n}\n\nfunction useOutdentList( clientId ) {\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlockRootClientId, getBlockAttributes, getBlock } =\n\t\tuseSelect( blockEditorStore );\n\n\treturn useCallback( () => {\n\t\tconst parentBlockId = getBlockRootClientId( clientId );\n\t\tconst parentBlockAttributes = getBlockAttributes( parentBlockId );\n\t\t// Create a new parent block without the inner blocks.\n\t\tconst newParentBlock = createBlock(\n\t\t\t'core/list-item',\n\t\t\tparentBlockAttributes\n\t\t);\n\t\tconst { innerBlocks } = getBlock( clientId );\n\t\t// Replace the parent block with a new parent block without inner blocks,\n\t\t// and make the inner blocks siblings of the parent.\n\t\treplaceBlocks( [ parentBlockId ], [ newParentBlock, ...innerBlocks ] );\n\t\t// Select the last child of the list being outdent.\n\t\tselectionChange( innerBlocks[ innerBlocks.length - 1 ].clientId );\n\t}, [ clientId ] );\n}\n\nfunction IndentUI( { clientId } ) {\n\tconst outdentList = useOutdentList( clientId );\n\tconst canOutdent = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlockRootClientId, getBlockName } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\treturn (\n\t\t\t\tgetBlockName( getBlockRootClientId( clientId ) ) ===\n\t\t\t\t'core/list-item'\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\treturn (\n\t\t<>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatOutdentRTL : formatOutdent }\n\t\t\t\ttitle={ __( 'Outdent' ) }\n\t\t\t\tdescription={ __( 'Outdent list item' ) }\n\t\t\t\tdisabled={ ! canOutdent }\n\t\t\t\tonClick={ outdentList }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default function Edit( { attributes, setAttributes, clientId, style } ) {\n\tconst { ordered, type, reversed, start } = attributes;\n\tconst blockProps = useBlockProps( {\n\t\tstyle: {\n\t\t\t...( Platform.isNative && style ),\n\t\t\tlistStyleType: ordered && type !== 'decimal' ? type : undefined,\n\t\t},\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tdefaultBlock: DEFAULT_BLOCK,\n\t\tdirectInsert: true,\n\t\ttemplate: TEMPLATE,\n\t\ttemplateLock: false,\n\t\ttemplateInsertUpdatesSelection: true,\n\t\t...( Platform.isNative && {\n\t\t\tmarginVertical: NATIVE_MARGIN_SPACING,\n\t\t\tmarginHorizontal: NATIVE_MARGIN_SPACING,\n\t\t\trenderAppender: false,\n\t\t} ),\n\t\t__experimentalCaptureToolbars: true,\n\t} );\n\tuseMigrateOnLoad( attributes, clientId );\n\n\tconst controls = (\n\t\t<BlockControls group=\"block\">\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListBulletsRTL : formatListBullets }\n\t\t\t\ttitle={ __( 'Unordered' ) }\n\t\t\t\tdescription={ __( 'Convert to unordered list' ) }\n\t\t\t\tisActive={ ordered === false }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: false } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<ToolbarButton\n\t\t\t\ticon={ isRTL() ? formatListNumberedRTL : formatListNumbered }\n\t\t\t\ttitle={ __( 'Ordered' ) }\n\t\t\t\tdescription={ __( 'Convert to ordered list' ) }\n\t\t\t\tisActive={ ordered === true }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetAttributes( { ordered: true } );\n\t\t\t\t} }\n\t\t\t/>\n\t\t\t<IndentUI clientId={ clientId } />\n\t\t</BlockControls>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<TagName\n\t\t\t\tordered={ ordered }\n\t\t\t\treversed={ reversed }\n\t\t\t\tstart={ start }\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t/>\n\t\t\t{ controls }\n\t\t\t{ ordered && (\n\t\t\t\t<OrderedListSettings\n\t\t\t\t\t{ ...{\n\t\t\t\t\t\tsetAttributes,\n\t\t\t\t\t\treversed,\n\t\t\t\t\t\tstart,\n\t\t\t\t\t\ttype,\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -17,7 +17,7 @@ const metadata = {
|
|
|
17
17
|
title: "List",
|
|
18
18
|
category: "text",
|
|
19
19
|
allowedBlocks: ["core/list-item"],
|
|
20
|
-
description: "
|
|
20
|
+
description: "An organized collection of items displayed in a specific order.",
|
|
21
21
|
keywords: ["bullet list", "ordered list", "numbered list"],
|
|
22
22
|
textdomain: "default",
|
|
23
23
|
attributes: {
|
|
@@ -14,23 +14,10 @@ const OrderedListSettings = ({
|
|
|
14
14
|
}) => /*#__PURE__*/_jsx(InspectorControls, {
|
|
15
15
|
children: /*#__PURE__*/_jsxs(PanelBody, {
|
|
16
16
|
title: __('Settings'),
|
|
17
|
-
children: [/*#__PURE__*/_jsx(
|
|
17
|
+
children: [/*#__PURE__*/_jsx(SelectControl, {
|
|
18
|
+
__next40pxDefaultSize: true,
|
|
18
19
|
__nextHasNoMarginBottom: true,
|
|
19
|
-
label: __('
|
|
20
|
-
type: "number",
|
|
21
|
-
onChange: value => {
|
|
22
|
-
const int = parseInt(value, 10);
|
|
23
|
-
setAttributes({
|
|
24
|
-
// It should be possible to unset the value,
|
|
25
|
-
// e.g. with an empty string.
|
|
26
|
-
start: isNaN(int) ? undefined : int
|
|
27
|
-
});
|
|
28
|
-
},
|
|
29
|
-
value: Number.isInteger(start) ? start.toString(10) : '',
|
|
30
|
-
step: "1"
|
|
31
|
-
}), /*#__PURE__*/_jsx(SelectControl, {
|
|
32
|
-
__nextHasNoMarginBottom: true,
|
|
33
|
-
label: __('Numbering style'),
|
|
20
|
+
label: __('List style'),
|
|
34
21
|
options: [{
|
|
35
22
|
label: __('Numbers'),
|
|
36
23
|
value: 'decimal'
|
|
@@ -51,9 +38,24 @@ const OrderedListSettings = ({
|
|
|
51
38
|
onChange: newValue => setAttributes({
|
|
52
39
|
type: newValue
|
|
53
40
|
})
|
|
41
|
+
}), /*#__PURE__*/_jsx(TextControl, {
|
|
42
|
+
__next40pxDefaultSize: true,
|
|
43
|
+
__nextHasNoMarginBottom: true,
|
|
44
|
+
label: __('Start value'),
|
|
45
|
+
type: "number",
|
|
46
|
+
onChange: value => {
|
|
47
|
+
const int = parseInt(value, 10);
|
|
48
|
+
setAttributes({
|
|
49
|
+
// It should be possible to unset the value,
|
|
50
|
+
// e.g. with an empty string.
|
|
51
|
+
start: isNaN(int) ? undefined : int
|
|
52
|
+
});
|
|
53
|
+
},
|
|
54
|
+
value: Number.isInteger(start) ? start.toString(10) : '',
|
|
55
|
+
step: "1"
|
|
54
56
|
}), /*#__PURE__*/_jsx(ToggleControl, {
|
|
55
57
|
__nextHasNoMarginBottom: true,
|
|
56
|
-
label: __('Reverse
|
|
58
|
+
label: __('Reverse order'),
|
|
57
59
|
checked: reversed || false,
|
|
58
60
|
onChange: value => {
|
|
59
61
|
setAttributes({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","InspectorControls","TextControl","PanelBody","ToggleControl","SelectControl","jsx","_jsx","jsxs","_jsxs","OrderedListSettings","setAttributes","reversed","start","type","children","title","__nextHasNoMarginBottom","label","
|
|
1
|
+
{"version":3,"names":["__","InspectorControls","TextControl","PanelBody","ToggleControl","SelectControl","jsx","_jsx","jsxs","_jsxs","OrderedListSettings","setAttributes","reversed","start","type","children","title","__next40pxDefaultSize","__nextHasNoMarginBottom","label","options","value","onChange","newValue","int","parseInt","isNaN","undefined","Number","isInteger","toString","step","checked"],"sources":["@wordpress/block-library/src/list/ordered-list-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls } from '@wordpress/block-editor';\nimport {\n\tTextControl,\n\tPanelBody,\n\tToggleControl,\n\tSelectControl,\n} from '@wordpress/components';\n\nconst OrderedListSettings = ( { setAttributes, reversed, start, type } ) => (\n\t<InspectorControls>\n\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t<SelectControl\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'List style' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Numbers' ),\n\t\t\t\t\t\tvalue: 'decimal',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Uppercase letters' ),\n\t\t\t\t\t\tvalue: 'upper-alpha',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Lowercase letters' ),\n\t\t\t\t\t\tvalue: 'lower-alpha',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Uppercase Roman numerals' ),\n\t\t\t\t\t\tvalue: 'upper-roman',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Lowercase Roman numerals' ),\n\t\t\t\t\t\tvalue: 'lower-roman',\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t\tvalue={ type }\n\t\t\t\tonChange={ ( newValue ) => setAttributes( { type: newValue } ) }\n\t\t\t/>\n\t\t\t<TextControl\n\t\t\t\t__next40pxDefaultSize\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Start value' ) }\n\t\t\t\ttype=\"number\"\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tconst int = parseInt( value, 10 );\n\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// It should be possible to unset the value,\n\t\t\t\t\t\t// e.g. with an empty string.\n\t\t\t\t\t\tstart: isNaN( int ) ? undefined : int,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tvalue={ Number.isInteger( start ) ? start.toString( 10 ) : '' }\n\t\t\t\tstep=\"1\"\n\t\t\t/>\n\t\t\t<ToggleControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'Reverse order' ) }\n\t\t\t\tchecked={ reversed || false }\n\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t// Unset the attribute if not reversed.\n\t\t\t\t\t\treversed: value || undefined,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t/>\n\t\t</PanelBody>\n\t</InspectorControls>\n);\n\nexport default OrderedListSettings;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SACCC,WAAW,EACXC,SAAS,EACTC,aAAa,EACbC,aAAa,QACP,uBAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAE/B,MAAMC,mBAAmB,GAAGA,CAAE;EAAEC,aAAa;EAAEC,QAAQ;EAAEC,KAAK;EAAEC;AAAK,CAAC,kBACrEP,IAAA,CAACN,iBAAiB;EAAAc,QAAA,eACjBN,KAAA,CAACN,SAAS;IAACa,KAAK,EAAGhB,EAAE,CAAE,UAAW,CAAG;IAAAe,QAAA,gBACpCR,IAAA,CAACF,aAAa;MACbY,qBAAqB;MACrBC,uBAAuB;MACvBC,KAAK,EAAGnB,EAAE,CAAE,YAAa,CAAG;MAC5BoB,OAAO,EAAG,CACT;QACCD,KAAK,EAAEnB,EAAE,CAAE,SAAU,CAAC;QACtBqB,KAAK,EAAE;MACR,CAAC,EACD;QACCF,KAAK,EAAEnB,EAAE,CAAE,mBAAoB,CAAC;QAChCqB,KAAK,EAAE;MACR,CAAC,EACD;QACCF,KAAK,EAAEnB,EAAE,CAAE,mBAAoB,CAAC;QAChCqB,KAAK,EAAE;MACR,CAAC,EACD;QACCF,KAAK,EAAEnB,EAAE,CAAE,0BAA2B,CAAC;QACvCqB,KAAK,EAAE;MACR,CAAC,EACD;QACCF,KAAK,EAAEnB,EAAE,CAAE,0BAA2B,CAAC;QACvCqB,KAAK,EAAE;MACR,CAAC,CACC;MACHA,KAAK,EAAGP,IAAM;MACdQ,QAAQ,EAAKC,QAAQ,IAAMZ,aAAa,CAAE;QAAEG,IAAI,EAAES;MAAS,CAAE;IAAG,CAChE,CAAC,eACFhB,IAAA,CAACL,WAAW;MACXe,qBAAqB;MACrBC,uBAAuB;MACvBC,KAAK,EAAGnB,EAAE,CAAE,aAAc,CAAG;MAC7Bc,IAAI,EAAC,QAAQ;MACbQ,QAAQ,EAAKD,KAAK,IAAM;QACvB,MAAMG,GAAG,GAAGC,QAAQ,CAAEJ,KAAK,EAAE,EAAG,CAAC;QAEjCV,aAAa,CAAE;UACd;UACA;UACAE,KAAK,EAAEa,KAAK,CAAEF,GAAI,CAAC,GAAGG,SAAS,GAAGH;QACnC,CAAE,CAAC;MACJ,CAAG;MACHH,KAAK,EAAGO,MAAM,CAACC,SAAS,CAAEhB,KAAM,CAAC,GAAGA,KAAK,CAACiB,QAAQ,CAAE,EAAG,CAAC,GAAG,EAAI;MAC/DC,IAAI,EAAC;IAAG,CACR,CAAC,eACFxB,IAAA,CAACH,aAAa;MACbc,uBAAuB;MACvBC,KAAK,EAAGnB,EAAE,CAAE,eAAgB,CAAG;MAC/BgC,OAAO,EAAGpB,QAAQ,IAAI,KAAO;MAC7BU,QAAQ,EAAKD,KAAK,IAAM;QACvBV,aAAa,CAAE;UACd;UACAC,QAAQ,EAAES,KAAK,IAAIM;QACpB,CAAE,CAAC;MACJ;IAAG,CACH,CAAC;EAAA,CACQ;AAAC,CACM,CACnB;AAED,eAAejB,mBAAmB","ignoreList":[]}
|
|
@@ -38,13 +38,13 @@ export function IndentUI({
|
|
|
38
38
|
children: [/*#__PURE__*/_jsx(ToolbarButton, {
|
|
39
39
|
icon: isRTL() ? formatOutdentRTL : formatOutdent,
|
|
40
40
|
title: __('Outdent'),
|
|
41
|
-
|
|
41
|
+
description: __('Outdent list item'),
|
|
42
42
|
disabled: !canOutdent,
|
|
43
43
|
onClick: () => outdentListItem()
|
|
44
44
|
}), /*#__PURE__*/_jsx(ToolbarButton, {
|
|
45
45
|
icon: isRTL() ? formatIndentRTL : formatIndent,
|
|
46
46
|
title: __('Indent'),
|
|
47
|
-
|
|
47
|
+
description: __('Indent list item'),
|
|
48
48
|
disabled: !canIndent,
|
|
49
49
|
onClick: () => indentListItem()
|
|
50
50
|
})]
|