@wordpress/block-library 7.19.0 → 8.0.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 +6 -0
- package/build/audio/edit.native.js +1 -3
- package/build/audio/edit.native.js.map +1 -1
- package/build/audio/index.js +2 -1
- package/build/audio/index.js.map +1 -1
- package/build/avatar/edit.js +1 -0
- package/build/avatar/edit.js.map +1 -1
- package/build/avatar/user-control.js +1 -0
- package/build/avatar/user-control.js.map +1 -1
- package/build/block/edit.js +14 -2
- package/build/block/edit.js.map +1 -1
- package/build/block/edit.native.js +14 -6
- package/build/block/edit.native.js.map +1 -1
- package/build/block/index.js +1 -2
- package/build/block/index.js.map +1 -1
- package/build/button/edit.native.js.map +1 -1
- package/build/code/transforms.js +1 -1
- package/build/code/transforms.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 +13 -30
- package/build/columns/edit.native.js.map +1 -1
- package/build/comment-author-avatar/edit.js +1 -0
- package/build/comment-author-avatar/edit.js.map +1 -1
- package/build/cover/edit/inspector-controls.js +2 -0
- package/build/cover/edit/inspector-controls.js.map +1 -1
- package/build/cover/edit.native.js +24 -16
- package/build/cover/edit.native.js.map +1 -1
- package/build/embed/embed-controls.native.js +1 -0
- package/build/embed/embed-controls.native.js.map +1 -1
- package/build/embed/embed-preview.native.js +1 -3
- package/build/embed/embed-preview.native.js.map +1 -1
- package/build/file/inspector.js +1 -0
- package/build/file/inspector.js.map +1 -1
- package/build/gallery/edit.js +25 -13
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/gallery.native.js +1 -3
- package/build/gallery/gallery.native.js.map +1 -1
- package/build/gallery/shared.js +4 -10
- package/build/gallery/shared.js.map +1 -1
- package/build/gallery/transforms.js +1 -7
- package/build/gallery/transforms.js.map +1 -1
- package/build/gallery/use-get-media.js +1 -1
- package/build/gallery/use-get-media.js.map +1 -1
- package/build/gallery/use-get-media.native.js +3 -1
- package/build/gallery/use-get-media.native.js.map +1 -1
- package/build/gallery/v1/edit.js +22 -15
- package/build/gallery/v1/edit.js.map +1 -1
- package/build/gallery/v1/gallery.native.js +1 -3
- package/build/gallery/v1/gallery.native.js.map +1 -1
- package/build/gallery/v1/shared.js +4 -1
- package/build/gallery/v1/shared.js.map +1 -1
- package/build/group/edit.js +1 -2
- package/build/group/edit.js.map +1 -1
- package/build/group/index.js +3 -1
- package/build/group/index.js.map +1 -1
- package/build/group/placeholder.js +5 -26
- package/build/group/placeholder.js.map +1 -1
- package/build/heading/deprecated.js +152 -69
- package/build/heading/deprecated.js.map +1 -1
- package/build/heading/index.js +1 -2
- package/build/heading/index.js.map +1 -1
- package/build/heading/transforms.js +1 -2
- package/build/heading/transforms.js.map +1 -1
- package/build/html/index.js +1 -1
- package/build/image/edit.js +8 -5
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +3 -2
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +12 -8
- package/build/image/image.js.map +1 -1
- package/build/index.js +3 -1
- package/build/index.js.map +1 -1
- package/build/latest-comments/edit.js +1 -0
- package/build/latest-comments/edit.js.map +1 -1
- package/build/latest-posts/edit.js +2 -0
- package/build/latest-posts/edit.js.map +1 -1
- package/build/list/transforms.js +1 -9
- package/build/list/transforms.js.map +1 -1
- package/build/list/utils.js +5 -2
- package/build/list/utils.js.map +1 -1
- package/build/list-item/index.js +4 -1
- package/build/list-item/index.js.map +1 -1
- package/build/list-item/transforms.js +22 -0
- package/build/list-item/transforms.js.map +1 -0
- package/build/list-item/utils.js +77 -1
- package/build/list-item/utils.js.map +1 -1
- package/build/media-text/edit.js +4 -2
- package/build/media-text/edit.js.map +1 -1
- package/build/navigation/edit/are-blocks-dirty.js +52 -0
- package/build/navigation/edit/are-blocks-dirty.js.map +1 -0
- package/build/navigation/edit/index.js +95 -116
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/menu-inspector-controls.js +72 -0
- package/build/navigation/edit/menu-inspector-controls.js.map +1 -0
- package/build/navigation/edit/navigation-menu-selector.js +5 -10
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/unsaved-inner-blocks.js +11 -7
- package/build/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build/navigation/view-modal.js +6 -2
- package/build/navigation/view-modal.js.map +1 -1
- package/build/navigation-link/edit.js +42 -298
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/link-ui.js +222 -0
- package/build/navigation-link/link-ui.js.map +1 -0
- package/build/navigation-link/transforms.js +12 -0
- package/build/navigation-link/transforms.js.map +1 -1
- package/build/navigation-link/update-attributes.js +108 -0
- package/build/navigation-link/update-attributes.js.map +1 -0
- package/build/navigation-submenu/edit.js +42 -173
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/constants.js +15 -0
- package/build/page-list/constants.js.map +1 -0
- package/build/page-list/convert-to-links-modal.js +22 -86
- package/build/page-list/convert-to-links-modal.js.map +1 -1
- package/build/page-list/convert-to-navigation-links.js +76 -0
- package/build/page-list/convert-to-navigation-links.js.map +1 -0
- package/build/page-list/edit.js +142 -78
- package/build/page-list/edit.js.map +1 -1
- package/build/page-list/index.js +6 -1
- package/build/page-list/index.js.map +1 -1
- package/build/page-list-item/edit.js +87 -0
- package/build/page-list-item/edit.js.map +1 -0
- package/build/page-list-item/index.js +85 -0
- package/build/page-list-item/index.js.map +1 -0
- package/build/page-list-item/init.js +16 -0
- package/build/page-list-item/init.js.map +1 -0
- package/build/paragraph/index.js +1 -7
- package/build/paragraph/index.js.map +1 -1
- package/build/post-author/edit.js +3 -2
- package/build/post-author/edit.js.map +1 -1
- package/build/post-featured-image/overlay.js +1 -0
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/post-template/index.js +8 -0
- package/build/post-template/index.js.map +1 -1
- package/build/preformatted/transforms.js +3 -1
- package/build/preformatted/transforms.js.map +1 -1
- package/build/query/deprecated.js +192 -21
- package/build/query/deprecated.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/query-placeholder.js +3 -19
- package/build/query/edit/query-placeholder.js.map +1 -1
- package/build/query/index.js +0 -8
- package/build/query/index.js.map +1 -1
- package/build/query/utils.js +0 -8
- package/build/query/utils.js.map +1 -1
- package/build/rss/edit.js +3 -0
- package/build/rss/edit.js.map +1 -1
- package/build/search/edit.native.js +22 -22
- package/build/search/edit.native.js.map +1 -1
- package/build/search/index.js +9 -1
- package/build/search/index.js.map +1 -1
- package/build/site-logo/edit.js +17 -9
- package/build/site-logo/edit.js.map +1 -1
- package/build/site-logo/index.js +1 -0
- package/build/site-logo/index.js.map +1 -1
- package/build/site-title/index.js +1 -0
- package/build/site-title/index.js.map +1 -1
- package/build/social-link/social-list.js +4 -12
- package/build/social-link/social-list.js.map +1 -1
- package/build/table/edit.js +3 -1
- package/build/table/edit.js.map +1 -1
- package/build/table/index.js +17 -1
- package/build/table/index.js.map +1 -1
- package/build/table/save.js +4 -2
- package/build/table/save.js.map +1 -1
- package/build/table/state.js +24 -12
- package/build/table/state.js.map +1 -1
- package/build/table/transforms.js +3 -2
- package/build/table/transforms.js.map +1 -1
- package/build/table-of-contents/edit.js +2 -2
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/tag-cloud/edit.js +2 -1
- package/build/tag-cloud/edit.js.map +1 -1
- package/build/template-part/edit/selection-modal.js +5 -2
- package/build/template-part/edit/selection-modal.js.map +1 -1
- package/build/template-part/edit/utils/hooks.js +2 -6
- package/build/template-part/edit/utils/hooks.js.map +1 -1
- package/build/text-columns/edit.js +1 -0
- package/build/text-columns/edit.js.map +1 -1
- package/build/utils/transformation-categories.native.js +1 -1
- package/build/utils/transformation-categories.native.js.map +1 -1
- package/build/video/edit.js +1 -1
- package/build/video/edit.js.map +1 -1
- package/build/video/edit.native.js +1 -3
- package/build/video/edit.native.js.map +1 -1
- package/build-module/audio/edit.native.js +1 -2
- package/build-module/audio/edit.native.js.map +1 -1
- package/build-module/audio/index.js +2 -1
- package/build-module/audio/index.js.map +1 -1
- package/build-module/avatar/edit.js +1 -0
- package/build-module/avatar/edit.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/edit.js +14 -2
- package/build-module/block/edit.js.map +1 -1
- package/build-module/block/edit.native.js +14 -6
- package/build-module/block/edit.native.js.map +1 -1
- package/build-module/block/index.js +1 -2
- package/build-module/block/index.js.map +1 -1
- package/build-module/button/edit.native.js +2 -1
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/code/transforms.js +1 -1
- package/build-module/code/transforms.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 +13 -29
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/comment-author-avatar/edit.js +1 -0
- package/build-module/comment-author-avatar/edit.js.map +1 -1
- package/build-module/cover/edit/inspector-controls.js +2 -0
- package/build-module/cover/edit/inspector-controls.js.map +1 -1
- package/build-module/cover/edit.native.js +22 -14
- package/build-module/cover/edit.native.js.map +1 -1
- package/build-module/embed/embed-controls.native.js +2 -1
- package/build-module/embed/embed-controls.native.js.map +1 -1
- package/build-module/embed/embed-preview.native.js +1 -2
- package/build-module/embed/embed-preview.native.js.map +1 -1
- package/build-module/file/inspector.js +1 -0
- package/build-module/file/inspector.js.map +1 -1
- package/build-module/gallery/edit.js +25 -12
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/gallery.native.js +1 -2
- package/build-module/gallery/gallery.native.js.map +1 -1
- package/build-module/gallery/shared.js +5 -11
- package/build-module/gallery/shared.js.map +1 -1
- package/build-module/gallery/transforms.js +1 -6
- package/build-module/gallery/transforms.js.map +1 -1
- package/build-module/gallery/use-get-media.js +1 -1
- package/build-module/gallery/use-get-media.js.map +1 -1
- package/build-module/gallery/use-get-media.native.js +3 -1
- package/build-module/gallery/use-get-media.native.js.map +1 -1
- package/build-module/gallery/v1/edit.js +23 -16
- package/build-module/gallery/v1/edit.js.map +1 -1
- package/build-module/gallery/v1/gallery.native.js +1 -2
- package/build-module/gallery/v1/gallery.native.js.map +1 -1
- package/build-module/gallery/v1/shared.js +5 -2
- package/build-module/gallery/v1/shared.js.map +1 -1
- package/build-module/group/edit.js +1 -3
- package/build-module/group/edit.js.map +1 -1
- package/build-module/group/index.js +3 -1
- package/build-module/group/index.js.map +1 -1
- package/build-module/group/placeholder.js +5 -26
- package/build-module/group/placeholder.js.map +1 -1
- package/build-module/heading/deprecated.js +152 -69
- package/build-module/heading/deprecated.js.map +1 -1
- package/build-module/heading/index.js +1 -2
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/transforms.js +1 -2
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/html/index.js +1 -1
- package/build-module/image/edit.js +9 -6
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +2 -1
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +13 -9
- package/build-module/image/image.js.map +1 -1
- package/build-module/index.js +2 -1
- package/build-module/index.js.map +1 -1
- package/build-module/latest-comments/edit.js +1 -0
- package/build-module/latest-comments/edit.js.map +1 -1
- package/build-module/latest-posts/edit.js +2 -0
- package/build-module/latest-posts/edit.js.map +1 -1
- package/build-module/list/transforms.js +1 -9
- package/build-module/list/transforms.js.map +1 -1
- package/build-module/list/utils.js +5 -2
- package/build-module/list/utils.js.map +1 -1
- package/build-module/list-item/index.js +3 -1
- package/build-module/list-item/index.js.map +1 -1
- package/build-module/list-item/transforms.js +13 -0
- package/build-module/list-item/transforms.js.map +1 -0
- package/build-module/list-item/utils.js +78 -1
- package/build-module/list-item/utils.js.map +1 -1
- package/build-module/media-text/edit.js +5 -3
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/navigation/edit/are-blocks-dirty.js +44 -0
- package/build-module/navigation/edit/are-blocks-dirty.js.map +1 -0
- package/build-module/navigation/edit/index.js +95 -117
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/menu-inspector-controls.js +59 -0
- package/build-module/navigation/edit/menu-inspector-controls.js.map +1 -0
- package/build-module/navigation/edit/navigation-menu-selector.js +6 -11
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/unsaved-inner-blocks.js +9 -6
- package/build-module/navigation/edit/unsaved-inner-blocks.js.map +1 -1
- package/build-module/navigation/view-modal.js +6 -2
- package/build-module/navigation/view-modal.js.map +1 -1
- package/build-module/navigation-link/edit.js +46 -299
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/link-ui.js +206 -0
- package/build-module/navigation-link/link-ui.js.map +1 -0
- package/build-module/navigation-link/transforms.js +12 -0
- package/build-module/navigation-link/transforms.js.map +1 -1
- package/build-module/navigation-link/update-attributes.js +97 -0
- package/build-module/navigation-link/update-attributes.js.map +1 -0
- package/build-module/navigation-submenu/edit.js +47 -175
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/constants.js +6 -0
- package/build-module/page-list/constants.js.map +1 -0
- package/build-module/page-list/convert-to-links-modal.js +20 -81
- package/build-module/page-list/convert-to-links-modal.js.map +1 -1
- package/build-module/page-list/convert-to-navigation-links.js +66 -0
- package/build-module/page-list/convert-to-navigation-links.js.map +1 -0
- package/build-module/page-list/edit.js +144 -82
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/page-list/index.js +6 -1
- package/build-module/page-list/index.js.map +1 -1
- package/build-module/page-list-item/edit.js +74 -0
- package/build-module/page-list-item/edit.js.map +1 -0
- package/build-module/page-list-item/index.js +68 -0
- package/build-module/page-list-item/index.js.map +1 -0
- package/build-module/page-list-item/init.js +6 -0
- package/build-module/page-list-item/init.js.map +1 -0
- package/build-module/paragraph/index.js +1 -7
- package/build-module/paragraph/index.js.map +1 -1
- package/build-module/post-author/edit.js +3 -2
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-featured-image/overlay.js +1 -0
- package/build-module/post-featured-image/overlay.js.map +1 -1
- package/build-module/post-template/index.js +8 -0
- package/build-module/post-template/index.js.map +1 -1
- package/build-module/preformatted/transforms.js +3 -1
- package/build-module/preformatted/transforms.js.map +1 -1
- package/build-module/query/deprecated.js +185 -21
- package/build-module/query/deprecated.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/query-placeholder.js +3 -19
- package/build-module/query/edit/query-placeholder.js.map +1 -1
- package/build-module/query/index.js +0 -8
- package/build-module/query/index.js.map +1 -1
- package/build-module/query/utils.js +0 -8
- package/build-module/query/utils.js.map +1 -1
- package/build-module/rss/edit.js +3 -0
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/search/edit.native.js +20 -20
- package/build-module/search/edit.native.js.map +1 -1
- package/build-module/search/index.js +8 -1
- package/build-module/search/index.js.map +1 -1
- package/build-module/site-logo/edit.js +17 -8
- package/build-module/site-logo/edit.js.map +1 -1
- package/build-module/site-logo/index.js +1 -0
- package/build-module/site-logo/index.js.map +1 -1
- package/build-module/site-title/index.js +1 -0
- package/build-module/site-title/index.js.map +1 -1
- package/build-module/social-link/social-list.js +2 -11
- package/build-module/social-link/social-list.js.map +1 -1
- package/build-module/table/edit.js +3 -1
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table/index.js +17 -1
- package/build-module/table/index.js.map +1 -1
- package/build-module/table/save.js +4 -2
- package/build-module/table/save.js.map +1 -1
- package/build-module/table/state.js +25 -13
- package/build-module/table/state.js.map +1 -1
- package/build-module/table/transforms.js +3 -2
- package/build-module/table/transforms.js.map +1 -1
- package/build-module/table-of-contents/edit.js +2 -2
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/tag-cloud/edit.js +3 -2
- package/build-module/tag-cloud/edit.js.map +1 -1
- package/build-module/template-part/edit/selection-modal.js +6 -3
- package/build-module/template-part/edit/selection-modal.js.map +1 -1
- package/build-module/template-part/edit/utils/hooks.js +3 -7
- package/build-module/template-part/edit/utils/hooks.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/utils/transformation-categories.native.js +1 -1
- package/build-module/utils/transformation-categories.native.js.map +1 -1
- package/build-module/video/edit.js +1 -1
- package/build-module/video/edit.js.map +1 -1
- package/build-module/video/edit.native.js +1 -2
- package/build-module/video/edit.native.js.map +1 -1
- package/build-style/archives/editor-rtl.css +12 -0
- package/build-style/archives/editor.css +12 -0
- package/build-style/archives/style-rtl.css +12 -0
- package/build-style/archives/style.css +12 -0
- package/build-style/audio/editor-rtl.css +12 -0
- package/build-style/audio/editor.css +12 -0
- package/build-style/audio/style-rtl.css +12 -0
- package/build-style/audio/style.css +12 -0
- package/build-style/audio/theme-rtl.css +12 -0
- package/build-style/audio/theme.css +12 -0
- package/build-style/avatar/editor-rtl.css +12 -0
- package/build-style/avatar/editor.css +12 -0
- package/build-style/avatar/style-rtl.css +12 -0
- package/build-style/avatar/style.css +12 -0
- package/build-style/block/editor-rtl.css +22 -0
- package/build-style/block/editor.css +22 -0
- package/build-style/button/editor-rtl.css +12 -0
- package/build-style/button/editor.css +12 -0
- package/build-style/button/style-rtl.css +12 -0
- package/build-style/button/style.css +12 -0
- package/build-style/buttons/editor-rtl.css +12 -0
- package/build-style/buttons/editor.css +12 -0
- package/build-style/buttons/style-rtl.css +12 -0
- package/build-style/buttons/style.css +12 -0
- package/build-style/calendar/style-rtl.css +12 -0
- package/build-style/calendar/style.css +12 -0
- package/build-style/categories/editor-rtl.css +12 -0
- package/build-style/categories/editor.css +12 -0
- package/build-style/categories/style-rtl.css +12 -0
- package/build-style/categories/style.css +12 -0
- package/build-style/classic-rtl.css +12 -0
- package/build-style/classic.css +12 -0
- package/build-style/code/editor-rtl.css +12 -0
- package/build-style/code/editor.css +12 -0
- package/build-style/code/style-rtl.css +12 -0
- package/build-style/code/style.css +12 -0
- package/build-style/code/theme-rtl.css +12 -0
- package/build-style/code/theme.css +12 -0
- package/build-style/columns/editor-rtl.css +12 -0
- package/build-style/columns/editor.css +12 -0
- package/build-style/columns/style-rtl.css +12 -0
- package/build-style/columns/style.css +12 -0
- package/build-style/comment-author-avatar/editor-rtl.css +12 -0
- package/build-style/comment-author-avatar/editor.css +12 -0
- package/build-style/comment-content/style-rtl.css +12 -0
- package/build-style/comment-content/style.css +12 -0
- package/build-style/comment-template/style-rtl.css +12 -0
- package/build-style/comment-template/style.css +12 -0
- package/build-style/comments/editor-rtl.css +12 -0
- package/build-style/comments/editor.css +12 -0
- package/build-style/comments/style-rtl.css +12 -0
- package/build-style/comments/style.css +12 -0
- package/build-style/comments-pagination/editor-rtl.css +12 -0
- package/build-style/comments-pagination/editor.css +12 -0
- package/build-style/comments-pagination/style-rtl.css +12 -0
- package/build-style/comments-pagination/style.css +12 -0
- package/build-style/comments-pagination-numbers/editor-rtl.css +12 -0
- package/build-style/comments-pagination-numbers/editor.css +12 -0
- package/build-style/comments-title/editor-rtl.css +12 -0
- package/build-style/comments-title/editor.css +12 -0
- package/build-style/common-rtl.css +17 -1
- package/build-style/common.css +17 -1
- package/build-style/cover/editor-rtl.css +12 -0
- package/build-style/cover/editor.css +12 -0
- package/build-style/cover/style-rtl.css +14 -1
- package/build-style/cover/style.css +14 -1
- package/build-style/editor-elements-rtl.css +12 -0
- package/build-style/editor-elements.css +12 -0
- package/build-style/editor-rtl.css +39 -20
- package/build-style/editor.css +39 -20
- package/build-style/elements-rtl.css +12 -0
- package/build-style/elements.css +12 -0
- package/build-style/embed/editor-rtl.css +12 -0
- package/build-style/embed/editor.css +12 -0
- package/build-style/embed/style-rtl.css +12 -0
- package/build-style/embed/style.css +12 -0
- package/build-style/embed/theme-rtl.css +12 -0
- package/build-style/embed/theme.css +12 -0
- package/build-style/file/editor-rtl.css +12 -0
- package/build-style/file/editor.css +12 -0
- package/build-style/file/style-rtl.css +12 -0
- package/build-style/file/style.css +12 -0
- package/build-style/freeform/editor-rtl.css +12 -0
- package/build-style/freeform/editor.css +12 -0
- package/build-style/gallery/editor-rtl.css +13 -1
- package/build-style/gallery/editor.css +13 -1
- package/build-style/gallery/style-rtl.css +16 -2
- package/build-style/gallery/style.css +16 -2
- package/build-style/gallery/theme-rtl.css +12 -0
- package/build-style/gallery/theme.css +12 -0
- package/build-style/group/editor-rtl.css +12 -0
- package/build-style/group/editor.css +12 -0
- package/build-style/group/style-rtl.css +12 -0
- package/build-style/group/style.css +12 -0
- package/build-style/group/theme-rtl.css +12 -0
- package/build-style/group/theme.css +12 -0
- package/build-style/heading/style-rtl.css +12 -0
- package/build-style/heading/style.css +12 -0
- package/build-style/html/editor-rtl.css +12 -0
- package/build-style/html/editor.css +12 -0
- package/build-style/image/editor-rtl.css +12 -9
- package/build-style/image/editor.css +12 -9
- package/build-style/image/style-rtl.css +12 -0
- package/build-style/image/style.css +12 -0
- package/build-style/image/theme-rtl.css +12 -0
- package/build-style/image/theme.css +12 -0
- package/build-style/latest-comments/style-rtl.css +12 -0
- package/build-style/latest-comments/style.css +12 -0
- package/build-style/latest-posts/editor-rtl.css +12 -0
- package/build-style/latest-posts/editor.css +12 -0
- package/build-style/latest-posts/style-rtl.css +12 -0
- package/build-style/latest-posts/style.css +12 -0
- package/build-style/list/style-rtl.css +12 -0
- package/build-style/list/style.css +12 -0
- package/build-style/media-text/editor-rtl.css +12 -0
- package/build-style/media-text/editor.css +12 -0
- package/build-style/media-text/style-rtl.css +12 -0
- package/build-style/media-text/style.css +12 -0
- package/build-style/more/editor-rtl.css +12 -0
- package/build-style/more/editor.css +12 -0
- package/build-style/navigation/editor-rtl.css +12 -0
- package/build-style/navigation/editor.css +12 -0
- package/build-style/navigation/style-rtl.css +12 -0
- package/build-style/navigation/style.css +12 -0
- package/build-style/navigation-link/editor-rtl.css +12 -0
- package/build-style/navigation-link/editor.css +12 -0
- package/build-style/navigation-link/style-rtl.css +12 -0
- package/build-style/navigation-link/style.css +12 -0
- package/build-style/navigation-submenu/editor-rtl.css +12 -0
- package/build-style/navigation-submenu/editor.css +12 -0
- package/build-style/nextpage/editor-rtl.css +12 -0
- package/build-style/nextpage/editor.css +12 -0
- package/build-style/page-list/editor-rtl.css +12 -0
- package/build-style/page-list/editor.css +12 -0
- package/build-style/page-list/style-rtl.css +12 -0
- package/build-style/page-list/style.css +12 -0
- package/build-style/paragraph/editor-rtl.css +12 -0
- package/build-style/paragraph/editor.css +12 -0
- package/build-style/paragraph/style-rtl.css +12 -0
- package/build-style/paragraph/style.css +12 -0
- package/build-style/post-author/style-rtl.css +12 -0
- package/build-style/post-author/style.css +12 -0
- package/build-style/post-comments-form/editor-rtl.css +12 -0
- package/build-style/post-comments-form/editor.css +12 -0
- package/build-style/post-comments-form/style-rtl.css +12 -0
- package/build-style/post-comments-form/style.css +12 -0
- package/build-style/post-date/style-rtl.css +12 -0
- package/build-style/post-date/style.css +12 -0
- package/build-style/post-excerpt/editor-rtl.css +12 -0
- package/build-style/post-excerpt/editor.css +12 -0
- package/build-style/post-excerpt/style-rtl.css +12 -0
- package/build-style/post-excerpt/style.css +12 -0
- package/build-style/post-featured-image/editor-rtl.css +12 -0
- package/build-style/post-featured-image/editor.css +12 -0
- package/build-style/post-featured-image/style-rtl.css +12 -0
- package/build-style/post-featured-image/style.css +12 -0
- package/build-style/post-navigation-link/style-rtl.css +12 -0
- package/build-style/post-navigation-link/style.css +12 -0
- package/build-style/post-template/editor-rtl.css +12 -0
- package/build-style/post-template/editor.css +12 -0
- package/build-style/post-template/style-rtl.css +12 -0
- package/build-style/post-template/style.css +12 -0
- package/build-style/post-terms/style-rtl.css +12 -0
- package/build-style/post-terms/style.css +12 -0
- package/build-style/post-title/style-rtl.css +12 -0
- package/build-style/post-title/style.css +12 -0
- package/build-style/preformatted/style-rtl.css +12 -0
- package/build-style/preformatted/style.css +12 -0
- package/build-style/pullquote/editor-rtl.css +12 -0
- package/build-style/pullquote/editor.css +12 -0
- package/build-style/pullquote/style-rtl.css +12 -0
- package/build-style/pullquote/style.css +12 -0
- package/build-style/pullquote/theme-rtl.css +12 -0
- package/build-style/pullquote/theme.css +12 -0
- package/build-style/query/editor-rtl.css +12 -0
- package/build-style/query/editor.css +12 -0
- package/build-style/query-pagination/editor-rtl.css +12 -0
- package/build-style/query-pagination/editor.css +12 -0
- package/build-style/query-pagination/style-rtl.css +12 -0
- package/build-style/query-pagination/style.css +12 -0
- package/build-style/query-pagination-numbers/editor-rtl.css +12 -0
- package/build-style/query-pagination-numbers/editor.css +12 -0
- package/build-style/query-title/style-rtl.css +12 -0
- package/build-style/query-title/style.css +12 -0
- package/build-style/quote/style-rtl.css +12 -0
- package/build-style/quote/style.css +12 -0
- package/build-style/quote/theme-rtl.css +12 -0
- package/build-style/quote/theme.css +12 -0
- package/build-style/read-more/style-rtl.css +12 -0
- package/build-style/read-more/style.css +12 -0
- package/build-style/reset-rtl.css +12 -0
- package/build-style/reset.css +12 -0
- package/build-style/rss/editor-rtl.css +12 -0
- package/build-style/rss/editor.css +12 -0
- package/build-style/rss/style-rtl.css +12 -0
- package/build-style/rss/style.css +12 -0
- package/build-style/search/editor-rtl.css +12 -0
- package/build-style/search/editor.css +12 -0
- package/build-style/search/style-rtl.css +12 -0
- package/build-style/search/style.css +12 -0
- package/build-style/search/theme-rtl.css +12 -0
- package/build-style/search/theme.css +12 -0
- package/build-style/separator/editor-rtl.css +12 -0
- package/build-style/separator/editor.css +12 -0
- package/build-style/separator/style-rtl.css +12 -0
- package/build-style/separator/style.css +12 -0
- package/build-style/separator/theme-rtl.css +12 -0
- package/build-style/separator/theme.css +12 -0
- package/build-style/shortcode/editor-rtl.css +13 -1
- package/build-style/shortcode/editor.css +13 -1
- package/build-style/site-logo/editor-rtl.css +12 -0
- package/build-style/site-logo/editor.css +12 -0
- package/build-style/site-logo/style-rtl.css +12 -0
- package/build-style/site-logo/style.css +12 -0
- package/build-style/site-tagline/editor-rtl.css +12 -0
- package/build-style/site-tagline/editor.css +12 -0
- package/build-style/site-title/editor-rtl.css +12 -0
- package/build-style/site-title/editor.css +12 -0
- package/build-style/site-title/style-rtl.css +12 -0
- package/build-style/site-title/style.css +12 -0
- package/build-style/social-link/editor-rtl.css +12 -0
- package/build-style/social-link/editor.css +12 -0
- package/build-style/social-links/editor-rtl.css +12 -0
- package/build-style/social-links/editor.css +12 -0
- package/build-style/social-links/style-rtl.css +12 -0
- package/build-style/social-links/style.css +12 -0
- package/build-style/spacer/editor-rtl.css +12 -0
- package/build-style/spacer/editor.css +12 -0
- package/build-style/spacer/style-rtl.css +12 -0
- package/build-style/spacer/style.css +12 -0
- package/build-style/style-rtl.css +23 -5
- package/build-style/style.css +23 -5
- package/build-style/table/editor-rtl.css +12 -8
- package/build-style/table/editor.css +12 -8
- package/build-style/table/style-rtl.css +12 -0
- package/build-style/table/style.css +12 -0
- package/build-style/table/theme-rtl.css +12 -0
- package/build-style/table/theme.css +12 -0
- package/build-style/tag-cloud/style-rtl.css +12 -0
- package/build-style/tag-cloud/style.css +12 -0
- package/build-style/template-part/editor-rtl.css +27 -1
- package/build-style/template-part/editor.css +27 -1
- package/build-style/template-part/theme-rtl.css +12 -0
- package/build-style/template-part/theme.css +12 -0
- package/build-style/text-columns/editor-rtl.css +12 -0
- package/build-style/text-columns/editor.css +12 -0
- package/build-style/text-columns/style-rtl.css +12 -0
- package/build-style/text-columns/style.css +12 -0
- package/build-style/theme-rtl.css +12 -0
- package/build-style/theme.css +12 -0
- package/build-style/verse/style-rtl.css +12 -0
- package/build-style/verse/style.css +12 -0
- package/build-style/video/editor-rtl.css +12 -0
- package/build-style/video/editor.css +12 -0
- package/build-style/video/style-rtl.css +14 -1
- package/build-style/video/style.css +14 -1
- package/build-style/video/theme-rtl.css +12 -0
- package/build-style/video/theme.css +12 -0
- package/package.json +32 -30
- package/src/audio/edit.native.js +1 -2
- package/src/audio/index.js +1 -0
- package/src/avatar/edit.js +1 -0
- package/src/avatar/user-control.js +1 -0
- package/src/block/block.json +1 -2
- package/src/block/edit.js +14 -3
- package/src/block/edit.native.js +24 -12
- package/src/block/editor.scss +17 -0
- package/src/block/index.php +1 -2
- package/src/block/test/edit.native.js +28 -32
- package/src/button/edit.native.js +1 -0
- package/src/buttons/test/edit.native.js +40 -51
- package/src/code/transforms.js +3 -1
- package/src/columns/edit.js +1 -0
- package/src/columns/edit.native.js +18 -26
- package/src/comment-author-avatar/edit.js +1 -0
- package/src/cover/edit/inspector-controls.js +2 -0
- package/src/cover/edit.native.js +32 -19
- package/src/cover/test/edit.native.js +73 -126
- package/src/embed/embed-controls.native.js +1 -0
- package/src/embed/embed-preview.native.js +1 -2
- package/src/embed/test/index.native.js +237 -231
- package/src/file/inspector.js +1 -0
- package/src/file/test/__snapshots__/edit.native.js.snap +2 -6
- package/src/gallery/edit.js +15 -5
- package/src/gallery/gallery.native.js +1 -2
- package/src/gallery/shared.js +7 -11
- package/src/gallery/transforms.js +1 -6
- package/src/gallery/use-get-media.js +1 -1
- package/src/gallery/use-get-media.native.js +2 -1
- package/src/gallery/v1/edit.js +8 -7
- package/src/gallery/v1/gallery.native.js +1 -2
- package/src/gallery/v1/shared.js +7 -2
- package/src/group/block.json +3 -1
- package/src/group/edit.js +2 -6
- package/src/group/placeholder.js +6 -25
- package/src/group/test/__snapshots__/edit.native.js.snap +1 -1
- package/src/heading/block.json +1 -2
- package/src/heading/deprecated.js +209 -136
- package/src/heading/index.php +52 -0
- package/src/heading/test/__snapshots__/index.native.js.snap +7 -0
- package/src/heading/test/index.native.js +44 -0
- package/src/home-link/index.php +1 -1
- package/src/html/block.json +1 -1
- package/src/image/edit.js +7 -2
- package/src/image/edit.native.js +2 -1
- package/src/image/editor.scss +0 -11
- package/src/image/image.js +13 -8
- package/src/image/test/edit.native.js +14 -10
- package/src/index.js +2 -0
- package/src/latest-comments/edit.js +1 -0
- package/src/latest-posts/edit.js +2 -0
- package/src/list/test/edit.native.js +53 -45
- package/src/list/transforms.js +0 -11
- package/src/list/utils.js +6 -2
- package/src/list-item/index.js +2 -0
- package/src/list-item/transforms.js +17 -0
- package/src/list-item/utils.js +10 -1
- package/src/media-text/edit.js +5 -3
- package/src/missing/test/edit-integration.native.js +10 -12
- package/src/navigation/edit/are-blocks-dirty.js +51 -0
- package/src/navigation/edit/index.js +230 -298
- package/src/navigation/edit/menu-inspector-controls.js +78 -0
- package/src/navigation/edit/navigation-menu-selector.js +5 -16
- package/src/navigation/edit/test/are-blocks-dirty.js +121 -0
- package/src/navigation/edit/unsaved-inner-blocks.js +12 -7
- package/src/navigation/index.php +57 -10
- package/src/navigation/view-modal.js +11 -1
- package/src/navigation-link/edit.js +58 -329
- package/src/navigation-link/index.php +32 -0
- package/src/navigation-link/link-ui.js +213 -0
- package/src/navigation-link/test/edit.js +23 -82
- package/src/navigation-link/transforms.js +14 -0
- package/src/navigation-link/update-attributes.js +99 -0
- package/src/navigation-submenu/edit.js +57 -177
- package/src/navigation-submenu/index.php +40 -0
- package/src/page-list/block.json +6 -1
- package/src/page-list/constants.js +8 -0
- package/src/page-list/convert-to-links-modal.js +19 -76
- package/src/page-list/convert-to-navigation-links.js +60 -0
- package/src/page-list/edit.js +179 -118
- package/src/page-list/index.php +9 -0
- package/src/page-list/test/convert-to-links-modal.js +28 -34
- package/src/page-list-item/block.json +51 -0
- package/src/page-list-item/edit.js +94 -0
- package/src/page-list-item/index.js +24 -0
- package/src/page-list-item/init.js +6 -0
- package/src/paragraph/index.js +0 -6
- package/src/post-author/edit.js +3 -2
- package/src/post-content/index.php +1 -2
- package/src/post-featured-image/index.php +7 -2
- package/src/post-featured-image/overlay.js +1 -0
- package/src/post-template/block.json +8 -0
- package/src/preformatted/transforms.js +4 -1
- package/src/query/block.json +0 -8
- package/src/query/deprecated.js +257 -86
- package/src/query/edit/inspector-controls/index.js +1 -0
- package/src/query/edit/query-placeholder.js +4 -16
- package/src/rss/edit.js +3 -0
- package/src/search/edit.native.js +31 -27
- package/src/search/index.js +5 -1
- package/src/shortcode/test/edit.native.js +15 -18
- package/src/site-logo/edit.js +13 -5
- package/src/site-logo/index.js +1 -0
- package/src/site-title/index.js +1 -0
- package/src/social-link/social-list.js +2 -7
- package/src/social-link/test/index.native.js +10 -16
- package/src/social-links/test/edit.native.js +4 -3
- package/src/spacer/test/index.native.js +39 -36
- package/src/table/block.json +15 -0
- package/src/table/edit.js +2 -1
- package/src/table/editor.scss +0 -4
- package/src/table/index.js +1 -0
- package/src/table/save.js +5 -1
- package/src/table/state.js +22 -7
- package/src/table/transforms.js +2 -1
- package/src/table-of-contents/edit.js +2 -2
- package/src/tag-cloud/edit.js +3 -2
- package/src/template-part/edit/selection-modal.js +4 -3
- package/src/template-part/edit/utils/hooks.js +7 -3
- package/src/template-part/editor.scss +20 -2
- package/src/template-part/index.php +1 -2
- package/src/text-columns/edit.js +1 -0
- package/src/utils/transformation-categories.native.js +1 -0
- package/src/video/edit.js +1 -1
- package/src/video/edit.native.js +1 -2
- package/test/babel-plugin.js +35 -35
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -63,57 +63,47 @@ const migrateTextAlign = attributes => {
|
|
|
63
63
|
} : attributes;
|
|
64
64
|
};
|
|
65
65
|
|
|
66
|
-
const
|
|
67
|
-
supports:
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
color: {
|
|
72
|
-
link: true
|
|
73
|
-
},
|
|
74
|
-
fontSize: true,
|
|
75
|
-
lineHeight: true,
|
|
76
|
-
__experimentalSelector: {
|
|
77
|
-
'core/heading/h1': 'h1',
|
|
78
|
-
'core/heading/h2': 'h2',
|
|
79
|
-
'core/heading/h3': 'h3',
|
|
80
|
-
'core/heading/h4': 'h4',
|
|
81
|
-
'core/heading/h5': 'h5',
|
|
82
|
-
'core/heading/h6': 'h6'
|
|
66
|
+
const v1 = {
|
|
67
|
+
supports: blockSupports,
|
|
68
|
+
attributes: { ...blockAttributes,
|
|
69
|
+
customTextColor: {
|
|
70
|
+
type: 'string'
|
|
83
71
|
},
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
isEligible: _ref => {
|
|
88
|
-
let {
|
|
89
|
-
align
|
|
90
|
-
} = _ref;
|
|
91
|
-
return TEXT_ALIGN_OPTIONS.includes(align);
|
|
72
|
+
textColor: {
|
|
73
|
+
type: 'string'
|
|
74
|
+
}
|
|
92
75
|
},
|
|
93
|
-
migrate: migrateTextAlign,
|
|
76
|
+
migrate: attributes => migrateCustomColors(migrateTextAlign(attributes)),
|
|
94
77
|
|
|
95
|
-
save(
|
|
78
|
+
save(_ref) {
|
|
96
79
|
let {
|
|
97
80
|
attributes
|
|
98
|
-
} =
|
|
81
|
+
} = _ref;
|
|
99
82
|
const {
|
|
100
83
|
align,
|
|
84
|
+
level,
|
|
101
85
|
content,
|
|
102
|
-
|
|
86
|
+
textColor,
|
|
87
|
+
customTextColor
|
|
103
88
|
} = attributes;
|
|
104
|
-
const
|
|
89
|
+
const tagName = 'h' + level;
|
|
90
|
+
const textClass = getColorClassName('color', textColor);
|
|
105
91
|
const className = classnames({
|
|
106
|
-
[
|
|
92
|
+
[textClass]: textClass
|
|
107
93
|
});
|
|
108
|
-
return createElement(
|
|
109
|
-
className
|
|
110
|
-
|
|
94
|
+
return createElement(RichText.Content, {
|
|
95
|
+
className: className ? className : undefined,
|
|
96
|
+
tagName: tagName,
|
|
97
|
+
style: {
|
|
98
|
+
textAlign: align,
|
|
99
|
+
color: textClass ? undefined : customTextColor
|
|
100
|
+
},
|
|
111
101
|
value: content
|
|
112
|
-
})
|
|
102
|
+
});
|
|
113
103
|
}
|
|
114
104
|
|
|
115
|
-
}
|
|
116
|
-
|
|
105
|
+
};
|
|
106
|
+
const v2 = {
|
|
117
107
|
attributes: { ...blockAttributes,
|
|
118
108
|
customTextColor: {
|
|
119
109
|
type: 'string'
|
|
@@ -124,10 +114,10 @@ const deprecated = [{
|
|
|
124
114
|
},
|
|
125
115
|
migrate: attributes => migrateCustomColors(migrateTextAlign(attributes)),
|
|
126
116
|
|
|
127
|
-
save(
|
|
117
|
+
save(_ref2) {
|
|
128
118
|
let {
|
|
129
119
|
attributes
|
|
130
|
-
} =
|
|
120
|
+
} = _ref2;
|
|
131
121
|
const {
|
|
132
122
|
align,
|
|
133
123
|
content,
|
|
@@ -139,7 +129,6 @@ const deprecated = [{
|
|
|
139
129
|
const textClass = getColorClassName('color', textColor);
|
|
140
130
|
const className = classnames({
|
|
141
131
|
[textClass]: textClass,
|
|
142
|
-
'has-text-color': textColor || customTextColor,
|
|
143
132
|
[`has-text-align-${align}`]: align
|
|
144
133
|
});
|
|
145
134
|
return createElement(RichText.Content, {
|
|
@@ -150,9 +139,12 @@ const deprecated = [{
|
|
|
150
139
|
},
|
|
151
140
|
value: content
|
|
152
141
|
});
|
|
153
|
-
}
|
|
142
|
+
},
|
|
154
143
|
|
|
155
|
-
|
|
144
|
+
supports: blockSupports
|
|
145
|
+
};
|
|
146
|
+
const v3 = {
|
|
147
|
+
supports: blockSupports,
|
|
156
148
|
attributes: { ...blockAttributes,
|
|
157
149
|
customTextColor: {
|
|
158
150
|
type: 'string'
|
|
@@ -163,10 +155,10 @@ const deprecated = [{
|
|
|
163
155
|
},
|
|
164
156
|
migrate: attributes => migrateCustomColors(migrateTextAlign(attributes)),
|
|
165
157
|
|
|
166
|
-
save(
|
|
158
|
+
save(_ref3) {
|
|
167
159
|
let {
|
|
168
160
|
attributes
|
|
169
|
-
} =
|
|
161
|
+
} = _ref3;
|
|
170
162
|
const {
|
|
171
163
|
align,
|
|
172
164
|
content,
|
|
@@ -178,6 +170,7 @@ const deprecated = [{
|
|
|
178
170
|
const textClass = getColorClassName('color', textColor);
|
|
179
171
|
const className = classnames({
|
|
180
172
|
[textClass]: textClass,
|
|
173
|
+
'has-text-color': textColor || customTextColor,
|
|
181
174
|
[`has-text-align-${align}`]: align
|
|
182
175
|
});
|
|
183
176
|
return createElement(RichText.Content, {
|
|
@@ -188,20 +181,37 @@ const deprecated = [{
|
|
|
188
181
|
},
|
|
189
182
|
value: content
|
|
190
183
|
});
|
|
191
|
-
}
|
|
184
|
+
}
|
|
192
185
|
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
supports:
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
186
|
+
};
|
|
187
|
+
const v4 = {
|
|
188
|
+
supports: {
|
|
189
|
+
align: ['wide', 'full'],
|
|
190
|
+
anchor: true,
|
|
191
|
+
className: false,
|
|
192
|
+
color: {
|
|
193
|
+
link: true
|
|
199
194
|
},
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
195
|
+
fontSize: true,
|
|
196
|
+
lineHeight: true,
|
|
197
|
+
__experimentalSelector: {
|
|
198
|
+
'core/heading/h1': 'h1',
|
|
199
|
+
'core/heading/h2': 'h2',
|
|
200
|
+
'core/heading/h3': 'h3',
|
|
201
|
+
'core/heading/h4': 'h4',
|
|
202
|
+
'core/heading/h5': 'h5',
|
|
203
|
+
'core/heading/h6': 'h6'
|
|
204
|
+
},
|
|
205
|
+
__unstablePasteTextInline: true
|
|
203
206
|
},
|
|
204
|
-
|
|
207
|
+
attributes: blockAttributes,
|
|
208
|
+
isEligible: _ref4 => {
|
|
209
|
+
let {
|
|
210
|
+
align
|
|
211
|
+
} = _ref4;
|
|
212
|
+
return TEXT_ALIGN_OPTIONS.includes(align);
|
|
213
|
+
},
|
|
214
|
+
migrate: migrateTextAlign,
|
|
205
215
|
|
|
206
216
|
save(_ref5) {
|
|
207
217
|
let {
|
|
@@ -209,27 +219,100 @@ const deprecated = [{
|
|
|
209
219
|
} = _ref5;
|
|
210
220
|
const {
|
|
211
221
|
align,
|
|
212
|
-
level,
|
|
213
222
|
content,
|
|
214
|
-
|
|
215
|
-
customTextColor
|
|
223
|
+
level
|
|
216
224
|
} = attributes;
|
|
217
|
-
const
|
|
218
|
-
const textClass = getColorClassName('color', textColor);
|
|
225
|
+
const TagName = 'h' + level;
|
|
219
226
|
const className = classnames({
|
|
220
|
-
[
|
|
227
|
+
[`has-text-align-${align}`]: align
|
|
221
228
|
});
|
|
222
|
-
return createElement(
|
|
223
|
-
className
|
|
224
|
-
|
|
225
|
-
style: {
|
|
226
|
-
textAlign: align,
|
|
227
|
-
color: textClass ? undefined : customTextColor
|
|
228
|
-
},
|
|
229
|
+
return createElement(TagName, useBlockProps.save({
|
|
230
|
+
className
|
|
231
|
+
}), createElement(RichText.Content, {
|
|
229
232
|
value: content
|
|
233
|
+
}));
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
}; // This deprecation covers the serialization of the `wp-block-heading` class
|
|
237
|
+
// into the block's markup after className support was enabled.
|
|
238
|
+
|
|
239
|
+
const v5 = {
|
|
240
|
+
supports: {
|
|
241
|
+
align: ['wide', 'full'],
|
|
242
|
+
anchor: true,
|
|
243
|
+
className: false,
|
|
244
|
+
color: {
|
|
245
|
+
gradients: true,
|
|
246
|
+
link: true,
|
|
247
|
+
__experimentalDefaultControls: {
|
|
248
|
+
background: true,
|
|
249
|
+
text: true
|
|
250
|
+
}
|
|
251
|
+
},
|
|
252
|
+
spacing: {
|
|
253
|
+
margin: true,
|
|
254
|
+
padding: true
|
|
255
|
+
},
|
|
256
|
+
typography: {
|
|
257
|
+
fontSize: true,
|
|
258
|
+
lineHeight: true,
|
|
259
|
+
__experimentalFontFamily: true,
|
|
260
|
+
__experimentalFontStyle: true,
|
|
261
|
+
__experimentalFontWeight: true,
|
|
262
|
+
__experimentalLetterSpacing: true,
|
|
263
|
+
__experimentalTextTransform: true,
|
|
264
|
+
__experimentalTextDecoration: true,
|
|
265
|
+
__experimentalDefaultControls: {
|
|
266
|
+
fontSize: true,
|
|
267
|
+
fontAppearance: true,
|
|
268
|
+
textTransform: true
|
|
269
|
+
}
|
|
270
|
+
},
|
|
271
|
+
__experimentalSelector: 'h1,h2,h3,h4,h5,h6',
|
|
272
|
+
__unstablePasteTextInline: true,
|
|
273
|
+
__experimentalSlashInserter: true
|
|
274
|
+
},
|
|
275
|
+
attributes: {
|
|
276
|
+
textAlign: {
|
|
277
|
+
type: 'string'
|
|
278
|
+
},
|
|
279
|
+
content: {
|
|
280
|
+
type: 'string',
|
|
281
|
+
source: 'html',
|
|
282
|
+
selector: 'h1,h2,h3,h4,h5,h6',
|
|
283
|
+
default: '',
|
|
284
|
+
__experimentalRole: 'content'
|
|
285
|
+
},
|
|
286
|
+
level: {
|
|
287
|
+
type: 'number',
|
|
288
|
+
default: 2
|
|
289
|
+
},
|
|
290
|
+
placeholder: {
|
|
291
|
+
type: 'string'
|
|
292
|
+
}
|
|
293
|
+
},
|
|
294
|
+
|
|
295
|
+
save(_ref6) {
|
|
296
|
+
let {
|
|
297
|
+
attributes
|
|
298
|
+
} = _ref6;
|
|
299
|
+
const {
|
|
300
|
+
textAlign,
|
|
301
|
+
content,
|
|
302
|
+
level
|
|
303
|
+
} = attributes;
|
|
304
|
+
const TagName = 'h' + level;
|
|
305
|
+
const className = classnames({
|
|
306
|
+
[`has-text-align-${textAlign}`]: textAlign
|
|
230
307
|
});
|
|
308
|
+
return createElement(TagName, useBlockProps.save({
|
|
309
|
+
className
|
|
310
|
+
}), createElement(RichText.Content, {
|
|
311
|
+
value: content
|
|
312
|
+
}));
|
|
231
313
|
}
|
|
232
314
|
|
|
233
|
-
}
|
|
315
|
+
};
|
|
316
|
+
const deprecated = [v5, v4, v3, v2, v1];
|
|
234
317
|
export default deprecated;
|
|
235
318
|
//# sourceMappingURL=deprecated.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/heading/deprecated.js"],"names":["classnames","getColorClassName","RichText","useBlockProps","blockSupports","className","anchor","blockAttributes","align","type","content","source","selector","default","level","placeholder","migrateCustomColors","attributes","customTextColor","style","color","text","restAttributes","TEXT_ALIGN_OPTIONS","migrateTextAlign","rest","includes","textAlign","deprecated","supports","link","fontSize","lineHeight","__experimentalSelector","__unstablePasteTextInline","isEligible","migrate","save","TagName","textColor","tagName","textClass","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tgetColorClassName,\n\tRichText,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\n\nconst blockSupports = {\n\tclassName: false,\n\tanchor: true,\n};\n\nconst blockAttributes = {\n\talign: {\n\t\ttype: 'string',\n\t},\n\tcontent: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\tdefault: '',\n\t},\n\tlevel: {\n\t\ttype: 'number',\n\t\tdefault: 2,\n\t},\n\tplaceholder: {\n\t\ttype: 'string',\n\t},\n};\n\nconst migrateCustomColors = ( attributes ) => {\n\tif ( ! attributes.customTextColor ) {\n\t\treturn attributes;\n\t}\n\tconst style = {\n\t\tcolor: {\n\t\t\ttext: attributes.customTextColor,\n\t\t},\n\t};\n\n\tconst { customTextColor, ...restAttributes } = attributes;\n\n\treturn {\n\t\t...restAttributes,\n\t\tstyle,\n\t};\n};\n\nconst TEXT_ALIGN_OPTIONS = [ 'left', 'right', 'center' ];\n\nconst migrateTextAlign = ( attributes ) => {\n\tconst { align, ...rest } = attributes;\n\treturn TEXT_ALIGN_OPTIONS.includes( align )\n\t\t? { ...rest, textAlign: align }\n\t\t: attributes;\n};\n\nconst deprecated = [\n\t{\n\t\tsupports: {\n\t\t\talign: [ 'wide', 'full' ],\n\t\t\tanchor: true,\n\t\t\tclassName: false,\n\t\t\tcolor: { link: true },\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalSelector: {\n\t\t\t\t'core/heading/h1': 'h1',\n\t\t\t\t'core/heading/h2': 'h2',\n\t\t\t\t'core/heading/h3': 'h3',\n\t\t\t\t'core/heading/h4': 'h4',\n\t\t\t\t'core/heading/h5': 'h5',\n\t\t\t\t'core/heading/h6': 'h6',\n\t\t\t},\n\t\t\t__unstablePasteTextInline: true,\n\t\t},\n\t\tattributes: blockAttributes,\n\t\tisEligible: ( { align } ) => TEXT_ALIGN_OPTIONS.includes( align ),\n\t\tmigrate: migrateTextAlign,\n\t\tsave( { attributes } ) {\n\t\t\tconst { align, content, level } = attributes;\n\t\t\tconst TagName = 'h' + level;\n\n\t\t\tconst className = classnames( {\n\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<TagName { ...useBlockProps.save( { className } ) }>\n\t\t\t\t\t<RichText.Content value={ content } />\n\t\t\t\t</TagName>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tsupports: blockSupports,\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tmigrate: ( attributes ) =>\n\t\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\t\tsave( { attributes } ) {\n\t\t\tconst { align, content, customTextColor, level, textColor } =\n\t\t\t\tattributes;\n\t\t\tconst tagName = 'h' + level;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\t\tconst className = classnames( {\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<RichText.Content\n\t\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ content }\n\t\t\t\t/>\n\t\t\t);\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tmigrate: ( attributes ) =>\n\t\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\t\tsave( { attributes } ) {\n\t\t\tconst { align, content, customTextColor, level, textColor } =\n\t\t\t\tattributes;\n\t\t\tconst tagName = 'h' + level;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\t\tconst className = classnames( {\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<RichText.Content\n\t\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ content }\n\t\t\t\t/>\n\t\t\t);\n\t\t},\n\t\tsupports: blockSupports,\n\t},\n\t{\n\t\tsupports: blockSupports,\n\t\tattributes: {\n\t\t\t...blockAttributes,\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tmigrate: ( attributes ) =>\n\t\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\t\tsave( { attributes } ) {\n\t\t\tconst { align, level, content, textColor, customTextColor } =\n\t\t\t\tattributes;\n\t\t\tconst tagName = 'h' + level;\n\n\t\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\t\tconst className = classnames( {\n\t\t\t\t[ textClass ]: textClass,\n\t\t\t} );\n\n\t\t\treturn (\n\t\t\t\t<RichText.Content\n\t\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\ttextAlign: align,\n\t\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t\t} }\n\t\t\t\t\tvalue={ content }\n\t\t\t\t/>\n\t\t\t);\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/heading/deprecated.js"],"names":["classnames","getColorClassName","RichText","useBlockProps","blockSupports","className","anchor","blockAttributes","align","type","content","source","selector","default","level","placeholder","migrateCustomColors","attributes","customTextColor","style","color","text","restAttributes","TEXT_ALIGN_OPTIONS","migrateTextAlign","rest","includes","textAlign","v1","supports","textColor","migrate","save","tagName","textClass","undefined","v2","v3","v4","link","fontSize","lineHeight","__experimentalSelector","__unstablePasteTextInline","isEligible","TagName","v5","gradients","__experimentalDefaultControls","background","spacing","margin","padding","typography","__experimentalFontFamily","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalTextDecoration","fontAppearance","textTransform","__experimentalSlashInserter","__experimentalRole","deprecated"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tgetColorClassName,\n\tRichText,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\n\nconst blockSupports = {\n\tclassName: false,\n\tanchor: true,\n};\n\nconst blockAttributes = {\n\talign: {\n\t\ttype: 'string',\n\t},\n\tcontent: {\n\t\ttype: 'string',\n\t\tsource: 'html',\n\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\tdefault: '',\n\t},\n\tlevel: {\n\t\ttype: 'number',\n\t\tdefault: 2,\n\t},\n\tplaceholder: {\n\t\ttype: 'string',\n\t},\n};\n\nconst migrateCustomColors = ( attributes ) => {\n\tif ( ! attributes.customTextColor ) {\n\t\treturn attributes;\n\t}\n\tconst style = {\n\t\tcolor: {\n\t\t\ttext: attributes.customTextColor,\n\t\t},\n\t};\n\n\tconst { customTextColor, ...restAttributes } = attributes;\n\n\treturn {\n\t\t...restAttributes,\n\t\tstyle,\n\t};\n};\n\nconst TEXT_ALIGN_OPTIONS = [ 'left', 'right', 'center' ];\n\nconst migrateTextAlign = ( attributes ) => {\n\tconst { align, ...rest } = attributes;\n\treturn TEXT_ALIGN_OPTIONS.includes( align )\n\t\t? { ...rest, textAlign: align }\n\t\t: attributes;\n};\n\nconst v1 = {\n\tsupports: blockSupports,\n\tattributes: {\n\t\t...blockAttributes,\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tmigrate: ( attributes ) =>\n\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\tsave( { attributes } ) {\n\t\tconst { align, level, content, textColor, customTextColor } =\n\t\t\tattributes;\n\t\tconst tagName = 'h' + level;\n\n\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\tconst className = classnames( {\n\t\t\t[ textClass ]: textClass,\n\t\t} );\n\n\t\treturn (\n\t\t\t<RichText.Content\n\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\ttagName={ tagName }\n\t\t\t\tstyle={ {\n\t\t\t\t\ttextAlign: align,\n\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t} }\n\t\t\t\tvalue={ content }\n\t\t\t/>\n\t\t);\n\t},\n};\nconst v2 = {\n\tattributes: {\n\t\t...blockAttributes,\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tmigrate: ( attributes ) =>\n\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\tsave( { attributes } ) {\n\t\tconst { align, content, customTextColor, level, textColor } =\n\t\t\tattributes;\n\t\tconst tagName = 'h' + level;\n\n\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\tconst className = classnames( {\n\t\t\t[ textClass ]: textClass,\n\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t} );\n\n\t\treturn (\n\t\t\t<RichText.Content\n\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\ttagName={ tagName }\n\t\t\t\tstyle={ {\n\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t} }\n\t\t\t\tvalue={ content }\n\t\t\t/>\n\t\t);\n\t},\n\tsupports: blockSupports,\n};\nconst v3 = {\n\tsupports: blockSupports,\n\tattributes: {\n\t\t...blockAttributes,\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tmigrate: ( attributes ) =>\n\t\tmigrateCustomColors( migrateTextAlign( attributes ) ),\n\tsave( { attributes } ) {\n\t\tconst { align, content, customTextColor, level, textColor } =\n\t\t\tattributes;\n\t\tconst tagName = 'h' + level;\n\n\t\tconst textClass = getColorClassName( 'color', textColor );\n\n\t\tconst className = classnames( {\n\t\t\t[ textClass ]: textClass,\n\t\t\t'has-text-color': textColor || customTextColor,\n\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t} );\n\n\t\treturn (\n\t\t\t<RichText.Content\n\t\t\t\tclassName={ className ? className : undefined }\n\t\t\t\ttagName={ tagName }\n\t\t\t\tstyle={ {\n\t\t\t\t\tcolor: textClass ? undefined : customTextColor,\n\t\t\t\t} }\n\t\t\t\tvalue={ content }\n\t\t\t/>\n\t\t);\n\t},\n};\nconst v4 = {\n\tsupports: {\n\t\talign: [ 'wide', 'full' ],\n\t\tanchor: true,\n\t\tclassName: false,\n\t\tcolor: { link: true },\n\t\tfontSize: true,\n\t\tlineHeight: true,\n\t\t__experimentalSelector: {\n\t\t\t'core/heading/h1': 'h1',\n\t\t\t'core/heading/h2': 'h2',\n\t\t\t'core/heading/h3': 'h3',\n\t\t\t'core/heading/h4': 'h4',\n\t\t\t'core/heading/h5': 'h5',\n\t\t\t'core/heading/h6': 'h6',\n\t\t},\n\t\t__unstablePasteTextInline: true,\n\t},\n\tattributes: blockAttributes,\n\tisEligible: ( { align } ) => TEXT_ALIGN_OPTIONS.includes( align ),\n\tmigrate: migrateTextAlign,\n\tsave( { attributes } ) {\n\t\tconst { align, content, level } = attributes;\n\t\tconst TagName = 'h' + level;\n\n\t\tconst className = classnames( {\n\t\t\t[ `has-text-align-${ align }` ]: align,\n\t\t} );\n\n\t\treturn (\n\t\t\t<TagName { ...useBlockProps.save( { className } ) }>\n\t\t\t\t<RichText.Content value={ content } />\n\t\t\t</TagName>\n\t\t);\n\t},\n};\n\n// This deprecation covers the serialization of the `wp-block-heading` class\n// into the block's markup after className support was enabled.\nconst v5 = {\n\tsupports: {\n\t\talign: [ 'wide', 'full' ],\n\t\tanchor: true,\n\t\tclassName: false,\n\t\tcolor: {\n\t\t\tgradients: true,\n\t\t\tlink: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tbackground: true,\n\t\t\t\ttext: true,\n\t\t\t},\n\t\t},\n\t\tspacing: {\n\t\t\tmargin: true,\n\t\t\tpadding: true,\n\t\t},\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalLetterSpacing: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t\tfontAppearance: true,\n\t\t\t\ttextTransform: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalSelector: 'h1,h2,h3,h4,h5,h6',\n\t\t__unstablePasteTextInline: true,\n\t\t__experimentalSlashInserter: true,\n\t},\n\tattributes: {\n\t\ttextAlign: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcontent: {\n\t\t\ttype: 'string',\n\t\t\tsource: 'html',\n\t\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\t\tdefault: '',\n\t\t\t__experimentalRole: 'content',\n\t\t},\n\t\tlevel: {\n\t\t\ttype: 'number',\n\t\t\tdefault: 2,\n\t\t},\n\t\tplaceholder: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tsave( { attributes } ) {\n\t\tconst { textAlign, content, level } = attributes;\n\t\tconst TagName = 'h' + level;\n\n\t\tconst className = classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} );\n\n\t\treturn (\n\t\t\t<TagName { ...useBlockProps.save( { className } ) }>\n\t\t\t\t<RichText.Content value={ content } />\n\t\t\t</TagName>\n\t\t);\n\t},\n};\n\nconst deprecated = [ v5, v4, v3, v2, v1 ];\n\nexport default deprecated;\n"]}
|
|
@@ -46,7 +46,7 @@ const metadata = {
|
|
|
46
46
|
supports: {
|
|
47
47
|
align: ["wide", "full"],
|
|
48
48
|
anchor: true,
|
|
49
|
-
className:
|
|
49
|
+
className: true,
|
|
50
50
|
color: {
|
|
51
51
|
gradients: true,
|
|
52
52
|
link: true,
|
|
@@ -74,7 +74,6 @@ const metadata = {
|
|
|
74
74
|
textTransform: true
|
|
75
75
|
}
|
|
76
76
|
},
|
|
77
|
-
__experimentalSelector: "h1,h2,h3,h4,h5,h6",
|
|
78
77
|
__unstablePasteTextInline: true,
|
|
79
78
|
__experimentalSlashInserter: true
|
|
80
79
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/heading/index.js"],"names":["isEmpty","heading","icon","__","sprintf","initBlock","deprecated","edit","save","transforms","name","metadata","settings","example","attributes","content","level","__experimentalLabel","context","merge","attributesToMerge","init"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SAASC,OAAO,IAAIC,IAApB,QAAgC,kBAAhC;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/heading/index.js"],"names":["isEmpty","heading","icon","__","sprintf","initBlock","deprecated","edit","save","transforms","name","metadata","settings","example","attributes","content","level","__experimentalLabel","context","merge","attributesToMerge","init"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,OAAT,QAAwB,QAAxB;AAEA;AACA;AACA;;AACA,SAASC,OAAO,IAAIC,IAApB,QAAgC,kBAAhC;AACA,SAASC,EAAT,EAAaC,OAAb,QAA4B,iBAA5B;AAEA;AACA;AACA;;AACA,OAAOC,SAAP,MAAsB,qBAAtB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AACA,OAAOC,IAAP,MAAiB,QAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,OAAOC,IAAP,MAAiB,QAAjB;AACA,OAAOC,UAAP,MAAuB,cAAvB;AAEA,MAAM;AAAEC,EAAAA;AAAF,IAAWC,QAAjB;AAEA,SAASA,QAAT,EAAmBD,IAAnB;AAEA,OAAO,MAAME,QAAQ,GAAG;AACvBV,EAAAA,IADuB;AAEvBW,EAAAA,OAAO,EAAE;AACRC,IAAAA,UAAU,EAAE;AACXC,MAAAA,OAAO,EAAEZ,EAAE,CAAE,gBAAF,CADA;AAEXa,MAAAA,KAAK,EAAE;AAFI;AADJ,GAFc;;AAQvBC,EAAAA,mBAAmB,CAAEH,UAAF,QAA4B;AAAA,QAAd;AAAEI,MAAAA;AAAF,KAAc;AAC9C,UAAM;AAAEH,MAAAA,OAAF;AAAWC,MAAAA;AAAX,QAAqBF,UAA3B,CAD8C,CAG9C;AACA;;AACA,QAAKI,OAAO,KAAK,WAAZ,IAA2BH,OAAhC,EAA0C;AACzC,aAAOA,OAAP;AACA;;AAED,QAAKG,OAAO,KAAK,eAAjB,EAAmC;AAClC,aAAOlB,OAAO,CAAEe,OAAF,CAAP,GACJX,OAAO;AACP;AACAD,MAAAA,EAAE,CAAE,kBAAF,CAFK,EAGPa,KAHO,CADH,GAMJZ,OAAO;AACP;AACAD,MAAAA,EAAE,CAAE,kBAAF,CAFK,EAGPa,KAHO,EAIPD,OAJO,CANV;AAYA;AACD,GA/BsB;;AAgCvBN,EAAAA,UAhCuB;AAiCvBH,EAAAA,UAjCuB;;AAkCvBa,EAAAA,KAAK,CAAEL,UAAF,EAAcM,iBAAd,EAAkC;AACtC,WAAO;AACNL,MAAAA,OAAO,EACN,CAAED,UAAU,CAACC,OAAX,IAAsB,EAAxB,KACEK,iBAAiB,CAACL,OAAlB,IAA6B,EAD/B;AAFK,KAAP;AAKA,GAxCsB;;AAyCvBR,EAAAA,IAzCuB;AA0CvBC,EAAAA;AA1CuB,CAAjB;AA6CP,OAAO,MAAMa,IAAI,GAAG,MAAMhB,SAAS,CAAE;AAAEK,EAAAA,IAAF;AAAQC,EAAAA,QAAR;AAAkBC,EAAAA;AAAlB,CAAF,CAA5B","sourcesContent":["/**\n * External dependencies\n */\nimport { isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { heading as icon } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcontent: __( 'Code is Poetry' ),\n\t\t\tlevel: 2,\n\t\t},\n\t},\n\t__experimentalLabel( attributes, { context } ) {\n\t\tconst { content, level } = attributes;\n\n\t\t// In the list view, use the block's content as the label.\n\t\t// If the content is empty, fall back to the default label.\n\t\tif ( context === 'list-view' && content ) {\n\t\t\treturn content;\n\t\t}\n\n\t\tif ( context === 'accessibility' ) {\n\t\t\treturn isEmpty( content )\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. %s: heading level. */\n\t\t\t\t\t\t__( 'Level %s. Empty.' ),\n\t\t\t\t\t\tlevel\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. 1: heading level. 2: heading content. */\n\t\t\t\t\t\t__( 'Level %1$s. %2$s' ),\n\t\t\t\t\t\tlevel,\n\t\t\t\t\t\tcontent\n\t\t\t\t );\n\t\t}\n\t},\n\ttransforms,\n\tdeprecated,\n\tmerge( attributes, attributesToMerge ) {\n\t\treturn {\n\t\t\tcontent:\n\t\t\t\t( attributes.content || '' ) +\n\t\t\t\t( attributesToMerge.content || '' ),\n\t\t};\n\t},\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"]}
|
|
@@ -40,7 +40,7 @@ const {
|
|
|
40
40
|
supports: {
|
|
41
41
|
align: ["wide", "full"],
|
|
42
42
|
anchor: true,
|
|
43
|
-
className:
|
|
43
|
+
className: true,
|
|
44
44
|
color: {
|
|
45
45
|
gradients: true,
|
|
46
46
|
link: true,
|
|
@@ -68,7 +68,6 @@ const {
|
|
|
68
68
|
textTransform: true
|
|
69
69
|
}
|
|
70
70
|
},
|
|
71
|
-
__experimentalSelector: "h1,h2,h3,h4,h5,h6",
|
|
72
71
|
__unstablePasteTextInline: true,
|
|
73
72
|
__experimentalSlashInserter: true
|
|
74
73
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/heading/transforms.js"],"names":["createBlock","getBlockAttributes","getLevelFromHeadingNodeName","transforms","from","type","isMultiBlock","blocks","transform","attributes","map","content","anchor","align","textAlign","name","selector","schema","phrasingContentSchema","isPaste","children","h1","h2","h3","h4","h5","h6","node","outerHTML","style","level","nodeName","prefix","Array","join","regExp","RegExp","to"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAT,EAAsBC,kBAAtB,QAAgD,mBAAhD;AAEA;AACA;AACA;;AACA,SAASC,2BAAT,QAA4C,UAA5C
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/heading/transforms.js"],"names":["createBlock","getBlockAttributes","getLevelFromHeadingNodeName","transforms","from","type","isMultiBlock","blocks","transform","attributes","map","content","anchor","align","textAlign","name","selector","schema","phrasingContentSchema","isPaste","children","h1","h2","h3","h4","h5","h6","node","outerHTML","style","level","nodeName","prefix","Array","join","regExp","RegExp","to"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, getBlockAttributes } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getLevelFromHeadingNodeName } from './shared';\nimport { name } from './block.json';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, anchor, align: textAlign } ) =>\n\t\t\t\t\tcreateBlock( name, {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t\tanchor,\n\t\t\t\t\t\ttextAlign,\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\t\tschema: ( { phrasingContentSchema, isPaste } ) => {\n\t\t\t\tconst schema = {\n\t\t\t\t\tchildren: phrasingContentSchema,\n\t\t\t\t\tattributes: isPaste ? [] : [ 'style', 'id' ],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\th1: schema,\n\t\t\t\t\th2: schema,\n\t\t\t\t\th3: schema,\n\t\t\t\t\th4: schema,\n\t\t\t\t\th5: schema,\n\t\t\t\t\th6: schema,\n\t\t\t\t};\n\t\t\t},\n\t\t\ttransform( node ) {\n\t\t\t\tconst attributes = getBlockAttributes( name, node.outerHTML );\n\t\t\t\tconst { textAlign } = node.style || {};\n\n\t\t\t\tattributes.level = getLevelFromHeadingNodeName( node.nodeName );\n\n\t\t\t\tif (\n\t\t\t\t\ttextAlign === 'left' ||\n\t\t\t\t\ttextAlign === 'center' ||\n\t\t\t\t\ttextAlign === 'right'\n\t\t\t\t) {\n\t\t\t\t\tattributes.align = textAlign;\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( name, attributes );\n\t\t\t},\n\t\t},\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix: Array( level + 1 ).join( '#' ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( name, {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'enter',\n\t\t\tregExp: new RegExp( `^/(h|H)${ level }$` ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( name, {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, textAlign: align } ) =>\n\t\t\t\t\tcreateBlock( 'core/paragraph', { content, align } )\n\t\t\t\t),\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
|
|
@@ -4,7 +4,7 @@ import { createElement } from "@wordpress/element";
|
|
|
4
4
|
* External dependencies
|
|
5
5
|
*/
|
|
6
6
|
import classnames from 'classnames';
|
|
7
|
-
import { get, isEmpty
|
|
7
|
+
import { get, isEmpty } from 'lodash';
|
|
8
8
|
/**
|
|
9
9
|
* WordPress dependencies
|
|
10
10
|
*/
|
|
@@ -39,7 +39,10 @@ const placeholder = content => {
|
|
|
39
39
|
|
|
40
40
|
import { LINK_DESTINATION_ATTACHMENT, LINK_DESTINATION_CUSTOM, LINK_DESTINATION_MEDIA, LINK_DESTINATION_NONE, ALLOWED_MEDIA_TYPES } from './constants';
|
|
41
41
|
export const pickRelevantMediaFiles = (image, size) => {
|
|
42
|
-
const imageProps =
|
|
42
|
+
const imageProps = Object.fromEntries(Object.entries(image !== null && image !== void 0 ? image : {}).filter(_ref => {
|
|
43
|
+
let [key] = _ref;
|
|
44
|
+
return ['alt', 'id', 'link', 'caption'].includes(key);
|
|
45
|
+
}));
|
|
43
46
|
imageProps.url = get(image, ['sizes', size, 'url']) || get(image, ['media_details', 'sizes', size, 'source_url']) || image.url;
|
|
44
47
|
return imageProps;
|
|
45
48
|
};
|
|
@@ -82,7 +85,7 @@ function hasDefaultSize(image, defaultSize) {
|
|
|
82
85
|
return 'url' in ((_image$sizes$defaultS = image === null || image === void 0 ? void 0 : (_image$sizes = image.sizes) === null || _image$sizes === void 0 ? void 0 : _image$sizes[defaultSize]) !== null && _image$sizes$defaultS !== void 0 ? _image$sizes$defaultS : {}) || 'source_url' in ((_image$media_details$ = image === null || image === void 0 ? void 0 : (_image$media_details = image.media_details) === null || _image$media_details === void 0 ? void 0 : (_image$media_details$2 = _image$media_details.sizes) === null || _image$media_details$2 === void 0 ? void 0 : _image$media_details$2[defaultSize]) !== null && _image$media_details$ !== void 0 ? _image$media_details$ : {});
|
|
83
86
|
}
|
|
84
87
|
|
|
85
|
-
export function ImageEdit(
|
|
88
|
+
export function ImageEdit(_ref2) {
|
|
86
89
|
let {
|
|
87
90
|
attributes,
|
|
88
91
|
setAttributes,
|
|
@@ -92,7 +95,7 @@ export function ImageEdit(_ref) {
|
|
|
92
95
|
onReplace,
|
|
93
96
|
context,
|
|
94
97
|
clientId
|
|
95
|
-
} =
|
|
98
|
+
} = _ref2;
|
|
96
99
|
const {
|
|
97
100
|
url = '',
|
|
98
101
|
alt,
|
|
@@ -276,8 +279,8 @@ export function ImageEdit(_ref) {
|
|
|
276
279
|
if (file) {
|
|
277
280
|
mediaUpload({
|
|
278
281
|
filesList: [file],
|
|
279
|
-
onFileChange:
|
|
280
|
-
let [img] =
|
|
282
|
+
onFileChange: _ref3 => {
|
|
283
|
+
let [img] = _ref3;
|
|
281
284
|
onSelectImage(img);
|
|
282
285
|
},
|
|
283
286
|
allowedTypes: ALLOWED_MEDIA_TYPES,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/image/edit.js"],"names":["classnames","get","isEmpty","pick","getBlobByURL","isBlobURL","revokeBlobURL","Placeholder","useDispatch","useSelect","BlockAlignmentControl","BlockControls","BlockIcon","MediaPlaceholder","useBlockProps","store","blockEditorStore","__experimentalUseBorderProps","useBorderProps","useEffect","useRef","useState","__","image","icon","noticesStore","Image","placeholder","content","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_CUSTOM","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","ALLOWED_MEDIA_TYPES","pickRelevantMediaFiles","size","imageProps","url","isTemporaryImage","id","isExternalImage","hasDefaultSize","defaultSize","sizes","media_details","ImageEdit","attributes","setAttributes","isSelected","className","insertBlocksAfter","onReplace","context","clientId","alt","caption","align","width","height","sizeSlug","temporaryURL","setTemporaryURL","altRef","current","captionRef","ref","imageDefaultSize","mediaUpload","isContentLocked","select","getSettings","__unstableGetContentLockingParent","settings","createErrorNotice","onUploadError","message","type","src","undefined","onSelectImage","media","title","mediaAttributes","omittedCaption","restMediaAttributes","additionalAttributes","linkDestination","window","wp","view","defaultProps","link","href","onSelectURL","newURL","updateAlignment","nextAlign","extraUpdatedAttributes","includes","isTemp","file","filesList","onFileChange","img","allowedTypes","onError","isExternal","mediaPreview","borderProps","classes","style","blockProps"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get, isEmpty, pick } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { getBlobByURL, isBlobURL, revokeBlobURL } from '@wordpress/blob';\nimport { Placeholder } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tBlockAlignmentControl,\n\tBlockControls,\n\tBlockIcon,\n\tMediaPlaceholder,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { image as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport Image from './image';\n\n// Much of this description is duplicated from MediaPlaceholder.\nconst placeholder = ( content ) => {\n\treturn (\n\t\t<Placeholder\n\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\twithIllustration={ true }\n\t\t\ticon={ icon }\n\t\t\tlabel={ __( 'Image' ) }\n\t\t\tinstructions={ __(\n\t\t\t\t'Upload an image file, pick one from your media library, or add one with a URL.'\n\t\t\t) }\n\t\t>\n\t\t\t{ content }\n\t\t</Placeholder>\n\t);\n};\n\n/**\n * Module constants\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tALLOWED_MEDIA_TYPES,\n} from './constants';\n\nexport const pickRelevantMediaFiles = ( image, size ) => {\n\tconst imageProps = pick( image, [ 'alt', 'id', 'link', 'caption' ] );\n\timageProps.url =\n\t\tget( image, [ 'sizes', size, 'url' ] ) ||\n\t\tget( image, [ 'media_details', 'sizes', size, 'source_url' ] ) ||\n\t\timage.url;\n\treturn imageProps;\n};\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily\n * while the image is being uploaded and will not have an id yet allocated.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the URL a Blob URL\n */\nconst isTemporaryImage = ( id, url ) => ! id && isBlobURL( url );\n\n/**\n * Is the url for the image hosted externally. An externally hosted image has no\n * id and is not a blob url.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the url an externally hosted url?\n */\nexport const isExternalImage = ( id, url ) => url && ! id && ! isBlobURL( url );\n\n/**\n * Checks if WP generated default image size. Size generation is skipped\n * when the image is smaller than the said size.\n *\n * @param {Object} image\n * @param {string} defaultSize\n *\n * @return {boolean} Whether or not it has default image size.\n */\nfunction hasDefaultSize( image, defaultSize ) {\n\treturn (\n\t\t'url' in ( image?.sizes?.[ defaultSize ] ?? {} ) ||\n\t\t'source_url' in ( image?.media_details?.sizes?.[ defaultSize ] ?? {} )\n\t);\n}\n\nexport function ImageEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tclassName,\n\tinsertBlocksAfter,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\talign,\n\t\tid,\n\t\twidth,\n\t\theight,\n\t\tsizeSlug,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst altRef = useRef();\n\tuseEffect( () => {\n\t\taltRef.current = alt;\n\t}, [ alt ] );\n\n\tconst captionRef = useRef();\n\tuseEffect( () => {\n\t\tcaptionRef.current = caption;\n\t}, [ caption ] );\n\n\tconst ref = useRef();\n\tconst { imageDefaultSize, mediaUpload, isContentLocked } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSettings, __unstableGetContentLockingParent } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst settings = getSettings();\n\t\t\treturn {\n\t\t\t\timageDefaultSize: settings.imageDefaultSize,\n\t\t\t\tmediaUpload: settings.mediaUpload,\n\t\t\t\tisContentLocked:\n\t\t\t\t\t!! __unstableGetContentLockingParent( clientId ),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetAttributes( {\n\t\t\tsrc: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t} );\n\t\tsetTemporaryURL( undefined );\n\t}\n\n\tfunction onSelectImage( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: undefined,\n\t\t\t\talt: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\ttitle: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t} );\n\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\tsetTemporaryURL();\n\n\t\tlet mediaAttributes = pickRelevantMediaFiles( media, imageDefaultSize );\n\n\t\t// If a caption text was meanwhile written by the user,\n\t\t// make sure the text is not overwritten by empty captions.\n\t\tif ( captionRef.current && ! get( mediaAttributes, [ 'caption' ] ) ) {\n\t\t\tconst { caption: omittedCaption, ...restMediaAttributes } =\n\t\t\t\tmediaAttributes;\n\t\t\tmediaAttributes = restMediaAttributes;\n\t\t}\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\t// Fallback to size \"full\" if there's no default image size.\n\t\t\t\t// It means the image is smaller, and the block will use a full-size URL.\n\t\t\t\tsizeSlug: hasDefaultSize( media, imageDefaultSize )\n\t\t\t\t\t? imageDefaultSize\n\t\t\t\t\t: 'full',\n\t\t\t};\n\t\t} else {\n\t\t\t// Keep the same url when selecting the same file, so \"Image Size\"\n\t\t\t// option is not changed.\n\t\t\tadditionalAttributes = { url };\n\t\t}\n\n\t\t// Check if default link setting should be used.\n\t\tlet linkDestination = attributes.linkDestination;\n\t\tif ( ! linkDestination ) {\n\t\t\t// Use the WordPress option to determine the proper default.\n\t\t\t// The constants used in Gutenberg do not match WP options so a little more complicated than ideal.\n\t\t\t// TODO: fix this in a follow up PR, requires updating media-text and ui component.\n\t\t\tswitch (\n\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\tLINK_DESTINATION_NONE\n\t\t\t) {\n\t\t\t\tcase 'file':\n\t\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'post':\n\t\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_NONE:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Check if the image is linked to it's media.\n\t\tlet href;\n\t\tswitch ( linkDestination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t\tlinkDestination,\n\t\t} );\n\t}\n\n\tfunction onSelectURL( newURL ) {\n\t\tif ( newURL !== url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: newURL,\n\t\t\t\tid: undefined,\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\tsizeSlug: imageDefaultSize,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction updateAlignment( nextAlign ) {\n\t\tconst extraUpdatedAttributes = [ 'wide', 'full' ].includes( nextAlign )\n\t\t\t? { width: undefined, height: undefined }\n\t\t\t: {};\n\t\tsetAttributes( {\n\t\t\t...extraUpdatedAttributes,\n\t\t\talign: nextAlign,\n\t\t} );\n\t}\n\n\tlet isTemp = isTemporaryImage( id, url );\n\n\t// Upload a temporary image on mount.\n\tuseEffect( () => {\n\t\tif ( ! isTemp ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst file = getBlobByURL( url );\n\n\t\tif ( file ) {\n\t\t\tmediaUpload( {\n\t\t\t\tfilesList: [ file ],\n\t\t\t\tonFileChange: ( [ img ] ) => {\n\t\t\t\t\tonSelectImage( img );\n\t\t\t\t},\n\t\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\t\tonError: ( message ) => {\n\t\t\t\t\tisTemp = false;\n\t\t\t\t\tonUploadError( message );\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\t// If an image is temporary, revoke the Blob url when it is uploaded (and is\n\t// no longer temporary).\n\tuseEffect( () => {\n\t\tif ( isTemp ) {\n\t\t\tsetTemporaryURL( url );\n\t\t\treturn;\n\t\t}\n\t\trevokeBlobURL( temporaryURL );\n\t}, [ isTemp, url ] );\n\n\tconst isExternal = isExternalImage( id, url );\n\tconst src = isExternal ? url : undefined;\n\tconst mediaPreview = !! url && (\n\t\t<img\n\t\t\talt={ __( 'Edit image' ) }\n\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\tclassName={ 'edit-image-preview' }\n\t\t\tsrc={ url }\n\t\t/>\n\t);\n\n\tconst borderProps = useBorderProps( attributes );\n\n\tconst classes = classnames( className, {\n\t\t'is-transient': temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t'has-custom-border':\n\t\t\t!! borderProps.className || ! isEmpty( borderProps.style ),\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref,\n\t\tclassName: classes,\n\t} );\n\n\treturn (\n\t\t<figure { ...blockProps }>\n\t\t\t{ ( temporaryURL || url ) && (\n\t\t\t\t<Image\n\t\t\t\t\ttemporaryURL={ temporaryURL }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonSelectImage={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonUploadError={ onUploadError }\n\t\t\t\t\tcontainerRef={ ref }\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisContentLocked={ isContentLocked }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! url && ! isContentLocked && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\tvalue={ align }\n\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<MediaPlaceholder\n\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tvalue={ { id, src } }\n\t\t\t\tmediaPreview={ mediaPreview }\n\t\t\t\tdisableMediaButtons={ temporaryURL || url }\n\t\t\t/>\n\t\t</figure>\n\t);\n}\n\nexport default ImageEdit;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/image/edit.js"],"names":["classnames","get","isEmpty","getBlobByURL","isBlobURL","revokeBlobURL","Placeholder","useDispatch","useSelect","BlockAlignmentControl","BlockControls","BlockIcon","MediaPlaceholder","useBlockProps","store","blockEditorStore","__experimentalUseBorderProps","useBorderProps","useEffect","useRef","useState","__","image","icon","noticesStore","Image","placeholder","content","LINK_DESTINATION_ATTACHMENT","LINK_DESTINATION_CUSTOM","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","ALLOWED_MEDIA_TYPES","pickRelevantMediaFiles","size","imageProps","Object","fromEntries","entries","filter","key","includes","url","isTemporaryImage","id","isExternalImage","hasDefaultSize","defaultSize","sizes","media_details","ImageEdit","attributes","setAttributes","isSelected","className","insertBlocksAfter","onReplace","context","clientId","alt","caption","align","width","height","sizeSlug","temporaryURL","setTemporaryURL","altRef","current","captionRef","ref","imageDefaultSize","mediaUpload","isContentLocked","select","getSettings","__unstableGetContentLockingParent","settings","createErrorNotice","onUploadError","message","type","src","undefined","onSelectImage","media","title","mediaAttributes","omittedCaption","restMediaAttributes","additionalAttributes","linkDestination","window","wp","view","defaultProps","link","href","onSelectURL","newURL","updateAlignment","nextAlign","extraUpdatedAttributes","isTemp","file","filesList","onFileChange","img","allowedTypes","onError","isExternal","mediaPreview","borderProps","classes","style","blockProps"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport { get, isEmpty } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { getBlobByURL, isBlobURL, revokeBlobURL } from '@wordpress/blob';\nimport { Placeholder } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tBlockAlignmentControl,\n\tBlockControls,\n\tBlockIcon,\n\tMediaPlaceholder,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\t__experimentalUseBorderProps as useBorderProps,\n} from '@wordpress/block-editor';\nimport { useEffect, useRef, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { image as icon } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport Image from './image';\n\n// Much of this description is duplicated from MediaPlaceholder.\nconst placeholder = ( content ) => {\n\treturn (\n\t\t<Placeholder\n\t\t\tclassName=\"block-editor-media-placeholder\"\n\t\t\twithIllustration={ true }\n\t\t\ticon={ icon }\n\t\t\tlabel={ __( 'Image' ) }\n\t\t\tinstructions={ __(\n\t\t\t\t'Upload an image file, pick one from your media library, or add one with a URL.'\n\t\t\t) }\n\t\t>\n\t\t\t{ content }\n\t\t</Placeholder>\n\t);\n};\n\n/**\n * Module constants\n */\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_CUSTOM,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n\tALLOWED_MEDIA_TYPES,\n} from './constants';\n\nexport const pickRelevantMediaFiles = ( image, size ) => {\n\tconst imageProps = Object.fromEntries(\n\t\tObject.entries( image ?? {} ).filter( ( [ key ] ) =>\n\t\t\t[ 'alt', 'id', 'link', 'caption' ].includes( key )\n\t\t)\n\t);\n\n\timageProps.url =\n\t\tget( image, [ 'sizes', size, 'url' ] ) ||\n\t\tget( image, [ 'media_details', 'sizes', size, 'source_url' ] ) ||\n\t\timage.url;\n\treturn imageProps;\n};\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily\n * while the image is being uploaded and will not have an id yet allocated.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the URL a Blob URL\n */\nconst isTemporaryImage = ( id, url ) => ! id && isBlobURL( url );\n\n/**\n * Is the url for the image hosted externally. An externally hosted image has no\n * id and is not a blob url.\n *\n * @param {number=} id The id of the image.\n * @param {string=} url The url of the image.\n *\n * @return {boolean} Is the url an externally hosted url?\n */\nexport const isExternalImage = ( id, url ) => url && ! id && ! isBlobURL( url );\n\n/**\n * Checks if WP generated default image size. Size generation is skipped\n * when the image is smaller than the said size.\n *\n * @param {Object} image\n * @param {string} defaultSize\n *\n * @return {boolean} Whether or not it has default image size.\n */\nfunction hasDefaultSize( image, defaultSize ) {\n\treturn (\n\t\t'url' in ( image?.sizes?.[ defaultSize ] ?? {} ) ||\n\t\t'source_url' in ( image?.media_details?.sizes?.[ defaultSize ] ?? {} )\n\t);\n}\n\nexport function ImageEdit( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tclassName,\n\tinsertBlocksAfter,\n\tonReplace,\n\tcontext,\n\tclientId,\n} ) {\n\tconst {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\talign,\n\t\tid,\n\t\twidth,\n\t\theight,\n\t\tsizeSlug,\n\t} = attributes;\n\tconst [ temporaryURL, setTemporaryURL ] = useState();\n\n\tconst altRef = useRef();\n\tuseEffect( () => {\n\t\taltRef.current = alt;\n\t}, [ alt ] );\n\n\tconst captionRef = useRef();\n\tuseEffect( () => {\n\t\tcaptionRef.current = caption;\n\t}, [ caption ] );\n\n\tconst ref = useRef();\n\tconst { imageDefaultSize, mediaUpload, isContentLocked } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSettings, __unstableGetContentLockingParent } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst settings = getSettings();\n\t\t\treturn {\n\t\t\t\timageDefaultSize: settings.imageDefaultSize,\n\t\t\t\tmediaUpload: settings.mediaUpload,\n\t\t\t\tisContentLocked:\n\t\t\t\t\t!! __unstableGetContentLockingParent( clientId ),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\tsetAttributes( {\n\t\t\tsrc: undefined,\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t} );\n\t\tsetTemporaryURL( undefined );\n\t}\n\n\tfunction onSelectImage( media ) {\n\t\tif ( ! media || ! media.url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: undefined,\n\t\t\t\talt: undefined,\n\t\t\t\tid: undefined,\n\t\t\t\ttitle: undefined,\n\t\t\t\tcaption: undefined,\n\t\t\t} );\n\n\t\t\treturn;\n\t\t}\n\n\t\tif ( isBlobURL( media.url ) ) {\n\t\t\tsetTemporaryURL( media.url );\n\t\t\treturn;\n\t\t}\n\n\t\tsetTemporaryURL();\n\n\t\tlet mediaAttributes = pickRelevantMediaFiles( media, imageDefaultSize );\n\n\t\t// If a caption text was meanwhile written by the user,\n\t\t// make sure the text is not overwritten by empty captions.\n\t\tif ( captionRef.current && ! get( mediaAttributes, [ 'caption' ] ) ) {\n\t\t\tconst { caption: omittedCaption, ...restMediaAttributes } =\n\t\t\t\tmediaAttributes;\n\t\t\tmediaAttributes = restMediaAttributes;\n\t\t}\n\n\t\tlet additionalAttributes;\n\t\t// Reset the dimension attributes if changing to a different image.\n\t\tif ( ! media.id || media.id !== id ) {\n\t\t\tadditionalAttributes = {\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\t// Fallback to size \"full\" if there's no default image size.\n\t\t\t\t// It means the image is smaller, and the block will use a full-size URL.\n\t\t\t\tsizeSlug: hasDefaultSize( media, imageDefaultSize )\n\t\t\t\t\t? imageDefaultSize\n\t\t\t\t\t: 'full',\n\t\t\t};\n\t\t} else {\n\t\t\t// Keep the same url when selecting the same file, so \"Image Size\"\n\t\t\t// option is not changed.\n\t\t\tadditionalAttributes = { url };\n\t\t}\n\n\t\t// Check if default link setting should be used.\n\t\tlet linkDestination = attributes.linkDestination;\n\t\tif ( ! linkDestination ) {\n\t\t\t// Use the WordPress option to determine the proper default.\n\t\t\t// The constants used in Gutenberg do not match WP options so a little more complicated than ideal.\n\t\t\t// TODO: fix this in a follow up PR, requires updating media-text and ui component.\n\t\t\tswitch (\n\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\tLINK_DESTINATION_NONE\n\t\t\t) {\n\t\t\t\tcase 'file':\n\t\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_MEDIA;\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'post':\n\t\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_ATTACHMENT;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_CUSTOM:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_CUSTOM;\n\t\t\t\t\tbreak;\n\t\t\t\tcase LINK_DESTINATION_NONE:\n\t\t\t\t\tlinkDestination = LINK_DESTINATION_NONE;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\t// Check if the image is linked to it's media.\n\t\tlet href;\n\t\tswitch ( linkDestination ) {\n\t\t\tcase LINK_DESTINATION_MEDIA:\n\t\t\t\thref = media.url;\n\t\t\t\tbreak;\n\t\t\tcase LINK_DESTINATION_ATTACHMENT:\n\t\t\t\thref = media.link;\n\t\t\t\tbreak;\n\t\t}\n\t\tmediaAttributes.href = href;\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\t...additionalAttributes,\n\t\t\tlinkDestination,\n\t\t} );\n\t}\n\n\tfunction onSelectURL( newURL ) {\n\t\tif ( newURL !== url ) {\n\t\t\tsetAttributes( {\n\t\t\t\turl: newURL,\n\t\t\t\tid: undefined,\n\t\t\t\twidth: undefined,\n\t\t\t\theight: undefined,\n\t\t\t\tsizeSlug: imageDefaultSize,\n\t\t\t} );\n\t\t}\n\t}\n\n\tfunction updateAlignment( nextAlign ) {\n\t\tconst extraUpdatedAttributes = [ 'wide', 'full' ].includes( nextAlign )\n\t\t\t? { width: undefined, height: undefined }\n\t\t\t: {};\n\t\tsetAttributes( {\n\t\t\t...extraUpdatedAttributes,\n\t\t\talign: nextAlign,\n\t\t} );\n\t}\n\n\tlet isTemp = isTemporaryImage( id, url );\n\n\t// Upload a temporary image on mount.\n\tuseEffect( () => {\n\t\tif ( ! isTemp ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst file = getBlobByURL( url );\n\n\t\tif ( file ) {\n\t\t\tmediaUpload( {\n\t\t\t\tfilesList: [ file ],\n\t\t\t\tonFileChange: ( [ img ] ) => {\n\t\t\t\t\tonSelectImage( img );\n\t\t\t\t},\n\t\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\t\tonError: ( message ) => {\n\t\t\t\t\tisTemp = false;\n\t\t\t\t\tonUploadError( message );\n\t\t\t\t},\n\t\t\t} );\n\t\t}\n\t}, [] );\n\n\t// If an image is temporary, revoke the Blob url when it is uploaded (and is\n\t// no longer temporary).\n\tuseEffect( () => {\n\t\tif ( isTemp ) {\n\t\t\tsetTemporaryURL( url );\n\t\t\treturn;\n\t\t}\n\t\trevokeBlobURL( temporaryURL );\n\t}, [ isTemp, url ] );\n\n\tconst isExternal = isExternalImage( id, url );\n\tconst src = isExternal ? url : undefined;\n\tconst mediaPreview = !! url && (\n\t\t<img\n\t\t\talt={ __( 'Edit image' ) }\n\t\t\ttitle={ __( 'Edit image' ) }\n\t\t\tclassName={ 'edit-image-preview' }\n\t\t\tsrc={ url }\n\t\t/>\n\t);\n\n\tconst borderProps = useBorderProps( attributes );\n\n\tconst classes = classnames( className, {\n\t\t'is-transient': temporaryURL,\n\t\t'is-resized': !! width || !! height,\n\t\t[ `size-${ sizeSlug }` ]: sizeSlug,\n\t\t'has-custom-border':\n\t\t\t!! borderProps.className || ! isEmpty( borderProps.style ),\n\t} );\n\n\tconst blockProps = useBlockProps( {\n\t\tref,\n\t\tclassName: classes,\n\t} );\n\n\treturn (\n\t\t<figure { ...blockProps }>\n\t\t\t{ ( temporaryURL || url ) && (\n\t\t\t\t<Image\n\t\t\t\t\ttemporaryURL={ temporaryURL }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonSelectImage={ onSelectImage }\n\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\tonUploadError={ onUploadError }\n\t\t\t\t\tcontainerRef={ ref }\n\t\t\t\t\tcontext={ context }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisContentLocked={ isContentLocked }\n\t\t\t\t/>\n\t\t\t) }\n\t\t\t{ ! url && ! isContentLocked && (\n\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\t\tvalue={ align }\n\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<MediaPlaceholder\n\t\t\t\ticon={ <BlockIcon icon={ icon } /> }\n\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\tonError={ onUploadError }\n\t\t\t\tplaceholder={ placeholder }\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\tvalue={ { id, src } }\n\t\t\t\tmediaPreview={ mediaPreview }\n\t\t\t\tdisableMediaButtons={ temporaryURL || url }\n\t\t\t/>\n\t\t</figure>\n\t);\n}\n\nexport default ImageEdit;\n"]}
|
|
@@ -21,8 +21,9 @@ import { compose, withPreferredColorScheme } from '@wordpress/compose';
|
|
|
21
21
|
import { withSelect, withDispatch } from '@wordpress/data';
|
|
22
22
|
import { image as placeholderIcon, replace, fullscreen, textColor } from '@wordpress/icons';
|
|
23
23
|
import { store as coreStore } from '@wordpress/core-data';
|
|
24
|
+
import { store as noticesStore } from '@wordpress/notices'; // eslint-disable-next-line no-restricted-imports
|
|
25
|
+
|
|
24
26
|
import { store as editPostStore } from '@wordpress/edit-post';
|
|
25
|
-
import { store as noticesStore } from '@wordpress/notices';
|
|
26
27
|
/**
|
|
27
28
|
* Internal dependencies
|
|
28
29
|
*/
|