@wordpress/block-library 9.17.0 → 9.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/build/archives/index.js +9 -0
- package/build/archives/index.js.map +1 -1
- package/build/avatar/user-control.js +0 -1
- package/build/avatar/user-control.js.map +1 -1
- package/build/block/deprecated.js +0 -1
- package/build/block/deprecated.js.map +1 -1
- package/build/block/edit.js +0 -1
- package/build/block/edit.js.map +1 -1
- package/build/button/deprecated.js +0 -1
- package/build/button/deprecated.js.map +1 -1
- package/build/buttons/transforms.js +0 -1
- package/build/buttons/transforms.js.map +1 -1
- package/build/categories/edit.js +0 -1
- package/build/categories/edit.js.map +1 -1
- package/build/categories/index.js +9 -0
- package/build/categories/index.js.map +1 -1
- package/build/column/column-preview.native.js +0 -1
- package/build/column/column-preview.native.js.map +1 -1
- package/build/columns/columnCalculations.native.js +0 -1
- package/build/columns/columnCalculations.native.js.map +1 -1
- package/build/columns/deprecated.js +0 -1
- package/build/columns/deprecated.js.map +1 -1
- package/build/columns/edit.js +0 -1
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +0 -1
- package/build/columns/edit.native.js.map +1 -1
- package/build/columns/transforms.js +0 -1
- package/build/columns/transforms.js.map +1 -1
- package/build/columns/utils.js +0 -1
- package/build/columns/utils.js.map +1 -1
- package/build/comment-template/edit.js +0 -1
- package/build/comment-template/edit.js.map +1 -1
- package/build/comment-template/hooks.js +0 -1
- package/build/comment-template/hooks.js.map +1 -1
- package/build/comment-template/util.js +0 -1
- package/build/comment-template/util.js.map +1 -1
- package/build/cover/edit/index.js +3 -1
- package/build/cover/edit/index.js.map +1 -1
- package/build/details/transforms.js +0 -1
- package/build/details/transforms.js.map +1 -1
- package/build/embed/embed-placeholder.native.js +0 -1
- package/build/embed/embed-placeholder.native.js.map +1 -1
- package/build/embed/util.js +0 -1
- package/build/embed/util.js.map +1 -1
- package/build/embed/variations.js +0 -1
- package/build/embed/variations.js.map +1 -1
- package/build/embed/wp-embed-preview.js +0 -1
- package/build/embed/wp-embed-preview.js.map +1 -1
- package/build/file/transforms.js +0 -1
- package/build/file/transforms.js.map +1 -1
- package/build/footnotes/edit.js +0 -1
- package/build/footnotes/edit.js.map +1 -1
- package/build/form/edit.js +4 -2
- package/build/form/edit.js.map +1 -1
- package/build/freeform/modal.js +0 -1
- package/build/freeform/modal.js.map +1 -1
- package/build/gallery/deprecated.js +0 -1
- package/build/gallery/deprecated.js.map +1 -1
- package/build/gallery/edit.js +0 -1
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/shared.js +0 -1
- package/build/gallery/shared.js.map +1 -1
- package/build/gallery/transforms.js +0 -1
- package/build/gallery/transforms.js.map +1 -1
- package/build/gallery/use-get-media.js +0 -1
- package/build/gallery/use-get-media.js.map +1 -1
- package/build/gallery/use-get-media.native.js +0 -1
- package/build/gallery/use-get-media.native.js.map +1 -1
- package/build/gallery/use-get-new-images.js +0 -1
- package/build/gallery/use-get-new-images.js.map +1 -1
- package/build/gallery/use-image-sizes.js +0 -1
- package/build/gallery/use-image-sizes.js.map +1 -1
- package/build/group/placeholder.js +0 -1
- package/build/group/placeholder.js.map +1 -1
- package/build/group/transforms.js +0 -1
- package/build/group/transforms.js.map +1 -1
- package/build/heading/transforms.js +0 -1
- package/build/heading/transforms.js.map +1 -1
- package/build/html/preview.js +0 -1
- package/build/html/preview.js.map +1 -1
- package/build/image/edit.js +0 -1
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +0 -1
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +0 -1
- package/build/image/image.js.map +1 -1
- package/build/image/transforms.js +0 -1
- package/build/image/transforms.js.map +1 -1
- package/build/image/utils.js +0 -1
- package/build/image/utils.js.map +1 -1
- package/build/image/view.js +4 -4
- package/build/image/view.js.map +1 -1
- package/build/index.native.js +0 -1
- package/build/index.native.js.map +1 -1
- package/build/latest-posts/edit.js +0 -1
- package/build/latest-posts/edit.js.map +1 -1
- package/build/list/transforms.js +0 -1
- package/build/list/transforms.js.map +1 -1
- package/build/list/utils.js +0 -1
- package/build/list/utils.js.map +1 -1
- package/build/list-item/hooks/use-indent-list-item.js +0 -1
- package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
- package/build/list-item/transforms.js +0 -1
- package/build/list-item/transforms.js.map +1 -1
- package/build/media-text/edit.js +0 -1
- package/build/media-text/edit.js.map +1 -1
- package/build/more/save.js +0 -1
- package/build/more/save.js.map +1 -1
- package/build/navigation/deprecated.js +0 -1
- package/build/navigation/deprecated.js.map +1 -1
- package/build/navigation/edit/index.js +0 -1
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js +0 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build/navigation/menu-items-to-blocks.js +0 -1
- package/build/navigation/menu-items-to-blocks.js.map +1 -1
- package/build/navigation/use-template-part-area-label.js +0 -1
- package/build/navigation/use-template-part-area-label.js.map +1 -1
- package/build/navigation/view.js +2 -3
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +2 -1
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/hooks.js +0 -1
- package/build/navigation-link/hooks.js.map +1 -1
- package/build/navigation-submenu/edit.js +2 -1
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/edit.js +0 -1
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/use-convert-to-navigation-links.js +0 -1
- package/build/page-list/use-convert-to-navigation-links.js.map +1 -1
- package/build/pattern/edit.js +0 -1
- package/build/pattern/edit.js.map +1 -1
- package/build/post-author/edit.js +0 -1
- package/build/post-author/edit.js.map +1 -1
- package/build/post-comments-count/index.js +8 -1
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +2 -39
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-featured-image/edit.js +45 -3
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-navigation-link/edit.js +1 -2
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-navigation-link/variations.js +0 -1
- package/build/post-navigation-link/variations.js.map +1 -1
- package/build/post-template/edit.js +14 -7
- package/build/post-template/edit.js.map +1 -1
- package/build/post-terms/edit.js +0 -1
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-terms/hooks.js +0 -1
- package/build/post-terms/hooks.js.map +1 -1
- package/build/pullquote/blockquote.native.js +0 -1
- package/build/pullquote/blockquote.native.js.map +1 -1
- package/build/pullquote/transforms.js +0 -1
- package/build/pullquote/transforms.js.map +1 -1
- package/build/query/deprecated.js +0 -1
- package/build/query/deprecated.js.map +1 -1
- package/build/query/edit/inspector-controls/author-control.js +0 -1
- package/build/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build/query/edit/inspector-controls/format-controls.js +0 -1
- package/build/query/edit/inspector-controls/format-controls.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +0 -1
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/parent-control.js +0 -1
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build/query/edit/inspector-controls/sticky-control.js +3 -0
- package/build/query/edit/inspector-controls/sticky-control.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +0 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query/utils.js +0 -1
- package/build/query/utils.js.map +1 -1
- package/build/query/view.js +2 -2
- package/build/query/view.js.map +1 -1
- package/build/query-title/variations.js +0 -1
- package/build/query-title/variations.js.map +1 -1
- package/build/quote/deprecated.js +0 -1
- package/build/quote/deprecated.js.map +1 -1
- package/build/quote/transforms.js +0 -1
- package/build/quote/transforms.js.map +1 -1
- package/build/rss/edit.js +15 -1
- package/build/rss/edit.js.map +1 -1
- package/build/rss/index.js +14 -0
- package/build/rss/index.js.map +1 -1
- package/build/search/view.js +2 -2
- package/build/search/view.js.map +1 -1
- package/build/site-logo/edit.js +2 -5
- package/build/site-logo/edit.js.map +1 -1
- package/build/social-link/icons/discord.js +23 -0
- package/build/social-link/icons/discord.js.map +1 -0
- package/build/social-link/icons/index.js +11 -0
- package/build/social-link/icons/index.js.map +1 -1
- package/build/social-link/social-list.js +0 -1
- package/build/social-link/social-list.js.map +1 -1
- package/build/social-link/variations.js +7 -1
- package/build/social-link/variations.js.map +1 -1
- package/build/social-links/edit.js +0 -1
- package/build/social-links/edit.js.map +1 -1
- package/build/social-links/edit.native.js +0 -1
- package/build/social-links/edit.native.js.map +1 -1
- package/build/spacer/controls.js +0 -1
- package/build/spacer/controls.js.map +1 -1
- package/build/table/deprecated.js +0 -1
- package/build/table/deprecated.js.map +1 -1
- package/build/table/edit.js +0 -1
- package/build/table/edit.js.map +1 -1
- package/build/table/save.js +0 -1
- package/build/table/save.js.map +1 -1
- package/build/table/state.js +0 -1
- package/build/table/state.js.map +1 -1
- package/build/table/transforms.js +0 -1
- package/build/table/transforms.js.map +1 -1
- package/build/table-of-contents/list.js +0 -1
- package/build/table-of-contents/list.js.map +1 -1
- package/build/table-of-contents/utils.js +0 -1
- package/build/table-of-contents/utils.js.map +1 -1
- package/build/tag-cloud/edit.js +0 -1
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +0 -1
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/import-controls.js +0 -1
- package/build/template-part/edit/import-controls.js.map +1 -1
- package/build/template-part/edit/selection-modal.js +0 -1
- package/build/template-part/edit/selection-modal.js.map +1 -1
- package/build/template-part/edit/utils/hooks.js +0 -1
- package/build/template-part/edit/utils/hooks.js.map +1 -1
- package/build/template-part/edit/utils/transformers.js +0 -1
- package/build/template-part/edit/utils/transformers.js.map +1 -1
- package/build/template-part/variations.js +0 -1
- package/build/template-part/variations.js.map +1 -1
- package/build/text-columns/edit.js +0 -1
- package/build/text-columns/edit.js.map +1 -1
- package/build/text-columns/save.js +0 -1
- package/build/text-columns/save.js.map +1 -1
- package/build/text-columns/transforms.js +0 -1
- package/build/text-columns/transforms.js.map +1 -1
- package/build/utils/get-transformed-metadata.js +0 -1
- package/build/utils/get-transformed-metadata.js.map +1 -1
- package/build/utils/search-patterns.js +0 -1
- package/build/utils/search-patterns.js.map +1 -1
- package/build/utils/transformation-categories.native.js +0 -1
- package/build/utils/transformation-categories.native.js.map +1 -1
- package/build/video/edit-common-settings.js +10 -3
- package/build/video/edit-common-settings.js.map +1 -1
- package/build/video/tracks-editor.js +0 -1
- package/build/video/tracks-editor.js.map +1 -1
- package/build/video/tracks.js +0 -1
- package/build/video/tracks.js.map +1 -1
- package/build-module/archives/index.js +9 -0
- package/build-module/archives/index.js.map +1 -1
- package/build-module/avatar/user-control.js +0 -1
- package/build-module/avatar/user-control.js.map +1 -1
- package/build-module/block/deprecated.js +0 -1
- package/build-module/block/deprecated.js.map +1 -1
- package/build-module/block/edit.js +0 -1
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/deprecated.js +0 -1
- package/build-module/button/deprecated.js.map +1 -1
- package/build-module/buttons/transforms.js +0 -1
- package/build-module/buttons/transforms.js.map +1 -1
- package/build-module/categories/edit.js +0 -1
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/categories/index.js +9 -0
- package/build-module/categories/index.js.map +1 -1
- package/build-module/column/column-preview.native.js +0 -1
- package/build-module/column/column-preview.native.js.map +1 -1
- package/build-module/columns/columnCalculations.native.js +0 -1
- package/build-module/columns/columnCalculations.native.js.map +1 -1
- package/build-module/columns/deprecated.js +0 -1
- package/build-module/columns/deprecated.js.map +1 -1
- package/build-module/columns/edit.js +0 -1
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +0 -1
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/columns/transforms.js +0 -1
- package/build-module/columns/transforms.js.map +1 -1
- package/build-module/columns/utils.js +0 -1
- package/build-module/columns/utils.js.map +1 -1
- package/build-module/comment-template/edit.js +0 -1
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comment-template/hooks.js +0 -1
- package/build-module/comment-template/hooks.js.map +1 -1
- package/build-module/comment-template/util.js +0 -1
- package/build-module/comment-template/util.js.map +1 -1
- package/build-module/cover/edit/index.js +3 -1
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/details/transforms.js +0 -1
- package/build-module/details/transforms.js.map +1 -1
- package/build-module/embed/embed-placeholder.native.js +0 -1
- package/build-module/embed/embed-placeholder.native.js.map +1 -1
- package/build-module/embed/util.js +0 -1
- package/build-module/embed/util.js.map +1 -1
- package/build-module/embed/variations.js +0 -1
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/embed/wp-embed-preview.js +0 -1
- package/build-module/embed/wp-embed-preview.js.map +1 -1
- package/build-module/file/transforms.js +0 -1
- package/build-module/file/transforms.js.map +1 -1
- package/build-module/footnotes/edit.js +0 -1
- package/build-module/footnotes/edit.js.map +1 -1
- package/build-module/form/edit.js +4 -2
- package/build-module/form/edit.js.map +1 -1
- package/build-module/freeform/modal.js +0 -1
- package/build-module/freeform/modal.js.map +1 -1
- package/build-module/gallery/deprecated.js +0 -1
- package/build-module/gallery/deprecated.js.map +1 -1
- package/build-module/gallery/edit.js +0 -1
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/shared.js +0 -1
- package/build-module/gallery/shared.js.map +1 -1
- package/build-module/gallery/transforms.js +0 -1
- package/build-module/gallery/transforms.js.map +1 -1
- package/build-module/gallery/use-get-media.js +0 -1
- package/build-module/gallery/use-get-media.js.map +1 -1
- package/build-module/gallery/use-get-media.native.js +0 -1
- package/build-module/gallery/use-get-media.native.js.map +1 -1
- package/build-module/gallery/use-get-new-images.js +0 -1
- package/build-module/gallery/use-get-new-images.js.map +1 -1
- package/build-module/gallery/use-image-sizes.js +0 -1
- package/build-module/gallery/use-image-sizes.js.map +1 -1
- package/build-module/group/placeholder.js +0 -1
- package/build-module/group/placeholder.js.map +1 -1
- package/build-module/group/transforms.js +0 -1
- package/build-module/group/transforms.js.map +1 -1
- package/build-module/heading/transforms.js +0 -1
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/html/preview.js +0 -1
- package/build-module/html/preview.js.map +1 -1
- package/build-module/image/edit.js +0 -1
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +0 -1
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +0 -1
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/transforms.js +0 -1
- package/build-module/image/transforms.js.map +1 -1
- package/build-module/image/utils.js +0 -1
- package/build-module/image/utils.js.map +1 -1
- package/build-module/image/view.js +5 -5
- package/build-module/image/view.js.map +1 -1
- package/build-module/index.native.js +0 -1
- package/build-module/index.native.js.map +1 -1
- package/build-module/latest-posts/edit.js +0 -1
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/list/transforms.js +0 -1
- package/build-module/list/transforms.js.map +1 -1
- package/build-module/list/utils.js +0 -1
- package/build-module/list/utils.js.map +1 -1
- package/build-module/list-item/hooks/use-indent-list-item.js +0 -1
- package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
- package/build-module/list-item/transforms.js +0 -1
- package/build-module/list-item/transforms.js.map +1 -1
- package/build-module/media-text/edit.js +0 -1
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/more/save.js +0 -1
- package/build-module/more/save.js.map +1 -1
- package/build-module/navigation/deprecated.js +0 -1
- package/build-module/navigation/deprecated.js.map +1 -1
- package/build-module/navigation/edit/index.js +0 -1
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js +0 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build-module/navigation/menu-items-to-blocks.js +0 -1
- package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
- package/build-module/navigation/use-template-part-area-label.js +0 -1
- package/build-module/navigation/use-template-part-area-label.js.map +1 -1
- package/build-module/navigation/view.js +3 -4
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +2 -1
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/hooks.js +0 -1
- package/build-module/navigation-link/hooks.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +2 -1
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/edit.js +0 -1
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/use-convert-to-navigation-links.js +0 -1
- package/build-module/page-list/use-convert-to-navigation-links.js.map +1 -1
- package/build-module/pattern/edit.js +0 -1
- package/build-module/pattern/edit.js.map +1 -1
- package/build-module/post-author/edit.js +0 -1
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-comments-count/index.js +8 -1
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +3 -40
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-featured-image/edit.js +46 -4
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +1 -2
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-navigation-link/variations.js +0 -1
- package/build-module/post-navigation-link/variations.js.map +1 -1
- package/build-module/post-template/edit.js +14 -7
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +0 -1
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-terms/hooks.js +0 -1
- package/build-module/post-terms/hooks.js.map +1 -1
- package/build-module/pullquote/blockquote.native.js +0 -1
- package/build-module/pullquote/blockquote.native.js.map +1 -1
- package/build-module/pullquote/transforms.js +0 -1
- package/build-module/pullquote/transforms.js.map +1 -1
- package/build-module/query/deprecated.js +0 -1
- package/build-module/query/deprecated.js.map +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js +0 -1
- package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/format-controls.js +0 -1
- package/build-module/query/edit/inspector-controls/format-controls.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +0 -1
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/parent-control.js +0 -1
- package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/sticky-control.js +3 -0
- package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +0 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query/utils.js +0 -1
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query/view.js +3 -3
- package/build-module/query/view.js.map +1 -1
- package/build-module/query-title/variations.js +0 -1
- package/build-module/query-title/variations.js.map +1 -1
- package/build-module/quote/deprecated.js +0 -1
- package/build-module/quote/deprecated.js.map +1 -1
- package/build-module/quote/transforms.js +0 -1
- package/build-module/quote/transforms.js.map +1 -1
- package/build-module/rss/edit.js +15 -1
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/rss/index.js +14 -0
- package/build-module/rss/index.js.map +1 -1
- package/build-module/search/view.js +3 -3
- package/build-module/search/view.js.map +1 -1
- package/build-module/site-logo/edit.js +2 -5
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/social-link/icons/discord.js +15 -0
- package/build-module/social-link/icons/discord.js.map +1 -0
- package/build-module/social-link/icons/index.js +1 -0
- package/build-module/social-link/icons/index.js.map +1 -1
- package/build-module/social-link/social-list.js +0 -1
- package/build-module/social-link/social-list.js.map +1 -1
- package/build-module/social-link/variations.js +8 -2
- package/build-module/social-link/variations.js.map +1 -1
- package/build-module/social-links/edit.js +0 -1
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/social-links/edit.native.js +0 -1
- package/build-module/social-links/edit.native.js.map +1 -1
- package/build-module/spacer/controls.js +0 -1
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/table/deprecated.js +0 -1
- package/build-module/table/deprecated.js.map +1 -1
- package/build-module/table/edit.js +0 -1
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table/save.js +0 -1
- package/build-module/table/save.js.map +1 -1
- package/build-module/table/state.js +0 -1
- package/build-module/table/state.js.map +1 -1
- package/build-module/table/transforms.js +0 -1
- package/build-module/table/transforms.js.map +1 -1
- package/build-module/table-of-contents/list.js +0 -1
- package/build-module/table-of-contents/list.js.map +1 -1
- package/build-module/table-of-contents/utils.js +0 -1
- package/build-module/table-of-contents/utils.js.map +1 -1
- package/build-module/tag-cloud/edit.js +0 -1
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +0 -1
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/import-controls.js +0 -1
- package/build-module/template-part/edit/import-controls.js.map +1 -1
- package/build-module/template-part/edit/selection-modal.js +0 -1
- package/build-module/template-part/edit/selection-modal.js.map +1 -1
- package/build-module/template-part/edit/utils/hooks.js +0 -1
- package/build-module/template-part/edit/utils/hooks.js.map +1 -1
- package/build-module/template-part/edit/utils/transformers.js +0 -1
- package/build-module/template-part/edit/utils/transformers.js.map +1 -1
- package/build-module/template-part/variations.js +0 -1
- package/build-module/template-part/variations.js.map +1 -1
- package/build-module/text-columns/edit.js +0 -1
- package/build-module/text-columns/edit.js.map +1 -1
- package/build-module/text-columns/save.js +0 -1
- package/build-module/text-columns/save.js.map +1 -1
- package/build-module/text-columns/transforms.js +0 -1
- package/build-module/text-columns/transforms.js.map +1 -1
- package/build-module/utils/get-transformed-metadata.js +0 -1
- package/build-module/utils/get-transformed-metadata.js.map +1 -1
- package/build-module/utils/search-patterns.js +0 -1
- package/build-module/utils/search-patterns.js.map +1 -1
- package/build-module/utils/transformation-categories.native.js +0 -1
- package/build-module/utils/transformation-categories.native.js.map +1 -1
- package/build-module/video/edit-common-settings.js +10 -3
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-module/video/tracks-editor.js +0 -1
- package/build-module/video/tracks-editor.js.map +1 -1
- package/build-module/video/tracks.js +0 -1
- package/build-module/video/tracks.js.map +1 -1
- package/build-style/editor-rtl.css +15 -15
- package/build-style/editor.css +15 -15
- package/build-style/navigation-link/editor-rtl.css +5 -9
- package/build-style/navigation-link/editor.css +5 -9
- package/build-style/post-comments-count/style-rtl.css +103 -0
- package/build-style/post-comments-count/style.css +103 -0
- package/build-style/pullquote/style-rtl.css +4 -0
- package/build-style/pullquote/style.css +4 -0
- package/build-style/rss/editor-rtl.css +6 -0
- package/build-style/rss/editor.css +6 -0
- package/build-style/rss/style-rtl.css +6 -8
- package/build-style/rss/style.css +6 -8
- package/build-style/social-link/editor-rtl.css +1 -0
- package/build-style/social-link/editor.css +1 -0
- package/build-style/social-links/editor-rtl.css +3 -6
- package/build-style/social-links/editor.css +3 -6
- package/build-style/social-links/style-rtl.css +7 -0
- package/build-style/social-links/style.css +7 -0
- package/build-style/style-rtl.css +21 -8
- package/build-style/style.css +21 -8
- package/package.json +35 -35
- package/src/archives/block.json +9 -0
- package/src/block/index.php +1 -18
- package/src/categories/block.json +9 -0
- package/src/cover/edit/index.js +2 -0
- package/src/cover/test/edit.js +6 -6
- package/src/form/edit.js +2 -0
- package/src/image/view.js +10 -5
- package/src/navigation/index.php +11 -69
- package/src/navigation/view.js +8 -3
- package/src/navigation-link/edit.js +1 -0
- package/src/navigation-link/editor.scss +3 -24
- package/src/navigation-submenu/edit.js +1 -0
- package/src/post-comments-count/block.json +8 -1
- package/src/post-comments-count/style.scss +4 -0
- package/src/post-content/index.php +0 -23
- package/src/post-featured-image/dimension-controls.js +2 -43
- package/src/post-featured-image/edit.js +39 -3
- package/src/post-navigation-link/edit.js +1 -1
- package/src/post-template/edit.js +15 -6
- package/src/pullquote/style.scss +4 -0
- package/src/query/edit/inspector-controls/sticky-control.js +1 -0
- package/src/query/view.js +8 -3
- package/src/query-total/index.php +2 -0
- package/src/rss/block.json +14 -0
- package/src/rss/edit.js +14 -1
- package/src/rss/editor.scss +7 -0
- package/src/rss/style.scss +6 -8
- package/src/search/view.js +8 -3
- package/src/site-logo/edit.js +1 -5
- package/src/social-link/editor.scss +1 -0
- package/src/social-link/icons/discord.js +10 -0
- package/src/social-link/icons/index.js +1 -0
- package/src/social-link/index.php +4 -0
- package/src/social-link/socials-with-bg.scss +5 -0
- package/src/social-link/socials-without-bg.scss +4 -0
- package/src/social-link/variations.js +7 -0
- package/src/social-links/editor.scss +4 -1
- package/src/style.scss +1 -0
- package/src/template-part/index.php +3 -1
- package/src/video/edit-common-settings.js +11 -2
|
@@ -1,20 +1,10 @@
|
|
|
1
|
-
/* wp:polyfill */
|
|
2
1
|
/**
|
|
3
2
|
* WordPress dependencies
|
|
4
3
|
*/
|
|
5
4
|
import { __, _x } from '@wordpress/i18n';
|
|
6
5
|
import { SelectControl, __experimentalUnitControl as UnitControl, __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, __experimentalUseCustomUnits as useCustomUnits, __experimentalToolsPanelItem as ToolsPanelItem } from '@wordpress/components';
|
|
7
|
-
import { useSettings
|
|
8
|
-
import { useSelect } from '@wordpress/data';
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Internal dependencies
|
|
12
|
-
*/
|
|
13
|
-
import { unlock } from '../lock-unlock';
|
|
6
|
+
import { useSettings } from '@wordpress/block-editor';
|
|
14
7
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
15
|
-
const {
|
|
16
|
-
ResolutionTool
|
|
17
|
-
} = unlock(blockEditorPrivateApis);
|
|
18
8
|
const SCALE_OPTIONS = /*#__PURE__*/_jsxs(_Fragment, {
|
|
19
9
|
children: [/*#__PURE__*/_jsx(ToggleGroupControlOption, {
|
|
20
10
|
value: "cover",
|
|
@@ -28,7 +18,6 @@ const SCALE_OPTIONS = /*#__PURE__*/_jsxs(_Fragment, {
|
|
|
28
18
|
})]
|
|
29
19
|
});
|
|
30
20
|
const DEFAULT_SCALE = 'cover';
|
|
31
|
-
const DEFAULT_SIZE = 'full';
|
|
32
21
|
const scaleHelp = {
|
|
33
22
|
cover: __('Image is scaled and cropped to fill the entire space without being distorted.'),
|
|
34
23
|
contain: __('Image is scaled to fill the space without clipping nor distorting.'),
|
|
@@ -40,28 +29,14 @@ const DimensionControls = ({
|
|
|
40
29
|
aspectRatio,
|
|
41
30
|
width,
|
|
42
31
|
height,
|
|
43
|
-
scale
|
|
44
|
-
sizeSlug
|
|
32
|
+
scale
|
|
45
33
|
},
|
|
46
|
-
setAttributes
|
|
47
|
-
media
|
|
34
|
+
setAttributes
|
|
48
35
|
}) => {
|
|
49
36
|
const [availableUnits, defaultRatios, themeRatios, showDefaultRatios] = useSettings('spacing.units', 'dimensions.aspectRatios.default', 'dimensions.aspectRatios.theme', 'dimensions.defaultAspectRatios');
|
|
50
37
|
const units = useCustomUnits({
|
|
51
38
|
availableUnits: availableUnits || ['px', '%', 'vw', 'em', 'rem']
|
|
52
39
|
});
|
|
53
|
-
const imageSizes = useSelect(select => select(blockEditorStore).getSettings().imageSizes, []);
|
|
54
|
-
const imageSizeOptions = imageSizes.filter(({
|
|
55
|
-
slug
|
|
56
|
-
}) => {
|
|
57
|
-
return media?.media_details?.sizes?.[slug]?.source_url;
|
|
58
|
-
}).map(({
|
|
59
|
-
name,
|
|
60
|
-
slug
|
|
61
|
-
}) => ({
|
|
62
|
-
value: slug,
|
|
63
|
-
label: name
|
|
64
|
-
}));
|
|
65
40
|
const onDimensionChange = (dimension, nextValue) => {
|
|
66
41
|
const parsedValue = parseFloat(nextValue);
|
|
67
42
|
/**
|
|
@@ -183,18 +158,6 @@ const DimensionControls = ({
|
|
|
183
158
|
isBlock: true,
|
|
184
159
|
children: SCALE_OPTIONS
|
|
185
160
|
})
|
|
186
|
-
}), !!imageSizeOptions.length && /*#__PURE__*/_jsx(ResolutionTool, {
|
|
187
|
-
panelId: clientId,
|
|
188
|
-
value: sizeSlug,
|
|
189
|
-
defaultValue: DEFAULT_SIZE,
|
|
190
|
-
options: imageSizeOptions,
|
|
191
|
-
onChange: nextSizeSlug => setAttributes({
|
|
192
|
-
sizeSlug: nextSizeSlug
|
|
193
|
-
}),
|
|
194
|
-
isShownByDefault: false,
|
|
195
|
-
resetAllFilter: () => ({
|
|
196
|
-
sizeSlug: DEFAULT_SIZE
|
|
197
|
-
})
|
|
198
161
|
})]
|
|
199
162
|
});
|
|
200
163
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","_x","SelectControl","__experimentalUnitControl","UnitControl","__experimentalToggleGroupControl","ToggleGroupControl","__experimentalToggleGroupControlOption","ToggleGroupControlOption","__experimentalUseCustomUnits","useCustomUnits","__experimentalToolsPanelItem","ToolsPanelItem","useSettings","privateApis","blockEditorPrivateApis","store","blockEditorStore","useSelect","unlock","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","ResolutionTool","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","defaultValue","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\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../lock-unlock';\n\nconst { ResolutionTool } = unlock( blockEditorPrivateApis );\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<ResolutionTool\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\tdefaultValue={ DEFAULT_SIZE }\n\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\tonChange={ ( nextSizeSlug ) =>\n\t\t\t\t\t\tsetAttributes( { sizeSlug: nextSizeSlug } )\n\t\t\t\t\t}\n\t\t\t\t\tisShownByDefault={ false }\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tsizeSlug: DEFAULT_SIZE,\n\t\t\t\t\t} ) }\n\t\t\t\t/>\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","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SCALE_OPTIONS","children","value","label","DEFAULT_SCALE","scaleHelp","cover","contain","fill","DimensionControls","clientId","attributes","aspectRatio","width","height","scale","setAttributes","availableUnits","defaultRatios","themeRatios","showDefaultRatios","units","onDimensionChange","dimension","nextValue","parsedValue","parseFloat","isNaN","scaleLabel","showScaleControl","themeOptions","map","name","ratio","defaultOptions","aspectRatioOptions","hasValue","onDeselect","undefined","resetAllFilter","isShownByDefault","panelId","__next40pxDefaultSize","__nextHasNoMarginBottom","options","onChange","nextAspectRatio","className","labelPosition","min","nextHeight","nextWidth","help","isBlock"],"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 { useSettings } from '@wordpress/block-editor';\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';\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 },\n\tsetAttributes,\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\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</>\n\t);\n};\n\nexport default DimensionControls;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,7 +10,7 @@ import { isBlobURL } from '@wordpress/blob';
|
|
|
10
10
|
import { useEntityProp, store as coreStore } from '@wordpress/core-data';
|
|
11
11
|
import { useSelect, useDispatch } from '@wordpress/data';
|
|
12
12
|
import { ToggleControl, Placeholder, Button, Spinner, TextControl, __experimentalToolsPanel as ToolsPanel, __experimentalToolsPanelItem as ToolsPanelItem } from '@wordpress/components';
|
|
13
|
-
import { InspectorControls, BlockControls, MediaPlaceholder, MediaReplaceFlow, useBlockProps, __experimentalUseBorderProps as useBorderProps, __experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles, useBlockEditingMode } from '@wordpress/block-editor';
|
|
13
|
+
import { InspectorControls, BlockControls, MediaPlaceholder, MediaReplaceFlow, useBlockProps, __experimentalUseBorderProps as useBorderProps, __experimentalGetShadowClassesAndStyles as getShadowClassesAndStyles, useBlockEditingMode, privateApis as blockEditorPrivateApis, store as blockEditorStore } from '@wordpress/block-editor';
|
|
14
14
|
import { useMemo, useEffect, useState } from '@wordpress/element';
|
|
15
15
|
import { __, sprintf } from '@wordpress/i18n';
|
|
16
16
|
import { upload } from '@wordpress/icons';
|
|
@@ -23,10 +23,46 @@ import DimensionControls from './dimension-controls';
|
|
|
23
23
|
import OverlayControls from './overlay-controls';
|
|
24
24
|
import Overlay from './overlay';
|
|
25
25
|
import { useToolsPanelDropdownMenuProps } from '../utils/hooks';
|
|
26
|
+
import { unlock } from '../lock-unlock';
|
|
26
27
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
27
28
|
const ALLOWED_MEDIA_TYPES = ['image'];
|
|
28
|
-
|
|
29
|
-
|
|
29
|
+
const {
|
|
30
|
+
ResolutionTool
|
|
31
|
+
} = unlock(blockEditorPrivateApis);
|
|
32
|
+
const DEFAULT_MEDIA_SIZE_SLUG = 'full';
|
|
33
|
+
function FeaturedImageResolutionTool({
|
|
34
|
+
image,
|
|
35
|
+
value,
|
|
36
|
+
onChange
|
|
37
|
+
}) {
|
|
38
|
+
const {
|
|
39
|
+
imageSizes
|
|
40
|
+
} = useSelect(select => {
|
|
41
|
+
const {
|
|
42
|
+
getSettings
|
|
43
|
+
} = select(blockEditorStore);
|
|
44
|
+
return {
|
|
45
|
+
imageSizes: getSettings().imageSizes
|
|
46
|
+
};
|
|
47
|
+
}, []);
|
|
48
|
+
if (!imageSizes?.length) {
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
const imageSizeOptions = imageSizes.filter(({
|
|
52
|
+
slug
|
|
53
|
+
}) => image?.media_details?.sizes?.[slug]?.source_url).map(({
|
|
54
|
+
name,
|
|
55
|
+
slug
|
|
56
|
+
}) => ({
|
|
57
|
+
value: slug,
|
|
58
|
+
label: name
|
|
59
|
+
}));
|
|
60
|
+
return /*#__PURE__*/_jsx(ResolutionTool, {
|
|
61
|
+
value: value,
|
|
62
|
+
defaultValue: DEFAULT_MEDIA_SIZE_SLUG,
|
|
63
|
+
options: imageSizeOptions,
|
|
64
|
+
onChange: onChange
|
|
65
|
+
});
|
|
30
66
|
}
|
|
31
67
|
export default function PostFeaturedImageEdit({
|
|
32
68
|
clientId,
|
|
@@ -85,7 +121,7 @@ export default function PostFeaturedImageEdit({
|
|
|
85
121
|
postPermalink: getEditedEntityRecord('postType', postTypeSlug, postId)?.link
|
|
86
122
|
};
|
|
87
123
|
}, [featuredImage, postTypeSlug, postId]);
|
|
88
|
-
const mediaUrl =
|
|
124
|
+
const mediaUrl = media?.media_details?.sizes?.[sizeSlug]?.source_url || media?.source_url;
|
|
89
125
|
const blockProps = useBlockProps({
|
|
90
126
|
style: {
|
|
91
127
|
width,
|
|
@@ -214,6 +250,12 @@ export default function PostFeaturedImageEdit({
|
|
|
214
250
|
rel: newRel
|
|
215
251
|
})
|
|
216
252
|
})
|
|
253
|
+
}), /*#__PURE__*/_jsx(FeaturedImageResolutionTool, {
|
|
254
|
+
image: media,
|
|
255
|
+
value: sizeSlug,
|
|
256
|
+
onChange: nextSizeSlug => setAttributes({
|
|
257
|
+
sizeSlug: nextSizeSlug
|
|
258
|
+
})
|
|
217
259
|
})]
|
|
218
260
|
})
|
|
219
261
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","isBlobURL","useEntityProp","store","coreStore","useSelect","useDispatch","ToggleControl","Placeholder","Button","Spinner","TextControl","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","InspectorControls","BlockControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","useBlockEditingMode","useMemo","useEffect","useState","__","sprintf","upload","noticesStore","DimensionControls","OverlayControls","Overlay","useToolsPanelDropdownMenuProps","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ALLOWED_MEDIA_TYPES","getMediaSourceUrlBySizeSlug","media","slug","media_details","sizes","source_url","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","dropdownMenuProps","controls","group","label","resetAll","labels","singular_name","isShownByDefault","hasValue","onDeselect","__nextHasNoMarginBottom","onChange","checked","__next40pxDefaultSize","newRel","image","href","target","imageStyles","objectFit","onSelect","accept","allowedTypes","onError","mediaLibraryButton","open","icon","variant","showTooltip","tooltipPosition","onClick","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\tPlaceholder,\n\tButton,\n\tSpinner,\n\tTextControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\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';\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\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\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 dropdownMenuProps = useToolsPanelDropdownMenuProps();\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<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tisLink: false,\n\t\t\t\t\t\t\tlinkTarget: '_self',\n\t\t\t\t\t\t\trel: '',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\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: \"post\".\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\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => !! isLink }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tisLink: false,\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\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\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"post\".\n\t\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { isLink: ! isLink } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => '_self' !== linkTarget }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tlinkTarget: '_self',\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\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</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => !! rel }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\trel: '',\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\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</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\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 href={ postPermalink } target={ linkTarget }>\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 href={ postPermalink } target={ linkTarget }>\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","Placeholder","Button","Spinner","TextControl","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","InspectorControls","BlockControls","MediaPlaceholder","MediaReplaceFlow","useBlockProps","__experimentalUseBorderProps","useBorderProps","__experimentalGetShadowClassesAndStyles","getShadowClassesAndStyles","useBlockEditingMode","privateApis","blockEditorPrivateApis","blockEditorStore","useMemo","useEffect","useState","__","sprintf","upload","noticesStore","DimensionControls","OverlayControls","Overlay","useToolsPanelDropdownMenuProps","unlock","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ALLOWED_MEDIA_TYPES","ResolutionTool","DEFAULT_MEDIA_SIZE_SLUG","FeaturedImageResolutionTool","image","value","onChange","imageSizes","select","getSettings","length","imageSizeOptions","filter","slug","media_details","sizes","source_url","map","name","label","defaultValue","options","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","media","postPermalink","getMedia","getPostType","getEditedEntityRecord","link","mediaUrl","blockProps","style","className","borderProps","shadowProps","blockEditingMode","placeholder","content","withIllustration","children","onSelectImage","url","createErrorNotice","onUploadError","message","type","dropdownMenuProps","controls","group","resetAll","labels","singular_name","isShownByDefault","hasValue","onDeselect","__nextHasNoMarginBottom","checked","__next40pxDefaultSize","newRel","nextSizeSlug","href","target","imageStyles","objectFit","onSelect","accept","allowedTypes","onError","mediaLibraryButton","open","icon","variant","showTooltip","tooltipPosition","onClick","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\tPlaceholder,\n\tButton,\n\tSpinner,\n\tTextControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\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\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\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';\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\nimport { unlock } from '../lock-unlock';\n\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst { ResolutionTool } = unlock( blockEditorPrivateApis );\nconst DEFAULT_MEDIA_SIZE_SLUG = 'full';\n\nfunction FeaturedImageResolutionTool( { image, value, onChange } ) {\n\tconst { imageSizes } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\treturn {\n\t\t\timageSizes: getSettings().imageSizes,\n\t\t};\n\t}, [] );\n\n\tif ( ! imageSizes?.length ) {\n\t\treturn null;\n\t}\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter(\n\t\t\t( { slug } ) => image?.media_details?.sizes?.[ slug ]?.source_url\n\t\t)\n\t\t.map( ( { name, slug } ) => ( { value: slug, label: name } ) );\n\n\treturn (\n\t\t<ResolutionTool\n\t\t\tvalue={ value }\n\t\t\tdefaultValue={ DEFAULT_MEDIA_SIZE_SLUG }\n\t\t\toptions={ imageSizeOptions }\n\t\t\tonChange={ onChange }\n\t\t/>\n\t);\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 =\n\t\tmedia?.media_details?.sizes?.[ sizeSlug ]?.source_url ||\n\t\tmedia?.source_url;\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 dropdownMenuProps = useToolsPanelDropdownMenuProps();\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<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tisLink: false,\n\t\t\t\t\t\t\tlinkTarget: '_self',\n\t\t\t\t\t\t\trel: '',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\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: \"post\".\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\tisShownByDefault\n\t\t\t\t\t\thasValue={ () => !! isLink }\n\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tisLink: false,\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\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\tpostType?.labels.singular_name\n\t\t\t\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t\t\t\t// translators: %s: Name of the post type e.g: \"post\".\n\t\t\t\t\t\t\t\t\t\t\t__( 'Link to %s' ),\n\t\t\t\t\t\t\t\t\t\t\tpostType.labels.singular_name\n\t\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t\t\t: __( 'Link to post' )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { isLink: ! isLink } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => '_self' !== linkTarget }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tlinkTarget: '_self',\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\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</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t\thasValue={ () => !! rel }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\trel: '',\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\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</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t\t<FeaturedImageResolutionTool\n\t\t\t\t\t\timage={ media }\n\t\t\t\t\t\tvalue={ sizeSlug }\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/>\n\t\t\t\t</ToolsPanel>\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 href={ postPermalink } target={ linkTarget }>\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 href={ postPermalink } target={ linkTarget }>\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,4 +1,3 @@
|
|
|
1
|
-
/* wp:polyfill */
|
|
2
1
|
/**
|
|
3
2
|
* External dependencies
|
|
4
3
|
*/
|
|
@@ -148,7 +147,7 @@ export default function PostNavigationLinkEdit({
|
|
|
148
147
|
"aria-label": ariaLabel,
|
|
149
148
|
placeholder: placeholder,
|
|
150
149
|
value: label,
|
|
151
|
-
|
|
150
|
+
withoutInteractiveFormatting: true,
|
|
152
151
|
onChange: newLabel => setAttributes({
|
|
153
152
|
label: newLabel
|
|
154
153
|
})
|
|
@@ -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","withoutInteractiveFormatting","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\twithoutInteractiveFormatting\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 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","next","previous","variations","isDefault","name","title","description","icon","attributes","type","scope","example","label","arrow","forEach","variation","isActive","blockAttributes","variationAttributes"],"sources":["@wordpress/block-library/src/post-navigation-link/variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { next, previous } from '@wordpress/icons';\n\nconst variations = [\n\t{\n\t\tisDefault: true,\n\t\tname: 'post-next',\n\t\ttitle: __( 'Next Post' ),\n\t\tdescription: __(\n\t\t\t'Displays the post link that follows the current post.'\n\t\t),\n\t\ticon: next,\n\t\tattributes: { type: 'next' },\n\t\tscope: [ 'inserter', 'transform' ],\n\t\texample: {\n\t\t\tattributes: {\n\t\t\t\tlabel: __( 'Next post' ),\n\t\t\t\tarrow: 'arrow',\n\t\t\t},\n\t\t},\n\t},\n\t{\n\t\tname: 'post-previous',\n\t\ttitle: __( 'Previous Post' ),\n\t\tdescription: __(\n\t\t\t'Displays the post link that precedes the current post.'\n\t\t),\n\t\ticon: previous,\n\t\tattributes: { type: 'previous' },\n\t\tscope: [ 'inserter', 'transform' ],\n\t\texample: {\n\t\t\tattributes: {\n\t\t\t\tlabel: __( 'Previous post' ),\n\t\t\t\tarrow: 'arrow',\n\t\t\t},\n\t\t},\n\t},\n];\n\n/**\n * Add `isActive` function to all `post-navigation-link` variations, if not defined.\n * `isActive` function is used to find a variation match from a created\n * Block by providing its attributes.\n */\nvariations.forEach( ( variation ) => {\n\tif ( variation.isActive ) {\n\t\treturn;\n\t}\n\tvariation.isActive = ( blockAttributes, variationAttributes ) =>\n\t\tblockAttributes.type === variationAttributes.type;\n} );\n\nexport default variations;\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["__","next","previous","variations","isDefault","name","title","description","icon","attributes","type","scope","example","label","arrow","forEach","variation","isActive","blockAttributes","variationAttributes"],"sources":["@wordpress/block-library/src/post-navigation-link/variations.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { next, previous } from '@wordpress/icons';\n\nconst variations = [\n\t{\n\t\tisDefault: true,\n\t\tname: 'post-next',\n\t\ttitle: __( 'Next Post' ),\n\t\tdescription: __(\n\t\t\t'Displays the post link that follows the current post.'\n\t\t),\n\t\ticon: next,\n\t\tattributes: { type: 'next' },\n\t\tscope: [ 'inserter', 'transform' ],\n\t\texample: {\n\t\t\tattributes: {\n\t\t\t\tlabel: __( 'Next post' ),\n\t\t\t\tarrow: 'arrow',\n\t\t\t},\n\t\t},\n\t},\n\t{\n\t\tname: 'post-previous',\n\t\ttitle: __( 'Previous Post' ),\n\t\tdescription: __(\n\t\t\t'Displays the post link that precedes the current post.'\n\t\t),\n\t\ticon: previous,\n\t\tattributes: { type: 'previous' },\n\t\tscope: [ 'inserter', 'transform' ],\n\t\texample: {\n\t\t\tattributes: {\n\t\t\t\tlabel: __( 'Previous post' ),\n\t\t\t\tarrow: 'arrow',\n\t\t\t},\n\t\t},\n\t},\n];\n\n/**\n * Add `isActive` function to all `post-navigation-link` variations, if not defined.\n * `isActive` function is used to find a variation match from a created\n * Block by providing its attributes.\n */\nvariations.forEach( ( variation ) => {\n\tif ( variation.isActive ) {\n\t\treturn;\n\t}\n\tvariation.isActive = ( blockAttributes, variationAttributes ) =>\n\t\tblockAttributes.type === variationAttributes.type;\n} );\n\nexport default variations;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,IAAI,EAAEC,QAAQ,QAAQ,kBAAkB;AAEjD,MAAMC,UAAU,GAAG,CAClB;EACCC,SAAS,EAAE,IAAI;EACfC,IAAI,EAAE,WAAW;EACjBC,KAAK,EAAEN,EAAE,CAAE,WAAY,CAAC;EACxBO,WAAW,EAAEP,EAAE,CACd,uDACD,CAAC;EACDQ,IAAI,EAAEP,IAAI;EACVQ,UAAU,EAAE;IAAEC,IAAI,EAAE;EAAO,CAAC;EAC5BC,KAAK,EAAE,CAAE,UAAU,EAAE,WAAW,CAAE;EAClCC,OAAO,EAAE;IACRH,UAAU,EAAE;MACXI,KAAK,EAAEb,EAAE,CAAE,WAAY,CAAC;MACxBc,KAAK,EAAE;IACR;EACD;AACD,CAAC,EACD;EACCT,IAAI,EAAE,eAAe;EACrBC,KAAK,EAAEN,EAAE,CAAE,eAAgB,CAAC;EAC5BO,WAAW,EAAEP,EAAE,CACd,wDACD,CAAC;EACDQ,IAAI,EAAEN,QAAQ;EACdO,UAAU,EAAE;IAAEC,IAAI,EAAE;EAAW,CAAC;EAChCC,KAAK,EAAE,CAAE,UAAU,EAAE,WAAW,CAAE;EAClCC,OAAO,EAAE;IACRH,UAAU,EAAE;MACXI,KAAK,EAAEb,EAAE,CAAE,eAAgB,CAAC;MAC5Bc,KAAK,EAAE;IACR;EACD;AACD,CAAC,CACD;;AAED;AACA;AACA;AACA;AACA;AACAX,UAAU,CAACY,OAAO,CAAIC,SAAS,IAAM;EACpC,IAAKA,SAAS,CAACC,QAAQ,EAAG;IACzB;EACD;EACAD,SAAS,CAACC,QAAQ,GAAG,CAAEC,eAAe,EAAEC,mBAAmB,KAC1DD,eAAe,CAACR,IAAI,KAAKS,mBAAmB,CAACT,IAAI;AACnD,CAAE,CAAC;AAEH,eAAeP,UAAU","ignoreList":[]}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/* wp:polyfill */
|
|
2
1
|
/**
|
|
3
2
|
* External dependencies
|
|
4
3
|
*/
|
|
@@ -168,18 +167,26 @@ export default function PostTemplateEdit({
|
|
|
168
167
|
query.format = format;
|
|
169
168
|
}
|
|
170
169
|
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
170
|
+
/*
|
|
171
|
+
* Handle cases where sticky is set to `exclude` or `only`.
|
|
172
|
+
* Which works as a `post__in/post__not_in` query for sticky posts.
|
|
173
|
+
*/
|
|
174
|
+
if (sticky && sticky !== 'ignore') {
|
|
175
175
|
query.sticky = sticky === 'only';
|
|
176
176
|
}
|
|
177
|
+
if (sticky === 'ignore') {
|
|
178
|
+
// Remove any leftover sticky query parameter.
|
|
179
|
+
delete query.sticky;
|
|
180
|
+
query.ignore_sticky = true;
|
|
181
|
+
}
|
|
182
|
+
|
|
177
183
|
// If `inherit` is truthy, adjust conditionally the query to create a better preview.
|
|
184
|
+
let currentPostType = postType;
|
|
178
185
|
if (inherit) {
|
|
179
186
|
// Change the post-type if needed.
|
|
180
187
|
if (templateSlug?.startsWith('archive-')) {
|
|
181
188
|
query.postType = templateSlug.replace('archive-', '');
|
|
182
|
-
|
|
189
|
+
currentPostType = query.postType;
|
|
183
190
|
} else if (templateCategory) {
|
|
184
191
|
query.categories = templateCategory[0]?.id;
|
|
185
192
|
} else if (templateTag) {
|
|
@@ -191,7 +198,7 @@ export default function PostTemplateEdit({
|
|
|
191
198
|
}
|
|
192
199
|
// When we preview Query Loop blocks we should prefer the current
|
|
193
200
|
// block's postType, which is passed through block context.
|
|
194
|
-
const usedPostType = previewPostType ||
|
|
201
|
+
const usedPostType = previewPostType || currentPostType;
|
|
195
202
|
return {
|
|
196
203
|
posts: getEntityRecords('postType', usedPostType, {
|
|
197
204
|
...query,
|
|
@@ -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","templateTag","orderby","taxonomies","builtTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","taxonomy","find","rest_base","keys","length","assign","parent","categories","id","tags","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 templateTag =\n\t\t\t\tinherit &&\n\t\t\t\ttemplateSlug?.startsWith( 'tag-' ) &&\n\t\t\t\tgetEntityRecords( 'taxonomy', 'post_tag', {\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( 'tag-', '' ),\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} else if ( templateTag ) {\n\t\t\t\t\tquery.tags = templateTag[ 0 ]?.id;\n\t\t\t\t} else if (\n\t\t\t\t\ttemplateSlug?.startsWith( 'taxonomy-post_format' )\n\t\t\t\t) {\n\t\t\t\t\t// Get the post format slug from the template slug by removing the prefix.\n\t\t\t\t\tquery.format = templateSlug.replace(\n\t\t\t\t\t\t'taxonomy-post_format-post-format-',\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\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","templateTag","orderby","taxonomies","builtTaxQuery","Object","entries","reduce","accumulator","taxonomySlug","terms","taxonomy","find","rest_base","keys","length","assign","parent","ignore_sticky","currentPostType","categories","id","tags","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 templateTag =\n\t\t\t\tinherit &&\n\t\t\t\ttemplateSlug?.startsWith( 'tag-' ) &&\n\t\t\t\tgetEntityRecords( 'taxonomy', 'post_tag', {\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( 'tag-', '' ),\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/*\n\t\t\t * Handle cases where sticky is set to `exclude` or `only`.\n\t\t\t * Which works as a `post__in/post__not_in` query for sticky posts.\n\t\t\t */\n\t\t\tif ( sticky && sticky !== 'ignore' ) {\n\t\t\t\tquery.sticky = sticky === 'only';\n\t\t\t}\n\n\t\t\tif ( sticky === 'ignore' ) {\n\t\t\t\t// Remove any leftover sticky query parameter.\n\t\t\t\tdelete query.sticky;\n\t\t\t\tquery.ignore_sticky = true;\n\t\t\t}\n\n\t\t\t// If `inherit` is truthy, adjust conditionally the query to create a better preview.\n\t\t\tlet currentPostType = postType;\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\tcurrentPostType = 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} else if ( templateTag ) {\n\t\t\t\t\tquery.tags = templateTag[ 0 ]?.id;\n\t\t\t\t} else if (\n\t\t\t\t\ttemplateSlug?.startsWith( 'taxonomy-post_format' )\n\t\t\t\t) {\n\t\t\t\t\t// Get the post format slug from the template slug by removing the prefix.\n\t\t\t\t\tquery.format = templateSlug.replace(\n\t\t\t\t\t\t'taxonomy-post_format-post-format-',\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\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 || currentPostType;\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":[]}
|