@wordpress/block-library 8.18.1-next.5a1d1283.0 → 8.19.1
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/README.md +1 -1
- package/build/block/edit.js +53 -2
- package/build/block/edit.js.map +1 -1
- package/build/button/edit.js +7 -4
- package/build/button/edit.js.map +1 -1
- package/build/button/index.js +11 -2
- package/build/button/index.js.map +1 -1
- package/build/button/save.js +10 -4
- package/build/button/save.js.map +1 -1
- package/build/buttons/edit.js +12 -3
- package/build/buttons/edit.js.map +1 -1
- package/build/code/edit.js +8 -2
- package/build/code/edit.js.map +1 -1
- package/build/code/index.js +7 -1
- package/build/code/index.js.map +1 -1
- package/build/column/index.js +1 -0
- package/build/column/index.js.map +1 -1
- package/build/columns/index.js +2 -0
- package/build/columns/index.js.map +1 -1
- package/build/file/edit.native.js +1 -1
- package/build/file/edit.native.js.map +1 -1
- package/build/file/index.js +2 -1
- package/build/file/index.js.map +1 -1
- package/build/file/utils/index.js +1 -15
- package/build/file/utils/index.js.map +1 -1
- package/build/file/view.js +14 -1
- package/build/file/view.js.map +1 -1
- package/build/footnotes/edit.js +12 -2
- package/build/footnotes/edit.js.map +1 -1
- package/build/gallery/edit.js +1 -1
- package/build/gallery/edit.js.map +1 -1
- package/build/group/edit.js +0 -1
- package/build/group/edit.js.map +1 -1
- package/build/group/index.js +4 -0
- package/build/group/index.js.map +1 -1
- package/build/heading/edit.js +0 -1
- package/build/heading/edit.js.map +1 -1
- package/build/heading/index.js +2 -0
- package/build/heading/index.js.map +1 -1
- package/build/heading/transforms.js +3 -6
- package/build/heading/transforms.js.map +1 -1
- package/build/image/deprecated.js +191 -7
- package/build/image/deprecated.js.map +1 -1
- package/build/image/edit.js +27 -12
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +75 -40
- package/build/image/image.js.map +1 -1
- package/build/image/index.js +7 -4
- package/build/image/index.js.map +1 -1
- package/build/image/{view-interactivity.js → view.js} +1 -1
- package/build/image/view.js.map +1 -0
- package/build/list/deprecated.js +93 -1
- package/build/list/deprecated.js.map +1 -1
- package/build/list/edit.js +10 -10
- package/build/list/edit.js.map +1 -1
- package/build/list/ordered-list-settings.js +10 -10
- package/build/list/ordered-list-settings.js.map +1 -1
- package/build/list/save.js +4 -2
- package/build/list/save.js.map +1 -1
- package/build/list/utils.js +21 -2
- package/build/list/utils.js.map +1 -1
- package/build/navigation/constants.js +1 -1
- package/build/navigation/constants.js.map +1 -1
- package/build/navigation/index.js +4 -2
- package/build/navigation/index.js.map +1 -1
- package/build/navigation/view.js +168 -82
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +3 -9
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/transforms.js +24 -0
- package/build/navigation-link/transforms.js.map +1 -1
- package/build/page-list/edit.js +2 -1
- package/build/page-list/edit.js.map +1 -1
- package/build/pattern/edit.js +2 -0
- package/build/pattern/edit.js.map +1 -1
- package/build/post-comments-form/edit.js +10 -2
- package/build/post-comments-form/edit.js.map +1 -1
- package/build/post-comments-form/form.js +5 -3
- package/build/post-comments-form/form.js.map +1 -1
- package/build/post-content/edit.js +8 -7
- package/build/post-content/edit.js.map +1 -1
- package/build/post-content/index.js +3 -0
- package/build/post-content/index.js.map +1 -1
- package/build/post-featured-image/overlay.js +2 -1
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/preformatted/edit.js +4 -1
- package/build/preformatted/edit.js.map +1 -1
- package/build/preformatted/index.js +1 -1
- package/build/preformatted/index.js.map +1 -1
- package/build/pullquote/deprecated.js +6 -7
- package/build/pullquote/deprecated.js.map +1 -1
- package/build/query/edit/enhanced-pagination-modal.js +56 -0
- package/build/query/edit/enhanced-pagination-modal.js.map +1 -0
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js +42 -0
- package/build/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -0
- package/build/query/edit/inspector-controls/index.js +8 -25
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/query-content.js +8 -2
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/utils.js +19 -0
- package/build/query/utils.js.map +1 -1
- package/build/query/view.js +21 -6
- package/build/query/view.js.map +1 -1
- package/build/search/index.js +1 -0
- package/build/search/index.js.map +1 -1
- package/build/search/view.js +81 -150
- package/build/search/view.js.map +1 -1
- package/build/social-link/edit.native.js +3 -1
- package/build/social-link/edit.native.js.map +1 -1
- package/build/table/edit.js +7 -7
- package/build/table/edit.js.map +1 -1
- package/build/table-of-contents/edit.js +2 -130
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/table-of-contents/hooks.js +145 -0
- package/build/table-of-contents/hooks.js.map +1 -0
- package/build/table-of-contents/index.js +2 -1
- package/build/table-of-contents/index.js.map +1 -1
- package/build/verse/edit.js +4 -1
- package/build/verse/edit.js.map +1 -1
- package/build/verse/index.js +1 -1
- package/build/verse/index.js.map +1 -1
- package/build-module/block/edit.js +54 -3
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/edit.js +7 -4
- package/build-module/button/edit.js.map +1 -1
- package/build-module/button/index.js +11 -2
- package/build-module/button/index.js.map +1 -1
- package/build-module/button/save.js +10 -4
- package/build-module/button/save.js.map +1 -1
- package/build-module/buttons/edit.js +12 -3
- package/build-module/buttons/edit.js.map +1 -1
- package/build-module/code/edit.js +8 -2
- package/build-module/code/edit.js.map +1 -1
- package/build-module/code/index.js +7 -1
- package/build-module/code/index.js.map +1 -1
- package/build-module/column/index.js +1 -0
- package/build-module/column/index.js.map +1 -1
- package/build-module/columns/index.js +2 -0
- package/build-module/columns/index.js.map +1 -1
- package/build-module/file/edit.native.js +1 -1
- package/build-module/file/edit.native.js.map +1 -1
- package/build-module/file/index.js +2 -1
- package/build-module/file/index.js.map +1 -1
- package/build-module/file/utils/index.js +0 -13
- package/build-module/file/utils/index.js.map +1 -1
- package/build-module/file/view.js +14 -2
- package/build-module/file/view.js.map +1 -1
- package/build-module/footnotes/edit.js +12 -2
- package/build-module/footnotes/edit.js.map +1 -1
- package/build-module/gallery/edit.js +1 -1
- package/build-module/gallery/edit.js.map +1 -1
- package/build-module/group/edit.js +0 -1
- package/build-module/group/edit.js.map +1 -1
- package/build-module/group/index.js +4 -0
- package/build-module/group/index.js.map +1 -1
- package/build-module/heading/edit.js +0 -1
- package/build-module/heading/edit.js.map +1 -1
- package/build-module/heading/index.js +2 -0
- package/build-module/heading/index.js.map +1 -1
- package/build-module/heading/transforms.js +3 -6
- package/build-module/heading/transforms.js.map +1 -1
- package/build-module/image/deprecated.js +191 -7
- package/build-module/image/deprecated.js.map +1 -1
- package/build-module/image/edit.js +27 -12
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/image.js +77 -42
- package/build-module/image/image.js.map +1 -1
- package/build-module/image/index.js +7 -4
- package/build-module/image/index.js.map +1 -1
- package/build-module/image/{view-interactivity.js → view.js} +1 -1
- package/build-module/image/view.js.map +1 -0
- package/build-module/list/deprecated.js +95 -3
- package/build-module/list/deprecated.js.map +1 -1
- package/build-module/list/edit.js +10 -10
- package/build-module/list/edit.js.map +1 -1
- package/build-module/list/ordered-list-settings.js +10 -10
- package/build-module/list/ordered-list-settings.js.map +1 -1
- package/build-module/list/save.js +4 -2
- package/build-module/list/save.js.map +1 -1
- package/build-module/list/utils.js +20 -2
- package/build-module/list/utils.js.map +1 -1
- package/build-module/navigation/constants.js +1 -1
- package/build-module/navigation/constants.js.map +1 -1
- package/build-module/navigation/index.js +4 -2
- package/build-module/navigation/index.js.map +1 -1
- package/build-module/navigation/view.js +168 -83
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +3 -9
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/transforms.js +24 -0
- package/build-module/navigation-link/transforms.js.map +1 -1
- package/build-module/page-list/edit.js +2 -1
- package/build-module/page-list/edit.js.map +1 -1
- package/build-module/pattern/edit.js +2 -0
- package/build-module/pattern/edit.js.map +1 -1
- package/build-module/post-comments-form/edit.js +10 -2
- package/build-module/post-comments-form/edit.js.map +1 -1
- package/build-module/post-comments-form/form.js +5 -3
- package/build-module/post-comments-form/form.js.map +1 -1
- package/build-module/post-content/edit.js +8 -7
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-content/index.js +3 -0
- package/build-module/post-content/index.js.map +1 -1
- package/build-module/post-featured-image/overlay.js +2 -1
- package/build-module/post-featured-image/overlay.js.map +1 -1
- package/build-module/preformatted/edit.js +4 -1
- package/build-module/preformatted/edit.js.map +1 -1
- package/build-module/preformatted/index.js +1 -1
- package/build-module/preformatted/index.js.map +1 -1
- package/build-module/pullquote/deprecated.js +6 -7
- package/build-module/pullquote/deprecated.js.map +1 -1
- package/build-module/query/edit/enhanced-pagination-modal.js +50 -0
- package/build-module/query/edit/enhanced-pagination-modal.js.map +1 -0
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js +35 -0
- package/build-module/query/edit/inspector-controls/enhanced-pagination-control.js.map +1 -0
- package/build-module/query/edit/inspector-controls/index.js +9 -26
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/query-content.js +8 -2
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/utils.js +17 -0
- package/build-module/query/utils.js.map +1 -1
- package/build-module/query/view.js +21 -6
- package/build-module/query/view.js.map +1 -1
- package/build-module/search/index.js +1 -0
- package/build-module/search/index.js.map +1 -1
- package/build-module/search/view.js +81 -151
- package/build-module/search/view.js.map +1 -1
- package/build-module/social-link/edit.native.js +3 -1
- package/build-module/social-link/edit.native.js.map +1 -1
- package/build-module/table/edit.js +7 -7
- package/build-module/table/edit.js.map +1 -1
- package/build-module/table-of-contents/edit.js +3 -131
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/table-of-contents/hooks.js +137 -0
- package/build-module/table-of-contents/hooks.js.map +1 -0
- package/build-module/table-of-contents/index.js +2 -1
- package/build-module/table-of-contents/index.js.map +1 -1
- package/build-module/verse/edit.js +4 -1
- package/build-module/verse/edit.js.map +1 -1
- package/build-module/verse/index.js +1 -1
- package/build-module/verse/index.js.map +1 -1
- package/build-style/cover/style-rtl.css +9 -0
- package/build-style/cover/style.css +9 -0
- package/build-style/editor-rtl.css +15 -9
- package/build-style/editor.css +15 -9
- package/build-style/file/style-rtl.css +5 -0
- package/build-style/file/style.css +5 -0
- package/build-style/heading/style-rtl.css +13 -0
- package/build-style/heading/style.css +13 -0
- package/build-style/navigation-link/editor-rtl.css +0 -9
- package/build-style/navigation-link/editor.css +0 -9
- package/build-style/paragraph/editor-rtl.css +5 -0
- package/build-style/paragraph/editor.css +5 -0
- package/build-style/paragraph/style-rtl.css +5 -0
- package/build-style/paragraph/style.css +5 -0
- package/build-style/post-navigation-link/style-rtl.css +3 -0
- package/build-style/post-navigation-link/style.css +3 -0
- package/build-style/query/editor-rtl.css +10 -0
- package/build-style/query/editor.css +10 -0
- package/build-style/query/style-rtl.css +1 -1
- package/build-style/query/style.css +1 -1
- package/build-style/reset-rtl.css +27 -27
- package/build-style/reset.css +27 -27
- package/build-style/style-rtl.css +35 -0
- package/build-style/style.css +35 -0
- package/package.json +33 -34
- package/src/audio/test/__snapshots__/edit.native.js.snap +78 -106
- package/src/avatar/index.php +2 -2
- package/src/block/edit.js +58 -2
- package/src/block/test/edit.native.js +2 -3
- package/src/button/block.json +11 -2
- package/src/button/edit.js +27 -11
- package/src/button/save.js +10 -4
- package/src/buttons/edit.js +13 -3
- package/src/buttons/test/edit.native.js +28 -24
- package/src/calendar/index.php +2 -2
- package/src/code/block.json +2 -1
- package/src/code/edit.js +13 -1
- package/src/code/index.js +5 -0
- package/src/column/block.json +1 -0
- package/src/columns/block.json +2 -0
- package/src/comment-template/index.php +1 -1
- package/src/comments-pagination-next/index.php +1 -1
- package/src/comments-pagination-previous/index.php +1 -1
- package/src/cover/style.scss +12 -1
- package/src/cover/test/edit.js +10 -10
- package/src/cover/test/edit.native.js +18 -27
- package/src/embed/test/index.native.js +30 -45
- package/src/file/block.json +2 -1
- package/src/file/edit.native.js +1 -1
- package/src/file/index.php +21 -21
- package/src/file/style.scss +6 -1
- package/src/file/test/__snapshots__/edit.native.js.snap +162 -218
- package/src/file/utils/index.js +0 -15
- package/src/file/view.js +14 -5
- package/src/footnotes/edit.js +13 -1
- package/src/gallery/edit.js +1 -1
- package/src/gallery/index.php +1 -1
- package/src/group/block.json +4 -0
- package/src/group/edit.js +0 -1
- package/src/heading/block.json +2 -0
- package/src/heading/edit.js +0 -1
- package/src/heading/style.scss +4 -0
- package/src/heading/transforms.js +1 -6
- package/src/image/block.json +7 -4
- package/src/image/deprecated.js +210 -7
- package/src/image/edit.js +43 -29
- package/src/image/image.js +86 -43
- package/src/image/index.php +253 -28
- package/src/latest-posts/index.php +1 -1
- package/src/list/deprecated.js +84 -3
- package/src/list/edit.js +6 -3
- package/src/list/ordered-list-settings.js +20 -5
- package/src/list/save.js +10 -1
- package/src/list/test/edit.native.js +2 -4
- package/src/list/utils.js +22 -1
- package/src/navigation/block.json +4 -2
- package/src/navigation/constants.js +1 -0
- package/src/navigation/index.php +87 -123
- package/src/navigation/view.js +192 -96
- package/src/navigation-link/edit.js +21 -36
- package/src/navigation-link/editor.scss +0 -8
- package/src/navigation-link/transforms.js +22 -0
- package/src/page-list/edit.js +2 -1
- package/src/paragraph/editor.scss +5 -0
- package/src/paragraph/style.scss +5 -0
- package/src/pattern/edit.js +1 -0
- package/src/pattern/index.php +5 -5
- package/src/post-comments-form/edit.js +10 -0
- package/src/post-comments-form/form.js +7 -1
- package/src/post-content/block.json +3 -0
- package/src/post-content/edit.js +14 -6
- package/src/post-excerpt/index.php +2 -2
- package/src/post-featured-image/index.php +2 -2
- package/src/post-featured-image/overlay.js +1 -0
- package/src/post-navigation-link/index.php +0 -5
- package/src/post-navigation-link/style.scss +4 -0
- package/src/post-template/index.php +1 -1
- package/src/post-terms/index.php +5 -2
- package/src/preformatted/edit.js +5 -0
- package/src/preformatted/index.js +1 -1
- package/src/pullquote/deprecated.js +8 -13
- package/src/query/edit/enhanced-pagination-modal.js +65 -0
- package/src/query/edit/inspector-controls/enhanced-pagination-control.js +49 -0
- package/src/query/edit/inspector-controls/index.js +9 -45
- package/src/query/edit/query-content.js +8 -0
- package/src/query/editor.scss +10 -0
- package/src/query/index.php +31 -16
- package/src/query/style.scss +2 -2
- package/src/query/utils.js +22 -0
- package/src/query/view.js +19 -10
- package/src/query-pagination-next/index.php +2 -1
- package/src/query-pagination-previous/index.php +2 -1
- package/src/reset.scss +1 -1
- package/src/search/block.json +1 -0
- package/src/search/index.php +47 -4
- package/src/search/test/__snapshots__/edit.native.js.snap +265 -363
- package/src/search/view.js +70 -169
- package/src/social-link/edit.native.js +1 -1
- package/src/social-link/editor.native.scss +4 -0
- package/src/table/edit.js +21 -19
- package/src/table-of-contents/block.json +2 -1
- package/src/table-of-contents/edit.js +5 -162
- package/src/table-of-contents/hooks.js +156 -0
- package/src/verse/edit.js +5 -0
- package/src/verse/index.js +1 -1
- package/src/verse/test/edit.native.js +2 -3
- package/build/file/view-interactivity.js +0 -22
- package/build/file/view-interactivity.js.map +0 -1
- package/build/image/view-interactivity.js.map +0 -1
- package/build/navigation/view-interactivity.js +0 -172
- package/build/navigation/view-interactivity.js.map +0 -1
- package/build/navigation/view-modal.js +0 -115
- package/build/navigation/view-modal.js.map +0 -1
- package/build-module/file/view-interactivity.js +0 -18
- package/build-module/file/view-interactivity.js.map +0 -1
- package/build-module/image/view-interactivity.js.map +0 -1
- package/build-module/navigation/view-interactivity.js +0 -169
- package/build-module/navigation/view-interactivity.js.map +0 -1
- package/build-module/navigation/view-modal.js +0 -112
- package/build-module/navigation/view-modal.js.map +0 -1
- package/src/file/view-interactivity.js +0 -18
- package/src/navigation/view-interactivity.js +0 -196
- package/src/navigation/view-modal.js +0 -127
- /package/src/image/{view-interactivity.js → view.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_compose","_components","_blockEditor","_i18n","_data","_viewport","_primitives","_blocks","_blob","_notices","_icons","_sharedIcon","_shared","_utils","_utils2","_gallery","_constants","_useImageSizes","_useGetNewImages","_useGetMedia","_gapStyles","MAX_COLUMNS","linkOptions","value","LINK_DESTINATION_ATTACHMENT","label","__","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","_x","ALLOWED_MEDIA_TYPES","allowedBlocks","PLACEHOLDER_TEXT","Platform","isNative","MOBILE_CONTROL_PROPS_RANGE_CONTROL","type","GalleryEdit","props","setAttributes","attributes","className","clientId","isSelected","insertBlocksAfter","isContentLocked","onFocus","columns","imageCrop","linkTarget","linkTo","sizeSlug","caption","showCaption","setShowCaption","useState","prevCaption","usePrevious","useEffect","captionRef","useCallback","node","focus","__unstableMarkNextChangeAsNotPersistent","replaceInnerBlocks","updateBlockAttributes","selectBlock","useDispatch","blockEditorStore","createSuccessNotice","createErrorNotice","noticesStore","getBlock","getSettings","preferredStyle","useSelect","select","settings","preferredStyleVariations","__experimentalPreferredStyleVariations","innerBlockImages","_select$getBlock$inne","innerBlocks","wasBlockJustInserted","images","useMemo","map","block","id","url","fromSavedContent","Boolean","originalContent","imageData","useGetMedia","newImages","useGetNewImages","forEach","newImage","buildImageAttributes","align","undefined","imageSizeOptions","useImageSizes","imageAttributes","image","find","newClassName","newLinkTarget","rel","getUpdatedLinkTargetSettings","pickRelevantMediaFiles","getHrefAndDestination","linkDestination","raw","alt","alt_text","isValidFileType","file","nativeFileData","mediaTypeSelector","media_type","some","mediaType","indexOf","updateImages","selectedImages","newFileUploads","Object","prototype","toString","call","imageArray","Array","from","createBlobURL","every","processedImages","filter","newOrderMap","reduce","result","index","existingImageBlocks","img","newImageList","existingImg","newBlocks","createBlock","concat","sort","a","b","length","onUploadError","message","setLinkTo","changedAttributes","blocks","push","linkToText","linkType","sprintf","setColumnsNumber","toggleImageCrop","getImageCropHelp","checked","toggleOpenInNewTab","openInNewTab","noticeText","updateImagesSize","newSizeSlug","getImageSizeAttributes","imageSize","size","window","wp","media","view","defaultProps","link","hasImages","hasImageIds","imagesUploading","mediaPlaceholderProps","web","addToGallery","disableMediaButtons","native","isAppender","autoOpenMediaUpload","mediaPlaceholder","createElement","MediaPlaceholder","handleUpload","icon","sharedIcon","labels","title","instructions","onSelect","accept","allowedTypes","multiple","onError","blockProps","useBlockProps","classnames","nativeInnerBlockProps","marginHorizontal","marginVertical","innerBlocksProps","useInnerBlocksProps","orientation","renderAppender","View","children","hasLinkTo","Fragment","InspectorControls","PanelBody","RangeControl","__nextHasNoMarginBottom","defaultColumnsNumber","onChange","min","max","Math","required","__next40pxDefaultSize","ToggleControl","help","SelectControl","options","hideCancelButton","isWeb","BaseControl","VisualLabel","Spinner","BlockControls","group","ToolbarButton","onClick","captionIcon","isPressed","MediaReplaceFlow","name","mediaIds","default","blockGap","style","spacing","ref","_default","compose","withViewportMatch","isNarrow","exports"],"sources":["@wordpress/block-library/src/gallery/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { compose, usePrevious } from '@wordpress/compose';\nimport {\n\tBaseControl,\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tRangeControl,\n\tSpinner,\n\tToolbarButton,\n} from '@wordpress/components';\nimport {\n\tstore as blockEditorStore,\n\tMediaPlaceholder,\n\tInspectorControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tMediaReplaceFlow,\n} from '@wordpress/block-editor';\nimport {\n\tPlatform,\n\tuseCallback,\n\tuseEffect,\n\tuseState,\n\tuseMemo,\n} from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { withViewportMatch } from '@wordpress/viewport';\nimport { View } from '@wordpress/primitives';\nimport { createBlock } from '@wordpress/blocks';\nimport { createBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { caption as captionIcon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { sharedIcon } from './shared-icon';\nimport { defaultColumnsNumber, pickRelevantMediaFiles } from './shared';\nimport { getHrefAndDestination } from './utils';\nimport {\n\tgetUpdatedLinkTargetSettings,\n\tgetImageSizeAttributes,\n} from '../image/utils';\nimport Gallery from './gallery';\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n} from './constants';\nimport useImageSizes from './use-image-sizes';\nimport useGetNewImages from './use-get-new-images';\nimport useGetMedia from './use-get-media';\nimport GapStyles from './gap-styles';\n\nconst MAX_COLUMNS = 8;\nconst linkOptions = [\n\t{ value: LINK_DESTINATION_ATTACHMENT, label: __( 'Attachment Page' ) },\n\t{ value: LINK_DESTINATION_MEDIA, label: __( 'Media File' ) },\n\t{\n\t\tvalue: LINK_DESTINATION_NONE,\n\t\tlabel: _x( 'None', 'Media item link option' ),\n\t},\n];\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst allowedBlocks = [ 'core/image' ];\n\nconst PLACEHOLDER_TEXT = Platform.isNative\n\t? __( 'ADD MEDIA' )\n\t: __( 'Drag images, upload new ones or select files from your library.' );\n\nconst MOBILE_CONTROL_PROPS_RANGE_CONTROL = Platform.isNative\n\t? { type: 'stepper' }\n\t: {};\n\nfunction GalleryEdit( props ) {\n\tconst {\n\t\tsetAttributes,\n\t\tattributes,\n\t\tclassName,\n\t\tclientId,\n\t\tisSelected,\n\t\tinsertBlocksAfter,\n\t\tisContentLocked,\n\t\tonFocus,\n\t} = props;\n\n\tconst { columns, imageCrop, linkTarget, linkTo, sizeSlug, caption } =\n\t\tattributes;\n\tconst [ showCaption, setShowCaption ] = useState( !! caption );\n\tconst prevCaption = usePrevious( caption );\n\n\t// We need to show the caption when changes come from\n\t// history navigation(undo/redo).\n\tuseEffect( () => {\n\t\tif ( caption && ! prevCaption ) {\n\t\t\tsetShowCaption( true );\n\t\t}\n\t}, [ caption, prevCaption ] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! caption ) {\n\t\t\tsetShowCaption( false );\n\t\t}\n\t}, [ isSelected, caption ] );\n\n\t// Focus the caption when we click to add one.\n\tconst captionRef = useCallback(\n\t\t( node ) => {\n\t\t\tif ( node && ! caption ) {\n\t\t\t\tnode.focus();\n\t\t\t}\n\t\t},\n\t\t[ caption ]\n\t);\n\n\tconst {\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\treplaceInnerBlocks,\n\t\tupdateBlockAttributes,\n\t\tselectBlock,\n\t} = useDispatch( blockEditorStore );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst { getBlock, getSettings, preferredStyle } = useSelect( ( select ) => {\n\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\tconst preferredStyleVariations =\n\t\t\tsettings.__experimentalPreferredStyleVariations;\n\t\treturn {\n\t\t\tgetBlock: select( blockEditorStore ).getBlock,\n\t\t\tgetSettings: select( blockEditorStore ).getSettings,\n\t\t\tpreferredStyle: preferredStyleVariations?.value?.[ 'core/image' ],\n\t\t};\n\t}, [] );\n\n\tconst innerBlockImages = useSelect(\n\t\t( select ) => {\n\t\t\tconst innerBlocks =\n\t\t\t\tselect( blockEditorStore ).getBlock( clientId )?.innerBlocks ??\n\t\t\t\t[];\n\t\t\treturn innerBlocks;\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst wasBlockJustInserted = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( blockEditorStore ).wasBlockJustInserted(\n\t\t\t\tclientId,\n\t\t\t\t'inserter_menu'\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst images = useMemo(\n\t\t() =>\n\t\t\tinnerBlockImages?.map( ( block ) => ( {\n\t\t\t\tclientId: block.clientId,\n\t\t\t\tid: block.attributes.id,\n\t\t\t\turl: block.attributes.url,\n\t\t\t\tattributes: block.attributes,\n\t\t\t\tfromSavedContent: Boolean( block.originalContent ),\n\t\t\t} ) ),\n\t\t[ innerBlockImages ]\n\t);\n\n\tconst imageData = useGetMedia( innerBlockImages );\n\n\tconst newImages = useGetNewImages( images, imageData );\n\n\tuseEffect( () => {\n\t\tnewImages?.forEach( ( newImage ) => {\n\t\t\t// Update the images data without creating new undo levels.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateBlockAttributes( newImage.clientId, {\n\t\t\t\t...buildImageAttributes( newImage.attributes ),\n\t\t\t\tid: newImage.id,\n\t\t\t\talign: undefined,\n\t\t\t} );\n\t\t} );\n\t}, [ newImages ] );\n\n\tconst imageSizeOptions = useImageSizes(\n\t\timageData,\n\t\tisSelected,\n\t\tgetSettings\n\t);\n\n\t/**\n\t * Determines the image attributes that should be applied to an image block\n\t * after the gallery updates.\n\t *\n\t * The gallery will receive the full collection of images when a new image\n\t * is added. As a result we need to reapply the image's original settings if\n\t * it already existed in the gallery. If the image is in fact new, we need\n\t * to apply the gallery's current settings to the image.\n\t *\n\t * @param {Object} imageAttributes Media object for the actual image.\n\t * @return {Object} Attributes to set on the new image block.\n\t */\n\tfunction buildImageAttributes( imageAttributes ) {\n\t\tconst image = imageAttributes.id\n\t\t\t? imageData.find( ( { id } ) => id === imageAttributes.id )\n\t\t\t: null;\n\n\t\tlet newClassName;\n\t\tif ( imageAttributes.className && imageAttributes.className !== '' ) {\n\t\t\tnewClassName = imageAttributes.className;\n\t\t} else {\n\t\t\tnewClassName = preferredStyle\n\t\t\t\t? `is-style-${ preferredStyle }`\n\t\t\t\t: undefined;\n\t\t}\n\n\t\tlet newLinkTarget;\n\t\tif ( imageAttributes.linkTarget || imageAttributes.rel ) {\n\t\t\t// When transformed from image blocks, the link destination and rel attributes are inherited.\n\t\t\tnewLinkTarget = {\n\t\t\t\tlinkTarget: imageAttributes.linkTarget,\n\t\t\t\trel: imageAttributes.rel,\n\t\t\t};\n\t\t} else {\n\t\t\t// When an image is added, update the link destination and rel attributes according to the gallery settings\n\t\t\tnewLinkTarget = getUpdatedLinkTargetSettings(\n\t\t\t\tlinkTarget,\n\t\t\t\tattributes\n\t\t\t);\n\t\t}\n\n\t\treturn {\n\t\t\t...pickRelevantMediaFiles( image, sizeSlug ),\n\t\t\t...getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tlinkTo,\n\t\t\t\timageAttributes?.linkDestination\n\t\t\t),\n\t\t\t...newLinkTarget,\n\t\t\tclassName: newClassName,\n\t\t\tsizeSlug,\n\t\t\tcaption: imageAttributes.caption || image.caption?.raw,\n\t\t\talt: imageAttributes.alt || image.alt_text,\n\t\t};\n\t}\n\n\tfunction isValidFileType( file ) {\n\t\t// It's necessary to retrieve the media type from the raw image data for already-uploaded images on native.\n\t\tconst nativeFileData =\n\t\t\tPlatform.isNative && file.id\n\t\t\t\t? imageData.find( ( { id } ) => id === file.id )\n\t\t\t\t: null;\n\n\t\tconst mediaTypeSelector = nativeFileData\n\t\t\t? nativeFileData?.media_type\n\t\t\t: file.type;\n\n\t\treturn (\n\t\t\tALLOWED_MEDIA_TYPES.some(\n\t\t\t\t( mediaType ) => mediaTypeSelector?.indexOf( mediaType ) === 0\n\t\t\t) || file.url?.indexOf( 'blob:' ) === 0\n\t\t);\n\t}\n\n\tfunction updateImages( selectedImages ) {\n\t\tconst newFileUploads =\n\t\t\tObject.prototype.toString.call( selectedImages ) ===\n\t\t\t'[object FileList]';\n\n\t\tconst imageArray = newFileUploads\n\t\t\t? Array.from( selectedImages ).map( ( file ) => {\n\t\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\t\treturn pickRelevantMediaFiles( {\n\t\t\t\t\t\t\turl: createBlobURL( file ),\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\n\t\t\t\t\treturn file;\n\t\t\t } )\n\t\t\t: selectedImages;\n\n\t\tif ( ! imageArray.every( isValidFileType ) ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\t__(\n\t\t\t\t\t'If uploading to a gallery all files need to be image formats'\n\t\t\t\t),\n\t\t\t\t{ id: 'gallery-upload-invalid-file', type: 'snackbar' }\n\t\t\t);\n\t\t}\n\n\t\tconst processedImages = imageArray\n\t\t\t.filter( ( file ) => file.url || isValidFileType( file ) )\n\t\t\t.map( ( file ) => {\n\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\treturn pickRelevantMediaFiles( {\n\t\t\t\t\t\turl: createBlobURL( file ),\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\treturn file;\n\t\t\t} );\n\n\t\t// Because we are reusing existing innerImage blocks any reordering\n\t\t// done in the media library will be lost so we need to reapply that ordering\n\t\t// once the new image blocks are merged in with existing.\n\t\tconst newOrderMap = processedImages.reduce(\n\t\t\t( result, image, index ) => (\n\t\t\t\t( result[ image.id ] = index ), result\n\t\t\t),\n\t\t\t{}\n\t\t);\n\n\t\tconst existingImageBlocks = ! newFileUploads\n\t\t\t? innerBlockImages.filter( ( block ) =>\n\t\t\t\t\tprocessedImages.find(\n\t\t\t\t\t\t( img ) => img.id === block.attributes.id\n\t\t\t\t\t)\n\t\t\t )\n\t\t\t: innerBlockImages;\n\n\t\tconst newImageList = processedImages.filter(\n\t\t\t( img ) =>\n\t\t\t\t! existingImageBlocks.find(\n\t\t\t\t\t( existingImg ) => img.id === existingImg.attributes.id\n\t\t\t\t)\n\t\t);\n\n\t\tconst newBlocks = newImageList.map( ( image ) => {\n\t\t\treturn createBlock( 'core/image', {\n\t\t\t\tid: image.id,\n\t\t\t\turl: image.url,\n\t\t\t\tcaption: image.caption,\n\t\t\t\talt: image.alt,\n\t\t\t} );\n\t\t} );\n\n\t\treplaceInnerBlocks(\n\t\t\tclientId,\n\t\t\texistingImageBlocks\n\t\t\t\t.concat( newBlocks )\n\t\t\t\t.sort(\n\t\t\t\t\t( a, b ) =>\n\t\t\t\t\t\tnewOrderMap[ a.attributes.id ] -\n\t\t\t\t\t\tnewOrderMap[ b.attributes.id ]\n\t\t\t\t)\n\t\t);\n\n\t\t// Select the first block to scroll into view when new blocks are added.\n\t\tif ( newBlocks?.length > 0 ) {\n\t\t\tselectBlock( newBlocks[ 0 ].clientId );\n\t\t}\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction setLinkTo( value ) {\n\t\tsetAttributes( { linkTo: value } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\t\t\tchangedAttributes[ block.clientId ] = getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tvalue\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst linkToText = [ ...linkOptions ].find(\n\t\t\t( linkType ) => linkType.value === value\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image links updated to: %s' ),\n\t\t\t\tlinkToText.label\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-linkTo',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tfunction setColumnsNumber( value ) {\n\t\tsetAttributes( { columns: value } );\n\t}\n\n\tfunction toggleImageCrop() {\n\t\tsetAttributes( { imageCrop: ! imageCrop } );\n\t}\n\n\tfunction getImageCropHelp( checked ) {\n\t\treturn checked\n\t\t\t? __( 'Thumbnails are cropped to align.' )\n\t\t\t: __( 'Thumbnails are not cropped.' );\n\t}\n\n\tfunction toggleOpenInNewTab( openInNewTab ) {\n\t\tconst newLinkTarget = openInNewTab ? '_blank' : undefined;\n\t\tsetAttributes( { linkTarget: newLinkTarget } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tchangedAttributes[ block.clientId ] = getUpdatedLinkTargetSettings(\n\t\t\t\tnewLinkTarget,\n\t\t\t\tblock.attributes\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst noticeText = openInNewTab\n\t\t\t? __( 'All gallery images updated to open in new tab' )\n\t\t\t: __( 'All gallery images updated to not open in new tab' );\n\t\tcreateSuccessNotice( noticeText, {\n\t\t\tid: 'gallery-attributes-openInNewTab',\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t}\n\n\tfunction updateImagesSize( newSizeSlug ) {\n\t\tsetAttributes( { sizeSlug: newSizeSlug } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\t\t\tchangedAttributes[ block.clientId ] = getImageSizeAttributes(\n\t\t\t\timage,\n\t\t\t\tnewSizeSlug\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst imageSize = imageSizeOptions.find(\n\t\t\t( size ) => size.value === newSizeSlug\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image sizes updated to: %s' ),\n\t\t\t\timageSize.label\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-sizeSlug',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tuseEffect( () => {\n\t\t// linkTo attribute must be saved so blocks don't break when changing image_default_link_type in options.php.\n\t\tif ( ! linkTo ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tlinkTo:\n\t\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\t\tLINK_DESTINATION_NONE,\n\t\t\t} );\n\t\t}\n\t}, [ linkTo ] );\n\n\tconst hasImages = !! images.length;\n\tconst hasImageIds = hasImages && images.some( ( image ) => !! image.id );\n\tconst imagesUploading = images.some( ( img ) =>\n\t\t! Platform.isNative\n\t\t\t? ! img.id && img.url?.indexOf( 'blob:' ) === 0\n\t\t\t: img.url?.indexOf( 'file:' ) === 0\n\t);\n\n\t// MediaPlaceholder props are different between web and native hence, we provide a platform-specific set.\n\tconst mediaPlaceholderProps = Platform.select( {\n\t\tweb: {\n\t\t\taddToGallery: false,\n\t\t\tdisableMediaButtons: imagesUploading,\n\t\t\tvalue: {},\n\t\t},\n\t\tnative: {\n\t\t\taddToGallery: hasImageIds,\n\t\t\tisAppender: hasImages,\n\t\t\tdisableMediaButtons:\n\t\t\t\t( hasImages && ! isSelected ) || imagesUploading,\n\t\t\tvalue: hasImageIds ? images : {},\n\t\t\tautoOpenMediaUpload:\n\t\t\t\t! hasImages && isSelected && wasBlockJustInserted,\n\t\t\tonFocus,\n\t\t},\n\t} );\n\tconst mediaPlaceholder = (\n\t\t<MediaPlaceholder\n\t\t\thandleUpload={ false }\n\t\t\ticon={ sharedIcon }\n\t\t\tlabels={ {\n\t\t\t\ttitle: __( 'Gallery' ),\n\t\t\t\tinstructions: PLACEHOLDER_TEXT,\n\t\t\t} }\n\t\t\tonSelect={ updateImages }\n\t\t\taccept=\"image/*\"\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\tmultiple\n\t\t\tonError={ onUploadError }\n\t\t\t{ ...mediaPlaceholderProps }\n\t\t/>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( className, 'has-nested-images' ),\n\t} );\n\n\tconst nativeInnerBlockProps = Platform.isNative && {\n\t\tmarginHorizontal: 0,\n\t\tmarginVertical: 0,\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks,\n\t\torientation: 'horizontal',\n\t\trenderAppender: false,\n\t\t...nativeInnerBlockProps,\n\t} );\n\n\tif ( ! hasImages ) {\n\t\treturn (\n\t\t\t<View { ...innerBlocksProps }>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t\t{ mediaPlaceholder }\n\t\t\t</View>\n\t\t);\n\t}\n\n\tconst hasLinkTo = linkTo && linkTo !== 'none';\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t{ images.length > 1 && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\t\tcolumns\n\t\t\t\t\t\t\t\t\t? columns\n\t\t\t\t\t\t\t\t\t: defaultColumnsNumber( images.length )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonChange={ setColumnsNumber }\n\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\tmax={ Math.min( MAX_COLUMNS, images.length ) }\n\t\t\t\t\t\t\t{ ...MOBILE_CONTROL_PROPS_RANGE_CONTROL }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Crop images' ) }\n\t\t\t\t\t\tchecked={ !! imageCrop }\n\t\t\t\t\t\tonChange={ toggleImageCrop }\n\t\t\t\t\t\thelp={ getImageCropHelp }\n\t\t\t\t\t/>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link to' ) }\n\t\t\t\t\t\tvalue={ linkTo }\n\t\t\t\t\t\tonChange={ setLinkTo }\n\t\t\t\t\t\toptions={ linkOptions }\n\t\t\t\t\t\thideCancelButton={ true }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t/>\n\t\t\t\t\t{ hasLinkTo && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\tonChange={ toggleOpenInNewTab }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ imageSizeOptions?.length > 0 && (\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Select the size of the source images.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChange={ updateImagesSize }\n\t\t\t\t\t\t\thideCancelButton={ true }\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ Platform.isWeb && ! imageSizeOptions && hasImageIds && (\n\t\t\t\t\t\t<BaseControl className={ 'gallery-image-sizes' }>\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Resolution' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<View className={ 'gallery-image-sizes__loading' }>\n\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t{ __( 'Loading options…' ) }\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ Platform.isWeb && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t\t{ ! isContentLocked && (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tsetShowCaption( ! showCaption );\n\t\t\t\t\t\t\t\t\tif ( showCaption && caption ) {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { caption: undefined } );\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\ticon={ captionIcon }\n\t\t\t\t\t\t\t\tisPressed={ showCaption }\n\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\tshowCaption\n\t\t\t\t\t\t\t\t\t\t? __( 'Remove caption' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Add caption' )\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</BlockControls>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\t\thandleUpload={ false }\n\t\t\t\t\t\t\tonSelect={ updateImages }\n\t\t\t\t\t\t\tname={ __( 'Add' ) }\n\t\t\t\t\t\t\tmultiple={ true }\n\t\t\t\t\t\t\tmediaIds={ images\n\t\t\t\t\t\t\t\t.filter( ( image ) => image.id )\n\t\t\t\t\t\t\t\t.map( ( image ) => image.id ) }\n\t\t\t\t\t\t\taddToGallery={ hasImageIds }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<GapStyles\n\t\t\t\t\t\tblockGap={ attributes.style?.spacing?.blockGap }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<Gallery\n\t\t\t\t{ ...props }\n\t\t\t\tshowCaption={ showCaption }\n\t\t\t\tref={ Platform.isWeb ? captionRef : undefined }\n\t\t\t\timages={ images }\n\t\t\t\tmediaPlaceholder={\n\t\t\t\t\t! hasImages || Platform.isNative\n\t\t\t\t\t\t? mediaPlaceholder\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\tblockProps={ innerBlocksProps }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t/>\n\t\t</>\n\t);\n}\nexport default compose( [ withViewportMatch( { isNarrow: '< small' } ) ] )(\n\tGalleryEdit\n);\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_compose","_components","_blockEditor","_i18n","_data","_viewport","_primitives","_blocks","_blob","_notices","_icons","_sharedIcon","_shared","_utils","_utils2","_gallery","_constants","_useImageSizes","_useGetNewImages","_useGetMedia","_gapStyles","MAX_COLUMNS","linkOptions","value","LINK_DESTINATION_ATTACHMENT","label","__","LINK_DESTINATION_MEDIA","LINK_DESTINATION_NONE","_x","ALLOWED_MEDIA_TYPES","allowedBlocks","PLACEHOLDER_TEXT","Platform","isNative","MOBILE_CONTROL_PROPS_RANGE_CONTROL","type","GalleryEdit","props","setAttributes","attributes","className","clientId","isSelected","insertBlocksAfter","isContentLocked","onFocus","columns","imageCrop","linkTarget","linkTo","sizeSlug","caption","showCaption","setShowCaption","useState","prevCaption","usePrevious","useEffect","captionRef","useCallback","node","focus","__unstableMarkNextChangeAsNotPersistent","replaceInnerBlocks","updateBlockAttributes","selectBlock","useDispatch","blockEditorStore","createSuccessNotice","createErrorNotice","noticesStore","getBlock","getSettings","preferredStyle","useSelect","select","settings","preferredStyleVariations","__experimentalPreferredStyleVariations","innerBlockImages","_select$getBlock$inne","innerBlocks","wasBlockJustInserted","images","useMemo","map","block","id","url","fromSavedContent","Boolean","originalContent","imageData","useGetMedia","newImages","useGetNewImages","forEach","newImage","buildImageAttributes","align","undefined","imageSizeOptions","useImageSizes","imageAttributes","image","find","newClassName","newLinkTarget","rel","getUpdatedLinkTargetSettings","pickRelevantMediaFiles","getHrefAndDestination","linkDestination","raw","alt","alt_text","isValidFileType","file","nativeFileData","mediaTypeSelector","media_type","some","mediaType","indexOf","updateImages","selectedImages","newFileUploads","Object","prototype","toString","call","imageArray","Array","from","createBlobURL","every","processedImages","filter","newOrderMap","reduce","result","index","existingImageBlocks","img","newImageList","existingImg","newBlocks","createBlock","concat","sort","a","b","length","onUploadError","message","setLinkTo","changedAttributes","blocks","push","linkToText","linkType","sprintf","setColumnsNumber","toggleImageCrop","getImageCropHelp","checked","toggleOpenInNewTab","openInNewTab","noticeText","updateImagesSize","newSizeSlug","getImageSizeAttributes","imageSize","size","window","wp","media","view","defaultProps","link","hasImages","hasImageIds","imagesUploading","mediaPlaceholderProps","web","addToGallery","disableMediaButtons","native","isAppender","autoOpenMediaUpload","mediaPlaceholder","createElement","MediaPlaceholder","handleUpload","icon","sharedIcon","labels","title","instructions","onSelect","accept","allowedTypes","multiple","onError","blockProps","useBlockProps","classnames","nativeInnerBlockProps","marginHorizontal","marginVertical","innerBlocksProps","useInnerBlocksProps","orientation","renderAppender","View","children","hasLinkTo","Fragment","InspectorControls","PanelBody","RangeControl","__nextHasNoMarginBottom","defaultColumnsNumber","onChange","min","max","Math","required","__next40pxDefaultSize","ToggleControl","help","SelectControl","options","hideCancelButton","isWeb","BaseControl","VisualLabel","Spinner","BlockControls","group","ToolbarButton","onClick","captionIcon","isPressed","MediaReplaceFlow","name","mediaIds","default","blockGap","style","spacing","ref","_default","compose","withViewportMatch","isNarrow","exports"],"sources":["@wordpress/block-library/src/gallery/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { compose, usePrevious } from '@wordpress/compose';\nimport {\n\tBaseControl,\n\tPanelBody,\n\tSelectControl,\n\tToggleControl,\n\tRangeControl,\n\tSpinner,\n\tToolbarButton,\n} from '@wordpress/components';\nimport {\n\tstore as blockEditorStore,\n\tMediaPlaceholder,\n\tInspectorControls,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tBlockControls,\n\tMediaReplaceFlow,\n} from '@wordpress/block-editor';\nimport {\n\tPlatform,\n\tuseCallback,\n\tuseEffect,\n\tuseState,\n\tuseMemo,\n} from '@wordpress/element';\nimport { __, _x, sprintf } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { withViewportMatch } from '@wordpress/viewport';\nimport { View } from '@wordpress/primitives';\nimport { createBlock } from '@wordpress/blocks';\nimport { createBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { caption as captionIcon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { sharedIcon } from './shared-icon';\nimport { defaultColumnsNumber, pickRelevantMediaFiles } from './shared';\nimport { getHrefAndDestination } from './utils';\nimport {\n\tgetUpdatedLinkTargetSettings,\n\tgetImageSizeAttributes,\n} from '../image/utils';\nimport Gallery from './gallery';\nimport {\n\tLINK_DESTINATION_ATTACHMENT,\n\tLINK_DESTINATION_MEDIA,\n\tLINK_DESTINATION_NONE,\n} from './constants';\nimport useImageSizes from './use-image-sizes';\nimport useGetNewImages from './use-get-new-images';\nimport useGetMedia from './use-get-media';\nimport GapStyles from './gap-styles';\n\nconst MAX_COLUMNS = 8;\nconst linkOptions = [\n\t{ value: LINK_DESTINATION_ATTACHMENT, label: __( 'Attachment Page' ) },\n\t{ value: LINK_DESTINATION_MEDIA, label: __( 'Media File' ) },\n\t{\n\t\tvalue: LINK_DESTINATION_NONE,\n\t\tlabel: _x( 'None', 'Media item link option' ),\n\t},\n];\nconst ALLOWED_MEDIA_TYPES = [ 'image' ];\nconst allowedBlocks = [ 'core/image' ];\n\nconst PLACEHOLDER_TEXT = Platform.isNative\n\t? __( 'Add media' )\n\t: __( 'Drag images, upload new ones or select files from your library.' );\n\nconst MOBILE_CONTROL_PROPS_RANGE_CONTROL = Platform.isNative\n\t? { type: 'stepper' }\n\t: {};\n\nfunction GalleryEdit( props ) {\n\tconst {\n\t\tsetAttributes,\n\t\tattributes,\n\t\tclassName,\n\t\tclientId,\n\t\tisSelected,\n\t\tinsertBlocksAfter,\n\t\tisContentLocked,\n\t\tonFocus,\n\t} = props;\n\n\tconst { columns, imageCrop, linkTarget, linkTo, sizeSlug, caption } =\n\t\tattributes;\n\tconst [ showCaption, setShowCaption ] = useState( !! caption );\n\tconst prevCaption = usePrevious( caption );\n\n\t// We need to show the caption when changes come from\n\t// history navigation(undo/redo).\n\tuseEffect( () => {\n\t\tif ( caption && ! prevCaption ) {\n\t\t\tsetShowCaption( true );\n\t\t}\n\t}, [ caption, prevCaption ] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! caption ) {\n\t\t\tsetShowCaption( false );\n\t\t}\n\t}, [ isSelected, caption ] );\n\n\t// Focus the caption when we click to add one.\n\tconst captionRef = useCallback(\n\t\t( node ) => {\n\t\t\tif ( node && ! caption ) {\n\t\t\t\tnode.focus();\n\t\t\t}\n\t\t},\n\t\t[ caption ]\n\t);\n\n\tconst {\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\treplaceInnerBlocks,\n\t\tupdateBlockAttributes,\n\t\tselectBlock,\n\t} = useDispatch( blockEditorStore );\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\n\tconst { getBlock, getSettings, preferredStyle } = useSelect( ( select ) => {\n\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\tconst preferredStyleVariations =\n\t\t\tsettings.__experimentalPreferredStyleVariations;\n\t\treturn {\n\t\t\tgetBlock: select( blockEditorStore ).getBlock,\n\t\t\tgetSettings: select( blockEditorStore ).getSettings,\n\t\t\tpreferredStyle: preferredStyleVariations?.value?.[ 'core/image' ],\n\t\t};\n\t}, [] );\n\n\tconst innerBlockImages = useSelect(\n\t\t( select ) => {\n\t\t\tconst innerBlocks =\n\t\t\t\tselect( blockEditorStore ).getBlock( clientId )?.innerBlocks ??\n\t\t\t\t[];\n\t\t\treturn innerBlocks;\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst wasBlockJustInserted = useSelect(\n\t\t( select ) => {\n\t\t\treturn select( blockEditorStore ).wasBlockJustInserted(\n\t\t\t\tclientId,\n\t\t\t\t'inserter_menu'\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst images = useMemo(\n\t\t() =>\n\t\t\tinnerBlockImages?.map( ( block ) => ( {\n\t\t\t\tclientId: block.clientId,\n\t\t\t\tid: block.attributes.id,\n\t\t\t\turl: block.attributes.url,\n\t\t\t\tattributes: block.attributes,\n\t\t\t\tfromSavedContent: Boolean( block.originalContent ),\n\t\t\t} ) ),\n\t\t[ innerBlockImages ]\n\t);\n\n\tconst imageData = useGetMedia( innerBlockImages );\n\n\tconst newImages = useGetNewImages( images, imageData );\n\n\tuseEffect( () => {\n\t\tnewImages?.forEach( ( newImage ) => {\n\t\t\t// Update the images data without creating new undo levels.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateBlockAttributes( newImage.clientId, {\n\t\t\t\t...buildImageAttributes( newImage.attributes ),\n\t\t\t\tid: newImage.id,\n\t\t\t\talign: undefined,\n\t\t\t} );\n\t\t} );\n\t}, [ newImages ] );\n\n\tconst imageSizeOptions = useImageSizes(\n\t\timageData,\n\t\tisSelected,\n\t\tgetSettings\n\t);\n\n\t/**\n\t * Determines the image attributes that should be applied to an image block\n\t * after the gallery updates.\n\t *\n\t * The gallery will receive the full collection of images when a new image\n\t * is added. As a result we need to reapply the image's original settings if\n\t * it already existed in the gallery. If the image is in fact new, we need\n\t * to apply the gallery's current settings to the image.\n\t *\n\t * @param {Object} imageAttributes Media object for the actual image.\n\t * @return {Object} Attributes to set on the new image block.\n\t */\n\tfunction buildImageAttributes( imageAttributes ) {\n\t\tconst image = imageAttributes.id\n\t\t\t? imageData.find( ( { id } ) => id === imageAttributes.id )\n\t\t\t: null;\n\n\t\tlet newClassName;\n\t\tif ( imageAttributes.className && imageAttributes.className !== '' ) {\n\t\t\tnewClassName = imageAttributes.className;\n\t\t} else {\n\t\t\tnewClassName = preferredStyle\n\t\t\t\t? `is-style-${ preferredStyle }`\n\t\t\t\t: undefined;\n\t\t}\n\n\t\tlet newLinkTarget;\n\t\tif ( imageAttributes.linkTarget || imageAttributes.rel ) {\n\t\t\t// When transformed from image blocks, the link destination and rel attributes are inherited.\n\t\t\tnewLinkTarget = {\n\t\t\t\tlinkTarget: imageAttributes.linkTarget,\n\t\t\t\trel: imageAttributes.rel,\n\t\t\t};\n\t\t} else {\n\t\t\t// When an image is added, update the link destination and rel attributes according to the gallery settings\n\t\t\tnewLinkTarget = getUpdatedLinkTargetSettings(\n\t\t\t\tlinkTarget,\n\t\t\t\tattributes\n\t\t\t);\n\t\t}\n\n\t\treturn {\n\t\t\t...pickRelevantMediaFiles( image, sizeSlug ),\n\t\t\t...getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tlinkTo,\n\t\t\t\timageAttributes?.linkDestination\n\t\t\t),\n\t\t\t...newLinkTarget,\n\t\t\tclassName: newClassName,\n\t\t\tsizeSlug,\n\t\t\tcaption: imageAttributes.caption || image.caption?.raw,\n\t\t\talt: imageAttributes.alt || image.alt_text,\n\t\t};\n\t}\n\n\tfunction isValidFileType( file ) {\n\t\t// It's necessary to retrieve the media type from the raw image data for already-uploaded images on native.\n\t\tconst nativeFileData =\n\t\t\tPlatform.isNative && file.id\n\t\t\t\t? imageData.find( ( { id } ) => id === file.id )\n\t\t\t\t: null;\n\n\t\tconst mediaTypeSelector = nativeFileData\n\t\t\t? nativeFileData?.media_type\n\t\t\t: file.type;\n\n\t\treturn (\n\t\t\tALLOWED_MEDIA_TYPES.some(\n\t\t\t\t( mediaType ) => mediaTypeSelector?.indexOf( mediaType ) === 0\n\t\t\t) || file.url?.indexOf( 'blob:' ) === 0\n\t\t);\n\t}\n\n\tfunction updateImages( selectedImages ) {\n\t\tconst newFileUploads =\n\t\t\tObject.prototype.toString.call( selectedImages ) ===\n\t\t\t'[object FileList]';\n\n\t\tconst imageArray = newFileUploads\n\t\t\t? Array.from( selectedImages ).map( ( file ) => {\n\t\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\t\treturn pickRelevantMediaFiles( {\n\t\t\t\t\t\t\turl: createBlobURL( file ),\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\n\t\t\t\t\treturn file;\n\t\t\t } )\n\t\t\t: selectedImages;\n\n\t\tif ( ! imageArray.every( isValidFileType ) ) {\n\t\t\tcreateErrorNotice(\n\t\t\t\t__(\n\t\t\t\t\t'If uploading to a gallery all files need to be image formats'\n\t\t\t\t),\n\t\t\t\t{ id: 'gallery-upload-invalid-file', type: 'snackbar' }\n\t\t\t);\n\t\t}\n\n\t\tconst processedImages = imageArray\n\t\t\t.filter( ( file ) => file.url || isValidFileType( file ) )\n\t\t\t.map( ( file ) => {\n\t\t\t\tif ( ! file.url ) {\n\t\t\t\t\treturn pickRelevantMediaFiles( {\n\t\t\t\t\t\turl: createBlobURL( file ),\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\treturn file;\n\t\t\t} );\n\n\t\t// Because we are reusing existing innerImage blocks any reordering\n\t\t// done in the media library will be lost so we need to reapply that ordering\n\t\t// once the new image blocks are merged in with existing.\n\t\tconst newOrderMap = processedImages.reduce(\n\t\t\t( result, image, index ) => (\n\t\t\t\t( result[ image.id ] = index ), result\n\t\t\t),\n\t\t\t{}\n\t\t);\n\n\t\tconst existingImageBlocks = ! newFileUploads\n\t\t\t? innerBlockImages.filter( ( block ) =>\n\t\t\t\t\tprocessedImages.find(\n\t\t\t\t\t\t( img ) => img.id === block.attributes.id\n\t\t\t\t\t)\n\t\t\t )\n\t\t\t: innerBlockImages;\n\n\t\tconst newImageList = processedImages.filter(\n\t\t\t( img ) =>\n\t\t\t\t! existingImageBlocks.find(\n\t\t\t\t\t( existingImg ) => img.id === existingImg.attributes.id\n\t\t\t\t)\n\t\t);\n\n\t\tconst newBlocks = newImageList.map( ( image ) => {\n\t\t\treturn createBlock( 'core/image', {\n\t\t\t\tid: image.id,\n\t\t\t\turl: image.url,\n\t\t\t\tcaption: image.caption,\n\t\t\t\talt: image.alt,\n\t\t\t} );\n\t\t} );\n\n\t\treplaceInnerBlocks(\n\t\t\tclientId,\n\t\t\texistingImageBlocks\n\t\t\t\t.concat( newBlocks )\n\t\t\t\t.sort(\n\t\t\t\t\t( a, b ) =>\n\t\t\t\t\t\tnewOrderMap[ a.attributes.id ] -\n\t\t\t\t\t\tnewOrderMap[ b.attributes.id ]\n\t\t\t\t)\n\t\t);\n\n\t\t// Select the first block to scroll into view when new blocks are added.\n\t\tif ( newBlocks?.length > 0 ) {\n\t\t\tselectBlock( newBlocks[ 0 ].clientId );\n\t\t}\n\t}\n\n\tfunction onUploadError( message ) {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t}\n\n\tfunction setLinkTo( value ) {\n\t\tsetAttributes( { linkTo: value } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\t\t\tchangedAttributes[ block.clientId ] = getHrefAndDestination(\n\t\t\t\timage,\n\t\t\t\tvalue\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst linkToText = [ ...linkOptions ].find(\n\t\t\t( linkType ) => linkType.value === value\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image links updated to: %s' ),\n\t\t\t\tlinkToText.label\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-linkTo',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tfunction setColumnsNumber( value ) {\n\t\tsetAttributes( { columns: value } );\n\t}\n\n\tfunction toggleImageCrop() {\n\t\tsetAttributes( { imageCrop: ! imageCrop } );\n\t}\n\n\tfunction getImageCropHelp( checked ) {\n\t\treturn checked\n\t\t\t? __( 'Thumbnails are cropped to align.' )\n\t\t\t: __( 'Thumbnails are not cropped.' );\n\t}\n\n\tfunction toggleOpenInNewTab( openInNewTab ) {\n\t\tconst newLinkTarget = openInNewTab ? '_blank' : undefined;\n\t\tsetAttributes( { linkTarget: newLinkTarget } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tchangedAttributes[ block.clientId ] = getUpdatedLinkTargetSettings(\n\t\t\t\tnewLinkTarget,\n\t\t\t\tblock.attributes\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst noticeText = openInNewTab\n\t\t\t? __( 'All gallery images updated to open in new tab' )\n\t\t\t: __( 'All gallery images updated to not open in new tab' );\n\t\tcreateSuccessNotice( noticeText, {\n\t\t\tid: 'gallery-attributes-openInNewTab',\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t}\n\n\tfunction updateImagesSize( newSizeSlug ) {\n\t\tsetAttributes( { sizeSlug: newSizeSlug } );\n\t\tconst changedAttributes = {};\n\t\tconst blocks = [];\n\t\tgetBlock( clientId ).innerBlocks.forEach( ( block ) => {\n\t\t\tblocks.push( block.clientId );\n\t\t\tconst image = block.attributes.id\n\t\t\t\t? imageData.find( ( { id } ) => id === block.attributes.id )\n\t\t\t\t: null;\n\t\t\tchangedAttributes[ block.clientId ] = getImageSizeAttributes(\n\t\t\t\timage,\n\t\t\t\tnewSizeSlug\n\t\t\t);\n\t\t} );\n\t\tupdateBlockAttributes( blocks, changedAttributes, true );\n\t\tconst imageSize = imageSizeOptions.find(\n\t\t\t( size ) => size.value === newSizeSlug\n\t\t);\n\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: image size settings */\n\t\t\t\t__( 'All gallery image sizes updated to: %s' ),\n\t\t\t\timageSize.label\n\t\t\t),\n\t\t\t{\n\t\t\t\tid: 'gallery-attributes-sizeSlug',\n\t\t\t\ttype: 'snackbar',\n\t\t\t}\n\t\t);\n\t}\n\n\tuseEffect( () => {\n\t\t// linkTo attribute must be saved so blocks don't break when changing image_default_link_type in options.php.\n\t\tif ( ! linkTo ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tlinkTo:\n\t\t\t\t\twindow?.wp?.media?.view?.settings?.defaultProps?.link ||\n\t\t\t\t\tLINK_DESTINATION_NONE,\n\t\t\t} );\n\t\t}\n\t}, [ linkTo ] );\n\n\tconst hasImages = !! images.length;\n\tconst hasImageIds = hasImages && images.some( ( image ) => !! image.id );\n\tconst imagesUploading = images.some( ( img ) =>\n\t\t! Platform.isNative\n\t\t\t? ! img.id && img.url?.indexOf( 'blob:' ) === 0\n\t\t\t: img.url?.indexOf( 'file:' ) === 0\n\t);\n\n\t// MediaPlaceholder props are different between web and native hence, we provide a platform-specific set.\n\tconst mediaPlaceholderProps = Platform.select( {\n\t\tweb: {\n\t\t\taddToGallery: false,\n\t\t\tdisableMediaButtons: imagesUploading,\n\t\t\tvalue: {},\n\t\t},\n\t\tnative: {\n\t\t\taddToGallery: hasImageIds,\n\t\t\tisAppender: hasImages,\n\t\t\tdisableMediaButtons:\n\t\t\t\t( hasImages && ! isSelected ) || imagesUploading,\n\t\t\tvalue: hasImageIds ? images : {},\n\t\t\tautoOpenMediaUpload:\n\t\t\t\t! hasImages && isSelected && wasBlockJustInserted,\n\t\t\tonFocus,\n\t\t},\n\t} );\n\tconst mediaPlaceholder = (\n\t\t<MediaPlaceholder\n\t\t\thandleUpload={ false }\n\t\t\ticon={ sharedIcon }\n\t\t\tlabels={ {\n\t\t\t\ttitle: __( 'Gallery' ),\n\t\t\t\tinstructions: PLACEHOLDER_TEXT,\n\t\t\t} }\n\t\t\tonSelect={ updateImages }\n\t\t\taccept=\"image/*\"\n\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\tmultiple\n\t\t\tonError={ onUploadError }\n\t\t\t{ ...mediaPlaceholderProps }\n\t\t/>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( className, 'has-nested-images' ),\n\t} );\n\n\tconst nativeInnerBlockProps = Platform.isNative && {\n\t\tmarginHorizontal: 0,\n\t\tmarginVertical: 0,\n\t};\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tallowedBlocks,\n\t\torientation: 'horizontal',\n\t\trenderAppender: false,\n\t\t...nativeInnerBlockProps,\n\t} );\n\n\tif ( ! hasImages ) {\n\t\treturn (\n\t\t\t<View { ...innerBlocksProps }>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t\t{ mediaPlaceholder }\n\t\t\t</View>\n\t\t);\n\t}\n\n\tconst hasLinkTo = linkTo && linkTo !== 'none';\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t{ images.length > 1 && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\t\tcolumns\n\t\t\t\t\t\t\t\t\t? columns\n\t\t\t\t\t\t\t\t\t: defaultColumnsNumber( images.length )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonChange={ setColumnsNumber }\n\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\tmax={ Math.min( MAX_COLUMNS, images.length ) }\n\t\t\t\t\t\t\t{ ...MOBILE_CONTROL_PROPS_RANGE_CONTROL }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Crop images' ) }\n\t\t\t\t\t\tchecked={ !! imageCrop }\n\t\t\t\t\t\tonChange={ toggleImageCrop }\n\t\t\t\t\t\thelp={ getImageCropHelp }\n\t\t\t\t\t/>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link to' ) }\n\t\t\t\t\t\tvalue={ linkTo }\n\t\t\t\t\t\tonChange={ setLinkTo }\n\t\t\t\t\t\toptions={ linkOptions }\n\t\t\t\t\t\thideCancelButton={ true }\n\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t/>\n\t\t\t\t\t{ hasLinkTo && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\tonChange={ toggleOpenInNewTab }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ imageSizeOptions?.length > 0 && (\n\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Resolution' ) }\n\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t'Select the size of the source images.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tvalue={ sizeSlug }\n\t\t\t\t\t\t\toptions={ imageSizeOptions }\n\t\t\t\t\t\t\tonChange={ updateImagesSize }\n\t\t\t\t\t\t\thideCancelButton={ true }\n\t\t\t\t\t\t\tsize=\"__unstable-large\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ Platform.isWeb && ! imageSizeOptions && hasImageIds && (\n\t\t\t\t\t\t<BaseControl className={ 'gallery-image-sizes' }>\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Resolution' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<View className={ 'gallery-image-sizes__loading' }>\n\t\t\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t\t\t\t{ __( 'Loading options…' ) }\n\t\t\t\t\t\t\t</View>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t{ Platform.isWeb && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls group=\"block\">\n\t\t\t\t\t\t{ ! isContentLocked && (\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tsetShowCaption( ! showCaption );\n\t\t\t\t\t\t\t\t\tif ( showCaption && caption ) {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( { caption: undefined } );\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\ticon={ captionIcon }\n\t\t\t\t\t\t\t\tisPressed={ showCaption }\n\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\tshowCaption\n\t\t\t\t\t\t\t\t\t\t? __( 'Remove caption' )\n\t\t\t\t\t\t\t\t\t\t: __( 'Add caption' )\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</BlockControls>\n\t\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\t\thandleUpload={ false }\n\t\t\t\t\t\t\tonSelect={ updateImages }\n\t\t\t\t\t\t\tname={ __( 'Add' ) }\n\t\t\t\t\t\t\tmultiple={ true }\n\t\t\t\t\t\t\tmediaIds={ images\n\t\t\t\t\t\t\t\t.filter( ( image ) => image.id )\n\t\t\t\t\t\t\t\t.map( ( image ) => image.id ) }\n\t\t\t\t\t\t\taddToGallery={ hasImageIds }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<GapStyles\n\t\t\t\t\t\tblockGap={ attributes.style?.spacing?.blockGap }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<Gallery\n\t\t\t\t{ ...props }\n\t\t\t\tshowCaption={ showCaption }\n\t\t\t\tref={ Platform.isWeb ? captionRef : undefined }\n\t\t\t\timages={ images }\n\t\t\t\tmediaPlaceholder={\n\t\t\t\t\t! hasImages || Platform.isNative\n\t\t\t\t\t\t? mediaPlaceholder\n\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t\tblockProps={ innerBlocksProps }\n\t\t\t\tinsertBlocksAfter={ insertBlocksAfter }\n\t\t\t/>\n\t\t</>\n\t);\n}\nexport default compose( [ withViewportMatch( { isNarrow: '< small' } ) ] )(\n\tGalleryEdit\n);\n"],"mappings":"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"}
|
package/build/group/edit.js
CHANGED
|
@@ -162,7 +162,6 @@ function GroupEdit({
|
|
|
162
162
|
tagName: value
|
|
163
163
|
})
|
|
164
164
|
}), showPlaceholder && (0, _element.createElement)(_primitives.View, null, innerBlocksProps.children, (0, _element.createElement)(_placeholder.default, {
|
|
165
|
-
clientId: clientId,
|
|
166
165
|
name: name,
|
|
167
166
|
onSelect: selectVariation
|
|
168
167
|
})), layoutSupportEnabled && !showPlaceholder && (0, _element.createElement)(TagName, {
|
package/build/group/edit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_data","require","_blockEditor","_components","_i18n","_primitives","_placeholder","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","GroupEditControls","tagName","onSelectTagName","htmlElementMessages","header","__","main","section","article","aside","footer","_element","createElement","InspectorControls","group","SelectControl","__nextHasNoMarginBottom","label","options","value","onChange","help","GroupEdit","attributes","name","setAttributes","clientId","__unstableLayoutClassNames","layoutClassNames","hasInnerBlocks","themeSupportsLayout","useSelect","select","getBlock","getSettings","blockEditorStore","block","innerBlocks","length","supportsLayout","TagName","templateLock","allowedBlocks","layout","defaultLayout","useSetting","usedLayout","type","layoutSupportEnabled","blockProps","useBlockProps","className","showPlaceholder","setShowPlaceholder","useShouldShowPlaceHolder","usedLayoutType","renderAppender","InnerBlocks","ButtonBlockAppender","innerBlocksProps","useInnerBlocksProps","__unstableDisableLayoutClassNames","selectBlock","useDispatch","selectVariation","nextVariation","Fragment","View","children","onSelect","_default","exports"],"sources":["@wordpress/block-library/src/group/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tInnerBlocks,\n\tuseBlockProps,\n\tInspectorControls,\n\tuseInnerBlocksProps,\n\tuseSetting,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { View } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport GroupPlaceHolder, { useShouldShowPlaceHolder } from './placeholder';\n\n/**\n * Render inspector controls for the Group block.\n *\n * @param {Object} props Component props.\n * @param {string} props.tagName The HTML tag name.\n * @param {Function} props.onSelectTagName onChange function for the SelectControl.\n *\n * @return {JSX.Element} The control group.\n */\nfunction GroupEditControls( { tagName, onSelectTagName } ) {\n\tconst htmlElementMessages = {\n\t\theader: __(\n\t\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t\t),\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only. '\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\tarticle: __(\n\t\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t\tfooter: __(\n\t\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t\t),\n\t};\n\treturn (\n\t\t<InspectorControls group=\"advanced\">\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t] }\n\t\t\t\tvalue={ tagName }\n\t\t\t\tonChange={ onSelectTagName }\n\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t/>\n\t\t</InspectorControls>\n\t);\n}\n\nfunction GroupEdit( {\n\tattributes,\n\tname,\n\tsetAttributes,\n\tclientId,\n\t__unstableLayoutClassNames: layoutClassNames,\n} ) {\n\tconst { hasInnerBlocks, themeSupportsLayout } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock, getSettings } = select( blockEditorStore );\n\t\t\tconst block = getBlock( clientId );\n\t\t\treturn {\n\t\t\t\thasInnerBlocks: !! ( block && block.innerBlocks.length ),\n\t\t\t\tthemeSupportsLayout: getSettings()?.supportsLayout,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst {\n\t\ttagName: TagName = 'div',\n\t\ttemplateLock,\n\t\tallowedBlocks,\n\t\tlayout = {},\n\t} = attributes;\n\n\t// Layout settings.\n\tconst defaultLayout = useSetting( 'layout' ) || {};\n\tconst usedLayout = ! layout?.type\n\t\t? { ...defaultLayout, ...layout, type: 'default' }\n\t\t: { ...defaultLayout, ...layout };\n\tconst { type = 'default' } = usedLayout;\n\tconst layoutSupportEnabled =\n\t\tthemeSupportsLayout || type === 'flex' || type === 'grid';\n\n\t// Hooks.\n\tconst blockProps = useBlockProps( {\n\t\tclassName: ! layoutSupportEnabled ? layoutClassNames : null,\n\t} );\n\tconst [ showPlaceholder, setShowPlaceholder ] = useShouldShowPlaceHolder( {\n\t\tattributes,\n\t\tusedLayoutType: usedLayout?.type,\n\t\thasInnerBlocks,\n\t} );\n\n\t// Default to the regular appender being rendered.\n\tlet renderAppender;\n\tif ( showPlaceholder ) {\n\t\t// In the placeholder state, ensure the appender is not rendered.\n\t\t// This is needed because `...innerBlocksProps` is used in the placeholder\n\t\t// state so that blocks can dragged onto the placeholder area\n\t\t// from both the list view and in the editor canvas.\n\t\trenderAppender = false;\n\t} else if ( ! hasInnerBlocks ) {\n\t\t// When there is no placeholder, but the block is also empty,\n\t\t// use the larger button appender.\n\t\trenderAppender = InnerBlocks.ButtonBlockAppender;\n\t}\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\tlayoutSupportEnabled\n\t\t\t? blockProps\n\t\t\t: { className: 'wp-block-group__inner-container' },\n\t\t{\n\t\t\ttemplateLock,\n\t\t\tallowedBlocks,\n\t\t\trenderAppender,\n\t\t\t__unstableDisableLayoutClassNames: ! layoutSupportEnabled,\n\t\t}\n\t);\n\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\n\tconst selectVariation = ( nextVariation ) => {\n\t\tsetAttributes( nextVariation.attributes );\n\t\tselectBlock( clientId, -1 );\n\t\tsetShowPlaceholder( false );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<GroupEditControls\n\t\t\t\ttagName={ TagName }\n\t\t\t\tonSelectTagName={ ( value ) =>\n\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ showPlaceholder && (\n\t\t\t\t<View>\n\t\t\t\t\t{ innerBlocksProps.children }\n\t\t\t\t\t<GroupPlaceHolder\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tname={ name }\n\t\t\t\t\t\tonSelect={ selectVariation }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t) }\n\t\t\t{ layoutSupportEnabled && ! showPlaceholder && (\n\t\t\t\t<TagName { ...innerBlocksProps } />\n\t\t\t) }\n\t\t\t{ /* Ideally this is not needed but it's there for backward compatibility reason\n\t\t\t\tto keep this div for themes that might rely on its presence */ }\n\t\t\t{ ! layoutSupportEnabled && ! showPlaceholder && (\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t\t</TagName>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default GroupEdit;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_data","require","_blockEditor","_components","_i18n","_primitives","_placeholder","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","GroupEditControls","tagName","onSelectTagName","htmlElementMessages","header","__","main","section","article","aside","footer","_element","createElement","InspectorControls","group","SelectControl","__nextHasNoMarginBottom","label","options","value","onChange","help","GroupEdit","attributes","name","setAttributes","clientId","__unstableLayoutClassNames","layoutClassNames","hasInnerBlocks","themeSupportsLayout","useSelect","select","getBlock","getSettings","blockEditorStore","block","innerBlocks","length","supportsLayout","TagName","templateLock","allowedBlocks","layout","defaultLayout","useSetting","usedLayout","type","layoutSupportEnabled","blockProps","useBlockProps","className","showPlaceholder","setShowPlaceholder","useShouldShowPlaceHolder","usedLayoutType","renderAppender","InnerBlocks","ButtonBlockAppender","innerBlocksProps","useInnerBlocksProps","__unstableDisableLayoutClassNames","selectBlock","useDispatch","selectVariation","nextVariation","Fragment","View","children","onSelect","_default","exports"],"sources":["@wordpress/block-library/src/group/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tInnerBlocks,\n\tuseBlockProps,\n\tInspectorControls,\n\tuseInnerBlocksProps,\n\tuseSetting,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { View } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport GroupPlaceHolder, { useShouldShowPlaceHolder } from './placeholder';\n\n/**\n * Render inspector controls for the Group block.\n *\n * @param {Object} props Component props.\n * @param {string} props.tagName The HTML tag name.\n * @param {Function} props.onSelectTagName onChange function for the SelectControl.\n *\n * @return {JSX.Element} The control group.\n */\nfunction GroupEditControls( { tagName, onSelectTagName } ) {\n\tconst htmlElementMessages = {\n\t\theader: __(\n\t\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t\t),\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only. '\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\tarticle: __(\n\t\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t\tfooter: __(\n\t\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t\t),\n\t};\n\treturn (\n\t\t<InspectorControls group=\"advanced\">\n\t\t\t<SelectControl\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\toptions={ [\n\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t] }\n\t\t\t\tvalue={ tagName }\n\t\t\t\tonChange={ onSelectTagName }\n\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t/>\n\t\t</InspectorControls>\n\t);\n}\n\nfunction GroupEdit( {\n\tattributes,\n\tname,\n\tsetAttributes,\n\tclientId,\n\t__unstableLayoutClassNames: layoutClassNames,\n} ) {\n\tconst { hasInnerBlocks, themeSupportsLayout } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlock, getSettings } = select( blockEditorStore );\n\t\t\tconst block = getBlock( clientId );\n\t\t\treturn {\n\t\t\t\thasInnerBlocks: !! ( block && block.innerBlocks.length ),\n\t\t\t\tthemeSupportsLayout: getSettings()?.supportsLayout,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst {\n\t\ttagName: TagName = 'div',\n\t\ttemplateLock,\n\t\tallowedBlocks,\n\t\tlayout = {},\n\t} = attributes;\n\n\t// Layout settings.\n\tconst defaultLayout = useSetting( 'layout' ) || {};\n\tconst usedLayout = ! layout?.type\n\t\t? { ...defaultLayout, ...layout, type: 'default' }\n\t\t: { ...defaultLayout, ...layout };\n\tconst { type = 'default' } = usedLayout;\n\tconst layoutSupportEnabled =\n\t\tthemeSupportsLayout || type === 'flex' || type === 'grid';\n\n\t// Hooks.\n\tconst blockProps = useBlockProps( {\n\t\tclassName: ! layoutSupportEnabled ? layoutClassNames : null,\n\t} );\n\tconst [ showPlaceholder, setShowPlaceholder ] = useShouldShowPlaceHolder( {\n\t\tattributes,\n\t\tusedLayoutType: usedLayout?.type,\n\t\thasInnerBlocks,\n\t} );\n\n\t// Default to the regular appender being rendered.\n\tlet renderAppender;\n\tif ( showPlaceholder ) {\n\t\t// In the placeholder state, ensure the appender is not rendered.\n\t\t// This is needed because `...innerBlocksProps` is used in the placeholder\n\t\t// state so that blocks can dragged onto the placeholder area\n\t\t// from both the list view and in the editor canvas.\n\t\trenderAppender = false;\n\t} else if ( ! hasInnerBlocks ) {\n\t\t// When there is no placeholder, but the block is also empty,\n\t\t// use the larger button appender.\n\t\trenderAppender = InnerBlocks.ButtonBlockAppender;\n\t}\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\tlayoutSupportEnabled\n\t\t\t? blockProps\n\t\t\t: { className: 'wp-block-group__inner-container' },\n\t\t{\n\t\t\ttemplateLock,\n\t\t\tallowedBlocks,\n\t\t\trenderAppender,\n\t\t\t__unstableDisableLayoutClassNames: ! layoutSupportEnabled,\n\t\t}\n\t);\n\n\tconst { selectBlock } = useDispatch( blockEditorStore );\n\n\tconst selectVariation = ( nextVariation ) => {\n\t\tsetAttributes( nextVariation.attributes );\n\t\tselectBlock( clientId, -1 );\n\t\tsetShowPlaceholder( false );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<GroupEditControls\n\t\t\t\ttagName={ TagName }\n\t\t\t\tonSelectTagName={ ( value ) =>\n\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t}\n\t\t\t/>\n\t\t\t{ showPlaceholder && (\n\t\t\t\t<View>\n\t\t\t\t\t{ innerBlocksProps.children }\n\t\t\t\t\t<GroupPlaceHolder\n\t\t\t\t\t\tname={ name }\n\t\t\t\t\t\tonSelect={ selectVariation }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t) }\n\t\t\t{ layoutSupportEnabled && ! showPlaceholder && (\n\t\t\t\t<TagName { ...innerBlocksProps } />\n\t\t\t) }\n\t\t\t{ /* Ideally this is not needed but it's there for backward compatibility reason\n\t\t\t\tto keep this div for themes that might rely on its presence */ }\n\t\t\t{ ! layoutSupportEnabled && ! showPlaceholder && (\n\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t\t</TagName>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default GroupEdit;\n"],"mappings":"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"}
|
package/build/group/index.js
CHANGED
|
@@ -45,10 +45,14 @@ const metadata = {
|
|
|
45
45
|
__experimentalOnEnter: true,
|
|
46
46
|
__experimentalOnMerge: true,
|
|
47
47
|
__experimentalSettings: true,
|
|
48
|
+
__experimentalMetadata: true,
|
|
48
49
|
align: ["wide", "full"],
|
|
49
50
|
anchor: true,
|
|
50
51
|
ariaLabel: true,
|
|
51
52
|
html: false,
|
|
53
|
+
background: {
|
|
54
|
+
backgroundImage: true
|
|
55
|
+
},
|
|
52
56
|
color: {
|
|
53
57
|
gradients: true,
|
|
54
58
|
heading: true,
|
package/build/group/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_icons","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","_transforms","_variations","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","tagName","type","templateLock","allowedBlocks","supports","__experimentalOnEnter","__experimentalOnMerge","__experimentalSettings","align","anchor","ariaLabel","html","color","gradients","heading","button","link","__experimentalDefaultControls","
|
|
1
|
+
{"version":3,"names":["_i18n","require","_icons","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","_transforms","_variations","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","tagName","type","templateLock","allowedBlocks","supports","__experimentalOnEnter","__experimentalOnMerge","__experimentalSettings","__experimentalMetadata","align","anchor","ariaLabel","html","background","backgroundImage","color","gradients","heading","button","link","__experimentalDefaultControls","text","spacing","margin","padding","blockGap","dimensions","minHeight","__experimentalBorder","radius","style","width","position","sticky","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","layout","allowSizingOnChildren","editorStyle","exports","settings","icon","example","innerBlocks","customTextColor","content","__","transforms","edit","save","deprecated","variations","init","initBlock"],"sources":["@wordpress/block-library/src/group/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { group as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\nimport variations from './variations';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tstyle: {\n\t\t\t\tcolor: {\n\t\t\t\t\ttext: '#000000',\n\t\t\t\t\tbackground: '#ffffff',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#cf2e2e',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'One.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#ff6900',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Two.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#fcb900',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Three.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#00d084',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Four.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#0693e3',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Five.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcustomTextColor: '#9b51e0',\n\t\t\t\t\tfontSize: 'large',\n\t\t\t\t\tcontent: __( 'Six.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n\tvariations,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"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"}
|
package/build/heading/edit.js
CHANGED
|
@@ -127,7 +127,6 @@ function HeadingEdit({
|
|
|
127
127
|
},
|
|
128
128
|
onReplace: onReplace,
|
|
129
129
|
onRemove: () => onReplace([]),
|
|
130
|
-
"aria-label": (0, _i18n.__)('Heading text'),
|
|
131
130
|
placeholder: placeholder || (0, _i18n.__)('Heading'),
|
|
132
131
|
textAlign: textAlign,
|
|
133
132
|
...(_element.Platform.isNative && {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_i18n","_data","_blocks","_blockEditor","_autogenerateAnchors","HeadingEdit","attributes","setAttributes","mergeBlocks","onReplace","style","clientId","textAlign","content","level","placeholder","anchor","tagName","blockProps","useBlockProps","className","classnames","canGenerateAnchors","useSelect","select","getGlobalBlockCount","getSettings","blockEditorStore","settings","generateAnchors","__unstableMarkNextChangeAsNotPersistent","useDispatch","useEffect","generateAnchor","setAnchor","onContentChange","value","newAttrs","createElement","Fragment","BlockControls","group","HeadingLevelDropdown","onChange","newLevel","AlignmentControl","nextAlign","RichText","identifier","onMerge","onSplit","isOriginal","block","createBlock","_getDefaultBlockName","getDefaultBlockName","onRemove","__","Platform","isNative","deleteEnter","_default","exports","default"],"sources":["@wordpress/block-library/src/heading/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, Platform } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tHeadingLevelDropdown,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { generateAnchor, setAnchor } from './autogenerate-anchors';\n\nfunction HeadingEdit( {\n\tattributes,\n\tsetAttributes,\n\tmergeBlocks,\n\tonReplace,\n\tstyle,\n\tclientId,\n} ) {\n\tconst { textAlign, content, level, placeholder, anchor } = attributes;\n\tconst tagName = 'h' + level;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t\tstyle,\n\t} );\n\n\tconst { canGenerateAnchors } = useSelect( ( select ) => {\n\t\tconst { getGlobalBlockCount, getSettings } = select( blockEditorStore );\n\t\tconst settings = getSettings();\n\n\t\treturn {\n\t\t\tcanGenerateAnchors:\n\t\t\t\t!! settings.generateAnchors ||\n\t\t\t\tgetGlobalBlockCount( 'core/table-of-contents' ) > 0,\n\t\t};\n\t}, [] );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\t// Initially set anchor for headings that have content but no anchor set.\n\t// This is used when transforming a block to heading, or for legacy anchors.\n\tuseEffect( () => {\n\t\tif ( ! canGenerateAnchors ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! anchor && content ) {\n\t\t\t// This side-effect should not create an undo level.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tanchor: generateAnchor( clientId, content ),\n\t\t\t} );\n\t\t}\n\t\tsetAnchor( clientId, anchor );\n\n\t\t// Remove anchor map when block unmounts.\n\t\treturn () => setAnchor( clientId, null );\n\t}, [ anchor, content, clientId, canGenerateAnchors ] );\n\n\tconst onContentChange = ( value ) => {\n\t\tconst newAttrs = { content: value };\n\t\tif (\n\t\t\tcanGenerateAnchors &&\n\t\t\t( ! anchor ||\n\t\t\t\t! value ||\n\t\t\t\tgenerateAnchor( clientId, content ) === anchor )\n\t\t) {\n\t\t\tnewAttrs.anchor = generateAnchor( clientId, value );\n\t\t}\n\t\tsetAttributes( newAttrs );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\tvalue={ level }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\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\t\t\t<RichText\n\t\t\t\tidentifier=\"content\"\n\t\t\t\ttagName={ tagName }\n\t\t\t\tvalue={ content }\n\t\t\t\tonChange={ onContentChange }\n\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\tonSplit={ ( value, isOriginal ) => {\n\t\t\t\t\tlet block;\n\n\t\t\t\t\tif ( isOriginal || value ) {\n\t\t\t\t\t\tblock = createBlock( 'core/heading', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\tcontent: value,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tblock = createBlock(\n\t\t\t\t\t\t\tgetDefaultBlockName() ?? 'core/heading'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( isOriginal ) {\n\t\t\t\t\t\tblock.clientId = clientId;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn block;\n\t\t\t\t} }\n\t\t\t\tonReplace={ onReplace }\n\t\t\t\tonRemove={ () => onReplace( [] ) }\n\t\t\t\
|
|
1
|
+
{"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_i18n","_data","_blocks","_blockEditor","_autogenerateAnchors","HeadingEdit","attributes","setAttributes","mergeBlocks","onReplace","style","clientId","textAlign","content","level","placeholder","anchor","tagName","blockProps","useBlockProps","className","classnames","canGenerateAnchors","useSelect","select","getGlobalBlockCount","getSettings","blockEditorStore","settings","generateAnchors","__unstableMarkNextChangeAsNotPersistent","useDispatch","useEffect","generateAnchor","setAnchor","onContentChange","value","newAttrs","createElement","Fragment","BlockControls","group","HeadingLevelDropdown","onChange","newLevel","AlignmentControl","nextAlign","RichText","identifier","onMerge","onSplit","isOriginal","block","createBlock","_getDefaultBlockName","getDefaultBlockName","onRemove","__","Platform","isNative","deleteEnter","_default","exports","default"],"sources":["@wordpress/block-library/src/heading/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, Platform } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tRichText,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tHeadingLevelDropdown,\n} from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { generateAnchor, setAnchor } from './autogenerate-anchors';\n\nfunction HeadingEdit( {\n\tattributes,\n\tsetAttributes,\n\tmergeBlocks,\n\tonReplace,\n\tstyle,\n\tclientId,\n} ) {\n\tconst { textAlign, content, level, placeholder, anchor } = attributes;\n\tconst tagName = 'h' + level;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t} ),\n\t\tstyle,\n\t} );\n\n\tconst { canGenerateAnchors } = useSelect( ( select ) => {\n\t\tconst { getGlobalBlockCount, getSettings } = select( blockEditorStore );\n\t\tconst settings = getSettings();\n\n\t\treturn {\n\t\t\tcanGenerateAnchors:\n\t\t\t\t!! settings.generateAnchors ||\n\t\t\t\tgetGlobalBlockCount( 'core/table-of-contents' ) > 0,\n\t\t};\n\t}, [] );\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\n\t// Initially set anchor for headings that have content but no anchor set.\n\t// This is used when transforming a block to heading, or for legacy anchors.\n\tuseEffect( () => {\n\t\tif ( ! canGenerateAnchors ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( ! anchor && content ) {\n\t\t\t// This side-effect should not create an undo level.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( {\n\t\t\t\tanchor: generateAnchor( clientId, content ),\n\t\t\t} );\n\t\t}\n\t\tsetAnchor( clientId, anchor );\n\n\t\t// Remove anchor map when block unmounts.\n\t\treturn () => setAnchor( clientId, null );\n\t}, [ anchor, content, clientId, canGenerateAnchors ] );\n\n\tconst onContentChange = ( value ) => {\n\t\tconst newAttrs = { content: value };\n\t\tif (\n\t\t\tcanGenerateAnchors &&\n\t\t\t( ! anchor ||\n\t\t\t\t! value ||\n\t\t\t\tgenerateAnchor( clientId, content ) === anchor )\n\t\t) {\n\t\t\tnewAttrs.anchor = generateAnchor( clientId, value );\n\t\t}\n\t\tsetAttributes( newAttrs );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\tvalue={ level }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\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\t\t\t<RichText\n\t\t\t\tidentifier=\"content\"\n\t\t\t\ttagName={ tagName }\n\t\t\t\tvalue={ content }\n\t\t\t\tonChange={ onContentChange }\n\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\tonSplit={ ( value, isOriginal ) => {\n\t\t\t\t\tlet block;\n\n\t\t\t\t\tif ( isOriginal || value ) {\n\t\t\t\t\t\tblock = createBlock( 'core/heading', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\tcontent: value,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tblock = createBlock(\n\t\t\t\t\t\t\tgetDefaultBlockName() ?? 'core/heading'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( isOriginal ) {\n\t\t\t\t\t\tblock.clientId = clientId;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn block;\n\t\t\t\t} }\n\t\t\t\tonReplace={ onReplace }\n\t\t\t\tonRemove={ () => onReplace( [] ) }\n\t\t\t\tplaceholder={ placeholder || __( 'Heading' ) }\n\t\t\t\ttextAlign={ textAlign }\n\t\t\t\t{ ...( Platform.isNative && { deleteEnter: true } ) } // setup RichText on native mobile to delete the \"Enter\" key as it's handled by the JS/RN side\n\t\t\t\t{ ...blockProps }\n\t\t\t/>\n\t\t</>\n\t);\n}\n\nexport default HeadingEdit;\n"],"mappings":";;;;;;;AASA,IAAAA,QAAA,GAAAC,OAAA;AANA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAKA,IAAAG,KAAA,GAAAH,OAAA;AAEA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAYA,IAAAO,oBAAA,GAAAP,OAAA;AAxBA;AACA;AACA;;AAGA;AACA;AACA;;AAcA;AACA;AACA;;AAGA,SAASQ,WAAWA,CAAE;EACrBC,UAAU;EACVC,aAAa;EACbC,WAAW;EACXC,SAAS;EACTC,KAAK;EACLC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,SAAS;IAAEC,OAAO;IAAEC,KAAK;IAAEC,WAAW;IAAEC;EAAO,CAAC,GAAGV,UAAU;EACrE,MAAMW,OAAO,GAAG,GAAG,GAAGH,KAAK;EAC3B,MAAMI,UAAU,GAAG,IAAAC,0BAAa,EAAE;IACjCC,SAAS,EAAE,IAAAC,mBAAU,EAAE;MACtB,CAAG,kBAAkBT,SAAW,EAAC,GAAIA;IACtC,CAAE,CAAC;IACHF;EACD,CAAE,CAAC;EAEH,MAAM;IAAEY;EAAmB,CAAC,GAAG,IAAAC,eAAS,EAAIC,MAAM,IAAM;IACvD,MAAM;MAAEC,mBAAmB;MAAEC;IAAY,CAAC,GAAGF,MAAM,CAAEG,kBAAiB,CAAC;IACvE,MAAMC,QAAQ,GAAGF,WAAW,CAAC,CAAC;IAE9B,OAAO;MACNJ,kBAAkB,EACjB,CAAC,CAAEM,QAAQ,CAACC,eAAe,IAC3BJ,mBAAmB,CAAE,wBAAyB,CAAC,GAAG;IACpD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EAEP,MAAM;IAAEK;EAAwC,CAAC,GAChD,IAAAC,iBAAW,EAAEJ,kBAAiB,CAAC;;EAEhC;EACA;EACA,IAAAK,kBAAS,EAAE,MAAM;IAChB,IAAK,CAAEV,kBAAkB,EAAG;MAC3B;IACD;IAEA,IAAK,CAAEN,MAAM,IAAIH,OAAO,EAAG;MAC1B;MACAiB,uCAAuC,CAAC,CAAC;MACzCvB,aAAa,CAAE;QACdS,MAAM,EAAE,IAAAiB,mCAAc,EAAEtB,QAAQ,EAAEE,OAAQ;MAC3C,CAAE,CAAC;IACJ;IACA,IAAAqB,8BAAS,EAAEvB,QAAQ,EAAEK,MAAO,CAAC;;IAE7B;IACA,OAAO,MAAM,IAAAkB,8BAAS,EAAEvB,QAAQ,EAAE,IAAK,CAAC;EACzC,CAAC,EAAE,CAAEK,MAAM,EAAEH,OAAO,EAAEF,QAAQ,EAAEW,kBAAkB,CAAG,CAAC;EAEtD,MAAMa,eAAe,GAAKC,KAAK,IAAM;IACpC,MAAMC,QAAQ,GAAG;MAAExB,OAAO,EAAEuB;IAAM,CAAC;IACnC,IACCd,kBAAkB,KAChB,CAAEN,MAAM,IACT,CAAEoB,KAAK,IACP,IAAAH,mCAAc,EAAEtB,QAAQ,EAAEE,OAAQ,CAAC,KAAKG,MAAM,CAAE,EAChD;MACDqB,QAAQ,CAACrB,MAAM,GAAG,IAAAiB,mCAAc,EAAEtB,QAAQ,EAAEyB,KAAM,CAAC;IACpD;IACA7B,aAAa,CAAE8B,QAAS,CAAC;EAC1B,CAAC;EAED,OACC,IAAAzC,QAAA,CAAA0C,aAAA,EAAA1C,QAAA,CAAA2C,QAAA,QACC,IAAA3C,QAAA,CAAA0C,aAAA,EAACnC,YAAA,CAAAqC,aAAa;IAACC,KAAK,EAAC;EAAO,GAC3B,IAAA7C,QAAA,CAAA0C,aAAA,EAACnC,YAAA,CAAAuC,oBAAoB;IACpBN,KAAK,EAAGtB,KAAO;IACf6B,QAAQ,EAAKC,QAAQ,IACpBrC,aAAa,CAAE;MAAEO,KAAK,EAAE8B;IAAS,CAAE;EACnC,CACD,CAAC,EACF,IAAAhD,QAAA,CAAA0C,aAAA,EAACnC,YAAA,CAAA0C,gBAAgB;IAChBT,KAAK,EAAGxB,SAAW;IACnB+B,QAAQ,EAAKG,SAAS,IAAM;MAC3BvC,aAAa,CAAE;QAAEK,SAAS,EAAEkC;MAAU,CAAE,CAAC;IAC1C;EAAG,CACH,CACa,CAAC,EAChB,IAAAlD,QAAA,CAAA0C,aAAA,EAACnC,YAAA,CAAA4C,QAAQ;IACRC,UAAU,EAAC,SAAS;IACpB/B,OAAO,EAAGA,OAAS;IACnBmB,KAAK,EAAGvB,OAAS;IACjB8B,QAAQ,EAAGR,eAAiB;IAC5Bc,OAAO,EAAGzC,WAAa;IACvB0C,OAAO,EAAGA,CAAEd,KAAK,EAAEe,UAAU,KAAM;MAClC,IAAIC,KAAK;MAET,IAAKD,UAAU,IAAIf,KAAK,EAAG;QAC1BgB,KAAK,GAAG,IAAAC,mBAAW,EAAE,cAAc,EAAE;UACpC,GAAG/C,UAAU;UACbO,OAAO,EAAEuB;QACV,CAAE,CAAC;MACJ,CAAC,MAAM;QAAA,IAAAkB,oBAAA;QACNF,KAAK,GAAG,IAAAC,mBAAW,GAAAC,oBAAA,GAClB,IAAAC,2BAAmB,EAAC,CAAC,cAAAD,oBAAA,cAAAA,oBAAA,GAAI,cAC1B,CAAC;MACF;MAEA,IAAKH,UAAU,EAAG;QACjBC,KAAK,CAACzC,QAAQ,GAAGA,QAAQ;MAC1B;MAEA,OAAOyC,KAAK;IACb,CAAG;IACH3C,SAAS,EAAGA,SAAW;IACvB+C,QAAQ,EAAGA,CAAA,KAAM/C,SAAS,CAAE,EAAG,CAAG;IAClCM,WAAW,EAAGA,WAAW,IAAI,IAAA0C,QAAE,EAAE,SAAU,CAAG;IAC9C7C,SAAS,EAAGA,SAAW;IAAA,IAChB8C,iBAAQ,CAACC,QAAQ,IAAI;MAAEC,WAAW,EAAE;IAAK,CAAC;IAAA,GAC5C1C;EAAU,CACf,CACA,CAAC;AAEL;AAAC,IAAA2C,QAAA,GAEcxD,WAAW;AAAAyD,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
package/build/heading/index.js
CHANGED
|
@@ -75,12 +75,14 @@ const metadata = {
|
|
|
75
75
|
__experimentalLetterSpacing: true,
|
|
76
76
|
__experimentalTextTransform: true,
|
|
77
77
|
__experimentalTextDecoration: true,
|
|
78
|
+
__experimentalWritingMode: true,
|
|
78
79
|
__experimentalDefaultControls: {
|
|
79
80
|
fontSize: true,
|
|
80
81
|
fontAppearance: true,
|
|
81
82
|
textTransform: true
|
|
82
83
|
}
|
|
83
84
|
},
|
|
85
|
+
__unstablePasteTextInline: true,
|
|
84
86
|
__experimentalSlashInserter: true
|
|
85
87
|
},
|
|
86
88
|
editorStyle: "wp-block-heading-editor",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_icons","require","_i18n","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","_transforms","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","textAlign","type","content","source","selector","__experimentalRole","level","placeholder","supports","align","anchor","className","color","gradients","link","__experimentalDefaultControls","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalTextDecoration","fontAppearance","textTransform","__experimentalSlashInserter","editorStyle","style","exports","settings","icon","example","__","__experimentalLabel","context","length","sprintf","transforms","deprecated","merge","attributesToMerge","edit","save","init","initBlock"],"sources":["@wordpress/block-library/src/heading/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { heading as icon } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcontent: __( 'Code is Poetry' ),\n\t\t\tlevel: 2,\n\t\t},\n\t},\n\t__experimentalLabel( attributes, { context } ) {\n\t\tconst { content, level } = attributes;\n\n\t\t// In the list view, use the block's content as the label.\n\t\t// If the content is empty, fall back to the default label.\n\t\tif ( context === 'list-view' && content ) {\n\t\t\treturn content;\n\t\t}\n\n\t\tif ( context === 'accessibility' ) {\n\t\t\treturn ! content || content.length === 0\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. %s: heading level. */\n\t\t\t\t\t\t__( 'Level %s. Empty.' ),\n\t\t\t\t\t\tlevel\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. 1: heading level. 2: heading content. */\n\t\t\t\t\t\t__( 'Level %1$s. %2$s' ),\n\t\t\t\t\t\tlevel,\n\t\t\t\t\t\tcontent\n\t\t\t\t );\n\t\t}\n\t},\n\ttransforms,\n\tdeprecated,\n\tmerge( attributes, attributesToMerge ) {\n\t\treturn {\n\t\t\tcontent:\n\t\t\t\t( attributes.content || '' ) +\n\t\t\t\t( attributesToMerge.content || '' ),\n\t\t};\n\t},\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,WAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,KAAA,GAAAF,sBAAA,CAAAH,OAAA;AAEA,IAAAM,KAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,WAAA,GAAAJ,sBAAA,CAAAH,OAAA;AAdA;AACA;AACA;AAIA;AACA;AACA;AAFA,MAAAQ,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,SAAA;MAAAC,IAAA;IAAA;IAAAC,OAAA;MAAAD,IAAA;MAAAE,MAAA;MAAAC,QAAA;MAAA;MAAAC,kBAAA;IAAA;IAAAC,KAAA;MAAAL,IAAA;MAAA;IAAA;IAAAM,WAAA;MAAAN,IAAA;IAAA;EAAA;EAAAO,QAAA;IAAAC,KAAA;IAAAC,MAAA;IAAAC,SAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,OAAA;MAAAC,MAAA;MAAAC,OAAA;MAAAL,6BAAA;QAAAI,MAAA;QAAAC,OAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,2BAAA;MAAAC,4BAAA;
|
|
1
|
+
{"version":3,"names":["_icons","require","_i18n","_initBlock","_interopRequireDefault","_deprecated","_edit","_save","_transforms","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","textAlign","type","content","source","selector","__experimentalRole","level","placeholder","supports","align","anchor","className","color","gradients","link","__experimentalDefaultControls","background","text","spacing","margin","padding","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontStyle","__experimentalFontWeight","__experimentalLetterSpacing","__experimentalTextTransform","__experimentalTextDecoration","__experimentalWritingMode","fontAppearance","textTransform","__unstablePasteTextInline","__experimentalSlashInserter","editorStyle","style","exports","settings","icon","example","__","__experimentalLabel","context","length","sprintf","transforms","deprecated","merge","attributesToMerge","edit","save","init","initBlock"],"sources":["@wordpress/block-library/src/heading/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { heading as icon } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcontent: __( 'Code is Poetry' ),\n\t\t\tlevel: 2,\n\t\t},\n\t},\n\t__experimentalLabel( attributes, { context } ) {\n\t\tconst { content, level } = attributes;\n\n\t\t// In the list view, use the block's content as the label.\n\t\t// If the content is empty, fall back to the default label.\n\t\tif ( context === 'list-view' && content ) {\n\t\t\treturn content;\n\t\t}\n\n\t\tif ( context === 'accessibility' ) {\n\t\t\treturn ! content || content.length === 0\n\t\t\t\t? sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. %s: heading level. */\n\t\t\t\t\t\t__( 'Level %s. Empty.' ),\n\t\t\t\t\t\tlevel\n\t\t\t\t )\n\t\t\t\t: sprintf(\n\t\t\t\t\t\t/* translators: accessibility text. 1: heading level. 2: heading content. */\n\t\t\t\t\t\t__( 'Level %1$s. %2$s' ),\n\t\t\t\t\t\tlevel,\n\t\t\t\t\t\tcontent\n\t\t\t\t );\n\t\t}\n\t},\n\ttransforms,\n\tdeprecated,\n\tmerge( attributes, attributesToMerge ) {\n\t\treturn {\n\t\t\tcontent:\n\t\t\t\t( attributes.content || '' ) +\n\t\t\t\t( attributesToMerge.content || '' ),\n\t\t};\n\t},\n\tedit,\n\tsave,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":";;;;;;;AAGA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAKA,IAAAE,UAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,WAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,KAAA,GAAAF,sBAAA,CAAAH,OAAA;AAEA,IAAAM,KAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,WAAA,GAAAJ,sBAAA,CAAAH,OAAA;AAdA;AACA;AACA;AAIA;AACA;AACA;AAFA,MAAAQ,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,SAAA;MAAAC,IAAA;IAAA;IAAAC,OAAA;MAAAD,IAAA;MAAAE,MAAA;MAAAC,QAAA;MAAA;MAAAC,kBAAA;IAAA;IAAAC,KAAA;MAAAL,IAAA;MAAA;IAAA;IAAAM,WAAA;MAAAN,IAAA;IAAA;EAAA;EAAAO,QAAA;IAAAC,KAAA;IAAAC,MAAA;IAAAC,SAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,IAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,OAAA;MAAAC,MAAA;MAAAC,OAAA;MAAAL,6BAAA;QAAAI,MAAA;QAAAC,OAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,wBAAA;MAAAC,2BAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,yBAAA;MAAAf,6BAAA;QAAAO,QAAA;QAAAS,cAAA;QAAAC,aAAA;MAAA;IAAA;IAAAC,yBAAA;IAAAC,2BAAA;EAAA;EAAAC,WAAA;EAAAC,KAAA;AAAA;AAAAC,OAAA,CAAA/C,QAAA,GAAAA,QAAA;AAUA,MAAM;EAAEG;AAAK,CAAC,GAAGH,QAAQ;AAAC+C,OAAA,CAAA5C,IAAA,GAAAA,IAAA;AAInB,MAAM6C,QAAQ,GAAG;EACvBC,IAAI,EAAJA,cAAI;EACJC,OAAO,EAAE;IACRzC,UAAU,EAAE;MACXG,OAAO,EAAE,IAAAuC,QAAE,EAAE,gBAAiB,CAAC;MAC/BnC,KAAK,EAAE;IACR;EACD,CAAC;EACDoC,mBAAmBA,CAAE3C,UAAU,EAAE;IAAE4C;EAAQ,CAAC,EAAG;IAC9C,MAAM;MAAEzC,OAAO;MAAEI;IAAM,CAAC,GAAGP,UAAU;;IAErC;IACA;IACA,IAAK4C,OAAO,KAAK,WAAW,IAAIzC,OAAO,EAAG;MACzC,OAAOA,OAAO;IACf;IAEA,IAAKyC,OAAO,KAAK,eAAe,EAAG;MAClC,OAAO,CAAEzC,OAAO,IAAIA,OAAO,CAAC0C,MAAM,KAAK,CAAC,GACrC,IAAAC,aAAO,GACP;MACA,IAAAJ,QAAE,EAAE,kBAAmB,CAAC,EACxBnC,KACA,CAAC,GACD,IAAAuC,aAAO,GACP;MACA,IAAAJ,QAAE,EAAE,kBAAmB,CAAC,EACxBnC,KAAK,EACLJ,OACA,CAAC;IACL;EACD,CAAC;EACD4C,UAAU,EAAVA,mBAAU;EACVC,UAAU,EAAVA,mBAAU;EACVC,KAAKA,CAAEjD,UAAU,EAAEkD,iBAAiB,EAAG;IACtC,OAAO;MACN/C,OAAO,EACN,CAAEH,UAAU,CAACG,OAAO,IAAI,EAAE,KACxB+C,iBAAiB,CAAC/C,OAAO,IAAI,EAAE;IACnC,CAAC;EACF,CAAC;EACDgD,IAAI,EAAJA,aAAI;EACJC,IAAI,EAAJA;AACD,CAAC;AAACd,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAEK,MAAMc,IAAI,GAAGA,CAAA,KAAM,IAAAC,kBAAS,EAAE;EAAE5D,IAAI;EAAEH,QAAQ;EAAEgD;AAAS,CAAE,CAAC;AAACD,OAAA,CAAAe,IAAA,GAAAA,IAAA"}
|
|
@@ -71,12 +71,9 @@ const transforms = {
|
|
|
71
71
|
})), ...[1, 2, 3, 4, 5, 6].map(level => ({
|
|
72
72
|
type: 'enter',
|
|
73
73
|
regExp: new RegExp(`^/(h|H)${level}$`),
|
|
74
|
-
transform(
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
content
|
|
78
|
-
});
|
|
79
|
-
}
|
|
74
|
+
transform: () => (0, _blocks.createBlock)('core/heading', {
|
|
75
|
+
level
|
|
76
|
+
})
|
|
80
77
|
}))],
|
|
81
78
|
to: [{
|
|
82
79
|
type: 'block',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_blocks","require","_shared","transforms","from","type","isMultiBlock","blocks","transform","attributes","map","content","anchor","align","textAlign","createBlock","selector","schema","phrasingContentSchema","isPaste","children","h1","h2","h3","h4","h5","h6","node","getBlockAttributes","outerHTML","style","level","getLevelFromHeadingNodeName","nodeName","prefix","Array","join","regExp","RegExp","to","_default","exports","default"],"sources":["@wordpress/block-library/src/heading/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, getBlockAttributes } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getLevelFromHeadingNodeName } from './shared';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, anchor, align: textAlign } ) =>\n\t\t\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t\tanchor,\n\t\t\t\t\t\ttextAlign,\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\t\tschema: ( { phrasingContentSchema, isPaste } ) => {\n\t\t\t\tconst schema = {\n\t\t\t\t\tchildren: phrasingContentSchema,\n\t\t\t\t\tattributes: isPaste ? [] : [ 'style', 'id' ],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\th1: schema,\n\t\t\t\t\th2: schema,\n\t\t\t\t\th3: schema,\n\t\t\t\t\th4: schema,\n\t\t\t\t\th5: schema,\n\t\t\t\t\th6: schema,\n\t\t\t\t};\n\t\t\t},\n\t\t\ttransform( node ) {\n\t\t\t\tconst attributes = getBlockAttributes(\n\t\t\t\t\t'core/heading',\n\t\t\t\t\tnode.outerHTML\n\t\t\t\t);\n\t\t\t\tconst { textAlign } = node.style || {};\n\n\t\t\t\tattributes.level = getLevelFromHeadingNodeName( node.nodeName );\n\n\t\t\t\tif (\n\t\t\t\t\ttextAlign === 'left' ||\n\t\t\t\t\ttextAlign === 'center' ||\n\t\t\t\t\ttextAlign === 'right'\n\t\t\t\t) {\n\t\t\t\t\tattributes.align = textAlign;\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( 'core/heading', attributes );\n\t\t\t},\n\t\t},\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix: Array( level + 1 ).join( '#' ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( 'core/heading', {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'enter',\n\t\t\tregExp: new RegExp( `^/(h|H)${ level }$` ),\n\t\t\ttransform(
|
|
1
|
+
{"version":3,"names":["_blocks","require","_shared","transforms","from","type","isMultiBlock","blocks","transform","attributes","map","content","anchor","align","textAlign","createBlock","selector","schema","phrasingContentSchema","isPaste","children","h1","h2","h3","h4","h5","h6","node","getBlockAttributes","outerHTML","style","level","getLevelFromHeadingNodeName","nodeName","prefix","Array","join","regExp","RegExp","to","_default","exports","default"],"sources":["@wordpress/block-library/src/heading/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, getBlockAttributes } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getLevelFromHeadingNodeName } from './shared';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, anchor, align: textAlign } ) =>\n\t\t\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t\tanchor,\n\t\t\t\t\t\ttextAlign,\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\t\tschema: ( { phrasingContentSchema, isPaste } ) => {\n\t\t\t\tconst schema = {\n\t\t\t\t\tchildren: phrasingContentSchema,\n\t\t\t\t\tattributes: isPaste ? [] : [ 'style', 'id' ],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\th1: schema,\n\t\t\t\t\th2: schema,\n\t\t\t\t\th3: schema,\n\t\t\t\t\th4: schema,\n\t\t\t\t\th5: schema,\n\t\t\t\t\th6: schema,\n\t\t\t\t};\n\t\t\t},\n\t\t\ttransform( node ) {\n\t\t\t\tconst attributes = getBlockAttributes(\n\t\t\t\t\t'core/heading',\n\t\t\t\t\tnode.outerHTML\n\t\t\t\t);\n\t\t\t\tconst { textAlign } = node.style || {};\n\n\t\t\t\tattributes.level = getLevelFromHeadingNodeName( node.nodeName );\n\n\t\t\t\tif (\n\t\t\t\t\ttextAlign === 'left' ||\n\t\t\t\t\ttextAlign === 'center' ||\n\t\t\t\t\ttextAlign === 'right'\n\t\t\t\t) {\n\t\t\t\t\tattributes.align = textAlign;\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( 'core/heading', attributes );\n\t\t\t},\n\t\t},\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix: Array( level + 1 ).join( '#' ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( 'core/heading', {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'enter',\n\t\t\tregExp: new RegExp( `^/(h|H)${ level }$` ),\n\t\t\ttransform: () => createBlock( 'core/heading', { level } ),\n\t\t} ) ),\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, textAlign: align } ) =>\n\t\t\t\t\tcreateBlock( 'core/paragraph', { content, align } )\n\t\t\t\t),\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],"mappings":"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"}
|