@wordpress/block-library 9.9.0 → 9.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/audio/edit.native.js +1 -1
- package/build/audio/edit.native.js.map +1 -1
- package/build/block/edit.js.map +1 -1
- package/build/block/edit.native.js +2 -2
- package/build/block/edit.native.js.map +1 -1
- package/build/block-keyboard-shortcuts/index.js.map +1 -1
- package/build/button/deprecated.js.map +1 -1
- package/build/button/edit.js.map +1 -1
- package/build/button/edit.native.js.map +1 -1
- package/build/button/get-updated-link-attributes.js.map +1 -1
- package/build/button/save.js.map +1 -1
- package/build/buttons/deprecated.js.map +1 -1
- package/build/categories/edit.js +1 -1
- package/build/categories/edit.js.map +1 -1
- package/build/column/deprecated.js.map +1 -1
- package/build/column/edit.js +1 -1
- package/build/column/edit.js.map +1 -1
- package/build/column/edit.native.js.map +1 -1
- package/build/column/save.js.map +1 -1
- package/build/columns/deprecated.js.map +1 -1
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +1 -1
- package/build/columns/edit.native.js.map +1 -1
- package/build/columns/save.js.map +1 -1
- package/build/columns/transforms.js.map +1 -1
- package/build/columns/utils.js.map +1 -1
- package/build/comment-author-avatar/edit.js.map +1 -1
- package/build/comment-author-name/edit.js.map +1 -1
- package/build/comment-content/edit.js.map +1 -1
- package/build/comment-edit-link/edit.js.map +1 -1
- package/build/comment-reply-link/edit.js.map +1 -1
- package/build/comment-template/hooks.js.map +1 -1
- package/build/comments/edit/comments-legacy.js.map +1 -1
- package/build/comments-pagination-next/edit.js.map +1 -1
- package/build/comments-pagination-numbers/edit.js.map +1 -1
- package/build/comments-pagination-previous/edit.js.map +1 -1
- package/build/comments-title/edit.js +2 -2
- package/build/comments-title/edit.js.map +1 -1
- package/build/cover/controls.native.js.map +1 -1
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit/index.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +74 -30
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/cover/save.js.map +1 -1
- package/build/cover/shared.js.map +1 -1
- package/build/embed/deprecated.js.map +1 -1
- package/build/embed/edit.js +16 -3
- package/build/embed/edit.js.map +1 -1
- package/build/embed/embed-preview.js +5 -19
- package/build/embed/embed-preview.js.map +1 -1
- package/build/embed/embed-preview.native.js +1 -1
- package/build/embed/embed-preview.native.js.map +1 -1
- package/build/embed/save.js.map +1 -1
- package/build/embed/transforms.js.map +1 -1
- package/build/embed/variations.js +1 -1
- package/build/embed/variations.js.map +1 -1
- package/build/embed/wp-embed-preview.native.js.map +1 -1
- package/build/file/deprecated.js +3 -3
- package/build/file/deprecated.js.map +1 -1
- package/build/file/edit.js.map +1 -1
- package/build/file/save.js.map +1 -1
- package/build/footnotes/edit.js.map +1 -1
- package/build/footnotes/format.js.map +1 -1
- package/build/form/edit.js.map +1 -1
- package/build/form-submission-notification/edit.js.map +1 -1
- package/build/form-submission-notification/save.js.map +1 -1
- package/build/freeform/edit.js.map +1 -1
- package/build/freeform/modal.js.map +1 -1
- package/build/gallery/deprecated.js.map +1 -1
- package/build/gallery/edit.js +2 -2
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js.map +1 -1
- package/build/gallery/gallery.native.js +1 -1
- package/build/gallery/gallery.native.js.map +1 -1
- package/build/gallery/gap-styles.js.map +1 -1
- package/build/gallery/save.js.map +1 -1
- package/build/group/placeholder.js.map +1 -1
- package/build/heading/deprecated.js.map +1 -1
- package/build/heading/edit.js.map +1 -1
- package/build/heading/edit.native.js.map +1 -1
- package/build/heading/index.js +2 -2
- package/build/heading/index.js.map +1 -1
- package/build/heading/save.js.map +1 -1
- package/build/heading/transforms.js.map +1 -1
- package/build/home-link/edit.js.map +1 -1
- package/build/html/preview.js.map +1 -1
- package/build/image/deprecated.js.map +1 -1
- package/build/image/edit.js +1 -1
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +1 -1
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +3 -3
- package/build/image/image.js.map +1 -1
- package/build/image/save.js.map +1 -1
- package/build/image/view.js.map +1 -1
- package/build/index.native.js.map +1 -1
- package/build/latest-posts/edit.js +2 -2
- package/build/latest-posts/edit.js.map +1 -1
- package/build/media-text/deprecated.js.map +1 -1
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/edit.native.js.map +1 -1
- package/build/media-text/image-fill.js.map +1 -1
- package/build/media-text/save.js.map +1 -1
- package/build/missing/edit.js +2 -2
- package/build/missing/edit.js.map +1 -1
- package/build/more/edit.js.map +1 -1
- package/build/more/save.js.map +1 -1
- package/build/navigation/edit/accessible-menu-description.js.map +1 -1
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/leaf-more-menu.js +1 -1
- package/build/navigation/edit/leaf-more-menu.js.map +1 -1
- package/build/navigation/edit/menu-inspector-controls.js +1 -1
- package/build/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build/navigation/edit/utils.js.map +1 -1
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/link-ui.js.map +1 -1
- package/build/nextpage/edit.native.js +1 -1
- package/build/nextpage/edit.native.js.map +1 -1
- package/build/page-list-item/edit.js +1 -1
- package/build/page-list-item/edit.js.map +1 -1
- package/build/paragraph/deprecated.js.map +1 -1
- package/build/paragraph/edit.js.map +1 -1
- package/build/paragraph/save.js.map +1 -1
- package/build/pattern/recursion-detector.js +1 -0
- package/build/pattern/recursion-detector.js.map +1 -1
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-biography/edit.js.map +1 -1
- package/build/post-author-name/edit.js.map +1 -1
- package/build/post-comments-count/edit.js.map +1 -1
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-comments-form/form.js +1 -1
- package/build/post-comments-form/form.js.map +1 -1
- package/build/post-comments-link/edit.js +1 -1
- package/build/post-comments-link/edit.js.map +1 -1
- package/build/post-content/edit.js +29 -2
- package/build/post-content/edit.js.map +1 -1
- package/build/post-date/edit.js.map +1 -1
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-template/edit.js.map +1 -1
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-time-to-read/edit.js +1 -1
- package/build/post-time-to-read/edit.js.map +1 -1
- package/build/post-title/edit.js.map +1 -1
- package/build/pullquote/deprecated.js.map +1 -1
- package/build/pullquote/edit.js.map +1 -1
- package/build/pullquote/save.js.map +1 -1
- package/build/pullquote/shared.js.map +1 -1
- package/build/query/edit/inspector-controls/author-control.js +1 -0
- package/build/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +8 -11
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/order-control.js.map +1 -1
- package/build/query/edit/inspector-controls/parent-control.js +1 -0
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +1 -0
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query/edit/pattern-selection-modal.js +1 -1
- package/build/query/edit/pattern-selection-modal.js.map +1 -1
- package/build/query/utils.js.map +1 -1
- package/build/query/view.js.map +1 -1
- package/build/query-pagination-next/edit.js.map +1 -1
- package/build/query-pagination-numbers/edit.js.map +1 -1
- package/build/query-pagination-previous/edit.js.map +1 -1
- package/build/query-title/edit.js +3 -3
- package/build/query-title/edit.js.map +1 -1
- package/build/quote/deprecated.js.map +1 -1
- package/build/quote/edit.js.map +1 -1
- package/build/quote/save.js.map +1 -1
- package/build/quote/transforms.js.map +1 -1
- package/build/search/edit.js.map +1 -1
- package/build/search/edit.native.js.map +1 -1
- package/build/shortcode/edit.js.map +1 -1
- package/build/site-tagline/edit.js.map +1 -1
- package/build/site-title/edit.js.map +1 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-link/edit.native.js.map +1 -1
- package/build/social-links/deprecated.js.map +1 -1
- package/build/social-links/edit.js.map +1 -1
- package/build/spacer/controls.native.js.map +1 -1
- package/build/spacer/deprecated.js.map +1 -1
- package/build/spacer/edit.js.map +1 -1
- package/build/table/deprecated.js.map +1 -1
- package/build/table/edit.js.map +1 -1
- package/build/table/save.js.map +1 -1
- package/build/table-of-contents/edit.js +1 -1
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/table-of-contents/hooks.js.map +1 -1
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +1 -1
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/import-controls.js +2 -1
- package/build/template-part/edit/import-controls.js.map +1 -1
- package/build/template-part/edit/index.js +2 -2
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/selection-modal.js +2 -2
- package/build/template-part/edit/selection-modal.js.map +1 -1
- package/build/template-part/edit/utils/hooks.js.map +1 -1
- package/build/template-part/variations.js.map +1 -1
- package/build/term-description/edit.js.map +1 -1
- package/build/text-columns/edit.js.map +1 -1
- package/build/text-columns/save.js.map +1 -1
- package/build/verse/deprecated.js.map +1 -1
- package/build/verse/edit.js.map +1 -1
- package/build/verse/save.js.map +1 -1
- package/build/video/edit.js +1 -1
- package/build/video/edit.js.map +1 -1
- package/build/video/edit.native.js +1 -1
- package/build/video/edit.native.js.map +1 -1
- package/build/video/tracks-editor.js +1 -1
- package/build/video/tracks-editor.js.map +1 -1
- package/build-module/archives/edit.js +1 -3
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/audio/deprecated.js +1 -2
- package/build-module/audio/deprecated.js.map +1 -1
- package/build-module/audio/edit.js +1 -3
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/audio/edit.native.js +2 -4
- package/build-module/audio/edit.native.js.map +1 -1
- package/build-module/audio/save.js +1 -2
- package/build-module/audio/save.js.map +1 -1
- package/build-module/avatar/edit.js +1 -3
- package/build-module/avatar/edit.js.map +1 -1
- package/build-module/block/edit-title.native.js +1 -2
- package/build-module/block/edit-title.native.js.map +1 -1
- package/build-module/block/edit.js +1 -3
- package/build-module/block/edit.js.map +1 -1
- package/build-module/block/edit.native.js +3 -4
- package/build-module/block/edit.native.js.map +1 -1
- package/build-module/block-keyboard-shortcuts/index.js.map +1 -1
- package/build-module/button/color-background.native.js +1 -2
- package/build-module/button/color-background.native.js.map +1 -1
- package/build-module/button/deprecated.js.map +1 -1
- package/build-module/button/edit.js +1 -3
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/edit.native.js +1 -3
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/button/get-updated-link-attributes.js.map +1 -1
- package/build-module/button/save.js.map +1 -1
- package/build-module/buttons/deprecated.js.map +1 -1
- package/build-module/buttons/edit.native.js +1 -3
- package/build-module/buttons/edit.native.js.map +1 -1
- package/build-module/categories/edit.js +2 -4
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/column/deprecated.js.map +1 -1
- package/build-module/column/edit.js +2 -4
- package/build-module/column/edit.js.map +1 -1
- package/build-module/column/edit.native.js +1 -3
- package/build-module/column/edit.native.js.map +1 -1
- package/build-module/column/save.js.map +1 -1
- package/build-module/columns/deprecated.js.map +1 -1
- package/build-module/columns/edit.js +1 -3
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +2 -4
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/columns/save.js.map +1 -1
- package/build-module/columns/transforms.js.map +1 -1
- package/build-module/columns/utils.js.map +1 -1
- package/build-module/comment-author-avatar/edit.js +1 -3
- package/build-module/comment-author-avatar/edit.js.map +1 -1
- package/build-module/comment-author-name/edit.js +1 -3
- package/build-module/comment-author-name/edit.js.map +1 -1
- package/build-module/comment-content/edit.js +1 -3
- package/build-module/comment-content/edit.js.map +1 -1
- package/build-module/comment-date/edit.js +1 -3
- package/build-module/comment-date/edit.js.map +1 -1
- package/build-module/comment-edit-link/edit.js +1 -3
- package/build-module/comment-edit-link/edit.js.map +1 -1
- package/build-module/comment-reply-link/edit.js +1 -3
- package/build-module/comment-reply-link/edit.js.map +1 -1
- package/build-module/comment-template/edit.js +1 -2
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comment-template/hooks.js.map +1 -1
- package/build-module/comments/edit/comments-legacy.js +1 -3
- package/build-module/comments/edit/comments-legacy.js.map +1 -1
- package/build-module/comments/edit/index.js +1 -3
- package/build-module/comments/edit/index.js.map +1 -1
- package/build-module/comments/edit/placeholder.js +1 -2
- package/build-module/comments/edit/placeholder.js.map +1 -1
- package/build-module/comments-pagination/comments-pagination-arrow-controls.js +1 -2
- package/build-module/comments-pagination/comments-pagination-arrow-controls.js.map +1 -1
- package/build-module/comments-pagination/edit.js +1 -3
- package/build-module/comments-pagination/edit.js.map +1 -1
- package/build-module/comments-pagination-next/edit.js +1 -2
- package/build-module/comments-pagination-next/edit.js.map +1 -1
- package/build-module/comments-pagination-numbers/edit.js +1 -2
- package/build-module/comments-pagination-numbers/edit.js.map +1 -1
- package/build-module/comments-pagination-previous/edit.js +1 -2
- package/build-module/comments-pagination-previous/edit.js.map +1 -1
- package/build-module/comments-title/edit.js +3 -5
- package/build-module/comments-title/edit.js.map +1 -1
- package/build-module/cover/controls.native.js +1 -3
- package/build-module/cover/controls.native.js.map +1 -1
- package/build-module/cover/deprecated.js +1 -2
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit/block-controls.js +1 -3
- package/build-module/cover/edit/block-controls.js.map +1 -1
- package/build-module/cover/edit/index.js +1 -3
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +76 -34
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/cover/edit.native.js +1 -3
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/save.js +1 -2
- package/build-module/cover/save.js.map +1 -1
- package/build-module/cover/shared.js.map +1 -1
- package/build-module/details/edit.js +1 -3
- package/build-module/details/edit.js.map +1 -1
- package/build-module/details/save.js +1 -2
- package/build-module/details/save.js.map +1 -1
- package/build-module/embed/deprecated.js +1 -2
- package/build-module/embed/deprecated.js.map +1 -1
- package/build-module/embed/edit.js +17 -6
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js +1 -3
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-controls.js +1 -3
- package/build-module/embed/embed-controls.js.map +1 -1
- package/build-module/embed/embed-controls.native.js +1 -3
- package/build-module/embed/embed-controls.native.js.map +1 -1
- package/build-module/embed/embed-no-preview.native.js +1 -3
- package/build-module/embed/embed-no-preview.native.js.map +1 -1
- package/build-module/embed/embed-placeholder.js +1 -2
- package/build-module/embed/embed-placeholder.js.map +1 -1
- package/build-module/embed/embed-placeholder.native.js +1 -3
- package/build-module/embed/embed-placeholder.native.js.map +1 -1
- package/build-module/embed/embed-preview.js +6 -21
- package/build-module/embed/embed-preview.js.map +1 -1
- package/build-module/embed/embed-preview.native.js +2 -4
- package/build-module/embed/embed-preview.native.js.map +1 -1
- package/build-module/embed/icons.js +1 -2
- package/build-module/embed/icons.js.map +1 -1
- package/build-module/embed/save.js +1 -2
- package/build-module/embed/save.js.map +1 -1
- package/build-module/embed/transforms.js.map +1 -1
- package/build-module/embed/variations.js +1 -1
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/embed/wp-embed-preview.native.js.map +1 -1
- package/build-module/file/deprecated.js +4 -6
- package/build-module/file/deprecated.js.map +1 -1
- package/build-module/file/edit.js +1 -3
- package/build-module/file/edit.js.map +1 -1
- package/build-module/file/edit.native.js +1 -2
- package/build-module/file/edit.native.js.map +1 -1
- package/build-module/file/inspector.js +1 -3
- package/build-module/file/inspector.js.map +1 -1
- package/build-module/file/save.js +1 -3
- package/build-module/file/save.js.map +1 -1
- package/build-module/footnotes/edit.js +1 -2
- package/build-module/footnotes/edit.js.map +1 -1
- package/build-module/footnotes/format.js.map +1 -1
- package/build-module/form/edit.js +1 -3
- package/build-module/form/edit.js.map +1 -1
- package/build-module/form-input/deprecated.js +1 -2
- package/build-module/form-input/deprecated.js.map +1 -1
- package/build-module/form-input/edit.js +1 -3
- package/build-module/form-input/edit.js.map +1 -1
- package/build-module/form-input/save.js +1 -2
- package/build-module/form-input/save.js.map +1 -1
- package/build-module/form-submission-notification/edit.js.map +1 -1
- package/build-module/form-submission-notification/save.js.map +1 -1
- package/build-module/freeform/edit.js +1 -3
- package/build-module/freeform/edit.js.map +1 -1
- package/build-module/freeform/modal.js +1 -3
- package/build-module/freeform/modal.js.map +1 -1
- package/build-module/gallery/deprecated.js +1 -2
- package/build-module/gallery/deprecated.js.map +1 -1
- package/build-module/gallery/edit.js +3 -5
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +1 -2
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/gallery/gallery.native.js +2 -3
- package/build-module/gallery/gallery.native.js.map +1 -1
- package/build-module/gallery/gap-styles.js.map +1 -1
- package/build-module/gallery/save.js +1 -2
- package/build-module/gallery/save.js.map +1 -1
- package/build-module/group/edit.js +1 -3
- package/build-module/group/edit.js.map +1 -1
- package/build-module/group/edit.native.js +1 -2
- package/build-module/group/edit.native.js.map +1 -1
- package/build-module/group/placeholder.js.map +1 -1
- package/build-module/heading/deprecated.js.map +1 -1
- package/build-module/heading/edit.js +1 -3
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/edit.native.js +1 -3
- package/build-module/heading/edit.native.js.map +1 -1
- package/build-module/heading/index.js +2 -2
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/save.js.map +1 -1
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/home-link/edit.js +1 -2
- package/build-module/home-link/edit.js.map +1 -1
- package/build-module/html/edit.js +1 -3
- package/build-module/html/edit.js.map +1 -1
- package/build-module/html/preview.js +1 -3
- package/build-module/html/preview.js.map +1 -1
- package/build-module/image/deprecated.js +1 -3
- package/build-module/image/deprecated.js.map +1 -1
- package/build-module/image/edit.js +2 -4
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +2 -4
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +4 -6
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/save.js +1 -3
- package/build-module/image/save.js.map +1 -1
- package/build-module/image/view.js.map +1 -1
- package/build-module/index.native.js.map +1 -1
- package/build-module/latest-comments/edit.js +1 -2
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-posts/edit.js +3 -5
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/latest-posts/edit.native.js +1 -3
- package/build-module/latest-posts/edit.native.js.map +1 -1
- package/build-module/list/edit.js +1 -3
- package/build-module/list/edit.js.map +1 -1
- package/build-module/list/ordered-list-settings.js +1 -2
- package/build-module/list/ordered-list-settings.js.map +1 -1
- package/build-module/list-item/edit.js +1 -3
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/edit.native.js +1 -2
- package/build-module/list-item/edit.native.js.map +1 -1
- package/build-module/list-item/list-style-type.native.js +1 -2
- package/build-module/list-item/list-style-type.native.js.map +1 -1
- package/build-module/list-item/save.js +1 -2
- package/build-module/list-item/save.js.map +1 -1
- package/build-module/loginout/edit.js +1 -3
- package/build-module/loginout/edit.js.map +1 -1
- package/build-module/media-text/deprecated.js +1 -2
- package/build-module/media-text/deprecated.js.map +1 -1
- package/build-module/media-text/edit.js +1 -3
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/edit.native.js +1 -3
- package/build-module/media-text/edit.native.js.map +1 -1
- package/build-module/media-text/icon-retry.native.js +1 -2
- package/build-module/media-text/icon-retry.native.js.map +1 -1
- package/build-module/media-text/image-fill.js.map +1 -1
- package/build-module/media-text/media-container.js +1 -2
- package/build-module/media-text/media-container.js.map +1 -1
- package/build-module/media-text/media-container.native.js +1 -3
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/media-text/save.js +1 -2
- package/build-module/media-text/save.js.map +1 -1
- package/build-module/missing/edit.js +3 -4
- package/build-module/missing/edit.js.map +1 -1
- package/build-module/missing/edit.native.js +1 -2
- package/build-module/missing/edit.native.js.map +1 -1
- package/build-module/more/edit.js +1 -3
- package/build-module/more/edit.js.map +1 -1
- package/build-module/more/save.js.map +1 -1
- package/build-module/navigation/edit/accessible-menu-description.js.map +1 -1
- package/build-module/navigation/edit/index.js +1 -3
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/leaf-more-menu.js +2 -4
- package/build-module/navigation/edit/leaf-more-menu.js.map +1 -1
- package/build-module/navigation/edit/menu-inspector-controls.js +2 -3
- package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-delete-control.js +1 -3
- package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +1 -3
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/overlay-menu-icon.js +1 -2
- package/build-module/navigation/edit/overlay-menu-icon.js.map +1 -1
- package/build-module/navigation/edit/overlay-menu-preview.js +1 -3
- package/build-module/navigation/edit/overlay-menu-preview.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +1 -3
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/placeholder/placeholder-preview.js +1 -2
- package/build-module/navigation/edit/placeholder/placeholder-preview.js.map +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +1 -3
- package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build-module/navigation/edit/utils.js.map +1 -1
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/navigation-link/edit.js +1 -3
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/link-ui.js +1 -2
- package/build-module/navigation-link/link-ui.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +1 -3
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/nextpage/edit.native.js +1 -1
- package/build-module/nextpage/edit.native.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +1 -2
- package/build-module/page-list/convert-to-links-modal.js.map +1 -1
- package/build-module/page-list/edit.js +1 -3
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list-item/edit.js +2 -4
- package/build-module/page-list-item/edit.js.map +1 -1
- package/build-module/paragraph/deprecated.js.map +1 -1
- package/build-module/paragraph/edit.js +1 -3
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/paragraph/edit.native.js +1 -3
- package/build-module/paragraph/edit.native.js.map +1 -1
- package/build-module/paragraph/save.js.map +1 -1
- package/build-module/pattern/recursion-detector.js +1 -0
- package/build-module/pattern/recursion-detector.js.map +1 -1
- package/build-module/post-author/edit.js +1 -3
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-biography/edit.js +1 -3
- package/build-module/post-author-biography/edit.js.map +1 -1
- package/build-module/post-author-name/edit.js +1 -3
- package/build-module/post-author-name/edit.js.map +1 -1
- package/build-module/post-comment/edit.js +1 -2
- package/build-module/post-comment/edit.js.map +1 -1
- package/build-module/post-comments-count/edit.js +1 -3
- package/build-module/post-comments-count/edit.js.map +1 -1
- package/build-module/post-comments-form/edit.js +1 -3
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-comments-form/form.js +2 -3
- package/build-module/post-comments-form/form.js.map +1 -1
- package/build-module/post-comments-link/edit.js +2 -4
- package/build-module/post-comments-link/edit.js.map +1 -1
- package/build-module/post-content/edit.js +32 -5
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-date/edit.js +1 -3
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-excerpt/edit.js +1 -3
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +1 -3
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +1 -3
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/overlay-controls.js +1 -3
- package/build-module/post-featured-image/overlay-controls.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +1 -3
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-template/edit.js +1 -3
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +1 -3
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-time-to-read/edit.js +2 -4
- package/build-module/post-time-to-read/edit.js.map +1 -1
- package/build-module/post-title/edit.js +1 -3
- package/build-module/post-title/edit.js.map +1 -1
- package/build-module/pullquote/deprecated.js +1 -2
- package/build-module/pullquote/deprecated.js.map +1 -1
- package/build-module/pullquote/edit.js +1 -3
- package/build-module/pullquote/edit.js.map +1 -1
- package/build-module/pullquote/edit.native.js +1 -3
- package/build-module/pullquote/edit.native.js.map +1 -1
- package/build-module/pullquote/save.js +1 -2
- package/build-module/pullquote/save.js.map +1 -1
- package/build-module/pullquote/shared.js.map +1 -1
- package/build-module/query/edit/enhanced-pagination-modal.js +1 -2
- package/build-module/query/edit/enhanced-pagination-modal.js.map +1 -1
- package/build-module/query/edit/index.js +1 -3
- package/build-module/query/edit/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js +1 -0
- 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 -2
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +9 -14
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/order-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/parent-control.js +1 -0
- package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +1 -0
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query/edit/pattern-selection-modal.js +2 -3
- package/build-module/query/edit/pattern-selection-modal.js.map +1 -1
- package/build-module/query/edit/query-content.js +1 -3
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/edit/query-placeholder.js +1 -2
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/query/edit/query-toolbar.js +1 -2
- package/build-module/query/edit/query-toolbar.js.map +1 -1
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query/view.js.map +1 -1
- package/build-module/query-pagination/edit.js +1 -3
- package/build-module/query-pagination/edit.js.map +1 -1
- package/build-module/query-pagination/query-pagination-arrow-controls.js +1 -2
- package/build-module/query-pagination/query-pagination-arrow-controls.js.map +1 -1
- package/build-module/query-pagination-next/edit.js +1 -2
- package/build-module/query-pagination-next/edit.js.map +1 -1
- package/build-module/query-pagination-numbers/edit.js +1 -3
- package/build-module/query-pagination-numbers/edit.js.map +1 -1
- package/build-module/query-pagination-previous/edit.js +1 -2
- package/build-module/query-pagination-previous/edit.js.map +1 -1
- package/build-module/query-title/edit.js +4 -6
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/quote/deprecated.js +1 -2
- package/build-module/quote/deprecated.js.map +1 -1
- package/build-module/quote/edit.js +1 -3
- package/build-module/quote/edit.js.map +1 -1
- package/build-module/quote/save.js +1 -2
- package/build-module/quote/save.js.map +1 -1
- package/build-module/quote/transforms.js.map +1 -1
- package/build-module/read-more/edit.js +1 -3
- package/build-module/read-more/edit.js.map +1 -1
- package/build-module/rss/edit.js +1 -3
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/search/edit.js +1 -3
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/edit.native.js +1 -2
- package/build-module/search/edit.native.js.map +1 -1
- package/build-module/search/icons.js +1 -2
- package/build-module/search/icons.js.map +1 -1
- package/build-module/separator/edit.js +1 -2
- package/build-module/separator/edit.js.map +1 -1
- package/build-module/shortcode/edit.js.map +1 -1
- package/build-module/shortcode/edit.native.js +1 -2
- package/build-module/shortcode/edit.native.js.map +1 -1
- package/build-module/site-logo/edit.js +1 -3
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-tagline/edit.js +1 -3
- package/build-module/site-tagline/edit.js.map +1 -1
- package/build-module/site-title/edit.js +1 -3
- package/build-module/site-title/edit.js.map +1 -1
- package/build-module/social-link/edit.js +1 -3
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-link/edit.native.js +1 -3
- package/build-module/social-link/edit.native.js.map +1 -1
- package/build-module/social-links/deprecated.js.map +1 -1
- package/build-module/social-links/edit.js +1 -3
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/spacer/controls.js +1 -3
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/spacer/controls.native.js +1 -2
- package/build-module/spacer/controls.native.js.map +1 -1
- package/build-module/spacer/deprecated.js.map +1 -1
- package/build-module/spacer/edit.js +1 -3
- package/build-module/spacer/edit.js.map +1 -1
- package/build-module/table/deprecated.js +1 -2
- package/build-module/table/deprecated.js.map +1 -1
- package/build-module/table/edit.js +1 -3
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table/save.js +1 -2
- package/build-module/table/save.js.map +1 -1
- package/build-module/table-of-contents/edit.js +2 -4
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/table-of-contents/hooks.js.map +1 -1
- package/build-module/table-of-contents/list.js +1 -3
- package/build-module/table-of-contents/list.js.map +1 -1
- package/build-module/tag-cloud/edit.js +1 -3
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +2 -4
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/import-controls.js +3 -3
- package/build-module/template-part/edit/import-controls.js.map +1 -1
- package/build-module/template-part/edit/index.js +3 -5
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/placeholder.js +1 -2
- package/build-module/template-part/edit/placeholder.js.map +1 -1
- package/build-module/template-part/edit/selection-modal.js +3 -4
- package/build-module/template-part/edit/selection-modal.js.map +1 -1
- package/build-module/template-part/edit/title-modal.js +1 -2
- package/build-module/template-part/edit/title-modal.js.map +1 -1
- package/build-module/template-part/edit/utils/hooks.js.map +1 -1
- package/build-module/template-part/variations.js.map +1 -1
- package/build-module/term-description/edit.js +1 -3
- package/build-module/term-description/edit.js.map +1 -1
- package/build-module/text-columns/edit.js +1 -3
- package/build-module/text-columns/edit.js.map +1 -1
- package/build-module/text-columns/save.js.map +1 -1
- package/build-module/utils/caption.js +1 -3
- package/build-module/utils/caption.js.map +1 -1
- package/build-module/verse/deprecated.js.map +1 -1
- package/build-module/verse/edit.js +1 -3
- package/build-module/verse/edit.js.map +1 -1
- package/build-module/verse/save.js.map +1 -1
- package/build-module/video/deprecated.js +1 -2
- package/build-module/video/deprecated.js.map +1 -1
- package/build-module/video/edit-common-settings.js +1 -3
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-module/video/edit.js +2 -4
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/edit.native.js +2 -3
- package/build-module/video/edit.native.js.map +1 -1
- package/build-module/video/icon-retry.native.js +1 -2
- package/build-module/video/icon-retry.native.js.map +1 -1
- package/build-module/video/save.js +1 -2
- package/build-module/video/save.js.map +1 -1
- package/build-module/video/tracks-editor.js +2 -4
- package/build-module/video/tracks-editor.js.map +1 -1
- package/build-style/code/style-rtl.css +2 -0
- package/build-style/code/style.css +4 -0
- package/build-style/common-rtl.css +0 -2
- package/build-style/common.css +0 -2
- package/build-style/post-content/style-rtl.css +2 -4
- package/build-style/post-content/style.css +2 -4
- package/build-style/style-rtl.css +4 -6
- package/build-style/style.css +6 -6
- package/package.json +36 -36
- package/src/code/style.scss +5 -0
- package/src/common.scss +0 -3
- package/src/cover/edit/inspector-controls.js +103 -44
- package/src/cover/index.php +38 -19
- package/src/cover/test/edit.js +2 -2
- package/src/embed/edit.js +19 -2
- package/src/embed/embed-preview.js +2 -18
- package/src/image/index.php +1 -1
- package/src/post-content/edit.js +30 -1
- package/src/post-content/style.scss +2 -4
- package/src/post-terms/index.php +7 -6
- package/src/query/edit/inspector-controls/index.js +10 -16
- package/src/query/edit/pattern-selection-modal.js +1 -1
- package/src/template-part/edit/selection-modal.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","_x","SelectControl","__experimentalUnitControl","UnitControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalUseCustomUnits","useCustomUnits","__experimentalToolsPanelItem","ToolsPanelItem","useSettings","store","blockEditorStore","useSelect","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SCALE_OPTIONS","children","value","label","DEFAULT_SCALE","DEFAULT_SIZE","scaleHelp","cover","contain","fill","DimensionControls","clientId","attributes","aspectRatio","width","height","scale","sizeSlug","setAttributes","media","availableUnits","defaultRatios","themeRatios","showDefaultRatios","units","imageSizes","select","getSettings","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","onDimensionChange","dimension","nextValue","parsedValue","parseFloat","isNaN","scaleLabel","showScaleControl","themeOptions","ratio","defaultOptions","aspectRatioOptions","hasValue","onDeselect","undefined","resetAllFilter","isShownByDefault","panelId","__next40pxDefaultSize","__nextHasNoMarginBottom","options","onChange","nextAspectRatio","className","labelPosition","min","nextHeight","nextWidth","help","isBlock","length","nextSizeSlug"],"sources":["@wordpress/block-library/src/post-featured-image/dimension-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tSelectControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\tuseSettings,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\nconst SCALE_OPTIONS = (\n\t<>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"cover\"\n\t\t\tlabel={ _x( 'Cover', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"contain\"\n\t\t\tlabel={ _x(\n\t\t\t\t'Contain',\n\t\t\t\t'Scale option for Image dimension control'\n\t\t\t) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"fill\"\n\t\t\tlabel={ _x( 'Fill', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t</>\n);\n\nconst DEFAULT_SCALE = 'cover';\nconst DEFAULT_SIZE = 'full';\n\nconst scaleHelp = {\n\tcover: __(\n\t\t'Image is scaled and cropped to fill the entire space without being distorted.'\n\t),\n\tcontain: __(\n\t\t'Image is scaled to fill the space without clipping nor distorting.'\n\t),\n\tfill: __(\n\t\t'Image will be stretched and distorted to completely fill the space.'\n\t),\n};\n\nconst DimensionControls = ( {\n\tclientId,\n\tattributes: { aspectRatio, width, height, scale, sizeSlug },\n\tsetAttributes,\n\tmedia,\n} ) => {\n\tconst [ availableUnits, defaultRatios, themeRatios, showDefaultRatios ] =\n\t\tuseSettings(\n\t\t\t'spacing.units',\n\t\t\t'dimensions.aspectRatios.default',\n\t\t\t'dimensions.aspectRatios.theme',\n\t\t\t'dimensions.defaultAspectRatios'\n\t\t);\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ 'px', '%', 'vw', 'em', 'rem' ],\n\t} );\n\tconst imageSizes = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().imageSizes,\n\t\t[]\n\t);\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => {\n\t\t\treturn media?.media_details?.sizes?.[ slug ]?.source_url;\n\t\t} )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\n\tconst onDimensionChange = ( dimension, nextValue ) => {\n\t\tconst parsedValue = parseFloat( nextValue );\n\t\t/**\n\t\t * If we have no value set and we change the unit,\n\t\t * we don't want to set the attribute, as it would\n\t\t * end up having the unit as value without any number.\n\t\t */\n\t\tif ( isNaN( parsedValue ) && nextValue ) {\n\t\t\treturn;\n\t\t}\n\t\tsetAttributes( {\n\t\t\t[ dimension ]: parsedValue < 0 ? '0' : nextValue,\n\t\t} );\n\t};\n\tconst scaleLabel = _x( 'Scale', 'Image scaling options' );\n\n\tconst showScaleControl =\n\t\theight || ( aspectRatio && aspectRatio !== 'auto' );\n\n\tconst themeOptions = themeRatios?.map( ( { name, ratio } ) => ( {\n\t\tlabel: name,\n\t\tvalue: ratio,\n\t} ) );\n\n\tconst defaultOptions = defaultRatios?.map( ( { name, ratio } ) => ( {\n\t\tlabel: name,\n\t\tvalue: ratio,\n\t} ) );\n\n\tconst aspectRatioOptions = [\n\t\t{\n\t\t\tlabel: _x(\n\t\t\t\t'Original',\n\t\t\t\t'Aspect ratio option for dimensions control'\n\t\t\t),\n\t\t\tvalue: 'auto',\n\t\t},\n\t\t...( showDefaultRatios ? defaultOptions : [] ),\n\t\t...( themeOptions ? themeOptions : [] ),\n\t];\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\thasValue={ () => !! aspectRatio }\n\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { aspectRatio: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\taspectRatio: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\t\tvalue={ aspectRatio }\n\t\t\t\t\toptions={ aspectRatioOptions }\n\t\t\t\t\tonChange={ ( nextAspectRatio ) =>\n\t\t\t\t\t\tsetAttributes( { aspectRatio: nextAspectRatio } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! height }\n\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { height: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\theight: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ height || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextHeight ) =>\n\t\t\t\t\t\tonDimensionChange( 'height', nextHeight )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! width }\n\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { width: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\twidth: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextWidth ) =>\n\t\t\t\t\t\tonDimensionChange( 'width', nextWidth )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t{ showScaleControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! scale && scale !== DEFAULT_SCALE }\n\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\t\tvalue={ scale }\n\t\t\t\t\t\thelp={ scaleHelp[ scale ] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tscale: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t{ SCALE_OPTIONS }\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! sizeSlug }\n\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( { sizeSlug: undefined } )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tsizeSlug: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ false }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\tvalue={ sizeSlug || DEFAULT_SIZE }\n\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\tonChange={ ( nextSizeSlug ) =>\n\t\t\t\t\t\t\tsetAttributes( { sizeSlug: nextSizeSlug } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __( 'Select the size of the source image.' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default DimensionControls;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__","_x","SelectControl","__experimentalUnitControl","UnitControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalUseCustomUnits","useCustomUnits","__experimentalToolsPanelItem","ToolsPanelItem","useSettings","store","blockEditorStore","useSelect","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SCALE_OPTIONS","children","value","label","DEFAULT_SCALE","DEFAULT_SIZE","scaleHelp","cover","contain","fill","DimensionControls","clientId","attributes","aspectRatio","width","height","scale","sizeSlug","setAttributes","media","availableUnits","defaultRatios","themeRatios","showDefaultRatios","units","imageSizes","select","getSettings","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","onDimensionChange","dimension","nextValue","parsedValue","parseFloat","isNaN","scaleLabel","showScaleControl","themeOptions","ratio","defaultOptions","aspectRatioOptions","hasValue","onDeselect","undefined","resetAllFilter","isShownByDefault","panelId","__next40pxDefaultSize","__nextHasNoMarginBottom","options","onChange","nextAspectRatio","className","labelPosition","min","nextHeight","nextWidth","help","isBlock","length","nextSizeSlug"],"sources":["@wordpress/block-library/src/post-featured-image/dimension-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tSelectControl,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\tuseSettings,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\nconst SCALE_OPTIONS = (\n\t<>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"cover\"\n\t\t\tlabel={ _x( 'Cover', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"contain\"\n\t\t\tlabel={ _x(\n\t\t\t\t'Contain',\n\t\t\t\t'Scale option for Image dimension control'\n\t\t\t) }\n\t\t/>\n\t\t<ToggleGroupControlOption\n\t\t\tvalue=\"fill\"\n\t\t\tlabel={ _x( 'Fill', 'Scale option for Image dimension control' ) }\n\t\t/>\n\t</>\n);\n\nconst DEFAULT_SCALE = 'cover';\nconst DEFAULT_SIZE = 'full';\n\nconst scaleHelp = {\n\tcover: __(\n\t\t'Image is scaled and cropped to fill the entire space without being distorted.'\n\t),\n\tcontain: __(\n\t\t'Image is scaled to fill the space without clipping nor distorting.'\n\t),\n\tfill: __(\n\t\t'Image will be stretched and distorted to completely fill the space.'\n\t),\n};\n\nconst DimensionControls = ( {\n\tclientId,\n\tattributes: { aspectRatio, width, height, scale, sizeSlug },\n\tsetAttributes,\n\tmedia,\n} ) => {\n\tconst [ availableUnits, defaultRatios, themeRatios, showDefaultRatios ] =\n\t\tuseSettings(\n\t\t\t'spacing.units',\n\t\t\t'dimensions.aspectRatios.default',\n\t\t\t'dimensions.aspectRatios.theme',\n\t\t\t'dimensions.defaultAspectRatios'\n\t\t);\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ 'px', '%', 'vw', 'em', 'rem' ],\n\t} );\n\tconst imageSizes = useSelect(\n\t\t( select ) => select( blockEditorStore ).getSettings().imageSizes,\n\t\t[]\n\t);\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => {\n\t\t\treturn media?.media_details?.sizes?.[ slug ]?.source_url;\n\t\t} )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\n\tconst onDimensionChange = ( dimension, nextValue ) => {\n\t\tconst parsedValue = parseFloat( nextValue );\n\t\t/**\n\t\t * If we have no value set and we change the unit,\n\t\t * we don't want to set the attribute, as it would\n\t\t * end up having the unit as value without any number.\n\t\t */\n\t\tif ( isNaN( parsedValue ) && nextValue ) {\n\t\t\treturn;\n\t\t}\n\t\tsetAttributes( {\n\t\t\t[ dimension ]: parsedValue < 0 ? '0' : nextValue,\n\t\t} );\n\t};\n\tconst scaleLabel = _x( 'Scale', 'Image scaling options' );\n\n\tconst showScaleControl =\n\t\theight || ( aspectRatio && aspectRatio !== 'auto' );\n\n\tconst themeOptions = themeRatios?.map( ( { name, ratio } ) => ( {\n\t\tlabel: name,\n\t\tvalue: ratio,\n\t} ) );\n\n\tconst defaultOptions = defaultRatios?.map( ( { name, ratio } ) => ( {\n\t\tlabel: name,\n\t\tvalue: ratio,\n\t} ) );\n\n\tconst aspectRatioOptions = [\n\t\t{\n\t\t\tlabel: _x(\n\t\t\t\t'Original',\n\t\t\t\t'Aspect ratio option for dimensions control'\n\t\t\t),\n\t\t\tvalue: 'auto',\n\t\t},\n\t\t...( showDefaultRatios ? defaultOptions : [] ),\n\t\t...( themeOptions ? themeOptions : [] ),\n\t];\n\n\treturn (\n\t\t<>\n\t\t\t<ToolsPanelItem\n\t\t\t\thasValue={ () => !! aspectRatio }\n\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { aspectRatio: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\taspectRatio: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Aspect ratio' ) }\n\t\t\t\t\tvalue={ aspectRatio }\n\t\t\t\t\toptions={ aspectRatioOptions }\n\t\t\t\t\tonChange={ ( nextAspectRatio ) =>\n\t\t\t\t\t\tsetAttributes( { aspectRatio: nextAspectRatio } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! height }\n\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { height: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\theight: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'Height' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ height || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextHeight ) =>\n\t\t\t\t\t\tonDimensionChange( 'height', nextHeight )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t<ToolsPanelItem\n\t\t\t\tclassName=\"single-column\"\n\t\t\t\thasValue={ () => !! width }\n\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { width: undefined } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\twidth: undefined,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<UnitControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'Width' ) }\n\t\t\t\t\tlabelPosition=\"top\"\n\t\t\t\t\tvalue={ width || '' }\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tonChange={ ( nextWidth ) =>\n\t\t\t\t\t\tonDimensionChange( 'width', nextWidth )\n\t\t\t\t\t}\n\t\t\t\t\tunits={ units }\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t\t{ showScaleControl && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! scale && scale !== DEFAULT_SCALE }\n\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tscale: DEFAULT_SCALE,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ scaleLabel }\n\t\t\t\t\t\tvalue={ scale }\n\t\t\t\t\t\thelp={ scaleHelp[ scale ] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tscale: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t{ SCALE_OPTIONS }\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t\t{ !! imageSizeOptions.length && (\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! sizeSlug }\n\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( { sizeSlug: undefined } )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tsizeSlug: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ false }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\tvalue={ sizeSlug || DEFAULT_SIZE }\n\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\tonChange={ ( nextSizeSlug ) =>\n\t\t\t\t\t\t\tsetAttributes( { sizeSlug: nextSizeSlug } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\thelp={ __( 'Select the size of the source image.' ) }\n\t\t\t\t\t/>\n\t\t\t\t</ToolsPanelItem>\n\t\t\t) }\n\t\t</>\n\t);\n};\n\nexport default DimensionControls;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -22,9 +22,7 @@ import { store as noticesStore } from '@wordpress/notices';
|
|
|
22
22
|
import DimensionControls from './dimension-controls';
|
|
23
23
|
import OverlayControls from './overlay-controls';
|
|
24
24
|
import Overlay from './overlay';
|
|
25
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
26
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
27
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
25
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
28
26
|
const ALLOWED_MEDIA_TYPES = ['image'];
|
|
29
27
|
function getMediaSourceUrlBySizeSlug(media, slug) {
|
|
30
28
|
return media?.media_details?.sizes?.[slug]?.source_url || media?.source_url;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","isBlobURL","useEntityProp","store","coreStore","useSelect","useDispatch","ToggleControl","PanelBody","Placeholder","Button","Spinner","TextControl","InspectorControls","BlockControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","useBlockEditingMode","useMemo","useEffect","useState","__","sprintf","upload","noticesStore","DimensionControls","OverlayControls","Overlay","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_MEDIA_TYPES","getMediaSourceUrlBySizeSlug","media","slug","media_details","sizes","source_url","disabledClickProps","onClick","event","preventDefault","PostFeaturedImageEdit","clientId","attributes","setAttributes","context","postId","postType","postTypeSlug","queryId","isDescendentOfQueryLoop","Number","isFinite","isLink","aspectRatio","height","width","scale","sizeSlug","rel","linkTarget","useFirstImageFromPost","temporaryURL","setTemporaryURL","storedFeaturedImage","setFeaturedImage","postContent","featuredImage","imageOpener","exec","imageId","groups","attrs","JSON","parse","id","postPermalink","select","getMedia","getPostType","getEditedEntityRecord","link","mediaUrl","blockProps","style","className","borderProps","shadowProps","blockEditingMode","placeholder","content","withIllustration","children","onSelectImage","value","url","createErrorNotice","onUploadError","message","type","controls","group","title","__nextHasNoMarginBottom","label","labels","singular_name","onChange","checked","__next40pxDefaultSize","newRel","image","href","target","imageStyles","objectFit","onSelect","accept","allowedTypes","onError","mediaLibraryButton","open","icon","variant","showTooltip","tooltipPosition","src","alt","alt_text","mediaId","mediaURL","onReset"],"sources":["@wordpress/block-library/src/post-featured-image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tToggleControl,\n\tPanelBody,\n\tPlaceholder,\n\tButton,\n\tSpinner,\n\tTextControl,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport DimensionControls from './dimension-controls';\nimport OverlayControls from './overlay-controls';\nimport Overlay from './overlay';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction getMediaSourceUrlBySizeSlug( media, slug ) {\n\treturn (\n\t\tmedia?.media_details?.sizes?.[ slug ]?.source_url || media?.source_url\n\t);\n}\n\nconst disabledClickProps = {\n\tonClick: ( event ) => event.preventDefault(),\n\t'aria-disabled': true,\n};\n\nexport default function PostFeaturedImageEdit( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\tcontext: { postId, postType: postTypeSlug, queryId },\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst {\n\t\tisLink,\n\t\taspectRatio,\n\t\theight,\n\t\twidth,\n\t\tscale,\n\t\tsizeSlug,\n\t\trel,\n\t\tlinkTarget,\n\t\tuseFirstImageFromPost,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst [ storedFeaturedImage, setFeaturedImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\t// Fallback to post content if no featured image is set.\n\t// This is needed for the \"Use first image from post\" option.\n\tconst [ postContent ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'content',\n\t\tpostId\n\t);\n\n\tconst featuredImage = useMemo( () => {\n\t\tif ( storedFeaturedImage ) {\n\t\t\treturn storedFeaturedImage;\n\t\t}\n\n\t\tif ( ! useFirstImageFromPost ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst imageOpener =\n\t\t\t/<!--\\s+wp:(?:core\\/)?image\\s+(?<attrs>{(?:(?:[^}]+|}+(?=})|(?!}\\s+\\/?-->).)*)?}\\s+)?-->/.exec(\n\t\t\t\tpostContent\n\t\t\t);\n\t\tconst imageId =\n\t\t\timageOpener?.groups?.attrs &&\n\t\t\tJSON.parse( imageOpener.groups.attrs )?.id;\n\t\treturn imageId;\n\t}, [ storedFeaturedImage, useFirstImageFromPost, postContent ] );\n\n\tconst { media, postType, postPermalink } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia, getPostType, getEditedEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage &&\n\t\t\t\t\tgetMedia( featuredImage, {\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t} ),\n\t\t\t\tpostType: postTypeSlug && getPostType( postTypeSlug ),\n\t\t\t\tpostPermalink: getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\tpostId\n\t\t\t\t)?.link,\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, postTypeSlug, postId ]\n\t);\n\n\tconst mediaUrl = getMediaSourceUrlBySizeSlug( media, sizeSlug );\n\n\tconst blockProps = useBlockProps( {\n\t\tstyle: { width, height, aspectRatio },\n\t\tclassName: clsx( {\n\t\t\t'is-transient': temporaryURL,\n\t\t} ),\n\t} );\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'block-editor-media-placeholder',\n\t\t\t\t\tborderProps.className\n\t\t\t\t) }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\theight: !! aspectRatio && '100%',\n\t\t\t\t\twidth: !! aspectRatio && '100%',\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst onSelectImage = ( value ) => {\n\t\tif ( value?.id ) {\n\t\t\tsetFeaturedImage( value.id );\n\t\t}\n\n\t\tif ( value?.url && isBlobURL( value.url ) ) {\n\t\t\tsetTemporaryURL( value.url );\n\t\t}\n\t};\n\n\t// Reset temporary url when media is available.\n\tuseEffect( () => {\n\t\tif ( mediaUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ mediaUrl, temporaryURL ] );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst controls = blockEditingMode === 'default' && (\n\t\t<>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t<OverlayControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<DimensionControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Page\".\n\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\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\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\t\tvalue={ rel }\n\t\t\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\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</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tlet image;\n\n\t/**\n\t * A Post Featured Image block should not have image replacement\n\t * or upload options in the following cases:\n\t * - Is placed in a Query Loop. This is a conscious decision to\n\t * prevent content editing of different posts in Query Loop, and\n\t * this could change in the future.\n\t * - Is in a context where it does not have a postId (for example\n\t * in a template or template part).\n\t */\n\tif ( ! featuredImage && ( isDescendentOfQueryLoop || ! postId ) ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t\t<a\n\t\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ placeholder() }\n\t\t\t\t\t\t</a>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tplaceholder()\n\t\t\t\t\t) }\n\t\t\t\t\t<Overlay\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst label = __( 'Add a featured image' );\n\tconst imageStyles = {\n\t\t...borderProps.style,\n\t\t...shadowProps.style,\n\t\theight: aspectRatio ? '100%' : height,\n\t\twidth: !! aspectRatio && '100%',\n\t\tobjectFit: !! ( height || aspectRatio ) && scale,\n\t};\n\n\t/**\n\t * When the post featured image block is placed in a context where:\n\t * - It has a postId (for example in a single post)\n\t * - It is not inside a query loop\n\t * - It has no image assigned yet\n\t * Then display the placeholder with the image upload option.\n\t */\n\tif ( ! featuredImage && ! temporaryURL ) {\n\t\timage = (\n\t\t\t<MediaPlaceholder\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\topen();\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/>\n\t\t);\n\t} else {\n\t\t// We have a Featured image so show a Placeholder if is loading.\n\t\timage =\n\t\t\t! media && ! temporaryURL ? (\n\t\t\t\tplaceholder()\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t<img\n\t\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\t\tsrc={ temporaryURL || mediaUrl }\n\t\t\t\t\t\talt={\n\t\t\t\t\t\t\tmedia && media?.alt_text\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The image's alt text.\n\t\t\t\t\t\t\t\t\t\t__( 'Featured image: %s' ),\n\t\t\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Featured image' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstyle={ imageStyles }\n\t\t\t\t\t/>\n\t\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t\t</>\n\t\t\t);\n\t}\n\n\t/**\n\t * When the post featured image block:\n\t * - Has an image assigned\n\t * - Is not inside a query loop\n\t * Then display the image and the image replacement option.\n\t */\n\treturn (\n\t\t<>\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ !! media && ! isDescendentOfQueryLoop && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ featuredImage }\n\t\t\t\t\t\tmediaURL={ mediaUrl }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tonReset={ () => setFeaturedImage( 0 ) }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /* If the featured image is linked, wrap in an <a /> tag to trigger any inherited link element styles */ }\n\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t<Overlay\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","isBlobURL","useEntityProp","store","coreStore","useSelect","useDispatch","ToggleControl","PanelBody","Placeholder","Button","Spinner","TextControl","InspectorControls","BlockControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","useBlockEditingMode","useMemo","useEffect","useState","__","sprintf","upload","noticesStore","DimensionControls","OverlayControls","Overlay","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_MEDIA_TYPES","getMediaSourceUrlBySizeSlug","media","slug","media_details","sizes","source_url","disabledClickProps","onClick","event","preventDefault","PostFeaturedImageEdit","clientId","attributes","setAttributes","context","postId","postType","postTypeSlug","queryId","isDescendentOfQueryLoop","Number","isFinite","isLink","aspectRatio","height","width","scale","sizeSlug","rel","linkTarget","useFirstImageFromPost","temporaryURL","setTemporaryURL","storedFeaturedImage","setFeaturedImage","postContent","featuredImage","imageOpener","exec","imageId","groups","attrs","JSON","parse","id","postPermalink","select","getMedia","getPostType","getEditedEntityRecord","link","mediaUrl","blockProps","style","className","borderProps","shadowProps","blockEditingMode","placeholder","content","withIllustration","children","onSelectImage","value","url","createErrorNotice","onUploadError","message","type","controls","group","title","__nextHasNoMarginBottom","label","labels","singular_name","onChange","checked","__next40pxDefaultSize","newRel","image","href","target","imageStyles","objectFit","onSelect","accept","allowedTypes","onError","mediaLibraryButton","open","icon","variant","showTooltip","tooltipPosition","src","alt","alt_text","mediaId","mediaURL","onReset"],"sources":["@wordpress/block-library/src/post-featured-image/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tToggleControl,\n\tPanelBody,\n\tPlaceholder,\n\tButton,\n\tSpinner,\n\tTextControl,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tMediaPlaceholder,\n\tMediaReplaceFlow,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { useMemo, useEffect, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport DimensionControls from './dimension-controls';\nimport OverlayControls from './overlay-controls';\nimport Overlay from './overlay';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\n\nfunction getMediaSourceUrlBySizeSlug( media, slug ) {\n\treturn (\n\t\tmedia?.media_details?.sizes?.[ slug ]?.source_url || media?.source_url\n\t);\n}\n\nconst disabledClickProps = {\n\tonClick: ( event ) => event.preventDefault(),\n\t'aria-disabled': true,\n};\n\nexport default function PostFeaturedImageEdit( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\tcontext: { postId, postType: postTypeSlug, queryId },\n} ) {\n\tconst isDescendentOfQueryLoop = Number.isFinite( queryId );\n\tconst {\n\t\tisLink,\n\t\taspectRatio,\n\t\theight,\n\t\twidth,\n\t\tscale,\n\t\tsizeSlug,\n\t\trel,\n\t\tlinkTarget,\n\t\tuseFirstImageFromPost,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst [ storedFeaturedImage, setFeaturedImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\t// Fallback to post content if no featured image is set.\n\t// This is needed for the \"Use first image from post\" option.\n\tconst [ postContent ] = useEntityProp(\n\t\t'postType',\n\t\tpostTypeSlug,\n\t\t'content',\n\t\tpostId\n\t);\n\n\tconst featuredImage = useMemo( () => {\n\t\tif ( storedFeaturedImage ) {\n\t\t\treturn storedFeaturedImage;\n\t\t}\n\n\t\tif ( ! useFirstImageFromPost ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst imageOpener =\n\t\t\t/<!--\\s+wp:(?:core\\/)?image\\s+(?<attrs>{(?:(?:[^}]+|}+(?=})|(?!}\\s+\\/?-->).)*)?}\\s+)?-->/.exec(\n\t\t\t\tpostContent\n\t\t\t);\n\t\tconst imageId =\n\t\t\timageOpener?.groups?.attrs &&\n\t\t\tJSON.parse( imageOpener.groups.attrs )?.id;\n\t\treturn imageId;\n\t}, [ storedFeaturedImage, useFirstImageFromPost, postContent ] );\n\n\tconst { media, postType, postPermalink } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia, getPostType, getEditedEntityRecord } =\n\t\t\t\tselect( coreStore );\n\t\t\treturn {\n\t\t\t\tmedia:\n\t\t\t\t\tfeaturedImage &&\n\t\t\t\t\tgetMedia( featuredImage, {\n\t\t\t\t\t\tcontext: 'view',\n\t\t\t\t\t} ),\n\t\t\t\tpostType: postTypeSlug && getPostType( postTypeSlug ),\n\t\t\t\tpostPermalink: getEditedEntityRecord(\n\t\t\t\t\t'postType',\n\t\t\t\t\tpostTypeSlug,\n\t\t\t\t\tpostId\n\t\t\t\t)?.link,\n\t\t\t};\n\t\t},\n\t\t[ featuredImage, postTypeSlug, postId ]\n\t);\n\n\tconst mediaUrl = getMediaSourceUrlBySizeSlug( media, sizeSlug );\n\n\tconst blockProps = useBlockProps( {\n\t\tstyle: { width, height, aspectRatio },\n\t\tclassName: clsx( {\n\t\t\t'is-transient': temporaryURL,\n\t\t} ),\n\t} );\n\tconst borderProps = useBorderProps( attributes );\n\tconst shadowProps = getShadowClassesAndStyles( attributes );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst placeholder = ( content ) => {\n\t\treturn (\n\t\t\t<Placeholder\n\t\t\t\tclassName={ clsx(\n\t\t\t\t\t'block-editor-media-placeholder',\n\t\t\t\t\tborderProps.className\n\t\t\t\t) }\n\t\t\t\twithIllustration\n\t\t\t\tstyle={ {\n\t\t\t\t\theight: !! aspectRatio && '100%',\n\t\t\t\t\twidth: !! aspectRatio && '100%',\n\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t...shadowProps.style,\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ content }\n\t\t\t</Placeholder>\n\t\t);\n\t};\n\n\tconst onSelectImage = ( value ) => {\n\t\tif ( value?.id ) {\n\t\t\tsetFeaturedImage( value.id );\n\t\t}\n\n\t\tif ( value?.url && isBlobURL( value.url ) ) {\n\t\t\tsetTemporaryURL( value.url );\n\t\t}\n\t};\n\n\t// Reset temporary url when media is available.\n\tuseEffect( () => {\n\t\tif ( mediaUrl && temporaryURL ) {\n\t\t\tsetTemporaryURL();\n\t\t}\n\t}, [ mediaUrl, temporaryURL ] );\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetTemporaryURL();\n\t};\n\n\tconst controls = blockEditingMode === 'default' && (\n\t\t<>\n\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t<OverlayControls\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<DimensionControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tmedia={ media }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"Page\".\n\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonChange={ () => setAttributes( { isLink: ! isLink } ) }\n\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t/>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\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\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\t\tvalue={ rel }\n\t\t\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\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</PanelBody>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n\n\tlet image;\n\n\t/**\n\t * A Post Featured Image block should not have image replacement\n\t * or upload options in the following cases:\n\t * - Is placed in a Query Loop. This is a conscious decision to\n\t * prevent content editing of different posts in Query Loop, and\n\t * this could change in the future.\n\t * - Is in a context where it does not have a postId (for example\n\t * in a template or template part).\n\t */\n\tif ( ! featuredImage && ( isDescendentOfQueryLoop || ! postId ) ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ controls }\n\t\t\t\t<div { ...blockProps }>\n\t\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t\t<a\n\t\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ placeholder() }\n\t\t\t\t\t\t</a>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tplaceholder()\n\t\t\t\t\t) }\n\t\t\t\t\t<Overlay\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst label = __( 'Add a featured image' );\n\tconst imageStyles = {\n\t\t...borderProps.style,\n\t\t...shadowProps.style,\n\t\theight: aspectRatio ? '100%' : height,\n\t\twidth: !! aspectRatio && '100%',\n\t\tobjectFit: !! ( height || aspectRatio ) && scale,\n\t};\n\n\t/**\n\t * When the post featured image block is placed in a context where:\n\t * - It has a postId (for example in a single post)\n\t * - It is not inside a query loop\n\t * - It has no image assigned yet\n\t * Then display the placeholder with the image upload option.\n\t */\n\tif ( ! featuredImage && ! temporaryURL ) {\n\t\timage = (\n\t\t\t<MediaPlaceholder\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\tmediaLibraryButton={ ( { open } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\ttooltipPosition=\"top center\"\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\topen();\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/>\n\t\t);\n\t} else {\n\t\t// We have a Featured image so show a Placeholder if is loading.\n\t\timage =\n\t\t\t! media && ! temporaryURL ? (\n\t\t\t\tplaceholder()\n\t\t\t) : (\n\t\t\t\t<>\n\t\t\t\t\t<img\n\t\t\t\t\t\tclassName={ borderProps.className }\n\t\t\t\t\t\tsrc={ temporaryURL || mediaUrl }\n\t\t\t\t\t\talt={\n\t\t\t\t\t\t\tmedia && media?.alt_text\n\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t// translators: %s: The image's alt text.\n\t\t\t\t\t\t\t\t\t\t__( 'Featured image: %s' ),\n\t\t\t\t\t\t\t\t\t\tmedia.alt_text\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t: __( 'Featured image' )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tstyle={ imageStyles }\n\t\t\t\t\t/>\n\t\t\t\t\t{ temporaryURL && <Spinner /> }\n\t\t\t\t</>\n\t\t\t);\n\t}\n\n\t/**\n\t * When the post featured image block:\n\t * - Has an image assigned\n\t * - Is not inside a query loop\n\t * Then display the image and the image replacement option.\n\t */\n\treturn (\n\t\t<>\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ !! media && ! isDescendentOfQueryLoop && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ featuredImage }\n\t\t\t\t\t\tmediaURL={ mediaUrl }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\tonReset={ () => setFeaturedImage( 0 ) }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<figure { ...blockProps }>\n\t\t\t\t{ /* If the featured image is linked, wrap in an <a /> tag to trigger any inherited link element styles */ }\n\t\t\t\t{ !! isLink ? (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref={ postPermalink }\n\t\t\t\t\t\ttarget={ linkTarget }\n\t\t\t\t\t\t{ ...disabledClickProps }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ image }\n\t\t\t\t\t</a>\n\t\t\t\t) : (\n\t\t\t\t\timage\n\t\t\t\t) }\n\t\t\t\t<Overlay\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</figure>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,9 +5,7 @@ import { RangeControl, __experimentalToolsPanelItem as ToolsPanelItem } from '@w
|
|
|
5
5
|
import { withColors, __experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown, __experimentalUseGradient as useGradient, __experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients } from '@wordpress/block-editor';
|
|
6
6
|
import { compose } from '@wordpress/compose';
|
|
7
7
|
import { __ } from '@wordpress/i18n';
|
|
8
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
10
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
9
|
const Overlay = ({
|
|
12
10
|
clientId,
|
|
13
11
|
attributes,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RangeControl","__experimentalToolsPanelItem","ToolsPanelItem","withColors","__experimentalColorGradientSettingsDropdown","ColorGradientSettingsDropdown","__experimentalUseGradient","useGradient","__experimentalUseMultipleOriginColorsAndGradients","useMultipleOriginColorsAndGradients","compose","__","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","Overlay","clientId","attributes","setAttributes","overlayColor","setOverlayColor","dimRatio","gradientValue","setGradient","colorGradientSettings","hasColorsOrGradients","children","__experimentalIsRenderedInSidebar","settings","colorValue","color","label","onColorChange","onGradientChange","isShownByDefault","resetAllFilter","undefined","customOverlayColor","gradient","customGradient","panelId","hasValue","onDeselect","__nextHasNoMarginBottom","value","onChange","newDimRatio","min","max","step","required","__next40pxDefaultSize"],"sources":["@wordpress/block-library/src/post-featured-image/overlay-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tRangeControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\twithColors,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseGradient as useGradient,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n} from '@wordpress/block-editor';\nimport { compose } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\nconst Overlay = ( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\toverlayColor,\n\tsetOverlayColor,\n} ) => {\n\tconst { dimRatio } = attributes;\n\tconst { gradientValue, setGradient } = useGradient();\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\n\tif ( ! colorGradientSettings.hasColorsOrGradients ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\tsettings={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\tlabel: __( 'Overlay' ),\n\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\tisShownByDefault: true,\n\t\t\t\t\t\tresetAllFilter: () => ( {\n\t\t\t\t\t\t\toverlayColor: undefined,\n\t\t\t\t\t\t\tcustomOverlayColor: undefined,\n\t\t\t\t\t\t\tgradient: undefined,\n\t\t\t\t\t\t\tcustomGradient: undefined,\n\t\t\t\t\t\t} ),\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t\tpanelId={ clientId }\n\t\t\t\t{ ...colorGradientSettings }\n\t\t\t/>\n\t\t\t<ToolsPanelItem\n\t\t\t\thasValue={ () => dimRatio !== undefined }\n\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { dimRatio: 0 } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\tdimRatio: 0,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<RangeControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\tonChange={ ( newDimRatio ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tdimRatio: newDimRatio,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tmax={ 100 }\n\t\t\t\t\tstep={ 10 }\n\t\t\t\t\trequired\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t</>\n\t);\n};\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( Overlay );\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,YAAY,EACZC,4BAA4B,IAAIC,cAAc,QACxC,uBAAuB;AAC9B,SACCC,UAAU,EACVC,2CAA2C,IAAIC,6BAA6B,EAC5EC,yBAAyB,IAAIC,WAAW,EACxCC,iDAAiD,IAAIC,mCAAmC,QAClF,yBAAyB;AAChC,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,EAAE,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA
|
|
1
|
+
{"version":3,"names":["RangeControl","__experimentalToolsPanelItem","ToolsPanelItem","withColors","__experimentalColorGradientSettingsDropdown","ColorGradientSettingsDropdown","__experimentalUseGradient","useGradient","__experimentalUseMultipleOriginColorsAndGradients","useMultipleOriginColorsAndGradients","compose","__","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","Overlay","clientId","attributes","setAttributes","overlayColor","setOverlayColor","dimRatio","gradientValue","setGradient","colorGradientSettings","hasColorsOrGradients","children","__experimentalIsRenderedInSidebar","settings","colorValue","color","label","onColorChange","onGradientChange","isShownByDefault","resetAllFilter","undefined","customOverlayColor","gradient","customGradient","panelId","hasValue","onDeselect","__nextHasNoMarginBottom","value","onChange","newDimRatio","min","max","step","required","__next40pxDefaultSize"],"sources":["@wordpress/block-library/src/post-featured-image/overlay-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tRangeControl,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport {\n\twithColors,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseGradient as useGradient,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n} from '@wordpress/block-editor';\nimport { compose } from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\n\nconst Overlay = ( {\n\tclientId,\n\tattributes,\n\tsetAttributes,\n\toverlayColor,\n\tsetOverlayColor,\n} ) => {\n\tconst { dimRatio } = attributes;\n\tconst { gradientValue, setGradient } = useGradient();\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\n\tif ( ! colorGradientSettings.hasColorsOrGradients ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\tsettings={ [\n\t\t\t\t\t{\n\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\tlabel: __( 'Overlay' ),\n\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\tisShownByDefault: true,\n\t\t\t\t\t\tresetAllFilter: () => ( {\n\t\t\t\t\t\t\toverlayColor: undefined,\n\t\t\t\t\t\t\tcustomOverlayColor: undefined,\n\t\t\t\t\t\t\tgradient: undefined,\n\t\t\t\t\t\t\tcustomGradient: undefined,\n\t\t\t\t\t\t} ),\n\t\t\t\t\t},\n\t\t\t\t] }\n\t\t\t\tpanelId={ clientId }\n\t\t\t\t{ ...colorGradientSettings }\n\t\t\t/>\n\t\t\t<ToolsPanelItem\n\t\t\t\thasValue={ () => dimRatio !== undefined }\n\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\tonDeselect={ () => setAttributes( { dimRatio: 0 } ) }\n\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\tdimRatio: 0,\n\t\t\t\t} ) }\n\t\t\t\tisShownByDefault\n\t\t\t\tpanelId={ clientId }\n\t\t\t>\n\t\t\t\t<RangeControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\tonChange={ ( newDimRatio ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tdimRatio: newDimRatio,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tmin={ 0 }\n\t\t\t\t\tmax={ 100 }\n\t\t\t\t\tstep={ 10 }\n\t\t\t\t\trequired\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t/>\n\t\t\t</ToolsPanelItem>\n\t\t</>\n\t);\n};\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( Overlay );\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,YAAY,EACZC,4BAA4B,IAAIC,cAAc,QACxC,uBAAuB;AAC9B,SACCC,UAAU,EACVC,2CAA2C,IAAIC,6BAA6B,EAC5EC,yBAAyB,IAAIC,WAAW,EACxCC,iDAAiD,IAAIC,mCAAmC,QAClF,yBAAyB;AAChC,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,EAAE,QAAQ,iBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAErC,MAAMC,OAAO,GAAGA,CAAE;EACjBC,QAAQ;EACRC,UAAU;EACVC,aAAa;EACbC,YAAY;EACZC;AACD,CAAC,KAAM;EACN,MAAM;IAAEC;EAAS,CAAC,GAAGJ,UAAU;EAC/B,MAAM;IAAEK,aAAa;IAAEC;EAAY,CAAC,GAAGnB,WAAW,CAAC,CAAC;EACpD,MAAMoB,qBAAqB,GAAGlB,mCAAmC,CAAC,CAAC;EAEnE,IAAK,CAAEkB,qBAAqB,CAACC,oBAAoB,EAAG;IACnD,OAAO,IAAI;EACZ;EAEA,oBACCX,KAAA,CAAAF,SAAA;IAAAc,QAAA,gBACChB,IAAA,CAACR,6BAA6B;MAC7ByB,iCAAiC;MACjCC,QAAQ,EAAG,CACV;QACCC,UAAU,EAAEV,YAAY,CAACW,KAAK;QAC9BR,aAAa;QACbS,KAAK,EAAEvB,EAAE,CAAE,SAAU,CAAC;QACtBwB,aAAa,EAAEZ,eAAe;QAC9Ba,gBAAgB,EAAEV,WAAW;QAC7BW,gBAAgB,EAAE,IAAI;QACtBC,cAAc,EAAEA,CAAA,MAAQ;UACvBhB,YAAY,EAAEiB,SAAS;UACvBC,kBAAkB,EAAED,SAAS;UAC7BE,QAAQ,EAAEF,SAAS;UACnBG,cAAc,EAAEH;QACjB,CAAC;MACF,CAAC,CACC;MACHI,OAAO,EAAGxB,QAAU;MAAA,GACfQ;IAAqB,CAC1B,CAAC,eACFd,IAAA,CAACX,cAAc;MACd0C,QAAQ,EAAGA,CAAA,KAAMpB,QAAQ,KAAKe,SAAW;MACzCL,KAAK,EAAGvB,EAAE,CAAE,iBAAkB,CAAG;MACjCkC,UAAU,EAAGA,CAAA,KAAMxB,aAAa,CAAE;QAAEG,QAAQ,EAAE;MAAE,CAAE,CAAG;MACrDc,cAAc,EAAGA,CAAA,MAAQ;QACxBd,QAAQ,EAAE;MACX,CAAC,CAAI;MACLa,gBAAgB;MAChBM,OAAO,EAAGxB,QAAU;MAAAU,QAAA,eAEpBhB,IAAA,CAACb,YAAY;QACZ8C,uBAAuB;QACvBZ,KAAK,EAAGvB,EAAE,CAAE,iBAAkB,CAAG;QACjCoC,KAAK,EAAGvB,QAAU;QAClBwB,QAAQ,EAAKC,WAAW,IACvB5B,aAAa,CAAE;UACdG,QAAQ,EAAEyB;QACX,CAAE,CACF;QACDC,GAAG,EAAG,CAAG;QACTC,GAAG,EAAG,GAAK;QACXC,IAAI,EAAG,EAAI;QACXC,QAAQ;QACRC,qBAAqB;MAAA,CACrB;IAAC,CACa,CAAC;EAAA,CAChB,CAAC;AAEL,CAAC;AAED,eAAe5C,OAAO,CAAE,CACvBP,UAAU,CAAE;EAAEmB,YAAY,EAAE;AAAmB,CAAE,CAAC,CACjD,CAAC,CAAEJ,OAAQ,CAAC","ignoreList":[]}
|
|
@@ -11,9 +11,7 @@ import { InspectorControls, RichText, BlockControls, AlignmentToolbar, useBlockP
|
|
|
11
11
|
import { __, _x } from '@wordpress/i18n';
|
|
12
12
|
import { useSelect } from '@wordpress/data';
|
|
13
13
|
import { store as coreStore } from '@wordpress/core-data';
|
|
14
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
16
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
14
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
17
15
|
export default function PostNavigationLinkEdit({
|
|
18
16
|
context: {
|
|
19
17
|
postType
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","ToggleControl","SelectControl","PanelBody","InspectorControls","RichText","BlockControls","AlignmentToolbar","useBlockProps","__","_x","useSelect","store","coreStore","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","PostNavigationLinkEdit","context","postType","attributes","type","label","showTitle","textAlign","linkLabel","arrow","taxonomy","setAttributes","isNext","placeholder","arrowMap","none","chevron","displayArrow","ariaLabel","blockProps","className","taxonomies","select","getTaxonomies","filteredTaxonomies","per_page","getTaxonomyOptions","selectOption","value","taxonomyOptions","filter","visibility","publicly_queryable","map","item","slug","name","children","__nextHasNoMarginBottom","help","checked","onChange","__next40pxDefaultSize","isBlock","group","options","nextAlign","tagName","identifier","allowedFormats","newLabel","href","onClick","event","preventDefault"],"sources":["@wordpress/block-library/src/post-navigation-link/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tToggleControl,\n\tSelectControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tRichText,\n\tBlockControls,\n\tAlignmentToolbar,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { __, _x } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\nexport default function PostNavigationLinkEdit( {\n\tcontext: { postType },\n\tattributes: {\n\t\ttype,\n\t\tlabel,\n\t\tshowTitle,\n\t\ttextAlign,\n\t\tlinkLabel,\n\t\tarrow,\n\t\ttaxonomy,\n\t},\n\tsetAttributes,\n} ) {\n\tconst isNext = type === 'next';\n\tlet placeholder = isNext ? __( 'Next' ) : __( 'Previous' );\n\n\tconst arrowMap = {\n\t\tnone: '',\n\t\tarrow: isNext ? '→' : '←',\n\t\tchevron: isNext ? '»' : '«',\n\t};\n\n\tconst displayArrow = arrowMap[ arrow ];\n\n\tif ( showTitle ) {\n\t\tplaceholder = isNext\n\t\t\t? /* translators: Label before for next and previous post. There is a space after the colon. */\n\t\t\t __( 'Next: ' ) // eslint-disable-line @wordpress/i18n-no-flanking-whitespace\n\t\t\t: /* translators: Label before for next and previous post. There is a space after the colon. */\n\t\t\t __( 'Previous: ' ); // eslint-disable-line @wordpress/i18n-no-flanking-whitespace\n\t}\n\n\tconst ariaLabel = isNext ? __( 'Next post' ) : __( 'Previous post' );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tconst taxonomies = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getTaxonomies } = select( coreStore );\n\t\t\tconst filteredTaxonomies = getTaxonomies( {\n\t\t\t\ttype: postType,\n\t\t\t\tper_page: -1,\n\t\t\t} );\n\t\t\treturn filteredTaxonomies;\n\t\t},\n\t\t[ postType ]\n\t);\n\tconst getTaxonomyOptions = () => {\n\t\tconst selectOption = {\n\t\t\tlabel: __( 'Unfiltered' ),\n\t\t\tvalue: '',\n\t\t};\n\t\tconst taxonomyOptions = ( taxonomies ?? [] )\n\t\t\t.filter( ( { visibility } ) => !! visibility?.publicly_queryable )\n\t\t\t.map( ( item ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: item.slug,\n\t\t\t\t\tlabel: item.name,\n\t\t\t\t};\n\t\t\t} );\n\n\t\treturn [ selectOption, ...taxonomyOptions ];\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display the title as a link' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'If you have entered a custom label, it will be prepended before the title.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ !! showTitle }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowTitle: ! showTitle,\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{ showTitle && (\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={ __(\n\t\t\t\t\t\t\t\t'Include the label as part of the link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tchecked={ !! linkLabel }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tlinkLabel: ! linkLabel,\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<ToggleGroupControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Arrow' ) }\n\t\t\t\t\t\tvalue={ arrow }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetAttributes( { arrow: value } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'A decorative arrow for the next and previous link.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"none\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'None',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"arrow\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Arrow',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"chevron\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Chevron',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Filter by taxonomy' ) }\n\t\t\t\t\tvalue={ taxonomy }\n\t\t\t\t\toptions={ getTaxonomyOptions() }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\ttaxonomy: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Only link to posts that have the same taxonomy terms as the current post. For example the same tags or categories.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ ! isNext && displayArrow && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ `wp-block-post-navigation-link__arrow-previous is-arrow-${ arrow }` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ displayArrow }\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t\t<RichText\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\taria-label={ ariaLabel }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tallowedFormats={ [ 'core/bold', 'core/italic' ] }\n\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\tsetAttributes( { label: newLabel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ showTitle && (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref=\"#post-navigation-pseudo-link\"\n\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'An example title' ) }\n\t\t\t\t\t</a>\n\t\t\t\t) }\n\t\t\t\t{ isNext && displayArrow && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ `wp-block-post-navigation-link__arrow-next is-arrow-${ arrow }` }\n\t\t\t\t\t\taria-hidden\n\t\t\t\t\t>\n\t\t\t\t\t\t{ displayArrow }\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","ToggleControl","SelectControl","PanelBody","InspectorControls","RichText","BlockControls","AlignmentToolbar","useBlockProps","__","_x","useSelect","store","coreStore","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","PostNavigationLinkEdit","context","postType","attributes","type","label","showTitle","textAlign","linkLabel","arrow","taxonomy","setAttributes","isNext","placeholder","arrowMap","none","chevron","displayArrow","ariaLabel","blockProps","className","taxonomies","select","getTaxonomies","filteredTaxonomies","per_page","getTaxonomyOptions","selectOption","value","taxonomyOptions","filter","visibility","publicly_queryable","map","item","slug","name","children","__nextHasNoMarginBottom","help","checked","onChange","__next40pxDefaultSize","isBlock","group","options","nextAlign","tagName","identifier","allowedFormats","newLabel","href","onClick","event","preventDefault"],"sources":["@wordpress/block-library/src/post-navigation-link/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tToggleControl,\n\tSelectControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tRichText,\n\tBlockControls,\n\tAlignmentToolbar,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { __, _x } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\n\nexport default function PostNavigationLinkEdit( {\n\tcontext: { postType },\n\tattributes: {\n\t\ttype,\n\t\tlabel,\n\t\tshowTitle,\n\t\ttextAlign,\n\t\tlinkLabel,\n\t\tarrow,\n\t\ttaxonomy,\n\t},\n\tsetAttributes,\n} ) {\n\tconst isNext = type === 'next';\n\tlet placeholder = isNext ? __( 'Next' ) : __( 'Previous' );\n\n\tconst arrowMap = {\n\t\tnone: '',\n\t\tarrow: isNext ? '→' : '←',\n\t\tchevron: isNext ? '»' : '«',\n\t};\n\n\tconst displayArrow = arrowMap[ arrow ];\n\n\tif ( showTitle ) {\n\t\tplaceholder = isNext\n\t\t\t? /* translators: Label before for next and previous post. There is a space after the colon. */\n\t\t\t __( 'Next: ' ) // eslint-disable-line @wordpress/i18n-no-flanking-whitespace\n\t\t\t: /* translators: Label before for next and previous post. There is a space after the colon. */\n\t\t\t __( 'Previous: ' ); // eslint-disable-line @wordpress/i18n-no-flanking-whitespace\n\t}\n\n\tconst ariaLabel = isNext ? __( 'Next post' ) : __( 'Previous post' );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\tconst taxonomies = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getTaxonomies } = select( coreStore );\n\t\t\tconst filteredTaxonomies = getTaxonomies( {\n\t\t\t\ttype: postType,\n\t\t\t\tper_page: -1,\n\t\t\t} );\n\t\t\treturn filteredTaxonomies;\n\t\t},\n\t\t[ postType ]\n\t);\n\tconst getTaxonomyOptions = () => {\n\t\tconst selectOption = {\n\t\t\tlabel: __( 'Unfiltered' ),\n\t\t\tvalue: '',\n\t\t};\n\t\tconst taxonomyOptions = ( taxonomies ?? [] )\n\t\t\t.filter( ( { visibility } ) => !! visibility?.publicly_queryable )\n\t\t\t.map( ( item ) => {\n\t\t\t\treturn {\n\t\t\t\t\tvalue: item.slug,\n\t\t\t\t\tlabel: item.name,\n\t\t\t\t};\n\t\t\t} );\n\n\t\treturn [ selectOption, ...taxonomyOptions ];\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display the title as a link' ) }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'If you have entered a custom label, it will be prepended before the title.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tchecked={ !! showTitle }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowTitle: ! showTitle,\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{ showTitle && (\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={ __(\n\t\t\t\t\t\t\t\t'Include the label as part of the link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tchecked={ !! linkLabel }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tlinkLabel: ! linkLabel,\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<ToggleGroupControl\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Arrow' ) }\n\t\t\t\t\t\tvalue={ arrow }\n\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\tsetAttributes( { arrow: value } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t'A decorative arrow for the next and previous link.'\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tisBlock\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"none\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'None',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"arrow\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Arrow',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\tvalue=\"chevron\"\n\t\t\t\t\t\t\tlabel={ _x(\n\t\t\t\t\t\t\t\t'Chevron',\n\t\t\t\t\t\t\t\t'Arrow option for Next/Previous link'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Filter by taxonomy' ) }\n\t\t\t\t\tvalue={ taxonomy }\n\t\t\t\t\toptions={ getTaxonomyOptions() }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\ttaxonomy: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t'Only link to posts that have the same taxonomy terms as the current post. For example the same tags or categories.'\n\t\t\t\t\t) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ ! isNext && displayArrow && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ `wp-block-post-navigation-link__arrow-previous is-arrow-${ arrow }` }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ displayArrow }\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t\t<RichText\n\t\t\t\t\ttagName=\"a\"\n\t\t\t\t\tidentifier=\"label\"\n\t\t\t\t\taria-label={ ariaLabel }\n\t\t\t\t\tplaceholder={ placeholder }\n\t\t\t\t\tvalue={ label }\n\t\t\t\t\tallowedFormats={ [ 'core/bold', 'core/italic' ] }\n\t\t\t\t\tonChange={ ( newLabel ) =>\n\t\t\t\t\t\tsetAttributes( { label: newLabel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ showTitle && (\n\t\t\t\t\t<a\n\t\t\t\t\t\thref=\"#post-navigation-pseudo-link\"\n\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'An example title' ) }\n\t\t\t\t\t</a>\n\t\t\t\t) }\n\t\t\t\t{ isNext && displayArrow && (\n\t\t\t\t\t<span\n\t\t\t\t\t\tclassName={ `wp-block-post-navigation-link__arrow-next is-arrow-${ arrow }` }\n\t\t\t\t\t\taria-hidden\n\t\t\t\t\t>\n\t\t\t\t\t\t{ displayArrow }\n\t\t\t\t\t</span>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,9 +13,7 @@ import { BlockControls, BlockContextProvider, __experimentalUseBlockPreview as u
|
|
|
13
13
|
import { Spinner, ToolbarGroup } from '@wordpress/components';
|
|
14
14
|
import { store as coreStore } from '@wordpress/core-data';
|
|
15
15
|
import { list, grid } from '@wordpress/icons';
|
|
16
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
17
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
16
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
19
17
|
const TEMPLATE = [['core/post-title'], ['core/post-date'], ['core/post-excerpt']];
|
|
20
18
|
function PostTemplateInnerBlocks({
|
|
21
19
|
classList
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","memo","useMemo","useState","useSelect","__","_x","BlockControls","BlockContextProvider","__experimentalUseBlockPreview","useBlockPreview","useBlockProps","useInnerBlocksProps","store","blockEditorStore","Spinner","ToolbarGroup","coreStore","list","grid","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","TEMPLATE","PostTemplateInnerBlocks","classList","innerBlocksProps","className","template","__unstableDisableLayoutClassNames","PostTemplateBlockPreview","blocks","blockContextId","isHidden","setActiveBlockContextId","blockPreviewProps","props","handleOnClick","style","display","undefined","tabIndex","role","onClick","onKeyPress","MemoizedPostTemplateBlockPreview","PostTemplateEdit","setAttributes","clientId","context","query","perPage","offset","postType","order","orderBy","author","search","exclude","sticky","inherit","taxQuery","parents","pages","format","restQueryArgs","templateSlug","previewPostType","attributes","layout","__unstableLayoutClassNames","type","layoutType","columnCount","activeBlockContextId","posts","select","getEntityRecords","getTaxonomies","getBlocks","templateCategory","startsWith","per_page","_fields","slug","replace","orderby","taxonomies","builtTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","taxonomy","find","rest_base","keys","length","assign","parent","categories","id","usedPostType","blockContexts","map","post","_post$class_list","postId","class_list","blockProps","children","setDisplayLayout","newDisplayLayout","displayLayoutControls","icon","title","isActive","controls","blockContext","value"],"sources":["@wordpress/block-library/src/post-template/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { memo, useMemo, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tBlockContextProvider,\n\t__experimentalUseBlockPreview as useBlockPreview,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Spinner, ToolbarGroup } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { list, grid } from '@wordpress/icons';\n\nconst TEMPLATE = [\n\t[ 'core/post-title' ],\n\t[ 'core/post-date' ],\n\t[ 'core/post-excerpt' ],\n];\n\nfunction PostTemplateInnerBlocks( { classList } ) {\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{ className: clsx( 'wp-block-post', classList ) },\n\t\t{ template: TEMPLATE, __unstableDisableLayoutClassNames: true }\n\t);\n\treturn <li { ...innerBlocksProps } />;\n}\n\nfunction PostTemplateBlockPreview( {\n\tblocks,\n\tblockContextId,\n\tclassList,\n\tisHidden,\n\tsetActiveBlockContextId,\n} ) {\n\tconst blockPreviewProps = useBlockPreview( {\n\t\tblocks,\n\t\tprops: {\n\t\t\tclassName: clsx( 'wp-block-post', classList ),\n\t\t},\n\t} );\n\n\tconst handleOnClick = () => {\n\t\tsetActiveBlockContextId( blockContextId );\n\t};\n\n\tconst style = {\n\t\tdisplay: isHidden ? 'none' : undefined,\n\t};\n\n\treturn (\n\t\t<li\n\t\t\t{ ...blockPreviewProps }\n\t\t\ttabIndex={ 0 }\n\t\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role\n\t\t\trole=\"button\"\n\t\t\tonClick={ handleOnClick }\n\t\t\tonKeyPress={ handleOnClick }\n\t\t\tstyle={ style }\n\t\t/>\n\t);\n}\n\nconst MemoizedPostTemplateBlockPreview = memo( PostTemplateBlockPreview );\n\nexport default function PostTemplateEdit( {\n\tsetAttributes,\n\tclientId,\n\tcontext: {\n\t\tquery: {\n\t\t\tperPage,\n\t\t\toffset = 0,\n\t\t\tpostType,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tpages,\n\t\t\tformat,\n\t\t\t// We gather extra query args to pass to the REST API call.\n\t\t\t// This way extenders of Query Loop can add their own query args,\n\t\t\t// and have accurate previews in the editor.\n\t\t\t// Noting though that these args should either be supported by the\n\t\t\t// REST API or be handled by custom REST filters like `rest_{$this->post_type}_query`.\n\t\t\t...restQueryArgs\n\t\t} = {},\n\t\ttemplateSlug,\n\t\tpreviewPostType,\n\t},\n\tattributes: { layout },\n\t__unstableLayoutClassNames,\n} ) {\n\tconst { type: layoutType, columnCount = 3 } = layout || {};\n\tconst [ activeBlockContextId, setActiveBlockContextId ] = useState();\n\tconst { posts, blocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomies } = select( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\t\t\tconst templateCategory =\n\t\t\t\tinherit &&\n\t\t\t\ttemplateSlug?.startsWith( 'category-' ) &&\n\t\t\t\tgetEntityRecords( 'taxonomy', 'category', {\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t\tper_page: 1,\n\t\t\t\t\t_fields: [ 'id' ],\n\t\t\t\t\tslug: templateSlug.replace( 'category-', '' ),\n\t\t\t\t} );\n\t\t\tconst query = {\n\t\t\t\toffset: offset || 0,\n\t\t\t\torder,\n\t\t\t\torderby: orderBy,\n\t\t\t};\n\t\t\t// There is no need to build the taxQuery if we inherit.\n\t\t\tif ( taxQuery && ! inherit ) {\n\t\t\t\tconst taxonomies = getTaxonomies( {\n\t\t\t\t\ttype: postType,\n\t\t\t\t\tper_page: -1,\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t} );\n\t\t\t\t// We have to build the tax query for the REST API and use as\n\t\t\t\t// keys the taxonomies `rest_base` with the `term ids` as values.\n\t\t\t\tconst builtTaxQuery = Object.entries( taxQuery ).reduce(\n\t\t\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\t\t\tconst taxonomy = taxonomies?.find(\n\t\t\t\t\t\t\t( { slug } ) => slug === taxonomySlug\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( taxonomy?.rest_base ) {\n\t\t\t\t\t\t\taccumulator[ taxonomy?.rest_base ] = terms;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn accumulator;\n\t\t\t\t\t},\n\t\t\t\t\t{}\n\t\t\t\t);\n\t\t\t\tif ( !! Object.keys( builtTaxQuery ).length ) {\n\t\t\t\t\tObject.assign( query, builtTaxQuery );\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( perPage ) {\n\t\t\t\tquery.per_page = perPage;\n\t\t\t}\n\t\t\tif ( author ) {\n\t\t\t\tquery.author = author;\n\t\t\t}\n\t\t\tif ( search ) {\n\t\t\t\tquery.search = search;\n\t\t\t}\n\t\t\tif ( exclude?.length ) {\n\t\t\t\tquery.exclude = exclude;\n\t\t\t}\n\t\t\tif ( parents?.length ) {\n\t\t\t\tquery.parent = parents;\n\t\t\t}\n\t\t\tif ( format?.length ) {\n\t\t\t\tquery.format = format;\n\t\t\t}\n\n\t\t\t// If sticky is not set, it will return all posts in the results.\n\t\t\t// If sticky is set to `only`, it will limit the results to sticky posts only.\n\t\t\t// If it is anything else, it will exclude sticky posts from results. For the record the value stored is `exclude`.\n\t\t\tif ( sticky ) {\n\t\t\t\tquery.sticky = sticky === 'only';\n\t\t\t}\n\t\t\t// If `inherit` is truthy, adjust conditionally the query to create a better preview.\n\t\t\tif ( inherit ) {\n\t\t\t\t// Change the post-type if needed.\n\t\t\t\tif ( templateSlug?.startsWith( 'archive-' ) ) {\n\t\t\t\t\tquery.postType = templateSlug.replace( 'archive-', '' );\n\t\t\t\t\tpostType = query.postType;\n\t\t\t\t} else if ( templateCategory ) {\n\t\t\t\t\tquery.categories = templateCategory[ 0 ]?.id;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// When we preview Query Loop blocks we should prefer the current\n\t\t\t// block's postType, which is passed through block context.\n\t\t\tconst usedPostType = previewPostType || postType;\n\t\t\treturn {\n\t\t\t\tposts: getEntityRecords( 'postType', usedPostType, {\n\t\t\t\t\t...query,\n\t\t\t\t\t...restQueryArgs,\n\t\t\t\t} ),\n\t\t\t\tblocks: getBlocks( clientId ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tperPage,\n\t\t\toffset,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tclientId,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\tpostType,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttemplateSlug,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tformat,\n\t\t\trestQueryArgs,\n\t\t\tpreviewPostType,\n\t\t]\n\t);\n\tconst blockContexts = useMemo(\n\t\t() =>\n\t\t\tposts?.map( ( post ) => ( {\n\t\t\t\tpostType: post.type,\n\t\t\t\tpostId: post.id,\n\t\t\t\tclassList: post.class_list ?? '',\n\t\t\t} ) ),\n\t\t[ posts ]\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( __unstableLayoutClassNames, {\n\t\t\t[ `columns-${ columnCount }` ]:\n\t\t\t\tlayoutType === 'grid' && columnCount, // Ensure column count is flagged via classname for backwards compatibility.\n\t\t} ),\n\t} );\n\n\tif ( ! posts ) {\n\t\treturn (\n\t\t\t<p { ...blockProps }>\n\t\t\t\t<Spinner />\n\t\t\t</p>\n\t\t);\n\t}\n\n\tif ( ! posts.length ) {\n\t\treturn <p { ...blockProps }> { __( 'No results found.' ) }</p>;\n\t}\n\n\tconst setDisplayLayout = ( newDisplayLayout ) =>\n\t\tsetAttributes( {\n\t\t\tlayout: { ...layout, ...newDisplayLayout },\n\t\t} );\n\n\tconst displayLayoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: _x( 'List view', 'Post template block display setting' ),\n\t\t\tonClick: () => setDisplayLayout( { type: 'default' } ),\n\t\t\tisActive: layoutType === 'default' || layoutType === 'constrained',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: _x( 'Grid view', 'Post template block display setting' ),\n\t\t\tonClick: () =>\n\t\t\t\tsetDisplayLayout( {\n\t\t\t\t\ttype: 'grid',\n\t\t\t\t\tcolumnCount,\n\t\t\t\t} ),\n\t\t\tisActive: layoutType === 'grid',\n\t\t},\n\t];\n\n\t// To avoid flicker when switching active block contexts, a preview is rendered\n\t// for each block context, but the preview for the active block context is hidden.\n\t// This ensures that when it is displayed again, the cached rendering of the\n\t// block preview is used, instead of having to re-render the preview from scratch.\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ displayLayoutControls } />\n\t\t\t</BlockControls>\n\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ blockContexts &&\n\t\t\t\t\tblockContexts.map( ( blockContext ) => (\n\t\t\t\t\t\t<BlockContextProvider\n\t\t\t\t\t\t\tkey={ blockContext.postId }\n\t\t\t\t\t\t\tvalue={ blockContext }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ blockContext.postId ===\n\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId ) ? (\n\t\t\t\t\t\t\t\t<PostTemplateInnerBlocks\n\t\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : null }\n\t\t\t\t\t\t\t<MemoizedPostTemplateBlockPreview\n\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\tblockContextId={ blockContext.postId }\n\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\tsetActiveBlockContextId={\n\t\t\t\t\t\t\t\t\tsetActiveBlockContextId\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisHidden={\n\t\t\t\t\t\t\t\t\tblockContext.postId ===\n\t\t\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BlockContextProvider>\n\t\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","memo","useMemo","useState","useSelect","__","_x","BlockControls","BlockContextProvider","__experimentalUseBlockPreview","useBlockPreview","useBlockProps","useInnerBlocksProps","store","blockEditorStore","Spinner","ToolbarGroup","coreStore","list","grid","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","TEMPLATE","PostTemplateInnerBlocks","classList","innerBlocksProps","className","template","__unstableDisableLayoutClassNames","PostTemplateBlockPreview","blocks","blockContextId","isHidden","setActiveBlockContextId","blockPreviewProps","props","handleOnClick","style","display","undefined","tabIndex","role","onClick","onKeyPress","MemoizedPostTemplateBlockPreview","PostTemplateEdit","setAttributes","clientId","context","query","perPage","offset","postType","order","orderBy","author","search","exclude","sticky","inherit","taxQuery","parents","pages","format","restQueryArgs","templateSlug","previewPostType","attributes","layout","__unstableLayoutClassNames","type","layoutType","columnCount","activeBlockContextId","posts","select","getEntityRecords","getTaxonomies","getBlocks","templateCategory","startsWith","per_page","_fields","slug","replace","orderby","taxonomies","builtTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","taxonomy","find","rest_base","keys","length","assign","parent","categories","id","usedPostType","blockContexts","map","post","_post$class_list","postId","class_list","blockProps","children","setDisplayLayout","newDisplayLayout","displayLayoutControls","icon","title","isActive","controls","blockContext","value"],"sources":["@wordpress/block-library/src/post-template/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { memo, useMemo, useState } from '@wordpress/element';\nimport { useSelect } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tBlockControls,\n\tBlockContextProvider,\n\t__experimentalUseBlockPreview as useBlockPreview,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { Spinner, ToolbarGroup } from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { list, grid } from '@wordpress/icons';\n\nconst TEMPLATE = [\n\t[ 'core/post-title' ],\n\t[ 'core/post-date' ],\n\t[ 'core/post-excerpt' ],\n];\n\nfunction PostTemplateInnerBlocks( { classList } ) {\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{ className: clsx( 'wp-block-post', classList ) },\n\t\t{ template: TEMPLATE, __unstableDisableLayoutClassNames: true }\n\t);\n\treturn <li { ...innerBlocksProps } />;\n}\n\nfunction PostTemplateBlockPreview( {\n\tblocks,\n\tblockContextId,\n\tclassList,\n\tisHidden,\n\tsetActiveBlockContextId,\n} ) {\n\tconst blockPreviewProps = useBlockPreview( {\n\t\tblocks,\n\t\tprops: {\n\t\t\tclassName: clsx( 'wp-block-post', classList ),\n\t\t},\n\t} );\n\n\tconst handleOnClick = () => {\n\t\tsetActiveBlockContextId( blockContextId );\n\t};\n\n\tconst style = {\n\t\tdisplay: isHidden ? 'none' : undefined,\n\t};\n\n\treturn (\n\t\t<li\n\t\t\t{ ...blockPreviewProps }\n\t\t\ttabIndex={ 0 }\n\t\t\t// eslint-disable-next-line jsx-a11y/no-noninteractive-element-to-interactive-role\n\t\t\trole=\"button\"\n\t\t\tonClick={ handleOnClick }\n\t\t\tonKeyPress={ handleOnClick }\n\t\t\tstyle={ style }\n\t\t/>\n\t);\n}\n\nconst MemoizedPostTemplateBlockPreview = memo( PostTemplateBlockPreview );\n\nexport default function PostTemplateEdit( {\n\tsetAttributes,\n\tclientId,\n\tcontext: {\n\t\tquery: {\n\t\t\tperPage,\n\t\t\toffset = 0,\n\t\t\tpostType,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tpages,\n\t\t\tformat,\n\t\t\t// We gather extra query args to pass to the REST API call.\n\t\t\t// This way extenders of Query Loop can add their own query args,\n\t\t\t// and have accurate previews in the editor.\n\t\t\t// Noting though that these args should either be supported by the\n\t\t\t// REST API or be handled by custom REST filters like `rest_{$this->post_type}_query`.\n\t\t\t...restQueryArgs\n\t\t} = {},\n\t\ttemplateSlug,\n\t\tpreviewPostType,\n\t},\n\tattributes: { layout },\n\t__unstableLayoutClassNames,\n} ) {\n\tconst { type: layoutType, columnCount = 3 } = layout || {};\n\tconst [ activeBlockContextId, setActiveBlockContextId ] = useState();\n\tconst { posts, blocks } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomies } = select( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\t\t\tconst templateCategory =\n\t\t\t\tinherit &&\n\t\t\t\ttemplateSlug?.startsWith( 'category-' ) &&\n\t\t\t\tgetEntityRecords( 'taxonomy', 'category', {\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t\tper_page: 1,\n\t\t\t\t\t_fields: [ 'id' ],\n\t\t\t\t\tslug: templateSlug.replace( 'category-', '' ),\n\t\t\t\t} );\n\t\t\tconst query = {\n\t\t\t\toffset: offset || 0,\n\t\t\t\torder,\n\t\t\t\torderby: orderBy,\n\t\t\t};\n\t\t\t// There is no need to build the taxQuery if we inherit.\n\t\t\tif ( taxQuery && ! inherit ) {\n\t\t\t\tconst taxonomies = getTaxonomies( {\n\t\t\t\t\ttype: postType,\n\t\t\t\t\tper_page: -1,\n\t\t\t\t\tcontext: 'view',\n\t\t\t\t} );\n\t\t\t\t// We have to build the tax query for the REST API and use as\n\t\t\t\t// keys the taxonomies `rest_base` with the `term ids` as values.\n\t\t\t\tconst builtTaxQuery = Object.entries( taxQuery ).reduce(\n\t\t\t\t\t( accumulator, [ taxonomySlug, terms ] ) => {\n\t\t\t\t\t\tconst taxonomy = taxonomies?.find(\n\t\t\t\t\t\t\t( { slug } ) => slug === taxonomySlug\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif ( taxonomy?.rest_base ) {\n\t\t\t\t\t\t\taccumulator[ taxonomy?.rest_base ] = terms;\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn accumulator;\n\t\t\t\t\t},\n\t\t\t\t\t{}\n\t\t\t\t);\n\t\t\t\tif ( !! Object.keys( builtTaxQuery ).length ) {\n\t\t\t\t\tObject.assign( query, builtTaxQuery );\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( perPage ) {\n\t\t\t\tquery.per_page = perPage;\n\t\t\t}\n\t\t\tif ( author ) {\n\t\t\t\tquery.author = author;\n\t\t\t}\n\t\t\tif ( search ) {\n\t\t\t\tquery.search = search;\n\t\t\t}\n\t\t\tif ( exclude?.length ) {\n\t\t\t\tquery.exclude = exclude;\n\t\t\t}\n\t\t\tif ( parents?.length ) {\n\t\t\t\tquery.parent = parents;\n\t\t\t}\n\t\t\tif ( format?.length ) {\n\t\t\t\tquery.format = format;\n\t\t\t}\n\n\t\t\t// If sticky is not set, it will return all posts in the results.\n\t\t\t// If sticky is set to `only`, it will limit the results to sticky posts only.\n\t\t\t// If it is anything else, it will exclude sticky posts from results. For the record the value stored is `exclude`.\n\t\t\tif ( sticky ) {\n\t\t\t\tquery.sticky = sticky === 'only';\n\t\t\t}\n\t\t\t// If `inherit` is truthy, adjust conditionally the query to create a better preview.\n\t\t\tif ( inherit ) {\n\t\t\t\t// Change the post-type if needed.\n\t\t\t\tif ( templateSlug?.startsWith( 'archive-' ) ) {\n\t\t\t\t\tquery.postType = templateSlug.replace( 'archive-', '' );\n\t\t\t\t\tpostType = query.postType;\n\t\t\t\t} else if ( templateCategory ) {\n\t\t\t\t\tquery.categories = templateCategory[ 0 ]?.id;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// When we preview Query Loop blocks we should prefer the current\n\t\t\t// block's postType, which is passed through block context.\n\t\t\tconst usedPostType = previewPostType || postType;\n\t\t\treturn {\n\t\t\t\tposts: getEntityRecords( 'postType', usedPostType, {\n\t\t\t\t\t...query,\n\t\t\t\t\t...restQueryArgs,\n\t\t\t\t} ),\n\t\t\t\tblocks: getBlocks( clientId ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tperPage,\n\t\t\toffset,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tclientId,\n\t\t\tauthor,\n\t\t\tsearch,\n\t\t\tpostType,\n\t\t\texclude,\n\t\t\tsticky,\n\t\t\tinherit,\n\t\t\ttemplateSlug,\n\t\t\ttaxQuery,\n\t\t\tparents,\n\t\t\tformat,\n\t\t\trestQueryArgs,\n\t\t\tpreviewPostType,\n\t\t]\n\t);\n\tconst blockContexts = useMemo(\n\t\t() =>\n\t\t\tposts?.map( ( post ) => ( {\n\t\t\t\tpostType: post.type,\n\t\t\t\tpostId: post.id,\n\t\t\t\tclassList: post.class_list ?? '',\n\t\t\t} ) ),\n\t\t[ posts ]\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( __unstableLayoutClassNames, {\n\t\t\t[ `columns-${ columnCount }` ]:\n\t\t\t\tlayoutType === 'grid' && columnCount, // Ensure column count is flagged via classname for backwards compatibility.\n\t\t} ),\n\t} );\n\n\tif ( ! posts ) {\n\t\treturn (\n\t\t\t<p { ...blockProps }>\n\t\t\t\t<Spinner />\n\t\t\t</p>\n\t\t);\n\t}\n\n\tif ( ! posts.length ) {\n\t\treturn <p { ...blockProps }> { __( 'No results found.' ) }</p>;\n\t}\n\n\tconst setDisplayLayout = ( newDisplayLayout ) =>\n\t\tsetAttributes( {\n\t\t\tlayout: { ...layout, ...newDisplayLayout },\n\t\t} );\n\n\tconst displayLayoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: _x( 'List view', 'Post template block display setting' ),\n\t\t\tonClick: () => setDisplayLayout( { type: 'default' } ),\n\t\t\tisActive: layoutType === 'default' || layoutType === 'constrained',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: _x( 'Grid view', 'Post template block display setting' ),\n\t\t\tonClick: () =>\n\t\t\t\tsetDisplayLayout( {\n\t\t\t\t\ttype: 'grid',\n\t\t\t\t\tcolumnCount,\n\t\t\t\t} ),\n\t\t\tisActive: layoutType === 'grid',\n\t\t},\n\t];\n\n\t// To avoid flicker when switching active block contexts, a preview is rendered\n\t// for each block context, but the preview for the active block context is hidden.\n\t// This ensures that when it is displayed again, the cached rendering of the\n\t// block preview is used, instead of having to re-render the preview from scratch.\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ displayLayoutControls } />\n\t\t\t</BlockControls>\n\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ blockContexts &&\n\t\t\t\t\tblockContexts.map( ( blockContext ) => (\n\t\t\t\t\t\t<BlockContextProvider\n\t\t\t\t\t\t\tkey={ blockContext.postId }\n\t\t\t\t\t\t\tvalue={ blockContext }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ blockContext.postId ===\n\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId ) ? (\n\t\t\t\t\t\t\t\t<PostTemplateInnerBlocks\n\t\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : null }\n\t\t\t\t\t\t\t<MemoizedPostTemplateBlockPreview\n\t\t\t\t\t\t\t\tblocks={ blocks }\n\t\t\t\t\t\t\t\tblockContextId={ blockContext.postId }\n\t\t\t\t\t\t\t\tclassList={ blockContext.classList }\n\t\t\t\t\t\t\t\tsetActiveBlockContextId={\n\t\t\t\t\t\t\t\t\tsetActiveBlockContextId\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisHidden={\n\t\t\t\t\t\t\t\t\tblockContext.postId ===\n\t\t\t\t\t\t\t\t\t( activeBlockContextId ||\n\t\t\t\t\t\t\t\t\t\tblockContexts[ 0 ]?.postId )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t\t) ) }\n\t\t\t</ul>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -20,9 +20,7 @@ import { store as coreStore } from '@wordpress/core-data';
|
|
|
20
20
|
import usePostTerms from './use-post-terms';
|
|
21
21
|
|
|
22
22
|
// Allowed formats for the prefix and suffix fields.
|
|
23
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
24
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
25
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
23
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
26
24
|
const ALLOWED_FORMATS = ['core/bold', 'core/image', 'core/italic', 'core/link', 'core/strikethrough', 'core/text-color'];
|
|
27
25
|
export default function PostTermsEdit({
|
|
28
26
|
attributes,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","AlignmentToolbar","InspectorControls","BlockControls","useBlockProps","useBlockDisplayInformation","RichText","createBlock","getDefaultBlockName","Spinner","TextControl","useSelect","decodeEntities","__","store","coreStore","usePostTerms","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_FORMATS","PostTermsEdit","attributes","clientId","context","isSelected","setAttributes","insertBlocksAfter","term","textAlign","separator","prefix","suffix","postId","postType","selectedTerm","select","getTaxonomy","taxonomy","visibility","publicly_queryable","postTerms","hasPostTerms","isLoading","hasPost","blockInformation","blockProps","className","children","value","onChange","nextAlign","group","__next40pxDefaultSize","__nextHasNoMarginBottom","autoComplete","label","nextValue","help","identifier","allowedFormats","placeholder","tagName","title","map","postTerm","href","link","onClick","event","preventDefault","name","id","reduce","prev","curr","labels","no_terms","__unstableOnSplitAtEnd"],"sources":["@wordpress/block-library/src/post-terms/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentToolbar,\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tuseBlockDisplayInformation,\n\tRichText,\n} from '@wordpress/block-editor';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { Spinner, TextControl } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport usePostTerms from './use-post-terms';\n\n// Allowed formats for the prefix and suffix fields.\nconst ALLOWED_FORMATS = [\n\t'core/bold',\n\t'core/image',\n\t'core/italic',\n\t'core/link',\n\t'core/strikethrough',\n\t'core/text-color',\n];\n\nexport default function PostTermsEdit( {\n\tattributes,\n\tclientId,\n\tcontext,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst { term, textAlign, separator, prefix, suffix } = attributes;\n\tconst { postId, postType } = context;\n\n\tconst selectedTerm = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! term ) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\tconst { getTaxonomy } = select( coreStore );\n\t\t\tconst taxonomy = getTaxonomy( term );\n\t\t\treturn taxonomy?.visibility?.publicly_queryable ? taxonomy : {};\n\t\t},\n\t\t[ term ]\n\t);\n\tconst { postTerms, hasPostTerms, isLoading } = usePostTerms( {\n\t\tpostId,\n\t\tterm: selectedTerm,\n\t} );\n\tconst hasPost = postId && postType;\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t[ `taxonomy-${ term }` ]: term,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Separator' ) }\n\t\t\t\t\tvalue={ separator || '' }\n\t\t\t\t\tonChange={ ( nextValue ) => {\n\t\t\t\t\t\tsetAttributes( { separator: nextValue } );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __( 'Enter character(s) used to separate terms.' ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ isLoading && hasPost && <Spinner /> }\n\t\t\t\t{ ! isLoading && ( isSelected || prefix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"prefix\"\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__prefix\"\n\t\t\t\t\t\taria-label={ __( 'Prefix' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Prefix' ) + ' ' }\n\t\t\t\t\t\tvalue={ prefix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { prefix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ( ! hasPost || ! term ) && (\n\t\t\t\t\t<span>{ blockInformation.title }</span>\n\t\t\t\t) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\thasPostTerms &&\n\t\t\t\t\tpostTerms\n\t\t\t\t\t\t.map( ( postTerm ) => (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tkey={ postTerm.id }\n\t\t\t\t\t\t\t\thref={ postTerm.link }\n\t\t\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ decodeEntities( postTerm.name ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) )\n\t\t\t\t\t\t.reduce( ( prev, curr ) => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ prev }\n\t\t\t\t\t\t\t\t<span className=\"wp-block-post-terms__separator\">\n\t\t\t\t\t\t\t\t\t{ separator || ' ' }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t{ curr }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) ) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\t! hasPostTerms &&\n\t\t\t\t\t( selectedTerm?.labels?.no_terms ||\n\t\t\t\t\t\t__( 'Term items not found.' ) ) }\n\t\t\t\t{ ! isLoading && ( isSelected || suffix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"suffix\"\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__suffix\"\n\t\t\t\t\t\taria-label={ __( 'Suffix' ) }\n\t\t\t\t\t\tplaceholder={ ' ' + __( 'Suffix' ) }\n\t\t\t\t\t\tvalue={ suffix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { suffix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\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</div>\n\t\t</>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SACCC,gBAAgB,EAChBC,iBAAiB,EACjBC,aAAa,EACbC,aAAa,EACbC,0BAA0B,EAC1BC,QAAQ,QACF,yBAAyB;AAChC,SAASC,WAAW,EAAEC,mBAAmB,QAAQ,mBAAmB;AACpE,SAASC,OAAO,EAAEC,WAAW,QAAQ,uBAAuB;AAC5D,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,cAAc,QAAQ,0BAA0B;AACzD,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;;AAEzD;AACA;AACA;AACA,OAAOC,YAAY,MAAM,kBAAkB;;AAE3C;AAAA,SAAAC,GAAA,IAAAC,IAAA
|
|
1
|
+
{"version":3,"names":["clsx","AlignmentToolbar","InspectorControls","BlockControls","useBlockProps","useBlockDisplayInformation","RichText","createBlock","getDefaultBlockName","Spinner","TextControl","useSelect","decodeEntities","__","store","coreStore","usePostTerms","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ALLOWED_FORMATS","PostTermsEdit","attributes","clientId","context","isSelected","setAttributes","insertBlocksAfter","term","textAlign","separator","prefix","suffix","postId","postType","selectedTerm","select","getTaxonomy","taxonomy","visibility","publicly_queryable","postTerms","hasPostTerms","isLoading","hasPost","blockInformation","blockProps","className","children","value","onChange","nextAlign","group","__next40pxDefaultSize","__nextHasNoMarginBottom","autoComplete","label","nextValue","help","identifier","allowedFormats","placeholder","tagName","title","map","postTerm","href","link","onClick","event","preventDefault","name","id","reduce","prev","curr","labels","no_terms","__unstableOnSplitAtEnd"],"sources":["@wordpress/block-library/src/post-terms/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentToolbar,\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tuseBlockDisplayInformation,\n\tRichText,\n} from '@wordpress/block-editor';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { Spinner, TextControl } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport usePostTerms from './use-post-terms';\n\n// Allowed formats for the prefix and suffix fields.\nconst ALLOWED_FORMATS = [\n\t'core/bold',\n\t'core/image',\n\t'core/italic',\n\t'core/link',\n\t'core/strikethrough',\n\t'core/text-color',\n];\n\nexport default function PostTermsEdit( {\n\tattributes,\n\tclientId,\n\tcontext,\n\tisSelected,\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst { term, textAlign, separator, prefix, suffix } = attributes;\n\tconst { postId, postType } = context;\n\n\tconst selectedTerm = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! term ) {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t\tconst { getTaxonomy } = select( coreStore );\n\t\t\tconst taxonomy = getTaxonomy( term );\n\t\t\treturn taxonomy?.visibility?.publicly_queryable ? taxonomy : {};\n\t\t},\n\t\t[ term ]\n\t);\n\tconst { postTerms, hasPostTerms, isLoading } = usePostTerms( {\n\t\tpostId,\n\t\tterm: selectedTerm,\n\t} );\n\tconst hasPost = postId && postType;\n\tconst blockInformation = useBlockDisplayInformation( clientId );\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t[ `taxonomy-${ term }` ]: term,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<AlignmentToolbar\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tautoComplete=\"off\"\n\t\t\t\t\tlabel={ __( 'Separator' ) }\n\t\t\t\t\tvalue={ separator || '' }\n\t\t\t\t\tonChange={ ( nextValue ) => {\n\t\t\t\t\t\tsetAttributes( { separator: nextValue } );\n\t\t\t\t\t} }\n\t\t\t\t\thelp={ __( 'Enter character(s) used to separate terms.' ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ isLoading && hasPost && <Spinner /> }\n\t\t\t\t{ ! isLoading && ( isSelected || prefix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"prefix\"\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__prefix\"\n\t\t\t\t\t\taria-label={ __( 'Prefix' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Prefix' ) + ' ' }\n\t\t\t\t\t\tvalue={ prefix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { prefix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ( ! hasPost || ! term ) && (\n\t\t\t\t\t<span>{ blockInformation.title }</span>\n\t\t\t\t) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\thasPostTerms &&\n\t\t\t\t\tpostTerms\n\t\t\t\t\t\t.map( ( postTerm ) => (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tkey={ postTerm.id }\n\t\t\t\t\t\t\t\thref={ postTerm.link }\n\t\t\t\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ decodeEntities( postTerm.name ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) )\n\t\t\t\t\t\t.reduce( ( prev, curr ) => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t{ prev }\n\t\t\t\t\t\t\t\t<span className=\"wp-block-post-terms__separator\">\n\t\t\t\t\t\t\t\t\t{ separator || ' ' }\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t{ curr }\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) ) }\n\t\t\t\t{ hasPost &&\n\t\t\t\t\t! isLoading &&\n\t\t\t\t\t! hasPostTerms &&\n\t\t\t\t\t( selectedTerm?.labels?.no_terms ||\n\t\t\t\t\t\t__( 'Term items not found.' ) ) }\n\t\t\t\t{ ! isLoading && ( isSelected || suffix ) && (\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"suffix\"\n\t\t\t\t\t\tallowedFormats={ ALLOWED_FORMATS }\n\t\t\t\t\t\tclassName=\"wp-block-post-terms__suffix\"\n\t\t\t\t\t\taria-label={ __( 'Suffix' ) }\n\t\t\t\t\t\tplaceholder={ ' ' + __( 'Suffix' ) }\n\t\t\t\t\t\tvalue={ suffix }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { suffix: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttagName=\"span\"\n\t\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\t\tinsertBlocksAfter(\n\t\t\t\t\t\t\t\tcreateBlock( getDefaultBlockName() )\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</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -18,9 +18,7 @@ import { count as wordCount } from '@wordpress/wordcount';
|
|
|
18
18
|
* https://irisreading.com/average-reading-speed-in-various-languages/
|
|
19
19
|
* (Characters/minute used for Chinese rather than words).
|
|
20
20
|
*/
|
|
21
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
22
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
23
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
21
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
24
22
|
const AVERAGE_READING_RATE = 189;
|
|
25
23
|
function PostTimeToReadEdit({
|
|
26
24
|
attributes,
|
|
@@ -61,7 +59,7 @@ function PostTimeToReadEdit({
|
|
|
61
59
|
*/
|
|
62
60
|
const wordCountType = _x('words', 'Word count type. Do not translate!');
|
|
63
61
|
const minutesToRead = Math.max(1, Math.round(wordCount(content || '', wordCountType) / AVERAGE_READING_RATE));
|
|
64
|
-
return sprintf(
|
|
62
|
+
return sprintf(/* translators: %d is the number of minutes the post will take to read. */
|
|
65
63
|
_n('%d minute', '%d minutes', minutesToRead), minutesToRead);
|
|
66
64
|
}, [contentStructure, blocks]);
|
|
67
65
|
const blockProps = useBlockProps({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","_x","_n","sprintf","useMemo","AlignmentControl","BlockControls","useBlockProps","__unstableSerializeAndClean","useEntityProp","useEntityBlockEditor","count","wordCount","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","AVERAGE_READING_RATE","PostTimeToReadEdit","attributes","setAttributes","context","textAlign","postId","postType","contentStructure","blocks","id","minutesToReadString","content","Function","wordCountType","minutesToRead","Math","max","round","blockProps","className","children","group","value","onChange","nextAlign"],"sources":["@wordpress/block-library/src/post-time-to-read/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { _x, _n, sprintf } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { __unstableSerializeAndClean } from '@wordpress/blocks';\nimport { useEntityProp, useEntityBlockEditor } from '@wordpress/core-data';\nimport { count as wordCount } from '@wordpress/wordcount';\n\n/**\n * Average reading rate - based on average taken from\n * https://irisreading.com/average-reading-speed-in-various-languages/\n * (Characters/minute used for Chinese rather than words).\n */\nconst AVERAGE_READING_RATE = 189;\n\nfunction PostTimeToReadEdit( { attributes, setAttributes, context } ) {\n\tconst { textAlign } = attributes;\n\tconst { postId, postType } = context;\n\n\tconst [ contentStructure ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'content',\n\t\tpostId\n\t);\n\n\tconst [ blocks ] = useEntityBlockEditor( 'postType', postType, {\n\t\tid: postId,\n\t} );\n\n\tconst minutesToReadString = useMemo( () => {\n\t\t// Replicates the logic found in getEditedPostContent().\n\t\tlet content;\n\t\tif ( contentStructure instanceof Function ) {\n\t\t\tcontent = contentStructure( { blocks } );\n\t\t} else if ( blocks ) {\n\t\t\t// If we have parsed blocks already, they should be our source of truth.\n\t\t\t// Parsing applies block deprecations and legacy block conversions that\n\t\t\t// unparsed content will not have.\n\t\t\tcontent = __unstableSerializeAndClean( blocks );\n\t\t} else {\n\t\t\tcontent = contentStructure;\n\t\t}\n\n\t\t/*\n\t\t * translators: If your word count is based on single characters (e.g. East Asian characters),\n\t\t * enter 'characters_excluding_spaces' or 'characters_including_spaces'. Otherwise, enter 'words'.\n\t\t * Do not translate into your own language.\n\t\t */\n\t\tconst wordCountType = _x(\n\t\t\t'words',\n\t\t\t'Word count type. Do not translate!'\n\t\t);\n\n\t\tconst minutesToRead = Math.max(\n\t\t\t1,\n\t\t\tMath.round(\n\t\t\t\twordCount( content || '', wordCountType ) / AVERAGE_READING_RATE\n\t\t\t)\n\t\t);\n\n\t\treturn sprintf(\n\t\t\t/* translators: %d is the number of minutes the post will take to read. */\n\t\t\t_n( '%d minute', '%d minutes', minutesToRead ),\n\t\t\tminutesToRead\n\t\t);\n\t}, [ contentStructure, blocks ] );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<div { ...blockProps }>{ minutesToReadString }</div>\n\t\t</>\n\t);\n}\n\nexport default PostTimeToReadEdit;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SAASC,EAAE,EAAEC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AACjD,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SACCC,gBAAgB,EAChBC,aAAa,EACbC,aAAa,QACP,yBAAyB;AAChC,SAASC,2BAA2B,QAAQ,mBAAmB;AAC/D,SAASC,aAAa,EAAEC,oBAAoB,QAAQ,sBAAsB;AAC1E,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;;AAEzD;AACA;AACA;AACA;AACA;AAJA,SAAAC,GAAA,IAAAC,IAAA
|
|
1
|
+
{"version":3,"names":["clsx","_x","_n","sprintf","useMemo","AlignmentControl","BlockControls","useBlockProps","__unstableSerializeAndClean","useEntityProp","useEntityBlockEditor","count","wordCount","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","AVERAGE_READING_RATE","PostTimeToReadEdit","attributes","setAttributes","context","textAlign","postId","postType","contentStructure","blocks","id","minutesToReadString","content","Function","wordCountType","minutesToRead","Math","max","round","blockProps","className","children","group","value","onChange","nextAlign"],"sources":["@wordpress/block-library/src/post-time-to-read/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { _x, _n, sprintf } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { __unstableSerializeAndClean } from '@wordpress/blocks';\nimport { useEntityProp, useEntityBlockEditor } from '@wordpress/core-data';\nimport { count as wordCount } from '@wordpress/wordcount';\n\n/**\n * Average reading rate - based on average taken from\n * https://irisreading.com/average-reading-speed-in-various-languages/\n * (Characters/minute used for Chinese rather than words).\n */\nconst AVERAGE_READING_RATE = 189;\n\nfunction PostTimeToReadEdit( { attributes, setAttributes, context } ) {\n\tconst { textAlign } = attributes;\n\tconst { postId, postType } = context;\n\n\tconst [ contentStructure ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'content',\n\t\tpostId\n\t);\n\n\tconst [ blocks ] = useEntityBlockEditor( 'postType', postType, {\n\t\tid: postId,\n\t} );\n\n\tconst minutesToReadString = useMemo( () => {\n\t\t// Replicates the logic found in getEditedPostContent().\n\t\tlet content;\n\t\tif ( contentStructure instanceof Function ) {\n\t\t\tcontent = contentStructure( { blocks } );\n\t\t} else if ( blocks ) {\n\t\t\t// If we have parsed blocks already, they should be our source of truth.\n\t\t\t// Parsing applies block deprecations and legacy block conversions that\n\t\t\t// unparsed content will not have.\n\t\t\tcontent = __unstableSerializeAndClean( blocks );\n\t\t} else {\n\t\t\tcontent = contentStructure;\n\t\t}\n\n\t\t/*\n\t\t * translators: If your word count is based on single characters (e.g. East Asian characters),\n\t\t * enter 'characters_excluding_spaces' or 'characters_including_spaces'. Otherwise, enter 'words'.\n\t\t * Do not translate into your own language.\n\t\t */\n\t\tconst wordCountType = _x(\n\t\t\t'words',\n\t\t\t'Word count type. Do not translate!'\n\t\t);\n\n\t\tconst minutesToRead = Math.max(\n\t\t\t1,\n\t\t\tMath.round(\n\t\t\t\twordCount( content || '', wordCountType ) / AVERAGE_READING_RATE\n\t\t\t)\n\t\t);\n\n\t\treturn sprintf(\n\t\t\t/* translators: %d is the number of minutes the post will take to read. */\n\t\t\t_n( '%d minute', '%d minutes', minutesToRead ),\n\t\t\tminutesToRead\n\t\t);\n\t}, [ contentStructure, blocks ] );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<div { ...blockProps }>{ minutesToReadString }</div>\n\t\t</>\n\t);\n}\n\nexport default PostTimeToReadEdit;\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SAASC,EAAE,EAAEC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AACjD,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SACCC,gBAAgB,EAChBC,aAAa,EACbC,aAAa,QACP,yBAAyB;AAChC,SAASC,2BAA2B,QAAQ,mBAAmB;AAC/D,SAASC,aAAa,EAAEC,oBAAoB,QAAQ,sBAAsB;AAC1E,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;;AAEzD;AACA;AACA;AACA;AACA;AAJA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,QAAA,IAAAC,SAAA,EAAAC,IAAA,IAAAC,KAAA;AAKA,MAAMC,oBAAoB,GAAG,GAAG;AAEhC,SAASC,kBAAkBA,CAAE;EAAEC,UAAU;EAAEC,aAAa;EAAEC;AAAQ,CAAC,EAAG;EACrE,MAAM;IAAEC;EAAU,CAAC,GAAGH,UAAU;EAChC,MAAM;IAAEI,MAAM;IAAEC;EAAS,CAAC,GAAGH,OAAO;EAEpC,MAAM,CAAEI,gBAAgB,CAAE,GAAGlB,aAAa,CACzC,UAAU,EACViB,QAAQ,EACR,SAAS,EACTD,MACD,CAAC;EAED,MAAM,CAAEG,MAAM,CAAE,GAAGlB,oBAAoB,CAAE,UAAU,EAAEgB,QAAQ,EAAE;IAC9DG,EAAE,EAAEJ;EACL,CAAE,CAAC;EAEH,MAAMK,mBAAmB,GAAG1B,OAAO,CAAE,MAAM;IAC1C;IACA,IAAI2B,OAAO;IACX,IAAKJ,gBAAgB,YAAYK,QAAQ,EAAG;MAC3CD,OAAO,GAAGJ,gBAAgB,CAAE;QAAEC;MAAO,CAAE,CAAC;IACzC,CAAC,MAAM,IAAKA,MAAM,EAAG;MACpB;MACA;MACA;MACAG,OAAO,GAAGvB,2BAA2B,CAAEoB,MAAO,CAAC;IAChD,CAAC,MAAM;MACNG,OAAO,GAAGJ,gBAAgB;IAC3B;;IAEA;AACF;AACA;AACA;AACA;IACE,MAAMM,aAAa,GAAGhC,EAAE,CACvB,OAAO,EACP,oCACD,CAAC;IAED,MAAMiC,aAAa,GAAGC,IAAI,CAACC,GAAG,CAC7B,CAAC,EACDD,IAAI,CAACE,KAAK,CACTzB,SAAS,CAAEmB,OAAO,IAAI,EAAE,EAAEE,aAAc,CAAC,GAAGd,oBAC7C,CACD,CAAC;IAED,OAAOhB,OAAO,CACb;IACAD,EAAE,CAAE,WAAW,EAAE,YAAY,EAAEgC,aAAc,CAAC,EAC9CA,aACD,CAAC;EACF,CAAC,EAAE,CAAEP,gBAAgB,EAAEC,MAAM,CAAG,CAAC;EAEjC,MAAMU,UAAU,GAAG/B,aAAa,CAAE;IACjCgC,SAAS,EAAEvC,IAAI,CAAE;MAChB,CAAE,kBAAmBwB,SAAS,EAAG,GAAIA;IACtC,CAAE;EACH,CAAE,CAAC;EAEH,oBACCN,KAAA,CAAAF,SAAA;IAAAwB,QAAA,gBACC1B,IAAA,CAACR,aAAa;MAACmC,KAAK,EAAC,OAAO;MAAAD,QAAA,eAC3B1B,IAAA,CAACT,gBAAgB;QAChBqC,KAAK,EAAGlB,SAAW;QACnBmB,QAAQ,EAAKC,SAAS,IAAM;UAC3BtB,aAAa,CAAE;YAAEE,SAAS,EAAEoB;UAAU,CAAE,CAAC;QAC1C;MAAG,CACH;IAAC,CACY,CAAC,eAChB9B,IAAA;MAAA,GAAUwB,UAAU;MAAAE,QAAA,EAAKV;IAAmB,CAAO,CAAC;EAAA,CACnD,CAAC;AAEL;AAEA,eAAeV,kBAAkB","ignoreList":[]}
|
|
@@ -12,9 +12,7 @@ import { __ } from '@wordpress/i18n';
|
|
|
12
12
|
import { createBlock, getDefaultBlockName } from '@wordpress/blocks';
|
|
13
13
|
import { useEntityProp, store as coreStore } from '@wordpress/core-data';
|
|
14
14
|
import { useSelect } from '@wordpress/data';
|
|
15
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
16
|
-
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
17
|
-
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
15
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
18
16
|
export default function PostTitleEdit({
|
|
19
17
|
attributes: {
|
|
20
18
|
level,
|