@wordpress/block-library 9.13.1-next.cd6172eb0.0 → 9.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/avatar/user-control.js +1 -0
- package/build/avatar/user-control.js.map +1 -1
- package/build/block/deprecated.js +1 -0
- package/build/block/deprecated.js.map +1 -1
- package/build/block/edit.js +1 -0
- package/build/block/edit.js.map +1 -1
- package/build/button/deprecated.js +1 -0
- package/build/button/deprecated.js.map +1 -1
- package/build/button/edit.js +2 -2
- package/build/button/edit.js.map +1 -1
- package/build/buttons/transforms.js +1 -0
- package/build/buttons/transforms.js.map +1 -1
- package/build/categories/edit.js +1 -0
- package/build/categories/edit.js.map +1 -1
- package/build/column/column-preview.native.js +1 -0
- package/build/column/column-preview.native.js.map +1 -1
- package/build/columns/columnCalculations.native.js +1 -0
- package/build/columns/columnCalculations.native.js.map +1 -1
- package/build/columns/deprecated.js +1 -0
- package/build/columns/deprecated.js.map +1 -1
- package/build/columns/edit.js +1 -0
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +1 -0
- package/build/columns/edit.native.js.map +1 -1
- package/build/columns/transforms.js +1 -0
- package/build/columns/transforms.js.map +1 -1
- package/build/columns/utils.js +1 -0
- package/build/columns/utils.js.map +1 -1
- package/build/comment-template/edit.js +1 -0
- package/build/comment-template/edit.js.map +1 -1
- package/build/comment-template/hooks.js +1 -0
- package/build/comment-template/hooks.js.map +1 -1
- package/build/comment-template/util.js +1 -0
- package/build/comment-template/util.js.map +1 -1
- package/build/details/transforms.js +1 -0
- package/build/details/transforms.js.map +1 -1
- package/build/embed/embed-placeholder.native.js +1 -0
- package/build/embed/embed-placeholder.native.js.map +1 -1
- package/build/embed/util.js +1 -0
- package/build/embed/util.js.map +1 -1
- package/build/embed/variations.js +1 -0
- package/build/embed/variations.js.map +1 -1
- package/build/embed/wp-embed-preview.js +1 -0
- package/build/embed/wp-embed-preview.js.map +1 -1
- package/build/file/transforms.js +1 -0
- package/build/file/transforms.js.map +1 -1
- package/build/footnotes/edit.js +1 -0
- package/build/footnotes/edit.js.map +1 -1
- package/build/form/index.js +1 -2
- package/build/form/index.js.map +1 -1
- package/build/form/view.js +10 -5
- package/build/form/view.js.map +1 -1
- package/build/freeform/modal.js +1 -0
- package/build/freeform/modal.js.map +1 -1
- package/build/gallery/deprecated.js +1 -0
- package/build/gallery/deprecated.js.map +1 -1
- package/build/gallery/edit.js +1 -0
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/shared.js +1 -0
- package/build/gallery/shared.js.map +1 -1
- package/build/gallery/transforms.js +1 -0
- package/build/gallery/transforms.js.map +1 -1
- package/build/gallery/use-get-media.js +1 -0
- package/build/gallery/use-get-media.js.map +1 -1
- package/build/gallery/use-get-media.native.js +1 -0
- package/build/gallery/use-get-media.native.js.map +1 -1
- package/build/gallery/use-get-new-images.js +1 -0
- package/build/gallery/use-get-new-images.js.map +1 -1
- package/build/gallery/use-image-sizes.js +1 -0
- package/build/gallery/use-image-sizes.js.map +1 -1
- package/build/group/placeholder.js +1 -0
- package/build/group/placeholder.js.map +1 -1
- package/build/group/transforms.js +1 -0
- package/build/group/transforms.js.map +1 -1
- package/build/heading/transforms.js +1 -0
- package/build/heading/transforms.js.map +1 -1
- package/build/html/preview.js +1 -0
- package/build/html/preview.js.map +1 -1
- package/build/image/edit.js +1 -0
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +1 -0
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +2 -1
- package/build/image/image.js.map +1 -1
- package/build/image/transforms.js +1 -0
- package/build/image/transforms.js.map +1 -1
- package/build/image/utils.js +1 -0
- package/build/image/utils.js.map +1 -1
- package/build/image/view.js +1 -3
- package/build/image/view.js.map +1 -1
- package/build/index.js +2 -1
- package/build/index.js.map +1 -1
- package/build/index.native.js +1 -0
- package/build/index.native.js.map +1 -1
- package/build/latest-posts/edit.js +1 -0
- package/build/latest-posts/edit.js.map +1 -1
- package/build/list/transforms.js +1 -0
- package/build/list/transforms.js.map +1 -1
- package/build/list/utils.js +1 -0
- package/build/list/utils.js.map +1 -1
- package/build/list-item/hooks/use-indent-list-item.js +1 -0
- package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
- package/build/list-item/transforms.js +1 -0
- package/build/list-item/transforms.js.map +1 -1
- package/build/media-text/edit.js +1 -0
- package/build/media-text/edit.js.map +1 -1
- package/build/more/save.js +1 -0
- package/build/more/save.js.map +1 -1
- package/build/navigation/deprecated.js +1 -0
- package/build/navigation/deprecated.js.map +1 -1
- package/build/navigation/edit/index.js +1 -0
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/use-generate-default-navigation-title.js +1 -0
- package/build/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build/navigation/menu-items-to-blocks.js +1 -0
- package/build/navigation/menu-items-to-blocks.js.map +1 -1
- package/build/navigation/use-template-part-area-label.js +1 -0
- package/build/navigation/use-template-part-area-label.js.map +1 -1
- package/build/navigation/view.js +1 -0
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +1 -2
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/hooks.js +1 -0
- package/build/navigation-link/hooks.js.map +1 -1
- package/build/navigation-link/link-ui.js +3 -3
- package/build/navigation-link/link-ui.js.map +1 -1
- package/build/navigation-submenu/edit.js +0 -1
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/edit.js +1 -0
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/use-convert-to-navigation-links.js +1 -0
- package/build/page-list/use-convert-to-navigation-links.js.map +1 -1
- package/build/paragraph/edit.js +8 -2
- package/build/paragraph/edit.js.map +1 -1
- package/build/pattern/edit.js +1 -0
- package/build/pattern/edit.js.map +1 -1
- package/build/post-author/edit.js +1 -0
- package/build/post-author/edit.js.map +1 -1
- package/build/post-featured-image/dimension-controls.js +1 -0
- package/build/post-featured-image/dimension-controls.js.map +1 -1
- package/build/post-navigation-link/edit.js +1 -0
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-navigation-link/variations.js +1 -0
- package/build/post-navigation-link/variations.js.map +1 -1
- package/build/post-template/edit.js +1 -0
- package/build/post-template/edit.js.map +1 -1
- package/build/post-template/index.js +1 -1
- package/build/post-template/index.js.map +1 -1
- package/build/post-terms/edit.js +1 -0
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-terms/hooks.js +1 -0
- package/build/post-terms/hooks.js.map +1 -1
- package/build/pullquote/blockquote.native.js +1 -0
- package/build/pullquote/blockquote.native.js.map +1 -1
- package/build/pullquote/transforms.js +1 -0
- package/build/pullquote/transforms.js.map +1 -1
- package/build/query/deprecated.js +1 -0
- package/build/query/deprecated.js.map +1 -1
- package/build/query/edit/inspector-controls/author-control.js +1 -0
- package/build/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build/query/edit/inspector-controls/format-controls.js +1 -0
- package/build/query/edit/inspector-controls/format-controls.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +1 -0
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/parent-control.js +1 -0
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +1 -0
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query/utils.js +1 -0
- package/build/query/utils.js.map +1 -1
- package/build/query-no-results/index.js +1 -1
- package/build/query-no-results/index.js.map +1 -1
- package/build/query-title/variations.js +1 -0
- package/build/query-title/variations.js.map +1 -1
- package/build/query-total/edit.js +92 -0
- package/build/query-total/edit.js.map +1 -0
- package/build/query-total/icons.js +46 -0
- package/build/query-total/icons.js.map +1 -0
- package/build/query-total/index.js +74 -0
- package/build/query-total/index.js.map +1 -0
- package/build/query-total/init.js +12 -0
- package/build/query-total/init.js.map +1 -0
- package/build/quote/deprecated.js +1 -0
- package/build/quote/deprecated.js.map +1 -1
- package/build/quote/transforms.js +1 -0
- package/build/quote/transforms.js.map +1 -1
- package/build/social-link/social-list.js +1 -0
- package/build/social-link/social-list.js.map +1 -1
- package/build/social-link/variations.js +1 -0
- package/build/social-link/variations.js.map +1 -1
- package/build/social-links/edit.js +1 -0
- package/build/social-links/edit.js.map +1 -1
- package/build/social-links/edit.native.js +1 -0
- package/build/social-links/edit.native.js.map +1 -1
- package/build/spacer/controls.js +1 -0
- package/build/spacer/controls.js.map +1 -1
- package/build/table/deprecated.js +1 -0
- package/build/table/deprecated.js.map +1 -1
- package/build/table/edit.js +1 -0
- package/build/table/edit.js.map +1 -1
- package/build/table/save.js +1 -0
- package/build/table/save.js.map +1 -1
- package/build/table/state.js +1 -0
- package/build/table/state.js.map +1 -1
- package/build/table/transforms.js +1 -0
- package/build/table/transforms.js.map +1 -1
- package/build/table-of-contents/list.js +1 -0
- package/build/table-of-contents/list.js.map +1 -1
- package/build/table-of-contents/utils.js +1 -0
- package/build/table-of-contents/utils.js.map +1 -1
- package/build/tag-cloud/edit.js +1 -0
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +1 -0
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/import-controls.js +1 -0
- package/build/template-part/edit/import-controls.js.map +1 -1
- package/build/template-part/edit/selection-modal.js +1 -0
- package/build/template-part/edit/selection-modal.js.map +1 -1
- package/build/template-part/edit/utils/hooks.js +1 -0
- package/build/template-part/edit/utils/hooks.js.map +1 -1
- package/build/template-part/edit/utils/transformers.js +1 -0
- package/build/template-part/edit/utils/transformers.js.map +1 -1
- package/build/template-part/variations.js +1 -0
- package/build/template-part/variations.js.map +1 -1
- package/build/text-columns/edit.js +1 -0
- package/build/text-columns/edit.js.map +1 -1
- package/build/text-columns/save.js +1 -0
- package/build/text-columns/save.js.map +1 -1
- package/build/text-columns/transforms.js +1 -0
- package/build/text-columns/transforms.js.map +1 -1
- package/build/utils/get-transformed-metadata.js +1 -0
- package/build/utils/get-transformed-metadata.js.map +1 -1
- package/build/utils/search-patterns.js +1 -0
- package/build/utils/search-patterns.js.map +1 -1
- package/build/utils/transformation-categories.native.js +1 -0
- package/build/utils/transformation-categories.native.js.map +1 -1
- package/build/video/tracks-editor.js +1 -0
- package/build/video/tracks-editor.js.map +1 -1
- package/build/video/tracks.js +1 -0
- package/build/video/tracks.js.map +1 -1
- package/build-module/avatar/user-control.js +1 -0
- package/build-module/avatar/user-control.js.map +1 -1
- package/build-module/block/deprecated.js +1 -0
- package/build-module/block/deprecated.js.map +1 -1
- package/build-module/block/edit.js +1 -0
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/deprecated.js +1 -0
- package/build-module/button/deprecated.js.map +1 -1
- package/build-module/button/edit.js +1 -1
- package/build-module/button/edit.js.map +1 -1
- package/build-module/buttons/transforms.js +1 -0
- package/build-module/buttons/transforms.js.map +1 -1
- package/build-module/categories/edit.js +1 -0
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/column/column-preview.native.js +1 -0
- package/build-module/column/column-preview.native.js.map +1 -1
- package/build-module/columns/columnCalculations.native.js +1 -0
- package/build-module/columns/columnCalculations.native.js.map +1 -1
- package/build-module/columns/deprecated.js +1 -0
- package/build-module/columns/deprecated.js.map +1 -1
- package/build-module/columns/edit.js +1 -0
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +1 -0
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/columns/transforms.js +1 -0
- package/build-module/columns/transforms.js.map +1 -1
- package/build-module/columns/utils.js +1 -0
- package/build-module/columns/utils.js.map +1 -1
- package/build-module/comment-template/edit.js +1 -0
- package/build-module/comment-template/edit.js.map +1 -1
- package/build-module/comment-template/hooks.js +1 -0
- package/build-module/comment-template/hooks.js.map +1 -1
- package/build-module/comment-template/util.js +1 -0
- package/build-module/comment-template/util.js.map +1 -1
- package/build-module/details/transforms.js +1 -0
- package/build-module/details/transforms.js.map +1 -1
- package/build-module/embed/embed-placeholder.native.js +1 -0
- package/build-module/embed/embed-placeholder.native.js.map +1 -1
- package/build-module/embed/util.js +1 -0
- package/build-module/embed/util.js.map +1 -1
- package/build-module/embed/variations.js +1 -0
- package/build-module/embed/variations.js.map +1 -1
- package/build-module/embed/wp-embed-preview.js +1 -0
- package/build-module/embed/wp-embed-preview.js.map +1 -1
- package/build-module/file/transforms.js +1 -0
- package/build-module/file/transforms.js.map +1 -1
- package/build-module/footnotes/edit.js +1 -0
- package/build-module/footnotes/edit.js.map +1 -1
- package/build-module/form/index.js +1 -2
- package/build-module/form/index.js.map +1 -1
- package/build-module/form/view.js +10 -5
- package/build-module/form/view.js.map +1 -1
- package/build-module/freeform/modal.js +1 -0
- package/build-module/freeform/modal.js.map +1 -1
- package/build-module/gallery/deprecated.js +1 -0
- package/build-module/gallery/deprecated.js.map +1 -1
- package/build-module/gallery/edit.js +1 -0
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/shared.js +1 -0
- package/build-module/gallery/shared.js.map +1 -1
- package/build-module/gallery/transforms.js +1 -0
- package/build-module/gallery/transforms.js.map +1 -1
- package/build-module/gallery/use-get-media.js +1 -0
- package/build-module/gallery/use-get-media.js.map +1 -1
- package/build-module/gallery/use-get-media.native.js +1 -0
- package/build-module/gallery/use-get-media.native.js.map +1 -1
- package/build-module/gallery/use-get-new-images.js +1 -0
- package/build-module/gallery/use-get-new-images.js.map +1 -1
- package/build-module/gallery/use-image-sizes.js +1 -0
- package/build-module/gallery/use-image-sizes.js.map +1 -1
- package/build-module/group/placeholder.js +1 -0
- package/build-module/group/placeholder.js.map +1 -1
- package/build-module/group/transforms.js +1 -0
- package/build-module/group/transforms.js.map +1 -1
- package/build-module/heading/transforms.js +1 -0
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/html/preview.js +1 -0
- package/build-module/html/preview.js.map +1 -1
- package/build-module/image/edit.js +1 -0
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +1 -0
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +2 -1
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/transforms.js +1 -0
- package/build-module/image/transforms.js.map +1 -1
- package/build-module/image/utils.js +1 -0
- package/build-module/image/utils.js.map +1 -1
- package/build-module/image/view.js +1 -3
- package/build-module/image/view.js.map +1 -1
- package/build-module/index.js +2 -1
- package/build-module/index.js.map +1 -1
- package/build-module/index.native.js +1 -0
- package/build-module/index.native.js.map +1 -1
- package/build-module/latest-posts/edit.js +1 -0
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/list/transforms.js +1 -0
- package/build-module/list/transforms.js.map +1 -1
- package/build-module/list/utils.js +1 -0
- package/build-module/list/utils.js.map +1 -1
- package/build-module/list-item/hooks/use-indent-list-item.js +1 -0
- package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
- package/build-module/list-item/transforms.js +1 -0
- package/build-module/list-item/transforms.js.map +1 -1
- package/build-module/media-text/edit.js +1 -0
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/more/save.js +1 -0
- package/build-module/more/save.js.map +1 -1
- package/build-module/navigation/deprecated.js +1 -0
- package/build-module/navigation/deprecated.js.map +1 -1
- package/build-module/navigation/edit/index.js +1 -0
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/use-generate-default-navigation-title.js +1 -0
- package/build-module/navigation/edit/use-generate-default-navigation-title.js.map +1 -1
- package/build-module/navigation/menu-items-to-blocks.js +1 -0
- package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
- package/build-module/navigation/use-template-part-area-label.js +1 -0
- package/build-module/navigation/use-template-part-area-label.js.map +1 -1
- package/build-module/navigation/view.js +1 -0
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +1 -2
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/hooks.js +1 -0
- package/build-module/navigation-link/hooks.js.map +1 -1
- package/build-module/navigation-link/link-ui.js +1 -1
- package/build-module/navigation-link/link-ui.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +0 -1
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/edit.js +1 -0
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/use-convert-to-navigation-links.js +1 -0
- package/build-module/page-list/use-convert-to-navigation-links.js.map +1 -1
- package/build-module/paragraph/edit.js +8 -2
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/pattern/edit.js +1 -0
- package/build-module/pattern/edit.js.map +1 -1
- package/build-module/post-author/edit.js +1 -0
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-featured-image/dimension-controls.js +1 -0
- package/build-module/post-featured-image/dimension-controls.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +1 -0
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-navigation-link/variations.js +1 -0
- package/build-module/post-navigation-link/variations.js.map +1 -1
- package/build-module/post-template/edit.js +1 -0
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-template/index.js +1 -1
- package/build-module/post-template/index.js.map +1 -1
- package/build-module/post-terms/edit.js +1 -0
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-terms/hooks.js +1 -0
- package/build-module/post-terms/hooks.js.map +1 -1
- package/build-module/pullquote/blockquote.native.js +1 -0
- package/build-module/pullquote/blockquote.native.js.map +1 -1
- package/build-module/pullquote/transforms.js +1 -0
- package/build-module/pullquote/transforms.js.map +1 -1
- package/build-module/query/deprecated.js +1 -0
- package/build-module/query/deprecated.js.map +1 -1
- package/build-module/query/edit/inspector-controls/author-control.js +1 -0
- package/build-module/query/edit/inspector-controls/author-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/format-controls.js +1 -0
- package/build-module/query/edit/inspector-controls/format-controls.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +1 -0
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/parent-control.js +1 -0
- package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +1 -0
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query/utils.js +1 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query-no-results/index.js +1 -1
- package/build-module/query-no-results/index.js.map +1 -1
- package/build-module/query-title/variations.js +1 -0
- package/build-module/query-title/variations.js.map +1 -1
- package/build-module/query-total/edit.js +85 -0
- package/build-module/query-total/edit.js.map +1 -0
- package/build-module/query-total/icons.js +39 -0
- package/build-module/query-total/icons.js.map +1 -0
- package/build-module/query-total/index.js +67 -0
- package/build-module/query-total/index.js.map +1 -0
- package/build-module/query-total/init.js +6 -0
- package/build-module/query-total/init.js.map +1 -0
- package/build-module/quote/deprecated.js +1 -0
- package/build-module/quote/deprecated.js.map +1 -1
- package/build-module/quote/transforms.js +1 -0
- package/build-module/quote/transforms.js.map +1 -1
- package/build-module/social-link/social-list.js +1 -0
- package/build-module/social-link/social-list.js.map +1 -1
- package/build-module/social-link/variations.js +1 -0
- package/build-module/social-link/variations.js.map +1 -1
- package/build-module/social-links/edit.js +1 -0
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/social-links/edit.native.js +1 -0
- package/build-module/social-links/edit.native.js.map +1 -1
- package/build-module/spacer/controls.js +1 -0
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/table/deprecated.js +1 -0
- package/build-module/table/deprecated.js.map +1 -1
- package/build-module/table/edit.js +1 -0
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table/save.js +1 -0
- package/build-module/table/save.js.map +1 -1
- package/build-module/table/state.js +1 -0
- package/build-module/table/state.js.map +1 -1
- package/build-module/table/transforms.js +1 -0
- package/build-module/table/transforms.js.map +1 -1
- package/build-module/table-of-contents/list.js +1 -0
- package/build-module/table-of-contents/list.js.map +1 -1
- package/build-module/table-of-contents/utils.js +1 -0
- package/build-module/table-of-contents/utils.js.map +1 -1
- package/build-module/tag-cloud/edit.js +1 -0
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +1 -0
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/import-controls.js +1 -0
- package/build-module/template-part/edit/import-controls.js.map +1 -1
- package/build-module/template-part/edit/selection-modal.js +1 -0
- package/build-module/template-part/edit/selection-modal.js.map +1 -1
- package/build-module/template-part/edit/utils/hooks.js +1 -0
- package/build-module/template-part/edit/utils/hooks.js.map +1 -1
- package/build-module/template-part/edit/utils/transformers.js +1 -0
- package/build-module/template-part/edit/utils/transformers.js.map +1 -1
- package/build-module/template-part/variations.js +1 -0
- package/build-module/template-part/variations.js.map +1 -1
- package/build-module/text-columns/edit.js +1 -0
- package/build-module/text-columns/edit.js.map +1 -1
- package/build-module/text-columns/save.js +1 -0
- package/build-module/text-columns/save.js.map +1 -1
- package/build-module/text-columns/transforms.js +1 -0
- package/build-module/text-columns/transforms.js.map +1 -1
- package/build-module/utils/get-transformed-metadata.js +1 -0
- package/build-module/utils/get-transformed-metadata.js.map +1 -1
- package/build-module/utils/search-patterns.js +1 -0
- package/build-module/utils/search-patterns.js.map +1 -1
- package/build-module/utils/transformation-categories.native.js +1 -0
- package/build-module/utils/transformation-categories.native.js.map +1 -1
- package/build-module/video/tracks-editor.js +1 -0
- package/build-module/video/tracks-editor.js.map +1 -1
- package/build-module/video/tracks.js +1 -0
- package/build-module/video/tracks.js.map +1 -1
- package/build-style/button/style-rtl.css +3 -3
- package/build-style/button/style.css +3 -3
- package/build-style/comments/editor-rtl.css +1 -1
- package/build-style/comments/editor.css +1 -1
- package/build-style/comments/style-rtl.css +1 -1
- package/build-style/comments/style.css +1 -1
- package/build-style/common-rtl.css +17 -17
- package/build-style/common.css +17 -17
- package/build-style/editor-rtl.css +41 -41
- package/build-style/editor.css +41 -41
- package/build-style/gallery/style-rtl.css +2 -2
- package/build-style/gallery/style.css +2 -2
- package/build-style/heading/style-rtl.css +11 -11
- package/build-style/heading/style.css +11 -11
- package/build-style/image/style-rtl.css +1 -1
- package/build-style/image/style.css +1 -1
- package/build-style/latest-comments/style-rtl.css +4 -4
- package/build-style/latest-comments/style.css +4 -4
- package/build-style/latest-posts/style-rtl.css +2 -1
- package/build-style/latest-posts/style.css +2 -1
- package/build-style/more/editor-rtl.css +1 -1
- package/build-style/more/editor.css +1 -1
- package/build-style/nextpage/editor-rtl.css +1 -1
- package/build-style/nextpage/editor.css +1 -1
- package/build-style/post-comments-form/style-rtl.css +2 -2
- package/build-style/post-comments-form/style.css +2 -2
- package/build-style/post-featured-image/editor-rtl.css +27 -27
- package/build-style/post-featured-image/editor.css +27 -27
- package/build-style/read-more/style-rtl.css +2 -2
- package/build-style/read-more/style.css +2 -2
- package/build-style/social-link/editor-rtl.css +2 -2
- package/build-style/social-link/editor.css +2 -2
- package/build-style/social-links/editor-rtl.css +2 -2
- package/build-style/social-links/editor.css +2 -2
- package/build-style/social-links/style-rtl.css +2 -2
- package/build-style/social-links/style.css +2 -2
- package/build-style/style-rtl.css +50 -49
- package/build-style/style.css +50 -49
- package/build-style/text-columns/style-rtl.css +3 -3
- package/build-style/text-columns/style.css +3 -3
- package/package.json +35 -34
- package/src/button/edit.js +1 -1
- package/src/form/block.json +1 -2
- package/src/form/index.php +1 -20
- package/src/form/view.js +18 -5
- package/src/image/image.js +1 -1
- package/src/image/index.php +1 -1
- package/src/image/view.js +1 -3
- package/src/index.js +2 -0
- package/src/latest-posts/style.scss +2 -1
- package/src/navigation-link/edit.js +0 -6
- package/src/navigation-link/link-ui.js +1 -1
- package/src/navigation-submenu/edit.js +0 -6
- package/src/paragraph/edit.js +11 -1
- package/src/post-template/block.json +1 -1
- package/src/query-no-results/block.json +1 -1
- package/src/query-total/block.json +45 -0
- package/src/query-total/edit.js +83 -0
- package/src/query-total/icons.js +43 -0
- package/src/query-total/index.js +18 -0
- package/src/query-total/index.php +92 -0
- package/src/query-total/init.js +6 -0
- package/tsconfig.tsbuildinfo +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/block-library",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.14.0",
|
|
4
4
|
"description": "Block library for the WordPress editor.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
"wpScript": true,
|
|
29
29
|
"wpScriptModuleExports": {
|
|
30
30
|
"./file/view": "./build-module/file/view.js",
|
|
31
|
+
"./form/view": "./build-module/form/view.js",
|
|
31
32
|
"./image/view": "./build-module/image/view.js",
|
|
32
33
|
"./navigation/view": "./build-module/navigation/view.js",
|
|
33
34
|
"./query/view": "./build-module/query/view.js",
|
|
@@ -40,39 +41,39 @@
|
|
|
40
41
|
],
|
|
41
42
|
"dependencies": {
|
|
42
43
|
"@babel/runtime": "7.25.7",
|
|
43
|
-
"@wordpress/a11y": "
|
|
44
|
-
"@wordpress/api-fetch": "
|
|
45
|
-
"@wordpress/autop": "
|
|
46
|
-
"@wordpress/blob": "
|
|
47
|
-
"@wordpress/block-editor": "
|
|
48
|
-
"@wordpress/blocks": "
|
|
44
|
+
"@wordpress/a11y": "*",
|
|
45
|
+
"@wordpress/api-fetch": "*",
|
|
46
|
+
"@wordpress/autop": "*",
|
|
47
|
+
"@wordpress/blob": "*",
|
|
48
|
+
"@wordpress/block-editor": "*",
|
|
49
|
+
"@wordpress/blocks": "*",
|
|
49
50
|
"@wordpress/components": "*",
|
|
50
|
-
"@wordpress/compose": "
|
|
51
|
-
"@wordpress/core-data": "
|
|
52
|
-
"@wordpress/data": "
|
|
53
|
-
"@wordpress/date": "
|
|
54
|
-
"@wordpress/deprecated": "
|
|
55
|
-
"@wordpress/dom": "
|
|
56
|
-
"@wordpress/element": "
|
|
57
|
-
"@wordpress/escape-html": "
|
|
58
|
-
"@wordpress/hooks": "
|
|
59
|
-
"@wordpress/html-entities": "
|
|
60
|
-
"@wordpress/i18n": "
|
|
61
|
-
"@wordpress/icons": "
|
|
62
|
-
"@wordpress/interactivity": "
|
|
63
|
-
"@wordpress/interactivity-router": "
|
|
64
|
-
"@wordpress/keyboard-shortcuts": "
|
|
65
|
-
"@wordpress/keycodes": "
|
|
66
|
-
"@wordpress/notices": "
|
|
67
|
-
"@wordpress/patterns": "
|
|
68
|
-
"@wordpress/primitives": "
|
|
69
|
-
"@wordpress/private-apis": "
|
|
70
|
-
"@wordpress/reusable-blocks": "
|
|
71
|
-
"@wordpress/rich-text": "
|
|
72
|
-
"@wordpress/server-side-render": "
|
|
73
|
-
"@wordpress/url": "
|
|
74
|
-
"@wordpress/viewport": "
|
|
75
|
-
"@wordpress/wordcount": "
|
|
51
|
+
"@wordpress/compose": "*",
|
|
52
|
+
"@wordpress/core-data": "*",
|
|
53
|
+
"@wordpress/data": "*",
|
|
54
|
+
"@wordpress/date": "*",
|
|
55
|
+
"@wordpress/deprecated": "*",
|
|
56
|
+
"@wordpress/dom": "*",
|
|
57
|
+
"@wordpress/element": "*",
|
|
58
|
+
"@wordpress/escape-html": "*",
|
|
59
|
+
"@wordpress/hooks": "*",
|
|
60
|
+
"@wordpress/html-entities": "*",
|
|
61
|
+
"@wordpress/i18n": "*",
|
|
62
|
+
"@wordpress/icons": "*",
|
|
63
|
+
"@wordpress/interactivity": "*",
|
|
64
|
+
"@wordpress/interactivity-router": "*",
|
|
65
|
+
"@wordpress/keyboard-shortcuts": "*",
|
|
66
|
+
"@wordpress/keycodes": "*",
|
|
67
|
+
"@wordpress/notices": "*",
|
|
68
|
+
"@wordpress/patterns": "*",
|
|
69
|
+
"@wordpress/primitives": "*",
|
|
70
|
+
"@wordpress/private-apis": "*",
|
|
71
|
+
"@wordpress/reusable-blocks": "*",
|
|
72
|
+
"@wordpress/rich-text": "*",
|
|
73
|
+
"@wordpress/server-side-render": "*",
|
|
74
|
+
"@wordpress/url": "*",
|
|
75
|
+
"@wordpress/viewport": "*",
|
|
76
|
+
"@wordpress/wordcount": "*",
|
|
76
77
|
"change-case": "^4.1.2",
|
|
77
78
|
"clsx": "^2.1.1",
|
|
78
79
|
"colord": "^2.7.0",
|
|
@@ -90,5 +91,5 @@
|
|
|
90
91
|
"publishConfig": {
|
|
91
92
|
"access": "public"
|
|
92
93
|
},
|
|
93
|
-
"gitHead": "
|
|
94
|
+
"gitHead": "b432c18934c9db866b6dba7d37517a4e97d642e3"
|
|
94
95
|
}
|
package/src/button/edit.js
CHANGED
|
@@ -29,11 +29,11 @@ import {
|
|
|
29
29
|
InspectorControls,
|
|
30
30
|
RichText,
|
|
31
31
|
useBlockProps,
|
|
32
|
+
LinkControl,
|
|
32
33
|
__experimentalUseBorderProps as useBorderProps,
|
|
33
34
|
__experimentalUseColorProps as useColorProps,
|
|
34
35
|
__experimentalGetSpacingClassesAndStyles as useSpacingProps,
|
|
35
36
|
__experimentalGetShadowClassesAndStyles as useShadowProps,
|
|
36
|
-
__experimentalLinkControl as LinkControl,
|
|
37
37
|
__experimentalGetElementClassName,
|
|
38
38
|
store as blockEditorStore,
|
|
39
39
|
useBlockEditingMode,
|
package/src/form/block.json
CHANGED
package/src/form/index.php
CHANGED
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
* @return string The content of the block being rendered.
|
|
15
15
|
*/
|
|
16
16
|
function render_block_core_form( $attributes, $content ) {
|
|
17
|
+
wp_enqueue_script_module( '@wordpress/block-library/form/view' );
|
|
17
18
|
|
|
18
19
|
$processed_content = new WP_HTML_Tag_Processor( $content );
|
|
19
20
|
$processed_content->next_tag( 'form' );
|
|
@@ -42,26 +43,6 @@ function render_block_core_form( $attributes, $content ) {
|
|
|
42
43
|
);
|
|
43
44
|
}
|
|
44
45
|
|
|
45
|
-
/**
|
|
46
|
-
* Additional data to add to the view.js script for this block.
|
|
47
|
-
*/
|
|
48
|
-
function block_core_form_view_script() {
|
|
49
|
-
if ( ! gutenberg_is_experiment_enabled( 'gutenberg-form-blocks' ) ) {
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
wp_localize_script(
|
|
54
|
-
'wp-block-form-view',
|
|
55
|
-
'wpBlockFormSettings',
|
|
56
|
-
array(
|
|
57
|
-
'nonce' => wp_create_nonce( 'wp-block-form' ),
|
|
58
|
-
'ajaxUrl' => admin_url( 'admin-ajax.php' ),
|
|
59
|
-
'action' => 'wp_block_form_email_submit',
|
|
60
|
-
)
|
|
61
|
-
);
|
|
62
|
-
}
|
|
63
|
-
add_action( 'wp_enqueue_scripts', 'block_core_form_view_script' );
|
|
64
|
-
|
|
65
46
|
/**
|
|
66
47
|
* Adds extra fields to the form.
|
|
67
48
|
*
|
package/src/form/view.js
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
|
+
let formSettings;
|
|
2
|
+
try {
|
|
3
|
+
formSettings = JSON.parse(
|
|
4
|
+
document.getElementById(
|
|
5
|
+
'wp-script-module-data-@wordpress/block-library/form/view'
|
|
6
|
+
)?.textContent
|
|
7
|
+
);
|
|
8
|
+
} catch {}
|
|
9
|
+
|
|
1
10
|
// eslint-disable-next-line eslint-comments/disable-enable-pair
|
|
2
11
|
/* eslint-disable no-undef */
|
|
3
12
|
document.querySelectorAll( 'form.wp-block-form' ).forEach( function ( form ) {
|
|
4
|
-
// Bail If the form is not using the mailto: action.
|
|
5
|
-
if (
|
|
13
|
+
// Bail If the form settings not provided or the form is not using the mailto: action.
|
|
14
|
+
if (
|
|
15
|
+
! formSettings ||
|
|
16
|
+
! form.action ||
|
|
17
|
+
! form.action.startsWith( 'mailto:' )
|
|
18
|
+
) {
|
|
6
19
|
return;
|
|
7
20
|
}
|
|
8
21
|
|
|
@@ -18,13 +31,13 @@ document.querySelectorAll( 'form.wp-block-form' ).forEach( function ( form ) {
|
|
|
18
31
|
// Get the form data and merge it with the form action and nonce.
|
|
19
32
|
const formData = Object.fromEntries( new FormData( form ).entries() );
|
|
20
33
|
formData.formAction = form.action;
|
|
21
|
-
formData._ajax_nonce =
|
|
22
|
-
formData.action =
|
|
34
|
+
formData._ajax_nonce = formSettings.nonce;
|
|
35
|
+
formData.action = formSettings.action;
|
|
23
36
|
formData._wp_http_referer = window.location.href;
|
|
24
37
|
formData.formAction = form.action;
|
|
25
38
|
|
|
26
39
|
try {
|
|
27
|
-
const response = await fetch(
|
|
40
|
+
const response = await fetch( formSettings.ajaxUrl, {
|
|
28
41
|
method: 'POST',
|
|
29
42
|
headers: {
|
|
30
43
|
'Content-Type': 'application/x-www-form-urlencoded',
|
package/src/image/image.js
CHANGED
package/src/image/index.php
CHANGED
|
@@ -290,6 +290,7 @@ function block_core_image_print_lightbox_overlay() {
|
|
|
290
290
|
data-wp-on-async--click="actions.hideLightbox"
|
|
291
291
|
data-wp-on-async-window--resize="callbacks.setOverlayStyles"
|
|
292
292
|
data-wp-on-async-window--scroll="actions.handleScroll"
|
|
293
|
+
data-wp-bind--style="state.overlayStyles"
|
|
293
294
|
tabindex="-1"
|
|
294
295
|
>
|
|
295
296
|
<button type="button" aria-label="$close_button_label" style="fill: $close_button_color" class="close-button">
|
|
@@ -306,7 +307,6 @@ function block_core_image_print_lightbox_overlay() {
|
|
|
306
307
|
</figure>
|
|
307
308
|
</div>
|
|
308
309
|
<div class="scrim" style="background-color: $background_color" aria-hidden="true"></div>
|
|
309
|
-
<style data-wp-text="state.overlayStyles"></style>
|
|
310
310
|
</div>
|
|
311
311
|
HTML;
|
|
312
312
|
}
|
package/src/image/view.js
CHANGED
|
@@ -341,7 +341,6 @@ const { state, actions, callbacks } = store(
|
|
|
341
341
|
// adding 1 pixel to the container width and height solves the problem,
|
|
342
342
|
// though this can be removed if the issue is fixed in the future.
|
|
343
343
|
state.overlayStyles = `
|
|
344
|
-
:root {
|
|
345
344
|
--wp--lightbox-initial-top-position: ${ screenPosY }px;
|
|
346
345
|
--wp--lightbox-initial-left-position: ${ screenPosX }px;
|
|
347
346
|
--wp--lightbox-container-width: ${ containerWidth + 1 }px;
|
|
@@ -352,8 +351,7 @@ const { state, actions, callbacks } = store(
|
|
|
352
351
|
--wp--lightbox-scrollbar-width: ${
|
|
353
352
|
window.innerWidth - document.documentElement.clientWidth
|
|
354
353
|
}px;
|
|
355
|
-
|
|
356
|
-
`;
|
|
354
|
+
`;
|
|
357
355
|
},
|
|
358
356
|
setButtonStyles() {
|
|
359
357
|
const { imageId } = getContext();
|
package/src/index.js
CHANGED
|
@@ -99,6 +99,7 @@ import * as queryPaginationNext from './query-pagination-next';
|
|
|
99
99
|
import * as queryPaginationNumbers from './query-pagination-numbers';
|
|
100
100
|
import * as queryPaginationPrevious from './query-pagination-previous';
|
|
101
101
|
import * as queryTitle from './query-title';
|
|
102
|
+
import * as queryTotal from './query-total';
|
|
102
103
|
import * as quote from './quote';
|
|
103
104
|
import * as reusableBlock from './block';
|
|
104
105
|
import * as readMore from './read-more';
|
|
@@ -211,6 +212,7 @@ const getAllBlocks = () => {
|
|
|
211
212
|
queryPaginationNumbers,
|
|
212
213
|
queryPaginationPrevious,
|
|
213
214
|
queryNoResults,
|
|
215
|
+
queryTotal,
|
|
214
216
|
readMore,
|
|
215
217
|
comments,
|
|
216
218
|
commentAuthorName,
|
|
@@ -527,12 +527,6 @@ export default function NavigationLinkEdit( {
|
|
|
527
527
|
) }
|
|
528
528
|
placeholder={ itemLabelPlaceholder }
|
|
529
529
|
withoutInteractiveFormatting
|
|
530
|
-
allowedFormats={ [
|
|
531
|
-
'core/bold',
|
|
532
|
-
'core/italic',
|
|
533
|
-
'core/image',
|
|
534
|
-
'core/strikethrough',
|
|
535
|
-
] }
|
|
536
530
|
/>
|
|
537
531
|
{ description && (
|
|
538
532
|
<span className="wp-block-navigation-item__description">
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
} from '@wordpress/components';
|
|
11
11
|
import { __, sprintf, isRTL } from '@wordpress/i18n';
|
|
12
12
|
import {
|
|
13
|
-
|
|
13
|
+
LinkControl,
|
|
14
14
|
store as blockEditorStore,
|
|
15
15
|
privateApis as blockEditorPrivateApis,
|
|
16
16
|
} from '@wordpress/block-editor';
|
|
@@ -461,12 +461,6 @@ export default function NavigationSubmenuEdit( {
|
|
|
461
461
|
aria-label={ __( 'Navigation link text' ) }
|
|
462
462
|
placeholder={ itemLabelPlaceholder }
|
|
463
463
|
withoutInteractiveFormatting
|
|
464
|
-
allowedFormats={ [
|
|
465
|
-
'core/bold',
|
|
466
|
-
'core/italic',
|
|
467
|
-
'core/image',
|
|
468
|
-
'core/strikethrough',
|
|
469
|
-
] }
|
|
470
464
|
onClick={ () => {
|
|
471
465
|
if ( ! openSubmenusOnClick && ! url ) {
|
|
472
466
|
setIsLinkOpen( true );
|
package/src/paragraph/edit.js
CHANGED
|
@@ -21,6 +21,7 @@ import {
|
|
|
21
21
|
useSettings,
|
|
22
22
|
useBlockEditingMode,
|
|
23
23
|
} from '@wordpress/block-editor';
|
|
24
|
+
import { getBlockSupport } from '@wordpress/blocks';
|
|
24
25
|
import { formatLtr } from '@wordpress/icons';
|
|
25
26
|
|
|
26
27
|
/**
|
|
@@ -47,7 +48,7 @@ function hasDropCapDisabled( align ) {
|
|
|
47
48
|
return align === ( isRTL() ? 'left' : 'right' ) || align === 'center';
|
|
48
49
|
}
|
|
49
50
|
|
|
50
|
-
function DropCapControl( { clientId, attributes, setAttributes } ) {
|
|
51
|
+
function DropCapControl( { clientId, attributes, setAttributes, name } ) {
|
|
51
52
|
// Please do not add a useSelect call to the paragraph block unconditionally.
|
|
52
53
|
// Every useSelect added to a (frequently used) block will degrade load
|
|
53
54
|
// and type performance. By moving it within InspectorControls, the subscription is
|
|
@@ -69,11 +70,18 @@ function DropCapControl( { clientId, attributes, setAttributes } ) {
|
|
|
69
70
|
helpText = __( 'Show a large initial letter.' );
|
|
70
71
|
}
|
|
71
72
|
|
|
73
|
+
const isDropCapControlEnabledByDefault = getBlockSupport(
|
|
74
|
+
name,
|
|
75
|
+
'typography.defaultControls.dropCap',
|
|
76
|
+
false
|
|
77
|
+
);
|
|
78
|
+
|
|
72
79
|
return (
|
|
73
80
|
<InspectorControls group="typography">
|
|
74
81
|
<ToolsPanelItem
|
|
75
82
|
hasValue={ () => !! dropCap }
|
|
76
83
|
label={ __( 'Drop cap' ) }
|
|
84
|
+
isShownByDefault={ isDropCapControlEnabledByDefault }
|
|
77
85
|
onDeselect={ () => setAttributes( { dropCap: undefined } ) }
|
|
78
86
|
resetAllFilter={ () => ( { dropCap: undefined } ) }
|
|
79
87
|
panelId={ clientId }
|
|
@@ -99,6 +107,7 @@ function ParagraphBlock( {
|
|
|
99
107
|
setAttributes,
|
|
100
108
|
clientId,
|
|
101
109
|
isSelected: isSingleSelected,
|
|
110
|
+
name,
|
|
102
111
|
} ) {
|
|
103
112
|
const { align, content, direction, dropCap, placeholder } = attributes;
|
|
104
113
|
const blockProps = useBlockProps( {
|
|
@@ -136,6 +145,7 @@ function ParagraphBlock( {
|
|
|
136
145
|
) }
|
|
137
146
|
{ isSingleSelected && (
|
|
138
147
|
<DropCapControl
|
|
148
|
+
name={ name }
|
|
139
149
|
clientId={ clientId }
|
|
140
150
|
attributes={ attributes }
|
|
141
151
|
setAttributes={ setAttributes }
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"name": "core/post-template",
|
|
5
5
|
"title": "Post Template",
|
|
6
6
|
"category": "theme",
|
|
7
|
-
"
|
|
7
|
+
"ancestor": [ "core/query" ],
|
|
8
8
|
"description": "Contains the block elements used to render a post, like the title, date, featured image, content or excerpt, and more.",
|
|
9
9
|
"textdomain": "default",
|
|
10
10
|
"usesContext": [
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"title": "No results",
|
|
6
6
|
"category": "theme",
|
|
7
7
|
"description": "Contains the block elements used to render content when no query results are found.",
|
|
8
|
-
"
|
|
8
|
+
"ancestor": [ "core/query" ],
|
|
9
9
|
"textdomain": "default",
|
|
10
10
|
"usesContext": [ "queryId", "query" ],
|
|
11
11
|
"example": {
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://schemas.wp.org/trunk/block.json",
|
|
3
|
+
"apiVersion": 3,
|
|
4
|
+
"name": "core/query-total",
|
|
5
|
+
"title": "Query Total",
|
|
6
|
+
"category": "theme",
|
|
7
|
+
"ancestor": [ "core/query" ],
|
|
8
|
+
"description": "Display the total number of results in a query.",
|
|
9
|
+
"textdomain": "default",
|
|
10
|
+
"attributes": {
|
|
11
|
+
"displayType": {
|
|
12
|
+
"type": "string",
|
|
13
|
+
"default": "total-results"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"usesContext": [ "queryId", "query" ],
|
|
17
|
+
"supports": {
|
|
18
|
+
"align": [ "wide", "full" ],
|
|
19
|
+
"html": false,
|
|
20
|
+
"spacing": {
|
|
21
|
+
"margin": true,
|
|
22
|
+
"padding": true
|
|
23
|
+
},
|
|
24
|
+
"color": {
|
|
25
|
+
"gradients": true,
|
|
26
|
+
"text": true,
|
|
27
|
+
"__experimentalDefaultControls": {
|
|
28
|
+
"background": true
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"typography": {
|
|
32
|
+
"fontSize": true,
|
|
33
|
+
"lineHeight": true,
|
|
34
|
+
"__experimentalFontFamily": true,
|
|
35
|
+
"__experimentalFontWeight": true,
|
|
36
|
+
"__experimentalFontStyle": true,
|
|
37
|
+
"__experimentalTextTransform": true,
|
|
38
|
+
"__experimentalTextDecoration": true,
|
|
39
|
+
"__experimentalLetterSpacing": true,
|
|
40
|
+
"__experimentalDefaultControls": {
|
|
41
|
+
"fontSize": true
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { useBlockProps, BlockControls } from '@wordpress/block-editor';
|
|
5
|
+
import { ToolbarGroup, ToolbarDropdownMenu } from '@wordpress/components';
|
|
6
|
+
import { __ } from '@wordpress/i18n';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Internal dependencies
|
|
10
|
+
*/
|
|
11
|
+
import { resultsFound, displayingResults } from './icons';
|
|
12
|
+
|
|
13
|
+
export default function QueryTotalEdit( { attributes, setAttributes } ) {
|
|
14
|
+
const { displayType } = attributes;
|
|
15
|
+
|
|
16
|
+
// Block properties and classes.
|
|
17
|
+
const blockProps = useBlockProps();
|
|
18
|
+
|
|
19
|
+
const getButtonPositionIcon = () => {
|
|
20
|
+
switch ( displayType ) {
|
|
21
|
+
case 'total-results':
|
|
22
|
+
return resultsFound;
|
|
23
|
+
case 'range-display':
|
|
24
|
+
return displayingResults;
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
const buttonPositionControls = [
|
|
29
|
+
{
|
|
30
|
+
role: 'menuitemradio',
|
|
31
|
+
title: __( 'Total results' ),
|
|
32
|
+
isActive: displayType === 'total-results',
|
|
33
|
+
icon: resultsFound,
|
|
34
|
+
onClick: () => {
|
|
35
|
+
setAttributes( { displayType: 'total-results' } );
|
|
36
|
+
},
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
role: 'menuitemradio',
|
|
40
|
+
title: __( 'Range display' ),
|
|
41
|
+
isActive: displayType === 'range-display',
|
|
42
|
+
icon: displayingResults,
|
|
43
|
+
onClick: () => {
|
|
44
|
+
setAttributes( { displayType: 'range-display' } );
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
];
|
|
48
|
+
|
|
49
|
+
// Controls for the block.
|
|
50
|
+
const controls = (
|
|
51
|
+
<>
|
|
52
|
+
<BlockControls>
|
|
53
|
+
<ToolbarGroup>
|
|
54
|
+
<ToolbarDropdownMenu
|
|
55
|
+
icon={ getButtonPositionIcon() }
|
|
56
|
+
label={ __( 'Change display type' ) }
|
|
57
|
+
controls={ buttonPositionControls }
|
|
58
|
+
/>
|
|
59
|
+
</ToolbarGroup>
|
|
60
|
+
</BlockControls>
|
|
61
|
+
</>
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
// Render output based on the selected display type.
|
|
65
|
+
const renderDisplay = () => {
|
|
66
|
+
if ( displayType === 'total-results' ) {
|
|
67
|
+
return <div>{ __( '12 results found' ) }</div>;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
if ( displayType === 'range-display' ) {
|
|
71
|
+
return <div>{ __( 'Displaying 1 – 10 of 12' ) }</div>;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
return null;
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
return (
|
|
78
|
+
<div { ...blockProps }>
|
|
79
|
+
{ controls }
|
|
80
|
+
{ renderDisplay() }
|
|
81
|
+
</div>
|
|
82
|
+
);
|
|
83
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { SVG, Path } from '@wordpress/components';
|
|
5
|
+
|
|
6
|
+
export const resultsFound = (
|
|
7
|
+
<SVG
|
|
8
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
9
|
+
viewBox="0 0 24 24"
|
|
10
|
+
width="24"
|
|
11
|
+
height="24"
|
|
12
|
+
aria-hidden="true"
|
|
13
|
+
focusable="false"
|
|
14
|
+
>
|
|
15
|
+
<Path d="M4 11h4v2H4v-2zm6 0h6v2h-6v-2zm8 0h2v2h-2v-2z" />
|
|
16
|
+
</SVG>
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
export const displayingResults = (
|
|
20
|
+
<SVG
|
|
21
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
22
|
+
viewBox="0 0 24 24"
|
|
23
|
+
width="24"
|
|
24
|
+
height="24"
|
|
25
|
+
aria-hidden="true"
|
|
26
|
+
focusable="false"
|
|
27
|
+
>
|
|
28
|
+
<Path d="M4 13h2v-2H4v2zm4 0h10v-2H8v2zm12 0h2v-2h-2v2z" />
|
|
29
|
+
</SVG>
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
export const queryTotal = (
|
|
33
|
+
<SVG
|
|
34
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
35
|
+
viewBox="0 0 24 24"
|
|
36
|
+
width="24"
|
|
37
|
+
height="24"
|
|
38
|
+
aria-hidden="true"
|
|
39
|
+
focusable="false"
|
|
40
|
+
>
|
|
41
|
+
<Path d="M18 4H6c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2Zm.5 14c0 .3-.2.5-.5.5H6c-.3 0-.5-.2-.5-.5V6c0-.3.2-.5.5-.5h12c.3 0 .5.2.5.5v12Zm-7-6-4.1 5h8.8v-3h-1.5v1.5h-4.2l2.9-3.5-2.9-3.5h4.2V10h1.5V7H7.4l4.1 5Z" />
|
|
42
|
+
</SVG>
|
|
43
|
+
);
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Internal dependencies
|
|
3
|
+
*/
|
|
4
|
+
import metadata from './block.json';
|
|
5
|
+
import edit from './edit';
|
|
6
|
+
import initBlock from '../utils/init-block';
|
|
7
|
+
import { queryTotal } from './icons';
|
|
8
|
+
|
|
9
|
+
/* Block settings */
|
|
10
|
+
const { name } = metadata;
|
|
11
|
+
export { metadata, name };
|
|
12
|
+
|
|
13
|
+
export const settings = {
|
|
14
|
+
icon: queryTotal,
|
|
15
|
+
edit,
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
export const init = () => initBlock( { name, metadata, settings } );
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
<?php
|
|
2
|
+
/**
|
|
3
|
+
* Server-side rendering of the `core/query-total` block.
|
|
4
|
+
*
|
|
5
|
+
* @package WordPress
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Renders the `query-total` block on the server.
|
|
10
|
+
*
|
|
11
|
+
* @since 6.8.0
|
|
12
|
+
*
|
|
13
|
+
* @param array $attributes Block attributes.
|
|
14
|
+
* @param string $content Block default content.
|
|
15
|
+
* @param WP_Block $block Block instance.
|
|
16
|
+
*
|
|
17
|
+
* @return string The rendered block content.
|
|
18
|
+
*/
|
|
19
|
+
function render_block_core_query_total( $attributes, $content, $block ) {
|
|
20
|
+
global $wp_query;
|
|
21
|
+
$wrapper_attributes = get_block_wrapper_attributes();
|
|
22
|
+
if ( isset( $block->context['query']['inherit'] ) && $block->context['query']['inherit'] ) {
|
|
23
|
+
$query_to_use = $wp_query;
|
|
24
|
+
$current_page = max( 1, get_query_var( 'paged', 1 ) );
|
|
25
|
+
} else {
|
|
26
|
+
$page_key = isset( $block->context['queryId'] ) ? 'query-' . $block->context['queryId'] . '-page' : 'query-page';
|
|
27
|
+
$current_page = isset( $_GET[ $page_key ] ) ? (int) $_GET[ $page_key ] : 1;
|
|
28
|
+
$query_to_use = new WP_Query( build_query_vars_from_query_block( $block, $current_page ) );
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
$max_rows = $query_to_use->found_posts;
|
|
32
|
+
$posts_per_page = $query_to_use->get( 'posts_per_page' );
|
|
33
|
+
|
|
34
|
+
// Calculate the range of posts being displayed.
|
|
35
|
+
$start = ( $current_page - 1 ) * $posts_per_page + 1;
|
|
36
|
+
$end = min( $start + $posts_per_page - 1, $max_rows );
|
|
37
|
+
|
|
38
|
+
// Prepare the display based on the `displayType` attribute.
|
|
39
|
+
$output = '';
|
|
40
|
+
switch ( $attributes['displayType'] ) {
|
|
41
|
+
case 'range-display':
|
|
42
|
+
if ( $start === $end ) {
|
|
43
|
+
$range_text = sprintf(
|
|
44
|
+
/* translators: 1: Start index of posts, 2: Total number of posts */
|
|
45
|
+
__( 'Displaying %1$s of %2$s' ),
|
|
46
|
+
'<strong>' . $start . '</strong>',
|
|
47
|
+
'<strong>' . $max_rows . '</strong>'
|
|
48
|
+
);
|
|
49
|
+
} else {
|
|
50
|
+
$range_text = sprintf(
|
|
51
|
+
/* translators: 1: Start index of posts, 2: End index of posts, 3: Total number of posts */
|
|
52
|
+
__( 'Displaying %1$s – %2$s of %3$s' ),
|
|
53
|
+
'<strong>' . $start . '</strong>',
|
|
54
|
+
'<strong>' . $end . '</strong>',
|
|
55
|
+
'<strong>' . $max_rows . '</strong>'
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
$output = sprintf( '<p>%s</p>', $range_text );
|
|
60
|
+
break;
|
|
61
|
+
|
|
62
|
+
case 'total-results':
|
|
63
|
+
default:
|
|
64
|
+
$output = sprintf(
|
|
65
|
+
'<p><strong>%d</strong> %s</p>',
|
|
66
|
+
$max_rows,
|
|
67
|
+
_n( 'result found', 'results found', $max_rows )
|
|
68
|
+
);
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
return sprintf(
|
|
73
|
+
'<div %1$s>%2$s</div>',
|
|
74
|
+
$wrapper_attributes,
|
|
75
|
+
$output
|
|
76
|
+
);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Registers the `query-total` block.
|
|
81
|
+
*
|
|
82
|
+
* @since 6.8.0
|
|
83
|
+
*/
|
|
84
|
+
function register_block_core_query_total() {
|
|
85
|
+
register_block_type_from_metadata(
|
|
86
|
+
__DIR__ . '/query-total',
|
|
87
|
+
array(
|
|
88
|
+
'render_callback' => 'render_block_core_query_total',
|
|
89
|
+
)
|
|
90
|
+
);
|
|
91
|
+
}
|
|
92
|
+
add_action( 'init', 'register_block_core_query_total' );
|