@wordpress/block-library 7.5.0 → 7.8.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 +10 -0
- package/README.md +3 -2
- package/babel-plugin.js +154 -0
- package/build/audio/edit.js +1 -1
- package/build/audio/edit.js.map +1 -1
- package/build/audio/index.js +6 -1
- package/build/audio/index.js.map +1 -1
- package/build/avatar/hooks.js +2 -2
- package/build/avatar/hooks.js.map +1 -1
- package/build/block/edit.js +10 -9
- package/build/block/edit.js.map +1 -1
- package/build/block/edit.native.js.map +1 -1
- package/build/button/deprecated.js +175 -35
- package/build/button/deprecated.js.map +1 -1
- package/build/button/edit.js +1 -1
- package/build/button/edit.js.map +1 -1
- package/build/button/edit.native.js.map +1 -1
- package/build/button/index.js +25 -1
- package/build/button/index.js.map +1 -1
- package/build/button/save.js +1 -1
- package/build/button/save.js.map +1 -1
- package/build/buttons/deprecated.js.map +1 -1
- package/build/buttons/edit.js.map +1 -1
- package/build/buttons/edit.native.js.map +1 -1
- package/build/categories/edit.js +1 -1
- package/build/categories/edit.js.map +1 -1
- package/build/categories/index.js +1 -1
- package/build/column/deprecated.js.map +1 -1
- package/build/column/edit.js.map +1 -1
- package/build/column/edit.native.js.map +1 -1
- package/build/columns/deprecated.js.map +1 -1
- package/build/columns/edit.js +1 -1
- package/build/columns/edit.js.map +1 -1
- package/build/columns/edit.native.js +1 -1
- package/build/columns/edit.native.js.map +1 -1
- package/build/columns/index.js +3 -1
- package/build/columns/index.js.map +1 -1
- package/build/columns/utils.js +1 -1
- package/build/columns/utils.js.map +1 -1
- package/build/comment-author-avatar/index.js +1 -0
- package/build/comment-author-avatar/index.js.map +1 -1
- package/build/comment-author-name/edit.js +4 -2
- package/build/comment-author-name/edit.js.map +1 -1
- package/build/comment-date/edit.js +1 -1
- package/build/comment-date/edit.js.map +1 -1
- package/build/comments-title/deprecated.js +110 -0
- package/build/comments-title/deprecated.js.map +1 -0
- package/build/comments-title/edit.js +35 -37
- package/build/comments-title/edit.js.map +1 -1
- package/build/comments-title/index.js +5 -8
- package/build/comments-title/index.js.map +1 -1
- package/build/cover/controls.native.js +2 -3
- package/build/cover/controls.native.js.map +1 -1
- package/build/cover/deprecated.js +212 -207
- package/build/cover/deprecated.js.map +1 -1
- package/build/cover/edit/block-controls.js +108 -0
- package/build/cover/edit/block-controls.js.map +1 -0
- package/build/cover/edit/cover-placeholder.js +49 -0
- package/build/cover/edit/cover-placeholder.js.map +1 -0
- package/build/cover/edit/index.js +336 -0
- package/build/cover/edit/index.js.map +1 -0
- package/build/cover/edit/inspector-controls.js +252 -0
- package/build/cover/edit/inspector-controls.js.map +1 -0
- package/build/cover/edit/resizable-cover.js +67 -0
- package/build/cover/edit/resizable-cover.js.map +1 -0
- package/build/cover/{use-cover-is-dark.js → edit/use-cover-is-dark.js} +0 -0
- package/build/cover/edit/use-cover-is-dark.js.map +1 -0
- package/build/cover/edit.native.js +0 -1
- package/build/cover/edit.native.js.map +1 -1
- package/build/cover/focal-point-settings-button.native.js.map +1 -1
- package/build/cover/save.js +18 -5
- package/build/cover/save.js.map +1 -1
- package/build/cover/shared.js +15 -9
- package/build/cover/shared.js.map +1 -1
- package/build/cover/transforms.js.map +1 -1
- package/build/embed/deprecated.js +6 -1
- package/build/embed/deprecated.js.map +1 -1
- package/build/embed/edit.js.map +1 -1
- package/build/embed/edit.native.js.map +1 -1
- package/build/embed/embed-controls.native.js.map +1 -1
- package/build/embed/embed-preview.js +1 -1
- package/build/embed/embed-preview.js.map +1 -1
- package/build/embed/index.js +6 -1
- package/build/embed/index.js.map +1 -1
- package/build/embed/transforms.js +6 -1
- package/build/embed/transforms.js.map +1 -1
- package/build/embed/util.js +6 -1
- package/build/embed/util.js.map +1 -1
- package/build/file/edit.js +1 -1
- package/build/file/edit.js.map +1 -1
- package/build/file/edit.native.js +0 -1
- package/build/file/edit.native.js.map +1 -1
- package/build/file/index.js.map +1 -1
- package/build/file/save.js +9 -1
- package/build/file/save.js.map +1 -1
- package/build/gallery/edit.js +3 -2
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.js +1 -1
- package/build/gallery/gallery.js.map +1 -1
- package/build/gallery/gallery.native.js.map +1 -1
- package/build/gallery/gap-styles.js +14 -4
- package/build/gallery/gap-styles.js.map +1 -1
- package/build/gallery/index.js +1 -1
- package/build/gallery/index.js.map +1 -1
- package/build/gallery/shared.js +29 -12
- package/build/gallery/shared.js.map +1 -1
- package/build/gallery/use-get-media.js +2 -1
- package/build/gallery/use-get-media.js.map +1 -1
- package/build/gallery/use-short-code-transform.js +19 -18
- package/build/gallery/use-short-code-transform.js.map +1 -1
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/gallery/v1/gallery-image.js.map +1 -1
- package/build/gallery/v1/gallery-image.native.js.map +1 -1
- package/build/gallery/v1/gallery.js +1 -1
- package/build/gallery/v1/gallery.js.map +1 -1
- package/build/heading/autogenerate-anchors.js +7 -2
- package/build/heading/autogenerate-anchors.js.map +1 -1
- package/build/heading/deprecated.js.map +1 -1
- package/build/heading/edit.js +6 -2
- package/build/heading/edit.js.map +1 -1
- package/build/heading/index.js +1 -0
- package/build/heading/index.js.map +1 -1
- package/build/heading/transforms.js +1 -0
- package/build/heading/transforms.js.map +1 -1
- package/build/image/deprecated.js.map +1 -1
- package/build/image/edit.js +5 -56
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +56 -4
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +4 -14
- package/build/image/image.js.map +1 -1
- package/build/image/index.js +5 -0
- package/build/image/index.js.map +1 -1
- package/build/image/transforms.js.map +1 -1
- package/build/image/utils.js +2 -1
- package/build/image/utils.js.map +1 -1
- package/build/index.js +46 -10
- package/build/index.js.map +1 -1
- package/build/is-block-metadata-experimental.js +18 -0
- package/build/is-block-metadata-experimental.js.map +1 -0
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-posts/edit.js +31 -5
- package/build/latest-posts/edit.js.map +1 -1
- package/build/latest-posts/edit.native.js.map +1 -1
- package/build/list/index.js.map +1 -1
- package/build/list/transforms.js +6 -0
- package/build/list/transforms.js.map +1 -1
- package/build/list/v2/edit.js +2 -1
- package/build/list/v2/edit.js.map +1 -1
- package/build/list/v2/migrate.js +1 -0
- package/build/list/v2/migrate.js.map +1 -1
- package/build/list/v2/transforms.js +46 -9
- package/build/list/v2/transforms.js.map +1 -1
- package/build/list-item/edit.js +7 -9
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/hooks/index.js +24 -0
- package/build/list-item/hooks/index.js.map +1 -1
- package/build/list-item/hooks/use-backspace.js +59 -0
- package/build/list-item/hooks/use-backspace.js.map +1 -0
- package/build/list-item/hooks/use-enter.js +6 -9
- package/build/list-item/hooks/use-enter.js.map +1 -1
- package/build/list-item/hooks/use-indent-list-item.js +33 -39
- package/build/list-item/hooks/use-indent-list-item.js.map +1 -1
- package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build/list-item/hooks/use-space.js +54 -0
- package/build/list-item/hooks/use-space.js.map +1 -0
- package/build/list-item/hooks/use-split.js +44 -0
- package/build/list-item/hooks/use-split.js.map +1 -0
- package/build/list-item/index.js +1 -0
- package/build/list-item/index.js.map +1 -1
- package/build/list-item/utils.js +1 -1
- package/build/list-item/utils.js.map +1 -1
- package/build/media-text/deprecated.js +5 -3
- package/build/media-text/deprecated.js.map +1 -1
- package/build/media-text/edit.native.js +2 -1
- package/build/media-text/edit.native.js.map +1 -1
- package/build/media-text/media-container.js +3 -3
- package/build/media-text/media-container.js.map +1 -1
- package/build/media-text/media-container.native.js +2 -4
- package/build/media-text/media-container.native.js.map +1 -1
- package/build/media-text/save.js +3 -1
- package/build/media-text/save.js.map +1 -1
- package/build/media-text/transforms.js +137 -8
- package/build/media-text/transforms.js.map +1 -1
- package/build/missing/edit.native.js.map +1 -1
- package/build/navigation/deprecated.js.map +1 -1
- package/build/navigation/edit/index.js +86 -81
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +1 -5
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build/navigation/use-navigation-entities.js +3 -3
- package/build/navigation/use-navigation-entities.js.map +1 -1
- package/build/navigation/use-navigation-menu.js +130 -38
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/navigation/use-template-part-area-label.js +4 -1
- package/build/navigation/use-template-part-area-label.js.map +1 -1
- package/build/navigation-link/edit.js +44 -12
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/fallback-variations.js +1 -1
- package/build/navigation-link/fallback-variations.js.map +1 -1
- package/build/navigation-link/hooks.js +1 -1
- package/build/navigation-link/hooks.js.map +1 -1
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/convert-to-links-modal.js +1 -1
- package/build/page-list/convert-to-links-modal.js.map +1 -1
- package/build/page-list/edit.js +1 -1
- package/build/page-list/edit.js.map +1 -1
- package/build/paragraph/deprecated.js +1 -1
- package/build/paragraph/deprecated.js.map +1 -1
- package/build/pattern/edit.js.map +1 -1
- package/build/post-author/edit.js +1 -1
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-name/index.js +4 -0
- package/build/post-author-name/index.js.map +1 -1
- package/build/post-author-name/transforms.js +41 -0
- package/build/post-author-name/transforms.js.map +1 -0
- package/build/post-comment/index.js +1 -0
- package/build/post-comment/index.js.map +1 -1
- package/build/post-comments/edit.js +34 -16
- package/build/post-comments/edit.js.map +1 -1
- package/build/post-comments-count/index.js +1 -0
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-comments-form/form.js +12 -2
- package/build/post-comments-form/form.js.map +1 -1
- package/build/post-comments-link/index.js +1 -0
- package/build/post-comments-link/index.js.map +1 -1
- package/build/post-content/edit.js.map +1 -1
- package/build/post-date/edit.js +13 -7
- package/build/post-date/edit.js.map +1 -1
- package/build/post-featured-image/edit.js +11 -25
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-navigation-link/index.js +4 -0
- package/build/post-navigation-link/index.js.map +1 -1
- package/build/post-template/edit.js +7 -2
- package/build/post-template/edit.js.map +1 -1
- package/build/post-terms/edit.js +11 -2
- package/build/post-terms/edit.js.map +1 -1
- package/build/post-terms/hooks.js +33 -0
- package/build/post-terms/hooks.js.map +1 -0
- package/build/post-terms/index.js +12 -5
- package/build/post-terms/index.js.map +1 -1
- package/build/post-title/index.js +1 -1
- package/build/post-title/index.js.map +1 -1
- package/build/pullquote/deprecated.js.map +1 -1
- package/build/pullquote/edit.js +1 -1
- package/build/pullquote/edit.js.map +1 -1
- package/build/pullquote/edit.native.js +1 -1
- package/build/pullquote/edit.native.js.map +1 -1
- package/build/query/edit/index.js +5 -1
- package/build/query/edit/index.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +26 -17
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/parent-control.js +148 -0
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -0
- package/build/query/edit/inspector-controls/sticky-control.js +41 -0
- package/build/query/edit/inspector-controls/sticky-control.js.map +1 -0
- package/build/query/edit/query-toolbar.js +16 -2
- package/build/query/edit/query-toolbar.js.map +1 -1
- package/build/query/index.js +2 -1
- package/build/query/index.js.map +1 -1
- package/build/query/utils.js +28 -2
- package/build/query/utils.js.map +1 -1
- package/build/query-title/index.js +1 -1
- package/build/query-title/index.js.map +1 -1
- package/build/query-title/variations.js +1 -1
- package/build/query-title/variations.js.map +1 -1
- package/build/quote/edit.js +3 -2
- package/build/quote/edit.js.map +1 -1
- package/build/quote/v2/edit.js +1 -1
- package/build/quote/v2/edit.js.map +1 -1
- package/build/search/edit.js +2 -1
- package/build/search/edit.js.map +1 -1
- package/build/search/edit.native.js.map +1 -1
- package/build/search/index.js +4 -0
- package/build/search/index.js.map +1 -1
- package/build/separator/use-deprecated-opacity.js.map +1 -1
- package/build/shortcode/edit.native.js +16 -13
- package/build/shortcode/edit.native.js.map +1 -1
- package/build/site-logo/edit.js +4 -13
- package/build/site-logo/edit.js.map +1 -1
- package/build/social-links/deprecated.js.map +1 -1
- package/build/social-links/edit.js +2 -2
- package/build/social-links/edit.js.map +1 -1
- package/build/social-links/edit.native.js.map +1 -1
- package/build/spacer/controls.js.map +1 -1
- package/build/table/deprecated.js.map +1 -1
- package/build/table/edit.js +15 -2
- package/build/table/edit.js.map +1 -1
- package/build/table/index.js +6 -1
- package/build/table/index.js.map +1 -1
- package/build/table/state.js.map +1 -1
- package/build/table-of-contents/edit.js +145 -65
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/table-of-contents/index.js +13 -3
- package/build/table-of-contents/index.js.map +1 -1
- package/build/table-of-contents/list.js +16 -9
- package/build/table-of-contents/list.js.map +1 -1
- package/build/table-of-contents/save.js +40 -0
- package/build/table-of-contents/save.js.map +1 -0
- package/build/table-of-contents/utils.js +11 -77
- package/build/table-of-contents/utils.js.map +1 -1
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/advanced-controls.js +4 -1
- package/build/template-part/edit/advanced-controls.js.map +1 -1
- package/build/template-part/edit/index.js +7 -3
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/inner-blocks.js +3 -8
- package/build/template-part/edit/inner-blocks.js.map +1 -1
- package/build/template-part/edit/utils/hooks.js +4 -1
- package/build/template-part/edit/utils/hooks.js.map +1 -1
- package/build/transformationCategories.native.js.map +1 -1
- package/build/video/edit-common-settings.js.map +1 -1
- package/build/video/edit.js +1 -1
- package/build/video/edit.js.map +1 -1
- package/build/video/edit.native.js +43 -0
- package/build/video/edit.native.js.map +1 -1
- package/build/video/index.js +6 -1
- package/build/video/index.js.map +1 -1
- package/build-module/audio/edit.js +2 -2
- package/build-module/audio/edit.js.map +1 -1
- package/build-module/audio/index.js +6 -1
- package/build-module/audio/index.js.map +1 -1
- package/build-module/avatar/hooks.js +2 -2
- package/build-module/avatar/hooks.js.map +1 -1
- package/build-module/block/edit.js +11 -10
- package/build-module/block/edit.js.map +1 -1
- package/build-module/block/edit.native.js.map +1 -1
- package/build-module/button/deprecated.js +175 -35
- package/build-module/button/deprecated.js.map +1 -1
- package/build-module/button/edit.js +2 -2
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/button/index.js +25 -1
- package/build-module/button/index.js.map +1 -1
- package/build-module/button/save.js +2 -2
- package/build-module/button/save.js.map +1 -1
- package/build-module/buttons/deprecated.js.map +1 -1
- package/build-module/buttons/edit.js.map +1 -1
- package/build-module/buttons/edit.native.js.map +1 -1
- package/build-module/categories/edit.js +1 -1
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/categories/index.js +1 -1
- package/build-module/column/deprecated.js.map +1 -1
- package/build-module/column/edit.js.map +1 -1
- package/build-module/column/edit.native.js.map +1 -1
- package/build-module/columns/deprecated.js.map +1 -1
- package/build-module/columns/edit.js +2 -2
- package/build-module/columns/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +2 -2
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/columns/index.js +3 -1
- package/build-module/columns/index.js.map +1 -1
- package/build-module/columns/utils.js +2 -2
- package/build-module/columns/utils.js.map +1 -1
- package/build-module/comment-author-avatar/index.js +1 -0
- package/build-module/comment-author-avatar/index.js.map +1 -1
- package/build-module/comment-author-name/edit.js +4 -2
- package/build-module/comment-author-name/edit.js.map +1 -1
- package/build-module/comment-date/edit.js +1 -1
- package/build-module/comment-date/edit.js.map +1 -1
- package/build-module/comments-title/deprecated.js +102 -0
- package/build-module/comments-title/deprecated.js.map +1 -0
- package/build-module/comments-title/edit.js +38 -40
- package/build-module/comments-title/edit.js.map +1 -1
- package/build-module/comments-title/index.js +4 -8
- package/build-module/comments-title/index.js.map +1 -1
- package/build-module/cover/controls.native.js +2 -3
- package/build-module/cover/controls.native.js.map +1 -1
- package/build-module/cover/deprecated.js +206 -198
- package/build-module/cover/deprecated.js.map +1 -1
- package/build-module/cover/edit/block-controls.js +99 -0
- package/build-module/cover/edit/block-controls.js.map +1 -0
- package/build-module/cover/edit/cover-placeholder.js +38 -0
- package/build-module/cover/edit/cover-placeholder.js.map +1 -0
- package/build-module/cover/edit/index.js +310 -0
- package/build-module/cover/edit/index.js.map +1 -0
- package/build-module/cover/edit/inspector-controls.js +240 -0
- package/build-module/cover/edit/inspector-controls.js.map +1 -0
- package/build-module/cover/edit/resizable-cover.js +55 -0
- package/build-module/cover/edit/resizable-cover.js.map +1 -0
- package/build-module/cover/{use-cover-is-dark.js → edit/use-cover-is-dark.js} +0 -0
- package/build-module/cover/edit/use-cover-is-dark.js.map +1 -0
- package/build-module/cover/edit.native.js +0 -1
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/cover/focal-point-settings-button.native.js.map +1 -1
- package/build-module/cover/save.js +19 -6
- package/build-module/cover/save.js.map +1 -1
- package/build-module/cover/shared.js +11 -5
- package/build-module/cover/shared.js.map +1 -1
- package/build-module/cover/transforms.js.map +1 -1
- package/build-module/embed/deprecated.js +6 -1
- package/build-module/embed/deprecated.js.map +1 -1
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/embed/edit.native.js.map +1 -1
- package/build-module/embed/embed-controls.native.js.map +1 -1
- package/build-module/embed/embed-preview.js +2 -2
- package/build-module/embed/embed-preview.js.map +1 -1
- package/build-module/embed/index.js +6 -1
- package/build-module/embed/index.js.map +1 -1
- package/build-module/embed/transforms.js +6 -1
- package/build-module/embed/transforms.js.map +1 -1
- package/build-module/embed/util.js +6 -1
- package/build-module/embed/util.js.map +1 -1
- package/build-module/file/edit.js +2 -2
- package/build-module/file/edit.js.map +1 -1
- package/build-module/file/edit.native.js +0 -1
- package/build-module/file/edit.native.js.map +1 -1
- package/build-module/file/index.js.map +1 -1
- package/build-module/file/save.js +7 -2
- package/build-module/file/save.js.map +1 -1
- package/build-module/gallery/edit.js +4 -3
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.js +2 -2
- package/build-module/gallery/gallery.js.map +1 -1
- package/build-module/gallery/gallery.native.js.map +1 -1
- package/build-module/gallery/gap-styles.js +14 -4
- package/build-module/gallery/gap-styles.js.map +1 -1
- package/build-module/gallery/index.js +1 -1
- package/build-module/gallery/index.js.map +1 -1
- package/build-module/gallery/shared.js +27 -10
- package/build-module/gallery/shared.js.map +1 -1
- package/build-module/gallery/use-get-media.js +2 -1
- package/build-module/gallery/use-get-media.js.map +1 -1
- package/build-module/gallery/use-short-code-transform.js +19 -18
- package/build-module/gallery/use-short-code-transform.js.map +1 -1
- package/build-module/gallery/v1/edit.js.map +1 -1
- package/build-module/gallery/v1/gallery-image.js.map +1 -1
- package/build-module/gallery/v1/gallery-image.native.js.map +1 -1
- package/build-module/gallery/v1/gallery.js +2 -2
- package/build-module/gallery/v1/gallery.js.map +1 -1
- package/build-module/heading/autogenerate-anchors.js +5 -2
- package/build-module/heading/autogenerate-anchors.js.map +1 -1
- package/build-module/heading/deprecated.js.map +1 -1
- package/build-module/heading/edit.js +6 -2
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/index.js +1 -0
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/transforms.js +1 -0
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/image/deprecated.js.map +1 -1
- package/build-module/image/edit.js +4 -52
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +57 -6
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +6 -16
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/index.js +5 -0
- package/build-module/image/index.js.map +1 -1
- package/build-module/image/transforms.js.map +1 -1
- package/build-module/image/utils.js +2 -2
- package/build-module/image/utils.js.map +1 -1
- package/build-module/index.js +42 -10
- package/build-module/index.js.map +1 -1
- package/build-module/is-block-metadata-experimental.js +16 -0
- package/build-module/is-block-metadata-experimental.js.map +1 -0
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-posts/edit.js +31 -7
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/latest-posts/edit.native.js.map +1 -1
- package/build-module/list/index.js.map +1 -1
- package/build-module/list/transforms.js +6 -0
- package/build-module/list/transforms.js.map +1 -1
- package/build-module/list/v2/edit.js +2 -1
- package/build-module/list/v2/edit.js.map +1 -1
- package/build-module/list/v2/migrate.js +1 -3
- package/build-module/list/v2/migrate.js.map +1 -1
- package/build-module/list/v2/transforms.js +46 -9
- package/build-module/list/v2/transforms.js.map +1 -1
- package/build-module/list-item/edit.js +8 -9
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/hooks/index.js +3 -0
- package/build-module/list-item/hooks/index.js.map +1 -1
- package/build-module/list-item/hooks/use-backspace.js +44 -0
- package/build-module/list-item/hooks/use-backspace.js.map +1 -0
- package/build-module/list-item/hooks/use-enter.js +6 -9
- package/build-module/list-item/hooks/use-enter.js.map +1 -1
- package/build-module/list-item/hooks/use-indent-list-item.js +33 -38
- package/build-module/list-item/hooks/use-indent-list-item.js.map +1 -1
- package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build-module/list-item/hooks/use-space.js +40 -0
- package/build-module/list-item/hooks/use-space.js.map +1 -0
- package/build-module/list-item/hooks/use-split.js +33 -0
- package/build-module/list-item/hooks/use-split.js.map +1 -0
- package/build-module/list-item/index.js +1 -0
- package/build-module/list-item/index.js.map +1 -1
- package/build-module/list-item/utils.js +1 -1
- package/build-module/list-item/utils.js.map +1 -1
- package/build-module/media-text/deprecated.js +3 -1
- package/build-module/media-text/deprecated.js.map +1 -1
- package/build-module/media-text/edit.native.js +2 -1
- package/build-module/media-text/edit.native.js.map +1 -1
- package/build-module/media-text/media-container.js +3 -1
- package/build-module/media-text/media-container.js.map +1 -1
- package/build-module/media-text/media-container.native.js +2 -4
- package/build-module/media-text/media-container.native.js.map +1 -1
- package/build-module/media-text/save.js +4 -1
- package/build-module/media-text/save.js.map +1 -1
- package/build-module/media-text/transforms.js +137 -8
- package/build-module/media-text/transforms.js.map +1 -1
- package/build-module/missing/edit.native.js.map +1 -1
- package/build-module/navigation/deprecated.js.map +1 -1
- package/build-module/navigation/edit/index.js +87 -82
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +2 -6
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/edit/use-convert-classic-menu-to-block-menu.js.map +1 -1
- package/build-module/navigation/use-navigation-entities.js +1 -1
- package/build-module/navigation/use-navigation-entities.js.map +1 -1
- package/build-module/navigation/use-navigation-menu.js +130 -38
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/navigation/use-template-part-area-label.js +4 -1
- package/build-module/navigation/use-template-part-area-label.js.map +1 -1
- package/build-module/navigation-link/edit.js +44 -13
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/fallback-variations.js +1 -1
- package/build-module/navigation-link/fallback-variations.js.map +1 -1
- package/build-module/navigation-link/hooks.js +2 -2
- package/build-module/navigation-link/hooks.js.map +1 -1
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/convert-to-links-modal.js +1 -1
- package/build-module/page-list/convert-to-links-modal.js.map +1 -1
- package/build-module/page-list/edit.js +1 -1
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/paragraph/deprecated.js +2 -2
- package/build-module/paragraph/deprecated.js.map +1 -1
- package/build-module/pattern/edit.js.map +1 -1
- package/build-module/post-author/edit.js +1 -1
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-name/index.js +3 -0
- package/build-module/post-author-name/index.js.map +1 -1
- package/build-module/post-author-name/transforms.js +32 -0
- package/build-module/post-author-name/transforms.js.map +1 -0
- package/build-module/post-comment/index.js +1 -0
- package/build-module/post-comment/index.js.map +1 -1
- package/build-module/post-comments/edit.js +35 -16
- package/build-module/post-comments/edit.js.map +1 -1
- package/build-module/post-comments-count/index.js +1 -0
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-comments-form/form.js +8 -2
- package/build-module/post-comments-form/form.js.map +1 -1
- package/build-module/post-comments-link/index.js +1 -0
- package/build-module/post-comments-link/index.js.map +1 -1
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-date/edit.js +15 -9
- package/build-module/post-date/edit.js.map +1 -1
- package/build-module/post-featured-image/edit.js +11 -24
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-navigation-link/index.js +4 -0
- package/build-module/post-navigation-link/index.js.map +1 -1
- package/build-module/post-template/edit.js +7 -2
- package/build-module/post-template/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +10 -3
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/post-terms/hooks.js +25 -0
- package/build-module/post-terms/hooks.js.map +1 -0
- package/build-module/post-terms/index.js +10 -8
- package/build-module/post-terms/index.js.map +1 -1
- package/build-module/post-title/index.js +1 -1
- package/build-module/post-title/index.js.map +1 -1
- package/build-module/pullquote/deprecated.js.map +1 -1
- package/build-module/pullquote/edit.js +2 -2
- package/build-module/pullquote/edit.js.map +1 -1
- package/build-module/pullquote/edit.native.js +2 -2
- package/build-module/pullquote/edit.native.js.map +1 -1
- package/build-module/query/edit/index.js +5 -1
- package/build-module/query/edit/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +24 -17
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/parent-control.js +135 -0
- package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -0
- package/build-module/query/edit/inspector-controls/sticky-control.js +31 -0
- package/build-module/query/edit/inspector-controls/sticky-control.js.map +1 -0
- package/build-module/query/edit/query-toolbar.js +14 -2
- package/build-module/query/edit/query-toolbar.js.map +1 -1
- package/build-module/query/index.js +2 -1
- package/build-module/query/index.js.map +1 -1
- package/build-module/query/utils.js +21 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query-title/index.js +1 -1
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/query-title/variations.js +2 -2
- package/build-module/query-title/variations.js.map +1 -1
- package/build-module/quote/edit.js +4 -3
- package/build-module/quote/edit.js.map +1 -1
- package/build-module/quote/v2/edit.js +2 -2
- package/build-module/quote/v2/edit.js.map +1 -1
- package/build-module/search/edit.js +3 -2
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/edit.native.js.map +1 -1
- package/build-module/search/index.js +4 -0
- package/build-module/search/index.js.map +1 -1
- package/build-module/separator/use-deprecated-opacity.js.map +1 -1
- package/build-module/shortcode/edit.native.js +17 -13
- package/build-module/shortcode/edit.native.js.map +1 -1
- package/build-module/site-logo/edit.js +4 -12
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/social-links/deprecated.js.map +1 -1
- package/build-module/social-links/edit.js +2 -2
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/social-links/edit.native.js.map +1 -1
- package/build-module/spacer/controls.js.map +1 -1
- package/build-module/table/deprecated.js.map +1 -1
- package/build-module/table/edit.js +17 -4
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table/index.js +6 -1
- package/build-module/table/index.js.map +1 -1
- package/build-module/table/state.js.map +1 -1
- package/build-module/table-of-contents/edit.js +144 -68
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/table-of-contents/index.js +12 -3
- package/build-module/table-of-contents/index.js.map +1 -1
- package/build-module/table-of-contents/list.js +18 -10
- package/build-module/table-of-contents/list.js.map +1 -1
- package/build-module/table-of-contents/save.js +28 -0
- package/build-module/table-of-contents/save.js.map +1 -0
- package/build-module/table-of-contents/utils.js +11 -73
- package/build-module/table-of-contents/utils.js.map +1 -1
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/template-part/edit/advanced-controls.js +4 -1
- package/build-module/template-part/edit/advanced-controls.js.map +1 -1
- package/build-module/template-part/edit/index.js +8 -4
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/inner-blocks.js +4 -9
- package/build-module/template-part/edit/inner-blocks.js.map +1 -1
- package/build-module/template-part/edit/utils/hooks.js +4 -1
- package/build-module/template-part/edit/utils/hooks.js.map +1 -1
- package/build-module/transformationCategories.native.js.map +1 -1
- package/build-module/video/edit-common-settings.js.map +1 -1
- package/build-module/video/edit.js +2 -2
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/edit.native.js +42 -1
- package/build-module/video/edit.native.js.map +1 -1
- package/build-module/video/index.js +6 -1
- package/build-module/video/index.js.map +1 -1
- package/build-style/audio/style-rtl.css +0 -3
- package/build-style/audio/style.css +0 -3
- package/build-style/button/style-rtl.css +0 -5
- package/build-style/button/style.css +0 -5
- package/build-style/common-rtl.css +1 -3
- package/build-style/common.css +1 -3
- package/build-style/cover/editor-rtl.css +11 -0
- package/build-style/cover/editor.css +11 -0
- package/build-style/cover/style-rtl.css +33 -25
- package/build-style/cover/style.css +33 -25
- package/build-style/editor-rtl.css +15 -45
- package/build-style/editor.css +15 -45
- package/build-style/embed/style-rtl.css +0 -1
- package/build-style/embed/style.css +0 -1
- package/build-style/file/style-rtl.css +9 -7
- package/build-style/file/style.css +9 -7
- package/build-style/gallery/style-rtl.css +2 -4
- package/build-style/gallery/style.css +2 -4
- package/build-style/image/editor-rtl.css +1 -1
- package/build-style/image/editor.css +1 -1
- package/build-style/image/style-rtl.css +0 -3
- package/build-style/image/style.css +0 -3
- package/build-style/post-comments/style-rtl.css +22 -0
- package/build-style/post-comments/style.css +22 -0
- package/build-style/post-comments-form/style-rtl.css +1 -3
- package/build-style/post-comments-form/style.css +1 -3
- package/build-style/post-featured-image/editor-rtl.css +0 -27
- package/build-style/post-featured-image/editor.css +0 -27
- package/build-style/search/style-rtl.css +4 -4
- package/build-style/search/style.css +4 -4
- package/build-style/separator/editor-rtl.css +1 -0
- package/build-style/separator/editor.css +1 -0
- package/build-style/site-logo/editor-rtl.css +0 -12
- package/build-style/site-logo/editor.css +0 -12
- package/build-style/site-logo/style-rtl.css +4 -0
- package/build-style/site-logo/style.css +4 -0
- package/build-style/style-rtl.css +77 -64
- package/build-style/style.css +77 -64
- package/build-style/table/style-rtl.css +0 -1
- package/build-style/table/style.css +0 -1
- package/build-style/video/editor-rtl.css +2 -5
- package/build-style/video/editor.css +2 -5
- package/build-style/video/style-rtl.css +1 -5
- package/build-style/video/style.css +1 -5
- package/build-types/table-of-contents/list.d.ts +12 -0
- package/build-types/table-of-contents/list.d.ts.map +1 -0
- package/build-types/table-of-contents/utils.d.ts +24 -0
- package/build-types/table-of-contents/utils.d.ts.map +1 -0
- package/package.json +32 -30
- package/src/audio/block.json +6 -1
- package/src/audio/edit.js +4 -2
- package/src/audio/index.js +1 -2
- package/src/audio/style.scss +0 -2
- package/src/avatar/block.json +0 -1
- package/src/avatar/hooks.js +9 -6
- package/src/avatar/index.php +2 -2
- package/src/block/edit.js +43 -48
- package/src/block/edit.native.js +12 -16
- package/src/block/test/edit.native.js +6 -9
- package/src/button/block.json +25 -1
- package/src/button/deprecated.js +145 -36
- package/src/button/edit.js +7 -11
- package/src/button/edit.native.js +2 -3
- package/src/button/save.js +5 -11
- package/src/button/style.scss +0 -5
- package/src/buttons/deprecated.js +4 -6
- package/src/buttons/edit.js +3 -3
- package/src/buttons/edit.native.js +7 -11
- package/src/buttons/test/__snapshots__/edit.native.js.snap +1 -1
- package/src/buttons/test/edit.native.js +1 -1
- package/src/categories/block.json +1 -1
- package/src/categories/edit.js +1 -1
- package/src/column/deprecated.js +2 -1
- package/src/column/edit.js +2 -3
- package/src/column/edit.native.js +2 -2
- package/src/columns/block.json +3 -1
- package/src/columns/deprecated.js +4 -2
- package/src/columns/edit.js +6 -7
- package/src/columns/edit.native.js +12 -16
- package/src/columns/index.js +1 -2
- package/src/columns/utils.js +5 -3
- package/src/comment-author-avatar/block.json +1 -0
- package/src/comment-author-name/edit.js +2 -2
- package/src/comment-date/edit.js +1 -1
- package/src/comments-title/block.json +0 -6
- package/src/comments-title/deprecated.js +34 -0
- package/src/comments-title/edit.js +44 -100
- package/src/comments-title/index.js +3 -1
- package/src/comments-title/index.php +41 -23
- package/src/cover/controls.native.js +3 -6
- package/src/cover/deprecated.js +237 -195
- package/src/cover/edit/block-controls.js +110 -0
- package/src/cover/edit/cover-placeholder.js +39 -0
- package/src/cover/edit/index.js +396 -0
- package/src/cover/edit/inspector-controls.js +317 -0
- package/src/cover/edit/resizable-cover.js +55 -0
- package/src/cover/{use-cover-is-dark.js → edit/use-cover-is-dark.js} +0 -0
- package/src/cover/edit.native.js +8 -14
- package/src/cover/editor.scss +14 -1
- package/src/cover/focal-point-settings-button.native.js +1 -1
- package/src/cover/index.php +20 -37
- package/src/cover/save.js +28 -16
- package/src/cover/shared.js +5 -3
- package/src/cover/style.scss +27 -22
- package/src/cover/test/block-controls.js +62 -0
- package/src/cover/test/edit.native.js +4 -7
- package/src/cover/transforms.js +2 -7
- package/src/embed/block.json +6 -1
- package/src/embed/edit.js +38 -40
- package/src/embed/edit.native.js +46 -49
- package/src/embed/embed-controls.native.js +2 -3
- package/src/embed/embed-preview.js +4 -2
- package/src/embed/style.scss +0 -1
- package/src/embed/test/index.native.js +24 -50
- package/src/file/edit.js +7 -5
- package/src/file/edit.native.js +14 -26
- package/src/file/index.js +1 -2
- package/src/file/save.js +14 -2
- package/src/file/style.scss +15 -14
- package/src/gallery/block.json +1 -1
- package/src/gallery/edit.js +10 -7
- package/src/gallery/gallery.js +2 -2
- package/src/gallery/gallery.native.js +2 -4
- package/src/gallery/gap-styles.js +21 -6
- package/src/gallery/index.js +2 -4
- package/src/gallery/index.php +23 -12
- package/src/gallery/shared.js +25 -11
- package/src/gallery/test/index.native.js +18 -34
- package/src/gallery/use-get-media.js +2 -1
- package/src/gallery/use-short-code-transform.js +19 -16
- package/src/gallery/v1/edit.js +15 -20
- package/src/gallery/v1/gallery-image.js +6 -11
- package/src/gallery/v1/gallery-image.native.js +8 -17
- package/src/gallery/v1/gallery.js +2 -2
- package/src/heading/autogenerate-anchors.js +8 -5
- package/src/heading/block.json +1 -0
- package/src/heading/deprecated.js +6 -21
- package/src/heading/edit.js +7 -5
- package/src/image/block.json +5 -0
- package/src/image/deprecated.js +6 -29
- package/src/image/edit.js +0 -44
- package/src/image/edit.native.js +74 -25
- package/src/image/editor.scss +1 -1
- package/src/image/image.js +41 -51
- package/src/image/style.scss +0 -2
- package/src/image/styles.native.scss +11 -0
- package/src/image/test/edit.native.js +7 -7
- package/src/image/transforms.js +4 -3
- package/src/image/utils.js +2 -2
- package/src/index.js +51 -28
- package/src/is-block-metadata-experimental.js +19 -0
- package/src/latest-comments/edit.js +2 -6
- package/src/latest-posts/edit.js +33 -9
- package/src/latest-posts/edit.native.js +10 -15
- package/src/latest-posts/index.php +12 -6
- package/src/list/index.js +1 -2
- package/src/list/test/migrate.js +1 -2
- package/src/list/transforms.js +7 -0
- package/src/list/v2/edit.js +7 -9
- package/src/list/v2/migrate.js +1 -1
- package/src/list/v2/transforms.js +35 -0
- package/src/list-item/block.json +2 -1
- package/src/list-item/edit.js +17 -10
- package/src/list-item/hooks/index.js +3 -0
- package/src/list-item/hooks/use-backspace.js +51 -0
- package/src/list-item/hooks/use-enter.js +8 -16
- package/src/list-item/hooks/use-indent-list-item.js +49 -63
- package/src/list-item/hooks/use-outdent-list-item.js +2 -3
- package/src/list-item/hooks/use-space.js +47 -0
- package/src/list-item/hooks/use-split.js +33 -0
- package/src/list-item/utils.js +1 -1
- package/src/media-text/deprecated.js +6 -3
- package/src/media-text/edit.native.js +5 -6
- package/src/media-text/media-container.js +1 -1
- package/src/media-text/media-container.native.js +8 -13
- package/src/media-text/save.js +2 -1
- package/src/media-text/transforms.js +154 -0
- package/src/missing/edit.native.js +2 -3
- package/src/missing/test/edit-integration.native.js +2 -3
- package/src/missing/test/edit.native.js +6 -9
- package/src/navigation/deprecated.js +2 -5
- package/src/navigation/edit/index.js +195 -201
- package/src/navigation/edit/inner-blocks.js +1 -8
- package/src/navigation/edit/navigation-menu-delete-control.js +2 -3
- package/src/navigation/edit/unsaved-inner-blocks.js +31 -30
- package/src/navigation/edit/use-convert-classic-menu-to-block-menu.js +2 -3
- package/src/navigation/index.php +40 -0
- package/src/navigation/test/use-navigation-menu.js +236 -0
- package/src/navigation/use-navigation-entities.js +12 -14
- package/src/navigation/use-navigation-menu.js +152 -82
- package/src/navigation/use-template-part-area-label.js +8 -7
- package/src/navigation-link/edit.js +59 -25
- package/src/navigation-link/fallback-variations.js +1 -1
- package/src/navigation-link/hooks.js +2 -2
- package/src/navigation-link/test/__snapshots__/hooks.js.snap +4 -4
- package/src/navigation-link/test/edit.js +2 -24
- package/src/navigation-submenu/edit.js +10 -20
- package/src/page-list/convert-to-links-modal.js +52 -55
- package/src/page-list/edit.js +7 -10
- package/src/page-list/test/convert-to-links-modal.js +6 -12
- package/src/paragraph/deprecated.js +2 -2
- package/src/pattern/edit.js +2 -4
- package/src/post-author/edit.js +26 -25
- package/src/post-author/index.php +3 -2
- package/src/post-author-name/block.json +1 -0
- package/src/post-author-name/index.js +2 -0
- package/src/post-author-name/index.php +1 -1
- package/src/post-author-name/transforms.js +25 -0
- package/src/post-comment/block.json +1 -0
- package/src/post-comments/edit.js +54 -22
- package/src/post-comments/index.php +1 -1
- package/src/post-comments/style.scss +26 -0
- package/src/post-comments-count/block.json +1 -0
- package/src/post-comments-form/form.js +12 -5
- package/src/post-comments-form/index.php +1 -1
- package/src/post-comments-form/style.scss +1 -4
- package/src/post-comments-link/block.json +1 -0
- package/src/post-content/edit.js +2 -3
- package/src/post-date/edit.js +4 -3
- package/src/post-featured-image/edit.js +15 -31
- package/src/post-featured-image/editor.scss +0 -29
- package/src/post-navigation-link/block.json +4 -0
- package/src/post-template/edit.js +5 -0
- package/src/post-template/index.php +30 -0
- package/src/post-terms/edit.js +19 -0
- package/src/post-terms/hooks.js +27 -0
- package/src/post-terms/index.js +14 -7
- package/src/post-terms/index.php +40 -2
- package/src/post-title/index.js +1 -1
- package/src/pullquote/deprecated.js +2 -1
- package/src/pullquote/edit.js +2 -2
- package/src/pullquote/edit.native.js +2 -2
- package/src/query/block.json +2 -1
- package/src/query/edit/index.js +10 -10
- package/src/query/edit/inspector-controls/index.js +25 -11
- package/src/query/edit/inspector-controls/parent-control.js +132 -0
- package/src/query/edit/inspector-controls/sticky-control.js +25 -0
- package/src/query/edit/query-toolbar.js +25 -5
- package/src/query/utils.js +22 -0
- package/src/query-pagination/index.php +0 -1
- package/src/query-title/index.js +1 -1
- package/src/query-title/variations.js +2 -2
- package/src/quote/edit.js +5 -2
- package/src/quote/v2/edit.js +8 -8
- package/src/quote/v2/test/migrate.js +1 -2
- package/src/search/block.json +4 -0
- package/src/search/edit.js +10 -13
- package/src/search/edit.native.js +4 -6
- package/src/search/index.php +29 -16
- package/src/search/style.scss +2 -1
- package/src/separator/editor.scss +1 -0
- package/src/separator/use-deprecated-opacity.js +2 -4
- package/src/shortcode/edit.native.js +30 -15
- package/src/shortcode/style.native.scss +11 -4
- package/src/shortcode/test/__snapshots__/edit.native.js.snap +9 -0
- package/src/shortcode/test/edit.native.js +55 -40
- package/src/site-logo/edit.js +4 -18
- package/src/site-logo/editor.scss +0 -14
- package/src/site-logo/style.scss +6 -0
- package/src/social-links/deprecated.js +4 -2
- package/src/social-links/edit.js +11 -10
- package/src/social-links/edit.native.js +3 -5
- package/src/spacer/controls.js +2 -3
- package/src/spacer/test/index.native.js +10 -21
- package/src/table/block.json +6 -1
- package/src/table/deprecated.js +4 -8
- package/src/table/edit.js +19 -4
- package/src/table/state.js +2 -4
- package/src/table/style.scss +0 -1
- package/src/table-of-contents/block.json +9 -2
- package/src/table-of-contents/edit.js +166 -77
- package/src/table-of-contents/index.js +2 -0
- package/src/table-of-contents/list.tsx +46 -0
- package/src/table-of-contents/save.js +25 -0
- package/src/table-of-contents/utils.ts +71 -0
- package/src/tag-cloud/block.json +1 -1
- package/src/tag-cloud/edit.js +4 -7
- package/src/template-part/edit/advanced-controls.js +4 -4
- package/src/template-part/edit/index.js +31 -25
- package/src/template-part/edit/inner-blocks.js +2 -10
- package/src/template-part/edit/utils/hooks.js +8 -7
- package/src/transformationCategories.native.js +3 -3
- package/src/video/block.json +6 -1
- package/src/video/edit-common-settings.js +2 -8
- package/src/video/edit.js +4 -2
- package/src/video/edit.native.js +38 -16
- package/src/video/editor.scss +3 -6
- package/src/video/index.js +1 -2
- package/src/video/style.scss +0 -2
- package/test/babel-plugin.js +67 -0
- package/tsconfig.json +11 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/build/cover/edit.js +0 -598
- package/build/cover/edit.js.map +0 -1
- package/build/cover/use-cover-is-dark.js.map +0 -1
- package/build/post-terms/variations.js +0 -37
- package/build/post-terms/variations.js.map +0 -1
- package/build-module/cover/edit.js +0 -575
- package/build-module/cover/edit.js.map +0 -1
- package/build-module/cover/use-cover-is-dark.js.map +0 -1
- package/build-module/post-terms/variations.js +0 -27
- package/build-module/post-terms/variations.js.map +0 -1
- package/src/cover/edit.js +0 -757
- package/src/post-terms/variations.js +0 -28
- package/src/table-of-contents/index.php +0 -346
- package/src/table-of-contents/list.js +0 -28
- package/src/table-of-contents/utils.js +0 -126
package/src/index.js
CHANGED
|
@@ -12,6 +12,15 @@ import {
|
|
|
12
12
|
/**
|
|
13
13
|
* Internal dependencies
|
|
14
14
|
*/
|
|
15
|
+
// When IS_GUTENBERG_PLUGIN is set to false, imports of experimental blocks
|
|
16
|
+
// are transformed by packages/block-library/src/index.js as follows:
|
|
17
|
+
// import * as experimentalBlock from './experimental-block'
|
|
18
|
+
// becomes
|
|
19
|
+
// const experimentalBlock = null;
|
|
20
|
+
// This enables webpack to eliminate the experimental blocks code from the
|
|
21
|
+
// production build to make the final bundle smaller.
|
|
22
|
+
//
|
|
23
|
+
// See https://github.com/WordPress/gutenberg/pull/40655 for more context.
|
|
15
24
|
import * as archives from './archives';
|
|
16
25
|
import * as avatar from './avatar';
|
|
17
26
|
import * as audio from './audio';
|
|
@@ -99,6 +108,7 @@ import * as socialLink from './social-link';
|
|
|
99
108
|
import * as socialLinks from './social-links';
|
|
100
109
|
import * as spacer from './spacer';
|
|
101
110
|
import * as table from './table';
|
|
111
|
+
import * as tableOfContents from './table-of-contents';
|
|
102
112
|
import * as tagCloud from './tag-cloud';
|
|
103
113
|
import * as templatePart from './template-part';
|
|
104
114
|
import * as termDescription from './term-description';
|
|
@@ -106,6 +116,8 @@ import * as textColumns from './text-columns';
|
|
|
106
116
|
import * as verse from './verse';
|
|
107
117
|
import * as video from './video';
|
|
108
118
|
|
|
119
|
+
import isBlockMetadataExperimental from './is-block-metadata-experimental';
|
|
120
|
+
|
|
109
121
|
/**
|
|
110
122
|
* Function to register an individual block.
|
|
111
123
|
*
|
|
@@ -121,16 +133,9 @@ const registerBlock = ( block ) => {
|
|
|
121
133
|
};
|
|
122
134
|
|
|
123
135
|
/**
|
|
124
|
-
* Function to get all the
|
|
125
|
-
*
|
|
126
|
-
* @example
|
|
127
|
-
* ```js
|
|
128
|
-
* import { __experimentalGetCoreBlocks } from '@wordpress/block-library';
|
|
129
|
-
*
|
|
130
|
-
* const coreBlocks = __experimentalGetCoreBlocks();
|
|
131
|
-
* ```
|
|
136
|
+
* Function to get all the block-library blocks in an array
|
|
132
137
|
*/
|
|
133
|
-
|
|
138
|
+
const getAllBlocks = () => [
|
|
134
139
|
// Common blocks are grouped at the top to prioritize their display
|
|
135
140
|
// in various contexts — like the inserter and auto-complete components.
|
|
136
141
|
paragraph,
|
|
@@ -138,6 +143,7 @@ export const __experimentalGetCoreBlocks = () => [
|
|
|
138
143
|
heading,
|
|
139
144
|
gallery,
|
|
140
145
|
list,
|
|
146
|
+
listItem,
|
|
141
147
|
quote,
|
|
142
148
|
|
|
143
149
|
// Register all remaining core blocks.
|
|
@@ -147,10 +153,11 @@ export const __experimentalGetCoreBlocks = () => [
|
|
|
147
153
|
buttons,
|
|
148
154
|
calendar,
|
|
149
155
|
categories,
|
|
150
|
-
window.wp && window.wp.oldEditor ? classic :
|
|
156
|
+
...( window.wp && window.wp.oldEditor ? [ classic ] : [] ), // Only add the classic block in WP Context.
|
|
151
157
|
code,
|
|
152
158
|
column,
|
|
153
159
|
columns,
|
|
160
|
+
commentAuthorAvatar,
|
|
154
161
|
cover,
|
|
155
162
|
embed,
|
|
156
163
|
file,
|
|
@@ -175,7 +182,6 @@ export const __experimentalGetCoreBlocks = () => [
|
|
|
175
182
|
socialLinks,
|
|
176
183
|
spacer,
|
|
177
184
|
table,
|
|
178
|
-
// tableOfContents,
|
|
179
185
|
tagCloud,
|
|
180
186
|
textColumns,
|
|
181
187
|
verse,
|
|
@@ -196,6 +202,10 @@ export const __experimentalGetCoreBlocks = () => [
|
|
|
196
202
|
postFeaturedImage,
|
|
197
203
|
postContent,
|
|
198
204
|
postAuthor,
|
|
205
|
+
postAuthorName,
|
|
206
|
+
postComment,
|
|
207
|
+
postCommentsCount,
|
|
208
|
+
postCommentsLink,
|
|
199
209
|
postDate,
|
|
200
210
|
postTerms,
|
|
201
211
|
postNavigationLink,
|
|
@@ -220,6 +230,7 @@ export const __experimentalGetCoreBlocks = () => [
|
|
|
220
230
|
commentsPaginationPrevious,
|
|
221
231
|
postComments,
|
|
222
232
|
postCommentsForm,
|
|
233
|
+
tableOfContents,
|
|
223
234
|
homeLink,
|
|
224
235
|
logInOut,
|
|
225
236
|
termDescription,
|
|
@@ -227,6 +238,21 @@ export const __experimentalGetCoreBlocks = () => [
|
|
|
227
238
|
postAuthorBiography,
|
|
228
239
|
];
|
|
229
240
|
|
|
241
|
+
/**
|
|
242
|
+
* Function to get all the core blocks in an array.
|
|
243
|
+
*
|
|
244
|
+
* @example
|
|
245
|
+
* ```js
|
|
246
|
+
* import { __experimentalGetCoreBlocks } from '@wordpress/block-library';
|
|
247
|
+
*
|
|
248
|
+
* const coreBlocks = __experimentalGetCoreBlocks();
|
|
249
|
+
* ```
|
|
250
|
+
*/
|
|
251
|
+
export const __experimentalGetCoreBlocks = () =>
|
|
252
|
+
getAllBlocks().filter(
|
|
253
|
+
( { metadata } ) => ! isBlockMetadataExperimental( metadata )
|
|
254
|
+
);
|
|
255
|
+
|
|
230
256
|
/**
|
|
231
257
|
* Function to register core blocks provided by the block editor.
|
|
232
258
|
*
|
|
@@ -266,22 +292,19 @@ export const registerCoreBlocks = (
|
|
|
266
292
|
export const __experimentalRegisterExperimentalCoreBlocks = process.env
|
|
267
293
|
.IS_GUTENBERG_PLUGIN
|
|
268
294
|
? ( { enableFSEBlocks } = {} ) => {
|
|
269
|
-
[
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
]
|
|
284
|
-
: [] ),
|
|
285
|
-
].forEach( registerBlock );
|
|
295
|
+
const enabledExperiments = [
|
|
296
|
+
window.__experimentalEnableListBlockV2 ? 'list-v2' : null,
|
|
297
|
+
enableFSEBlocks ? 'fse' : null,
|
|
298
|
+
];
|
|
299
|
+
getAllBlocks()
|
|
300
|
+
.filter( ( { metadata } ) =>
|
|
301
|
+
isBlockMetadataExperimental( metadata )
|
|
302
|
+
)
|
|
303
|
+
.filter(
|
|
304
|
+
( { metadata: { __experimental } } ) =>
|
|
305
|
+
__experimental === true ||
|
|
306
|
+
enabledExperiments.includes( __experimental )
|
|
307
|
+
)
|
|
308
|
+
.forEach( registerBlock );
|
|
286
309
|
}
|
|
287
310
|
: undefined;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if the block is experimental based on the metadata loaded
|
|
3
|
+
* from block.json.
|
|
4
|
+
*
|
|
5
|
+
* This function is in a separate file and uses the older JS syntax so
|
|
6
|
+
* that it can be imported in both:
|
|
7
|
+
* – block-library/src/index.js
|
|
8
|
+
* – block-library/src/babel-plugin.js
|
|
9
|
+
*
|
|
10
|
+
* @param {Object} metadata Parsed block.json metadata.
|
|
11
|
+
* @return {boolean} Is the block experimental?
|
|
12
|
+
*/
|
|
13
|
+
module.exports = function isBlockMetadataExperimental( metadata ) {
|
|
14
|
+
return (
|
|
15
|
+
metadata &&
|
|
16
|
+
'__experimental' in metadata &&
|
|
17
|
+
metadata.__experimental !== false
|
|
18
|
+
);
|
|
19
|
+
};
|
|
@@ -25,12 +25,8 @@ const MIN_COMMENTS = 1;
|
|
|
25
25
|
const MAX_COMMENTS = 100;
|
|
26
26
|
|
|
27
27
|
export default function LatestComments( { attributes, setAttributes } ) {
|
|
28
|
-
const {
|
|
29
|
-
|
|
30
|
-
displayAvatar,
|
|
31
|
-
displayDate,
|
|
32
|
-
displayExcerpt,
|
|
33
|
-
} = attributes;
|
|
28
|
+
const { commentsToShow, displayAvatar, displayDate, displayExcerpt } =
|
|
29
|
+
attributes;
|
|
34
30
|
|
|
35
31
|
return (
|
|
36
32
|
<div { ...useBlockProps() }>
|
package/src/latest-posts/edit.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import { get, includes, invoke,
|
|
4
|
+
import { get, includes, invoke, pickBy } from 'lodash';
|
|
5
5
|
import classnames from 'classnames';
|
|
6
6
|
|
|
7
7
|
/**
|
|
@@ -28,9 +28,11 @@ import {
|
|
|
28
28
|
useBlockProps,
|
|
29
29
|
store as blockEditorStore,
|
|
30
30
|
} from '@wordpress/block-editor';
|
|
31
|
-
import { useSelect } from '@wordpress/data';
|
|
31
|
+
import { useSelect, useDispatch } from '@wordpress/data';
|
|
32
32
|
import { pin, list, grid } from '@wordpress/icons';
|
|
33
33
|
import { store as coreStore } from '@wordpress/core-data';
|
|
34
|
+
import { store as noticeStore } from '@wordpress/notices';
|
|
35
|
+
import { useInstanceId } from '@wordpress/compose';
|
|
34
36
|
|
|
35
37
|
/**
|
|
36
38
|
* Internal dependencies
|
|
@@ -66,6 +68,7 @@ function getFeaturedImageDetails( post, size ) {
|
|
|
66
68
|
}
|
|
67
69
|
|
|
68
70
|
export default function LatestPostsEdit( { attributes, setAttributes } ) {
|
|
71
|
+
const instanceId = useInstanceId( LatestPostsEdit );
|
|
69
72
|
const {
|
|
70
73
|
postsToShow,
|
|
71
74
|
order,
|
|
@@ -110,7 +113,7 @@ export default function LatestPostsEdit( { attributes, setAttributes } ) {
|
|
|
110
113
|
per_page: postsToShow,
|
|
111
114
|
_embed: 'wp:featuredmedia',
|
|
112
115
|
},
|
|
113
|
-
( value ) =>
|
|
116
|
+
( value ) => typeof value !== 'undefined'
|
|
114
117
|
);
|
|
115
118
|
|
|
116
119
|
return {
|
|
@@ -148,6 +151,20 @@ export default function LatestPostsEdit( { attributes, setAttributes } ) {
|
|
|
148
151
|
]
|
|
149
152
|
);
|
|
150
153
|
|
|
154
|
+
// If a user clicks to a link prevent redirection and show a warning.
|
|
155
|
+
const { createWarningNotice, removeNotice } = useDispatch( noticeStore );
|
|
156
|
+
let noticeId;
|
|
157
|
+
const showRedirectionPreventedNotice = ( event ) => {
|
|
158
|
+
event.preventDefault();
|
|
159
|
+
// Remove previous warning if any, to show one at a time per block.
|
|
160
|
+
removeNotice( noticeId );
|
|
161
|
+
noticeId = `block-library/core/latest-posts/redirection-prevented/${ instanceId }`;
|
|
162
|
+
createWarningNotice( __( 'Links are disabled in the editor.' ), {
|
|
163
|
+
id: noticeId,
|
|
164
|
+
type: 'snackbar',
|
|
165
|
+
} );
|
|
166
|
+
};
|
|
167
|
+
|
|
151
168
|
const imageSizeOptions = imageSizes
|
|
152
169
|
.filter( ( { slug } ) => slug !== 'full' )
|
|
153
170
|
.map( ( { name, slug } ) => ( {
|
|
@@ -433,13 +450,12 @@ export default function LatestPostsEdit( { attributes, setAttributes } ) {
|
|
|
433
450
|
excerptElement.innerText ||
|
|
434
451
|
'';
|
|
435
452
|
|
|
436
|
-
const {
|
|
437
|
-
|
|
438
|
-
alt: featuredImageAlt,
|
|
439
|
-
} = getFeaturedImageDetails( post, featuredImageSizeSlug );
|
|
453
|
+
const { url: imageSourceUrl, alt: featuredImageAlt } =
|
|
454
|
+
getFeaturedImageDetails( post, featuredImageSizeSlug );
|
|
440
455
|
const imageClasses = classnames( {
|
|
441
456
|
'wp-block-latest-posts__featured-image': true,
|
|
442
|
-
[ `align${ featuredImageAlign }` ]:
|
|
457
|
+
[ `align${ featuredImageAlign }` ]:
|
|
458
|
+
!! featuredImageAlign,
|
|
443
459
|
} );
|
|
444
460
|
const renderFeaturedImage =
|
|
445
461
|
displayFeaturedImage && imageSourceUrl;
|
|
@@ -466,7 +482,11 @@ export default function LatestPostsEdit( { attributes, setAttributes } ) {
|
|
|
466
482
|
.join( ' ' ) }
|
|
467
483
|
{ /* translators: excerpt truncation character, default … */ }
|
|
468
484
|
{ __( ' … ' ) }
|
|
469
|
-
<a
|
|
485
|
+
<a
|
|
486
|
+
href={ post.link }
|
|
487
|
+
rel="noopener noreferrer"
|
|
488
|
+
onClick={ showRedirectionPreventedNotice }
|
|
489
|
+
>
|
|
470
490
|
{ __( 'Read more' ) }
|
|
471
491
|
</a>
|
|
472
492
|
</>
|
|
@@ -483,6 +503,9 @@ export default function LatestPostsEdit( { attributes, setAttributes } ) {
|
|
|
483
503
|
className="wp-block-latest-posts__post-title"
|
|
484
504
|
href={ post.link }
|
|
485
505
|
rel="noreferrer noopener"
|
|
506
|
+
onClick={
|
|
507
|
+
showRedirectionPreventedNotice
|
|
508
|
+
}
|
|
486
509
|
>
|
|
487
510
|
{ featuredImage }
|
|
488
511
|
</a>
|
|
@@ -501,6 +524,7 @@ export default function LatestPostsEdit( { attributes, setAttributes } ) {
|
|
|
501
524
|
}
|
|
502
525
|
: undefined
|
|
503
526
|
}
|
|
527
|
+
onClick={ showRedirectionPreventedNotice }
|
|
504
528
|
>
|
|
505
529
|
{ ! titleTrimmed ? __( '(no title)' ) : null }
|
|
506
530
|
</a>
|
|
@@ -38,23 +38,18 @@ class LatestPostsEdit extends Component {
|
|
|
38
38
|
this.state = {
|
|
39
39
|
categoriesList: [],
|
|
40
40
|
};
|
|
41
|
-
this.onSetDisplayPostContent =
|
|
42
|
-
this
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
this
|
|
46
|
-
);
|
|
41
|
+
this.onSetDisplayPostContent =
|
|
42
|
+
this.onSetDisplayPostContent.bind( this );
|
|
43
|
+
this.onSetDisplayPostContentRadio =
|
|
44
|
+
this.onSetDisplayPostContentRadio.bind( this );
|
|
47
45
|
this.onSetExcerptLength = this.onSetExcerptLength.bind( this );
|
|
48
46
|
this.onSetDisplayPostDate = this.onSetDisplayPostDate.bind( this );
|
|
49
|
-
this.onSetDisplayFeaturedImage =
|
|
50
|
-
this
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
this.onSetAddLinkToFeaturedImage = this.onSetAddLinkToFeaturedImage.bind(
|
|
56
|
-
this
|
|
57
|
-
);
|
|
47
|
+
this.onSetDisplayFeaturedImage =
|
|
48
|
+
this.onSetDisplayFeaturedImage.bind( this );
|
|
49
|
+
this.onSetFeaturedImageAlign =
|
|
50
|
+
this.onSetFeaturedImageAlign.bind( this );
|
|
51
|
+
this.onSetAddLinkToFeaturedImage =
|
|
52
|
+
this.onSetAddLinkToFeaturedImage.bind( this );
|
|
58
53
|
this.onSetOrder = this.onSetOrder.bind( this );
|
|
59
54
|
this.onSetOrderBy = this.onSetOrderBy.bind( this );
|
|
60
55
|
this.onSetPostsToShow = this.onSetPostsToShow.bind( this );
|
|
@@ -37,11 +37,12 @@ function render_block_core_latest_posts( $attributes ) {
|
|
|
37
37
|
global $post, $block_core_latest_posts_excerpt_length;
|
|
38
38
|
|
|
39
39
|
$args = array(
|
|
40
|
-
'posts_per_page'
|
|
41
|
-
'post_status'
|
|
42
|
-
'order'
|
|
43
|
-
'orderby'
|
|
44
|
-
'
|
|
40
|
+
'posts_per_page' => $attributes['postsToShow'],
|
|
41
|
+
'post_status' => 'publish',
|
|
42
|
+
'order' => $attributes['order'],
|
|
43
|
+
'orderby' => $attributes['orderBy'],
|
|
44
|
+
'ignore_sticky_posts' => true,
|
|
45
|
+
'no_found_rows' => true,
|
|
45
46
|
);
|
|
46
47
|
|
|
47
48
|
$block_core_latest_posts_excerpt_length = $attributes['excerptLength'];
|
|
@@ -54,7 +55,12 @@ function render_block_core_latest_posts( $attributes ) {
|
|
|
54
55
|
$args['author'] = $attributes['selectedAuthor'];
|
|
55
56
|
}
|
|
56
57
|
|
|
57
|
-
$
|
|
58
|
+
$query = new WP_Query;
|
|
59
|
+
$recent_posts = $query->query( $args );
|
|
60
|
+
|
|
61
|
+
if ( isset( $attributes['displayFeaturedImage'] ) && $attributes['displayFeaturedImage'] ) {
|
|
62
|
+
update_post_thumbnail_cache( $query );
|
|
63
|
+
}
|
|
58
64
|
|
|
59
65
|
$list_items_markup = '';
|
|
60
66
|
|
package/src/list/index.js
CHANGED
|
@@ -21,8 +21,7 @@ const settingsV1 = {
|
|
|
21
21
|
icon,
|
|
22
22
|
example: {
|
|
23
23
|
attributes: {
|
|
24
|
-
values:
|
|
25
|
-
'<li>Alice.</li><li>The White Rabbit.</li><li>The Cheshire Cat.</li><li>The Mad Hatter.</li><li>The Queen of Hearts.</li>',
|
|
24
|
+
values: '<li>Alice.</li><li>The White Rabbit.</li><li>The Cheshire Cat.</li><li>The Mad Hatter.</li><li>The Queen of Hearts.</li>',
|
|
26
25
|
},
|
|
27
26
|
},
|
|
28
27
|
transforms,
|
package/src/list/test/migrate.js
CHANGED
|
@@ -27,8 +27,7 @@ describe( 'Migrate list block', () => {
|
|
|
27
27
|
|
|
28
28
|
it( 'should migrate the values attribute to inner blocks', () => {
|
|
29
29
|
const [ updatedAttributes, updatedInnerBlocks ] = migrateToListV2( {
|
|
30
|
-
values:
|
|
31
|
-
'<li>test</li><li>test</li><li>test<ol><li>test test</li><li>test est eesssss</li></ol></li>',
|
|
30
|
+
values: '<li>test</li><li>test</li><li>test<ol><li>test test</li><li>test est eesssss</li></ol></li>',
|
|
32
31
|
ordered: false,
|
|
33
32
|
} );
|
|
34
33
|
|
package/src/list/transforms.js
CHANGED
package/src/list/v2/edit.js
CHANGED
|
@@ -45,9 +45,8 @@ const TEMPLATE = [ [ 'core/list-item' ] ];
|
|
|
45
45
|
*/
|
|
46
46
|
function useMigrateOnLoad( attributes, clientId ) {
|
|
47
47
|
const registry = useRegistry();
|
|
48
|
-
const { updateBlockAttributes, replaceInnerBlocks } =
|
|
49
|
-
blockEditorStore
|
|
50
|
-
);
|
|
48
|
+
const { updateBlockAttributes, replaceInnerBlocks } =
|
|
49
|
+
useDispatch( blockEditorStore );
|
|
51
50
|
|
|
52
51
|
useEffect( () => {
|
|
53
52
|
// As soon as the block is loaded, migrate it to the new version.
|
|
@@ -74,9 +73,8 @@ function useMigrateOnLoad( attributes, clientId ) {
|
|
|
74
73
|
function useOutdentList( clientId ) {
|
|
75
74
|
const { canOutdent } = useSelect(
|
|
76
75
|
( innerSelect ) => {
|
|
77
|
-
const { getBlockRootClientId, getBlock } =
|
|
78
|
-
blockEditorStore
|
|
79
|
-
);
|
|
76
|
+
const { getBlockRootClientId, getBlock } =
|
|
77
|
+
innerSelect( blockEditorStore );
|
|
80
78
|
const parentId = getBlockRootClientId( clientId );
|
|
81
79
|
return {
|
|
82
80
|
canOutdent:
|
|
@@ -87,9 +85,8 @@ function useOutdentList( clientId ) {
|
|
|
87
85
|
[ clientId ]
|
|
88
86
|
);
|
|
89
87
|
const { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );
|
|
90
|
-
const { getBlockRootClientId, getBlockAttributes, getBlock } =
|
|
91
|
-
blockEditorStore
|
|
92
|
-
);
|
|
88
|
+
const { getBlockRootClientId, getBlockAttributes, getBlock } =
|
|
89
|
+
useSelect( blockEditorStore );
|
|
93
90
|
|
|
94
91
|
return [
|
|
95
92
|
canOutdent,
|
|
@@ -134,6 +131,7 @@ function Edit( { attributes, setAttributes, clientId } ) {
|
|
|
134
131
|
const innerBlocksProps = useInnerBlocksProps( blockProps, {
|
|
135
132
|
allowedBlocks: [ 'core/list-item' ],
|
|
136
133
|
template: TEMPLATE,
|
|
134
|
+
templateInsertUpdatesSelection: true,
|
|
137
135
|
} );
|
|
138
136
|
useMigrateOnLoad( attributes, clientId );
|
|
139
137
|
const { ordered, reversed, start } = attributes;
|
package/src/list/v2/migrate.js
CHANGED
|
@@ -8,7 +8,7 @@ import { omit } from 'lodash';
|
|
|
8
8
|
*/
|
|
9
9
|
import { createBlock } from '@wordpress/blocks';
|
|
10
10
|
|
|
11
|
-
function createListBlockFromDOMElement( listElement ) {
|
|
11
|
+
export function createListBlockFromDOMElement( listElement ) {
|
|
12
12
|
const listAttributes = {
|
|
13
13
|
ordered: 'OL' === listElement.tagName,
|
|
14
14
|
start: listElement.getAttribute( 'start' )
|
|
@@ -9,6 +9,32 @@ import {
|
|
|
9
9
|
toHTMLString,
|
|
10
10
|
} from '@wordpress/rich-text';
|
|
11
11
|
|
|
12
|
+
/**
|
|
13
|
+
* Internal dependencies
|
|
14
|
+
*/
|
|
15
|
+
import { createListBlockFromDOMElement } from './migrate';
|
|
16
|
+
|
|
17
|
+
function getListContentSchema( { phrasingContentSchema } ) {
|
|
18
|
+
const listContentSchema = {
|
|
19
|
+
...phrasingContentSchema,
|
|
20
|
+
ul: {},
|
|
21
|
+
ol: { attributes: [ 'type', 'start', 'reversed' ] },
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
// Recursion is needed.
|
|
25
|
+
// Possible: ul > li > ul.
|
|
26
|
+
// Impossible: ul > ul.
|
|
27
|
+
[ 'ul', 'ol' ].forEach( ( tag ) => {
|
|
28
|
+
listContentSchema[ tag ].children = {
|
|
29
|
+
li: {
|
|
30
|
+
children: listContentSchema,
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
} );
|
|
34
|
+
|
|
35
|
+
return listContentSchema;
|
|
36
|
+
}
|
|
37
|
+
|
|
12
38
|
const transforms = {
|
|
13
39
|
from: [
|
|
14
40
|
{
|
|
@@ -82,6 +108,15 @@ const transforms = {
|
|
|
82
108
|
);
|
|
83
109
|
},
|
|
84
110
|
} ) ),
|
|
111
|
+
{
|
|
112
|
+
type: 'raw',
|
|
113
|
+
selector: 'ol,ul',
|
|
114
|
+
schema: ( args ) => ( {
|
|
115
|
+
ol: getListContentSchema( args ).ol,
|
|
116
|
+
ul: getListContentSchema( args ).ul,
|
|
117
|
+
} ),
|
|
118
|
+
transform: createListBlockFromDOMElement,
|
|
119
|
+
},
|
|
85
120
|
],
|
|
86
121
|
to: [
|
|
87
122
|
...[ 'core/paragraph', 'core/heading' ].map( ( block ) => ( {
|
package/src/list-item/block.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://schemas.wp.org/trunk/block.json",
|
|
3
3
|
"apiVersion": 2,
|
|
4
|
+
"__experimental": "list-v2",
|
|
4
5
|
"name": "core/list-item",
|
|
5
6
|
"title": "List item",
|
|
6
7
|
"category": "text",
|
|
@@ -14,7 +15,7 @@
|
|
|
14
15
|
"content": {
|
|
15
16
|
"type": "string",
|
|
16
17
|
"source": "html",
|
|
17
|
-
|
|
18
|
+
"selector": "li",
|
|
18
19
|
"default": "",
|
|
19
20
|
"__experimentalRole": "content"
|
|
20
21
|
}
|
package/src/list-item/edit.js
CHANGED
|
@@ -8,7 +8,6 @@ import {
|
|
|
8
8
|
BlockControls,
|
|
9
9
|
} from '@wordpress/block-editor';
|
|
10
10
|
import { isRTL, __ } from '@wordpress/i18n';
|
|
11
|
-
import { createBlock } from '@wordpress/blocks';
|
|
12
11
|
import { ToolbarButton } from '@wordpress/components';
|
|
13
12
|
import {
|
|
14
13
|
formatOutdent,
|
|
@@ -21,7 +20,14 @@ import { useMergeRefs } from '@wordpress/compose';
|
|
|
21
20
|
/**
|
|
22
21
|
* Internal dependencies
|
|
23
22
|
*/
|
|
24
|
-
import {
|
|
23
|
+
import {
|
|
24
|
+
useEnter,
|
|
25
|
+
useBackspace,
|
|
26
|
+
useSpace,
|
|
27
|
+
useIndentListItem,
|
|
28
|
+
useOutdentListItem,
|
|
29
|
+
useSplit,
|
|
30
|
+
} from './hooks';
|
|
25
31
|
|
|
26
32
|
function IndentUI( { clientId } ) {
|
|
27
33
|
const [ canIndent, indentListItem ] = useIndentListItem( clientId );
|
|
@@ -48,7 +54,6 @@ function IndentUI( { clientId } ) {
|
|
|
48
54
|
}
|
|
49
55
|
|
|
50
56
|
export default function ListItemEdit( {
|
|
51
|
-
name,
|
|
52
57
|
attributes,
|
|
53
58
|
setAttributes,
|
|
54
59
|
mergeBlocks,
|
|
@@ -61,11 +66,18 @@ export default function ListItemEdit( {
|
|
|
61
66
|
allowedBlocks: [ 'core/list' ],
|
|
62
67
|
} );
|
|
63
68
|
const useEnterRef = useEnter( { content, clientId } );
|
|
69
|
+
const useBackspaceRef = useBackspace( { clientId } );
|
|
70
|
+
const useSpaceRef = useSpace( clientId );
|
|
71
|
+
const onSplit = useSplit( clientId );
|
|
64
72
|
return (
|
|
65
73
|
<>
|
|
66
74
|
<li { ...innerBlocksProps }>
|
|
67
75
|
<RichText
|
|
68
|
-
ref={ useMergeRefs( [
|
|
76
|
+
ref={ useMergeRefs( [
|
|
77
|
+
useEnterRef,
|
|
78
|
+
useBackspaceRef,
|
|
79
|
+
useSpaceRef,
|
|
80
|
+
] ) }
|
|
69
81
|
identifier="content"
|
|
70
82
|
tagName="div"
|
|
71
83
|
onChange={ ( nextContent ) =>
|
|
@@ -74,12 +86,7 @@ export default function ListItemEdit( {
|
|
|
74
86
|
value={ content }
|
|
75
87
|
aria-label={ __( 'List text' ) }
|
|
76
88
|
placeholder={ placeholder || __( 'List' ) }
|
|
77
|
-
onSplit={
|
|
78
|
-
return createBlock( name, {
|
|
79
|
-
...attributes,
|
|
80
|
-
content: value,
|
|
81
|
-
} );
|
|
82
|
-
} }
|
|
89
|
+
onSplit={ onSplit }
|
|
83
90
|
onMerge={ mergeBlocks }
|
|
84
91
|
onReplace={ onReplace }
|
|
85
92
|
/>
|
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
export { default as useOutdentListItem } from './use-outdent-list-item';
|
|
2
2
|
export { default as useIndentListItem } from './use-indent-list-item';
|
|
3
3
|
export { default as useEnter } from './use-enter';
|
|
4
|
+
export { default as useBackspace } from './use-backspace';
|
|
5
|
+
export { default as useSpace } from './use-space';
|
|
6
|
+
export { default as useSplit } from './use-split';
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { useRef } from '@wordpress/element';
|
|
5
|
+
import { useRefEffect } from '@wordpress/compose';
|
|
6
|
+
import { BACKSPACE } from '@wordpress/keycodes';
|
|
7
|
+
import { useSelect } from '@wordpress/data';
|
|
8
|
+
import { store as blockEditorStore } from '@wordpress/block-editor';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Internal dependencies
|
|
12
|
+
*/
|
|
13
|
+
import useOutdentListItem from './use-outdent-list-item';
|
|
14
|
+
|
|
15
|
+
export default function useBackspace( props ) {
|
|
16
|
+
const { getSelectionStart, getSelectionEnd } =
|
|
17
|
+
useSelect( blockEditorStore );
|
|
18
|
+
const propsRef = useRef( props );
|
|
19
|
+
propsRef.current = props;
|
|
20
|
+
const [ canOutdent, outdentListItem ] = useOutdentListItem(
|
|
21
|
+
propsRef.current.clientId
|
|
22
|
+
);
|
|
23
|
+
return useRefEffect(
|
|
24
|
+
( element ) => {
|
|
25
|
+
function onKeyDown( event ) {
|
|
26
|
+
if ( event.defaultPrevented || event.keyCode !== BACKSPACE ) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
// Handle only if we have a collapsed selection at the
|
|
30
|
+
// start of a list item and we can outdent.
|
|
31
|
+
if (
|
|
32
|
+
! canOutdent ||
|
|
33
|
+
[
|
|
34
|
+
getSelectionStart().offset,
|
|
35
|
+
getSelectionEnd().offset,
|
|
36
|
+
].some( ( offset ) => offset !== 0 )
|
|
37
|
+
) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
event.preventDefault();
|
|
41
|
+
outdentListItem();
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
element.addEventListener( 'keydown', onKeyDown );
|
|
45
|
+
return () => {
|
|
46
|
+
element.removeEventListener( 'keydown', onKeyDown );
|
|
47
|
+
};
|
|
48
|
+
},
|
|
49
|
+
[ canOutdent ]
|
|
50
|
+
);
|
|
51
|
+
}
|