@wordpress/block-library 8.30.0 → 8.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/build/block/edit.js +22 -16
- package/build/block/edit.js.map +1 -1
- package/build/button/edit.native.js +1 -1
- package/build/button/edit.native.js.map +1 -1
- package/build/code/save.js +3 -1
- package/build/code/save.js.map +1 -1
- package/build/cover/edit/index.js +2 -1
- package/build/cover/edit/index.js.map +1 -1
- package/build/details/edit.js +1 -0
- package/build/details/edit.js.map +1 -1
- package/build/file/edit.js +2 -0
- package/build/file/edit.js.map +1 -1
- package/build/heading/index.js +4 -3
- package/build/heading/index.js.map +1 -1
- package/build/image/edit.js +10 -39
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +27 -6
- package/build/image/image.js.map +1 -1
- package/build/media-text/edit.js +33 -9
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/index.js +5 -0
- package/build/media-text/index.js.map +1 -1
- package/build/media-text/media-container.js +30 -11
- package/build/media-text/media-container.js.map +1 -1
- package/build/media-text/save.js +2 -2
- package/build/media-text/save.js.map +1 -1
- package/build/navigation/edit/index.js +23 -29
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/navigation-menu-delete-control.js +12 -20
- package/build/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +24 -23
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +4 -4
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/use-navigation-menu.js +15 -12
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/navigation/view.js +12 -2
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +52 -27
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-submenu/edit.js +31 -9
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/pattern/edit.js +3 -1
- package/build/pattern/edit.js.map +1 -1
- package/build/post-author/edit.js +1 -0
- package/build/post-author/edit.js.map +1 -1
- package/build/post-excerpt/edit.js +1 -0
- package/build/post-excerpt/edit.js.map +1 -1
- package/build/post-featured-image/edit.js +16 -4
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/index.js +13 -2
- package/build/post-featured-image/index.js.map +1 -1
- package/build/post-featured-image/overlay-controls.js +82 -0
- package/build/post-featured-image/overlay-controls.js.map +1 -0
- package/build/post-featured-image/overlay.js +5 -54
- package/build/post-featured-image/overlay.js.map +1 -1
- package/build/post-navigation-link/edit.js +1 -0
- package/build/post-navigation-link/edit.js.map +1 -1
- package/build/post-terms/edit.js +2 -0
- package/build/post-terms/edit.js.map +1 -1
- package/build/quote/edit.js +18 -23
- package/build/quote/edit.js.map +1 -1
- package/build/read-more/edit.js +1 -0
- package/build/read-more/edit.js.map +1 -1
- package/build/search/edit.js +2 -0
- package/build/search/edit.js.map +1 -1
- package/build/search/edit.native.js +2 -2
- package/build/search/edit.native.js.map +1 -1
- package/build/site-tagline/edit.js +13 -4
- package/build/site-tagline/edit.js.map +1 -1
- package/build/site-tagline/index.js +4 -0
- package/build/site-tagline/index.js.map +1 -1
- package/build/social-link/edit.js +1 -1
- package/build/social-link/edit.js.map +1 -1
- package/build/social-link/icons/medium.js +1 -1
- package/build/social-link/icons/medium.js.map +1 -1
- package/build/social-link/icons/reddit.js +1 -1
- package/build/social-link/icons/reddit.js.map +1 -1
- package/build/table/deprecated.js +285 -175
- package/build/table/deprecated.js.map +1 -1
- package/build/table/index.js +1 -1
- package/build/template-part/edit/index.js +55 -47
- package/build/template-part/edit/index.js.map +1 -1
- package/build/template-part/edit/inner-blocks.js +106 -10
- package/build/template-part/edit/inner-blocks.js.map +1 -1
- package/build/template-part/edit/selection-modal.js +1 -9
- package/build/template-part/edit/selection-modal.js.map +1 -1
- package/build/utils/caption.js +19 -13
- package/build/utils/caption.js.map +1 -1
- package/build/utils/hooks.js +1 -0
- package/build/utils/hooks.js.map +1 -1
- package/build/video/edit.native.js +1 -1
- package/build/video/edit.native.js.map +1 -1
- package/build-module/block/edit.js +23 -17
- package/build-module/block/edit.js.map +1 -1
- package/build-module/button/edit.native.js +1 -1
- package/build-module/button/edit.native.js.map +1 -1
- package/build-module/code/save.js +3 -1
- package/build-module/code/save.js.map +1 -1
- package/build-module/cover/edit/index.js +2 -1
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/details/edit.js +1 -0
- package/build-module/details/edit.js.map +1 -1
- package/build-module/file/edit.js +2 -0
- package/build-module/file/edit.js.map +1 -1
- package/build-module/heading/index.js +4 -3
- package/build-module/heading/index.js.map +1 -1
- package/build-module/image/edit.js +11 -40
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/image.js +27 -6
- package/build-module/image/image.js.map +1 -1
- package/build-module/media-text/edit.js +34 -10
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/index.js +5 -0
- package/build-module/media-text/index.js.map +1 -1
- package/build-module/media-text/media-container.js +31 -12
- package/build-module/media-text/media-container.js.map +1 -1
- package/build-module/media-text/save.js +2 -2
- package/build-module/media-text/save.js.map +1 -1
- package/build-module/navigation/edit/index.js +24 -30
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-delete-control.js +15 -23
- package/build-module/navigation/edit/navigation-menu-delete-control.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +24 -23
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +4 -4
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/use-navigation-menu.js +15 -12
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/navigation/view.js +12 -2
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +55 -30
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +31 -9
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/pattern/edit.js +3 -1
- package/build-module/pattern/edit.js.map +1 -1
- package/build-module/post-author/edit.js +1 -0
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-excerpt/edit.js +1 -0
- package/build-module/post-excerpt/edit.js.map +1 -1
- package/build-module/post-featured-image/edit.js +17 -5
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/index.js +13 -2
- package/build-module/post-featured-image/index.js.map +1 -1
- package/build-module/post-featured-image/overlay-controls.js +75 -0
- package/build-module/post-featured-image/overlay-controls.js.map +1 -0
- package/build-module/post-featured-image/overlay.js +7 -56
- package/build-module/post-featured-image/overlay.js.map +1 -1
- package/build-module/post-navigation-link/edit.js +1 -0
- package/build-module/post-navigation-link/edit.js.map +1 -1
- package/build-module/post-terms/edit.js +2 -0
- package/build-module/post-terms/edit.js.map +1 -1
- package/build-module/quote/edit.js +20 -25
- package/build-module/quote/edit.js.map +1 -1
- package/build-module/read-more/edit.js +1 -0
- package/build-module/read-more/edit.js.map +1 -1
- package/build-module/search/edit.js +2 -0
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/edit.native.js +2 -2
- package/build-module/search/edit.native.js.map +1 -1
- package/build-module/site-tagline/edit.js +14 -5
- package/build-module/site-tagline/edit.js.map +1 -1
- package/build-module/site-tagline/index.js +4 -0
- package/build-module/site-tagline/index.js.map +1 -1
- package/build-module/social-link/edit.js +1 -1
- package/build-module/social-link/edit.js.map +1 -1
- package/build-module/social-link/icons/medium.js +1 -1
- package/build-module/social-link/icons/medium.js.map +1 -1
- package/build-module/social-link/icons/reddit.js +1 -1
- package/build-module/social-link/icons/reddit.js.map +1 -1
- package/build-module/table/deprecated.js +286 -176
- package/build-module/table/deprecated.js.map +1 -1
- package/build-module/table/index.js +1 -1
- package/build-module/template-part/edit/index.js +58 -50
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-module/template-part/edit/inner-blocks.js +108 -12
- package/build-module/template-part/edit/inner-blocks.js.map +1 -1
- package/build-module/template-part/edit/selection-modal.js +2 -10
- package/build-module/template-part/edit/selection-modal.js.map +1 -1
- package/build-module/utils/caption.js +19 -13
- package/build-module/utils/caption.js.map +1 -1
- package/build-module/utils/hooks.js +1 -0
- package/build-module/utils/hooks.js.map +1 -1
- package/build-module/video/edit.native.js +1 -1
- package/build-module/video/edit.native.js.map +1 -1
- package/build-style/audio/theme-rtl.css +1 -1
- package/build-style/audio/theme.css +1 -1
- package/build-style/cover/style-rtl.css +5 -2
- package/build-style/cover/style.css +5 -2
- package/build-style/editor-rtl.css +22 -12
- package/build-style/editor.css +22 -12
- package/build-style/embed/theme-rtl.css +1 -1
- package/build-style/embed/theme.css +1 -1
- package/build-style/file/editor-rtl.css +3 -0
- package/build-style/file/editor.css +3 -0
- package/build-style/image/editor-rtl.css +0 -3
- package/build-style/image/editor.css +0 -3
- package/build-style/image/theme-rtl.css +1 -1
- package/build-style/image/theme.css +1 -1
- package/build-style/media-text/editor-rtl.css +7 -1
- package/build-style/media-text/editor.css +7 -1
- package/build-style/pullquote/theme-rtl.css +2 -1
- package/build-style/pullquote/theme.css +2 -1
- package/build-style/quote/theme-rtl.css +6 -6
- package/build-style/quote/theme.css +6 -6
- package/build-style/search/style-rtl.css +10 -0
- package/build-style/search/style.css +10 -0
- package/build-style/social-links/editor-rtl.css +0 -4
- package/build-style/social-links/editor.css +0 -4
- package/build-style/social-links/style-rtl.css +2 -2
- package/build-style/social-links/style.css +2 -2
- package/build-style/style-rtl.css +17 -4
- package/build-style/style.css +17 -4
- package/build-style/table/theme-rtl.css +4 -3
- package/build-style/table/theme.css +4 -3
- package/build-style/template-part/editor-rtl.css +12 -4
- package/build-style/template-part/editor.css +12 -4
- package/build-style/template-part/theme-rtl.css +1 -1
- package/build-style/template-part/theme.css +1 -1
- package/build-style/theme-rtl.css +17 -15
- package/build-style/theme.css +17 -15
- package/build-style/video/theme-rtl.css +1 -1
- package/build-style/video/theme.css +1 -1
- package/package.json +34 -34
- package/src/archives/index.php +4 -0
- package/src/audio/theme.scss +1 -1
- package/src/avatar/index.php +6 -0
- package/src/block/edit.js +43 -32
- package/src/block/index.php +4 -0
- package/src/block/test/edit.native.js +67 -0
- package/src/button/edit.native.js +1 -1
- package/src/calendar/index.php +12 -0
- package/src/categories/index.php +6 -0
- package/src/code/save.js +7 -1
- package/src/comment-author-name/index.php +4 -0
- package/src/comment-content/index.php +4 -0
- package/src/comment-date/index.php +4 -0
- package/src/comment-edit-link/index.php +4 -0
- package/src/comment-reply-link/index.php +4 -0
- package/src/comment-template/index.php +4 -0
- package/src/comments/index.php +10 -0
- package/src/comments-pagination/index.php +4 -0
- package/src/comments-pagination-next/index.php +4 -0
- package/src/comments-pagination-numbers/index.php +4 -0
- package/src/comments-pagination-previous/index.php +4 -0
- package/src/comments-title/index.php +4 -0
- package/src/cover/edit/index.js +4 -1
- package/src/cover/index.php +4 -0
- package/src/cover/style.scss +6 -2
- package/src/details/edit.js +1 -0
- package/src/embed/theme.scss +1 -1
- package/src/file/edit.js +2 -0
- package/src/file/editor.scss +3 -0
- package/src/file/index.php +4 -0
- package/src/gallery/editor.scss +1 -1
- package/src/gallery/index.php +7 -1
- package/src/heading/index.js +4 -3
- package/src/heading/index.php +4 -0
- package/src/home-link/index.php +10 -0
- package/src/image/edit.js +11 -40
- package/src/image/editor.scss +2 -7
- package/src/image/image.js +25 -7
- package/src/image/index.php +12 -1
- package/src/image/theme.scss +1 -1
- package/src/latest-comments/index.php +4 -0
- package/src/latest-posts/index.php +8 -0
- package/src/loginout/index.php +4 -0
- package/src/media-text/block.json +5 -0
- package/src/media-text/edit.js +70 -19
- package/src/media-text/editor.scss +7 -1
- package/src/media-text/index.php +70 -0
- package/src/media-text/media-container.js +49 -9
- package/src/media-text/save.js +2 -2
- package/src/navigation/edit/index.js +67 -71
- package/src/navigation/edit/navigation-menu-delete-control.js +22 -49
- package/src/navigation/edit/navigation-menu-selector.js +39 -21
- package/src/navigation/edit/placeholder/index.js +4 -4
- package/src/navigation/edit/test/navigation-menu-selector.js +75 -53
- package/src/navigation/index.php +109 -26
- package/src/navigation/test/use-navigation-menu.js +21 -21
- package/src/navigation/use-navigation-menu.js +23 -9
- package/src/navigation/view.js +11 -2
- package/src/navigation-link/edit.js +64 -39
- package/src/navigation-link/index.php +14 -0
- package/src/navigation-submenu/edit.js +34 -10
- package/src/navigation-submenu/index.php +8 -0
- package/src/page-list/index.php +12 -0
- package/src/page-list-item/index.php +2 -0
- package/src/pattern/edit.js +4 -0
- package/src/pattern/index.php +2 -0
- package/src/post-author/edit.js +1 -0
- package/src/post-author/index.php +4 -0
- package/src/post-author-biography/index.php +4 -0
- package/src/post-author-name/index.php +4 -0
- package/src/post-comments-form/index.php +6 -0
- package/src/post-content/index.php +4 -0
- package/src/post-date/index.php +4 -0
- package/src/post-excerpt/edit.js +1 -0
- package/src/post-excerpt/index.php +4 -0
- package/src/post-featured-image/block.json +13 -2
- package/src/post-featured-image/edit.js +16 -1
- package/src/post-featured-image/editor.scss +1 -1
- package/src/post-featured-image/index.php +15 -0
- package/src/post-featured-image/overlay-controls.js +88 -0
- package/src/post-featured-image/overlay.js +17 -84
- package/src/post-navigation-link/edit.js +1 -0
- package/src/post-navigation-link/index.php +4 -0
- package/src/post-template/index.php +4 -0
- package/src/post-terms/edit.js +2 -0
- package/src/post-terms/index.php +6 -0
- package/src/post-title/index.php +2 -0
- package/src/pullquote/theme.scss +3 -1
- package/src/query/index.php +2 -0
- package/src/query-no-results/index.php +6 -0
- package/src/query-pagination/index.php +4 -0
- package/src/query-pagination-next/index.php +6 -0
- package/src/query-pagination-numbers/index.php +6 -0
- package/src/query-pagination-previous/index.php +4 -0
- package/src/query-title/index.php +4 -0
- package/src/quote/edit.js +27 -37
- package/src/quote/test/edit.native.js +4 -6
- package/src/quote/theme.scss +1 -2
- package/src/read-more/edit.js +1 -0
- package/src/read-more/index.php +4 -0
- package/src/rss/index.php +4 -0
- package/src/search/edit.js +2 -0
- package/src/search/edit.native.js +2 -2
- package/src/search/index.php +19 -1
- package/src/search/style.scss +11 -0
- package/src/shortcode/index.php +4 -0
- package/src/site-logo/editor.scss +2 -2
- package/src/site-logo/index.php +20 -0
- package/src/site-tagline/block.json +4 -0
- package/src/site-tagline/edit.js +16 -3
- package/src/site-tagline/index.php +13 -1
- package/src/site-title/index.php +4 -0
- package/src/social-link/edit.js +1 -1
- package/src/social-link/icons/medium.js +1 -1
- package/src/social-link/icons/reddit.js +1 -1
- package/src/social-link/index.php +22 -9
- package/src/social-link/socials-with-bg.scss +1 -1
- package/src/social-link/socials-without-bg.scss +1 -1
- package/src/social-links/editor.scss +1 -9
- package/src/table/block.json +1 -1
- package/src/table/deprecated.js +308 -175
- package/src/table/theme.scss +4 -2
- package/src/tag-cloud/index.php +4 -0
- package/src/template-part/edit/index.js +87 -79
- package/src/template-part/edit/inner-blocks.js +126 -13
- package/src/template-part/edit/selection-modal.js +1 -22
- package/src/template-part/editor.scss +11 -3
- package/src/template-part/index.php +12 -0
- package/src/template-part/theme.scss +1 -1
- package/src/term-description/index.php +4 -0
- package/src/utils/caption.js +19 -16
- package/src/utils/hooks.js +1 -0
- package/src/video/edit.native.js +2 -0
- package/src/video/editor.scss +2 -2
- package/src/video/theme.scss +1 -1
- package/tsconfig.json +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","useRegistry","useSelect","useDispatch","useRef","useMemo","useEffect","useEntityRecord","store","coreStore","Placeholder","Spinner","ToolbarButton","ToolbarGroup","__","useInnerBlocksProps","RecursionProvider","useHasRecursion","InnerBlocks","useBlockProps","Warning","privateApis","blockEditorPrivateApis","blockEditorStore","BlockControls","patternsPrivateApis","parse","cloneBlock","RichTextData","name","patternBlockName","unlock","useLayoutClasses","PARTIAL_SYNCING_SUPPORTED_BLOCKS","fullAlignments","getLegacyIdMap","blocks","content","nameCount","idToClientIdMap","block","innerBlocks","length","id","attributes","metadata","clientId","useInferredLayout","parentLayout","initialInferredAlignmentRef","alignment","current","undefined","isConstrained","type","hasFullAlignment","some","includes","align","layout","hasOverridableAttributes","Object","keys","bindings","values","binding","source","hasOverridableBlocks","getOverridableAttributes","entries","filter","map","attributeKey","applyInitialContentValuesToInnerBlocks","defaultValues","legacyIdMap","_legacyIdMap$block$cl","metadataName","newAttributes","_defaultValues$metada","contentValues","isAttributeEqual","attribute1","attribute2","toString","getContentValuesFromInnerBlocks","_legacyIdMap$block$cl2","assign","_content$metadataName","setBlockEditMode","setEditMode","mode","forEach","editMode","ReusableBlockEdit","ref","__unstableParentLayout","patternClientId","setAttributes","registry","hasAlreadyRendered","record","editedRecord","hasResolved","isMissing","initialContent","defaultContent","replaceInnerBlocks","__unstableMarkNextChangeAsNotPersistent","setBlockEditingMode","syncDerivedUpdates","userCanEdit","getBlockEditingMode","onNavigateToEntityRecord","editingMode","select","canUser","getBlocks","getSettings","_getBlockEditingMode","canEdit","canOverrideBlocks","initialBlocks","_editedRecord$blocks$","originalEditingMode","batch","layoutClasses","blockProps","className","innerBlocksProps","templateLock","renderAppender","ButtonBlockAppender","prevBlocks","subscribe","handleEditOriginal","postId","postType","resetContent","children","createElement","uniqueId","onClick","disabled","__experimentalIsFocusable"],"sources":["@wordpress/block-library/src/block/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useRegistry, useSelect, useDispatch } from '@wordpress/data';\nimport { useRef, useMemo, useEffect } from '@wordpress/element';\nimport { useEntityRecord, store as coreStore } from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tToolbarButton,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tInnerBlocks,\n\tuseBlockProps,\n\tWarning,\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n\tBlockControls,\n} from '@wordpress/block-editor';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\nimport { parse, cloneBlock } from '@wordpress/blocks';\nimport { RichTextData } from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { name as patternBlockName } from './index';\nimport { unlock } from '../lock-unlock';\n\nconst { useLayoutClasses } = unlock( blockEditorPrivateApis );\nconst { PARTIAL_SYNCING_SUPPORTED_BLOCKS } = unlock( patternsPrivateApis );\n\nconst fullAlignments = [ 'full', 'wide', 'left', 'right' ];\n\nfunction getLegacyIdMap( blocks, content, nameCount = {} ) {\n\tlet idToClientIdMap = {};\n\tfor ( const block of blocks ) {\n\t\tif ( block?.innerBlocks?.length ) {\n\t\t\tidToClientIdMap = {\n\t\t\t\t...idToClientIdMap,\n\t\t\t\t...getLegacyIdMap( block.innerBlocks, content, nameCount ),\n\t\t\t};\n\t\t}\n\n\t\tconst id = block.attributes.metadata?.id;\n\t\tconst clientId = block.clientId;\n\t\tif ( id && content?.[ id ] ) {\n\t\t\tidToClientIdMap[ clientId ] = id;\n\t\t}\n\t}\n\treturn idToClientIdMap;\n}\n\nconst useInferredLayout = ( blocks, parentLayout ) => {\n\tconst initialInferredAlignmentRef = useRef();\n\n\treturn useMemo( () => {\n\t\t// Exit early if the pattern's blocks haven't loaded yet.\n\t\tif ( ! blocks?.length ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tlet alignment = initialInferredAlignmentRef.current;\n\n\t\t// Only track the initial alignment so that temporarily removed\n\t\t// alignments can be reapplied.\n\t\tif ( alignment === undefined ) {\n\t\t\tconst isConstrained = parentLayout?.type === 'constrained';\n\t\t\tconst hasFullAlignment = blocks.some( ( block ) =>\n\t\t\t\tfullAlignments.includes( block.attributes.align )\n\t\t\t);\n\n\t\t\talignment = isConstrained && hasFullAlignment ? 'full' : null;\n\t\t\tinitialInferredAlignmentRef.current = alignment;\n\t\t}\n\n\t\tconst layout = alignment ? parentLayout : undefined;\n\n\t\treturn { alignment, layout };\n\t}, [ blocks, parentLayout ] );\n};\n\nfunction hasOverridableAttributes( block ) {\n\treturn (\n\t\tObject.keys( PARTIAL_SYNCING_SUPPORTED_BLOCKS ).includes(\n\t\t\tblock.name\n\t\t) &&\n\t\t!! block.attributes.metadata?.bindings &&\n\t\tObject.values( block.attributes.metadata.bindings ).some(\n\t\t\t( binding ) => binding.source === 'core/pattern-overrides'\n\t\t)\n\t);\n}\n\nfunction hasOverridableBlocks( blocks ) {\n\treturn blocks.some( ( block ) => {\n\t\tif ( hasOverridableAttributes( block ) ) return true;\n\t\treturn hasOverridableBlocks( block.innerBlocks );\n\t} );\n}\n\nfunction getOverridableAttributes( block ) {\n\treturn Object.entries( block.attributes.metadata.bindings )\n\t\t.filter(\n\t\t\t( [ , binding ] ) => binding.source === 'core/pattern-overrides'\n\t\t)\n\t\t.map( ( [ attributeKey ] ) => attributeKey );\n}\n\nfunction applyInitialContentValuesToInnerBlocks(\n\tblocks,\n\tcontent = {},\n\tdefaultValues,\n\tlegacyIdMap\n) {\n\treturn blocks.map( ( block ) => {\n\t\tconst innerBlocks = applyInitialContentValuesToInnerBlocks(\n\t\t\tblock.innerBlocks,\n\t\t\tcontent,\n\t\t\tdefaultValues,\n\t\t\tlegacyIdMap\n\t\t);\n\t\tconst metadataName =\n\t\t\tlegacyIdMap?.[ block.clientId ] ?? block.attributes.metadata?.name;\n\n\t\tif ( ! metadataName || ! hasOverridableAttributes( block ) ) {\n\t\t\treturn { ...block, innerBlocks };\n\t\t}\n\n\t\tconst attributes = getOverridableAttributes( block );\n\t\tconst newAttributes = { ...block.attributes };\n\t\tfor ( const attributeKey of attributes ) {\n\t\t\tdefaultValues[ metadataName ] ??= {};\n\t\t\tdefaultValues[ metadataName ][ attributeKey ] =\n\t\t\t\tblock.attributes[ attributeKey ];\n\n\t\t\tconst contentValues = content[ metadataName ];\n\t\t\tif ( contentValues?.[ attributeKey ] !== undefined ) {\n\t\t\t\tnewAttributes[ attributeKey ] = contentValues[ attributeKey ];\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\t...block,\n\t\t\tattributes: newAttributes,\n\t\t\tinnerBlocks,\n\t\t};\n\t} );\n}\n\nfunction isAttributeEqual( attribute1, attribute2 ) {\n\tif (\n\t\tattribute1 instanceof RichTextData &&\n\t\tattribute2 instanceof RichTextData\n\t) {\n\t\treturn attribute1.toString() === attribute2.toString();\n\t}\n\treturn attribute1 === attribute2;\n}\n\nfunction getContentValuesFromInnerBlocks( blocks, defaultValues, legacyIdMap ) {\n\t/** @type {Record<string, { values: Record<string, unknown>}>} */\n\tconst content = {};\n\tfor ( const block of blocks ) {\n\t\tif ( block.name === patternBlockName ) continue;\n\t\tif ( block.innerBlocks.length ) {\n\t\t\tObject.assign(\n\t\t\t\tcontent,\n\t\t\t\tgetContentValuesFromInnerBlocks(\n\t\t\t\t\tblock.innerBlocks,\n\t\t\t\t\tdefaultValues,\n\t\t\t\t\tlegacyIdMap\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\t\tconst metadataName =\n\t\t\tlegacyIdMap?.[ block.clientId ] ?? block.attributes.metadata?.name;\n\t\tif ( ! metadataName || ! hasOverridableAttributes( block ) ) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst attributes = getOverridableAttributes( block );\n\n\t\tfor ( const attributeKey of attributes ) {\n\t\t\tif (\n\t\t\t\t! isAttributeEqual(\n\t\t\t\t\tblock.attributes[ attributeKey ],\n\t\t\t\t\tdefaultValues?.[ metadataName ]?.[ attributeKey ]\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tcontent[ metadataName ] ??= {};\n\t\t\t\t// TODO: We need a way to represent `undefined` in the serialized overrides.\n\t\t\t\t// Also see: https://github.com/WordPress/gutenberg/pull/57249#discussion_r1452987871\n\t\t\t\tcontent[ metadataName ][ attributeKey ] =\n\t\t\t\t\tblock.attributes[ attributeKey ] === undefined\n\t\t\t\t\t\t? // TODO: We use an empty string to represent undefined for now until\n\t\t\t\t\t\t // we support a richer format for overrides and the block binding API.\n\t\t\t\t\t\t // Currently only the `linkTarget` attribute of `core/button` is affected.\n\t\t\t\t\t\t ''\n\t\t\t\t\t\t: block.attributes[ attributeKey ];\n\t\t\t}\n\t\t}\n\t}\n\treturn Object.keys( content ).length > 0 ? content : undefined;\n}\n\nfunction setBlockEditMode( setEditMode, blocks, mode ) {\n\tblocks.forEach( ( block ) => {\n\t\tconst editMode =\n\t\t\tmode ||\n\t\t\t( hasOverridableAttributes( block ) ? 'contentOnly' : 'disabled' );\n\t\tsetEditMode( block.clientId, editMode );\n\n\t\tsetBlockEditMode(\n\t\t\tsetEditMode,\n\t\t\tblock.innerBlocks,\n\t\t\t// Disable editing for nested patterns.\n\t\t\tblock.name === patternBlockName ? 'disabled' : mode\n\t\t);\n\t} );\n}\n\nexport default function ReusableBlockEdit( {\n\tname,\n\tattributes: { ref, content },\n\t__unstableParentLayout: parentLayout,\n\tclientId: patternClientId,\n\tsetAttributes,\n} ) {\n\tconst registry = useRegistry();\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\tconst { record, editedRecord, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst isMissing = hasResolved && ! record;\n\n\t// The initial value of the `content` attribute.\n\tconst initialContent = useRef( content );\n\n\t// The default content values from the original pattern for overridable attributes.\n\t// Set by the `applyInitialContentValuesToInnerBlocks` function.\n\tconst defaultContent = useRef( {} );\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tsetBlockEditingMode,\n\t} = useDispatch( blockEditorStore );\n\tconst { syncDerivedUpdates } = unlock( useDispatch( blockEditorStore ) );\n\n\tconst {\n\t\tinnerBlocks,\n\t\tuserCanEdit,\n\t\tgetBlockEditingMode,\n\t\tonNavigateToEntityRecord,\n\t\teditingMode,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\tconst {\n\t\t\t\tgetBlocks,\n\t\t\t\tgetSettings,\n\t\t\t\tgetBlockEditingMode: _getBlockEditingMode,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst blocks = getBlocks( patternClientId );\n\t\t\tconst canEdit = canUser( 'update', 'blocks', ref );\n\n\t\t\t// For editing link to the site editor if the theme and user permissions support it.\n\t\t\treturn {\n\t\t\t\tinnerBlocks: blocks,\n\t\t\t\tuserCanEdit: canEdit,\n\t\t\t\tgetBlockEditingMode: _getBlockEditingMode,\n\t\t\t\tonNavigateToEntityRecord:\n\t\t\t\t\tgetSettings().onNavigateToEntityRecord,\n\t\t\t\teditingMode: _getBlockEditingMode( patternClientId ),\n\t\t\t};\n\t\t},\n\t\t[ patternClientId, ref ]\n\t);\n\n\t// Sync the editing mode of the pattern block with the inner blocks.\n\tuseEffect( () => {\n\t\tsetBlockEditMode(\n\t\t\tsetBlockEditingMode,\n\t\t\tinnerBlocks,\n\t\t\t// Disable editing if the pattern itself is disabled.\n\t\t\teditingMode === 'disabled' ? 'disabled' : undefined\n\t\t);\n\t}, [ editingMode, innerBlocks, setBlockEditingMode ] );\n\n\tconst canOverrideBlocks = useMemo(\n\t\t() => hasOverridableBlocks( innerBlocks ),\n\t\t[ innerBlocks ]\n\t);\n\n\tconst initialBlocks = useMemo(\n\t\t() =>\n\t\t\t// Clone the blocks to generate new client IDs.\n\t\t\teditedRecord.blocks?.map( ( block ) => cloneBlock( block ) ) ??\n\t\t\t( editedRecord.content && typeof editedRecord.content !== 'function'\n\t\t\t\t? parse( editedRecord.content )\n\t\t\t\t: [] ),\n\t\t[ editedRecord.blocks, editedRecord.content ]\n\t);\n\n\tconst legacyIdMap = useRef( {} );\n\n\t// Apply the initial overrides from the pattern block to the inner blocks.\n\tuseEffect( () => {\n\t\t// Build a map of clientIds to the old nano id system to provide back compat.\n\t\tlegacyIdMap.current = getLegacyIdMap(\n\t\t\tinitialBlocks,\n\t\t\tinitialContent.current\n\t\t);\n\t\tdefaultContent.current = {};\n\t\tconst originalEditingMode = getBlockEditingMode( patternClientId );\n\t\t// Replace the contents of the blocks with the overrides.\n\t\tregistry.batch( () => {\n\t\t\tsetBlockEditingMode( patternClientId, 'default' );\n\t\t\tsyncDerivedUpdates( () => {\n\t\t\t\treplaceInnerBlocks(\n\t\t\t\t\tpatternClientId,\n\t\t\t\t\tapplyInitialContentValuesToInnerBlocks(\n\t\t\t\t\t\tinitialBlocks,\n\t\t\t\t\t\tinitialContent.current,\n\t\t\t\t\t\tdefaultContent.current,\n\t\t\t\t\t\tlegacyIdMap.current\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} );\n\t\t\tsetBlockEditingMode( patternClientId, originalEditingMode );\n\t\t} );\n\t}, [\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tpatternClientId,\n\t\tinitialBlocks,\n\t\treplaceInnerBlocks,\n\t\tregistry,\n\t\tgetBlockEditingMode,\n\t\tsetBlockEditingMode,\n\t\tsyncDerivedUpdates,\n\t] );\n\n\tconst { alignment, layout } = useInferredLayout(\n\t\tinnerBlocks,\n\t\tparentLayout\n\t);\n\tconst layoutClasses = useLayoutClasses( { layout }, name );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames(\n\t\t\t'block-library-block__reusable-block-container',\n\t\t\tlayout && layoutClasses,\n\t\t\t{ [ `align${ alignment }` ]: alignment }\n\t\t),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplateLock: 'all',\n\t\tlayout,\n\t\trenderAppender: innerBlocks?.length\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\t// Sync the `content` attribute from the updated blocks to the pattern block.\n\t// `syncDerivedUpdates` is used here to avoid creating an additional undo level.\n\tuseEffect( () => {\n\t\tconst { getBlocks } = registry.select( blockEditorStore );\n\t\tlet prevBlocks = getBlocks( patternClientId );\n\t\treturn registry.subscribe( () => {\n\t\t\tconst blocks = getBlocks( patternClientId );\n\t\t\tif ( blocks !== prevBlocks ) {\n\t\t\t\tprevBlocks = blocks;\n\t\t\t\tsyncDerivedUpdates( () => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tcontent: getContentValuesFromInnerBlocks(\n\t\t\t\t\t\t\tblocks,\n\t\t\t\t\t\t\tdefaultContent.current,\n\t\t\t\t\t\t\tlegacyIdMap.current\n\t\t\t\t\t\t),\n\t\t\t\t\t} );\n\t\t\t\t} );\n\t\t\t}\n\t\t}, blockEditorStore );\n\t}, [ syncDerivedUpdates, patternClientId, registry, setAttributes ] );\n\n\tconst handleEditOriginal = () => {\n\t\tonNavigateToEntityRecord( {\n\t\t\tpostId: ref,\n\t\t\tpostType: 'wp_block',\n\t\t} );\n\t};\n\n\tconst resetContent = () => {\n\t\tif ( content ) {\n\t\t\treplaceInnerBlocks( patternClientId, initialBlocks );\n\t\t}\n\t};\n\n\tlet children = null;\n\n\tif ( hasAlreadyRendered ) {\n\t\tchildren = (\n\t\t\t<Warning>\n\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t</Warning>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\tchildren = (\n\t\t\t<Warning>\n\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t</Warning>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\tchildren = (\n\t\t\t<Placeholder>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t{ userCanEdit && onNavigateToEntityRecord && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton onClick={ handleEditOriginal }>\n\t\t\t\t\t\t\t{ __( 'Edit original' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\n\t\t\t{ canOverrideBlocks && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ resetContent }\n\t\t\t\t\t\t\tdisabled={ ! content }\n\t\t\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\n\t\t\t{ children === null ? (\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t) : (\n\t\t\t\t<div { ...blockProps }>{ children }</div>\n\t\t\t) }\n\t\t</RecursionProvider>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["classnames","useRegistry","useSelect","useDispatch","useRef","useMemo","useEffect","useEntityRecord","store","coreStore","Placeholder","Spinner","ToolbarButton","ToolbarGroup","__","useInnerBlocksProps","RecursionProvider","useHasRecursion","InnerBlocks","useBlockProps","Warning","privateApis","blockEditorPrivateApis","blockEditorStore","BlockControls","patternsPrivateApis","parse","cloneBlock","blocksStore","RichTextData","name","patternBlockName","unlock","useLayoutClasses","isOverridableBlock","fullAlignments","getLegacyIdMap","blocks","content","nameCount","idToClientIdMap","block","innerBlocks","length","id","attributes","metadata","clientId","useInferredLayout","parentLayout","initialInferredAlignmentRef","alignment","current","undefined","isConstrained","type","hasFullAlignment","some","includes","align","layout","hasOverridableBlocks","getOverridableAttributes","Object","entries","bindings","filter","binding","source","map","attributeKey","applyInitialContentValuesToInnerBlocks","defaultValues","legacyIdMap","_legacyIdMap$block$cl","metadataName","newAttributes","_defaultValues$metada","contentValues","isAttributeEqual","attribute1","attribute2","toString","getContentValuesFromInnerBlocks","_legacyIdMap$block$cl2","assign","_content$metadataName","keys","setBlockEditMode","setEditMode","mode","forEach","editMode","ReusableBlockEdit","ref","__unstableParentLayout","patternClientId","setAttributes","registry","hasAlreadyRendered","record","editedRecord","hasResolved","isMissing","initialContent","defaultContent","replaceInnerBlocks","__unstableMarkNextChangeAsNotPersistent","setBlockEditingMode","syncDerivedUpdates","userCanEdit","getBlockEditingMode","onNavigateToEntityRecord","editingMode","hasPatternOverridesSource","select","canUser","getBlocks","getSettings","_getBlockEditingMode","getBlockBindingsSource","canEdit","canOverrideBlocks","initialBlocks","_editedRecord$blocks$","originalEditingMode","batch","layoutClasses","blockProps","className","innerBlocksProps","templateLock","renderAppender","ButtonBlockAppender","prevBlocks","subscribe","handleEditOriginal","postId","postType","resetContent","children","createElement","uniqueId","onClick","disabled","__experimentalIsFocusable"],"sources":["@wordpress/block-library/src/block/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useRegistry, useSelect, useDispatch } from '@wordpress/data';\nimport { useRef, useMemo, useEffect } from '@wordpress/element';\nimport { useEntityRecord, store as coreStore } from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tToolbarButton,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\tRecursionProvider,\n\tuseHasRecursion,\n\tInnerBlocks,\n\tuseBlockProps,\n\tWarning,\n\tprivateApis as blockEditorPrivateApis,\n\tstore as blockEditorStore,\n\tBlockControls,\n} from '@wordpress/block-editor';\nimport { privateApis as patternsPrivateApis } from '@wordpress/patterns';\nimport { parse, cloneBlock, store as blocksStore } from '@wordpress/blocks';\nimport { RichTextData } from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { name as patternBlockName } from './index';\nimport { unlock } from '../lock-unlock';\n\nconst { useLayoutClasses } = unlock( blockEditorPrivateApis );\nconst { isOverridableBlock } = unlock( patternsPrivateApis );\n\nconst fullAlignments = [ 'full', 'wide', 'left', 'right' ];\n\nfunction getLegacyIdMap( blocks, content, nameCount = {} ) {\n\tlet idToClientIdMap = {};\n\tfor ( const block of blocks ) {\n\t\tif ( block?.innerBlocks?.length ) {\n\t\t\tidToClientIdMap = {\n\t\t\t\t...idToClientIdMap,\n\t\t\t\t...getLegacyIdMap( block.innerBlocks, content, nameCount ),\n\t\t\t};\n\t\t}\n\n\t\tconst id = block.attributes.metadata?.id;\n\t\tconst clientId = block.clientId;\n\t\tif ( id && content?.[ id ] ) {\n\t\t\tidToClientIdMap[ clientId ] = id;\n\t\t}\n\t}\n\treturn idToClientIdMap;\n}\n\nconst useInferredLayout = ( blocks, parentLayout ) => {\n\tconst initialInferredAlignmentRef = useRef();\n\n\treturn useMemo( () => {\n\t\t// Exit early if the pattern's blocks haven't loaded yet.\n\t\tif ( ! blocks?.length ) {\n\t\t\treturn {};\n\t\t}\n\n\t\tlet alignment = initialInferredAlignmentRef.current;\n\n\t\t// Only track the initial alignment so that temporarily removed\n\t\t// alignments can be reapplied.\n\t\tif ( alignment === undefined ) {\n\t\t\tconst isConstrained = parentLayout?.type === 'constrained';\n\t\t\tconst hasFullAlignment = blocks.some( ( block ) =>\n\t\t\t\tfullAlignments.includes( block.attributes.align )\n\t\t\t);\n\n\t\t\talignment = isConstrained && hasFullAlignment ? 'full' : null;\n\t\t\tinitialInferredAlignmentRef.current = alignment;\n\t\t}\n\n\t\tconst layout = alignment ? parentLayout : undefined;\n\n\t\treturn { alignment, layout };\n\t}, [ blocks, parentLayout ] );\n};\n\nfunction hasOverridableBlocks( blocks ) {\n\treturn blocks.some( ( block ) => {\n\t\tif ( isOverridableBlock( block ) ) return true;\n\t\treturn hasOverridableBlocks( block.innerBlocks );\n\t} );\n}\n\nfunction getOverridableAttributes( block ) {\n\treturn Object.entries( block.attributes.metadata.bindings )\n\t\t.filter(\n\t\t\t( [ , binding ] ) => binding.source === 'core/pattern-overrides'\n\t\t)\n\t\t.map( ( [ attributeKey ] ) => attributeKey );\n}\n\nfunction applyInitialContentValuesToInnerBlocks(\n\tblocks,\n\tcontent = {},\n\tdefaultValues,\n\tlegacyIdMap\n) {\n\treturn blocks.map( ( block ) => {\n\t\tconst innerBlocks = applyInitialContentValuesToInnerBlocks(\n\t\t\tblock.innerBlocks,\n\t\t\tcontent,\n\t\t\tdefaultValues,\n\t\t\tlegacyIdMap\n\t\t);\n\t\tconst metadataName =\n\t\t\tlegacyIdMap?.[ block.clientId ] ?? block.attributes.metadata?.name;\n\n\t\tif ( ! metadataName || ! isOverridableBlock( block ) ) {\n\t\t\treturn { ...block, innerBlocks };\n\t\t}\n\n\t\tconst attributes = getOverridableAttributes( block );\n\t\tconst newAttributes = { ...block.attributes };\n\t\tfor ( const attributeKey of attributes ) {\n\t\t\tdefaultValues[ metadataName ] ??= {};\n\t\t\tdefaultValues[ metadataName ][ attributeKey ] =\n\t\t\t\tblock.attributes[ attributeKey ];\n\n\t\t\tconst contentValues = content[ metadataName ];\n\t\t\tif ( contentValues?.[ attributeKey ] !== undefined ) {\n\t\t\t\tnewAttributes[ attributeKey ] = contentValues[ attributeKey ];\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\t...block,\n\t\t\tattributes: newAttributes,\n\t\t\tinnerBlocks,\n\t\t};\n\t} );\n}\n\nfunction isAttributeEqual( attribute1, attribute2 ) {\n\tif (\n\t\tattribute1 instanceof RichTextData &&\n\t\tattribute2 instanceof RichTextData\n\t) {\n\t\treturn attribute1.toString() === attribute2.toString();\n\t}\n\treturn attribute1 === attribute2;\n}\n\nfunction getContentValuesFromInnerBlocks( blocks, defaultValues, legacyIdMap ) {\n\t/** @type {Record<string, { values: Record<string, unknown>}>} */\n\tconst content = {};\n\tfor ( const block of blocks ) {\n\t\tif ( block.name === patternBlockName ) continue;\n\t\tif ( block.innerBlocks.length ) {\n\t\t\tObject.assign(\n\t\t\t\tcontent,\n\t\t\t\tgetContentValuesFromInnerBlocks(\n\t\t\t\t\tblock.innerBlocks,\n\t\t\t\t\tdefaultValues,\n\t\t\t\t\tlegacyIdMap\n\t\t\t\t)\n\t\t\t);\n\t\t}\n\t\tconst metadataName =\n\t\t\tlegacyIdMap?.[ block.clientId ] ?? block.attributes.metadata?.name;\n\t\tif ( ! metadataName || ! isOverridableBlock( block ) ) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst attributes = getOverridableAttributes( block );\n\n\t\tfor ( const attributeKey of attributes ) {\n\t\t\tif (\n\t\t\t\t! isAttributeEqual(\n\t\t\t\t\tblock.attributes[ attributeKey ],\n\t\t\t\t\tdefaultValues?.[ metadataName ]?.[ attributeKey ]\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tcontent[ metadataName ] ??= {};\n\t\t\t\t// TODO: We need a way to represent `undefined` in the serialized overrides.\n\t\t\t\t// Also see: https://github.com/WordPress/gutenberg/pull/57249#discussion_r1452987871\n\t\t\t\tcontent[ metadataName ][ attributeKey ] =\n\t\t\t\t\tblock.attributes[ attributeKey ] === undefined\n\t\t\t\t\t\t? // TODO: We use an empty string to represent undefined for now until\n\t\t\t\t\t\t // we support a richer format for overrides and the block binding API.\n\t\t\t\t\t\t // Currently only the `linkTarget` attribute of `core/button` is affected.\n\t\t\t\t\t\t ''\n\t\t\t\t\t\t: block.attributes[ attributeKey ];\n\t\t\t}\n\t\t}\n\t}\n\treturn Object.keys( content ).length > 0 ? content : undefined;\n}\n\nfunction setBlockEditMode( setEditMode, blocks, mode ) {\n\tblocks.forEach( ( block ) => {\n\t\tconst editMode =\n\t\t\tmode ||\n\t\t\t( isOverridableBlock( block ) ? 'contentOnly' : 'disabled' );\n\t\tsetEditMode( block.clientId, editMode );\n\n\t\tsetBlockEditMode(\n\t\t\tsetEditMode,\n\t\t\tblock.innerBlocks,\n\t\t\t// Disable editing for nested patterns.\n\t\t\tblock.name === patternBlockName ? 'disabled' : mode\n\t\t);\n\t} );\n}\n\nexport default function ReusableBlockEdit( {\n\tname,\n\tattributes: { ref, content },\n\t__unstableParentLayout: parentLayout,\n\tclientId: patternClientId,\n\tsetAttributes,\n} ) {\n\tconst registry = useRegistry();\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\tconst { record, editedRecord, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst isMissing = hasResolved && ! record;\n\n\t// The initial value of the `content` attribute.\n\tconst initialContent = useRef( content );\n\n\t// The default content values from the original pattern for overridable attributes.\n\t// Set by the `applyInitialContentValuesToInnerBlocks` function.\n\tconst defaultContent = useRef( {} );\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tsetBlockEditingMode,\n\t} = useDispatch( blockEditorStore );\n\tconst { syncDerivedUpdates } = unlock( useDispatch( blockEditorStore ) );\n\n\tconst {\n\t\tinnerBlocks,\n\t\tuserCanEdit,\n\t\tgetBlockEditingMode,\n\t\tonNavigateToEntityRecord,\n\t\teditingMode,\n\t\thasPatternOverridesSource,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { canUser } = select( coreStore );\n\t\t\tconst {\n\t\t\t\tgetBlocks,\n\t\t\t\tgetSettings,\n\t\t\t\tgetBlockEditingMode: _getBlockEditingMode,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { getBlockBindingsSource } = unlock( select( blocksStore ) );\n\t\t\tconst blocks = getBlocks( patternClientId );\n\t\t\tconst canEdit = canUser( 'update', 'blocks', ref );\n\n\t\t\t// For editing link to the site editor if the theme and user permissions support it.\n\t\t\treturn {\n\t\t\t\tinnerBlocks: blocks,\n\t\t\t\tuserCanEdit: canEdit,\n\t\t\t\tgetBlockEditingMode: _getBlockEditingMode,\n\t\t\t\tonNavigateToEntityRecord:\n\t\t\t\t\tgetSettings().onNavigateToEntityRecord,\n\t\t\t\teditingMode: _getBlockEditingMode( patternClientId ),\n\t\t\t\thasPatternOverridesSource: !! getBlockBindingsSource(\n\t\t\t\t\t'core/pattern-overrides'\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ patternClientId, ref ]\n\t);\n\n\t// Sync the editing mode of the pattern block with the inner blocks.\n\tuseEffect( () => {\n\t\tsetBlockEditMode(\n\t\t\tsetBlockEditingMode,\n\t\t\tinnerBlocks,\n\t\t\t// Disable editing if the pattern itself is disabled.\n\t\t\teditingMode === 'disabled' || ! hasPatternOverridesSource\n\t\t\t\t? 'disabled'\n\t\t\t\t: undefined\n\t\t);\n\t}, [\n\t\teditingMode,\n\t\tinnerBlocks,\n\t\tsetBlockEditingMode,\n\t\thasPatternOverridesSource,\n\t] );\n\n\tconst canOverrideBlocks = useMemo(\n\t\t() => hasPatternOverridesSource && hasOverridableBlocks( innerBlocks ),\n\t\t[ hasPatternOverridesSource, innerBlocks ]\n\t);\n\n\tconst initialBlocks = useMemo(\n\t\t() =>\n\t\t\t// Clone the blocks to generate new client IDs.\n\t\t\teditedRecord.blocks?.map( ( block ) => cloneBlock( block ) ) ??\n\t\t\t( editedRecord.content && typeof editedRecord.content !== 'function'\n\t\t\t\t? parse( editedRecord.content )\n\t\t\t\t: [] ),\n\t\t[ editedRecord.blocks, editedRecord.content ]\n\t);\n\n\tconst legacyIdMap = useRef( {} );\n\n\t// Apply the initial overrides from the pattern block to the inner blocks.\n\tuseEffect( () => {\n\t\t// Build a map of clientIds to the old nano id system to provide back compat.\n\t\tlegacyIdMap.current = getLegacyIdMap(\n\t\t\tinitialBlocks,\n\t\t\tinitialContent.current\n\t\t);\n\t\tdefaultContent.current = {};\n\t\tconst originalEditingMode = getBlockEditingMode( patternClientId );\n\t\t// Replace the contents of the blocks with the overrides.\n\t\tregistry.batch( () => {\n\t\t\tsetBlockEditingMode( patternClientId, 'default' );\n\t\t\tsyncDerivedUpdates( () => {\n\t\t\t\tconst blocks = hasPatternOverridesSource\n\t\t\t\t\t? applyInitialContentValuesToInnerBlocks(\n\t\t\t\t\t\t\tinitialBlocks,\n\t\t\t\t\t\t\tinitialContent.current,\n\t\t\t\t\t\t\tdefaultContent.current,\n\t\t\t\t\t\t\tlegacyIdMap.current\n\t\t\t\t\t )\n\t\t\t\t\t: initialBlocks;\n\n\t\t\t\treplaceInnerBlocks( patternClientId, blocks );\n\t\t\t} );\n\t\t\tsetBlockEditingMode( patternClientId, originalEditingMode );\n\t\t} );\n\t}, [\n\t\thasPatternOverridesSource,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tpatternClientId,\n\t\tinitialBlocks,\n\t\treplaceInnerBlocks,\n\t\tregistry,\n\t\tgetBlockEditingMode,\n\t\tsetBlockEditingMode,\n\t\tsyncDerivedUpdates,\n\t] );\n\n\tconst { alignment, layout } = useInferredLayout(\n\t\tinnerBlocks,\n\t\tparentLayout\n\t);\n\tconst layoutClasses = useLayoutClasses( { layout }, name );\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames(\n\t\t\t'block-library-block__reusable-block-container',\n\t\t\tlayout && layoutClasses,\n\t\t\t{ [ `align${ alignment }` ]: alignment }\n\t\t),\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplateLock: 'all',\n\t\tlayout,\n\t\trenderAppender: innerBlocks?.length\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\t// Sync the `content` attribute from the updated blocks to the pattern block.\n\t// `syncDerivedUpdates` is used here to avoid creating an additional undo level.\n\tuseEffect( () => {\n\t\tif ( ! hasPatternOverridesSource ) {\n\t\t\treturn;\n\t\t}\n\t\tconst { getBlocks } = registry.select( blockEditorStore );\n\t\tlet prevBlocks = getBlocks( patternClientId );\n\t\treturn registry.subscribe( () => {\n\t\t\tconst blocks = getBlocks( patternClientId );\n\t\t\tif ( blocks !== prevBlocks ) {\n\t\t\t\tprevBlocks = blocks;\n\t\t\t\tsyncDerivedUpdates( () => {\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\tcontent: getContentValuesFromInnerBlocks(\n\t\t\t\t\t\t\tblocks,\n\t\t\t\t\t\t\tdefaultContent.current,\n\t\t\t\t\t\t\tlegacyIdMap.current\n\t\t\t\t\t\t),\n\t\t\t\t\t} );\n\t\t\t\t} );\n\t\t\t}\n\t\t}, blockEditorStore );\n\t}, [\n\t\thasPatternOverridesSource,\n\t\tsyncDerivedUpdates,\n\t\tpatternClientId,\n\t\tregistry,\n\t\tsetAttributes,\n\t] );\n\n\tconst handleEditOriginal = () => {\n\t\tonNavigateToEntityRecord( {\n\t\t\tpostId: ref,\n\t\t\tpostType: 'wp_block',\n\t\t} );\n\t};\n\n\tconst resetContent = () => {\n\t\tif ( content ) {\n\t\t\treplaceInnerBlocks( patternClientId, initialBlocks );\n\t\t}\n\t};\n\n\tlet children = null;\n\n\tif ( hasAlreadyRendered ) {\n\t\tchildren = (\n\t\t\t<Warning>\n\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t</Warning>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\tchildren = (\n\t\t\t<Warning>\n\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t</Warning>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\tchildren = (\n\t\t\t<Placeholder>\n\t\t\t\t<Spinner />\n\t\t\t</Placeholder>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t{ userCanEdit && onNavigateToEntityRecord && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton onClick={ handleEditOriginal }>\n\t\t\t\t\t\t\t{ __( 'Edit original' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\n\t\t\t{ canOverrideBlocks && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ resetContent }\n\t\t\t\t\t\t\tdisabled={ ! content }\n\t\t\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Reset' ) }\n\t\t\t\t\t\t</ToolbarButton>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\n\t\t\t{ children === null ? (\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t) : (\n\t\t\t\t<div { ...blockProps }>{ children }</div>\n\t\t\t) }\n\t\t</RecursionProvider>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["View","AccessibilityInfo","Platform","Text","useCallback","useEffect","useState","useRef","useSelect","useDispatch","__","_x","RichText","InspectorControls","BlockControls","store","blockEditorStore","getColorObjectByAttributeValues","getGradientValueBySlug","__experimentalGetColorClassesAndStyles","getColorClassesAndStyles","PanelBody","ToolbarGroup","ToolbarButton","LinkSettingsNavigation","UnitControl","getValueAndUnit","BottomSheetSelectControl","CSS_UNITS","filterUnitsWithSettings","useMobileGlobalStylesColors","link","editPostStore","richTextStyle","styles","ColorBackground","MIN_BORDER_RADIUS_VALUE","MAX_BORDER_RADIUS_VALUE","INITIAL_MAX_WIDTH","MIN_WIDTH","MIN_WIDTH_MARGINS","button75","marginLeft","button50","button25","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","options","value","label","createElement","title","onChange","ButtonEdit","props","isSelected","parentWidth","initialBorderRadius","attributes","style","border","radius","valueUnit","editorSidebarOpened","numOfButtons","select","isEditorSidebarOpened","getBlockCount","getBlockRootClientId","parentId","clientId","blockCount","currentIsEditorSidebarOpened","closeGeneralSidebar","maxWidth","setMaxWidth","isLinkSheetVisible","setIsLinkSheetVisible","isButtonFocused","setIsButtonFocused","placeholderTextWidth","setPlaceholderTextWidth","borderRadiusUnit","setBorderRadiusUnit","richTextRef","colors","gradients","onToggleButtonFocus","onSetMaxWidth","richText","current","OS","blur","isScreenReaderEnabled","then","enabled","focus","linkSettingsActions","onPress","onClearSettings","linkSettingsOptions","url","placeholder","autoFocus","autoFill","openInNewTab","linkRel","noFocusLinkSettingOptions","getBackgroundColor","backgroundColor","gradient","gradientValue","colorProps","colorObject","color","background","defaultButton","getTextColor","textColor","onChangeText","text","onChangeBorderRadius","newRadius","newStyle","getNewStyle","onChangeBorderRadiusUnit","newRadiusUnit","newBorderRadius","getBorderRadiusValue","radiusUnit","onShowLinkSettings","onHideLinkSettings","rel","linkTarget","onLayout","nativeEvent","layout","isParentWidthDidChange","marginRight","spacing","isParentWidthChanged","isWidthChanged","onRemove","onDeleteBlock","onReplace","onPlaceholderTextWidth","textWidth","lines","Math","min","onSetRef","ref","onUnstableOnFocus","onBlur","dismissSheet","getLinkSettings","isCompatibleWithSettings","isVisible","onClose","withBottomSheet","hasPicker","actions","showIcon","getPlaceholderWidth","placeholderText","onTextLayout","currentBorderRadius","defaultBorderRadius","valueAndUnit","Number","isInteger","parseInt","valueToConvert","parseFloat","mergeBlocks","buttonStyle","align","paddingTop","borderWidth","borderRadiusValue","borderRadius","buttonBorderRadiusValue","floor","outlineBorderRadius","minWidth","isFixedWidth","outLineStyles","outline","borderColor","textStyles","paddingLeft","paddingRight","pointerEvents","setRef","textAlign","placeholderTextColor","identifier","tagName","id","withoutInteractiveFormatting","unstableOnFocus","__unstableMobileNoFocusOnMount","selectionColor","onMerge","fontSize","Fragment","icon","onClick","isActive","max","onUnitChange","unit","units"],"sources":["@wordpress/block-library/src/button/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, AccessibilityInfo, Platform, Text } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback, useEffect, useState, useRef } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tRichText,\n\tInspectorControls,\n\tBlockControls,\n\tstore as blockEditorStore,\n\tgetColorObjectByAttributeValues,\n\tgetGradientValueBySlug,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tToolbarGroup,\n\tToolbarButton,\n\tLinkSettingsNavigation,\n\tUnitControl,\n\tgetValueAndUnit,\n\tBottomSheetSelectControl,\n\tCSS_UNITS,\n\tfilterUnitsWithSettings,\n\tuseMobileGlobalStylesColors,\n} from '@wordpress/components';\nimport { link } from '@wordpress/icons';\n// eslint-disable-next-line no-restricted-imports\nimport { store as editPostStore } from '@wordpress/edit-post';\n\n/**\n * Internal dependencies\n */\nimport richTextStyle from './rich-text.scss';\nimport styles from './editor.scss';\nimport ColorBackground from './color-background';\n\nconst MIN_BORDER_RADIUS_VALUE = 0;\nconst MAX_BORDER_RADIUS_VALUE = 50;\nconst INITIAL_MAX_WIDTH = 108;\nconst MIN_WIDTH = 40;\n// Map of the percentage width to pixel subtraction that make the buttons fit nicely into columns.\nconst MIN_WIDTH_MARGINS = {\n\t100: 0,\n\t75: styles.button75?.marginLeft,\n\t50: styles.button50?.marginLeft,\n\t25: styles.button25?.marginLeft,\n};\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tlet width = selectedWidth === newWidth ? undefined : newWidth;\n\t\tif ( newWidth === 'auto' ) {\n\t\t\twidth = undefined;\n\t\t}\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\tconst options = [\n\t\t{ value: 'auto', label: __( 'Auto' ) },\n\t\t{ value: 25, label: '25%' },\n\t\t{ value: 50, label: '50%' },\n\t\t{ value: 75, label: '75%' },\n\t\t{ value: 100, label: '100%' },\n\t];\n\n\tif ( ! selectedWidth ) {\n\t\tselectedWidth = 'auto';\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width Settings' ) }>\n\t\t\t<BottomSheetSelectControl\n\t\t\t\tlabel={ __( 'Button width' ) }\n\t\t\t\tvalue={ selectedWidth }\n\t\t\t\tonChange={ handleChange }\n\t\t\t\toptions={ options }\n\t\t\t/>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst { isSelected, parentWidth } = props;\n\tconst initialBorderRadius = props?.attributes?.style?.border?.radius;\n\tconst { valueUnit = 'px' } = getValueAndUnit( initialBorderRadius ) || {};\n\n\tconst { editorSidebarOpened, numOfButtons } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isEditorSidebarOpened } = select( editPostStore );\n\t\t\tconst { getBlockCount, getBlockRootClientId } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst parentId = getBlockRootClientId( clientId );\n\t\t\tconst blockCount = getBlockCount( parentId );\n\t\t\tconst currentIsEditorSidebarOpened = isEditorSidebarOpened();\n\n\t\t\treturn {\n\t\t\t\teditorSidebarOpened: isSelected && currentIsEditorSidebarOpened,\n\t\t\t\tnumOfButtons: blockCount,\n\t\t\t};\n\t\t},\n\t\t[ clientId, isSelected ]\n\t);\n\n\tconst { closeGeneralSidebar } = useDispatch( editPostStore );\n\tconst [ maxWidth, setMaxWidth ] = useState( INITIAL_MAX_WIDTH );\n\tconst [ isLinkSheetVisible, setIsLinkSheetVisible ] = useState( false );\n\tconst [ isButtonFocused, setIsButtonFocused ] = useState( true );\n\tconst [ placeholderTextWidth, setPlaceholderTextWidth ] = useState( 0 );\n\tconst [ borderRadiusUnit, setBorderRadiusUnit ] = useState( valueUnit );\n\n\tconst richTextRef = useRef();\n\tconst colors = useMobileGlobalStylesColors();\n\tconst gradients = useMobileGlobalStylesColors( 'gradients' );\n\n\tuseEffect( () => {\n\t\tif ( isSelected ) {\n\t\t\tonToggleButtonFocus( true );\n\t\t}\n\t}, [ isSelected ] );\n\n\tuseEffect( () => {\n\t\tonSetMaxWidth( null, true );\n\t}, [ parentWidth ] );\n\n\tuseEffect( () => {\n\t\t// Blur `RichText` on Android when link settings sheet or button settings sheet is opened,\n\t\t// to avoid flashing caret after closing one of them\n\t\tconst richText = richTextRef?.current;\n\t\tif ( Platform.OS === 'android' && richText ) {\n\t\t\tif ( editorSidebarOpened || isLinkSheetVisible ) {\n\t\t\t\trichText.blur();\n\t\t\t\tonToggleButtonFocus( false );\n\t\t\t} else {\n\t\t\t\tonToggleButtonFocus( true );\n\t\t\t}\n\t\t}\n\t}, [ editorSidebarOpened, isLinkSheetVisible ] );\n\n\tuseEffect( () => {\n\t\tif ( richTextRef?.current ) {\n\t\t\tif ( ! isSelected && isButtonFocused ) {\n\t\t\t\tonToggleButtonFocus( false );\n\t\t\t}\n\n\t\t\tif ( isSelected && ! isButtonFocused ) {\n\t\t\t\tAccessibilityInfo.isScreenReaderEnabled().then( ( enabled ) => {\n\t\t\t\t\tif ( enabled ) {\n\t\t\t\t\t\tonToggleButtonFocus( true );\n\t\t\t\t\t\trichTextRef?.current.focus();\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}, [ isSelected, isButtonFocused ] );\n\n\tconst linkSettingsActions = [\n\t\t{\n\t\t\tlabel: __( 'Remove link' ),\n\t\t\tonPress: onClearSettings,\n\t\t},\n\t];\n\n\tconst linkSettingsOptions = {\n\t\turl: {\n\t\t\tlabel: __( 'Button Link URL' ),\n\t\t\tplaceholder: __( 'Add URL' ),\n\t\t\tautoFocus: true,\n\t\t\tautoFill: false,\n\t\t},\n\t\topenInNewTab: {\n\t\t\tlabel: __( 'Open in new tab' ),\n\t\t},\n\t\tlinkRel: {\n\t\t\tlabel: __( 'Link Rel' ),\n\t\t\tplaceholder: _x( 'None', 'Link rel attribute value placeholder' ),\n\t\t},\n\t};\n\n\tconst noFocusLinkSettingOptions = {\n\t\t...linkSettingsOptions,\n\t\turl: {\n\t\t\t...linkSettingsOptions.url,\n\t\t\tautoFocus: false,\n\t\t},\n\t};\n\n\tfunction getBackgroundColor() {\n\t\tconst { attributes, style } = props;\n\t\tconst { backgroundColor, gradient } = attributes;\n\n\t\t// Return named gradient value if available.\n\t\tconst gradientValue = getGradientValueBySlug( gradients, gradient );\n\n\t\tif ( gradientValue ) {\n\t\t\treturn gradientValue;\n\t\t}\n\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\n\t\t// Retrieve named color object to force inline styles for themes that\n\t\t// do not load their color stylesheets in the editor.\n\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\tcolors,\n\t\t\tbackgroundColor\n\t\t);\n\n\t\treturn (\n\t\t\tcolorObject?.color ||\n\t\t\tcolorProps.style?.backgroundColor ||\n\t\t\tcolorProps.style?.background ||\n\t\t\tstyle?.backgroundColor ||\n\t\t\tstyles.defaultButton.backgroundColor\n\t\t);\n\t}\n\n\tfunction getTextColor() {\n\t\tconst { attributes, style } = props;\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\n\t\t// Retrieve named color object to force inline styles for themes that\n\t\t// do not load their color stylesheets in the editor.\n\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\tcolors,\n\t\t\tattributes.textColor\n\t\t);\n\n\t\treturn (\n\t\t\tcolorObject?.color ||\n\t\t\tcolorProps.style?.color ||\n\t\t\tstyle?.color ||\n\t\t\tstyles.defaultButton.color\n\t\t);\n\t}\n\n\tfunction onChangeText( value ) {\n\t\tconst { setAttributes } = props;\n\t\tsetAttributes( { text: value } );\n\t}\n\n\tfunction onChangeBorderRadius( newRadius ) {\n\t\tconst { setAttributes, attributes } = props;\n\t\tconst { style } = attributes;\n\t\tconst newStyle = getNewStyle( style, newRadius, borderRadiusUnit );\n\n\t\tsetAttributes( { style: newStyle } );\n\t}\n\n\tfunction onChangeBorderRadiusUnit( newRadiusUnit ) {\n\t\tconst { setAttributes, attributes } = props;\n\t\tconst { style } = attributes;\n\t\tconst newBorderRadius = getBorderRadiusValue(\n\t\t\tattributes?.style?.border?.radius\n\t\t);\n\t\tconst newStyle = getNewStyle( style, newBorderRadius, newRadiusUnit );\n\t\tsetAttributes( { style: newStyle } );\n\t\tsetBorderRadiusUnit( newRadiusUnit );\n\t}\n\n\tfunction getNewStyle( style, radius, radiusUnit ) {\n\t\treturn {\n\t\t\t...style,\n\t\t\tborder: {\n\t\t\t\t...style?.border,\n\t\t\t\tradius: `${ radius }${ radiusUnit }`, // Store the value with the unit so that it works as expected.\n\t\t\t},\n\t\t};\n\t}\n\n\tfunction onShowLinkSettings() {\n\t\tsetIsLinkSheetVisible( true );\n\t}\n\n\tfunction onHideLinkSettings() {\n\t\tsetIsLinkSheetVisible( false );\n\t}\n\n\tfunction onToggleButtonFocus( value ) {\n\t\tif ( value !== isButtonFocused ) {\n\t\t\tsetIsButtonFocused( value );\n\t\t}\n\t}\n\n\tfunction onClearSettings() {\n\t\tconst { setAttributes } = props;\n\n\t\tsetAttributes( {\n\t\t\turl: '',\n\t\t\trel: '',\n\t\t\tlinkTarget: '',\n\t\t} );\n\n\t\tonHideLinkSettings();\n\t}\n\n\tfunction onLayout( { nativeEvent } ) {\n\t\tconst { width } = nativeEvent.layout;\n\t\tonSetMaxWidth( width );\n\t}\n\n\tconst onSetMaxWidth = useCallback(\n\t\t( width, isParentWidthDidChange = false ) => {\n\t\t\tconst { marginRight: spacing } = styles.defaultButton;\n\n\t\t\tconst isParentWidthChanged = isParentWidthDidChange\n\t\t\t\t? isParentWidthDidChange\n\t\t\t\t: maxWidth !== parentWidth;\n\t\t\tconst isWidthChanged = maxWidth !== width;\n\n\t\t\tif ( parentWidth && ! width && isParentWidthChanged ) {\n\t\t\t\tsetMaxWidth( parentWidth - spacing );\n\t\t\t} else if ( ! parentWidth && width && isWidthChanged ) {\n\t\t\t\tsetMaxWidth( width - spacing );\n\t\t\t}\n\t\t},\n\t\t[ maxWidth, parentWidth ]\n\t);\n\n\tfunction onRemove() {\n\t\tconst { onDeleteBlock, onReplace } = props;\n\n\t\tif ( numOfButtons === 1 ) {\n\t\t\tonDeleteBlock();\n\t\t} else {\n\t\t\tonReplace( [] );\n\t\t}\n\t}\n\n\tfunction onPlaceholderTextWidth( { nativeEvent } ) {\n\t\tconst textWidth =\n\t\t\tnativeEvent.lines[ 0 ] && nativeEvent.lines[ 0 ].width;\n\n\t\tif ( textWidth && textWidth !== placeholderTextWidth ) {\n\t\t\tsetPlaceholderTextWidth( Math.min( textWidth, maxWidth ) );\n\t\t}\n\t}\n\n\tconst onSetRef = useCallback(\n\t\t( ref ) => {\n\t\t\trichTextRef.current = ref;\n\t\t},\n\t\t[ richTextRef ]\n\t);\n\n\tconst onUnstableOnFocus = useCallback( () => {\n\t\tonToggleButtonFocus( true );\n\t}, [] );\n\n\tconst onBlur = useCallback( () => {\n\t\tonSetMaxWidth();\n\t}, [] );\n\n\tfunction dismissSheet() {\n\t\tonHideLinkSettings();\n\t\tcloseGeneralSidebar();\n\t}\n\n\tfunction getLinkSettings( isCompatibleWithSettings ) {\n\t\tconst { attributes, setAttributes } = props;\n\t\treturn (\n\t\t\t<LinkSettingsNavigation\n\t\t\t\tisVisible={ isLinkSheetVisible }\n\t\t\t\turl={ attributes.url }\n\t\t\t\trel={ attributes.rel }\n\t\t\t\tlinkTarget={ attributes.linkTarget }\n\t\t\t\tonClose={ dismissSheet }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\twithBottomSheet={ ! isCompatibleWithSettings }\n\t\t\t\thasPicker\n\t\t\t\tactions={ linkSettingsActions }\n\t\t\t\toptions={\n\t\t\t\t\tisCompatibleWithSettings\n\t\t\t\t\t\t? linkSettingsOptions\n\t\t\t\t\t\t: noFocusLinkSettingOptions\n\t\t\t\t}\n\t\t\t\tshowIcon={ ! isCompatibleWithSettings }\n\t\t\t/>\n\t\t);\n\t}\n\n\t// Render `Text` with `placeholderText` styled as a placeholder\n\t// to calculate its width which then is set as a `minWidth`\n\tfunction getPlaceholderWidth( placeholderText ) {\n\t\treturn (\n\t\t\t<Text\n\t\t\t\tstyle={ styles.placeholder }\n\t\t\t\tonTextLayout={ onPlaceholderTextWidth }\n\t\t\t>\n\t\t\t\t{ placeholderText }\n\t\t\t</Text>\n\t\t);\n\t}\n\n\tfunction getBorderRadiusValue( currentBorderRadius, defaultBorderRadius ) {\n\t\tconst valueAndUnit = getValueAndUnit( currentBorderRadius );\n\t\tif ( Number.isInteger( parseInt( valueAndUnit?.valueToConvert ) ) ) {\n\t\t\treturn parseFloat( valueAndUnit.valueToConvert );\n\t\t}\n\t\treturn defaultBorderRadius;\n\t}\n\n\tconst {\n\t\tattributes,\n\t\tclientId,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t\tsetAttributes,\n\t\tstyle,\n\t} = props;\n\tconst {\n\t\tplaceholder,\n\t\ttext,\n\t\tstyle: buttonStyle,\n\t\turl,\n\t\talign = 'center',\n\t\twidth,\n\t} = attributes;\n\tconst { paddingTop: spacing, borderWidth } = styles.defaultButton;\n\n\tif ( parentWidth === 0 ) {\n\t\treturn null;\n\t}\n\n\tconst currentBorderRadius = buttonStyle?.border?.radius;\n\tconst borderRadiusValue = getBorderRadiusValue(\n\t\tcurrentBorderRadius,\n\t\tstyles.defaultButton.borderRadius\n\t);\n\n\tconst buttonBorderRadiusValue =\n\t\tborderRadiusUnit === 'px' || borderRadiusUnit === '%'\n\t\t\t? borderRadiusValue\n\t\t\t: Math.floor( 14 * borderRadiusValue ); // Lets assume that the font size is set to 14px; TO get a nicer preview.\n\tconst outlineBorderRadius =\n\t\tbuttonBorderRadiusValue > 0\n\t\t\t? buttonBorderRadiusValue + spacing + borderWidth\n\t\t\t: 0;\n\n\t// To achieve proper expanding and shrinking `RichText` on iOS, there is a need to set a `minWidth`\n\t// value at least on 1 when `RichText` is focused or when is not focused, but `RichText` value is\n\t// different than empty string.\n\tlet minWidth =\n\t\tisButtonFocused || ( ! isButtonFocused && text && text !== '' )\n\t\t\t? MIN_WIDTH\n\t\t\t: placeholderTextWidth;\n\tif ( width ) {\n\t\t// Set the width of the button.\n\t\tminWidth = Math.floor(\n\t\t\tmaxWidth * ( width / 100 ) - MIN_WIDTH_MARGINS[ width ]\n\t\t);\n\t}\n\t// To achieve proper expanding and shrinking `RichText` on Android, there is a need to set\n\t// a `placeholder` as an empty string when `RichText` is focused,\n\t// because `AztecView` is calculating a `minWidth` based on placeholder text.\n\tconst placeholderText =\n\t\tisButtonFocused || ( ! isButtonFocused && text && text !== '' )\n\t\t\t? ''\n\t\t\t: placeholder || __( 'Add text…' );\n\n\tconst backgroundColor = getBackgroundColor();\n\tconst textColor = getTextColor();\n\tconst isFixedWidth = !! width;\n\tconst outLineStyles = [\n\t\tstyles.outline,\n\t\t{\n\t\t\tborderRadius: outlineBorderRadius,\n\t\t\tborderColor: backgroundColor,\n\t\t},\n\t];\n\tconst textStyles = {\n\t\t...richTextStyle.richText,\n\t\tpaddingLeft: isFixedWidth ? 0 : richTextStyle.richText.paddingLeft,\n\t\tpaddingRight: isFixedWidth ? 0 : richTextStyle.richText.paddingRight,\n\t\tcolor: textColor,\n\t};\n\n\treturn (\n\t\t<View onLayout={ onLayout }>\n\t\t\t{ getPlaceholderWidth( placeholderText ) }\n\t\t\t<ColorBackground\n\t\t\t\tborderRadiusValue={ buttonBorderRadiusValue }\n\t\t\t\tbackgroundColor={ backgroundColor }\n\t\t\t\tisSelected={ isSelected }\n\t\t\t>\n\t\t\t\t{ isSelected && (\n\t\t\t\t\t<View pointerEvents=\"none\" style={ outLineStyles } />\n\t\t\t\t) }\n\t\t\t\t<RichText\n\t\t\t\t\tsetRef={ onSetRef }\n\t\t\t\t\tplaceholder={ placeholderText }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ onChangeText }\n\t\t\t\t\tstyle={ textStyles }\n\t\t\t\t\ttextAlign={ align }\n\t\t\t\t\tplaceholderTextColor={\n\t\t\t\t\t\tstyle?.color || styles.placeholderTextColor.color\n\t\t\t\t\t}\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\tminWidth={ minWidth } // The minimum Button size.\n\t\t\t\t\tmaxWidth={ isFixedWidth ? minWidth : maxWidth } // The width of the screen.\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tisSelected={ isButtonFocused }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tunstableOnFocus={ onUnstableOnFocus }\n\t\t\t\t\t__unstableMobileNoFocusOnMount={ ! isSelected }\n\t\t\t\t\tselectionColor={ textColor }\n\t\t\t\t\tonBlur={ onBlur }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonRemove={ onRemove }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tfontSize={ style?.fontSize }\n\t\t\t\t/>\n\t\t\t</ColorBackground>\n\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\ttitle={ __( 'Edit link' ) }\n\t\t\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\t\t\tonClick={ onShowLinkSettings }\n\t\t\t\t\t\t\t\tisActive={ url }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t{ getLinkSettings( false ) }\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody title={ __( 'Border Settings' ) }>\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Border Radius' ) }\n\t\t\t\t\t\t\t\tmin={ MIN_BORDER_RADIUS_VALUE }\n\t\t\t\t\t\t\t\tmax={ MAX_BORDER_RADIUS_VALUE }\n\t\t\t\t\t\t\t\tvalue={ borderRadiusValue }\n\t\t\t\t\t\t\t\tonChange={ onChangeBorderRadius }\n\t\t\t\t\t\t\t\tonUnitChange={ onChangeBorderRadiusUnit }\n\t\t\t\t\t\t\t\tunit={ borderRadiusUnit }\n\t\t\t\t\t\t\t\tunits={ filterUnitsWithSettings(\n\t\t\t\t\t\t\t\t\t[ 'px', 'em', 'rem' ],\n\t\t\t\t\t\t\t\t\tCSS_UNITS\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t<WidthPanel\n\t\t\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<PanelBody title={ __( 'Link Settings' ) }>\n\t\t\t\t\t\t\t{ getLinkSettings( true ) }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</View>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["View","AccessibilityInfo","Platform","Text","useCallback","useEffect","useState","useRef","useSelect","useDispatch","__","_x","RichText","InspectorControls","BlockControls","store","blockEditorStore","getColorObjectByAttributeValues","getGradientValueBySlug","__experimentalGetColorClassesAndStyles","getColorClassesAndStyles","PanelBody","ToolbarGroup","ToolbarButton","LinkSettingsNavigation","UnitControl","getValueAndUnit","BottomSheetSelectControl","CSS_UNITS","filterUnitsWithSettings","useMobileGlobalStylesColors","link","editPostStore","richTextStyle","styles","ColorBackground","MIN_BORDER_RADIUS_VALUE","MAX_BORDER_RADIUS_VALUE","INITIAL_MAX_WIDTH","MIN_WIDTH","MIN_WIDTH_MARGINS","button75","marginLeft","button50","button25","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","options","value","label","createElement","title","onChange","ButtonEdit","props","isSelected","parentWidth","initialBorderRadius","attributes","style","border","radius","valueUnit","editorSidebarOpened","numOfButtons","select","isEditorSidebarOpened","getBlockCount","getBlockRootClientId","parentId","clientId","blockCount","currentIsEditorSidebarOpened","closeGeneralSidebar","maxWidth","setMaxWidth","isLinkSheetVisible","setIsLinkSheetVisible","isButtonFocused","setIsButtonFocused","placeholderTextWidth","setPlaceholderTextWidth","borderRadiusUnit","setBorderRadiusUnit","richTextRef","colors","gradients","onToggleButtonFocus","onSetMaxWidth","richText","current","OS","blur","isScreenReaderEnabled","then","enabled","focus","linkSettingsActions","onPress","onClearSettings","linkSettingsOptions","url","placeholder","autoFocus","autoFill","openInNewTab","linkRel","noFocusLinkSettingOptions","getBackgroundColor","backgroundColor","gradient","gradientValue","colorProps","colorObject","color","background","defaultButton","getTextColor","textColor","onChangeText","text","onChangeBorderRadius","newRadius","newStyle","getNewStyle","onChangeBorderRadiusUnit","newRadiusUnit","newBorderRadius","getBorderRadiusValue","radiusUnit","onShowLinkSettings","onHideLinkSettings","rel","linkTarget","onLayout","nativeEvent","layout","isParentWidthDidChange","marginRight","spacing","isParentWidthChanged","isWidthChanged","onRemove","onDeleteBlock","onReplace","onPlaceholderTextWidth","textWidth","lines","Math","min","onSetRef","ref","onUnstableOnFocus","onBlur","dismissSheet","getLinkSettings","isCompatibleWithSettings","isVisible","onClose","withBottomSheet","hasPicker","actions","showIcon","getPlaceholderWidth","placeholderText","onTextLayout","currentBorderRadius","defaultBorderRadius","valueAndUnit","Number","isInteger","parseInt","valueToConvert","parseFloat","mergeBlocks","buttonStyle","align","paddingTop","borderWidth","borderRadiusValue","borderRadius","buttonBorderRadiusValue","floor","outlineBorderRadius","minWidth","isFixedWidth","outLineStyles","outline","borderColor","textStyles","paddingLeft","paddingRight","pointerEvents","textAlign","placeholderTextColor","identifier","tagName","id","withoutInteractiveFormatting","unstableOnFocus","__unstableMobileNoFocusOnMount","selectionColor","onMerge","fontSize","Fragment","icon","onClick","isActive","max","onUnitChange","unit","units"],"sources":["@wordpress/block-library/src/button/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, AccessibilityInfo, Platform, Text } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useCallback, useEffect, useState, useRef } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tRichText,\n\tInspectorControls,\n\tBlockControls,\n\tstore as blockEditorStore,\n\tgetColorObjectByAttributeValues,\n\tgetGradientValueBySlug,\n\t__experimentalGetColorClassesAndStyles as getColorClassesAndStyles,\n} from '@wordpress/block-editor';\nimport {\n\tPanelBody,\n\tToolbarGroup,\n\tToolbarButton,\n\tLinkSettingsNavigation,\n\tUnitControl,\n\tgetValueAndUnit,\n\tBottomSheetSelectControl,\n\tCSS_UNITS,\n\tfilterUnitsWithSettings,\n\tuseMobileGlobalStylesColors,\n} from '@wordpress/components';\nimport { link } from '@wordpress/icons';\n// eslint-disable-next-line no-restricted-imports\nimport { store as editPostStore } from '@wordpress/edit-post';\n\n/**\n * Internal dependencies\n */\nimport richTextStyle from './rich-text.scss';\nimport styles from './editor.scss';\nimport ColorBackground from './color-background';\n\nconst MIN_BORDER_RADIUS_VALUE = 0;\nconst MAX_BORDER_RADIUS_VALUE = 50;\nconst INITIAL_MAX_WIDTH = 108;\nconst MIN_WIDTH = 40;\n// Map of the percentage width to pixel subtraction that make the buttons fit nicely into columns.\nconst MIN_WIDTH_MARGINS = {\n\t100: 0,\n\t75: styles.button75?.marginLeft,\n\t50: styles.button50?.marginLeft,\n\t25: styles.button25?.marginLeft,\n};\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tlet width = selectedWidth === newWidth ? undefined : newWidth;\n\t\tif ( newWidth === 'auto' ) {\n\t\t\twidth = undefined;\n\t\t}\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\tconst options = [\n\t\t{ value: 'auto', label: __( 'Auto' ) },\n\t\t{ value: 25, label: '25%' },\n\t\t{ value: 50, label: '50%' },\n\t\t{ value: 75, label: '75%' },\n\t\t{ value: 100, label: '100%' },\n\t];\n\n\tif ( ! selectedWidth ) {\n\t\tselectedWidth = 'auto';\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width Settings' ) }>\n\t\t\t<BottomSheetSelectControl\n\t\t\t\tlabel={ __( 'Button width' ) }\n\t\t\t\tvalue={ selectedWidth }\n\t\t\t\tonChange={ handleChange }\n\t\t\t\toptions={ options }\n\t\t\t/>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst { isSelected, parentWidth } = props;\n\tconst initialBorderRadius = props?.attributes?.style?.border?.radius;\n\tconst { valueUnit = 'px' } = getValueAndUnit( initialBorderRadius ) || {};\n\n\tconst { editorSidebarOpened, numOfButtons } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isEditorSidebarOpened } = select( editPostStore );\n\t\t\tconst { getBlockCount, getBlockRootClientId } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\tconst parentId = getBlockRootClientId( clientId );\n\t\t\tconst blockCount = getBlockCount( parentId );\n\t\t\tconst currentIsEditorSidebarOpened = isEditorSidebarOpened();\n\n\t\t\treturn {\n\t\t\t\teditorSidebarOpened: isSelected && currentIsEditorSidebarOpened,\n\t\t\t\tnumOfButtons: blockCount,\n\t\t\t};\n\t\t},\n\t\t[ clientId, isSelected ]\n\t);\n\n\tconst { closeGeneralSidebar } = useDispatch( editPostStore );\n\tconst [ maxWidth, setMaxWidth ] = useState( INITIAL_MAX_WIDTH );\n\tconst [ isLinkSheetVisible, setIsLinkSheetVisible ] = useState( false );\n\tconst [ isButtonFocused, setIsButtonFocused ] = useState( true );\n\tconst [ placeholderTextWidth, setPlaceholderTextWidth ] = useState( 0 );\n\tconst [ borderRadiusUnit, setBorderRadiusUnit ] = useState( valueUnit );\n\n\tconst richTextRef = useRef();\n\tconst colors = useMobileGlobalStylesColors();\n\tconst gradients = useMobileGlobalStylesColors( 'gradients' );\n\n\tuseEffect( () => {\n\t\tif ( isSelected ) {\n\t\t\tonToggleButtonFocus( true );\n\t\t}\n\t}, [ isSelected ] );\n\n\tuseEffect( () => {\n\t\tonSetMaxWidth( null, true );\n\t}, [ parentWidth ] );\n\n\tuseEffect( () => {\n\t\t// Blur `RichText` on Android when link settings sheet or button settings sheet is opened,\n\t\t// to avoid flashing caret after closing one of them\n\t\tconst richText = richTextRef?.current;\n\t\tif ( Platform.OS === 'android' && richText ) {\n\t\t\tif ( editorSidebarOpened || isLinkSheetVisible ) {\n\t\t\t\trichText.blur();\n\t\t\t\tonToggleButtonFocus( false );\n\t\t\t} else {\n\t\t\t\tonToggleButtonFocus( true );\n\t\t\t}\n\t\t}\n\t}, [ editorSidebarOpened, isLinkSheetVisible ] );\n\n\tuseEffect( () => {\n\t\tif ( richTextRef?.current ) {\n\t\t\tif ( ! isSelected && isButtonFocused ) {\n\t\t\t\tonToggleButtonFocus( false );\n\t\t\t}\n\n\t\t\tif ( isSelected && ! isButtonFocused ) {\n\t\t\t\tAccessibilityInfo.isScreenReaderEnabled().then( ( enabled ) => {\n\t\t\t\t\tif ( enabled ) {\n\t\t\t\t\t\tonToggleButtonFocus( true );\n\t\t\t\t\t\trichTextRef?.current.focus();\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}, [ isSelected, isButtonFocused ] );\n\n\tconst linkSettingsActions = [\n\t\t{\n\t\t\tlabel: __( 'Remove link' ),\n\t\t\tonPress: onClearSettings,\n\t\t},\n\t];\n\n\tconst linkSettingsOptions = {\n\t\turl: {\n\t\t\tlabel: __( 'Button Link URL' ),\n\t\t\tplaceholder: __( 'Add URL' ),\n\t\t\tautoFocus: true,\n\t\t\tautoFill: false,\n\t\t},\n\t\topenInNewTab: {\n\t\t\tlabel: __( 'Open in new tab' ),\n\t\t},\n\t\tlinkRel: {\n\t\t\tlabel: __( 'Link Rel' ),\n\t\t\tplaceholder: _x( 'None', 'Link rel attribute value placeholder' ),\n\t\t},\n\t};\n\n\tconst noFocusLinkSettingOptions = {\n\t\t...linkSettingsOptions,\n\t\turl: {\n\t\t\t...linkSettingsOptions.url,\n\t\t\tautoFocus: false,\n\t\t},\n\t};\n\n\tfunction getBackgroundColor() {\n\t\tconst { attributes, style } = props;\n\t\tconst { backgroundColor, gradient } = attributes;\n\n\t\t// Return named gradient value if available.\n\t\tconst gradientValue = getGradientValueBySlug( gradients, gradient );\n\n\t\tif ( gradientValue ) {\n\t\t\treturn gradientValue;\n\t\t}\n\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\n\t\t// Retrieve named color object to force inline styles for themes that\n\t\t// do not load their color stylesheets in the editor.\n\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\tcolors,\n\t\t\tbackgroundColor\n\t\t);\n\n\t\treturn (\n\t\t\tcolorObject?.color ||\n\t\t\tcolorProps.style?.backgroundColor ||\n\t\t\tcolorProps.style?.background ||\n\t\t\tstyle?.backgroundColor ||\n\t\t\tstyles.defaultButton.backgroundColor\n\t\t);\n\t}\n\n\tfunction getTextColor() {\n\t\tconst { attributes, style } = props;\n\t\tconst colorProps = getColorClassesAndStyles( attributes );\n\n\t\t// Retrieve named color object to force inline styles for themes that\n\t\t// do not load their color stylesheets in the editor.\n\t\tconst colorObject = getColorObjectByAttributeValues(\n\t\t\tcolors,\n\t\t\tattributes.textColor\n\t\t);\n\n\t\treturn (\n\t\t\tcolorObject?.color ||\n\t\t\tcolorProps.style?.color ||\n\t\t\tstyle?.color ||\n\t\t\tstyles.defaultButton.color\n\t\t);\n\t}\n\n\tfunction onChangeText( value ) {\n\t\tconst { setAttributes } = props;\n\t\tsetAttributes( { text: value } );\n\t}\n\n\tfunction onChangeBorderRadius( newRadius ) {\n\t\tconst { setAttributes, attributes } = props;\n\t\tconst { style } = attributes;\n\t\tconst newStyle = getNewStyle( style, newRadius, borderRadiusUnit );\n\n\t\tsetAttributes( { style: newStyle } );\n\t}\n\n\tfunction onChangeBorderRadiusUnit( newRadiusUnit ) {\n\t\tconst { setAttributes, attributes } = props;\n\t\tconst { style } = attributes;\n\t\tconst newBorderRadius = getBorderRadiusValue(\n\t\t\tattributes?.style?.border?.radius\n\t\t);\n\t\tconst newStyle = getNewStyle( style, newBorderRadius, newRadiusUnit );\n\t\tsetAttributes( { style: newStyle } );\n\t\tsetBorderRadiusUnit( newRadiusUnit );\n\t}\n\n\tfunction getNewStyle( style, radius, radiusUnit ) {\n\t\treturn {\n\t\t\t...style,\n\t\t\tborder: {\n\t\t\t\t...style?.border,\n\t\t\t\tradius: `${ radius }${ radiusUnit }`, // Store the value with the unit so that it works as expected.\n\t\t\t},\n\t\t};\n\t}\n\n\tfunction onShowLinkSettings() {\n\t\tsetIsLinkSheetVisible( true );\n\t}\n\n\tfunction onHideLinkSettings() {\n\t\tsetIsLinkSheetVisible( false );\n\t}\n\n\tfunction onToggleButtonFocus( value ) {\n\t\tif ( value !== isButtonFocused ) {\n\t\t\tsetIsButtonFocused( value );\n\t\t}\n\t}\n\n\tfunction onClearSettings() {\n\t\tconst { setAttributes } = props;\n\n\t\tsetAttributes( {\n\t\t\turl: '',\n\t\t\trel: '',\n\t\t\tlinkTarget: '',\n\t\t} );\n\n\t\tonHideLinkSettings();\n\t}\n\n\tfunction onLayout( { nativeEvent } ) {\n\t\tconst { width } = nativeEvent.layout;\n\t\tonSetMaxWidth( width );\n\t}\n\n\tconst onSetMaxWidth = useCallback(\n\t\t( width, isParentWidthDidChange = false ) => {\n\t\t\tconst { marginRight: spacing } = styles.defaultButton;\n\n\t\t\tconst isParentWidthChanged = isParentWidthDidChange\n\t\t\t\t? isParentWidthDidChange\n\t\t\t\t: maxWidth !== parentWidth;\n\t\t\tconst isWidthChanged = maxWidth !== width;\n\n\t\t\tif ( parentWidth && ! width && isParentWidthChanged ) {\n\t\t\t\tsetMaxWidth( parentWidth - spacing );\n\t\t\t} else if ( ! parentWidth && width && isWidthChanged ) {\n\t\t\t\tsetMaxWidth( width - spacing );\n\t\t\t}\n\t\t},\n\t\t[ maxWidth, parentWidth ]\n\t);\n\n\tfunction onRemove() {\n\t\tconst { onDeleteBlock, onReplace } = props;\n\n\t\tif ( numOfButtons === 1 ) {\n\t\t\tonDeleteBlock();\n\t\t} else {\n\t\t\tonReplace( [] );\n\t\t}\n\t}\n\n\tfunction onPlaceholderTextWidth( { nativeEvent } ) {\n\t\tconst textWidth =\n\t\t\tnativeEvent.lines[ 0 ] && nativeEvent.lines[ 0 ].width;\n\n\t\tif ( textWidth && textWidth !== placeholderTextWidth ) {\n\t\t\tsetPlaceholderTextWidth( Math.min( textWidth, maxWidth ) );\n\t\t}\n\t}\n\n\tconst onSetRef = useCallback(\n\t\t( ref ) => {\n\t\t\trichTextRef.current = ref;\n\t\t},\n\t\t[ richTextRef ]\n\t);\n\n\tconst onUnstableOnFocus = useCallback( () => {\n\t\tonToggleButtonFocus( true );\n\t}, [] );\n\n\tconst onBlur = useCallback( () => {\n\t\tonSetMaxWidth();\n\t}, [] );\n\n\tfunction dismissSheet() {\n\t\tonHideLinkSettings();\n\t\tcloseGeneralSidebar();\n\t}\n\n\tfunction getLinkSettings( isCompatibleWithSettings ) {\n\t\tconst { attributes, setAttributes } = props;\n\t\treturn (\n\t\t\t<LinkSettingsNavigation\n\t\t\t\tisVisible={ isLinkSheetVisible }\n\t\t\t\turl={ attributes.url }\n\t\t\t\trel={ attributes.rel }\n\t\t\t\tlinkTarget={ attributes.linkTarget }\n\t\t\t\tonClose={ dismissSheet }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\twithBottomSheet={ ! isCompatibleWithSettings }\n\t\t\t\thasPicker\n\t\t\t\tactions={ linkSettingsActions }\n\t\t\t\toptions={\n\t\t\t\t\tisCompatibleWithSettings\n\t\t\t\t\t\t? linkSettingsOptions\n\t\t\t\t\t\t: noFocusLinkSettingOptions\n\t\t\t\t}\n\t\t\t\tshowIcon={ ! isCompatibleWithSettings }\n\t\t\t/>\n\t\t);\n\t}\n\n\t// Render `Text` with `placeholderText` styled as a placeholder\n\t// to calculate its width which then is set as a `minWidth`\n\tfunction getPlaceholderWidth( placeholderText ) {\n\t\treturn (\n\t\t\t<Text\n\t\t\t\tstyle={ styles.placeholder }\n\t\t\t\tonTextLayout={ onPlaceholderTextWidth }\n\t\t\t>\n\t\t\t\t{ placeholderText }\n\t\t\t</Text>\n\t\t);\n\t}\n\n\tfunction getBorderRadiusValue( currentBorderRadius, defaultBorderRadius ) {\n\t\tconst valueAndUnit = getValueAndUnit( currentBorderRadius );\n\t\tif ( Number.isInteger( parseInt( valueAndUnit?.valueToConvert ) ) ) {\n\t\t\treturn parseFloat( valueAndUnit.valueToConvert );\n\t\t}\n\t\treturn defaultBorderRadius;\n\t}\n\n\tconst {\n\t\tattributes,\n\t\tclientId,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t\tsetAttributes,\n\t\tstyle,\n\t} = props;\n\tconst {\n\t\tplaceholder,\n\t\ttext,\n\t\tstyle: buttonStyle,\n\t\turl,\n\t\talign = 'center',\n\t\twidth,\n\t} = attributes;\n\tconst { paddingTop: spacing, borderWidth } = styles.defaultButton;\n\n\tif ( parentWidth === 0 ) {\n\t\treturn null;\n\t}\n\n\tconst currentBorderRadius = buttonStyle?.border?.radius;\n\tconst borderRadiusValue = getBorderRadiusValue(\n\t\tcurrentBorderRadius,\n\t\tstyles.defaultButton.borderRadius\n\t);\n\n\tconst buttonBorderRadiusValue =\n\t\tborderRadiusUnit === 'px' || borderRadiusUnit === '%'\n\t\t\t? borderRadiusValue\n\t\t\t: Math.floor( 14 * borderRadiusValue ); // Lets assume that the font size is set to 14px; TO get a nicer preview.\n\tconst outlineBorderRadius =\n\t\tbuttonBorderRadiusValue > 0\n\t\t\t? buttonBorderRadiusValue + spacing + borderWidth\n\t\t\t: 0;\n\n\t// To achieve proper expanding and shrinking `RichText` on iOS, there is a need to set a `minWidth`\n\t// value at least on 1 when `RichText` is focused or when is not focused, but `RichText` value is\n\t// different than empty string.\n\tlet minWidth =\n\t\tisButtonFocused || ( ! isButtonFocused && text && text !== '' )\n\t\t\t? MIN_WIDTH\n\t\t\t: placeholderTextWidth;\n\tif ( width ) {\n\t\t// Set the width of the button.\n\t\tminWidth = Math.floor(\n\t\t\tmaxWidth * ( width / 100 ) - MIN_WIDTH_MARGINS[ width ]\n\t\t);\n\t}\n\t// To achieve proper expanding and shrinking `RichText` on Android, there is a need to set\n\t// a `placeholder` as an empty string when `RichText` is focused,\n\t// because `AztecView` is calculating a `minWidth` based on placeholder text.\n\tconst placeholderText =\n\t\tisButtonFocused || ( ! isButtonFocused && text && text !== '' )\n\t\t\t? ''\n\t\t\t: placeholder || __( 'Add text…' );\n\n\tconst backgroundColor = getBackgroundColor();\n\tconst textColor = getTextColor();\n\tconst isFixedWidth = !! width;\n\tconst outLineStyles = [\n\t\tstyles.outline,\n\t\t{\n\t\t\tborderRadius: outlineBorderRadius,\n\t\t\tborderColor: backgroundColor,\n\t\t},\n\t];\n\tconst textStyles = {\n\t\t...richTextStyle.richText,\n\t\tpaddingLeft: isFixedWidth ? 0 : richTextStyle.richText.paddingLeft,\n\t\tpaddingRight: isFixedWidth ? 0 : richTextStyle.richText.paddingRight,\n\t\tcolor: textColor,\n\t};\n\n\treturn (\n\t\t<View onLayout={ onLayout }>\n\t\t\t{ getPlaceholderWidth( placeholderText ) }\n\t\t\t<ColorBackground\n\t\t\t\tborderRadiusValue={ buttonBorderRadiusValue }\n\t\t\t\tbackgroundColor={ backgroundColor }\n\t\t\t\tisSelected={ isSelected }\n\t\t\t>\n\t\t\t\t{ isSelected && (\n\t\t\t\t\t<View pointerEvents=\"none\" style={ outLineStyles } />\n\t\t\t\t) }\n\t\t\t\t<RichText\n\t\t\t\t\tref={ onSetRef }\n\t\t\t\t\tplaceholder={ placeholderText }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ onChangeText }\n\t\t\t\t\tstyle={ textStyles }\n\t\t\t\t\ttextAlign={ align }\n\t\t\t\t\tplaceholderTextColor={\n\t\t\t\t\t\tstyle?.color || styles.placeholderTextColor.color\n\t\t\t\t\t}\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t\ttagName=\"p\"\n\t\t\t\t\tminWidth={ minWidth } // The minimum Button size.\n\t\t\t\t\tmaxWidth={ isFixedWidth ? minWidth : maxWidth } // The width of the screen.\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tisSelected={ isButtonFocused }\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tunstableOnFocus={ onUnstableOnFocus }\n\t\t\t\t\t__unstableMobileNoFocusOnMount={ ! isSelected }\n\t\t\t\t\tselectionColor={ textColor }\n\t\t\t\t\tonBlur={ onBlur }\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonRemove={ onRemove }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tfontSize={ style?.fontSize }\n\t\t\t\t/>\n\t\t\t</ColorBackground>\n\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\ttitle={ __( 'Edit link' ) }\n\t\t\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\t\t\tonClick={ onShowLinkSettings }\n\t\t\t\t\t\t\t\tisActive={ url }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t{ getLinkSettings( false ) }\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody title={ __( 'Border Settings' ) }>\n\t\t\t\t\t\t\t<UnitControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Border Radius' ) }\n\t\t\t\t\t\t\t\tmin={ MIN_BORDER_RADIUS_VALUE }\n\t\t\t\t\t\t\t\tmax={ MAX_BORDER_RADIUS_VALUE }\n\t\t\t\t\t\t\t\tvalue={ borderRadiusValue }\n\t\t\t\t\t\t\t\tonChange={ onChangeBorderRadius }\n\t\t\t\t\t\t\t\tonUnitChange={ onChangeBorderRadiusUnit }\n\t\t\t\t\t\t\t\tunit={ borderRadiusUnit }\n\t\t\t\t\t\t\t\tunits={ filterUnitsWithSettings(\n\t\t\t\t\t\t\t\t\t[ 'px', 'em', 'rem' ],\n\t\t\t\t\t\t\t\t\tCSS_UNITS\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t<WidthPanel\n\t\t\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<PanelBody title={ __( 'Link Settings' ) }>\n\t\t\t\t\t\t\t{ getLinkSettings( true ) }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t</View>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":"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"}
|
|
@@ -19,7 +19,9 @@ export default function save({
|
|
|
19
19
|
// prevent embedding in PHP. Ideally checks for the code block,
|
|
20
20
|
// or pre/code tags, should be made on the PHP side?
|
|
21
21
|
,
|
|
22
|
-
value: escape(attributes.content.
|
|
22
|
+
value: escape(typeof attributes.content === 'string' ? attributes.content : attributes.content.toHTMLString({
|
|
23
|
+
preserveWhiteSpace: true
|
|
24
|
+
}))
|
|
23
25
|
}));
|
|
24
26
|
}
|
|
25
27
|
//# sourceMappingURL=save.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RichText","useBlockProps","escape","save","attributes","createElement","Content","tagName","value","content","
|
|
1
|
+
{"version":3,"names":["RichText","useBlockProps","escape","save","attributes","createElement","Content","tagName","value","content","toHTMLString","preserveWhiteSpace"],"sources":["@wordpress/block-library/src/code/save.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { RichText, useBlockProps } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { escape } from './utils';\n\nexport default function save( { attributes } ) {\n\treturn (\n\t\t<pre { ...useBlockProps.save() }>\n\t\t\t<RichText.Content\n\t\t\t\ttagName=\"code\"\n\t\t\t\t// To do: `escape` encodes characters in shortcodes and URLs to\n\t\t\t\t// prevent embedding in PHP. Ideally checks for the code block,\n\t\t\t\t// or pre/code tags, should be made on the PHP side?\n\t\t\t\tvalue={ escape(\n\t\t\t\t\ttypeof attributes.content === 'string'\n\t\t\t\t\t\t? attributes.content\n\t\t\t\t\t\t: attributes.content.toHTMLString( {\n\t\t\t\t\t\t\t\tpreserveWhiteSpace: true,\n\t\t\t\t\t\t } )\n\t\t\t\t) }\n\t\t\t/>\n\t\t</pre>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,QAAQ,EAAEC,aAAa,QAAQ,yBAAyB;;AAEjE;AACA;AACA;AACA,SAASC,MAAM,QAAQ,SAAS;AAEhC,eAAe,SAASC,IAAIA,CAAE;EAAEC;AAAW,CAAC,EAAG;EAC9C,OACCC,aAAA;IAAA,GAAUJ,aAAa,CAACE,IAAI,CAAC;EAAC,GAC7BE,aAAA,CAACL,QAAQ,CAACM,OAAO;IAChBC,OAAO,EAAC;IACR;IACA;IACA;IAAA;IACAC,KAAK,EAAGN,MAAM,CACb,OAAOE,UAAU,CAACK,OAAO,KAAK,QAAQ,GACnCL,UAAU,CAACK,OAAO,GAClBL,UAAU,CAACK,OAAO,CAACC,YAAY,CAAE;MACjCC,kBAAkB,EAAE;IACpB,CAAE,CACN;EAAG,CACH,CACG,CAAC;AAER"}
|
|
@@ -359,6 +359,7 @@ function CoverEdit({
|
|
|
359
359
|
'is-repeated': isRepeated,
|
|
360
360
|
'has-custom-content-position': !isContentPositionCenter(contentPosition)
|
|
361
361
|
}, getPositionClassName(contentPosition));
|
|
362
|
+
const showOverlay = url || !useFeaturedImage || useFeaturedImage && !url;
|
|
362
363
|
return createElement(Fragment, null, blockControls, inspectorControls, createElement(TagName, {
|
|
363
364
|
...blockProps,
|
|
364
365
|
className: classnames(classes, blockProps.className),
|
|
@@ -367,7 +368,7 @@ function CoverEdit({
|
|
|
367
368
|
...blockProps.style
|
|
368
369
|
},
|
|
369
370
|
"data-url": url
|
|
370
|
-
}, resizeListener,
|
|
371
|
+
}, resizeListener, showOverlay && createElement("span", {
|
|
371
372
|
"aria-hidden": "true",
|
|
372
373
|
className: classnames('wp-block-cover__background', dimRatioToClass(dimRatio), {
|
|
373
374
|
[overlayColor.class]: overlayColor.class,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","useEntityProp","store","coreStore","useEffect","useMemo","useRef","Placeholder","Spinner","compose","useResizeObserver","withColors","ColorPalette","useBlockProps","useSettings","useInnerBlocksProps","__experimentalUseGradient","blockEditorStore","__","useSelect","useDispatch","isBlobURL","noticesStore","attributesFromMedia","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","dimRatioToClass","isContentPositionCenter","getPositionClassName","mediaPosition","CoverInspectorControls","CoverBlockControls","CoverPlaceholder","ResizableCoverPopover","getMediaColor","compositeIsDark","DEFAULT_BACKGROUND_COLOR","DEFAULT_OVERLAY_COLOR","getInnerBlocksTemplate","attributes","align","placeholder","isTemporaryMedia","id","url","CoverEdit","clientId","isSelected","overlayColor","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","contentPosition","originalUrl","backgroundType","originalBackgroundType","useFeaturedImage","dimRatio","focalPoint","hasParallax","isDark","isRepeated","minHeight","minHeightUnit","alt","allowedBlocks","templateLock","tagName","TagName","isUserOverlayColor","featuredImage","__unstableMarkNextChangeAsNotPersistent","media","select","getMedia","mediaUrl","source_url","averageBackgroundColor","newOverlayColor","color","newIsDark","replaceAll","createErrorNotice","gradientClass","gradientValue","onSelectMedia","newMedia","mediaAttributes","isImage","type","media_type","includes","undefined","newDimRatio","onClearMedia","onSetOverlayColor","onUpdateDimRatio","onUploadError","message","isUploadingMedia","isImageBackground","isVideoBackground","resizeListener","height","width","resizableBoxDimensions","minHeightWithUnit","isImgElement","style","backgroundImage","backgroundPosition","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","hasInnerBlocks","getBlock","innerBlocks","length","ref","blockProps","fontSizes","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","className","template","templateInsertUpdatesSelection","dropZoneElement","current","mediaElement","currentSettings","toggleUseFeaturedImage","newUseFeaturedImage","blockControls","createElement","inspectorControls","coverRef","updateDimRatio","resizableCoverProps","onResizeStart","onResize","value","onResizeStop","newMinHeight","showHandle","dimensions","aspectRatio","size","Fragment","onError","disableCustomColors","onChange","clearable","classes","class","withIllustration","src","role","autoPlay","muted","loop","disableMediaButtons"],"sources":["@wordpress/block-library/src/cover/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useEffect, useMemo, useRef } from '@wordpress/element';\nimport { Placeholder, Spinner } from '@wordpress/components';\nimport { compose, useResizeObserver } from '@wordpress/compose';\nimport {\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSettings,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { isBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport {\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n\tmediaPosition,\n} from '../shared';\nimport CoverInspectorControls from './inspector-controls';\nimport CoverBlockControls from './block-controls';\nimport CoverPlaceholder from './cover-placeholder';\nimport ResizableCoverPopover from './resizable-cover-popover';\nimport {\n\tgetMediaColor,\n\tcompositeIsDark,\n\tDEFAULT_BACKGROUND_COLOR,\n\tDEFAULT_OVERLAY_COLOR,\n} from './color-utils';\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while\n * the media (image or video) is being uploaded and will not have an id allocated yet.\n *\n * @param {number} id The id of the media.\n * @param {string} url The url of the media.\n *\n * @return {boolean} Is the URL a Blob URL.\n */\nconst isTemporaryMedia = ( id, url ) => ! id && isBlobURL( url );\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\turl: originalUrl,\n\t\tbackgroundType: originalBackgroundType,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t\ttagName: TagName = 'div',\n\t\tisUserOverlayColor,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst media = useSelect(\n\t\t( select ) =>\n\t\t\tfeaturedImage &&\n\t\t\tselect( coreStore ).getMedia( featuredImage, { context: 'view' } ),\n\t\t[ featuredImage ]\n\t);\n\tconst mediaUrl = media?.source_url;\n\n\t// User can change the featured image outside of the block, but we still\n\t// need to update the block when that happens. This effect should only\n\t// run when the featured image changes in that case. All other cases are\n\t// handled in their respective callbacks.\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tif ( ! useFeaturedImage ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst averageBackgroundColor = await getMediaColor( mediaUrl );\n\n\t\t\tlet newOverlayColor = overlayColor.color;\n\t\t\tif ( ! isUserOverlayColor ) {\n\t\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t}\n\n\t\t\tconst newIsDark = compositeIsDark(\n\t\t\t\tdimRatio,\n\t\t\t\tnewOverlayColor,\n\t\t\t\taverageBackgroundColor\n\t\t\t);\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { isDark: newIsDark } );\n\t\t} )();\n\t\t// Disable reason: Update the block only when the featured image changes.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ mediaUrl ] );\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage\n\t\t? mediaUrl\n\t\t: // Ensure the url is not malformed due to sanitization through `wp_kses`.\n\t\t originalUrl?.replaceAll( '&', '&' );\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: originalBackgroundType;\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { gradientClass, gradientValue } = __experimentalUseGradient();\n\n\tconst onSelectMedia = async ( newMedia ) => {\n\t\tconst mediaAttributes = attributesFromMedia( newMedia );\n\t\tconst isImage = [ newMedia?.type, newMedia?.media_type ].includes(\n\t\t\tIMAGE_BACKGROUND_TYPE\n\t\t);\n\n\t\tconst averageBackgroundColor = await getMediaColor(\n\t\t\tisImage ? newMedia?.url : undefined\n\t\t);\n\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\tsetOverlayColor( newOverlayColor );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\t// Only set a new dimRatio if there was no previous media selected\n\t\t// to avoid resetting to 50 if it has been explicitly set to 100.\n\t\t// See issue #52835 for context.\n\t\tconst newDimRatio =\n\t\t\toriginalUrl === undefined && dimRatio === 100 ? 50 : dimRatio;\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\tfocalPoint: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onClearMedia = () => {\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = DEFAULT_OVERLAY_COLOR;\n\t\t\tsetOverlayColor( undefined );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\tDEFAULT_BACKGROUND_COLOR\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tid: undefined,\n\t\t\tbackgroundType: undefined,\n\t\t\tfocalPoint: undefined,\n\t\t\thasParallax: undefined,\n\t\t\tisRepeated: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onSetOverlayColor = async ( newOverlayColor ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetOverlayColor( newOverlayColor );\n\n\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\n\t\tsetAttributes( {\n\t\t\tisUserOverlayColor: true,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUpdateDimRatio = async ( newDimRatio ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\toverlayColor.color,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\n\n\tconst [ resizeListener, { height, width } ] = useResizeObserver();\n\tconst resizableBoxDimensions = useMemo( () => {\n\t\treturn {\n\t\t\theight: minHeightUnit === 'px' ? minHeight : 'auto',\n\t\t\twidth: 'auto',\n\t\t};\n\t}, [ minHeight, minHeightUnit ] );\n\n\tconst minHeightWithUnit =\n\t\tminHeight && minHeightUnit\n\t\t\t? `${ minHeight }${ minHeightUnit }`\n\t\t\t: minHeight;\n\n\tconst isImgElement = ! ( hasParallax || isRepeated );\n\n\tconst style = {\n\t\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst backgroundImage = url ? `url(${ url })` : undefined;\n\n\tconst backgroundPosition = mediaPosition( focalPoint );\n\n\tconst bgStyle = { backgroundColor: overlayColor.color };\n\tconst mediaStyle = {\n\t\tobjectPosition:\n\t\t\tfocalPoint && isImgElement\n\t\t\t\t? mediaPosition( focalPoint )\n\t\t\t\t: undefined,\n\t};\n\n\tconst hasBackground = !! ( url || overlayColor.color || gradientValue );\n\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlock( clientId ).innerBlocks.length >\n\t\t\t0,\n\t\t[ clientId ]\n\t);\n\n\tconst ref = useRef();\n\tconst blockProps = useBlockProps( { ref } );\n\n\t// Check for fontSize support before we pass a fontSize attribute to the innerBlocks.\n\tconst [ fontSizes ] = useSettings( 'typography.fontSizes' );\n\tconst hasFontSizes = fontSizes?.length > 0;\n\tconst innerBlocksTemplate = getInnerBlocksTemplate( {\n\t\tfontSize: hasFontSizes ? 'large' : undefined,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t},\n\t\t{\n\t\t\t// Avoid template sync when the `templateLock` value is `all` or `contentOnly`.\n\t\t\t// See: https://github.com/WordPress/gutenberg/pull/45632\n\t\t\ttemplate: ! hasInnerBlocks ? innerBlocksTemplate : undefined,\n\t\t\ttemplateInsertUpdatesSelection: true,\n\t\t\tallowedBlocks,\n\t\t\ttemplateLock,\n\t\t\tdropZoneElement: ref.current,\n\t\t}\n\t);\n\n\tconst mediaElement = useRef();\n\tconst currentSettings = {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\thasInnerBlocks,\n\t\turl,\n\t\tisImgElement,\n\t\toverlayColor,\n\t};\n\n\tconst toggleUseFeaturedImage = async () => {\n\t\tconst newUseFeaturedImage = ! useFeaturedImage;\n\n\t\tconst averageBackgroundColor = newUseFeaturedImage\n\t\t\t? await getMediaColor( mediaUrl )\n\t\t\t: DEFAULT_BACKGROUND_COLOR;\n\n\t\tconst newOverlayColor = ! isUserOverlayColor\n\t\t\t? averageBackgroundColor\n\t\t\t: overlayColor.color;\n\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tif ( newUseFeaturedImage ) {\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t} else {\n\t\t\t\tsetOverlayColor( undefined );\n\t\t\t}\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newDimRatio = dimRatio === 100 ? 50 : dimRatio;\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tuseFeaturedImage: newUseFeaturedImage,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tbackgroundType: useFeaturedImage\n\t\t\t\t? IMAGE_BACKGROUND_TYPE\n\t\t\t\t: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst blockControls = (\n\t\t<CoverBlockControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t/>\n\t);\n\n\tconst inspectorControls = (\n\t\t<CoverInspectorControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tclientId={ clientId }\n\t\t\tsetOverlayColor={ onSetOverlayColor }\n\t\t\tcoverRef={ ref }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\tupdateDimRatio={ onUpdateDimRatio }\n\t\t\tonClearMedia={ onClearMedia }\n\t\t/>\n\t);\n\n\tconst resizableCoverProps = {\n\t\tclassName: 'block-library-cover__resize-container',\n\t\tclientId,\n\t\theight,\n\t\tminHeight: minHeightWithUnit,\n\t\tonResizeStart: () => {\n\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\ttoggleSelection( false );\n\t\t},\n\t\tonResize: ( value ) => {\n\t\t\tsetAttributes( { minHeight: value } );\n\t\t},\n\t\tonResizeStop: ( newMinHeight ) => {\n\t\t\ttoggleSelection( true );\n\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t},\n\t\t// Hide the resize handle if an aspect ratio is set, as the aspect ratio takes precedence.\n\t\tshowHandle: ! attributes.style?.dimensions?.aspectRatio ? true : false,\n\t\tsize: resizableBoxDimensions,\n\t\twidth,\n\t};\n\n\tif ( ! useFeaturedImage && ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ blockControls }\n\t\t\t\t{ inspectorControls }\n\t\t\t\t{ isSelected && (\n\t\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t\t) }\n\t\t\t\t<TagName\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'is-placeholder',\n\t\t\t\t\t\tblockProps.className\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...blockProps.style,\n\t\t\t\t\t\tminHeight: minHeightWithUnit || undefined,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ resizeListener }\n\t\t\t\t\t<CoverPlaceholder\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"wp-block-cover__placeholder-background-options\">\n\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\tdisableCustomColors\n\t\t\t\t\t\t\t\tvalue={ overlayColor.color }\n\t\t\t\t\t\t\t\tonChange={ onSetOverlayColor }\n\t\t\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</CoverPlaceholder>\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst classes = classnames(\n\t\t{\n\t\t\t'is-dark-theme': isDark,\n\t\t\t'is-light': ! isDark,\n\t\t\t'is-transient': isUploadingMedia,\n\t\t\t'has-parallax': hasParallax,\n\t\t\t'is-repeated': isRepeated,\n\t\t\t'has-custom-content-position':\n\t\t\t\t! isContentPositionCenter( contentPosition ),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t{ resizeListener }\n\t\t\t\t{ ( ! useFeaturedImage || url ) && (\n\t\t\t\t\t<span\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ ! url && useFeaturedImage && (\n\t\t\t\t\t<Placeholder\n\t\t\t\t\t\tclassName=\"wp-block-cover__image--placeholder-image\"\n\t\t\t\t\t\twithIllustration\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ url &&\n\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t( isImgElement ? (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\trole={ alt ? 'img' : undefined }\n\t\t\t\t\t\t\taria-label={ alt ? alt : undefined }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t'wp-block-cover__image-background'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ { backgroundImage, backgroundPosition } }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t{ url && isVideoBackground && (\n\t\t\t\t\t<video\n\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__video-background\"\n\t\t\t\t\t\tautoPlay\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tloop\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isUploadingMedia && <Spinner /> }\n\t\t\t\t<CoverPlaceholder\n\t\t\t\t\tdisableMediaButtons\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t/>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</TagName>\n\t\t\t{ isSelected && (\n\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( CoverEdit );\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["classnames","useEntityProp","store","coreStore","useEffect","useMemo","useRef","Placeholder","Spinner","compose","useResizeObserver","withColors","ColorPalette","useBlockProps","useSettings","useInnerBlocksProps","__experimentalUseGradient","blockEditorStore","__","useSelect","useDispatch","isBlobURL","noticesStore","attributesFromMedia","IMAGE_BACKGROUND_TYPE","VIDEO_BACKGROUND_TYPE","dimRatioToClass","isContentPositionCenter","getPositionClassName","mediaPosition","CoverInspectorControls","CoverBlockControls","CoverPlaceholder","ResizableCoverPopover","getMediaColor","compositeIsDark","DEFAULT_BACKGROUND_COLOR","DEFAULT_OVERLAY_COLOR","getInnerBlocksTemplate","attributes","align","placeholder","isTemporaryMedia","id","url","CoverEdit","clientId","isSelected","overlayColor","setAttributes","setOverlayColor","toggleSelection","context","postId","postType","contentPosition","originalUrl","backgroundType","originalBackgroundType","useFeaturedImage","dimRatio","focalPoint","hasParallax","isDark","isRepeated","minHeight","minHeightUnit","alt","allowedBlocks","templateLock","tagName","TagName","isUserOverlayColor","featuredImage","__unstableMarkNextChangeAsNotPersistent","media","select","getMedia","mediaUrl","source_url","averageBackgroundColor","newOverlayColor","color","newIsDark","replaceAll","createErrorNotice","gradientClass","gradientValue","onSelectMedia","newMedia","mediaAttributes","isImage","type","media_type","includes","undefined","newDimRatio","onClearMedia","onSetOverlayColor","onUpdateDimRatio","onUploadError","message","isUploadingMedia","isImageBackground","isVideoBackground","resizeListener","height","width","resizableBoxDimensions","minHeightWithUnit","isImgElement","style","backgroundImage","backgroundPosition","bgStyle","backgroundColor","mediaStyle","objectPosition","hasBackground","hasInnerBlocks","getBlock","innerBlocks","length","ref","blockProps","fontSizes","hasFontSizes","innerBlocksTemplate","fontSize","innerBlocksProps","className","template","templateInsertUpdatesSelection","dropZoneElement","current","mediaElement","currentSettings","toggleUseFeaturedImage","newUseFeaturedImage","blockControls","createElement","inspectorControls","coverRef","updateDimRatio","resizableCoverProps","onResizeStart","onResize","value","onResizeStop","newMinHeight","showHandle","dimensions","aspectRatio","size","Fragment","onError","disableCustomColors","onChange","clearable","classes","showOverlay","class","withIllustration","src","role","autoPlay","muted","loop","disableMediaButtons"],"sources":["@wordpress/block-library/src/cover/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useEntityProp, store as coreStore } from '@wordpress/core-data';\nimport { useEffect, useMemo, useRef } from '@wordpress/element';\nimport { Placeholder, Spinner } from '@wordpress/components';\nimport { compose, useResizeObserver } from '@wordpress/compose';\nimport {\n\twithColors,\n\tColorPalette,\n\tuseBlockProps,\n\tuseSettings,\n\tuseInnerBlocksProps,\n\t__experimentalUseGradient,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { isBlobURL } from '@wordpress/blob';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport {\n\tattributesFromMedia,\n\tIMAGE_BACKGROUND_TYPE,\n\tVIDEO_BACKGROUND_TYPE,\n\tdimRatioToClass,\n\tisContentPositionCenter,\n\tgetPositionClassName,\n\tmediaPosition,\n} from '../shared';\nimport CoverInspectorControls from './inspector-controls';\nimport CoverBlockControls from './block-controls';\nimport CoverPlaceholder from './cover-placeholder';\nimport ResizableCoverPopover from './resizable-cover-popover';\nimport {\n\tgetMediaColor,\n\tcompositeIsDark,\n\tDEFAULT_BACKGROUND_COLOR,\n\tDEFAULT_OVERLAY_COLOR,\n} from './color-utils';\n\nfunction getInnerBlocksTemplate( attributes ) {\n\treturn [\n\t\t[\n\t\t\t'core/paragraph',\n\t\t\t{\n\t\t\t\talign: 'center',\n\t\t\t\tplaceholder: __( 'Write title…' ),\n\t\t\t\t...attributes,\n\t\t\t},\n\t\t],\n\t];\n}\n\n/**\n * Is the URL a temporary blob URL? A blob URL is one that is used temporarily while\n * the media (image or video) is being uploaded and will not have an id allocated yet.\n *\n * @param {number} id The id of the media.\n * @param {string} url The url of the media.\n *\n * @return {boolean} Is the URL a Blob URL.\n */\nconst isTemporaryMedia = ( id, url ) => ! id && isBlobURL( url );\n\nfunction CoverEdit( {\n\tattributes,\n\tclientId,\n\tisSelected,\n\toverlayColor,\n\tsetAttributes,\n\tsetOverlayColor,\n\ttoggleSelection,\n\tcontext: { postId, postType },\n} ) {\n\tconst {\n\t\tcontentPosition,\n\t\tid,\n\t\turl: originalUrl,\n\t\tbackgroundType: originalBackgroundType,\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisDark,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\tallowedBlocks,\n\t\ttemplateLock,\n\t\ttagName: TagName = 'div',\n\t\tisUserOverlayColor,\n\t} = attributes;\n\n\tconst [ featuredImage ] = useEntityProp(\n\t\t'postType',\n\t\tpostType,\n\t\t'featured_media',\n\t\tpostId\n\t);\n\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst media = useSelect(\n\t\t( select ) =>\n\t\t\tfeaturedImage &&\n\t\t\tselect( coreStore ).getMedia( featuredImage, { context: 'view' } ),\n\t\t[ featuredImage ]\n\t);\n\tconst mediaUrl = media?.source_url;\n\n\t// User can change the featured image outside of the block, but we still\n\t// need to update the block when that happens. This effect should only\n\t// run when the featured image changes in that case. All other cases are\n\t// handled in their respective callbacks.\n\tuseEffect( () => {\n\t\t( async () => {\n\t\t\tif ( ! useFeaturedImage ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst averageBackgroundColor = await getMediaColor( mediaUrl );\n\n\t\t\tlet newOverlayColor = overlayColor.color;\n\t\t\tif ( ! isUserOverlayColor ) {\n\t\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t}\n\n\t\t\tconst newIsDark = compositeIsDark(\n\t\t\t\tdimRatio,\n\t\t\t\tnewOverlayColor,\n\t\t\t\taverageBackgroundColor\n\t\t\t);\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { isDark: newIsDark } );\n\t\t} )();\n\t\t// Disable reason: Update the block only when the featured image changes.\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [ mediaUrl ] );\n\n\t// instead of destructuring the attributes\n\t// we define the url and background type\n\t// depending on the value of the useFeaturedImage flag\n\t// to preview in edit the dynamic featured image\n\tconst url = useFeaturedImage\n\t\t? mediaUrl\n\t\t: // Ensure the url is not malformed due to sanitization through `wp_kses`.\n\t\t originalUrl?.replaceAll( '&', '&' );\n\tconst backgroundType = useFeaturedImage\n\t\t? IMAGE_BACKGROUND_TYPE\n\t\t: originalBackgroundType;\n\n\tconst { createErrorNotice } = useDispatch( noticesStore );\n\tconst { gradientClass, gradientValue } = __experimentalUseGradient();\n\n\tconst onSelectMedia = async ( newMedia ) => {\n\t\tconst mediaAttributes = attributesFromMedia( newMedia );\n\t\tconst isImage = [ newMedia?.type, newMedia?.media_type ].includes(\n\t\t\tIMAGE_BACKGROUND_TYPE\n\t\t);\n\n\t\tconst averageBackgroundColor = await getMediaColor(\n\t\t\tisImage ? newMedia?.url : undefined\n\t\t);\n\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = averageBackgroundColor;\n\t\t\tsetOverlayColor( newOverlayColor );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\t// Only set a new dimRatio if there was no previous media selected\n\t\t// to avoid resetting to 50 if it has been explicitly set to 100.\n\t\t// See issue #52835 for context.\n\t\tconst newDimRatio =\n\t\t\toriginalUrl === undefined && dimRatio === 100 ? 50 : dimRatio;\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\t...mediaAttributes,\n\t\t\tfocalPoint: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onClearMedia = () => {\n\t\tlet newOverlayColor = overlayColor.color;\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tnewOverlayColor = DEFAULT_OVERLAY_COLOR;\n\t\t\tsetOverlayColor( undefined );\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\tDEFAULT_BACKGROUND_COLOR\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tid: undefined,\n\t\t\tbackgroundType: undefined,\n\t\t\tfocalPoint: undefined,\n\t\t\thasParallax: undefined,\n\t\t\tisRepeated: undefined,\n\t\t\tuseFeaturedImage: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onSetOverlayColor = async ( newOverlayColor ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tdimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetOverlayColor( newOverlayColor );\n\n\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\n\t\tsetAttributes( {\n\t\t\tisUserOverlayColor: true,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUpdateDimRatio = async ( newDimRatio ) => {\n\t\tconst averageBackgroundColor = await getMediaColor( url );\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\toverlayColor.color,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tdimRatio: newDimRatio,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst onUploadError = ( message ) => {\n\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t};\n\n\tconst isUploadingMedia = isTemporaryMedia( id, url );\n\n\tconst isImageBackground = IMAGE_BACKGROUND_TYPE === backgroundType;\n\tconst isVideoBackground = VIDEO_BACKGROUND_TYPE === backgroundType;\n\n\tconst [ resizeListener, { height, width } ] = useResizeObserver();\n\tconst resizableBoxDimensions = useMemo( () => {\n\t\treturn {\n\t\t\theight: minHeightUnit === 'px' ? minHeight : 'auto',\n\t\t\twidth: 'auto',\n\t\t};\n\t}, [ minHeight, minHeightUnit ] );\n\n\tconst minHeightWithUnit =\n\t\tminHeight && minHeightUnit\n\t\t\t? `${ minHeight }${ minHeightUnit }`\n\t\t\t: minHeight;\n\n\tconst isImgElement = ! ( hasParallax || isRepeated );\n\n\tconst style = {\n\t\tminHeight: minHeightWithUnit || undefined,\n\t};\n\n\tconst backgroundImage = url ? `url(${ url })` : undefined;\n\n\tconst backgroundPosition = mediaPosition( focalPoint );\n\n\tconst bgStyle = { backgroundColor: overlayColor.color };\n\tconst mediaStyle = {\n\t\tobjectPosition:\n\t\t\tfocalPoint && isImgElement\n\t\t\t\t? mediaPosition( focalPoint )\n\t\t\t\t: undefined,\n\t};\n\n\tconst hasBackground = !! ( url || overlayColor.color || gradientValue );\n\n\tconst hasInnerBlocks = useSelect(\n\t\t( select ) =>\n\t\t\tselect( blockEditorStore ).getBlock( clientId ).innerBlocks.length >\n\t\t\t0,\n\t\t[ clientId ]\n\t);\n\n\tconst ref = useRef();\n\tconst blockProps = useBlockProps( { ref } );\n\n\t// Check for fontSize support before we pass a fontSize attribute to the innerBlocks.\n\tconst [ fontSizes ] = useSettings( 'typography.fontSizes' );\n\tconst hasFontSizes = fontSizes?.length > 0;\n\tconst innerBlocksTemplate = getInnerBlocksTemplate( {\n\t\tfontSize: hasFontSizes ? 'large' : undefined,\n\t} );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-cover__inner-container',\n\t\t},\n\t\t{\n\t\t\t// Avoid template sync when the `templateLock` value is `all` or `contentOnly`.\n\t\t\t// See: https://github.com/WordPress/gutenberg/pull/45632\n\t\t\ttemplate: ! hasInnerBlocks ? innerBlocksTemplate : undefined,\n\t\t\ttemplateInsertUpdatesSelection: true,\n\t\t\tallowedBlocks,\n\t\t\ttemplateLock,\n\t\t\tdropZoneElement: ref.current,\n\t\t}\n\t);\n\n\tconst mediaElement = useRef();\n\tconst currentSettings = {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\thasInnerBlocks,\n\t\turl,\n\t\tisImgElement,\n\t\toverlayColor,\n\t};\n\n\tconst toggleUseFeaturedImage = async () => {\n\t\tconst newUseFeaturedImage = ! useFeaturedImage;\n\n\t\tconst averageBackgroundColor = newUseFeaturedImage\n\t\t\t? await getMediaColor( mediaUrl )\n\t\t\t: DEFAULT_BACKGROUND_COLOR;\n\n\t\tconst newOverlayColor = ! isUserOverlayColor\n\t\t\t? averageBackgroundColor\n\t\t\t: overlayColor.color;\n\n\t\tif ( ! isUserOverlayColor ) {\n\t\t\tif ( newUseFeaturedImage ) {\n\t\t\t\tsetOverlayColor( newOverlayColor );\n\t\t\t} else {\n\t\t\t\tsetOverlayColor( undefined );\n\t\t\t}\n\n\t\t\t// Make undo revert the next setAttributes and the previous setOverlayColor.\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t}\n\n\t\tconst newDimRatio = dimRatio === 100 ? 50 : dimRatio;\n\t\tconst newIsDark = compositeIsDark(\n\t\t\tnewDimRatio,\n\t\t\tnewOverlayColor,\n\t\t\taverageBackgroundColor\n\t\t);\n\n\t\tsetAttributes( {\n\t\t\tid: undefined,\n\t\t\turl: undefined,\n\t\t\tuseFeaturedImage: newUseFeaturedImage,\n\t\t\tdimRatio: newDimRatio,\n\t\t\tbackgroundType: useFeaturedImage\n\t\t\t\t? IMAGE_BACKGROUND_TYPE\n\t\t\t\t: undefined,\n\t\t\tisDark: newIsDark,\n\t\t} );\n\t};\n\n\tconst blockControls = (\n\t\t<CoverBlockControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t/>\n\t);\n\n\tconst inspectorControls = (\n\t\t<CoverInspectorControls\n\t\t\tattributes={ attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tclientId={ clientId }\n\t\t\tsetOverlayColor={ onSetOverlayColor }\n\t\t\tcoverRef={ ref }\n\t\t\tcurrentSettings={ currentSettings }\n\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\tupdateDimRatio={ onUpdateDimRatio }\n\t\t\tonClearMedia={ onClearMedia }\n\t\t/>\n\t);\n\n\tconst resizableCoverProps = {\n\t\tclassName: 'block-library-cover__resize-container',\n\t\tclientId,\n\t\theight,\n\t\tminHeight: minHeightWithUnit,\n\t\tonResizeStart: () => {\n\t\t\tsetAttributes( { minHeightUnit: 'px' } );\n\t\t\ttoggleSelection( false );\n\t\t},\n\t\tonResize: ( value ) => {\n\t\t\tsetAttributes( { minHeight: value } );\n\t\t},\n\t\tonResizeStop: ( newMinHeight ) => {\n\t\t\ttoggleSelection( true );\n\t\t\tsetAttributes( { minHeight: newMinHeight } );\n\t\t},\n\t\t// Hide the resize handle if an aspect ratio is set, as the aspect ratio takes precedence.\n\t\tshowHandle: ! attributes.style?.dimensions?.aspectRatio ? true : false,\n\t\tsize: resizableBoxDimensions,\n\t\twidth,\n\t};\n\n\tif ( ! useFeaturedImage && ! hasInnerBlocks && ! hasBackground ) {\n\t\treturn (\n\t\t\t<>\n\t\t\t\t{ blockControls }\n\t\t\t\t{ inspectorControls }\n\t\t\t\t{ isSelected && (\n\t\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t\t) }\n\t\t\t\t<TagName\n\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'is-placeholder',\n\t\t\t\t\t\tblockProps.className\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...blockProps.style,\n\t\t\t\t\t\tminHeight: minHeightWithUnit || undefined,\n\t\t\t\t\t} }\n\t\t\t\t>\n\t\t\t\t\t{ resizeListener }\n\t\t\t\t\t<CoverPlaceholder\n\t\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t\t>\n\t\t\t\t\t\t<div className=\"wp-block-cover__placeholder-background-options\">\n\t\t\t\t\t\t\t<ColorPalette\n\t\t\t\t\t\t\t\tdisableCustomColors\n\t\t\t\t\t\t\t\tvalue={ overlayColor.color }\n\t\t\t\t\t\t\t\tonChange={ onSetOverlayColor }\n\t\t\t\t\t\t\t\tclearable={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</CoverPlaceholder>\n\t\t\t\t</TagName>\n\t\t\t</>\n\t\t);\n\t}\n\n\tconst classes = classnames(\n\t\t{\n\t\t\t'is-dark-theme': isDark,\n\t\t\t'is-light': ! isDark,\n\t\t\t'is-transient': isUploadingMedia,\n\t\t\t'has-parallax': hasParallax,\n\t\t\t'is-repeated': isRepeated,\n\t\t\t'has-custom-content-position':\n\t\t\t\t! isContentPositionCenter( contentPosition ),\n\t\t},\n\t\tgetPositionClassName( contentPosition )\n\t);\n\n\tconst showOverlay =\n\t\turl || ! useFeaturedImage || ( useFeaturedImage && ! url );\n\n\treturn (\n\t\t<>\n\t\t\t{ blockControls }\n\t\t\t{ inspectorControls }\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( classes, blockProps.className ) }\n\t\t\t\tstyle={ { ...style, ...blockProps.style } }\n\t\t\t\tdata-url={ url }\n\t\t\t>\n\t\t\t\t{ resizeListener }\n\t\t\t\t{ showOverlay && (\n\t\t\t\t\t<span\n\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t'wp-block-cover__background',\n\t\t\t\t\t\t\tdimRatioToClass( dimRatio ),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t[ overlayColor.class ]: overlayColor.class,\n\t\t\t\t\t\t\t\t'has-background-dim': dimRatio !== undefined,\n\t\t\t\t\t\t\t\t// For backwards compatibility. Former versions of the Cover Block applied\n\t\t\t\t\t\t\t\t// `.wp-block-cover__gradient-background` in the presence of\n\t\t\t\t\t\t\t\t// media, a gradient and a dim.\n\t\t\t\t\t\t\t\t'wp-block-cover__gradient-background':\n\t\t\t\t\t\t\t\t\turl && gradientValue && dimRatio !== 0,\n\t\t\t\t\t\t\t\t'has-background-gradient': gradientValue,\n\t\t\t\t\t\t\t\t[ gradientClass ]: gradientClass,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tstyle={ { backgroundImage: gradientValue, ...bgStyle } }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ ! url && useFeaturedImage && (\n\t\t\t\t\t<Placeholder\n\t\t\t\t\t\tclassName=\"wp-block-cover__image--placeholder-image\"\n\t\t\t\t\t\twithIllustration\n\t\t\t\t\t/>\n\t\t\t\t) }\n\n\t\t\t\t{ url &&\n\t\t\t\t\tisImageBackground &&\n\t\t\t\t\t( isImgElement ? (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\tclassName=\"wp-block-cover__image-background\"\n\t\t\t\t\t\t\talt={ alt }\n\t\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\t\trole={ alt ? 'img' : undefined }\n\t\t\t\t\t\t\taria-label={ alt ? alt : undefined }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\tclasses,\n\t\t\t\t\t\t\t\t'wp-block-cover__image-background'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tstyle={ { backgroundImage, backgroundPosition } }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) ) }\n\t\t\t\t{ url && isVideoBackground && (\n\t\t\t\t\t<video\n\t\t\t\t\t\tref={ mediaElement }\n\t\t\t\t\t\tclassName=\"wp-block-cover__video-background\"\n\t\t\t\t\t\tautoPlay\n\t\t\t\t\t\tmuted\n\t\t\t\t\t\tloop\n\t\t\t\t\t\tsrc={ url }\n\t\t\t\t\t\tstyle={ mediaStyle }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isUploadingMedia && <Spinner /> }\n\t\t\t\t<CoverPlaceholder\n\t\t\t\t\tdisableMediaButtons\n\t\t\t\t\tonSelectMedia={ onSelectMedia }\n\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\ttoggleUseFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t/>\n\t\t\t\t<div { ...innerBlocksProps } />\n\t\t\t</TagName>\n\t\t\t{ isSelected && (\n\t\t\t\t<ResizableCoverPopover { ...resizableCoverProps } />\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport default compose( [\n\twithColors( { overlayColor: 'background-color' } ),\n] )( CoverEdit );\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RichText","useBlockProps","useInnerBlocksProps","store","blockEditorStore","InspectorControls","useSelect","PanelBody","ToggleControl","__","TEMPLATE","placeholder","DetailsEdit","attributes","setAttributes","clientId","showContent","summary","blockProps","innerBlocksProps","template","__experimentalCaptureToolbars","hasSelection","select","isBlockSelected","hasSelectedInnerBlock","createElement","Fragment","title","label","checked","onChange","open","onClick","event","preventDefault","allowedFormats","withoutInteractiveFormatting","value","newSummary","children"],"sources":["@wordpress/block-library/src/details/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n\tInspectorControls,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nconst TEMPLATE = [\n\t[\n\t\t'core/paragraph',\n\t\t{\n\t\t\tplaceholder: __( 'Type / to add a hidden block' ),\n\t\t},\n\t],\n];\n\nfunction DetailsEdit( { attributes, setAttributes, clientId } ) {\n\tconst { showContent, summary } = attributes;\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\t__experimentalCaptureToolbars: true,\n\t} );\n\n\t// Check if either the block or the inner blocks are selected.\n\tconst hasSelection = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isBlockSelected, hasSelectedInnerBlock } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\t/* Sets deep to true to also find blocks inside the details content block. */\n\t\t\treturn (\n\t\t\t\thasSelectedInnerBlock( clientId, true ) ||\n\t\t\t\tisBlockSelected( clientId )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\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<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Open by default' ) }\n\t\t\t\t\t\tchecked={ showContent }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowContent: ! showContent,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<details\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\topen={ hasSelection || showContent }\n\t\t\t>\n\t\t\t\t<summary onClick={ ( event ) => event.preventDefault() }>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\taria-label={ __( 'Write summary' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Write summary…' ) }\n\t\t\t\t\t\tallowedFormats={ [] }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tvalue={ summary }\n\t\t\t\t\t\tonChange={ ( newSummary ) =>\n\t\t\t\t\t\t\tsetAttributes( { summary: newSummary } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</summary>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t</details>\n\t\t</>\n\t);\n}\n\nexport default DetailsEdit;\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,QAAQ,EACRC,aAAa,EACbC,mBAAmB,EACnBC,KAAK,IAAIC,gBAAgB,EACzBC,iBAAiB,QACX,yBAAyB;AAChC,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,SAAS,EAAEC,aAAa,QAAQ,uBAAuB;AAChE,SAASC,EAAE,QAAQ,iBAAiB;AAEpC,MAAMC,QAAQ,GAAG,CAChB,CACC,gBAAgB,EAChB;EACCC,WAAW,EAAEF,EAAE,CAAE,8BAA+B;AACjD,CAAC,CACD,CACD;AAED,SAASG,WAAWA,CAAE;EAAEC,UAAU;EAAEC,aAAa;EAAEC;AAAS,CAAC,EAAG;EAC/D,MAAM;IAAEC,WAAW;IAAEC;EAAQ,CAAC,GAAGJ,UAAU;EAC3C,MAAMK,UAAU,GAAGjB,aAAa,CAAC,CAAC;EAClC,MAAMkB,gBAAgB,GAAGjB,mBAAmB,CAAEgB,UAAU,EAAE;IACzDE,QAAQ,EAAEV,QAAQ;IAClBW,6BAA6B,EAAE;EAChC,CAAE,CAAC;;EAEH;EACA,MAAMC,YAAY,GAAGhB,SAAS,CAC3BiB,MAAM,IAAM;IACb,MAAM;MAAEC,eAAe;MAAEC;IAAsB,CAAC,GAC/CF,MAAM,CAAEnB,gBAAiB,CAAC;IAC3B;IACA,OACCqB,qBAAqB,CAAEV,QAAQ,EAAE,IAAK,CAAC,IACvCS,eAAe,CAAET,QAAS,CAAC;EAE7B,CAAC,EACD,CAAEA,QAAQ,CACX,CAAC;EAED,OACCW,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACrB,iBAAiB,QACjBqB,aAAA,CAACnB,SAAS;IAACqB,KAAK,EAAGnB,EAAE,CAAE,UAAW;EAAG,GACpCiB,aAAA,CAAClB,aAAa;IACbqB,KAAK,EAAGpB,EAAE,CAAE,iBAAkB,CAAG;IACjCqB,OAAO,EAAGd,WAAa;IACvBe,QAAQ,EAAGA,CAAA,KACVjB,aAAa,CAAE;MACdE,WAAW,EAAE,CAAEA;IAChB,CAAE;EACF,CACD,CACS,CACO,CAAC,EACpBU,aAAA;IAAA,GACMP,gBAAgB;IACrBa,IAAI,EAAGV,YAAY,IAAIN;EAAa,GAEpCU,aAAA;IAASO,OAAO,EAAKC,KAAK,IAAMA,KAAK,CAACC,cAAc,CAAC;EAAG,GACvDT,aAAA,CAAC1B,QAAQ;
|
|
1
|
+
{"version":3,"names":["RichText","useBlockProps","useInnerBlocksProps","store","blockEditorStore","InspectorControls","useSelect","PanelBody","ToggleControl","__","TEMPLATE","placeholder","DetailsEdit","attributes","setAttributes","clientId","showContent","summary","blockProps","innerBlocksProps","template","__experimentalCaptureToolbars","hasSelection","select","isBlockSelected","hasSelectedInnerBlock","createElement","Fragment","title","label","checked","onChange","open","onClick","event","preventDefault","identifier","allowedFormats","withoutInteractiveFormatting","value","newSummary","children"],"sources":["@wordpress/block-library/src/details/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tRichText,\n\tuseBlockProps,\n\tuseInnerBlocksProps,\n\tstore as blockEditorStore,\n\tInspectorControls,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { PanelBody, ToggleControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\nconst TEMPLATE = [\n\t[\n\t\t'core/paragraph',\n\t\t{\n\t\t\tplaceholder: __( 'Type / to add a hidden block' ),\n\t\t},\n\t],\n];\n\nfunction DetailsEdit( { attributes, setAttributes, clientId } ) {\n\tconst { showContent, summary } = attributes;\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t\t__experimentalCaptureToolbars: true,\n\t} );\n\n\t// Check if either the block or the inner blocks are selected.\n\tconst hasSelection = useSelect(\n\t\t( select ) => {\n\t\t\tconst { isBlockSelected, hasSelectedInnerBlock } =\n\t\t\t\tselect( blockEditorStore );\n\t\t\t/* Sets deep to true to also find blocks inside the details content block. */\n\t\t\treturn (\n\t\t\t\thasSelectedInnerBlock( clientId, true ) ||\n\t\t\t\tisBlockSelected( clientId )\n\t\t\t);\n\t\t},\n\t\t[ clientId ]\n\t);\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<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Open by default' ) }\n\t\t\t\t\t\tchecked={ showContent }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowContent: ! showContent,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<details\n\t\t\t\t{ ...innerBlocksProps }\n\t\t\t\topen={ hasSelection || showContent }\n\t\t\t>\n\t\t\t\t<summary onClick={ ( event ) => event.preventDefault() }>\n\t\t\t\t\t<RichText\n\t\t\t\t\t\tidentifier=\"summary\"\n\t\t\t\t\t\taria-label={ __( 'Write summary' ) }\n\t\t\t\t\t\tplaceholder={ __( 'Write summary…' ) }\n\t\t\t\t\t\tallowedFormats={ [] }\n\t\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\t\tvalue={ summary }\n\t\t\t\t\t\tonChange={ ( newSummary ) =>\n\t\t\t\t\t\t\tsetAttributes( { summary: newSummary } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</summary>\n\t\t\t\t{ innerBlocksProps.children }\n\t\t\t</details>\n\t\t</>\n\t);\n}\n\nexport default DetailsEdit;\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,QAAQ,EACRC,aAAa,EACbC,mBAAmB,EACnBC,KAAK,IAAIC,gBAAgB,EACzBC,iBAAiB,QACX,yBAAyB;AAChC,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,SAAS,EAAEC,aAAa,QAAQ,uBAAuB;AAChE,SAASC,EAAE,QAAQ,iBAAiB;AAEpC,MAAMC,QAAQ,GAAG,CAChB,CACC,gBAAgB,EAChB;EACCC,WAAW,EAAEF,EAAE,CAAE,8BAA+B;AACjD,CAAC,CACD,CACD;AAED,SAASG,WAAWA,CAAE;EAAEC,UAAU;EAAEC,aAAa;EAAEC;AAAS,CAAC,EAAG;EAC/D,MAAM;IAAEC,WAAW;IAAEC;EAAQ,CAAC,GAAGJ,UAAU;EAC3C,MAAMK,UAAU,GAAGjB,aAAa,CAAC,CAAC;EAClC,MAAMkB,gBAAgB,GAAGjB,mBAAmB,CAAEgB,UAAU,EAAE;IACzDE,QAAQ,EAAEV,QAAQ;IAClBW,6BAA6B,EAAE;EAChC,CAAE,CAAC;;EAEH;EACA,MAAMC,YAAY,GAAGhB,SAAS,CAC3BiB,MAAM,IAAM;IACb,MAAM;MAAEC,eAAe;MAAEC;IAAsB,CAAC,GAC/CF,MAAM,CAAEnB,gBAAiB,CAAC;IAC3B;IACA,OACCqB,qBAAqB,CAAEV,QAAQ,EAAE,IAAK,CAAC,IACvCS,eAAe,CAAET,QAAS,CAAC;EAE7B,CAAC,EACD,CAAEA,QAAQ,CACX,CAAC;EAED,OACCW,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACrB,iBAAiB,QACjBqB,aAAA,CAACnB,SAAS;IAACqB,KAAK,EAAGnB,EAAE,CAAE,UAAW;EAAG,GACpCiB,aAAA,CAAClB,aAAa;IACbqB,KAAK,EAAGpB,EAAE,CAAE,iBAAkB,CAAG;IACjCqB,OAAO,EAAGd,WAAa;IACvBe,QAAQ,EAAGA,CAAA,KACVjB,aAAa,CAAE;MACdE,WAAW,EAAE,CAAEA;IAChB,CAAE;EACF,CACD,CACS,CACO,CAAC,EACpBU,aAAA;IAAA,GACMP,gBAAgB;IACrBa,IAAI,EAAGV,YAAY,IAAIN;EAAa,GAEpCU,aAAA;IAASO,OAAO,EAAKC,KAAK,IAAMA,KAAK,CAACC,cAAc,CAAC;EAAG,GACvDT,aAAA,CAAC1B,QAAQ;IACRoC,UAAU,EAAC,SAAS;IACpB,cAAa3B,EAAE,CAAE,eAAgB,CAAG;IACpCE,WAAW,EAAGF,EAAE,CAAE,gBAAiB,CAAG;IACtC4B,cAAc,EAAG,EAAI;IACrBC,4BAA4B;IAC5BC,KAAK,EAAGtB,OAAS;IACjBc,QAAQ,EAAKS,UAAU,IACtB1B,aAAa,CAAE;MAAEG,OAAO,EAAEuB;IAAW,CAAE;EACvC,CACD,CACO,CAAC,EACRrB,gBAAgB,CAACsB,QACX,CACR,CAAC;AAEL;AAEA,eAAe7B,WAAW"}
|
|
@@ -227,6 +227,7 @@ function FileEdit({
|
|
|
227
227
|
})), createElement("div", {
|
|
228
228
|
className: 'wp-block-file__content-wrapper'
|
|
229
229
|
}, createElement(RichText, {
|
|
230
|
+
identifier: "fileName",
|
|
230
231
|
tagName: "a",
|
|
231
232
|
value: fileName,
|
|
232
233
|
placeholder: __('Write file name…'),
|
|
@@ -238,6 +239,7 @@ function FileEdit({
|
|
|
238
239
|
}), showDownloadButton && createElement("div", {
|
|
239
240
|
className: 'wp-block-file__button-richtext-wrapper'
|
|
240
241
|
}, createElement(RichText, {
|
|
242
|
+
identifier: "downloadButtonText",
|
|
241
243
|
tagName: "div" // Must be block-level or else cursor disappears.
|
|
242
244
|
,
|
|
243
245
|
"aria-label": __('Download button text'),
|