@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/CHANGELOG.md
CHANGED
package/build/button/edit.js
CHANGED
|
@@ -207,7 +207,8 @@ function ButtonEdit(props) {
|
|
|
207
207
|
},
|
|
208
208
|
anchorRef: ref === null || ref === void 0 ? void 0 : ref.current,
|
|
209
209
|
focusOnMount: isEditingURL ? 'firstElement' : false,
|
|
210
|
-
__unstableSlotName: '__unstable-block-tools-after'
|
|
210
|
+
__unstableSlotName: '__unstable-block-tools-after',
|
|
211
|
+
__unstableShift: true
|
|
211
212
|
}, (0, _element.createElement)(_blockEditor.__experimentalLinkControl, {
|
|
212
213
|
className: "wp-block-navigation-link__inline-link-input",
|
|
213
214
|
value: {
|
package/build/button/edit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/button/edit.js"],"names":["NEW_TAB_REL","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","map","widthValue","ButtonEdit","props","attributes","className","isSelected","onReplace","mergeBlocks","linkTarget","placeholder","rel","style","text","url","onSetLinkRel","value","onToggleOpenInNewTab","newLinkTarget","updatedRel","setButtonText","newText","replace","onKeyDown","event","isKeyboardEvent","primary","startEditing","primaryShift","unlink","richTextRef","current","focus","borderProps","colorProps","spacingProps","ref","blockProps","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","preventDefault","fontSize","border","radius","link","displayShortcut","linkOff","newURL","newOpensInNewTab"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useCallback, useEffect, useState, useRef } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\n\nconst NEW_TAB_REL = 'noreferrer noopener';\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t} = props;\n\tconst { linkTarget, placeholder, rel, style, text, url, width } =\n\t\tattributes;\n\tconst onSetLinkRel = useCallback(\n\t\t( value ) => {\n\t\t\tsetAttributes( { rel: value } );\n\t\t},\n\t\t[ setAttributes ]\n\t);\n\n\tfunction onToggleOpenInNewTab( value ) {\n\t\tconst newLinkTarget = value ? '_blank' : undefined;\n\n\t\tlet updatedRel = rel;\n\t\tif ( newLinkTarget && ! rel ) {\n\t\t\tupdatedRel = NEW_TAB_REL;\n\t\t} else if ( ! newLinkTarget && rel === NEW_TAB_REL ) {\n\t\t\tupdatedRel = undefined;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tlinkTarget: newLinkTarget,\n\t\t\trel: updatedRel,\n\t\t} );\n\t}\n\n\tfunction setButtonText( newText ) {\n\t\t// Remove anchor tags from button text content.\n\t\tsetAttributes( { text: newText.replace( /<\\/?a[^>]*>/g, '' ) } );\n\t}\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( { ref, onKeyDown } );\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === '_blank';\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ richTextRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) => setButtonText( value ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ ! isURLSet && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isSelected && ( isEditingURL || isURLSet ) && (\n\t\t\t\t<Popover\n\t\t\t\t\tposition=\"bottom center\"\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tanchorRef={ ref?.current }\n\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\tclassName=\"wp-block-navigation-link__inline-link-input\"\n\t\t\t\t\t\tvalue={ { url, opensInNewTab } }\n\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\turl: newURL = '',\n\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t} ) => {\n\t\t\t\t\t\t\tsetAttributes( { url: newURL } );\n\n\t\t\t\t\t\t\tif ( opensInNewTab !== newOpensInNewTab ) {\n\t\t\t\t\t\t\t\tonToggleOpenInNewTab( newOpensInNewTab );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t/>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\tonChange={ onSetLinkRel }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/button/edit.js"],"names":["NEW_TAB_REL","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","map","widthValue","ButtonEdit","props","attributes","className","isSelected","onReplace","mergeBlocks","linkTarget","placeholder","rel","style","text","url","onSetLinkRel","value","onToggleOpenInNewTab","newLinkTarget","updatedRel","setButtonText","newText","replace","onKeyDown","event","isKeyboardEvent","primary","startEditing","primaryShift","unlink","richTextRef","current","focus","borderProps","colorProps","spacingProps","ref","blockProps","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","preventDefault","fontSize","border","radius","link","displayShortcut","linkOff","newURL","newOpensInNewTab"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useCallback, useEffect, useState, useRef } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport { createBlock } from '@wordpress/blocks';\n\nconst NEW_TAB_REL = 'noreferrer noopener';\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t} = props;\n\tconst { linkTarget, placeholder, rel, style, text, url, width } =\n\t\tattributes;\n\tconst onSetLinkRel = useCallback(\n\t\t( value ) => {\n\t\t\tsetAttributes( { rel: value } );\n\t\t},\n\t\t[ setAttributes ]\n\t);\n\n\tfunction onToggleOpenInNewTab( value ) {\n\t\tconst newLinkTarget = value ? '_blank' : undefined;\n\n\t\tlet updatedRel = rel;\n\t\tif ( newLinkTarget && ! rel ) {\n\t\t\tupdatedRel = NEW_TAB_REL;\n\t\t} else if ( ! newLinkTarget && rel === NEW_TAB_REL ) {\n\t\t\tupdatedRel = undefined;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\tlinkTarget: newLinkTarget,\n\t\t\trel: updatedRel,\n\t\t} );\n\t}\n\n\tfunction setButtonText( newText ) {\n\t\t// Remove anchor tags from button text content.\n\t\tsetAttributes( { text: newText.replace( /<\\/?a[^>]*>/g, '' ) } );\n\t}\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( { ref, onKeyDown } );\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === '_blank';\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ richTextRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) => setButtonText( value ) }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ ! isURLSet && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isSelected && ( isEditingURL || isURLSet ) && (\n\t\t\t\t<Popover\n\t\t\t\t\tposition=\"bottom center\"\n\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t} }\n\t\t\t\t\tanchorRef={ ref?.current }\n\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\t__unstableShift\n\t\t\t\t>\n\t\t\t\t\t<LinkControl\n\t\t\t\t\t\tclassName=\"wp-block-navigation-link__inline-link-input\"\n\t\t\t\t\t\tvalue={ { url, opensInNewTab } }\n\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\turl: newURL = '',\n\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t} ) => {\n\t\t\t\t\t\t\tsetAttributes( { url: newURL } );\n\n\t\t\t\t\t\t\tif ( opensInNewTab !== newOpensInNewTab ) {\n\t\t\t\t\t\t\t\tonToggleOpenInNewTab( newOpensInNewTab );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t/>\n\t\t\t\t</Popover>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\tonChange={ onSetLinkRel }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"]}
|
package/build/buttons/edit.js
CHANGED
|
@@ -50,7 +50,7 @@ function ButtonsEdit(_ref) {
|
|
|
50
50
|
__experimentalLayout: layout,
|
|
51
51
|
templateInsertUpdatesSelection: true
|
|
52
52
|
});
|
|
53
|
-
return (0, _element.createElement)(
|
|
53
|
+
return (0, _element.createElement)("div", innerBlocksProps);
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
var _default = ButtonsEdit;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/buttons/edit.js"],"names":["ALLOWED_BLOCKS","buttonBlockName","DEFAULT_BLOCK","name","attributesToCopy","ButtonsEdit","attributes","layout","blockProps","preferredStyle","select","preferredStyleVariations","blockEditorStore","getSettings","__experimentalPreferredStyleVariations","value","innerBlocksProps","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","template","className","__experimentalLayout","templateInsertUpdatesSelection"],"mappings":";;;;;;;;;AAGA;;AAKA;;AAKA;;AAbA;AACA;AACA;;AAQA;AACA;AACA;AAGA,MAAMA,cAAc,GAAG,CAAEC,YAAF,CAAvB;AAEA,MAAMC,aAAa,GAAG;AACrBC,EAAAA,IAAI,EAAEF,YADe;AAErBG,EAAAA,gBAAgB,EAAE,CACjB,iBADiB,EAEjB,QAFiB,EAGjB,WAHiB,EAIjB,YAJiB,EAKjB,UALiB,EAMjB,UANiB,EAOjB,OAPiB,EAQjB,WARiB,EASjB,OATiB;AAFG,CAAtB;;AAeA,SAASC,WAAT,OAAwD;AAAA,MAAlC;AAAEC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,MAAM,GAAG;AAAX;AAAd,GAAkC;AACvD,QAAMC,UAAU,GAAG,iCAAnB;AACA,QAAMC,cAAc,GAAG,qBAAaC,MAAF,IAAc;AAAA;;AAC/C,UAAMC,wBAAwB,GAC7BD,MAAM,CAAEE,kBAAF,CAAN,CAA2BC,WAA3B,GACEC,sCAFH;;AAGA,WAAOH,wBAAP,aAAOA,wBAAP,gDAAOA,wBAAwB,CAAEI,KAAjC,0DAAO,sBAAmCd,YAAnC,CAAP;AACA,GALsB,EAKpB,EALoB,CAAvB;AAOA,QAAMe,gBAAgB,GAAG,sCAAqBR,UAArB,EAAiC;AACzDS,IAAAA,aAAa,EAAEjB,cAD0C;AAEzDkB,IAAAA,0BAA0B,EAAEhB,aAF6B;AAGzDiB,IAAAA,0BAA0B,EAAE,IAH6B;AAIzDC,IAAAA,QAAQ,EAAE,CACT,CACCnB,YADD,EAEC;AAAEoB,MAAAA,SAAS,EAAEZ,cAAc,IAAK,YAAYA,cAAgB;AAA5D,KAFD,CADS,CAJ+C;AAUzDa,IAAAA,oBAAoB,EAAEf,MAVmC;AAWzDgB,IAAAA,8BAA8B,EAAE;AAXyB,GAAjC,CAAzB;AAcA,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/buttons/edit.js"],"names":["ALLOWED_BLOCKS","buttonBlockName","DEFAULT_BLOCK","name","attributesToCopy","ButtonsEdit","attributes","layout","blockProps","preferredStyle","select","preferredStyleVariations","blockEditorStore","getSettings","__experimentalPreferredStyleVariations","value","innerBlocksProps","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","template","className","__experimentalLayout","templateInsertUpdatesSelection"],"mappings":";;;;;;;;;AAGA;;AAKA;;AAKA;;AAbA;AACA;AACA;;AAQA;AACA;AACA;AAGA,MAAMA,cAAc,GAAG,CAAEC,YAAF,CAAvB;AAEA,MAAMC,aAAa,GAAG;AACrBC,EAAAA,IAAI,EAAEF,YADe;AAErBG,EAAAA,gBAAgB,EAAE,CACjB,iBADiB,EAEjB,QAFiB,EAGjB,WAHiB,EAIjB,YAJiB,EAKjB,UALiB,EAMjB,UANiB,EAOjB,OAPiB,EAQjB,WARiB,EASjB,OATiB;AAFG,CAAtB;;AAeA,SAASC,WAAT,OAAwD;AAAA,MAAlC;AAAEC,IAAAA,UAAU,EAAE;AAAEC,MAAAA,MAAM,GAAG;AAAX;AAAd,GAAkC;AACvD,QAAMC,UAAU,GAAG,iCAAnB;AACA,QAAMC,cAAc,GAAG,qBAAaC,MAAF,IAAc;AAAA;;AAC/C,UAAMC,wBAAwB,GAC7BD,MAAM,CAAEE,kBAAF,CAAN,CAA2BC,WAA3B,GACEC,sCAFH;;AAGA,WAAOH,wBAAP,aAAOA,wBAAP,gDAAOA,wBAAwB,CAAEI,KAAjC,0DAAO,sBAAmCd,YAAnC,CAAP;AACA,GALsB,EAKpB,EALoB,CAAvB;AAOA,QAAMe,gBAAgB,GAAG,sCAAqBR,UAArB,EAAiC;AACzDS,IAAAA,aAAa,EAAEjB,cAD0C;AAEzDkB,IAAAA,0BAA0B,EAAEhB,aAF6B;AAGzDiB,IAAAA,0BAA0B,EAAE,IAH6B;AAIzDC,IAAAA,QAAQ,EAAE,CACT,CACCnB,YADD,EAEC;AAAEoB,MAAAA,SAAS,EAAEZ,cAAc,IAAK,YAAYA,cAAgB;AAA5D,KAFD,CADS,CAJ+C;AAUzDa,IAAAA,oBAAoB,EAAEf,MAVmC;AAWzDgB,IAAAA,8BAA8B,EAAE;AAXyB,GAAjC,CAAzB;AAcA,SAAO,mCAAUP,gBAAV,CAAP;AACA;;eAEcX,W","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { name as buttonBlockName } from '../button';\n\nconst ALLOWED_BLOCKS = [ buttonBlockName ];\n\nconst DEFAULT_BLOCK = {\n\tname: buttonBlockName,\n\tattributesToCopy: [\n\t\t'backgroundColor',\n\t\t'border',\n\t\t'className',\n\t\t'fontFamily',\n\t\t'fontSize',\n\t\t'gradient',\n\t\t'style',\n\t\t'textColor',\n\t\t'width',\n\t],\n};\n\nfunction ButtonsEdit( { attributes: { layout = {} } } ) {\n\tconst blockProps = useBlockProps();\n\tconst preferredStyle = useSelect( ( select ) => {\n\t\tconst preferredStyleVariations =\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalPreferredStyleVariations;\n\t\treturn preferredStyleVariations?.value?.[ buttonBlockName ];\n\t}, [] );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t__experimentalDirectInsert: true,\n\t\ttemplate: [\n\t\t\t[\n\t\t\t\tbuttonBlockName,\n\t\t\t\t{ className: preferredStyle && `is-style-${ preferredStyle }` },\n\t\t\t],\n\t\t],\n\t\t__experimentalLayout: layout,\n\t\ttemplateInsertUpdatesSelection: true,\n\t} );\n\n\treturn <div { ...innerBlocksProps } />;\n}\n\nexport default ButtonsEdit;\n"]}
|
|
@@ -406,7 +406,7 @@ const ColumnsEdit = props => {
|
|
|
406
406
|
const parents = getBlockParents(clientId, true);
|
|
407
407
|
return {
|
|
408
408
|
columnCount: getBlockCount(clientId),
|
|
409
|
-
isDefaultColumns: !
|
|
409
|
+
isDefaultColumns: !isContentEmpty.filter(Boolean).length,
|
|
410
410
|
innerWidths: innerColumnsWidths,
|
|
411
411
|
hasParents: !!parents.length,
|
|
412
412
|
parentBlockAlignment: (_getBlockAttributes = getBlockAttributes(parents[0])) === null || _getBlockAttributes === void 0 ? void 0 : _getBlockAttributes.align,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/columns/edit.native.js"],"names":["ALLOWED_BLOCKS","DEFAULT_COLUMNS_NUM","MIN_COLUMNS_NUM","isFullWidth","alignmentHelpers","ColumnsEditContainer","attributes","updateAlignment","updateColumns","columnCount","isSelected","onDeleteBlock","innerWidths","updateInnerColumnWidth","editorSidebarOpened","resizeListener","sizes","columnsInRow","setColumnsInRow","screenWidth","Math","floor","Dimensions","get","width","globalStyles","GlobalStylesContext","verticalAlignment","align","units","availableUnits","newColumnCount","renderAppender","styles","columnAppender","onAddBlock","contentWidths","onChangeWidth","nextWidth","valueUnit","columnId","widthWithUnit","onChangeUnit","nextUnit","index","widthWithoutUnit","parseFloat","onChange","getColumnsSliders","map","column","label","clientId","length","undefined","onChangeColumnsNum","value","columns","innerBlocksSelected","ColumnsEditContainerWrapper","dispatch","ownProps","registry","setAttributes","updateBlockAttributes","blockEditorStore","getBlockOrder","select","innerBlockClientIds","forEach","innerBlockClientId","updateBlockSettings","settings","updateBlockListSettings","previousColumns","newColumns","replaceInnerBlocks","getBlocks","getBlockAttributes","innerBlocks","hasExplicitWidths","isAddingColumn","newColumnWidth","widths","slice","onAddNextColumn","selectBlock","insertedBlock","removeBlock","ColumnsEdit","props","style","isDefaultColumns","hasParents","parentBlockAlignment","getBlockCount","getBlockParents","isEditorSidebarOpened","isContentEmpty","innerBlock","innerColumnsWidths","inn","parents","memoizedInnerWidths","JSON","stringify","isVisible","setIsVisible","onClose","variations"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Dimensions } from 'react-native';\nimport { times, map, compact, delay } from 'lodash';\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tFooterMessageControl,\n\tUnitControl,\n\tgetValueAndUnit,\n\tGlobalStylesContext,\n\talignmentHelpers,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tInnerBlocks,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\tBlockVariationPicker,\n\tuseSetting,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { withDispatch, useSelect } from '@wordpress/data';\nimport {\n\tuseEffect,\n\tuseState,\n\tuseContext,\n\tuseMemo,\n\tuseCallback,\n\tmemo,\n} from '@wordpress/element';\nimport { useResizeObserver } from '@wordpress/compose';\nimport { createBlock } from '@wordpress/blocks';\nimport { columns } from '@wordpress/icons';\n/**\n * Internal dependencies\n */\nimport variations from './variations';\nimport styles from './editor.scss';\nimport {\n\thasExplicitPercentColumnWidths,\n\tgetMappedColumnWidths,\n\tgetRedistributedColumnWidths,\n\ttoWidthPrecision,\n\tgetWidths,\n\tgetWidthWithUnit,\n\tisPercentageUnit,\n} from './utils';\nimport {\n\tgetColumnsInRow,\n\tcalculateContainerWidth,\n\tgetContentWidths,\n} from './columnCalculations.native';\nimport ColumnsPreview from '../column/column-preview';\n\n/**\n * Allowed blocks constant is passed to InnerBlocks precisely as specified here.\n * The contents of the array should never change.\n * The array should contain the name of each block that is allowed.\n * In columns block, the only block we allow is 'core/column'.\n *\n * @constant\n * @type {string[]}\n */\nconst ALLOWED_BLOCKS = [ 'core/column' ];\n\n/**\n * Number of columns to assume for template in case the user opts to skip\n * template option selection.\n *\n * @type {number}\n */\nconst DEFAULT_COLUMNS_NUM = 2;\n\n/**\n * Minimum number of columns in a row\n *\n * @type {number}\n */\nconst MIN_COLUMNS_NUM = 1;\n\nconst { isFullWidth } = alignmentHelpers;\n\nfunction ColumnsEditContainer( {\n\tattributes,\n\tupdateAlignment,\n\tupdateColumns,\n\tcolumnCount,\n\tisSelected,\n\tonDeleteBlock,\n\tinnerWidths,\n\tupdateInnerColumnWidth,\n\teditorSidebarOpened,\n} ) {\n\tconst [ resizeListener, sizes ] = useResizeObserver();\n\tconst [ columnsInRow, setColumnsInRow ] = useState( MIN_COLUMNS_NUM );\n\tconst screenWidth = Math.floor( Dimensions.get( 'window' ).width );\n\tconst globalStyles = useContext( GlobalStylesContext );\n\n\tconst { verticalAlignment, align } = attributes;\n\tconst { width } = sizes || {};\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t],\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( columnCount === 0 ) {\n\t\t\tconst newColumnCount = columnCount || DEFAULT_COLUMNS_NUM;\n\t\t\tupdateColumns( columnCount, newColumnCount );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( width ) {\n\t\t\tif ( getColumnsInRow( width, columnCount ) !== columnsInRow ) {\n\t\t\t\tsetColumnsInRow( getColumnsInRow( width, columnCount ) );\n\t\t\t}\n\t\t}\n\t}, [ width, columnCount ] );\n\n\tconst renderAppender = () => {\n\t\tif ( isSelected ) {\n\t\t\treturn (\n\t\t\t\t<View style={ isFullWidth( align ) && styles.columnAppender }>\n\t\t\t\t\t<InnerBlocks.ButtonBlockAppender\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t};\n\n\tconst contentWidths = useMemo(\n\t\t() =>\n\t\t\tgetContentWidths(\n\t\t\t\tcolumnsInRow,\n\t\t\t\twidth,\n\t\t\t\tcolumnCount,\n\t\t\t\tinnerWidths,\n\t\t\t\tglobalStyles\n\t\t\t),\n\t\t[ width, columnsInRow, columnCount, innerWidths, globalStyles ]\n\t);\n\n\tconst onAddBlock = useCallback( () => {\n\t\tupdateColumns( columnCount, columnCount + 1 );\n\t}, [ columnCount ] );\n\n\tconst onChangeWidth = ( nextWidth, valueUnit, columnId ) => {\n\t\tconst widthWithUnit = getWidthWithUnit( nextWidth, valueUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChangeUnit = ( nextUnit, index, columnId ) => {\n\t\tconst widthWithoutUnit = parseFloat(\n\t\t\tgetWidths( innerWidths )[ index ]\n\t\t);\n\t\tconst widthWithUnit = getWidthWithUnit( widthWithoutUnit, nextUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChange = ( nextWidth, valueUnit, columnId ) => {\n\t\tif ( isPercentageUnit( valueUnit ) || ! valueUnit ) {\n\t\t\treturn;\n\t\t}\n\t\tonChangeWidth( nextWidth, valueUnit, columnId );\n\t};\n\n\tconst getColumnsSliders = useMemo( () => {\n\t\tif ( ! editorSidebarOpened || ! isSelected ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn innerWidths.map( ( column, index ) => {\n\t\t\tconst { valueUnit = '%' } =\n\t\t\t\tgetValueAndUnit( column.attributes.width ) || {};\n\t\t\tconst label = sprintf(\n\t\t\t\t/* translators: %d: column index. */\n\t\t\t\t__( 'Column %d' ),\n\t\t\t\tindex + 1\n\t\t\t);\n\t\t\treturn (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tsettingLabel=\"Width\"\n\t\t\t\t\tkey={ `${ column.clientId }-${\n\t\t\t\t\t\tgetWidths( innerWidths ).length\n\t\t\t\t\t}` }\n\t\t\t\t\tmin={ 1 }\n\t\t\t\t\tmax={\n\t\t\t\t\t\tisPercentageUnit( valueUnit ) || ! valueUnit\n\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ getWidths( innerWidths )[ index ] }\n\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\tonChange( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\tonChangeUnit( nextUnit, index, column.clientId )\n\t\t\t\t\t}\n\t\t\t\t\tonComplete={ ( nextWidth ) => {\n\t\t\t\t\t\tonChangeWidth( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tunit={ valueUnit }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tpreview={\n\t\t\t\t\t\t<ColumnsPreview\n\t\t\t\t\t\t\tcolumnWidths={ getWidths( innerWidths, false ) }\n\t\t\t\t\t\t\tselectedColumnIndex={ index }\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t);\n\t\t} );\n\t}, [ editorSidebarOpened, isSelected, innerWidths ] );\n\n\tconst onChangeColumnsNum = useCallback(\n\t\t( value ) => {\n\t\t\tupdateColumns( columnCount, value );\n\t\t},\n\t\t[ columnCount ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody title={ __( 'Columns Settings' ) }>\n\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Number of columns' ) }\n\t\t\t\t\t\t\t\ticon={ columns }\n\t\t\t\t\t\t\t\tvalue={ columnCount }\n\t\t\t\t\t\t\t\tonChange={ onChangeColumnsNum }\n\t\t\t\t\t\t\t\tmin={ MIN_COLUMNS_NUM }\n\t\t\t\t\t\t\t\tmax={ columnCount + 1 }\n\t\t\t\t\t\t\t\ttype=\"stepper\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ getColumnsSliders }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t\t<FooterMessageControl\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Note: Column layout may vary between themes and screen sizes'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<View style={ isSelected && styles.innerBlocksSelected }>\n\t\t\t\t{ resizeListener }\n\t\t\t\t{ width && (\n\t\t\t\t\t<InnerBlocks\n\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\torientation={\n\t\t\t\t\t\t\tcolumnsInRow > 1 ? 'horizontal' : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\thorizontal={ columnsInRow > 1 }\n\t\t\t\t\t\tallowedBlocks={ ALLOWED_BLOCKS }\n\t\t\t\t\t\tcontentResizeMode=\"stretch\"\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t\tonDeleteBlock={\n\t\t\t\t\t\t\tcolumnCount === 1 ? onDeleteBlock : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tblockWidth={ width }\n\t\t\t\t\t\tcontentStyle={ contentWidths }\n\t\t\t\t\t\tparentWidth={\n\t\t\t\t\t\t\tisFullWidth( align ) && columnCount === 0\n\t\t\t\t\t\t\t\t? screenWidth\n\t\t\t\t\t\t\t\t: calculateContainerWidth( width, columnsInRow )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</>\n\t);\n}\n\nconst ColumnsEditContainerWrapper = withDispatch(\n\t( dispatch, ownProps, registry ) => ( {\n\t\t/**\n\t\t * Update all child Column blocks with a new vertical alignment setting\n\t\t * based on whatever alignment is passed in. This allows change to parent\n\t\t * to overide anything set on a individual column basis.\n\t\t *\n\t\t * @param {string} verticalAlignment the vertical alignment setting\n\t\t */\n\t\tupdateAlignment( verticalAlignment ) {\n\t\t\tconst { clientId, setAttributes } = ownProps;\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\t\t\tconst { getBlockOrder } = registry.select( blockEditorStore );\n\n\t\t\t// Update own alignment.\n\t\t\tsetAttributes( { verticalAlignment } );\n\n\t\t\t// Update all child Column Blocks to match.\n\t\t\tconst innerBlockClientIds = getBlockOrder( clientId );\n\t\t\tinnerBlockClientIds.forEach( ( innerBlockClientId ) => {\n\t\t\t\tupdateBlockAttributes( innerBlockClientId, {\n\t\t\t\t\tverticalAlignment,\n\t\t\t\t} );\n\t\t\t} );\n\t\t},\n\t\tupdateInnerColumnWidth( value, columnId ) {\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\n\t\t\tupdateBlockAttributes( columnId, {\n\t\t\t\twidth: value,\n\t\t\t} );\n\t\t},\n\t\tupdateBlockSettings( settings ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { updateBlockListSettings } = dispatch( blockEditorStore );\n\t\t\tupdateBlockListSettings( clientId, settings );\n\t\t},\n\t\t/**\n\t\t * Updates the column columnCount, including necessary revisions to child Column\n\t\t * blocks to grant required or redistribute available space.\n\t\t *\n\t\t * @param {number} previousColumns Previous column columnCount.\n\t\t * @param {number} newColumns New column columnCount.\n\t\t */\n\t\tupdateColumns( previousColumns, newColumns ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks } = dispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\tlet innerBlocks = getBlocks( clientId );\n\t\t\tconst hasExplicitWidths =\n\t\t\t\thasExplicitPercentColumnWidths( innerBlocks );\n\n\t\t\t// Redistribute available width for existing inner blocks.\n\t\t\tconst isAddingColumn = newColumns > previousColumns;\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId ) || {};\n\n\t\t\tif ( isAddingColumn && hasExplicitWidths ) {\n\t\t\t\t// If adding a new column, assign width to the new column equal to\n\t\t\t\t// as if it were `1 / columns` of the total available space.\n\t\t\t\tconst newColumnWidth = toWidthPrecision( 100 / newColumns );\n\n\t\t\t\t// Redistribute in consideration of pending block insertion as\n\t\t\t\t// constraining the available working width.\n\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t100 - newColumnWidth\n\t\t\t\t);\n\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...getMappedColumnWidths( innerBlocks, widths ),\n\t\t\t\t\t...times( newColumns - previousColumns, () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\twidth: `${ newColumnWidth }%`,\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else if ( isAddingColumn ) {\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...innerBlocks,\n\t\t\t\t\t...times( newColumns - previousColumns, () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else {\n\t\t\t\t// The removed column will be the last of the inner blocks.\n\t\t\t\tinnerBlocks = innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\t-( previousColumns - newColumns )\n\t\t\t\t);\n\n\t\t\t\tif ( hasExplicitWidths ) {\n\t\t\t\t\t// Redistribute as if block is already removed.\n\t\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t\t100\n\t\t\t\t\t);\n\n\t\t\t\t\tinnerBlocks = getMappedColumnWidths( innerBlocks, widths );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treplaceInnerBlocks( clientId, innerBlocks );\n\t\t},\n\t\tonAddNextColumn: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks, selectBlock } =\n\t\t\t\tdispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId );\n\n\t\t\tconst innerBlocks = getBlocks( clientId );\n\n\t\t\tconst insertedBlock = createBlock( 'core/column', {\n\t\t\t\tverticalAlignment,\n\t\t\t} );\n\n\t\t\treplaceInnerBlocks(\n\t\t\t\tclientId,\n\t\t\t\t[ ...innerBlocks, insertedBlock ],\n\t\t\t\ttrue\n\t\t\t);\n\t\t\tselectBlock( insertedBlock.clientId );\n\t\t},\n\t\tonDeleteBlock: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { removeBlock } = dispatch( blockEditorStore );\n\t\t\tremoveBlock( clientId );\n\t\t},\n\t} )\n)( memo( ColumnsEditContainer ) );\n\nconst ColumnsEdit = ( props ) => {\n\tconst { clientId, isSelected, style } = props;\n\tconst {\n\t\tcolumnCount,\n\t\tisDefaultColumns,\n\t\tinnerWidths = [],\n\t\thasParents,\n\t\tparentBlockAlignment,\n\t\teditorSidebarOpened,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockParents,\n\t\t\t\tgetBlockAttributes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { isEditorSidebarOpened } = select( 'core/edit-post' );\n\t\t\tconst innerBlocks = getBlocks( clientId );\n\n\t\t\tconst isContentEmpty = map(\n\t\t\t\tinnerBlocks,\n\t\t\t\t( innerBlock ) => innerBlock.innerBlocks.length\n\t\t\t);\n\n\t\t\tconst innerColumnsWidths = innerBlocks.map( ( inn ) => ( {\n\t\t\t\tclientId: inn.clientId,\n\t\t\t\tattributes: { width: inn.attributes.width },\n\t\t\t} ) );\n\t\t\tconst parents = getBlockParents( clientId, true );\n\n\t\t\treturn {\n\t\t\t\tcolumnCount: getBlockCount( clientId ),\n\t\t\t\tisDefaultColumns: ! compact( isContentEmpty ).length,\n\t\t\t\tinnerWidths: innerColumnsWidths,\n\t\t\t\thasParents: !! parents.length,\n\t\t\t\tparentBlockAlignment: getBlockAttributes( parents[ 0 ] )?.align,\n\t\t\t\teditorSidebarOpened: isSelected && isEditorSidebarOpened(),\n\t\t\t};\n\t\t},\n\t\t[ clientId, isSelected ]\n\t);\n\n\tconst memoizedInnerWidths = useMemo( () => {\n\t\treturn innerWidths;\n\t}, [\n\t\t// The JSON.stringify is used because innerWidth is always a new reference.\n\t\t// The innerBlocks is a new reference after each attribute change of any nested block.\n\t\tJSON.stringify( innerWidths ),\n\t] );\n\n\tconst [ isVisible, setIsVisible ] = useState( false );\n\n\tuseEffect( () => {\n\t\tif ( isSelected && isDefaultColumns ) {\n\t\t\tdelay( () => setIsVisible( true ), 100 );\n\t\t}\n\t}, [] );\n\n\tconst onClose = useCallback( () => {\n\t\tsetIsVisible( false );\n\t}, [] );\n\n\treturn (\n\t\t<View style={ style }>\n\t\t\t<ColumnsEditContainerWrapper\n\t\t\t\tcolumnCount={ columnCount }\n\t\t\t\tinnerWidths={ memoizedInnerWidths }\n\t\t\t\thasParents={ hasParents }\n\t\t\t\tparentBlockAlignment={ parentBlockAlignment }\n\t\t\t\teditorSidebarOpened={ editorSidebarOpened }\n\t\t\t\t{ ...props }\n\t\t\t/>\n\t\t\t<BlockVariationPicker\n\t\t\t\tvariations={ variations }\n\t\t\t\tonClose={ onClose }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisVisible={ isVisible }\n\t\t\t/>\n\t\t</View>\n\t);\n};\n\nexport default ColumnsEdit;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/columns/edit.native.js"],"names":["ALLOWED_BLOCKS","DEFAULT_COLUMNS_NUM","MIN_COLUMNS_NUM","isFullWidth","alignmentHelpers","ColumnsEditContainer","attributes","updateAlignment","updateColumns","columnCount","isSelected","onDeleteBlock","innerWidths","updateInnerColumnWidth","editorSidebarOpened","resizeListener","sizes","columnsInRow","setColumnsInRow","screenWidth","Math","floor","Dimensions","get","width","globalStyles","GlobalStylesContext","verticalAlignment","align","units","availableUnits","newColumnCount","renderAppender","styles","columnAppender","onAddBlock","contentWidths","onChangeWidth","nextWidth","valueUnit","columnId","widthWithUnit","onChangeUnit","nextUnit","index","widthWithoutUnit","parseFloat","onChange","getColumnsSliders","map","column","label","clientId","length","undefined","onChangeColumnsNum","value","columns","innerBlocksSelected","ColumnsEditContainerWrapper","dispatch","ownProps","registry","setAttributes","updateBlockAttributes","blockEditorStore","getBlockOrder","select","innerBlockClientIds","forEach","innerBlockClientId","updateBlockSettings","settings","updateBlockListSettings","previousColumns","newColumns","replaceInnerBlocks","getBlocks","getBlockAttributes","innerBlocks","hasExplicitWidths","isAddingColumn","newColumnWidth","widths","slice","onAddNextColumn","selectBlock","insertedBlock","removeBlock","ColumnsEdit","props","style","isDefaultColumns","hasParents","parentBlockAlignment","getBlockCount","getBlockParents","isEditorSidebarOpened","isContentEmpty","innerBlock","innerColumnsWidths","inn","parents","filter","Boolean","memoizedInnerWidths","JSON","stringify","isVisible","setIsVisible","onClose","variations"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Dimensions } from 'react-native';\nimport { times, map, delay } from 'lodash';\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tFooterMessageControl,\n\tUnitControl,\n\tgetValueAndUnit,\n\tGlobalStylesContext,\n\talignmentHelpers,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tInnerBlocks,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\tBlockVariationPicker,\n\tuseSetting,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { withDispatch, useSelect } from '@wordpress/data';\nimport {\n\tuseEffect,\n\tuseState,\n\tuseContext,\n\tuseMemo,\n\tuseCallback,\n\tmemo,\n} from '@wordpress/element';\nimport { useResizeObserver } from '@wordpress/compose';\nimport { createBlock } from '@wordpress/blocks';\nimport { columns } from '@wordpress/icons';\n/**\n * Internal dependencies\n */\nimport variations from './variations';\nimport styles from './editor.scss';\nimport {\n\thasExplicitPercentColumnWidths,\n\tgetMappedColumnWidths,\n\tgetRedistributedColumnWidths,\n\ttoWidthPrecision,\n\tgetWidths,\n\tgetWidthWithUnit,\n\tisPercentageUnit,\n} from './utils';\nimport {\n\tgetColumnsInRow,\n\tcalculateContainerWidth,\n\tgetContentWidths,\n} from './columnCalculations.native';\nimport ColumnsPreview from '../column/column-preview';\n\n/**\n * Allowed blocks constant is passed to InnerBlocks precisely as specified here.\n * The contents of the array should never change.\n * The array should contain the name of each block that is allowed.\n * In columns block, the only block we allow is 'core/column'.\n *\n * @constant\n * @type {string[]}\n */\nconst ALLOWED_BLOCKS = [ 'core/column' ];\n\n/**\n * Number of columns to assume for template in case the user opts to skip\n * template option selection.\n *\n * @type {number}\n */\nconst DEFAULT_COLUMNS_NUM = 2;\n\n/**\n * Minimum number of columns in a row\n *\n * @type {number}\n */\nconst MIN_COLUMNS_NUM = 1;\n\nconst { isFullWidth } = alignmentHelpers;\n\nfunction ColumnsEditContainer( {\n\tattributes,\n\tupdateAlignment,\n\tupdateColumns,\n\tcolumnCount,\n\tisSelected,\n\tonDeleteBlock,\n\tinnerWidths,\n\tupdateInnerColumnWidth,\n\teditorSidebarOpened,\n} ) {\n\tconst [ resizeListener, sizes ] = useResizeObserver();\n\tconst [ columnsInRow, setColumnsInRow ] = useState( MIN_COLUMNS_NUM );\n\tconst screenWidth = Math.floor( Dimensions.get( 'window' ).width );\n\tconst globalStyles = useContext( GlobalStylesContext );\n\n\tconst { verticalAlignment, align } = attributes;\n\tconst { width } = sizes || {};\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t],\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( columnCount === 0 ) {\n\t\t\tconst newColumnCount = columnCount || DEFAULT_COLUMNS_NUM;\n\t\t\tupdateColumns( columnCount, newColumnCount );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( width ) {\n\t\t\tif ( getColumnsInRow( width, columnCount ) !== columnsInRow ) {\n\t\t\t\tsetColumnsInRow( getColumnsInRow( width, columnCount ) );\n\t\t\t}\n\t\t}\n\t}, [ width, columnCount ] );\n\n\tconst renderAppender = () => {\n\t\tif ( isSelected ) {\n\t\t\treturn (\n\t\t\t\t<View style={ isFullWidth( align ) && styles.columnAppender }>\n\t\t\t\t\t<InnerBlocks.ButtonBlockAppender\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t};\n\n\tconst contentWidths = useMemo(\n\t\t() =>\n\t\t\tgetContentWidths(\n\t\t\t\tcolumnsInRow,\n\t\t\t\twidth,\n\t\t\t\tcolumnCount,\n\t\t\t\tinnerWidths,\n\t\t\t\tglobalStyles\n\t\t\t),\n\t\t[ width, columnsInRow, columnCount, innerWidths, globalStyles ]\n\t);\n\n\tconst onAddBlock = useCallback( () => {\n\t\tupdateColumns( columnCount, columnCount + 1 );\n\t}, [ columnCount ] );\n\n\tconst onChangeWidth = ( nextWidth, valueUnit, columnId ) => {\n\t\tconst widthWithUnit = getWidthWithUnit( nextWidth, valueUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChangeUnit = ( nextUnit, index, columnId ) => {\n\t\tconst widthWithoutUnit = parseFloat(\n\t\t\tgetWidths( innerWidths )[ index ]\n\t\t);\n\t\tconst widthWithUnit = getWidthWithUnit( widthWithoutUnit, nextUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChange = ( nextWidth, valueUnit, columnId ) => {\n\t\tif ( isPercentageUnit( valueUnit ) || ! valueUnit ) {\n\t\t\treturn;\n\t\t}\n\t\tonChangeWidth( nextWidth, valueUnit, columnId );\n\t};\n\n\tconst getColumnsSliders = useMemo( () => {\n\t\tif ( ! editorSidebarOpened || ! isSelected ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn innerWidths.map( ( column, index ) => {\n\t\t\tconst { valueUnit = '%' } =\n\t\t\t\tgetValueAndUnit( column.attributes.width ) || {};\n\t\t\tconst label = sprintf(\n\t\t\t\t/* translators: %d: column index. */\n\t\t\t\t__( 'Column %d' ),\n\t\t\t\tindex + 1\n\t\t\t);\n\t\t\treturn (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tsettingLabel=\"Width\"\n\t\t\t\t\tkey={ `${ column.clientId }-${\n\t\t\t\t\t\tgetWidths( innerWidths ).length\n\t\t\t\t\t}` }\n\t\t\t\t\tmin={ 1 }\n\t\t\t\t\tmax={\n\t\t\t\t\t\tisPercentageUnit( valueUnit ) || ! valueUnit\n\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ getWidths( innerWidths )[ index ] }\n\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\tonChange( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\tonChangeUnit( nextUnit, index, column.clientId )\n\t\t\t\t\t}\n\t\t\t\t\tonComplete={ ( nextWidth ) => {\n\t\t\t\t\t\tonChangeWidth( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tunit={ valueUnit }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tpreview={\n\t\t\t\t\t\t<ColumnsPreview\n\t\t\t\t\t\t\tcolumnWidths={ getWidths( innerWidths, false ) }\n\t\t\t\t\t\t\tselectedColumnIndex={ index }\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t);\n\t\t} );\n\t}, [ editorSidebarOpened, isSelected, innerWidths ] );\n\n\tconst onChangeColumnsNum = useCallback(\n\t\t( value ) => {\n\t\t\tupdateColumns( columnCount, value );\n\t\t},\n\t\t[ columnCount ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody title={ __( 'Columns Settings' ) }>\n\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Number of columns' ) }\n\t\t\t\t\t\t\t\ticon={ columns }\n\t\t\t\t\t\t\t\tvalue={ columnCount }\n\t\t\t\t\t\t\t\tonChange={ onChangeColumnsNum }\n\t\t\t\t\t\t\t\tmin={ MIN_COLUMNS_NUM }\n\t\t\t\t\t\t\t\tmax={ columnCount + 1 }\n\t\t\t\t\t\t\t\ttype=\"stepper\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ getColumnsSliders }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t\t<FooterMessageControl\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Note: Column layout may vary between themes and screen sizes'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<View style={ isSelected && styles.innerBlocksSelected }>\n\t\t\t\t{ resizeListener }\n\t\t\t\t{ width && (\n\t\t\t\t\t<InnerBlocks\n\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\torientation={\n\t\t\t\t\t\t\tcolumnsInRow > 1 ? 'horizontal' : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\thorizontal={ columnsInRow > 1 }\n\t\t\t\t\t\tallowedBlocks={ ALLOWED_BLOCKS }\n\t\t\t\t\t\tcontentResizeMode=\"stretch\"\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t\tonDeleteBlock={\n\t\t\t\t\t\t\tcolumnCount === 1 ? onDeleteBlock : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tblockWidth={ width }\n\t\t\t\t\t\tcontentStyle={ contentWidths }\n\t\t\t\t\t\tparentWidth={\n\t\t\t\t\t\t\tisFullWidth( align ) && columnCount === 0\n\t\t\t\t\t\t\t\t? screenWidth\n\t\t\t\t\t\t\t\t: calculateContainerWidth( width, columnsInRow )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</>\n\t);\n}\n\nconst ColumnsEditContainerWrapper = withDispatch(\n\t( dispatch, ownProps, registry ) => ( {\n\t\t/**\n\t\t * Update all child Column blocks with a new vertical alignment setting\n\t\t * based on whatever alignment is passed in. This allows change to parent\n\t\t * to overide anything set on a individual column basis.\n\t\t *\n\t\t * @param {string} verticalAlignment the vertical alignment setting\n\t\t */\n\t\tupdateAlignment( verticalAlignment ) {\n\t\t\tconst { clientId, setAttributes } = ownProps;\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\t\t\tconst { getBlockOrder } = registry.select( blockEditorStore );\n\n\t\t\t// Update own alignment.\n\t\t\tsetAttributes( { verticalAlignment } );\n\n\t\t\t// Update all child Column Blocks to match.\n\t\t\tconst innerBlockClientIds = getBlockOrder( clientId );\n\t\t\tinnerBlockClientIds.forEach( ( innerBlockClientId ) => {\n\t\t\t\tupdateBlockAttributes( innerBlockClientId, {\n\t\t\t\t\tverticalAlignment,\n\t\t\t\t} );\n\t\t\t} );\n\t\t},\n\t\tupdateInnerColumnWidth( value, columnId ) {\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\n\t\t\tupdateBlockAttributes( columnId, {\n\t\t\t\twidth: value,\n\t\t\t} );\n\t\t},\n\t\tupdateBlockSettings( settings ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { updateBlockListSettings } = dispatch( blockEditorStore );\n\t\t\tupdateBlockListSettings( clientId, settings );\n\t\t},\n\t\t/**\n\t\t * Updates the column columnCount, including necessary revisions to child Column\n\t\t * blocks to grant required or redistribute available space.\n\t\t *\n\t\t * @param {number} previousColumns Previous column columnCount.\n\t\t * @param {number} newColumns New column columnCount.\n\t\t */\n\t\tupdateColumns( previousColumns, newColumns ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks } = dispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\tlet innerBlocks = getBlocks( clientId );\n\t\t\tconst hasExplicitWidths =\n\t\t\t\thasExplicitPercentColumnWidths( innerBlocks );\n\n\t\t\t// Redistribute available width for existing inner blocks.\n\t\t\tconst isAddingColumn = newColumns > previousColumns;\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId ) || {};\n\n\t\t\tif ( isAddingColumn && hasExplicitWidths ) {\n\t\t\t\t// If adding a new column, assign width to the new column equal to\n\t\t\t\t// as if it were `1 / columns` of the total available space.\n\t\t\t\tconst newColumnWidth = toWidthPrecision( 100 / newColumns );\n\n\t\t\t\t// Redistribute in consideration of pending block insertion as\n\t\t\t\t// constraining the available working width.\n\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t100 - newColumnWidth\n\t\t\t\t);\n\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...getMappedColumnWidths( innerBlocks, widths ),\n\t\t\t\t\t...times( newColumns - previousColumns, () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\twidth: `${ newColumnWidth }%`,\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else if ( isAddingColumn ) {\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...innerBlocks,\n\t\t\t\t\t...times( newColumns - previousColumns, () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else {\n\t\t\t\t// The removed column will be the last of the inner blocks.\n\t\t\t\tinnerBlocks = innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\t-( previousColumns - newColumns )\n\t\t\t\t);\n\n\t\t\t\tif ( hasExplicitWidths ) {\n\t\t\t\t\t// Redistribute as if block is already removed.\n\t\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t\t100\n\t\t\t\t\t);\n\n\t\t\t\t\tinnerBlocks = getMappedColumnWidths( innerBlocks, widths );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treplaceInnerBlocks( clientId, innerBlocks );\n\t\t},\n\t\tonAddNextColumn: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks, selectBlock } =\n\t\t\t\tdispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId );\n\n\t\t\tconst innerBlocks = getBlocks( clientId );\n\n\t\t\tconst insertedBlock = createBlock( 'core/column', {\n\t\t\t\tverticalAlignment,\n\t\t\t} );\n\n\t\t\treplaceInnerBlocks(\n\t\t\t\tclientId,\n\t\t\t\t[ ...innerBlocks, insertedBlock ],\n\t\t\t\ttrue\n\t\t\t);\n\t\t\tselectBlock( insertedBlock.clientId );\n\t\t},\n\t\tonDeleteBlock: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { removeBlock } = dispatch( blockEditorStore );\n\t\t\tremoveBlock( clientId );\n\t\t},\n\t} )\n)( memo( ColumnsEditContainer ) );\n\nconst ColumnsEdit = ( props ) => {\n\tconst { clientId, isSelected, style } = props;\n\tconst {\n\t\tcolumnCount,\n\t\tisDefaultColumns,\n\t\tinnerWidths = [],\n\t\thasParents,\n\t\tparentBlockAlignment,\n\t\teditorSidebarOpened,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockParents,\n\t\t\t\tgetBlockAttributes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { isEditorSidebarOpened } = select( 'core/edit-post' );\n\t\t\tconst innerBlocks = getBlocks( clientId );\n\n\t\t\tconst isContentEmpty = map(\n\t\t\t\tinnerBlocks,\n\t\t\t\t( innerBlock ) => innerBlock.innerBlocks.length\n\t\t\t);\n\n\t\t\tconst innerColumnsWidths = innerBlocks.map( ( inn ) => ( {\n\t\t\t\tclientId: inn.clientId,\n\t\t\t\tattributes: { width: inn.attributes.width },\n\t\t\t} ) );\n\t\t\tconst parents = getBlockParents( clientId, true );\n\n\t\t\treturn {\n\t\t\t\tcolumnCount: getBlockCount( clientId ),\n\t\t\t\tisDefaultColumns: ! isContentEmpty.filter( Boolean ).length,\n\t\t\t\tinnerWidths: innerColumnsWidths,\n\t\t\t\thasParents: !! parents.length,\n\t\t\t\tparentBlockAlignment: getBlockAttributes( parents[ 0 ] )?.align,\n\t\t\t\teditorSidebarOpened: isSelected && isEditorSidebarOpened(),\n\t\t\t};\n\t\t},\n\t\t[ clientId, isSelected ]\n\t);\n\n\tconst memoizedInnerWidths = useMemo( () => {\n\t\treturn innerWidths;\n\t}, [\n\t\t// The JSON.stringify is used because innerWidth is always a new reference.\n\t\t// The innerBlocks is a new reference after each attribute change of any nested block.\n\t\tJSON.stringify( innerWidths ),\n\t] );\n\n\tconst [ isVisible, setIsVisible ] = useState( false );\n\n\tuseEffect( () => {\n\t\tif ( isSelected && isDefaultColumns ) {\n\t\t\tdelay( () => setIsVisible( true ), 100 );\n\t\t}\n\t}, [] );\n\n\tconst onClose = useCallback( () => {\n\t\tsetIsVisible( false );\n\t}, [] );\n\n\treturn (\n\t\t<View style={ style }>\n\t\t\t<ColumnsEditContainerWrapper\n\t\t\t\tcolumnCount={ columnCount }\n\t\t\t\tinnerWidths={ memoizedInnerWidths }\n\t\t\t\thasParents={ hasParents }\n\t\t\t\tparentBlockAlignment={ parentBlockAlignment }\n\t\t\t\teditorSidebarOpened={ editorSidebarOpened }\n\t\t\t\t{ ...props }\n\t\t\t/>\n\t\t\t<BlockVariationPicker\n\t\t\t\tvariations={ variations }\n\t\t\t\tonClose={ onClose }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisVisible={ isVisible }\n\t\t\t/>\n\t\t</View>\n\t);\n};\n\nexport default ColumnsEdit;\n"]}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = CommentsLegacy;
|
|
9
|
+
|
|
10
|
+
var _element = require("@wordpress/element");
|
|
11
|
+
|
|
12
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
|
+
|
|
14
|
+
var _blockEditor = require("@wordpress/block-editor");
|
|
15
|
+
|
|
16
|
+
var _i18n = require("@wordpress/i18n");
|
|
17
|
+
|
|
18
|
+
var _components = require("@wordpress/components");
|
|
19
|
+
|
|
20
|
+
var _placeholder = _interopRequireDefault(require("./placeholder"));
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* External dependencies
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* WordPress dependencies
|
|
28
|
+
*/
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Internal dependencies
|
|
32
|
+
*/
|
|
33
|
+
function CommentsLegacy(_ref) {
|
|
34
|
+
let {
|
|
35
|
+
attributes,
|
|
36
|
+
setAttributes,
|
|
37
|
+
context: {
|
|
38
|
+
postType,
|
|
39
|
+
postId
|
|
40
|
+
}
|
|
41
|
+
} = _ref;
|
|
42
|
+
const {
|
|
43
|
+
textAlign
|
|
44
|
+
} = attributes;
|
|
45
|
+
const actions = [(0, _element.createElement)(_components.Button, {
|
|
46
|
+
key: "convert",
|
|
47
|
+
onClick: () => void setAttributes({
|
|
48
|
+
legacy: false
|
|
49
|
+
}),
|
|
50
|
+
variant: "primary"
|
|
51
|
+
}, (0, _i18n.__)('Switch to editable mode'))];
|
|
52
|
+
const blockProps = (0, _blockEditor.useBlockProps)({
|
|
53
|
+
className: (0, _classnames.default)({
|
|
54
|
+
[`has-text-align-${textAlign}`]: textAlign
|
|
55
|
+
})
|
|
56
|
+
});
|
|
57
|
+
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_blockEditor.BlockControls, {
|
|
58
|
+
group: "block"
|
|
59
|
+
}, (0, _element.createElement)(_blockEditor.AlignmentControl, {
|
|
60
|
+
value: textAlign,
|
|
61
|
+
onChange: nextAlign => {
|
|
62
|
+
setAttributes({
|
|
63
|
+
textAlign: nextAlign
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
})), (0, _element.createElement)("div", blockProps, (0, _element.createElement)(_blockEditor.Warning, {
|
|
67
|
+
actions: actions
|
|
68
|
+
}, (0, _i18n.__)("Comments block: You're currently using this block in legacy mode. " + 'The following is just a placeholder, not a real comment. ' + 'The final styling may differ because it also depends on the current theme. ' + 'For better compatibility with the Block Editor, ' + 'please consider switching the block to its editable mode.')), (0, _element.createElement)(_placeholder.default, {
|
|
69
|
+
postId: postId,
|
|
70
|
+
postType: postType
|
|
71
|
+
})));
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=comments-legacy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/comments/edit/comments-legacy.js"],"names":["CommentsLegacy","attributes","setAttributes","context","postType","postId","textAlign","actions","legacy","blockProps","className","nextAlign"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AAMA;;AACA;;AAKA;;AApBA;AACA;AACA;;AAGA;AACA;AACA;;AAUA;AACA;AACA;AAGe,SAASA,cAAT,OAIX;AAAA,MAJoC;AACvCC,IAAAA,UADuC;AAEvCC,IAAAA,aAFuC;AAGvCC,IAAAA,OAAO,EAAE;AAAEC,MAAAA,QAAF;AAAYC,MAAAA;AAAZ;AAH8B,GAIpC;AACH,QAAM;AAAEC,IAAAA;AAAF,MAAgBL,UAAtB;AAEA,QAAMM,OAAO,GAAG,CACf,4BAAC,kBAAD;AACC,IAAA,GAAG,EAAC,SADL;AAEC,IAAA,OAAO,EAAG,MAAM,KAAKL,aAAa,CAAE;AAAEM,MAAAA,MAAM,EAAE;AAAV,KAAF,CAFnC;AAGC,IAAA,OAAO,EAAC;AAHT,KAKG,cAAI,yBAAJ,CALH,CADe,CAAhB;AAUA,QAAMC,UAAU,GAAG,gCAAe;AACjCC,IAAAA,SAAS,EAAE,yBAAY;AACtB,OAAG,kBAAkBJ,SAAW,EAAhC,GAAqCA;AADf,KAAZ;AADsB,GAAf,CAAnB;AAMA,SACC,qDACC,4BAAC,0BAAD;AAAe,IAAA,KAAK,EAAC;AAArB,KACC,4BAAC,6BAAD;AACC,IAAA,KAAK,EAAGA,SADT;AAEC,IAAA,QAAQ,EAAKK,SAAF,IAAiB;AAC3BT,MAAAA,aAAa,CAAE;AAAEI,QAAAA,SAAS,EAAEK;AAAb,OAAF,CAAb;AACA;AAJF,IADD,CADD,EAUC,mCAAUF,UAAV,EACC,4BAAC,oBAAD;AAAS,IAAA,OAAO,EAAGF;AAAnB,KACG,cACD,uEACC,2DADD,GAEC,6EAFD,GAGC,kDAHD,GAIC,2DALA,CADH,CADD,EAUC,4BAAC,oBAAD;AAAa,IAAA,MAAM,EAAGF,MAAtB;AAA+B,IAAA,QAAQ,EAAGD;AAA1C,IAVD,CAVD,CADD;AAyBA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tWarning,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { Button } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport Placeholder from './placeholder';\n\nexport default function CommentsLegacy( {\n\tattributes,\n\tsetAttributes,\n\tcontext: { postType, postId },\n} ) {\n\tconst { textAlign } = attributes;\n\n\tconst actions = [\n\t\t<Button\n\t\t\tkey=\"convert\"\n\t\t\tonClick={ () => void setAttributes( { legacy: false } ) }\n\t\t\tvariant=\"primary\"\n\t\t>\n\t\t\t{ __( 'Switch to editable mode' ) }\n\t\t</Button>,\n\t];\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning actions={ actions }>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t\"Comments block: You're currently using this block in legacy mode. \" +\n\t\t\t\t\t\t\t'The following is just a placeholder, not a real comment. ' +\n\t\t\t\t\t\t\t'The final styling may differ because it also depends on the current theme. ' +\n\t\t\t\t\t\t\t'For better compatibility with the Block Editor, ' +\n\t\t\t\t\t\t\t'please consider switching the block to its editable mode.'\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t\t<Placeholder postId={ postId } postType={ postType } />\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -11,7 +11,11 @@ var _element = require("@wordpress/element");
|
|
|
11
11
|
|
|
12
12
|
var _blockEditor = require("@wordpress/block-editor");
|
|
13
13
|
|
|
14
|
-
var _commentsInspectorControls = _interopRequireDefault(require("./
|
|
14
|
+
var _commentsInspectorControls = _interopRequireDefault(require("./comments-inspector-controls"));
|
|
15
|
+
|
|
16
|
+
var _commentsLegacy = _interopRequireDefault(require("./comments-legacy"));
|
|
17
|
+
|
|
18
|
+
var _template = _interopRequireDefault(require("./template"));
|
|
15
19
|
|
|
16
20
|
/**
|
|
17
21
|
* WordPress dependencies
|
|
@@ -20,52 +24,27 @@ var _commentsInspectorControls = _interopRequireDefault(require("./edit/comments
|
|
|
20
24
|
/**
|
|
21
25
|
* Internal dependencies
|
|
22
26
|
*/
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}, [['core/avatar', {
|
|
26
|
-
size: 40,
|
|
27
|
-
style: {
|
|
28
|
-
border: {
|
|
29
|
-
radius: '20px'
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}]]], ['core/column', {}, [['core/comment-author-name', {
|
|
33
|
-
fontSize: 'small'
|
|
34
|
-
}], ['core/group', {
|
|
35
|
-
layout: {
|
|
36
|
-
type: 'flex'
|
|
37
|
-
},
|
|
38
|
-
style: {
|
|
39
|
-
spacing: {
|
|
40
|
-
margin: {
|
|
41
|
-
top: '0px',
|
|
42
|
-
bottom: '0px'
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}, [['core/comment-date', {
|
|
47
|
-
fontSize: 'small'
|
|
48
|
-
}], ['core/comment-edit-link', {
|
|
49
|
-
fontSize: 'small'
|
|
50
|
-
}]]], ['core/comment-content'], ['core/comment-reply-link', {
|
|
51
|
-
fontSize: 'small'
|
|
52
|
-
}]]]]]]], ['core/comments-pagination'], ['core/post-comments-form']];
|
|
53
|
-
|
|
54
|
-
function CommentsEdit(_ref) {
|
|
55
|
-
let {
|
|
27
|
+
function CommentsEdit(props) {
|
|
28
|
+
const {
|
|
56
29
|
attributes,
|
|
57
30
|
setAttributes
|
|
58
|
-
} =
|
|
31
|
+
} = props;
|
|
59
32
|
const {
|
|
60
|
-
tagName: TagName
|
|
33
|
+
tagName: TagName,
|
|
34
|
+
legacy
|
|
61
35
|
} = attributes;
|
|
62
36
|
const blockProps = (0, _blockEditor.useBlockProps)();
|
|
63
37
|
const innerBlocksProps = (0, _blockEditor.useInnerBlocksProps)(blockProps, {
|
|
64
|
-
template:
|
|
38
|
+
template: _template.default
|
|
65
39
|
});
|
|
40
|
+
|
|
41
|
+
if (legacy) {
|
|
42
|
+
return (0, _element.createElement)(_commentsLegacy.default, props);
|
|
43
|
+
}
|
|
44
|
+
|
|
66
45
|
return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_commentsInspectorControls.default, {
|
|
67
46
|
attributes: attributes,
|
|
68
47
|
setAttributes: setAttributes
|
|
69
48
|
}), (0, _element.createElement)(TagName, innerBlocksProps));
|
|
70
49
|
}
|
|
71
|
-
//# sourceMappingURL=
|
|
50
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/comments/edit/index.js"],"names":["CommentsEdit","props","attributes","setAttributes","tagName","TagName","legacy","blockProps","innerBlocksProps","template","TEMPLATE"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AACA;;AACA;;AAVA;AACA;AACA;;AAGA;AACA;AACA;AAKe,SAASA,YAAT,CAAuBC,KAAvB,EAA+B;AAC7C,QAAM;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,MAAgCF,KAAtC;AACA,QAAM;AAAEG,IAAAA,OAAO,EAAEC,OAAX;AAAoBC,IAAAA;AAApB,MAA+BJ,UAArC;AAEA,QAAMK,UAAU,GAAG,iCAAnB;AACA,QAAMC,gBAAgB,GAAG,sCAAqBD,UAArB,EAAiC;AACzDE,IAAAA,QAAQ,EAAEC;AAD+C,GAAjC,CAAzB;;AAIA,MAAKJ,MAAL,EAAc;AACb,WAAO,4BAAC,uBAAD,EAAqBL,KAArB,CAAP;AACA;;AAED,SACC,qDACC,4BAAC,kCAAD;AACC,IAAA,UAAU,EAAGC,UADd;AAEC,IAAA,aAAa,EAAGC;AAFjB,IADD,EAKC,4BAAC,OAAD,EAAcK,gBAAd,CALD,CADD;AASA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useBlockProps, useInnerBlocksProps } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport CommentsInspectorControls from './comments-inspector-controls';\nimport CommentsLegacy from './comments-legacy';\nimport TEMPLATE from './template';\n\nexport default function CommentsEdit( props ) {\n\tconst { attributes, setAttributes } = props;\n\tconst { tagName: TagName, legacy } = attributes;\n\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t} );\n\n\tif ( legacy ) {\n\t\treturn <CommentsLegacy { ...props } />;\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<CommentsInspectorControls\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t/>\n\t\t\t<TagName { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n"]}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = PostCommentsPlaceholder;
|
|
9
|
+
|
|
10
|
+
var _element = require("@wordpress/element");
|
|
11
|
+
|
|
12
|
+
var _blockEditor = require("@wordpress/block-editor");
|
|
13
|
+
|
|
14
|
+
var _i18n = require("@wordpress/i18n");
|
|
15
|
+
|
|
16
|
+
var _data = require("@wordpress/data");
|
|
17
|
+
|
|
18
|
+
var _coreData = require("@wordpress/core-data");
|
|
19
|
+
|
|
20
|
+
var _compose = require("@wordpress/compose");
|
|
21
|
+
|
|
22
|
+
var _form = _interopRequireDefault(require("../../post-comments-form/form"));
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* WordPress dependencies
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Internal dependencies
|
|
30
|
+
*/
|
|
31
|
+
function PostCommentsPlaceholder(_ref) {
|
|
32
|
+
let {
|
|
33
|
+
postType,
|
|
34
|
+
postId
|
|
35
|
+
} = _ref;
|
|
36
|
+
let [postTitle] = (0, _coreData.useEntityProp)('postType', postType, 'title', postId);
|
|
37
|
+
postTitle = postTitle || (0, _i18n.__)('Post Title');
|
|
38
|
+
const {
|
|
39
|
+
avatarURL
|
|
40
|
+
} = (0, _data.useSelect)(select => select(_blockEditor.store).getSettings().__experimentalDiscussionSettings);
|
|
41
|
+
const disabledRef = (0, _compose.useDisabled)();
|
|
42
|
+
return (0, _element.createElement)("div", {
|
|
43
|
+
className: "wp-block-comments__legacy-placeholder",
|
|
44
|
+
ref: disabledRef
|
|
45
|
+
}, (0, _element.createElement)("h3", null,
|
|
46
|
+
/* translators: %s: Post title. */
|
|
47
|
+
(0, _i18n.sprintf)((0, _i18n.__)('One response to %s'), postTitle)), (0, _element.createElement)("div", {
|
|
48
|
+
className: "navigation"
|
|
49
|
+
}, (0, _element.createElement)("div", {
|
|
50
|
+
className: "alignleft"
|
|
51
|
+
}, (0, _element.createElement)("a", {
|
|
52
|
+
href: "#top"
|
|
53
|
+
}, "\xAB ", (0, _i18n.__)('Older Comments'))), (0, _element.createElement)("div", {
|
|
54
|
+
className: "alignright"
|
|
55
|
+
}, (0, _element.createElement)("a", {
|
|
56
|
+
href: "#top"
|
|
57
|
+
}, (0, _i18n.__)('Newer Comments'), " \xBB"))), (0, _element.createElement)("ol", {
|
|
58
|
+
className: "commentlist"
|
|
59
|
+
}, (0, _element.createElement)("li", {
|
|
60
|
+
className: "comment even thread-even depth-1"
|
|
61
|
+
}, (0, _element.createElement)("article", {
|
|
62
|
+
className: "comment-body"
|
|
63
|
+
}, (0, _element.createElement)("footer", {
|
|
64
|
+
className: "comment-meta"
|
|
65
|
+
}, (0, _element.createElement)("div", {
|
|
66
|
+
className: "comment-author vcard"
|
|
67
|
+
}, (0, _element.createElement)("img", {
|
|
68
|
+
alt: "Commenter Avatar",
|
|
69
|
+
src: avatarURL,
|
|
70
|
+
className: "avatar avatar-32 photo",
|
|
71
|
+
height: "32",
|
|
72
|
+
width: "32",
|
|
73
|
+
loading: "lazy"
|
|
74
|
+
}), (0, _element.createElement)("b", {
|
|
75
|
+
className: "fn"
|
|
76
|
+
}, (0, _element.createElement)("a", {
|
|
77
|
+
href: "#top",
|
|
78
|
+
className: "url"
|
|
79
|
+
}, (0, _i18n.__)('A WordPress Commenter'))), ' ', (0, _element.createElement)("span", {
|
|
80
|
+
className: "says"
|
|
81
|
+
}, (0, _i18n.__)('says'), ":")), (0, _element.createElement)("div", {
|
|
82
|
+
className: "comment-metadata"
|
|
83
|
+
}, (0, _element.createElement)("a", {
|
|
84
|
+
href: "#top"
|
|
85
|
+
}, (0, _element.createElement)("time", {
|
|
86
|
+
dateTime: "2000-01-01T00:00:00+00:00"
|
|
87
|
+
}, (0, _i18n.__)('January 1, 2000 at 00:00 am'))), ' ', (0, _element.createElement)("span", {
|
|
88
|
+
className: "edit-link"
|
|
89
|
+
}, (0, _element.createElement)("a", {
|
|
90
|
+
className: "comment-edit-link",
|
|
91
|
+
href: "#top"
|
|
92
|
+
}, (0, _i18n.__)('Edit'))))), (0, _element.createElement)("div", {
|
|
93
|
+
className: "comment-content"
|
|
94
|
+
}, (0, _element.createElement)("p", null, (0, _i18n.__)('Hi, this is a comment.'), (0, _element.createElement)("br", null), (0, _i18n.__)('To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.'), (0, _element.createElement)("br", null), (0, _i18n.__)('Commenter avatars come from'), ' ', (0, _element.createElement)("a", {
|
|
95
|
+
href: "https://gravatar.com/"
|
|
96
|
+
}, "Gravatar"), ".")), (0, _element.createElement)("div", {
|
|
97
|
+
className: "reply"
|
|
98
|
+
}, (0, _element.createElement)("a", {
|
|
99
|
+
className: "comment-reply-link",
|
|
100
|
+
href: "#top",
|
|
101
|
+
"aria-label": "Reply to A WordPress Commenter"
|
|
102
|
+
}, (0, _i18n.__)('Reply')))))), (0, _element.createElement)("div", {
|
|
103
|
+
className: "navigation"
|
|
104
|
+
}, (0, _element.createElement)("div", {
|
|
105
|
+
className: "alignleft"
|
|
106
|
+
}, (0, _element.createElement)("a", {
|
|
107
|
+
href: "#top"
|
|
108
|
+
}, "\xAB ", (0, _i18n.__)('Older Comments'))), (0, _element.createElement)("div", {
|
|
109
|
+
className: "alignright"
|
|
110
|
+
}, (0, _element.createElement)("a", {
|
|
111
|
+
href: "#top"
|
|
112
|
+
}, (0, _i18n.__)('Newer Comments'), " \xBB"))), (0, _element.createElement)(_form.default, {
|
|
113
|
+
postId: postId,
|
|
114
|
+
postType: postType
|
|
115
|
+
}));
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=placeholder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/comments/edit/placeholder.js"],"names":["PostCommentsPlaceholder","postType","postId","postTitle","avatarURL","select","blockEditorStore","getSettings","__experimentalDiscussionSettings","disabledRef"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { store as blockEditorStore } from '@wordpress/block-editor';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { useEntityProp } from '@wordpress/core-data';\nimport { useDisabled } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport CommentsForm from '../../post-comments-form/form';\n\nexport default function PostCommentsPlaceholder( { postType, postId } ) {\n\tlet [ postTitle ] = useEntityProp( 'postType', postType, 'title', postId );\n\tpostTitle = postTitle || __( 'Post Title' );\n\n\tconst { avatarURL } = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getSettings()\n\t\t\t\t.__experimentalDiscussionSettings\n\t);\n\n\tconst disabledRef = useDisabled();\n\n\treturn (\n\t\t<div\n\t\t\tclassName=\"wp-block-comments__legacy-placeholder\"\n\t\t\tref={ disabledRef }\n\t\t>\n\t\t\t<h3>\n\t\t\t\t{\n\t\t\t\t\t/* translators: %s: Post title. */\n\t\t\t\t\tsprintf( __( 'One response to %s' ), postTitle )\n\t\t\t\t}\n\t\t\t</h3>\n\n\t\t\t<div className=\"navigation\">\n\t\t\t\t<div className=\"alignleft\">\n\t\t\t\t\t<a href=\"#top\">« { __( 'Older Comments' ) }</a>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"alignright\">\n\t\t\t\t\t<a href=\"#top\">{ __( 'Newer Comments' ) } »</a>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<ol className=\"commentlist\">\n\t\t\t\t<li className=\"comment even thread-even depth-1\">\n\t\t\t\t\t<article className=\"comment-body\">\n\t\t\t\t\t\t<footer className=\"comment-meta\">\n\t\t\t\t\t\t\t<div className=\"comment-author vcard\">\n\t\t\t\t\t\t\t\t<img\n\t\t\t\t\t\t\t\t\talt=\"Commenter Avatar\"\n\t\t\t\t\t\t\t\t\tsrc={ avatarURL }\n\t\t\t\t\t\t\t\t\tclassName=\"avatar avatar-32 photo\"\n\t\t\t\t\t\t\t\t\theight=\"32\"\n\t\t\t\t\t\t\t\t\twidth=\"32\"\n\t\t\t\t\t\t\t\t\tloading=\"lazy\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<b className=\"fn\">\n\t\t\t\t\t\t\t\t\t<a href=\"#top\" className=\"url\">\n\t\t\t\t\t\t\t\t\t\t{ __( 'A WordPress Commenter' ) }\n\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t</b>{ ' ' }\n\t\t\t\t\t\t\t\t<span className=\"says\">{ __( 'says' ) }:</span>\n\t\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t\t<div className=\"comment-metadata\">\n\t\t\t\t\t\t\t\t<a href=\"#top\">\n\t\t\t\t\t\t\t\t\t<time dateTime=\"2000-01-01T00:00:00+00:00\">\n\t\t\t\t\t\t\t\t\t\t{ __( 'January 1, 2000 at 00:00 am' ) }\n\t\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t\t</a>{ ' ' }\n\t\t\t\t\t\t\t\t<span className=\"edit-link\">\n\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\tclassName=\"comment-edit-link\"\n\t\t\t\t\t\t\t\t\t\thref=\"#top\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ __( 'Edit' ) }\n\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</footer>\n\n\t\t\t\t\t\t<div className=\"comment-content\">\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t{ __( 'Hi, this is a comment.' ) }\n\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'To get started with moderating, editing, and deleting comments, please visit the Comments screen in the dashboard.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t{ __( 'Commenter avatars come from' ) }{ ' ' }\n\t\t\t\t\t\t\t\t<a href=\"https://gravatar.com/\">Gravatar</a>.\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div className=\"reply\">\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\tclassName=\"comment-reply-link\"\n\t\t\t\t\t\t\t\thref=\"#top\"\n\t\t\t\t\t\t\t\taria-label=\"Reply to A WordPress Commenter\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Reply' ) }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</article>\n\t\t\t\t</li>\n\t\t\t</ol>\n\n\t\t\t<div className=\"navigation\">\n\t\t\t\t<div className=\"alignleft\">\n\t\t\t\t\t<a href=\"#top\">« { __( 'Older Comments' ) }</a>\n\t\t\t\t</div>\n\t\t\t\t<div className=\"alignright\">\n\t\t\t\t\t<a href=\"#top\">{ __( 'Newer Comments' ) } »</a>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<CommentsForm postId={ postId } postType={ postType } />\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
const TEMPLATE = [['core/comments-title'], ['core/comment-template', {}, [['core/columns', {}, [['core/column', {
|
|
8
|
+
width: '40px'
|
|
9
|
+
}, [['core/avatar', {
|
|
10
|
+
size: 40,
|
|
11
|
+
style: {
|
|
12
|
+
border: {
|
|
13
|
+
radius: '20px'
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}]]], ['core/column', {}, [['core/comment-author-name', {
|
|
17
|
+
fontSize: 'small'
|
|
18
|
+
}], ['core/group', {
|
|
19
|
+
layout: {
|
|
20
|
+
type: 'flex'
|
|
21
|
+
},
|
|
22
|
+
style: {
|
|
23
|
+
spacing: {
|
|
24
|
+
margin: {
|
|
25
|
+
top: '0px',
|
|
26
|
+
bottom: '0px'
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}, [['core/comment-date', {
|
|
31
|
+
fontSize: 'small'
|
|
32
|
+
}], ['core/comment-edit-link', {
|
|
33
|
+
fontSize: 'small'
|
|
34
|
+
}]]], ['core/comment-content'], ['core/comment-reply-link', {
|
|
35
|
+
fontSize: 'small'
|
|
36
|
+
}]]]]]]], ['core/comments-pagination'], ['core/post-comments-form']];
|
|
37
|
+
var _default = TEMPLATE;
|
|
38
|
+
exports.default = _default;
|
|
39
|
+
//# sourceMappingURL=template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/comments/edit/template.js"],"names":["TEMPLATE","width","size","style","border","radius","fontSize","layout","type","spacing","margin","top","bottom"],"mappings":";;;;;;AAAA,MAAMA,QAAQ,GAAG,CAChB,CAAE,qBAAF,CADgB,EAEhB,CACC,uBADD,EAEC,EAFD,EAGC,CACC,CACC,cADD,EAEC,EAFD,EAGC,CACC,CACC,aADD,EAEC;AAAEC,EAAAA,KAAK,EAAE;AAAT,CAFD,EAGC,CACC,CACC,aADD,EAEC;AACCC,EAAAA,IAAI,EAAE,EADP;AAECC,EAAAA,KAAK,EAAE;AACNC,IAAAA,MAAM,EAAE;AAAEC,MAAAA,MAAM,EAAE;AAAV;AADF;AAFR,CAFD,CADD,CAHD,CADD,EAgBC,CACC,aADD,EAEC,EAFD,EAGC,CACC,CACC,0BADD,EAEC;AACCC,EAAAA,QAAQ,EAAE;AADX,CAFD,CADD,EAOC,CACC,YADD,EAEC;AACCC,EAAAA,MAAM,EAAE;AAAEC,IAAAA,IAAI,EAAE;AAAR,GADT;AAECL,EAAAA,KAAK,EAAE;AACNM,IAAAA,OAAO,EAAE;AACRC,MAAAA,MAAM,EAAE;AACPC,QAAAA,GAAG,EAAE,KADE;AAEPC,QAAAA,MAAM,EAAE;AAFD;AADA;AADH;AAFR,CAFD,EAaC,CACC,CACC,mBADD,EAEC;AACCN,EAAAA,QAAQ,EAAE;AADX,CAFD,CADD,EAOC,CACC,wBADD,EAEC;AACCA,EAAAA,QAAQ,EAAE;AADX,CAFD,CAPD,CAbD,CAPD,EAmCC,CAAE,sBAAF,CAnCD,EAoCC,CACC,yBADD,EAEC;AACCA,EAAAA,QAAQ,EAAE;AADX,CAFD,CApCD,CAHD,CAhBD,CAHD,CADD,CAHD,CAFgB,EA4EhB,CAAE,0BAAF,CA5EgB,EA6EhB,CAAE,yBAAF,CA7EgB,CAAjB;eAgFeN,Q","sourcesContent":["const TEMPLATE = [\n\t[ 'core/comments-title' ],\n\t[\n\t\t'core/comment-template',\n\t\t{},\n\t\t[\n\t\t\t[\n\t\t\t\t'core/columns',\n\t\t\t\t{},\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t'core/column',\n\t\t\t\t\t\t{ width: '40px' },\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t'core/avatar',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tsize: 40,\n\t\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\t\tborder: { radius: '20px' },\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t],\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t'core/column',\n\t\t\t\t\t\t{},\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t'core/comment-author-name',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tfontSize: 'small',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t'core/group',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tlayout: { type: 'flex' },\n\t\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\t\tspacing: {\n\t\t\t\t\t\t\t\t\t\t\tmargin: {\n\t\t\t\t\t\t\t\t\t\t\t\ttop: '0px',\n\t\t\t\t\t\t\t\t\t\t\t\tbottom: '0px',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t'core/comment-date',\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tfontSize: 'small',\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t'core/comment-edit-link',\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tfontSize: 'small',\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[ 'core/comment-content' ],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t'core/comment-reply-link',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tfontSize: 'small',\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t],\n\t\t\t\t\t],\n\t\t\t\t],\n\t\t\t],\n\t\t],\n\t],\n\t[ 'core/comments-pagination' ],\n\t[ 'core/post-comments-form' ],\n];\n\nexport default TEMPLATE;\n"]}
|