@wordpress/block-library 7.10.0 → 7.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/button/edit.js +2 -1
- package/build/button/edit.js.map +1 -1
- package/build/buttons/edit.js +1 -1
- package/build/buttons/edit.js.map +1 -1
- package/build/columns/edit.native.js +1 -1
- package/build/columns/edit.native.js.map +1 -1
- package/build/comments/edit/comments-legacy.js +73 -0
- package/build/comments/edit/comments-legacy.js.map +1 -0
- package/build/comments/{edit.js → edit/index.js} +17 -38
- package/build/comments/edit/index.js.map +1 -0
- package/build/comments/edit/placeholder.js +117 -0
- package/build/comments/edit/placeholder.js.map +1 -0
- package/build/comments/edit/template.js +39 -0
- package/build/comments/edit/template.js.map +1 -0
- package/build/comments/index.js +6 -1
- package/build/comments/index.js.map +1 -1
- package/build/comments/save.js +12 -4
- package/build/comments/save.js.map +1 -1
- package/build/cover/transforms.js +3 -2
- package/build/cover/transforms.js.map +1 -1
- package/build/embed/embed-placeholder.native.js +1 -3
- package/build/embed/embed-placeholder.native.js.map +1 -1
- package/build/gallery/edit.js +2 -2
- package/build/gallery/edit.js.map +1 -1
- package/build/gallery/use-get-media.native.js +59 -0
- package/build/gallery/use-get-media.native.js.map +1 -0
- package/build/group/index.js +1 -0
- package/build/group/index.js.map +1 -1
- package/build/group/variations.js +1 -1
- package/build/group/variations.js.map +1 -1
- package/build/image/deprecated.js +77 -9
- package/build/image/deprecated.js.map +1 -1
- package/build/image/edit.js +3 -1
- package/build/image/edit.js.map +1 -1
- package/build/image/edit.native.js +18 -8
- package/build/image/edit.native.js.map +1 -1
- package/build/image/image.js +27 -20
- package/build/image/image.js.map +1 -1
- package/build/image/index.js +7 -1
- package/build/image/index.js.map +1 -1
- package/build/image/save.js +8 -2
- package/build/image/save.js.map +1 -1
- package/build/index.js +1 -3
- package/build/index.js.map +1 -1
- package/build/index.native.js +3 -13
- package/build/index.native.js.map +1 -1
- package/build/list/transforms.js +4 -63
- package/build/list/transforms.js.map +1 -1
- package/build/list/v2/transforms.js +0 -27
- package/build/list/v2/transforms.js.map +1 -1
- package/build/list-item/edit.js +14 -9
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/hooks/index.js +8 -8
- package/build/list-item/hooks/index.js.map +1 -1
- package/build/list-item/hooks/use-merge.js +174 -0
- package/build/list-item/hooks/use-merge.js.map +1 -0
- package/build/list-item/hooks/use-outdent-list-item.js +86 -50
- package/build/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build/list-item/utils.js +125 -1
- package/build/list-item/utils.js.map +1 -1
- package/build/media-text/deprecated.js +134 -7
- package/build/media-text/deprecated.js.map +1 -1
- package/build/media-text/edit.js +2 -2
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/save.js +13 -0
- package/build/media-text/save.js.map +1 -1
- package/build/more/save.js +1 -7
- package/build/more/save.js.map +1 -1
- package/build/navigation-link/edit.js +5 -4
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +2 -1
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/page-list/edit.js +8 -1
- package/build/page-list/edit.js.map +1 -1
- package/build/paragraph/edit.js +7 -11
- package/build/paragraph/edit.js.map +1 -1
- package/build/post-comments-form/edit.js +4 -45
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-comments-form/form.js +47 -3
- package/build/post-comments-form/form.js.map +1 -1
- package/build/post-terms/edit.js +3 -2
- package/build/post-terms/edit.js.map +1 -1
- package/build/query-no-results/edit.js +1 -1
- package/build/query-no-results/edit.js.map +1 -1
- package/build/query-pagination-next/edit.js +2 -1
- package/build/query-pagination-next/edit.js.map +1 -1
- package/build/query-pagination-previous/edit.js +2 -1
- package/build/query-pagination-previous/edit.js.map +1 -1
- package/build/quote/deprecated.js +168 -36
- package/build/quote/deprecated.js.map +1 -1
- package/build/quote/edit.js +76 -39
- package/build/quote/edit.js.map +1 -1
- package/build/quote/index.js +9 -45
- package/build/quote/index.js.map +1 -1
- package/build/quote/save.js +1 -5
- package/build/quote/save.js.map +1 -1
- package/build/quote/transforms.js +110 -158
- package/build/quote/transforms.js.map +1 -1
- package/build/social-link/icons/index.js +13 -0
- package/build/social-link/icons/index.js.map +1 -1
- package/build/social-link/icons/whatsapp.js +25 -0
- package/build/social-link/icons/whatsapp.js.map +1 -0
- package/build/social-link/variations.js +7 -0
- package/build/social-link/variations.js.map +1 -1
- package/build/template-part/edit/index.js +17 -8
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/selection-modal.js +33 -13
- package/build/template-part/edit/selection-modal.js.map +1 -1
- package/build/template-part/edit/utils/search.js +94 -0
- package/build/template-part/edit/utils/search.js.map +1 -0
- package/build-module/button/edit.js +2 -1
- package/build-module/button/edit.js.map +1 -1
- package/build-module/buttons/edit.js +2 -2
- package/build-module/buttons/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +2 -2
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/comments/edit/comments-legacy.js +59 -0
- package/build-module/comments/edit/comments-legacy.js.map +1 -0
- package/build-module/comments/edit/index.js +37 -0
- package/build-module/comments/edit/index.js.map +1 -0
- package/build-module/comments/edit/placeholder.js +102 -0
- package/build-module/comments/edit/placeholder.js.map +1 -0
- package/build-module/comments/edit/template.js +32 -0
- package/build-module/comments/edit/template.js.map +1 -0
- package/build-module/comments/index.js +6 -1
- package/build-module/comments/index.js.map +1 -1
- package/build-module/comments/save.js +9 -4
- package/build-module/comments/save.js.map +1 -1
- package/build-module/cover/transforms.js +3 -2
- package/build-module/cover/transforms.js.map +1 -1
- package/build-module/embed/embed-placeholder.native.js +1 -2
- package/build-module/embed/embed-placeholder.native.js.map +1 -1
- package/build-module/gallery/edit.js +2 -2
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/gallery/use-get-media.native.js +50 -0
- package/build-module/gallery/use-get-media.native.js.map +1 -0
- package/build-module/group/index.js +1 -0
- package/build-module/group/index.js.map +1 -1
- package/build-module/group/variations.js +2 -2
- package/build-module/group/variations.js.map +1 -1
- package/build-module/image/deprecated.js +77 -9
- package/build-module/image/deprecated.js.map +1 -1
- package/build-module/image/edit.js +5 -3
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/edit.native.js +18 -8
- package/build-module/image/edit.native.js.map +1 -1
- package/build-module/image/image.js +29 -22
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/index.js +7 -1
- package/build-module/image/index.js.map +1 -1
- package/build-module/image/save.js +9 -3
- package/build-module/image/save.js.map +1 -1
- package/build-module/index.js +1 -2
- package/build-module/index.js.map +1 -1
- package/build-module/index.native.js +3 -13
- package/build-module/index.native.js.map +1 -1
- package/build-module/list/transforms.js +4 -63
- package/build-module/list/transforms.js.map +1 -1
- package/build-module/list/v2/transforms.js +2 -29
- package/build-module/list/v2/transforms.js.map +1 -1
- package/build-module/list-item/edit.js +14 -10
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/hooks/index.js +1 -1
- package/build-module/list-item/hooks/index.js.map +1 -1
- package/build-module/list-item/hooks/use-merge.js +160 -0
- package/build-module/list-item/hooks/use-merge.js.map +1 -0
- package/build-module/list-item/hooks/use-outdent-list-item.js +82 -46
- package/build-module/list-item/hooks/use-outdent-list-item.js.map +1 -1
- package/build-module/list-item/utils.js +123 -2
- package/build-module/list-item/utils.js.map +1 -1
- package/build-module/media-text/deprecated.js +134 -8
- package/build-module/media-text/deprecated.js.map +1 -1
- package/build-module/media-text/edit.js +2 -2
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/save.js +13 -0
- package/build-module/media-text/save.js.map +1 -1
- package/build-module/more/save.js +1 -6
- package/build-module/more/save.js.map +1 -1
- package/build-module/navigation-link/edit.js +5 -4
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +2 -1
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/page-list/edit.js +8 -1
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/paragraph/edit.js +8 -12
- package/build-module/paragraph/edit.js.map +1 -1
- package/build-module/post-comments-form/edit.js +5 -42
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-comments-form/form.js +46 -5
- package/build-module/post-comments-form/form.js.map +1 -1
- package/build-module/post-terms/edit.js +3 -2
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/query-no-results/edit.js +2 -2
- package/build-module/query-no-results/edit.js.map +1 -1
- package/build-module/query-pagination-next/edit.js +2 -1
- package/build-module/query-pagination-next/edit.js.map +1 -1
- package/build-module/query-pagination-previous/edit.js +2 -1
- package/build-module/query-pagination-previous/edit.js.map +1 -1
- package/build-module/quote/deprecated.js +162 -36
- package/build-module/quote/deprecated.js.map +1 -1
- package/build-module/quote/edit.js +77 -43
- package/build-module/quote/edit.js.map +1 -1
- package/build-module/quote/index.js +9 -39
- package/build-module/quote/index.js.map +1 -1
- package/build-module/quote/save.js +4 -8
- package/build-module/quote/save.js.map +1 -1
- package/build-module/quote/transforms.js +111 -158
- package/build-module/quote/transforms.js.map +1 -1
- package/build-module/social-link/icons/index.js +1 -0
- package/build-module/social-link/icons/index.js.map +1 -1
- package/build-module/social-link/icons/whatsapp.js +15 -0
- package/build-module/social-link/icons/whatsapp.js.map +1 -0
- package/build-module/social-link/variations.js +8 -1
- package/build-module/social-link/variations.js.map +1 -1
- package/build-module/template-part/edit/index.js +20 -11
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/selection-modal.js +33 -15
- package/build-module/template-part/edit/selection-modal.js.map +1 -1
- package/build-module/template-part/edit/utils/search.js +84 -0
- package/build-module/template-part/edit/utils/search.js.map +1 -0
- package/build-style/button/style-rtl.css +1 -1
- package/build-style/button/style.css +1 -1
- package/build-style/comments/editor-rtl.css +122 -0
- package/build-style/comments/editor.css +122 -0
- package/build-style/{post-comments → comments}/style-rtl.css +1 -0
- package/build-style/{post-comments → comments}/style.css +1 -0
- package/build-style/common-rtl.css +7 -0
- package/build-style/common.css +7 -0
- package/build-style/cover/style-rtl.css +2 -2
- package/build-style/cover/style.css +2 -2
- package/build-style/{post-comments/editor.css → editor-elements-rtl.css} +8 -2
- package/build-style/{post-comments/editor-rtl.css → editor-elements.css} +8 -2
- package/build-style/editor-rtl.css +151 -10
- package/build-style/editor.css +151 -10
- package/build-style/gallery/style-rtl.css +7 -2
- package/build-style/gallery/style.css +7 -2
- package/build-style/image/editor-rtl.css +4 -3
- package/build-style/image/editor.css +4 -3
- package/build-style/image/style-rtl.css +33 -3
- package/build-style/image/style.css +33 -3
- package/build-style/post-comments-form/style-rtl.css +0 -1
- package/build-style/post-comments-form/style.css +0 -1
- package/build-style/social-link/editor-rtl.css +1 -0
- package/build-style/social-link/editor.css +1 -0
- package/build-style/social-links/style-rtl.css +8 -0
- package/build-style/social-links/style.css +8 -0
- package/build-style/style-rtl.css +170 -127
- package/build-style/style.css +170 -127
- package/build-style/template-part/editor-rtl.css +14 -3
- package/build-style/template-part/editor.css +14 -3
- package/package.json +28 -28
- package/src/button/edit.js +1 -0
- package/src/button/style.scss +3 -1
- package/src/buttons/edit.js +1 -5
- package/src/columns/edit.native.js +2 -2
- package/src/comments/block.json +6 -1
- package/src/comments/edit/comments-legacy.js +71 -0
- package/src/comments/edit/index.js +35 -0
- package/src/comments/edit/placeholder.js +124 -0
- package/src/comments/{edit.js → edit/template.js} +1 -28
- package/src/comments/editor.scss +9 -0
- package/src/comments/index.php +219 -0
- package/src/comments/save.js +8 -7
- package/src/{post-comments → comments}/style.scss +7 -0
- package/src/common.scss +2 -0
- package/src/cover/style.scss +2 -2
- package/src/cover/transforms.js +2 -2
- package/src/editor-elements.scss +10 -0
- package/src/editor.scss +2 -1
- package/src/embed/embed-placeholder.native.js +2 -3
- package/src/gallery/edit.js +4 -2
- package/src/gallery/style.scss +10 -1
- package/src/gallery/use-get-media.native.js +44 -0
- package/src/group/block.json +1 -0
- package/src/group/variations.js +2 -2
- package/src/image/block.json +7 -1
- package/src/image/deprecated.js +86 -0
- package/src/image/edit.js +6 -1
- package/src/image/edit.native.js +18 -7
- package/src/image/editor.scss +9 -4
- package/src/image/image.js +26 -16
- package/src/image/save.js +10 -1
- package/src/image/style.scss +39 -3
- package/src/index.js +0 -2
- package/src/index.native.js +2 -11
- package/src/list/transforms.js +0 -47
- package/src/list/v2/transforms.js +2 -40
- package/src/list-item/edit.js +10 -12
- package/src/list-item/hooks/index.js +1 -1
- package/src/list-item/hooks/use-merge.js +141 -0
- package/src/list-item/hooks/use-outdent-list-item.js +72 -74
- package/src/list-item/utils.js +27 -3
- package/src/media-text/deprecated.js +148 -1
- package/src/media-text/edit.js +2 -1
- package/src/media-text/save.js +18 -0
- package/src/more/save.js +3 -6
- package/src/navigation-link/edit.js +4 -3
- package/src/navigation-submenu/edit.js +1 -0
- package/src/page-list/edit.js +9 -0
- package/src/paragraph/edit.js +8 -14
- package/src/post-comments-form/edit.js +2 -71
- package/src/post-comments-form/form.js +80 -5
- package/src/post-comments-form/index.php +1 -1
- package/src/post-comments-form/style.scss +0 -1
- package/src/post-terms/edit.js +3 -2
- package/src/query-no-results/edit.js +2 -5
- package/src/query-pagination-next/edit.js +1 -0
- package/src/query-pagination-previous/edit.js +1 -0
- package/src/quote/deprecated.js +213 -99
- package/src/quote/edit.js +77 -52
- package/src/quote/index.js +10 -33
- package/src/quote/save.js +5 -5
- package/src/quote/{v2/test → test}/migrate.js +2 -7
- package/src/quote/transforms.js +117 -147
- package/src/social-link/editor.scss +3 -0
- package/src/social-link/icons/index.js +1 -0
- package/src/social-link/icons/whatsapp.js +10 -0
- package/src/social-link/index.php +4 -0
- package/src/social-link/socials-with-bg.scss +5 -0
- package/src/social-link/socials-without-bg.scss +5 -0
- package/src/social-link/variations.js +7 -0
- package/src/style.scss +1 -2
- package/src/template-part/edit/index.js +37 -24
- package/src/template-part/edit/selection-modal.js +68 -40
- package/src/template-part/edit/utils/search.js +76 -0
- package/src/template-part/editor.scss +21 -9
- package/src/template-part/index.php +56 -2
- package/build/comments/edit.js.map +0 -1
- package/build/list-item/hooks/use-backspace.js +0 -59
- package/build/list-item/hooks/use-backspace.js.map +0 -1
- package/build/post-comments/edit.js +0 -184
- package/build/post-comments/edit.js.map +0 -1
- package/build/post-comments/index.js +0 -72
- package/build/post-comments/index.js.map +0 -1
- package/build/quote/v2/deprecated.js +0 -133
- package/build/quote/v2/deprecated.js.map +0 -1
- package/build/quote/v2/edit.js +0 -139
- package/build/quote/v2/edit.js.map +0 -1
- package/build/quote/v2/index.js +0 -49
- package/build/quote/v2/index.js.map +0 -1
- package/build/quote/v2/save.js +0 -43
- package/build/quote/v2/save.js.map +0 -1
- package/build/quote/v2/transforms.js +0 -156
- package/build/quote/v2/transforms.js.map +0 -1
- package/build-module/comments/edit.js +0 -59
- package/build-module/comments/edit.js.map +0 -1
- package/build-module/list-item/hooks/use-backspace.js +0 -44
- package/build-module/list-item/hooks/use-backspace.js.map +0 -1
- package/build-module/post-comments/edit.js +0 -171
- package/build-module/post-comments/edit.js.map +0 -1
- package/build-module/post-comments/index.js +0 -59
- package/build-module/post-comments/index.js.map +0 -1
- package/build-module/quote/v2/deprecated.js +0 -116
- package/build-module/quote/v2/deprecated.js.map +0 -1
- package/build-module/quote/v2/edit.js +0 -122
- package/build-module/quote/v2/edit.js.map +0 -1
- package/build-module/quote/v2/index.js +0 -33
- package/build-module/quote/v2/index.js.map +0 -1
- package/build-module/quote/v2/save.js +0 -30
- package/build-module/quote/v2/save.js.map +0 -1
- package/build-module/quote/v2/transforms.js +0 -147
- package/build-module/quote/v2/transforms.js.map +0 -1
- package/src/list-item/hooks/use-backspace.js +0 -51
- package/src/post-comments/block.json +0 -45
- package/src/post-comments/edit.js +0 -247
- package/src/post-comments/editor.scss +0 -3
- package/src/post-comments/index.js +0 -18
- package/src/post-comments/index.php +0 -87
- package/src/quote/v2/deprecated.js +0 -107
- package/src/quote/v2/edit.js +0 -139
- package/src/quote/v2/index.js +0 -36
- package/src/quote/v2/save.js +0 -26
- package/src/quote/v2/transforms.js +0 -155
package/src/quote/transforms.js
CHANGED
|
@@ -1,188 +1,158 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
5
|
-
|
|
4
|
+
import {
|
|
5
|
+
createBlock,
|
|
6
|
+
parseWithAttributeSchema,
|
|
7
|
+
rawHandler,
|
|
8
|
+
} from '@wordpress/blocks';
|
|
6
9
|
|
|
7
10
|
const transforms = {
|
|
8
11
|
from: [
|
|
9
12
|
{
|
|
10
13
|
type: 'block',
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
14
|
+
blocks: [ 'core/pullquote' ],
|
|
15
|
+
transform: ( { value, citation, anchor, fontSize, style } ) => {
|
|
16
|
+
return createBlock(
|
|
17
|
+
'core/quote',
|
|
18
|
+
{
|
|
19
|
+
citation,
|
|
20
|
+
anchor,
|
|
21
|
+
fontSize,
|
|
22
|
+
style,
|
|
23
|
+
},
|
|
24
|
+
parseWithAttributeSchema( value, {
|
|
25
|
+
type: 'array',
|
|
26
|
+
source: 'query',
|
|
27
|
+
selector: 'p',
|
|
28
|
+
query: {
|
|
29
|
+
content: {
|
|
30
|
+
type: 'string',
|
|
31
|
+
source: 'html',
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
} ).map( ( { content } ) =>
|
|
35
|
+
createBlock( 'core/paragraph', { content } )
|
|
36
|
+
)
|
|
37
|
+
);
|
|
26
38
|
},
|
|
27
39
|
},
|
|
28
40
|
{
|
|
29
41
|
type: 'block',
|
|
30
|
-
blocks: [ 'core/
|
|
31
|
-
transform: ( {
|
|
32
|
-
|
|
33
|
-
value: `<p>${ content }</p>`,
|
|
34
|
-
anchor,
|
|
35
|
-
} );
|
|
36
|
-
},
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
type: 'block',
|
|
40
|
-
blocks: [ 'core/pullquote' ],
|
|
41
|
-
transform: ( { value, citation, anchor } ) =>
|
|
42
|
-
createBlock( 'core/quote', {
|
|
43
|
-
value,
|
|
44
|
-
citation,
|
|
45
|
-
anchor,
|
|
46
|
-
} ),
|
|
42
|
+
blocks: [ 'core/group' ],
|
|
43
|
+
transform: ( { anchor }, innerBlocks ) =>
|
|
44
|
+
createBlock( 'core/quote', { anchor }, innerBlocks ),
|
|
47
45
|
},
|
|
48
46
|
{
|
|
49
47
|
type: 'prefix',
|
|
50
48
|
prefix: '>',
|
|
51
|
-
transform: ( content ) =>
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
},
|
|
49
|
+
transform: ( content ) =>
|
|
50
|
+
createBlock( 'core/quote', {}, [
|
|
51
|
+
createBlock( 'core/paragraph', { content } ),
|
|
52
|
+
] ),
|
|
56
53
|
},
|
|
57
54
|
{
|
|
58
55
|
type: 'raw',
|
|
59
|
-
|
|
60
|
-
const isParagraphOrSingleCite = ( () => {
|
|
61
|
-
let hasCitation = false;
|
|
62
|
-
return ( child ) => {
|
|
63
|
-
// Child is a paragraph.
|
|
64
|
-
if ( child.nodeName === 'P' ) {
|
|
65
|
-
return true;
|
|
66
|
-
}
|
|
67
|
-
// Child is a cite and no other cite child exists before it.
|
|
68
|
-
if ( ! hasCitation && child.nodeName === 'CITE' ) {
|
|
69
|
-
hasCitation = true;
|
|
70
|
-
return true;
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
} )();
|
|
74
|
-
return (
|
|
75
|
-
node.nodeName === 'BLOCKQUOTE' &&
|
|
76
|
-
// The quote block can only handle multiline paragraph
|
|
77
|
-
// content with an optional cite child.
|
|
78
|
-
Array.from( node.childNodes ).every(
|
|
79
|
-
isParagraphOrSingleCite
|
|
80
|
-
)
|
|
81
|
-
);
|
|
82
|
-
},
|
|
83
|
-
schema: ( { phrasingContentSchema } ) => ( {
|
|
56
|
+
schema: () => ( {
|
|
84
57
|
blockquote: {
|
|
85
|
-
children:
|
|
86
|
-
p: {
|
|
87
|
-
children: phrasingContentSchema,
|
|
88
|
-
},
|
|
89
|
-
cite: {
|
|
90
|
-
children: phrasingContentSchema,
|
|
91
|
-
},
|
|
92
|
-
},
|
|
58
|
+
children: '*',
|
|
93
59
|
},
|
|
94
60
|
} ),
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
content: toHTMLString( { value: piece } ),
|
|
111
|
-
} )
|
|
112
|
-
)
|
|
113
|
-
);
|
|
114
|
-
}
|
|
115
|
-
if ( citation && citation !== '<p></p>' ) {
|
|
116
|
-
paragraphs.push(
|
|
117
|
-
createBlock( 'core/paragraph', {
|
|
118
|
-
content: citation,
|
|
119
|
-
} )
|
|
120
|
-
);
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
if ( paragraphs.length === 0 ) {
|
|
124
|
-
return createBlock( 'core/paragraph', {
|
|
125
|
-
content: '',
|
|
126
|
-
} );
|
|
127
|
-
}
|
|
128
|
-
return paragraphs;
|
|
61
|
+
selector: 'blockquote',
|
|
62
|
+
transform: ( node ) => {
|
|
63
|
+
return createBlock(
|
|
64
|
+
'core/quote',
|
|
65
|
+
// Don't try to parse any `cite` out of this content.
|
|
66
|
+
// * There may be more than one cite.
|
|
67
|
+
// * There may be more attribution text than just the cite.
|
|
68
|
+
// * If the cite is nested in the quoted text, it's wrong to
|
|
69
|
+
// remove it.
|
|
70
|
+
{},
|
|
71
|
+
rawHandler( {
|
|
72
|
+
HTML: node.innerHTML,
|
|
73
|
+
mode: 'BLOCKS',
|
|
74
|
+
} )
|
|
75
|
+
);
|
|
129
76
|
},
|
|
130
77
|
},
|
|
131
|
-
|
|
132
78
|
{
|
|
133
79
|
type: 'block',
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
// will result in an empty heading.
|
|
139
|
-
if ( value === '<p></p>' ) {
|
|
140
|
-
return createBlock( 'core/heading', {
|
|
141
|
-
content: citation,
|
|
142
|
-
} );
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
const pieces = split(
|
|
146
|
-
create( { html: value, multilineTag: 'p' } ),
|
|
147
|
-
'\u2028'
|
|
148
|
-
);
|
|
149
|
-
|
|
150
|
-
const headingBlock = createBlock( 'core/heading', {
|
|
151
|
-
content: toHTMLString( { value: pieces[ 0 ] } ),
|
|
152
|
-
} );
|
|
153
|
-
|
|
154
|
-
if ( ! citation && pieces.length === 1 ) {
|
|
155
|
-
return headingBlock;
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
const quotePieces = pieces.slice( 1 );
|
|
159
|
-
|
|
160
|
-
const quoteBlock = createBlock( 'core/quote', {
|
|
161
|
-
...attrs,
|
|
162
|
-
citation,
|
|
163
|
-
value: toHTMLString( {
|
|
164
|
-
value: quotePieces.length
|
|
165
|
-
? join( pieces.slice( 1 ), '\u2028' )
|
|
166
|
-
: create(),
|
|
167
|
-
multilineTag: 'p',
|
|
168
|
-
} ),
|
|
169
|
-
} );
|
|
170
|
-
|
|
171
|
-
return [ headingBlock, quoteBlock ];
|
|
80
|
+
isMultiBlock: true,
|
|
81
|
+
blocks: [ '*' ],
|
|
82
|
+
isMatch: ( {}, blocks ) => {
|
|
83
|
+
return ! blocks.some( ( { name } ) => name === 'core/quote' );
|
|
172
84
|
},
|
|
85
|
+
__experimentalConvert: ( blocks ) =>
|
|
86
|
+
createBlock(
|
|
87
|
+
'core/quote',
|
|
88
|
+
{},
|
|
89
|
+
blocks.map( ( block ) =>
|
|
90
|
+
createBlock(
|
|
91
|
+
block.name,
|
|
92
|
+
block.attributes,
|
|
93
|
+
block.innerBlocks
|
|
94
|
+
)
|
|
95
|
+
)
|
|
96
|
+
),
|
|
173
97
|
},
|
|
174
|
-
|
|
98
|
+
],
|
|
99
|
+
to: [
|
|
175
100
|
{
|
|
176
101
|
type: 'block',
|
|
177
102
|
blocks: [ 'core/pullquote' ],
|
|
178
|
-
|
|
103
|
+
isMatch: ( {}, block ) => {
|
|
104
|
+
return block.innerBlocks.every(
|
|
105
|
+
( { name } ) => name === 'core/paragraph'
|
|
106
|
+
);
|
|
107
|
+
},
|
|
108
|
+
transform: (
|
|
109
|
+
{ citation, anchor, fontSize, style },
|
|
110
|
+
innerBlocks
|
|
111
|
+
) => {
|
|
112
|
+
const value = innerBlocks
|
|
113
|
+
.map(
|
|
114
|
+
( { attributes } ) => `<p>${ attributes.content }</p>`
|
|
115
|
+
)
|
|
116
|
+
.join( '' );
|
|
179
117
|
return createBlock( 'core/pullquote', {
|
|
180
118
|
value,
|
|
181
119
|
citation,
|
|
182
120
|
anchor,
|
|
121
|
+
fontSize,
|
|
122
|
+
style,
|
|
183
123
|
} );
|
|
184
124
|
},
|
|
185
125
|
},
|
|
126
|
+
{
|
|
127
|
+
type: 'block',
|
|
128
|
+
blocks: [ 'core/group' ],
|
|
129
|
+
transform: ( { citation, anchor }, innerBlocks ) =>
|
|
130
|
+
createBlock(
|
|
131
|
+
'core/group',
|
|
132
|
+
{ anchor },
|
|
133
|
+
citation
|
|
134
|
+
? [
|
|
135
|
+
...innerBlocks,
|
|
136
|
+
createBlock( 'core/paragraph', {
|
|
137
|
+
content: citation,
|
|
138
|
+
} ),
|
|
139
|
+
]
|
|
140
|
+
: innerBlocks
|
|
141
|
+
),
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'block',
|
|
145
|
+
blocks: [ '*' ],
|
|
146
|
+
transform: ( { citation }, innerBlocks ) =>
|
|
147
|
+
citation
|
|
148
|
+
? [
|
|
149
|
+
...innerBlocks,
|
|
150
|
+
createBlock( 'core/paragraph', {
|
|
151
|
+
content: citation,
|
|
152
|
+
} ),
|
|
153
|
+
]
|
|
154
|
+
: innerBlocks,
|
|
155
|
+
},
|
|
186
156
|
],
|
|
187
157
|
};
|
|
188
158
|
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WordPress dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { Path, SVG } from '@wordpress/primitives';
|
|
5
|
+
|
|
6
|
+
export const WhatsAppIcon = () => (
|
|
7
|
+
<SVG width="24" height="24" viewBox="0 0 24 24" version="1.1">
|
|
8
|
+
<Path d="M 12.011719 2 C 6.5057187 2 2.0234844 6.478375 2.0214844 11.984375 C 2.0204844 13.744375 2.4814687 15.462563 3.3554688 16.976562 L 2 22 L 7.2324219 20.763672 C 8.6914219 21.559672 10.333859 21.977516 12.005859 21.978516 L 12.009766 21.978516 C 17.514766 21.978516 21.995047 17.499141 21.998047 11.994141 C 22.000047 9.3251406 20.962172 6.8157344 19.076172 4.9277344 C 17.190172 3.0407344 14.683719 2.001 12.011719 2 z M 12.009766 4 C 14.145766 4.001 16.153109 4.8337969 17.662109 6.3417969 C 19.171109 7.8517969 20.000047 9.8581875 19.998047 11.992188 C 19.996047 16.396187 16.413812 19.978516 12.007812 19.978516 C 10.674812 19.977516 9.3544062 19.642812 8.1914062 19.007812 L 7.5175781 18.640625 L 6.7734375 18.816406 L 4.8046875 19.28125 L 5.2851562 17.496094 L 5.5019531 16.695312 L 5.0878906 15.976562 C 4.3898906 14.768562 4.0204844 13.387375 4.0214844 11.984375 C 4.0234844 7.582375 7.6067656 4 12.009766 4 z M 8.4765625 7.375 C 8.3095625 7.375 8.0395469 7.4375 7.8105469 7.6875 C 7.5815469 7.9365 6.9355469 8.5395781 6.9355469 9.7675781 C 6.9355469 10.995578 7.8300781 12.182609 7.9550781 12.349609 C 8.0790781 12.515609 9.68175 15.115234 12.21875 16.115234 C 14.32675 16.946234 14.754891 16.782234 15.212891 16.740234 C 15.670891 16.699234 16.690438 16.137687 16.898438 15.554688 C 17.106437 14.971687 17.106922 14.470187 17.044922 14.367188 C 16.982922 14.263188 16.816406 14.201172 16.566406 14.076172 C 16.317406 13.951172 15.090328 13.348625 14.861328 13.265625 C 14.632328 13.182625 14.464828 13.140625 14.298828 13.390625 C 14.132828 13.640625 13.655766 14.201187 13.509766 14.367188 C 13.363766 14.534188 13.21875 14.556641 12.96875 14.431641 C 12.71875 14.305641 11.914938 14.041406 10.960938 13.191406 C 10.218937 12.530406 9.7182656 11.714844 9.5722656 11.464844 C 9.4272656 11.215844 9.5585938 11.079078 9.6835938 10.955078 C 9.7955938 10.843078 9.9316406 10.663578 10.056641 10.517578 C 10.180641 10.371578 10.223641 10.267562 10.306641 10.101562 C 10.389641 9.9355625 10.347156 9.7890625 10.285156 9.6640625 C 10.223156 9.5390625 9.737625 8.3065 9.515625 7.8125 C 9.328625 7.3975 9.131125 7.3878594 8.953125 7.3808594 C 8.808125 7.3748594 8.6425625 7.375 8.4765625 7.375 z" />
|
|
9
|
+
</SVG>
|
|
10
|
+
);
|
|
@@ -282,6 +282,10 @@ function block_core_social_link_services( $service = '', $field = '' ) {
|
|
|
282
282
|
'name' => 'WordPress',
|
|
283
283
|
'icon' => '<svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M12.158,12.786L9.46,20.625c0.806,0.237,1.657,0.366,2.54,0.366c1.047,0,2.051-0.181,2.986-0.51 c-0.024-0.038-0.046-0.079-0.065-0.124L12.158,12.786z M3.009,12c0,3.559,2.068,6.634,5.067,8.092L3.788,8.341 C3.289,9.459,3.009,10.696,3.009,12z M18.069,11.546c0-1.112-0.399-1.881-0.741-2.48c-0.456-0.741-0.883-1.368-0.883-2.109 c0-0.826,0.627-1.596,1.51-1.596c0.04,0,0.078,0.005,0.116,0.007C16.472,3.904,14.34,3.009,12,3.009 c-3.141,0-5.904,1.612-7.512,4.052c0.211,0.007,0.41,0.011,0.579,0.011c0.94,0,2.396-0.114,2.396-0.114 C7.947,6.93,8.004,7.642,7.52,7.699c0,0-0.487,0.057-1.029,0.085l3.274,9.739l1.968-5.901l-1.401-3.838 C9.848,7.756,9.389,7.699,9.389,7.699C8.904,7.67,8.961,6.93,9.446,6.958c0,0,1.484,0.114,2.368,0.114 c0.94,0,2.397-0.114,2.397-0.114c0.485-0.028,0.542,0.684,0.057,0.741c0,0-0.488,0.057-1.029,0.085l3.249,9.665l0.897-2.996 C17.841,13.284,18.069,12.316,18.069,11.546z M19.889,7.686c0.039,0.286,0.06,0.593,0.06,0.924c0,0.912-0.171,1.938-0.684,3.22 l-2.746,7.94c2.673-1.558,4.47-4.454,4.47-7.771C20.991,10.436,20.591,8.967,19.889,7.686z M12,22C6.486,22,2,17.514,2,12 C2,6.486,6.486,2,12,2c5.514,0,10,4.486,10,10C22,17.514,17.514,22,12,22z"></path></svg>',
|
|
284
284
|
),
|
|
285
|
+
'whatsapp' => array(
|
|
286
|
+
'name' => 'WhatsApp',
|
|
287
|
+
'icon' => '<svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M 12.011719 2 C 6.5057187 2 2.0234844 6.478375 2.0214844 11.984375 C 2.0204844 13.744375 2.4814687 15.462563 3.3554688 16.976562 L 2 22 L 7.2324219 20.763672 C 8.6914219 21.559672 10.333859 21.977516 12.005859 21.978516 L 12.009766 21.978516 C 17.514766 21.978516 21.995047 17.499141 21.998047 11.994141 C 22.000047 9.3251406 20.962172 6.8157344 19.076172 4.9277344 C 17.190172 3.0407344 14.683719 2.001 12.011719 2 z M 12.009766 4 C 14.145766 4.001 16.153109 4.8337969 17.662109 6.3417969 C 19.171109 7.8517969 20.000047 9.8581875 19.998047 11.992188 C 19.996047 16.396187 16.413812 19.978516 12.007812 19.978516 C 10.674812 19.977516 9.3544062 19.642812 8.1914062 19.007812 L 7.5175781 18.640625 L 6.7734375 18.816406 L 4.8046875 19.28125 L 5.2851562 17.496094 L 5.5019531 16.695312 L 5.0878906 15.976562 C 4.3898906 14.768562 4.0204844 13.387375 4.0214844 11.984375 C 4.0234844 7.582375 7.6067656 4 12.009766 4 z M 8.4765625 7.375 C 8.3095625 7.375 8.0395469 7.4375 7.8105469 7.6875 C 7.5815469 7.9365 6.9355469 8.5395781 6.9355469 9.7675781 C 6.9355469 10.995578 7.8300781 12.182609 7.9550781 12.349609 C 8.0790781 12.515609 9.68175 15.115234 12.21875 16.115234 C 14.32675 16.946234 14.754891 16.782234 15.212891 16.740234 C 15.670891 16.699234 16.690438 16.137687 16.898438 15.554688 C 17.106437 14.971687 17.106922 14.470187 17.044922 14.367188 C 16.982922 14.263188 16.816406 14.201172 16.566406 14.076172 C 16.317406 13.951172 15.090328 13.348625 14.861328 13.265625 C 14.632328 13.182625 14.464828 13.140625 14.298828 13.390625 C 14.132828 13.640625 13.655766 14.201187 13.509766 14.367188 C 13.363766 14.534188 13.21875 14.556641 12.96875 14.431641 C 12.71875 14.305641 11.914938 14.041406 10.960938 13.191406 C 10.218937 12.530406 9.7182656 11.714844 9.5722656 11.464844 C 9.4272656 11.215844 9.5585938 11.079078 9.6835938 10.955078 C 9.7955938 10.843078 9.9316406 10.663578 10.056641 10.517578 C 10.180641 10.371578 10.223641 10.267562 10.306641 10.101562 C 10.389641 9.9355625 10.347156 9.7890625 10.285156 9.6640625 C 10.223156 9.5390625 9.737625 8.3065 9.515625 7.8125 C 9.328625 7.3975 9.131125 7.3878594 8.953125 7.3808594 C 8.808125 7.3748594 8.6425625 7.375 8.4765625 7.375 z"></path></svg>',
|
|
288
|
+
),
|
|
285
289
|
'yelp' => array(
|
|
286
290
|
'name' => 'Yelp',
|
|
287
291
|
'icon' => '<svg width="24" height="24" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path d="M12.271,16.718v1.417q-.011,3.257-.067,3.4a.707.707,0,0,1-.569.446,4.637,4.637,0,0,1-2.024-.424A4.609,4.609,0,0,1,7.8,20.565a.844.844,0,0,1-.19-.4.692.692,0,0,1,.044-.29,3.181,3.181,0,0,1,.379-.524q.335-.412,2.019-2.409.011,0,.669-.781a.757.757,0,0,1,.44-.274.965.965,0,0,1,.552.039.945.945,0,0,1,.418.324.732.732,0,0,1,.139.468Zm-1.662-2.8a.783.783,0,0,1-.58.781l-1.339.435q-3.067.981-3.257.981a.711.711,0,0,1-.6-.4,2.636,2.636,0,0,1-.19-.836,9.134,9.134,0,0,1,.011-1.857,3.559,3.559,0,0,1,.335-1.389.659.659,0,0,1,.625-.357,22.629,22.629,0,0,1,2.253.859q.781.324,1.283.524l.937.379a.771.771,0,0,1,.4.34A.982.982,0,0,1,10.609,13.917Zm9.213,3.313a4.467,4.467,0,0,1-1.021,1.8,4.559,4.559,0,0,1-1.512,1.417.671.671,0,0,1-.7-.078q-.156-.112-2.052-3.2l-.524-.859a.761.761,0,0,1-.128-.513.957.957,0,0,1,.217-.513.774.774,0,0,1,.926-.29q.011.011,1.327.446,2.264.736,2.7.887a2.082,2.082,0,0,1,.524.229.673.673,0,0,1,.245.68Zm-7.5-7.049q.056,1.137-.6,1.361-.647.19-1.272-.792L6.237,4.08a.7.7,0,0,1,.212-.691,5.788,5.788,0,0,1,2.314-1,5.928,5.928,0,0,1,2.5-.352.681.681,0,0,1,.547.5q.034.2.245,3.407T12.327,10.181Zm7.384,1.2a.679.679,0,0,1-.29.658q-.167.112-3.67.959-.747.167-1.015.257l.011-.022a.769.769,0,0,1-.513-.044.914.914,0,0,1-.413-.357.786.786,0,0,1,0-.971q.011-.011.836-1.137,1.394-1.908,1.673-2.275a2.423,2.423,0,0,1,.379-.435A.7.7,0,0,1,17.435,8a4.482,4.482,0,0,1,1.372,1.489,4.81,4.81,0,0,1,.9,1.868v.034Z"></path></svg>',
|
|
@@ -41,6 +41,7 @@ import {
|
|
|
41
41
|
TwitterIcon,
|
|
42
42
|
VimeoIcon,
|
|
43
43
|
VkIcon,
|
|
44
|
+
WhatsAppIcon,
|
|
44
45
|
WordPressIcon,
|
|
45
46
|
YelpIcon,
|
|
46
47
|
YouTubeIcon,
|
|
@@ -290,6 +291,12 @@ const variations = [
|
|
|
290
291
|
title: 'VK',
|
|
291
292
|
icon: VkIcon,
|
|
292
293
|
},
|
|
294
|
+
{
|
|
295
|
+
name: 'whatsapp',
|
|
296
|
+
attributes: { service: 'whatsapp' },
|
|
297
|
+
title: 'WhatsApp',
|
|
298
|
+
icon: WhatsAppIcon,
|
|
299
|
+
},
|
|
293
300
|
{
|
|
294
301
|
name: 'yelp',
|
|
295
302
|
attributes: { service: 'yelp' },
|
package/src/style.scss
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
@import "./categories/style.scss";
|
|
8
8
|
@import "./code/style.scss";
|
|
9
9
|
@import "./columns/style.scss";
|
|
10
|
+
@import "./comments/style.scss";
|
|
10
11
|
@import "./comments-pagination/style.scss";
|
|
11
12
|
@import "./comment-template/style.scss";
|
|
12
13
|
@import "./cover/style.scss";
|
|
@@ -25,7 +26,6 @@
|
|
|
25
26
|
@import "./page-list/style.scss";
|
|
26
27
|
@import "./paragraph/style.scss";
|
|
27
28
|
@import "./post-author/style.scss";
|
|
28
|
-
@import "./post-comments/style.scss";
|
|
29
29
|
@import "./post-comments-form/style.scss";
|
|
30
30
|
@import "./post-excerpt/style.scss";
|
|
31
31
|
@import "./post-featured-image/style.scss";
|
|
@@ -50,4 +50,3 @@
|
|
|
50
50
|
@import "./video/style.scss";
|
|
51
51
|
|
|
52
52
|
@import "common.scss";
|
|
53
|
-
@import "./elements.scss";
|
|
@@ -8,22 +8,18 @@ import { isEmpty } from 'lodash';
|
|
|
8
8
|
*/
|
|
9
9
|
import { useSelect } from '@wordpress/data';
|
|
10
10
|
import {
|
|
11
|
-
|
|
11
|
+
BlockSettingsMenuControls,
|
|
12
|
+
BlockTitle,
|
|
12
13
|
useBlockProps,
|
|
13
|
-
__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,
|
|
14
14
|
Warning,
|
|
15
15
|
store as blockEditorStore,
|
|
16
|
+
__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,
|
|
16
17
|
__experimentalUseBlockOverlayActive as useBlockOverlayActive,
|
|
17
18
|
} from '@wordpress/block-editor';
|
|
18
|
-
import {
|
|
19
|
-
ToolbarGroup,
|
|
20
|
-
ToolbarButton,
|
|
21
|
-
Spinner,
|
|
22
|
-
Modal,
|
|
23
|
-
} from '@wordpress/components';
|
|
19
|
+
import { Spinner, Modal, MenuItem } from '@wordpress/components';
|
|
24
20
|
import { __, sprintf } from '@wordpress/i18n';
|
|
25
21
|
import { store as coreStore } from '@wordpress/core-data';
|
|
26
|
-
import { useState } from '@wordpress/element';
|
|
22
|
+
import { useState, createInterpolateElement } from '@wordpress/element';
|
|
27
23
|
|
|
28
24
|
/**
|
|
29
25
|
* Internal dependencies
|
|
@@ -43,6 +39,7 @@ export default function TemplatePartEdit( {
|
|
|
43
39
|
attributes,
|
|
44
40
|
setAttributes,
|
|
45
41
|
clientId,
|
|
42
|
+
isSelected,
|
|
46
43
|
} ) {
|
|
47
44
|
const { slug, theme, tagName, layout = {} } = attributes;
|
|
48
45
|
const templatePartId = createTemplatePartId( theme, slug );
|
|
@@ -105,6 +102,14 @@ export default function TemplatePartEdit( {
|
|
|
105
102
|
const isEntityAvailable = ! isPlaceholder && ! isMissing && isResolved;
|
|
106
103
|
const TagName = tagName || areaObject.tagName;
|
|
107
104
|
|
|
105
|
+
// The `isSelected` check ensures the `BlockSettingsMenuControls` fill
|
|
106
|
+
// doesn't render multiple times. The block controls has similar internal check.
|
|
107
|
+
const canReplace =
|
|
108
|
+
isSelected &&
|
|
109
|
+
isEntityAvailable &&
|
|
110
|
+
hasReplacements &&
|
|
111
|
+
( area === 'header' || area === 'footer' );
|
|
112
|
+
|
|
108
113
|
// We don't want to render a missing state if we have any inner blocks.
|
|
109
114
|
// A new template part is automatically created if we have any inner blocks but no entity.
|
|
110
115
|
if (
|
|
@@ -158,21 +163,29 @@ export default function TemplatePartEdit( {
|
|
|
158
163
|
/>
|
|
159
164
|
</TagName>
|
|
160
165
|
) }
|
|
161
|
-
{
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
166
|
+
{ canReplace && (
|
|
167
|
+
<BlockSettingsMenuControls>
|
|
168
|
+
{ () => (
|
|
169
|
+
<MenuItem
|
|
170
|
+
onClick={ () => {
|
|
171
|
+
setIsTemplatePartSelectionOpen( true );
|
|
172
|
+
} }
|
|
173
|
+
>
|
|
174
|
+
{ createInterpolateElement(
|
|
175
|
+
__( 'Replace <BlockTitle />' ),
|
|
176
|
+
{
|
|
177
|
+
BlockTitle: (
|
|
178
|
+
<BlockTitle
|
|
179
|
+
clientId={ clientId }
|
|
180
|
+
maximumLength={ 25 }
|
|
181
|
+
/>
|
|
182
|
+
),
|
|
169
183
|
}
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
) }
|
|
184
|
+
) }
|
|
185
|
+
</MenuItem>
|
|
186
|
+
) }
|
|
187
|
+
</BlockSettingsMenuControls>
|
|
188
|
+
) }
|
|
176
189
|
{ isEntityAvailable && (
|
|
177
190
|
<TemplatePartInnerBlocks
|
|
178
191
|
tagName={ TagName }
|
|
@@ -189,7 +202,7 @@ export default function TemplatePartEdit( {
|
|
|
189
202
|
) }
|
|
190
203
|
{ isTemplatePartSelectionOpen && (
|
|
191
204
|
<Modal
|
|
192
|
-
|
|
205
|
+
overlayClassName="block-editor-template-part__selection-modal"
|
|
193
206
|
title={ sprintf(
|
|
194
207
|
// Translators: %s as template part area title ("Header", "Footer", etc.).
|
|
195
208
|
__( 'Choose a %s' ),
|