@wordpress/block-library 8.28.3 → 8.28.4

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.
Files changed (71) hide show
  1. package/build/button/edit.js +1 -1
  2. package/build/button/edit.js.map +1 -1
  3. package/build/buttons/transforms.js +16 -2
  4. package/build/buttons/transforms.js.map +1 -1
  5. package/build/code/transforms.js +17 -6
  6. package/build/code/transforms.js.map +1 -1
  7. package/build/cover/edit/block-controls.js +14 -3
  8. package/build/cover/edit/block-controls.js.map +1 -1
  9. package/build/cover/edit/inspector-controls.js +1 -1
  10. package/build/cover/edit/inspector-controls.js.map +1 -1
  11. package/build/heading/transforms.js +17 -4
  12. package/build/heading/transforms.js.map +1 -1
  13. package/build/image/edit.js +2 -1
  14. package/build/image/edit.js.map +1 -1
  15. package/build/image/image.js +11 -3
  16. package/build/image/image.js.map +1 -1
  17. package/build/post-featured-image/edit.js +8 -11
  18. package/build/post-featured-image/edit.js.map +1 -1
  19. package/build/post-title/edit.js +2 -2
  20. package/build/post-title/edit.js.map +1 -1
  21. package/build/utils/caption.js +15 -5
  22. package/build/utils/caption.js.map +1 -1
  23. package/build/utils/get-transformed-metadata.js +57 -0
  24. package/build/utils/get-transformed-metadata.js.map +1 -0
  25. package/build-module/button/edit.js +2 -2
  26. package/build-module/button/edit.js.map +1 -1
  27. package/build-module/buttons/transforms.js +16 -2
  28. package/build-module/buttons/transforms.js.map +1 -1
  29. package/build-module/code/transforms.js +17 -6
  30. package/build-module/code/transforms.js.map +1 -1
  31. package/build-module/cover/edit/block-controls.js +15 -4
  32. package/build-module/cover/edit/block-controls.js.map +1 -1
  33. package/build-module/cover/edit/inspector-controls.js +1 -1
  34. package/build-module/cover/edit/inspector-controls.js.map +1 -1
  35. package/build-module/heading/transforms.js +17 -4
  36. package/build-module/heading/transforms.js.map +1 -1
  37. package/build-module/image/edit.js +2 -1
  38. package/build-module/image/edit.js.map +1 -1
  39. package/build-module/image/image.js +12 -4
  40. package/build-module/image/image.js.map +1 -1
  41. package/build-module/post-featured-image/edit.js +9 -12
  42. package/build-module/post-featured-image/edit.js.map +1 -1
  43. package/build-module/post-title/edit.js +2 -2
  44. package/build-module/post-title/edit.js.map +1 -1
  45. package/build-module/utils/caption.js +13 -3
  46. package/build-module/utils/caption.js.map +1 -1
  47. package/build-module/utils/get-transformed-metadata.js +51 -0
  48. package/build-module/utils/get-transformed-metadata.js.map +1 -0
  49. package/build-style/cover/style-rtl.css +2 -1
  50. package/build-style/cover/style.css +2 -1
  51. package/build-style/search/style-rtl.css +2 -0
  52. package/build-style/search/style.css +2 -0
  53. package/build-style/style-rtl.css +4 -1
  54. package/build-style/style.css +4 -1
  55. package/package.json +12 -12
  56. package/src/button/edit.js +2 -1
  57. package/src/buttons/transforms.js +14 -4
  58. package/src/code/transforms.js +20 -5
  59. package/src/cover/edit/block-controls.js +16 -2
  60. package/src/cover/edit/inspector-controls.js +5 -1
  61. package/src/cover/style.scss +3 -2
  62. package/src/footnotes/index.php +1 -1
  63. package/src/heading/transforms.js +27 -8
  64. package/src/image/edit.js +2 -1
  65. package/src/image/image.js +12 -4
  66. package/src/navigation/index.php +7 -3
  67. package/src/post-featured-image/edit.js +9 -11
  68. package/src/post-title/edit.js +49 -43
  69. package/src/search/style.scss +2 -0
  70. package/src/utils/caption.js +10 -1
  71. package/src/utils/get-transformed-metadata.js +65 -0
@@ -197,7 +197,7 @@ function ButtonEdit(props) {
197
197
  if (!isSelected) {
198
198
  return {};
199
199
  }
200
- const blockBindingsSource = (0, _lockUnlock.unlock)(select(_blockEditor.store)).getBlockBindingsSource(metadata?.bindings?.url?.source);
200
+ const blockBindingsSource = (0, _lockUnlock.unlock)(select(_blocks.store)).getBlockBindingsSource(metadata?.bindings?.url?.source);
201
201
  return {
202
202
  lockUrlControls: !!metadata?.bindings?.url && (!blockBindingsSource || blockBindingsSource?.lockAttributesEditing)
203
203
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_constants","_getUpdatedLinkAttributes","_removeAnchorTag","_lockUnlock","_i18n","_element","_components","_blockEditor","_keycodes","_icons","_blocks","_compose","_data","LINK_SETTINGS","LinkControl","DEFAULT_LINK_SETTINGS","id","title","__","useEnter","props","replaceBlocks","selectionChange","useDispatch","blockEditorStore","getBlock","getBlockRootClientId","getBlockIndex","useSelect","propsRef","useRef","current","useRefEffect","element","onKeyDown","event","defaultPrevented","keyCode","ENTER","content","clientId","length","preventDefault","topParentListBlock","blockIndex","head","cloneBlock","innerBlocks","slice","middle","createBlock","getDefaultBlockName","after","tail","addEventListener","removeEventListener","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","_react","createElement","PanelBody","ButtonGroup","map","widthValue","Button","key","size","variant","onClick","ButtonEdit","attributes","className","isSelected","onReplace","mergeBlocks","tagName","textAlign","linkTarget","placeholder","rel","style","text","url","metadata","TagName","isKeyboardEvent","primary","startEditing","primaryShift","unlink","richTextRef","focus","popoverAnchor","setPopoverAnchor","useState","borderProps","useBorderProps","colorProps","useColorProps","spacingProps","useSpacingProps","shadowProps","useShadowProps","ref","blockProps","useBlockProps","useMergeRefs","blockEditingMode","useBlockEditingMode","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","NEW_TAB_TARGET","nofollow","includes","NOFOLLOW_REL","isLinkTag","useEffect","linkValue","useMemo","useEnterRef","mergedRef","lockUrlControls","select","blockBindingsSource","unlock","getBlockBindingsSource","bindings","source","lockAttributesEditing","Fragment","classnames","fontSize","RichText","value","onChange","removeAnchorTag","withoutInteractiveFormatting","border","radius","__experimentalGetElementClassName","onSplit","onMerge","identifier","BlockControls","group","AlignmentControl","nextAlign","ToolbarButton","name","icon","link","shortcut","displayShortcut","linkOff","isActive","Popover","placement","onClose","anchor","focusOnMount","__unstableSlotName","shift","__experimentalLinkControl","newURL","newOpensInNewTab","newNofollow","getUpdatedLinkAttributes","onRemove","forceIsEditingLink","settings","InspectorControls","TextControl","__nextHasNoMarginBottom","label","newRel","_default","exports","default"],"sources":["@wordpress/block-library/src/button/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * Internal dependencies\n */\nimport { NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';\nimport { getUpdatedLinkAttributes } from './get-updated-link-attributes';\nimport removeAnchorTag from '../utils/remove-anchor-tag';\nimport { unlock } from '../lock-unlock';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalGetShadowClassesAndStyles as useShadowProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n\tstore as blockEditorStore,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport {\n\tcreateBlock,\n\tcloneBlock,\n\tgetDefaultBlockName,\n} from '@wordpress/blocks';\nimport { useMergeRefs, useRefEffect } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\nconst LINK_SETTINGS = [\n\t...LinkControl.DEFAULT_LINK_SETTINGS,\n\t{\n\t\tid: 'nofollow',\n\t\ttitle: __( 'Mark as nofollow' ),\n\t},\n];\n\nfunction useEnter( props ) {\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlock, getBlockRootClientId, getBlockIndex } =\n\t\tuseSelect( blockEditorStore );\n\tconst propsRef = useRef( props );\n\tpropsRef.current = props;\n\treturn useRefEffect( ( element ) => {\n\t\tfunction onKeyDown( event ) {\n\t\t\tif ( event.defaultPrevented || event.keyCode !== ENTER ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { content, clientId } = propsRef.current;\n\t\t\tif ( content.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tevent.preventDefault();\n\t\t\tconst topParentListBlock = getBlock(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\tconst blockIndex = getBlockIndex( clientId );\n\t\t\tconst head = cloneBlock( {\n\t\t\t\t...topParentListBlock,\n\t\t\t\tinnerBlocks: topParentListBlock.innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\tblockIndex\n\t\t\t\t),\n\t\t\t} );\n\t\t\tconst middle = createBlock( getDefaultBlockName() );\n\t\t\tconst after = topParentListBlock.innerBlocks.slice(\n\t\t\t\tblockIndex + 1\n\t\t\t);\n\t\t\tconst tail = after.length\n\t\t\t\t? [\n\t\t\t\t\t\tcloneBlock( {\n\t\t\t\t\t\t\t...topParentListBlock,\n\t\t\t\t\t\t\tinnerBlocks: after,\n\t\t\t\t\t\t} ),\n\t\t\t\t ]\n\t\t\t\t: [];\n\t\t\treplaceBlocks(\n\t\t\t\ttopParentListBlock.clientId,\n\t\t\t\t[ head, middle, ...tail ],\n\t\t\t\t1\n\t\t\t);\n\t\t\t// We manually change the selection here because we are replacing\n\t\t\t// a different block than the selected one.\n\t\t\tselectionChange( middle.clientId );\n\t\t}\n\n\t\telement.addEventListener( 'keydown', onKeyDown );\n\t\treturn () => {\n\t\t\telement.removeEventListener( 'keydown', onKeyDown );\n\t\t};\n\t}, [] );\n}\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t\tclientId,\n\t} = props;\n\tconst {\n\t\ttagName,\n\t\ttextAlign,\n\t\tlinkTarget,\n\t\tplaceholder,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\turl,\n\t\twidth,\n\t\tmetadata,\n\t} = attributes;\n\n\tconst TagName = tagName || 'a';\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst shadowProps = useShadowProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === NEW_TAB_TARGET;\n\tconst nofollow = !! rel?.includes( NOFOLLOW_REL );\n\tconst isLinkTag = 'a' === TagName;\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/51256.\n\tconst linkValue = useMemo(\n\t\t() => ( { url, opensInNewTab, nofollow } ),\n\t\t[ url, opensInNewTab, nofollow ]\n\t);\n\n\tconst useEnterRef = useEnter( { content: text, clientId } );\n\tconst mergedRef = useMergeRefs( [ useEnterRef, richTextRef ] );\n\n\tconst { lockUrlControls = false } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\n\t\t\tconst blockBindingsSource = unlock(\n\t\t\t\tselect( blockEditorStore )\n\t\t\t).getBlockBindingsSource( metadata?.bindings?.url?.source );\n\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! metadata?.bindings?.url &&\n\t\t\t\t\t( ! blockBindingsSource ||\n\t\t\t\t\t\tblockBindingsSource?.lockAttributesEditing ),\n\t\t\t};\n\t\t},\n\t\t[ isSelected ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ mergedRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\ttext: removeAnchorTag( value ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t\t...shadowProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ blockEditingMode === 'default' && (\n\t\t\t\t\t<AlignmentControl\n\t\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! isURLSet && isLinkTag && ! lockUrlControls && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && isLinkTag && ! lockUrlControls && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isLinkTag &&\n\t\t\t\tisSelected &&\n\t\t\t\t( isEditingURL || isURLSet ) &&\n\t\t\t\t! lockUrlControls && (\n\t\t\t\t\t<Popover\n\t\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\t\tshift\n\t\t\t\t\t>\n\t\t\t\t\t\t<LinkControl\n\t\t\t\t\t\t\tvalue={ linkValue }\n\t\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\t\tnofollow: newNofollow,\n\t\t\t\t\t\t\t} ) =>\n\t\t\t\t\t\t\t\tsetAttributes(\n\t\t\t\t\t\t\t\t\tgetUpdatedLinkAttributes( {\n\t\t\t\t\t\t\t\t\t\trel,\n\t\t\t\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\t\t\t\tnofollow: newNofollow,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t\t\tsettings={ LINK_SETTINGS }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Popover>\n\t\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t{ isLinkTag && (\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_constants","_getUpdatedLinkAttributes","_removeAnchorTag","_lockUnlock","_i18n","_element","_components","_blockEditor","_keycodes","_icons","_blocks","_compose","_data","LINK_SETTINGS","LinkControl","DEFAULT_LINK_SETTINGS","id","title","__","useEnter","props","replaceBlocks","selectionChange","useDispatch","blockEditorStore","getBlock","getBlockRootClientId","getBlockIndex","useSelect","propsRef","useRef","current","useRefEffect","element","onKeyDown","event","defaultPrevented","keyCode","ENTER","content","clientId","length","preventDefault","topParentListBlock","blockIndex","head","cloneBlock","innerBlocks","slice","middle","createBlock","getDefaultBlockName","after","tail","addEventListener","removeEventListener","WidthPanel","selectedWidth","setAttributes","handleChange","newWidth","width","undefined","_react","createElement","PanelBody","ButtonGroup","map","widthValue","Button","key","size","variant","onClick","ButtonEdit","attributes","className","isSelected","onReplace","mergeBlocks","tagName","textAlign","linkTarget","placeholder","rel","style","text","url","metadata","TagName","isKeyboardEvent","primary","startEditing","primaryShift","unlink","richTextRef","focus","popoverAnchor","setPopoverAnchor","useState","borderProps","useBorderProps","colorProps","useColorProps","spacingProps","useSpacingProps","shadowProps","useShadowProps","ref","blockProps","useBlockProps","useMergeRefs","blockEditingMode","useBlockEditingMode","isEditingURL","setIsEditingURL","isURLSet","opensInNewTab","NEW_TAB_TARGET","nofollow","includes","NOFOLLOW_REL","isLinkTag","useEffect","linkValue","useMemo","useEnterRef","mergedRef","lockUrlControls","select","blockBindingsSource","unlock","blocksStore","getBlockBindingsSource","bindings","source","lockAttributesEditing","Fragment","classnames","fontSize","RichText","value","onChange","removeAnchorTag","withoutInteractiveFormatting","border","radius","__experimentalGetElementClassName","onSplit","onMerge","identifier","BlockControls","group","AlignmentControl","nextAlign","ToolbarButton","name","icon","link","shortcut","displayShortcut","linkOff","isActive","Popover","placement","onClose","anchor","focusOnMount","__unstableSlotName","shift","__experimentalLinkControl","newURL","newOpensInNewTab","newNofollow","getUpdatedLinkAttributes","onRemove","forceIsEditingLink","settings","InspectorControls","TextControl","__nextHasNoMarginBottom","label","newRel","_default","exports","default"],"sources":["@wordpress/block-library/src/button/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * Internal dependencies\n */\nimport { NEW_TAB_TARGET, NOFOLLOW_REL } from './constants';\nimport { getUpdatedLinkAttributes } from './get-updated-link-attributes';\nimport removeAnchorTag from '../utils/remove-anchor-tag';\nimport { unlock } from '../lock-unlock';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useState, useRef, useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tButtonGroup,\n\tPanelBody,\n\tTextControl,\n\tToolbarButton,\n\tPopover,\n} from '@wordpress/components';\nimport {\n\tAlignmentControl,\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\tuseBlockProps,\n\t__experimentalUseBorderProps as useBorderProps,\n\t__experimentalUseColorProps as useColorProps,\n\t__experimentalGetSpacingClassesAndStyles as useSpacingProps,\n\t__experimentalGetShadowClassesAndStyles as useShadowProps,\n\t__experimentalLinkControl as LinkControl,\n\t__experimentalGetElementClassName,\n\tstore as blockEditorStore,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { displayShortcut, isKeyboardEvent, ENTER } from '@wordpress/keycodes';\nimport { link, linkOff } from '@wordpress/icons';\nimport {\n\tcreateBlock,\n\tcloneBlock,\n\tgetDefaultBlockName,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport { useMergeRefs, useRefEffect } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\n\nconst LINK_SETTINGS = [\n\t...LinkControl.DEFAULT_LINK_SETTINGS,\n\t{\n\t\tid: 'nofollow',\n\t\ttitle: __( 'Mark as nofollow' ),\n\t},\n];\n\nfunction useEnter( props ) {\n\tconst { replaceBlocks, selectionChange } = useDispatch( blockEditorStore );\n\tconst { getBlock, getBlockRootClientId, getBlockIndex } =\n\t\tuseSelect( blockEditorStore );\n\tconst propsRef = useRef( props );\n\tpropsRef.current = props;\n\treturn useRefEffect( ( element ) => {\n\t\tfunction onKeyDown( event ) {\n\t\t\tif ( event.defaultPrevented || event.keyCode !== ENTER ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { content, clientId } = propsRef.current;\n\t\t\tif ( content.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tevent.preventDefault();\n\t\t\tconst topParentListBlock = getBlock(\n\t\t\t\tgetBlockRootClientId( clientId )\n\t\t\t);\n\t\t\tconst blockIndex = getBlockIndex( clientId );\n\t\t\tconst head = cloneBlock( {\n\t\t\t\t...topParentListBlock,\n\t\t\t\tinnerBlocks: topParentListBlock.innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\tblockIndex\n\t\t\t\t),\n\t\t\t} );\n\t\t\tconst middle = createBlock( getDefaultBlockName() );\n\t\t\tconst after = topParentListBlock.innerBlocks.slice(\n\t\t\t\tblockIndex + 1\n\t\t\t);\n\t\t\tconst tail = after.length\n\t\t\t\t? [\n\t\t\t\t\t\tcloneBlock( {\n\t\t\t\t\t\t\t...topParentListBlock,\n\t\t\t\t\t\t\tinnerBlocks: after,\n\t\t\t\t\t\t} ),\n\t\t\t\t ]\n\t\t\t\t: [];\n\t\t\treplaceBlocks(\n\t\t\t\ttopParentListBlock.clientId,\n\t\t\t\t[ head, middle, ...tail ],\n\t\t\t\t1\n\t\t\t);\n\t\t\t// We manually change the selection here because we are replacing\n\t\t\t// a different block than the selected one.\n\t\t\tselectionChange( middle.clientId );\n\t\t}\n\n\t\telement.addEventListener( 'keydown', onKeyDown );\n\t\treturn () => {\n\t\t\telement.removeEventListener( 'keydown', onKeyDown );\n\t\t};\n\t}, [] );\n}\n\nfunction WidthPanel( { selectedWidth, setAttributes } ) {\n\tfunction handleChange( newWidth ) {\n\t\t// Check if we are toggling the width off\n\t\tconst width = selectedWidth === newWidth ? undefined : newWidth;\n\n\t\t// Update attributes.\n\t\tsetAttributes( { width } );\n\t}\n\n\treturn (\n\t\t<PanelBody title={ __( 'Width settings' ) }>\n\t\t\t<ButtonGroup aria-label={ __( 'Button width' ) }>\n\t\t\t\t{ [ 25, 50, 75, 100 ].map( ( widthValue ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tkey={ widthValue }\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tvariant={\n\t\t\t\t\t\t\t\twidthValue === selectedWidth\n\t\t\t\t\t\t\t\t\t? 'primary'\n\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => handleChange( widthValue ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ widthValue }%\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ButtonGroup>\n\t\t</PanelBody>\n\t);\n}\n\nfunction ButtonEdit( props ) {\n\tconst {\n\t\tattributes,\n\t\tsetAttributes,\n\t\tclassName,\n\t\tisSelected,\n\t\tonReplace,\n\t\tmergeBlocks,\n\t\tclientId,\n\t} = props;\n\tconst {\n\t\ttagName,\n\t\ttextAlign,\n\t\tlinkTarget,\n\t\tplaceholder,\n\t\trel,\n\t\tstyle,\n\t\ttext,\n\t\turl,\n\t\twidth,\n\t\tmetadata,\n\t} = attributes;\n\n\tconst TagName = tagName || 'a';\n\n\tfunction onKeyDown( event ) {\n\t\tif ( isKeyboardEvent.primary( event, 'k' ) ) {\n\t\t\tstartEditing( event );\n\t\t} else if ( isKeyboardEvent.primaryShift( event, 'k' ) ) {\n\t\t\tunlink();\n\t\t\trichTextRef.current?.focus();\n\t\t}\n\t}\n\n\t// Use internal state instead of a ref to make sure that the component\n\t// re-renders when the popover's anchor updates.\n\tconst [ popoverAnchor, setPopoverAnchor ] = useState( null );\n\n\tconst borderProps = useBorderProps( attributes );\n\tconst colorProps = useColorProps( attributes );\n\tconst spacingProps = useSpacingProps( attributes );\n\tconst shadowProps = useShadowProps( attributes );\n\tconst ref = useRef();\n\tconst richTextRef = useRef();\n\tconst blockProps = useBlockProps( {\n\t\tref: useMergeRefs( [ setPopoverAnchor, ref ] ),\n\t\tonKeyDown,\n\t} );\n\tconst blockEditingMode = useBlockEditingMode();\n\n\tconst [ isEditingURL, setIsEditingURL ] = useState( false );\n\tconst isURLSet = !! url;\n\tconst opensInNewTab = linkTarget === NEW_TAB_TARGET;\n\tconst nofollow = !! rel?.includes( NOFOLLOW_REL );\n\tconst isLinkTag = 'a' === TagName;\n\n\tfunction startEditing( event ) {\n\t\tevent.preventDefault();\n\t\tsetIsEditingURL( true );\n\t}\n\n\tfunction unlink() {\n\t\tsetAttributes( {\n\t\t\turl: undefined,\n\t\t\tlinkTarget: undefined,\n\t\t\trel: undefined,\n\t\t} );\n\t\tsetIsEditingURL( false );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingURL( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\t// Memoize link value to avoid overriding the LinkControl's internal state.\n\t// This is a temporary fix. See https://github.com/WordPress/gutenberg/issues/51256.\n\tconst linkValue = useMemo(\n\t\t() => ( { url, opensInNewTab, nofollow } ),\n\t\t[ url, opensInNewTab, nofollow ]\n\t);\n\n\tconst useEnterRef = useEnter( { content: text, clientId } );\n\tconst mergedRef = useMergeRefs( [ useEnterRef, richTextRef ] );\n\n\tconst { lockUrlControls = false } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! isSelected ) {\n\t\t\t\treturn {};\n\t\t\t}\n\n\t\t\tconst blockBindingsSource = unlock(\n\t\t\t\tselect( blocksStore )\n\t\t\t).getBlockBindingsSource( metadata?.bindings?.url?.source );\n\n\t\t\treturn {\n\t\t\t\tlockUrlControls:\n\t\t\t\t\t!! metadata?.bindings?.url &&\n\t\t\t\t\t( ! blockBindingsSource ||\n\t\t\t\t\t\tblockBindingsSource?.lockAttributesEditing ),\n\t\t\t};\n\t\t},\n\t\t[ isSelected ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<div\n\t\t\t\t{ ...blockProps }\n\t\t\t\tclassName={ classnames( blockProps.className, {\n\t\t\t\t\t[ `has-custom-width wp-block-button__width-${ width }` ]:\n\t\t\t\t\t\twidth,\n\t\t\t\t\t[ `has-custom-font-size` ]: blockProps.style.fontSize,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<RichText\n\t\t\t\t\tref={ mergedRef }\n\t\t\t\t\taria-label={ __( 'Button text' ) }\n\t\t\t\t\tplaceholder={ placeholder || __( 'Add text…' ) }\n\t\t\t\t\tvalue={ text }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\ttext: removeAnchorTag( value ),\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\twithoutInteractiveFormatting\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t'wp-block-button__link',\n\t\t\t\t\t\tcolorProps.className,\n\t\t\t\t\t\tborderProps.className,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t\t\t\t\t// For backwards compatibility add style that isn't\n\t\t\t\t\t\t\t// provided via block support.\n\t\t\t\t\t\t\t'no-border-radius': style?.border?.radius === 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t__experimentalGetElementClassName( 'button' )\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t...borderProps.style,\n\t\t\t\t\t\t...colorProps.style,\n\t\t\t\t\t\t...spacingProps.style,\n\t\t\t\t\t\t...shadowProps.style,\n\t\t\t\t\t} }\n\t\t\t\t\tonSplit={ ( value ) =>\n\t\t\t\t\t\tcreateBlock( 'core/button', {\n\t\t\t\t\t\t\t...attributes,\n\t\t\t\t\t\t\ttext: value,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tonReplace={ onReplace }\n\t\t\t\t\tonMerge={ mergeBlocks }\n\t\t\t\t\tidentifier=\"text\"\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t{ blockEditingMode === 'default' && (\n\t\t\t\t\t<AlignmentControl\n\t\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t\t} }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! isURLSet && isLinkTag && ! lockUrlControls && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\ttitle={ __( 'Link' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primary( 'k' ) }\n\t\t\t\t\t\tonClick={ startEditing }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ isURLSet && isLinkTag && ! lockUrlControls && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tname=\"link\"\n\t\t\t\t\t\ticon={ linkOff }\n\t\t\t\t\t\ttitle={ __( 'Unlink' ) }\n\t\t\t\t\t\tshortcut={ displayShortcut.primaryShift( 'k' ) }\n\t\t\t\t\t\tonClick={ unlink }\n\t\t\t\t\t\tisActive={ true }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ isLinkTag &&\n\t\t\t\tisSelected &&\n\t\t\t\t( isEditingURL || isURLSet ) &&\n\t\t\t\t! lockUrlControls && (\n\t\t\t\t\t<Popover\n\t\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\t\tonClose={ () => {\n\t\t\t\t\t\t\tsetIsEditingURL( false );\n\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tanchor={ popoverAnchor }\n\t\t\t\t\t\tfocusOnMount={ isEditingURL ? 'firstElement' : false }\n\t\t\t\t\t\t__unstableSlotName={ '__unstable-block-tools-after' }\n\t\t\t\t\t\tshift\n\t\t\t\t\t>\n\t\t\t\t\t\t<LinkControl\n\t\t\t\t\t\t\tvalue={ linkValue }\n\t\t\t\t\t\t\tonChange={ ( {\n\t\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\t\tnofollow: newNofollow,\n\t\t\t\t\t\t\t} ) =>\n\t\t\t\t\t\t\t\tsetAttributes(\n\t\t\t\t\t\t\t\t\tgetUpdatedLinkAttributes( {\n\t\t\t\t\t\t\t\t\t\trel,\n\t\t\t\t\t\t\t\t\t\turl: newURL,\n\t\t\t\t\t\t\t\t\t\topensInNewTab: newOpensInNewTab,\n\t\t\t\t\t\t\t\t\t\tnofollow: newNofollow,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonRemove={ () => {\n\t\t\t\t\t\t\t\tunlink();\n\t\t\t\t\t\t\t\trichTextRef.current?.focus();\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tforceIsEditingLink={ isEditingURL }\n\t\t\t\t\t\t\tsettings={ LINK_SETTINGS }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Popover>\n\t\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<WidthPanel\n\t\t\t\t\tselectedWidth={ width }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t{ isLinkTag && (\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\t\tonChange={ ( newRel ) =>\n\t\t\t\t\t\t\tsetAttributes( { rel: newRel } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n\nexport default ButtonEdit;\n"],"mappings":"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"}
@@ -6,10 +6,15 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _blocks = require("@wordpress/blocks");
8
8
  var _richText = require("@wordpress/rich-text");
9
+ var _getTransformedMetadata = require("../utils/get-transformed-metadata");
9
10
  /**
10
11
  * WordPress dependencies
11
12
  */
12
13
 
14
+ /**
15
+ * Internal dependencies
16
+ */
17
+
13
18
  const transforms = {
14
19
  from: [{
15
20
  type: 'block',
@@ -31,7 +36,11 @@ const transforms = {
31
36
  (0, _blocks.createBlock)('core/buttons', {},
32
37
  // Loop the selected buttons.
33
38
  buttons.map(attributes => {
34
- const element = (0, _richText.__unstableCreateElement)(document, attributes.content);
39
+ const {
40
+ content,
41
+ metadata
42
+ } = attributes;
43
+ const element = (0, _richText.__unstableCreateElement)(document, content);
35
44
  // Remove any HTML tags.
36
45
  const text = element.innerText || '';
37
46
  // Get first url.
@@ -40,7 +49,12 @@ const transforms = {
40
49
  // Create singular button in the buttons block.
41
50
  return (0, _blocks.createBlock)('core/button', {
42
51
  text,
43
- url
52
+ url,
53
+ metadata: (0, _getTransformedMetadata.getTransformedMetadata)(metadata, 'core/button', ({
54
+ content: contentBinding
55
+ }) => ({
56
+ text: contentBinding
57
+ }))
44
58
  });
45
59
  })),
46
60
  isMatch: paragraphs => {
@@ -1 +1 @@
1
- {"version":3,"names":["_blocks","require","_richText","transforms","from","type","isMultiBlock","blocks","transform","buttons","createBlock","map","attributes","element","createElement","document","content","text","innerText","link","querySelector","url","getAttribute","isMatch","paragraphs","every","links","querySelectorAll","length","_default","exports","default"],"sources":["@wordpress/block-library/src/buttons/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { __unstableCreateElement as createElement } from '@wordpress/rich-text';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/button' ],\n\t\t\ttransform: ( buttons ) =>\n\t\t\t\t// Creates the buttons block.\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/buttons',\n\t\t\t\t\t{},\n\t\t\t\t\t// Loop the selected buttons.\n\t\t\t\t\tbuttons.map( ( attributes ) =>\n\t\t\t\t\t\t// Create singular button in the buttons block.\n\t\t\t\t\t\tcreateBlock( 'core/button', attributes )\n\t\t\t\t\t)\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( buttons ) =>\n\t\t\t\t// Creates the buttons block.\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/buttons',\n\t\t\t\t\t{},\n\t\t\t\t\t// Loop the selected buttons.\n\t\t\t\t\tbuttons.map( ( attributes ) => {\n\t\t\t\t\t\tconst element = createElement(\n\t\t\t\t\t\t\tdocument,\n\t\t\t\t\t\t\tattributes.content\n\t\t\t\t\t\t);\n\t\t\t\t\t\t// Remove any HTML tags.\n\t\t\t\t\t\tconst text = element.innerText || '';\n\t\t\t\t\t\t// Get first url.\n\t\t\t\t\t\tconst link = element.querySelector( 'a' );\n\t\t\t\t\t\tconst url = link?.getAttribute( 'href' );\n\t\t\t\t\t\t// Create singular button in the buttons block.\n\t\t\t\t\t\treturn createBlock( 'core/button', {\n\t\t\t\t\t\t\ttext,\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t\tisMatch: ( paragraphs ) => {\n\t\t\t\treturn paragraphs.every( ( attributes ) => {\n\t\t\t\t\tconst element = createElement(\n\t\t\t\t\t\tdocument,\n\t\t\t\t\t\tattributes.content\n\t\t\t\t\t);\n\t\t\t\t\tconst text = element.innerText || '';\n\t\t\t\t\tconst links = element.querySelectorAll( 'a' );\n\t\t\t\t\treturn text.length <= 30 && links.length <= 1;\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],"mappings":";;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAJA;AACA;AACA;;AAIA,MAAME,UAAU,GAAG;EAClBC,IAAI,EAAE,CACL;IACCC,IAAI,EAAE,OAAO;IACbC,YAAY,EAAE,IAAI;IAClBC,MAAM,EAAE,CAAE,aAAa,CAAE;IACzBC,SAAS,EAAIC,OAAO;IACnB;IACA,IAAAC,mBAAW,EACV,cAAc,EACd,CAAC,CAAC;IACF;IACAD,OAAO,CAACE,GAAG,CAAIC,UAAU;IACxB;IACA,IAAAF,mBAAW,EAAE,aAAa,EAAEE,UAAW,CACxC,CACD;EACF,CAAC,EACD;IACCP,IAAI,EAAE,OAAO;IACbC,YAAY,EAAE,IAAI;IAClBC,MAAM,EAAE,CAAE,gBAAgB,CAAE;IAC5BC,SAAS,EAAIC,OAAO;IACnB;IACA,IAAAC,mBAAW,EACV,cAAc,EACd,CAAC,CAAC;IACF;IACAD,OAAO,CAACE,GAAG,CAAIC,UAAU,IAAM;MAC9B,MAAMC,OAAO,GAAG,IAAAC,iCAAa,EAC5BC,QAAQ,EACRH,UAAU,CAACI,OACZ,CAAC;MACD;MACA,MAAMC,IAAI,GAAGJ,OAAO,CAACK,SAAS,IAAI,EAAE;MACpC;MACA,MAAMC,IAAI,GAAGN,OAAO,CAACO,aAAa,CAAE,GAAI,CAAC;MACzC,MAAMC,GAAG,GAAGF,IAAI,EAAEG,YAAY,CAAE,MAAO,CAAC;MACxC;MACA,OAAO,IAAAZ,mBAAW,EAAE,aAAa,EAAE;QAClCO,IAAI;QACJI;MACD,CAAE,CAAC;IACJ,CAAE,CACH,CAAC;IACFE,OAAO,EAAIC,UAAU,IAAM;MAC1B,OAAOA,UAAU,CAACC,KAAK,CAAIb,UAAU,IAAM;QAC1C,MAAMC,OAAO,GAAG,IAAAC,iCAAa,EAC5BC,QAAQ,EACRH,UAAU,CAACI,OACZ,CAAC;QACD,MAAMC,IAAI,GAAGJ,OAAO,CAACK,SAAS,IAAI,EAAE;QACpC,MAAMQ,KAAK,GAAGb,OAAO,CAACc,gBAAgB,CAAE,GAAI,CAAC;QAC7C,OAAOV,IAAI,CAACW,MAAM,IAAI,EAAE,IAAIF,KAAK,CAACE,MAAM,IAAI,CAAC;MAC9C,CAAE,CAAC;IACJ;EACD,CAAC;AAEH,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa5B,UAAU"}
1
+ {"version":3,"names":["_blocks","require","_richText","_getTransformedMetadata","transforms","from","type","isMultiBlock","blocks","transform","buttons","createBlock","map","attributes","content","metadata","element","createElement","document","text","innerText","link","querySelector","url","getAttribute","getTransformedMetadata","contentBinding","isMatch","paragraphs","every","links","querySelectorAll","length","_default","exports","default"],"sources":["@wordpress/block-library/src/buttons/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { __unstableCreateElement as createElement } from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { getTransformedMetadata } from '../utils/get-transformed-metadata';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/button' ],\n\t\t\ttransform: ( buttons ) =>\n\t\t\t\t// Creates the buttons block.\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/buttons',\n\t\t\t\t\t{},\n\t\t\t\t\t// Loop the selected buttons.\n\t\t\t\t\tbuttons.map( ( attributes ) =>\n\t\t\t\t\t\t// Create singular button in the buttons block.\n\t\t\t\t\t\tcreateBlock( 'core/button', attributes )\n\t\t\t\t\t)\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( buttons ) =>\n\t\t\t\t// Creates the buttons block.\n\t\t\t\tcreateBlock(\n\t\t\t\t\t'core/buttons',\n\t\t\t\t\t{},\n\t\t\t\t\t// Loop the selected buttons.\n\t\t\t\t\tbuttons.map( ( attributes ) => {\n\t\t\t\t\t\tconst { content, metadata } = attributes;\n\t\t\t\t\t\tconst element = createElement( document, content );\n\t\t\t\t\t\t// Remove any HTML tags.\n\t\t\t\t\t\tconst text = element.innerText || '';\n\t\t\t\t\t\t// Get first url.\n\t\t\t\t\t\tconst link = element.querySelector( 'a' );\n\t\t\t\t\t\tconst url = link?.getAttribute( 'href' );\n\t\t\t\t\t\t// Create singular button in the buttons block.\n\t\t\t\t\t\treturn createBlock( 'core/button', {\n\t\t\t\t\t\t\ttext,\n\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\tmetadata: getTransformedMetadata(\n\t\t\t\t\t\t\t\tmetadata,\n\t\t\t\t\t\t\t\t'core/button',\n\t\t\t\t\t\t\t\t( { content: contentBinding } ) => ( {\n\t\t\t\t\t\t\t\t\ttext: contentBinding,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t} );\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t\tisMatch: ( paragraphs ) => {\n\t\t\t\treturn paragraphs.every( ( attributes ) => {\n\t\t\t\t\tconst element = createElement(\n\t\t\t\t\t\tdocument,\n\t\t\t\t\t\tattributes.content\n\t\t\t\t\t);\n\t\t\t\t\tconst text = element.innerText || '';\n\t\t\t\t\tconst links = element.querySelectorAll( 'a' );\n\t\t\t\t\treturn text.length <= 30 && links.length <= 1;\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],"mappings":";;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAKA,IAAAE,uBAAA,GAAAF,OAAA;AATA;AACA;AACA;;AAIA;AACA;AACA;;AAGA,MAAMG,UAAU,GAAG;EAClBC,IAAI,EAAE,CACL;IACCC,IAAI,EAAE,OAAO;IACbC,YAAY,EAAE,IAAI;IAClBC,MAAM,EAAE,CAAE,aAAa,CAAE;IACzBC,SAAS,EAAIC,OAAO;IACnB;IACA,IAAAC,mBAAW,EACV,cAAc,EACd,CAAC,CAAC;IACF;IACAD,OAAO,CAACE,GAAG,CAAIC,UAAU;IACxB;IACA,IAAAF,mBAAW,EAAE,aAAa,EAAEE,UAAW,CACxC,CACD;EACF,CAAC,EACD;IACCP,IAAI,EAAE,OAAO;IACbC,YAAY,EAAE,IAAI;IAClBC,MAAM,EAAE,CAAE,gBAAgB,CAAE;IAC5BC,SAAS,EAAIC,OAAO;IACnB;IACA,IAAAC,mBAAW,EACV,cAAc,EACd,CAAC,CAAC;IACF;IACAD,OAAO,CAACE,GAAG,CAAIC,UAAU,IAAM;MAC9B,MAAM;QAAEC,OAAO;QAAEC;MAAS,CAAC,GAAGF,UAAU;MACxC,MAAMG,OAAO,GAAG,IAAAC,iCAAa,EAAEC,QAAQ,EAAEJ,OAAQ,CAAC;MAClD;MACA,MAAMK,IAAI,GAAGH,OAAO,CAACI,SAAS,IAAI,EAAE;MACpC;MACA,MAAMC,IAAI,GAAGL,OAAO,CAACM,aAAa,CAAE,GAAI,CAAC;MACzC,MAAMC,GAAG,GAAGF,IAAI,EAAEG,YAAY,CAAE,MAAO,CAAC;MACxC;MACA,OAAO,IAAAb,mBAAW,EAAE,aAAa,EAAE;QAClCQ,IAAI;QACJI,GAAG;QACHR,QAAQ,EAAE,IAAAU,8CAAsB,EAC/BV,QAAQ,EACR,aAAa,EACb,CAAE;UAAED,OAAO,EAAEY;QAAe,CAAC,MAAQ;UACpCP,IAAI,EAAEO;QACP,CAAC,CACF;MACD,CAAE,CAAC;IACJ,CAAE,CACH,CAAC;IACFC,OAAO,EAAIC,UAAU,IAAM;MAC1B,OAAOA,UAAU,CAACC,KAAK,CAAIhB,UAAU,IAAM;QAC1C,MAAMG,OAAO,GAAG,IAAAC,iCAAa,EAC5BC,QAAQ,EACRL,UAAU,CAACC,OACZ,CAAC;QACD,MAAMK,IAAI,GAAGH,OAAO,CAACI,SAAS,IAAI,EAAE;QACpC,MAAMU,KAAK,GAAGd,OAAO,CAACe,gBAAgB,CAAE,GAAI,CAAC;QAC7C,OAAOZ,IAAI,CAACa,MAAM,IAAI,EAAE,IAAIF,KAAK,CAACE,MAAM,IAAI,CAAC;MAC9C,CAAE,CAAC;IACJ;EACD,CAAC;AAEH,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa/B,UAAU"}
@@ -6,10 +6,15 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _blocks = require("@wordpress/blocks");
8
8
  var _richText = require("@wordpress/rich-text");
9
+ var _getTransformedMetadata = require("../utils/get-transformed-metadata");
9
10
  /**
10
11
  * WordPress dependencies
11
12
  */
12
13
 
14
+ /**
15
+ * Internal dependencies
16
+ */
17
+
13
18
  const transforms = {
14
19
  from: [{
15
20
  type: 'enter',
@@ -19,15 +24,18 @@ const transforms = {
19
24
  type: 'block',
20
25
  blocks: ['core/paragraph'],
21
26
  transform: ({
22
- content
27
+ content,
28
+ metadata
23
29
  }) => (0, _blocks.createBlock)('core/code', {
24
- content
30
+ content,
31
+ metadata: (0, _getTransformedMetadata.getTransformedMetadata)(metadata, 'core/code')
25
32
  })
26
33
  }, {
27
34
  type: 'block',
28
35
  blocks: ['core/html'],
29
36
  transform: ({
30
- content: text
37
+ content: text,
38
+ metadata
31
39
  }) => {
32
40
  return (0, _blocks.createBlock)('core/code', {
33
41
  // The HTML is plain text (with plain line breaks), so
@@ -36,7 +44,8 @@ const transforms = {
36
44
  value: (0, _richText.create)({
37
45
  text
38
46
  })
39
- })
47
+ }),
48
+ metadata: (0, _getTransformedMetadata.getTransformedMetadata)(metadata, 'core/code')
40
49
  });
41
50
  }
42
51
  }, {
@@ -58,9 +67,11 @@ const transforms = {
58
67
  type: 'block',
59
68
  blocks: ['core/paragraph'],
60
69
  transform: ({
61
- content
70
+ content,
71
+ metadata
62
72
  }) => (0, _blocks.createBlock)('core/paragraph', {
63
- content
73
+ content,
74
+ metadata: (0, _getTransformedMetadata.getTransformedMetadata)(metadata, 'core/paragraph')
64
75
  })
65
76
  }]
66
77
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_blocks","require","_richText","transforms","from","type","regExp","transform","createBlock","blocks","content","text","toHTMLString","value","create","isMatch","node","nodeName","children","length","firstChild","schema","pre","code","to","_default","exports","default"],"sources":["@wordpress/block-library/src/code/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { create, toHTMLString } from '@wordpress/rich-text';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'enter',\n\t\t\tregExp: /^```$/,\n\t\t\ttransform: () => createBlock( 'core/code' ),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( { content } ) =>\n\t\t\t\tcreateBlock( 'core/code', { content } ),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/html' ],\n\t\t\ttransform: ( { content: text } ) => {\n\t\t\t\treturn createBlock( 'core/code', {\n\t\t\t\t\t// The HTML is plain text (with plain line breaks), so\n\t\t\t\t\t// convert it to rich text.\n\t\t\t\t\tcontent: toHTMLString( { value: create( { text } ) } ),\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tisMatch: ( node ) =>\n\t\t\t\tnode.nodeName === 'PRE' &&\n\t\t\t\tnode.children.length === 1 &&\n\t\t\t\tnode.firstChild.nodeName === 'CODE',\n\t\t\tschema: {\n\t\t\t\tpre: {\n\t\t\t\t\tchildren: {\n\t\t\t\t\t\tcode: {\n\t\t\t\t\t\t\tchildren: {\n\t\t\t\t\t\t\t\t'#text': {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( { content } ) =>\n\t\t\t\tcreateBlock( 'core/paragraph', { content } ),\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],"mappings":";;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAJA;AACA;AACA;;AAIA,MAAME,UAAU,GAAG;EAClBC,IAAI,EAAE,CACL;IACCC,IAAI,EAAE,OAAO;IACbC,MAAM,EAAE,OAAO;IACfC,SAAS,EAAEA,CAAA,KAAM,IAAAC,mBAAW,EAAE,WAAY;EAC3C,CAAC,EACD;IACCH,IAAI,EAAE,OAAO;IACbI,MAAM,EAAE,CAAE,gBAAgB,CAAE;IAC5BF,SAAS,EAAEA,CAAE;MAAEG;IAAQ,CAAC,KACvB,IAAAF,mBAAW,EAAE,WAAW,EAAE;MAAEE;IAAQ,CAAE;EACxC,CAAC,EACD;IACCL,IAAI,EAAE,OAAO;IACbI,MAAM,EAAE,CAAE,WAAW,CAAE;IACvBF,SAAS,EAAEA,CAAE;MAAEG,OAAO,EAAEC;IAAK,CAAC,KAAM;MACnC,OAAO,IAAAH,mBAAW,EAAE,WAAW,EAAE;QAChC;QACA;QACAE,OAAO,EAAE,IAAAE,sBAAY,EAAE;UAAEC,KAAK,EAAE,IAAAC,gBAAM,EAAE;YAAEH;UAAK,CAAE;QAAE,CAAE;MACtD,CAAE,CAAC;IACJ;EACD,CAAC,EACD;IACCN,IAAI,EAAE,KAAK;IACXU,OAAO,EAAIC,IAAI,IACdA,IAAI,CAACC,QAAQ,KAAK,KAAK,IACvBD,IAAI,CAACE,QAAQ,CAACC,MAAM,KAAK,CAAC,IAC1BH,IAAI,CAACI,UAAU,CAACH,QAAQ,KAAK,MAAM;IACpCI,MAAM,EAAE;MACPC,GAAG,EAAE;QACJJ,QAAQ,EAAE;UACTK,IAAI,EAAE;YACLL,QAAQ,EAAE;cACT,OAAO,EAAE,CAAC;YACX;UACD;QACD;MACD;IACD;EACD,CAAC,CACD;EACDM,EAAE,EAAE,CACH;IACCnB,IAAI,EAAE,OAAO;IACbI,MAAM,EAAE,CAAE,gBAAgB,CAAE;IAC5BF,SAAS,EAAEA,CAAE;MAAEG;IAAQ,CAAC,KACvB,IAAAF,mBAAW,EAAE,gBAAgB,EAAE;MAAEE;IAAQ,CAAE;EAC7C,CAAC;AAEH,CAAC;AAAC,IAAAe,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaxB,UAAU"}
1
+ {"version":3,"names":["_blocks","require","_richText","_getTransformedMetadata","transforms","from","type","regExp","transform","createBlock","blocks","content","metadata","getTransformedMetadata","text","toHTMLString","value","create","isMatch","node","nodeName","children","length","firstChild","schema","pre","code","to","_default","exports","default"],"sources":["@wordpress/block-library/src/code/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\nimport { create, toHTMLString } from '@wordpress/rich-text';\n\n/**\n * Internal dependencies\n */\nimport { getTransformedMetadata } from '../utils/get-transformed-metadata';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'enter',\n\t\t\tregExp: /^```$/,\n\t\t\ttransform: () => createBlock( 'core/code' ),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( { content, metadata } ) =>\n\t\t\t\tcreateBlock( 'core/code', {\n\t\t\t\t\tcontent,\n\t\t\t\t\tmetadata: getTransformedMetadata( metadata, 'core/code' ),\n\t\t\t\t} ),\n\t\t},\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/html' ],\n\t\t\ttransform: ( { content: text, metadata } ) => {\n\t\t\t\treturn createBlock( 'core/code', {\n\t\t\t\t\t// The HTML is plain text (with plain line breaks), so\n\t\t\t\t\t// convert it to rich text.\n\t\t\t\t\tcontent: toHTMLString( { value: create( { text } ) } ),\n\t\t\t\t\tmetadata: getTransformedMetadata( metadata, 'core/code' ),\n\t\t\t\t} );\n\t\t\t},\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tisMatch: ( node ) =>\n\t\t\t\tnode.nodeName === 'PRE' &&\n\t\t\t\tnode.children.length === 1 &&\n\t\t\t\tnode.firstChild.nodeName === 'CODE',\n\t\t\tschema: {\n\t\t\t\tpre: {\n\t\t\t\t\tchildren: {\n\t\t\t\t\t\tcode: {\n\t\t\t\t\t\t\tchildren: {\n\t\t\t\t\t\t\t\t'#text': {},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( { content, metadata } ) =>\n\t\t\t\tcreateBlock( 'core/paragraph', {\n\t\t\t\t\tcontent,\n\t\t\t\t\tmetadata: getTransformedMetadata(\n\t\t\t\t\t\tmetadata,\n\t\t\t\t\t\t'core/paragraph'\n\t\t\t\t\t),\n\t\t\t\t} ),\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],"mappings":";;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAKA,IAAAE,uBAAA,GAAAF,OAAA;AATA;AACA;AACA;;AAIA;AACA;AACA;;AAGA,MAAMG,UAAU,GAAG;EAClBC,IAAI,EAAE,CACL;IACCC,IAAI,EAAE,OAAO;IACbC,MAAM,EAAE,OAAO;IACfC,SAAS,EAAEA,CAAA,KAAM,IAAAC,mBAAW,EAAE,WAAY;EAC3C,CAAC,EACD;IACCH,IAAI,EAAE,OAAO;IACbI,MAAM,EAAE,CAAE,gBAAgB,CAAE;IAC5BF,SAAS,EAAEA,CAAE;MAAEG,OAAO;MAAEC;IAAS,CAAC,KACjC,IAAAH,mBAAW,EAAE,WAAW,EAAE;MACzBE,OAAO;MACPC,QAAQ,EAAE,IAAAC,8CAAsB,EAAED,QAAQ,EAAE,WAAY;IACzD,CAAE;EACJ,CAAC,EACD;IACCN,IAAI,EAAE,OAAO;IACbI,MAAM,EAAE,CAAE,WAAW,CAAE;IACvBF,SAAS,EAAEA,CAAE;MAAEG,OAAO,EAAEG,IAAI;MAAEF;IAAS,CAAC,KAAM;MAC7C,OAAO,IAAAH,mBAAW,EAAE,WAAW,EAAE;QAChC;QACA;QACAE,OAAO,EAAE,IAAAI,sBAAY,EAAE;UAAEC,KAAK,EAAE,IAAAC,gBAAM,EAAE;YAAEH;UAAK,CAAE;QAAE,CAAE,CAAC;QACtDF,QAAQ,EAAE,IAAAC,8CAAsB,EAAED,QAAQ,EAAE,WAAY;MACzD,CAAE,CAAC;IACJ;EACD,CAAC,EACD;IACCN,IAAI,EAAE,KAAK;IACXY,OAAO,EAAIC,IAAI,IACdA,IAAI,CAACC,QAAQ,KAAK,KAAK,IACvBD,IAAI,CAACE,QAAQ,CAACC,MAAM,KAAK,CAAC,IAC1BH,IAAI,CAACI,UAAU,CAACH,QAAQ,KAAK,MAAM;IACpCI,MAAM,EAAE;MACPC,GAAG,EAAE;QACJJ,QAAQ,EAAE;UACTK,IAAI,EAAE;YACLL,QAAQ,EAAE;cACT,OAAO,EAAE,CAAC;YACX;UACD;QACD;MACD;IACD;EACD,CAAC,CACD;EACDM,EAAE,EAAE,CACH;IACCrB,IAAI,EAAE,OAAO;IACbI,MAAM,EAAE,CAAE,gBAAgB,CAAE;IAC5BF,SAAS,EAAEA,CAAE;MAAEG,OAAO;MAAEC;IAAS,CAAC,KACjC,IAAAH,mBAAW,EAAE,gBAAgB,EAAE;MAC9BE,OAAO;MACPC,QAAQ,EAAE,IAAAC,8CAAsB,EAC/BD,QAAQ,EACR,gBACD;IACD,CAAE;EACJ,CAAC;AAEH,CAAC;AAAC,IAAAgB,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa1B,UAAU"}
@@ -9,6 +9,7 @@ var _element = require("@wordpress/element");
9
9
  var _blockEditor = require("@wordpress/block-editor");
10
10
  var _i18n = require("@wordpress/i18n");
11
11
  var _shared = require("../shared");
12
+ var _lockUnlock = require("../../lock-unlock");
12
13
  /**
13
14
  * WordPress dependencies
14
15
  */
@@ -17,6 +18,9 @@ var _shared = require("../shared");
17
18
  * Internal dependencies
18
19
  */
19
20
 
21
+ const {
22
+ cleanEmptyObject
23
+ } = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
20
24
  function CoverBlockControls({
21
25
  attributes,
22
26
  setAttributes,
@@ -37,7 +41,7 @@ function CoverBlockControls({
37
41
  } = currentSettings;
38
42
  const [prevMinHeightValue, setPrevMinHeightValue] = (0, _element.useState)(minHeight);
39
43
  const [prevMinHeightUnit, setPrevMinHeightUnit] = (0, _element.useState)(minHeightUnit);
40
- const isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100;
44
+ const isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100 && !attributes?.style?.dimensions?.aspectRatio;
41
45
  const toggleMinFullHeight = () => {
42
46
  if (isMinFullHeight) {
43
47
  // If there aren't previous values, take the default ones.
@@ -57,10 +61,17 @@ function CoverBlockControls({
57
61
  setPrevMinHeightValue(minHeight);
58
62
  setPrevMinHeightUnit(minHeightUnit);
59
63
 
60
- // Set full height.
64
+ // Set full height, and clear any aspect ratio value.
61
65
  return setAttributes({
62
66
  minHeight: 100,
63
- minHeightUnit: 'vh'
67
+ minHeightUnit: 'vh',
68
+ style: cleanEmptyObject({
69
+ ...attributes?.style,
70
+ dimensions: {
71
+ ...attributes?.style?.dimensions,
72
+ aspectRatio: undefined // Reset aspect ratio when minHeight is set.
73
+ }
74
+ })
64
75
  });
65
76
  };
66
77
  return (0, _react.createElement)(_react.Fragment, null, (0, _react.createElement)(_blockEditor.BlockControls, {
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_blockEditor","_i18n","_shared","CoverBlockControls","attributes","setAttributes","onSelectMedia","currentSettings","toggleUseFeaturedImage","contentPosition","id","useFeaturedImage","minHeight","minHeightUnit","hasInnerBlocks","url","prevMinHeightValue","setPrevMinHeightValue","useState","prevMinHeightUnit","setPrevMinHeightUnit","isMinFullHeight","toggleMinFullHeight","undefined","_react","createElement","Fragment","BlockControls","group","__experimentalBlockAlignmentMatrixControl","label","__","value","onChange","nextPosition","isDisabled","__experimentalBlockFullHeightAligmentControl","isActive","onToggle","MediaReplaceFlow","mediaId","mediaURL","allowedTypes","ALLOWED_MEDIA_TYPES","accept","onSelect","onToggleFeaturedImage","name"],"sources":["@wordpress/block-library/src/cover/edit/block-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\n\nimport {\n\tBlockControls,\n\tMediaReplaceFlow,\n\t__experimentalBlockAlignmentMatrixControl as BlockAlignmentMatrixControl,\n\t__experimentalBlockFullHeightAligmentControl as FullHeightAlignmentControl,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_MEDIA_TYPES } from '../shared';\n\nexport default function CoverBlockControls( {\n\tattributes,\n\tsetAttributes,\n\tonSelectMedia,\n\tcurrentSettings,\n\ttoggleUseFeaturedImage,\n} ) {\n\tconst { contentPosition, id, useFeaturedImage, minHeight, minHeightUnit } =\n\t\tattributes;\n\tconst { hasInnerBlocks, url } = currentSettings;\n\n\tconst [ prevMinHeightValue, setPrevMinHeightValue ] = useState( minHeight );\n\tconst [ prevMinHeightUnit, setPrevMinHeightUnit ] =\n\t\tuseState( minHeightUnit );\n\tconst isMinFullHeight = minHeightUnit === 'vh' && minHeight === 100;\n\tconst toggleMinFullHeight = () => {\n\t\tif ( isMinFullHeight ) {\n\t\t\t// If there aren't previous values, take the default ones.\n\t\t\tif ( prevMinHeightUnit === 'vh' && prevMinHeightValue === 100 ) {\n\t\t\t\treturn setAttributes( {\n\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Set the previous values of height.\n\t\t\treturn setAttributes( {\n\t\t\t\tminHeight: prevMinHeightValue,\n\t\t\t\tminHeightUnit: prevMinHeightUnit,\n\t\t\t} );\n\t\t}\n\n\t\tsetPrevMinHeightValue( minHeight );\n\t\tsetPrevMinHeightUnit( minHeightUnit );\n\n\t\t// Set full height.\n\t\treturn setAttributes( {\n\t\t\tminHeight: 100,\n\t\t\tminHeightUnit: 'vh',\n\t\t} );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<BlockAlignmentMatrixControl\n\t\t\t\t\tlabel={ __( 'Change content position' ) }\n\t\t\t\t\tvalue={ contentPosition }\n\t\t\t\t\tonChange={ ( nextPosition ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tcontentPosition: nextPosition,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t\t<FullHeightAlignmentControl\n\t\t\t\t\tisActive={ isMinFullHeight }\n\t\t\t\t\tonToggle={ toggleMinFullHeight }\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"image/*,video/*\"\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\tonToggleFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t\tuseFeaturedImage={ useFeaturedImage }\n\t\t\t\t\tname={ ! url ? __( 'Add Media' ) : __( 'Replace' ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t</>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AAMA,IAAAE,KAAA,GAAAF,OAAA;AAKA,IAAAG,OAAA,GAAAH,OAAA;AAhBA;AACA;AACA;;AAWA;AACA;AACA;;AAGe,SAASI,kBAAkBA,CAAE;EAC3CC,UAAU;EACVC,aAAa;EACbC,aAAa;EACbC,eAAe;EACfC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,eAAe;IAAEC,EAAE;IAAEC,gBAAgB;IAAEC,SAAS;IAAEC;EAAc,CAAC,GACxET,UAAU;EACX,MAAM;IAAEU,cAAc;IAAEC;EAAI,CAAC,GAAGR,eAAe;EAE/C,MAAM,CAAES,kBAAkB,EAAEC,qBAAqB,CAAE,GAAG,IAAAC,iBAAQ,EAAEN,SAAU,CAAC;EAC3E,MAAM,CAAEO,iBAAiB,EAAEC,oBAAoB,CAAE,GAChD,IAAAF,iBAAQ,EAAEL,aAAc,CAAC;EAC1B,MAAMQ,eAAe,GAAGR,aAAa,KAAK,IAAI,IAAID,SAAS,KAAK,GAAG;EACnE,MAAMU,mBAAmB,GAAGA,CAAA,KAAM;IACjC,IAAKD,eAAe,EAAG;MACtB;MACA,IAAKF,iBAAiB,KAAK,IAAI,IAAIH,kBAAkB,KAAK,GAAG,EAAG;QAC/D,OAAOX,aAAa,CAAE;UACrBO,SAAS,EAAEW,SAAS;UACpBV,aAAa,EAAEU;QAChB,CAAE,CAAC;MACJ;;MAEA;MACA,OAAOlB,aAAa,CAAE;QACrBO,SAAS,EAAEI,kBAAkB;QAC7BH,aAAa,EAAEM;MAChB,CAAE,CAAC;IACJ;IAEAF,qBAAqB,CAAEL,SAAU,CAAC;IAClCQ,oBAAoB,CAAEP,aAAc,CAAC;;IAErC;IACA,OAAOR,aAAa,CAAE;MACrBO,SAAS,EAAE,GAAG;MACdC,aAAa,EAAE;IAChB,CAAE,CAAC;EACJ,CAAC;EAED,OACC,IAAAW,MAAA,CAAAC,aAAA,EAAAD,MAAA,CAAAE,QAAA,QACC,IAAAF,MAAA,CAAAC,aAAA,EAACzB,YAAA,CAAA2B,aAAa;IAACC,KAAK,EAAC;EAAO,GAC3B,IAAAJ,MAAA,CAAAC,aAAA,EAACzB,YAAA,CAAA6B,yCAA2B;IAC3BC,KAAK,EAAG,IAAAC,QAAE,EAAE,yBAA0B,CAAG;IACzCC,KAAK,EAAGvB,eAAiB;IACzBwB,QAAQ,EAAKC,YAAY,IACxB7B,aAAa,CAAE;MACdI,eAAe,EAAEyB;IAClB,CAAE,CACF;IACDC,UAAU,EAAG,CAAErB;EAAgB,CAC/B,CAAC,EACF,IAAAU,MAAA,CAAAC,aAAA,EAACzB,YAAA,CAAAoC,4CAA0B;IAC1BC,QAAQ,EAAGhB,eAAiB;IAC5BiB,QAAQ,EAAGhB,mBAAqB;IAChCa,UAAU,EAAG,CAAErB;EAAgB,CAC/B,CACa,CAAC,EAChB,IAAAU,MAAA,CAAAC,aAAA,EAACzB,YAAA,CAAA2B,aAAa;IAACC,KAAK,EAAC;EAAO,GAC3B,IAAAJ,MAAA,CAAAC,aAAA,EAACzB,YAAA,CAAAuC,gBAAgB;IAChBC,OAAO,EAAG9B,EAAI;IACd+B,QAAQ,EAAG1B,GAAK;IAChB2B,YAAY,EAAGC,2BAAqB;IACpCC,MAAM,EAAC,iBAAiB;IACxBC,QAAQ,EAAGvC,aAAe;IAC1BwC,qBAAqB,EAAGtC,sBAAwB;IAChDG,gBAAgB,EAAGA,gBAAkB;IACrCoC,IAAI,EAAG,CAAEhC,GAAG,GAAG,IAAAgB,QAAE,EAAE,WAAY,CAAC,GAAG,IAAAA,QAAE,EAAE,SAAU;EAAG,CACpD,CACa,CACd,CAAC;AAEL"}
1
+ {"version":3,"names":["_element","require","_blockEditor","_i18n","_shared","_lockUnlock","cleanEmptyObject","unlock","blockEditorPrivateApis","CoverBlockControls","attributes","setAttributes","onSelectMedia","currentSettings","toggleUseFeaturedImage","contentPosition","id","useFeaturedImage","minHeight","minHeightUnit","hasInnerBlocks","url","prevMinHeightValue","setPrevMinHeightValue","useState","prevMinHeightUnit","setPrevMinHeightUnit","isMinFullHeight","style","dimensions","aspectRatio","toggleMinFullHeight","undefined","_react","createElement","Fragment","BlockControls","group","__experimentalBlockAlignmentMatrixControl","label","__","value","onChange","nextPosition","isDisabled","__experimentalBlockFullHeightAligmentControl","isActive","onToggle","MediaReplaceFlow","mediaId","mediaURL","allowedTypes","ALLOWED_MEDIA_TYPES","accept","onSelect","onToggleFeaturedImage","name"],"sources":["@wordpress/block-library/src/cover/edit/block-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\n\nimport {\n\tBlockControls,\n\tMediaReplaceFlow,\n\t__experimentalBlockAlignmentMatrixControl as BlockAlignmentMatrixControl,\n\t__experimentalBlockFullHeightAligmentControl as FullHeightAlignmentControl,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { ALLOWED_MEDIA_TYPES } from '../shared';\nimport { unlock } from '../../lock-unlock';\n\nconst { cleanEmptyObject } = unlock( blockEditorPrivateApis );\n\nexport default function CoverBlockControls( {\n\tattributes,\n\tsetAttributes,\n\tonSelectMedia,\n\tcurrentSettings,\n\ttoggleUseFeaturedImage,\n} ) {\n\tconst { contentPosition, id, useFeaturedImage, minHeight, minHeightUnit } =\n\t\tattributes;\n\tconst { hasInnerBlocks, url } = currentSettings;\n\n\tconst [ prevMinHeightValue, setPrevMinHeightValue ] = useState( minHeight );\n\tconst [ prevMinHeightUnit, setPrevMinHeightUnit ] =\n\t\tuseState( minHeightUnit );\n\tconst isMinFullHeight =\n\t\tminHeightUnit === 'vh' &&\n\t\tminHeight === 100 &&\n\t\t! attributes?.style?.dimensions?.aspectRatio;\n\tconst toggleMinFullHeight = () => {\n\t\tif ( isMinFullHeight ) {\n\t\t\t// If there aren't previous values, take the default ones.\n\t\t\tif ( prevMinHeightUnit === 'vh' && prevMinHeightValue === 100 ) {\n\t\t\t\treturn setAttributes( {\n\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Set the previous values of height.\n\t\t\treturn setAttributes( {\n\t\t\t\tminHeight: prevMinHeightValue,\n\t\t\t\tminHeightUnit: prevMinHeightUnit,\n\t\t\t} );\n\t\t}\n\n\t\tsetPrevMinHeightValue( minHeight );\n\t\tsetPrevMinHeightUnit( minHeightUnit );\n\n\t\t// Set full height, and clear any aspect ratio value.\n\t\treturn setAttributes( {\n\t\t\tminHeight: 100,\n\t\t\tminHeightUnit: 'vh',\n\t\t\tstyle: cleanEmptyObject( {\n\t\t\t\t...attributes?.style,\n\t\t\t\tdimensions: {\n\t\t\t\t\t...attributes?.style?.dimensions,\n\t\t\t\t\taspectRatio: undefined, // Reset aspect ratio when minHeight is set.\n\t\t\t\t},\n\t\t\t} ),\n\t\t} );\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<BlockAlignmentMatrixControl\n\t\t\t\t\tlabel={ __( 'Change content position' ) }\n\t\t\t\t\tvalue={ contentPosition }\n\t\t\t\t\tonChange={ ( nextPosition ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tcontentPosition: nextPosition,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t\t<FullHeightAlignmentControl\n\t\t\t\t\tisActive={ isMinFullHeight }\n\t\t\t\t\tonToggle={ toggleMinFullHeight }\n\t\t\t\t\tisDisabled={ ! hasInnerBlocks }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<BlockControls group=\"other\">\n\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\tmediaId={ id }\n\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\taccept=\"image/*,video/*\"\n\t\t\t\t\tonSelect={ onSelectMedia }\n\t\t\t\t\tonToggleFeaturedImage={ toggleUseFeaturedImage }\n\t\t\t\t\tuseFeaturedImage={ useFeaturedImage }\n\t\t\t\t\tname={ ! url ? __( 'Add Media' ) : __( 'Replace' ) }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
@@ -224,7 +224,7 @@ function CoverInspectorControls({
224
224
  isShownByDefault: true,
225
225
  panelId: clientId
226
226
  }, (0, _react.createElement)(CoverHeightInput, {
227
- value: minHeight,
227
+ value: attributes?.style?.dimensions?.aspectRatio ? '' : minHeight,
228
228
  unit: minHeightUnit,
229
229
  onChange: newMinHeight => setAttributes({
230
230
  minHeight: newMinHeight,
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_components","_compose","_blockEditor","_i18n","_shared","_lockUnlock","cleanEmptyObject","unlock","blockEditorPrivateApis","CoverHeightInput","onChange","onUnitChange","unit","value","instanceId","useInstanceId","UnitControl","inputId","isPx","availableUnits","useSettings","units","useCustomUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","computedValue","useMemo","parsedQuantity","parseQuantityAndUnitFromRawValue","join","min","COVER_MIN_HEIGHT","_react","createElement","__experimentalUnitControl","label","__","id","isResetValueOnUnitChange","__unstableInputWidth","CoverInspectorControls","attributes","setAttributes","clientId","setOverlayColor","coverRef","currentSettings","updateDimRatio","onClearMedia","useFeaturedImage","dimRatio","focalPoint","hasParallax","isRepeated","minHeight","minHeightUnit","alt","tagName","isVideoBackground","isImageBackground","mediaElement","url","overlayColor","gradientValue","setGradient","__experimentalUseGradient","toggleParallax","toggleIsRepeated","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","current","style","mediaPosition","colorGradientSettings","useMultipleOriginColorsAndGradients","htmlElementMessages","header","main","section","article","aside","footer","Fragment","InspectorControls","PanelBody","title","ToggleControl","__nextHasNoMarginBottom","checked","FocalPointPicker","__next40pxDefaultSize","onDragStart","onDrag","newFocalPoint","TextareaControl","newAlt","help","ExternalLink","href","PanelRow","Button","variant","size","className","onClick","hasColorsOrGradients","group","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","colorValue","color","onColorChange","onGradientChange","isShownByDefault","resetAllFilter","customOverlayColor","gradient","customGradient","panelId","__experimentalToolsPanelItem","hasValue","onDeselect","RangeControl","newDimRatio","max","step","required","newMinHeight","dimensions","aspectRatio","nextUnit","SelectControl","options"],"sources":["@wordpress/block-library/src/cover/edit/inspector-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tExternalLink,\n\tFocalPointPicker,\n\tPanelBody,\n\tPanelRow,\n\tRangeControl,\n\tTextareaControl,\n\tToggleControl,\n\tSelectControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport {\n\tInspectorControls,\n\tuseSettings,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseGradient,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { COVER_MIN_HEIGHT, mediaPosition } from '../shared';\nimport { unlock } from '../../lock-unlock';\n\nconst { cleanEmptyObject } = unlock( blockEditorPrivateApis );\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\n\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ 'px', 'em', 'rem', 'vw', 'vh' ],\n\t\tdefaultValues: { px: 430, '%': 20, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tonChange( inputValue );\n\t};\n\n\tconst computedValue = useMemo( () => {\n\t\tconst [ parsedQuantity ] = parseQuantityAndUnitFromRawValue( value );\n\t\treturn [ parsedQuantity, unit ].join( '' );\n\t}, [ unit, value ] );\n\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<UnitControl\n\t\t\tlabel={ __( 'Minimum height of cover' ) }\n\t\t\tid={ inputId }\n\t\t\tisResetValueOnUnitChange\n\t\t\tmin={ min }\n\t\t\tonChange={ handleOnChange }\n\t\t\tonUnitChange={ onUnitChange }\n\t\t\t__unstableInputWidth={ '80px' }\n\t\t\tunits={ units }\n\t\t\tvalue={ computedValue }\n\t\t/>\n\t);\n}\nexport default function CoverInspectorControls( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tsetOverlayColor,\n\tcoverRef,\n\tcurrentSettings,\n\tupdateDimRatio,\n\tonClearMedia,\n} ) {\n\tconst {\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\ttagName,\n\t} = attributes;\n\tconst {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\turl,\n\t\toverlayColor,\n\t} = currentSettings;\n\n\tconst { gradientValue, setGradient } = __experimentalUseGradient();\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = mediaElement.current\n\t\t\t? [ mediaElement.current.style, 'objectPosition' ]\n\t\t\t: [ coverRef.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\n\tconst htmlElementMessages = {\n\t\theader: __(\n\t\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t\t),\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only.'\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\tarticle: __(\n\t\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t\tfooter: __(\n\t\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t\t),\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point' ) }\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! useFeaturedImage && url && ! isVideoBackground && (\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t{ __( 'Leave empty if decorative.' ) }\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\tclassName=\"block-library-cover__reset-button\"\n\t\t\t\t\t\t\t\tonClick={ onClearMedia }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Clear Media' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</PanelRow>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\t\tlabel: __( 'Overlay' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\t\tisShownByDefault: true,\n\t\t\t\t\t\t\t\tresetAllFilter: () => ( {\n\t\t\t\t\t\t\t\t\toverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tcustomOverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tgradient: undefined,\n\t\t\t\t\t\t\t\t\tcustomGradient: undefined,\n\t\t\t\t\t\t\t\t} ),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\thasValue={ () => {\n\t\t\t\t\t\t\t// If there's a media background the dimRatio will be\n\t\t\t\t\t\t\t// defaulted to 50 whereas it will be 100 for colors.\n\t\t\t\t\t\t\treturn dimRatio === undefined\n\t\t\t\t\t\t\t\t? false\n\t\t\t\t\t\t\t\t: dimRatio !== ( url ? 50 : 100 );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\tonDeselect={ () => updateDimRatio( url ? 50 : 100 ) }\n\t\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\t\tdimRatio: url ? 50 : 100,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\t\tonChange={ ( newDimRatio ) =>\n\t\t\t\t\t\t\t\tupdateDimRatio( newDimRatio )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={ minHeight }\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeight: newMinHeight,\n\t\t\t\t\t\t\t\tstyle: cleanEmptyObject( {\n\t\t\t\t\t\t\t\t\t...attributes?.style,\n\t\t\t\t\t\t\t\t\tdimensions: {\n\t\t\t\t\t\t\t\t\t\t...attributes?.style?.dimensions,\n\t\t\t\t\t\t\t\t\t\taspectRatio: undefined, // Reset aspect ratio when minHeight is set.\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t} ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\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</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ tagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_element","require","_components","_compose","_blockEditor","_i18n","_shared","_lockUnlock","cleanEmptyObject","unlock","blockEditorPrivateApis","CoverHeightInput","onChange","onUnitChange","unit","value","instanceId","useInstanceId","UnitControl","inputId","isPx","availableUnits","useSettings","units","useCustomUnits","defaultValues","px","em","rem","vw","vh","handleOnChange","unprocessedValue","inputValue","parseFloat","undefined","isNaN","computedValue","useMemo","parsedQuantity","parseQuantityAndUnitFromRawValue","join","min","COVER_MIN_HEIGHT","_react","createElement","__experimentalUnitControl","label","__","id","isResetValueOnUnitChange","__unstableInputWidth","CoverInspectorControls","attributes","setAttributes","clientId","setOverlayColor","coverRef","currentSettings","updateDimRatio","onClearMedia","useFeaturedImage","dimRatio","focalPoint","hasParallax","isRepeated","minHeight","minHeightUnit","alt","tagName","isVideoBackground","isImageBackground","mediaElement","url","overlayColor","gradientValue","setGradient","__experimentalUseGradient","toggleParallax","toggleIsRepeated","showFocalPointPicker","imperativeFocalPointPreview","styleOfRef","property","current","style","mediaPosition","colorGradientSettings","useMultipleOriginColorsAndGradients","htmlElementMessages","header","main","section","article","aside","footer","Fragment","InspectorControls","PanelBody","title","ToggleControl","__nextHasNoMarginBottom","checked","FocalPointPicker","__next40pxDefaultSize","onDragStart","onDrag","newFocalPoint","TextareaControl","newAlt","help","ExternalLink","href","PanelRow","Button","variant","size","className","onClick","hasColorsOrGradients","group","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","colorValue","color","onColorChange","onGradientChange","isShownByDefault","resetAllFilter","customOverlayColor","gradient","customGradient","panelId","__experimentalToolsPanelItem","hasValue","onDeselect","RangeControl","newDimRatio","max","step","required","dimensions","aspectRatio","newMinHeight","nextUnit","SelectControl","options"],"sources":["@wordpress/block-library/src/cover/edit/inspector-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport {\n\tButton,\n\tExternalLink,\n\tFocalPointPicker,\n\tPanelBody,\n\tPanelRow,\n\tRangeControl,\n\tTextareaControl,\n\tToggleControl,\n\tSelectControl,\n\t__experimentalUseCustomUnits as useCustomUnits,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n\t__experimentalUnitControl as UnitControl,\n\t__experimentalParseQuantityAndUnitFromRawValue as parseQuantityAndUnitFromRawValue,\n} from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport {\n\tInspectorControls,\n\tuseSettings,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseGradient,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { COVER_MIN_HEIGHT, mediaPosition } from '../shared';\nimport { unlock } from '../../lock-unlock';\n\nconst { cleanEmptyObject } = unlock( blockEditorPrivateApis );\n\nfunction CoverHeightInput( {\n\tonChange,\n\tonUnitChange,\n\tunit = 'px',\n\tvalue = '',\n} ) {\n\tconst instanceId = useInstanceId( UnitControl );\n\tconst inputId = `block-cover-height-input-${ instanceId }`;\n\tconst isPx = unit === 'px';\n\n\tconst [ availableUnits ] = useSettings( 'spacing.units' );\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: availableUnits || [ 'px', 'em', 'rem', 'vw', 'vh' ],\n\t\tdefaultValues: { px: 430, '%': 20, em: 20, rem: 20, vw: 20, vh: 50 },\n\t} );\n\n\tconst handleOnChange = ( unprocessedValue ) => {\n\t\tconst inputValue =\n\t\t\tunprocessedValue !== ''\n\t\t\t\t? parseFloat( unprocessedValue )\n\t\t\t\t: undefined;\n\n\t\tif ( isNaN( inputValue ) && inputValue !== undefined ) {\n\t\t\treturn;\n\t\t}\n\t\tonChange( inputValue );\n\t};\n\n\tconst computedValue = useMemo( () => {\n\t\tconst [ parsedQuantity ] = parseQuantityAndUnitFromRawValue( value );\n\t\treturn [ parsedQuantity, unit ].join( '' );\n\t}, [ unit, value ] );\n\n\tconst min = isPx ? COVER_MIN_HEIGHT : 0;\n\n\treturn (\n\t\t<UnitControl\n\t\t\tlabel={ __( 'Minimum height of cover' ) }\n\t\t\tid={ inputId }\n\t\t\tisResetValueOnUnitChange\n\t\t\tmin={ min }\n\t\t\tonChange={ handleOnChange }\n\t\t\tonUnitChange={ onUnitChange }\n\t\t\t__unstableInputWidth={ '80px' }\n\t\t\tunits={ units }\n\t\t\tvalue={ computedValue }\n\t\t/>\n\t);\n}\nexport default function CoverInspectorControls( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tsetOverlayColor,\n\tcoverRef,\n\tcurrentSettings,\n\tupdateDimRatio,\n\tonClearMedia,\n} ) {\n\tconst {\n\t\tuseFeaturedImage,\n\t\tdimRatio,\n\t\tfocalPoint,\n\t\thasParallax,\n\t\tisRepeated,\n\t\tminHeight,\n\t\tminHeightUnit,\n\t\talt,\n\t\ttagName,\n\t} = attributes;\n\tconst {\n\t\tisVideoBackground,\n\t\tisImageBackground,\n\t\tmediaElement,\n\t\turl,\n\t\toverlayColor,\n\t} = currentSettings;\n\n\tconst { gradientValue, setGradient } = __experimentalUseGradient();\n\n\tconst toggleParallax = () => {\n\t\tsetAttributes( {\n\t\t\thasParallax: ! hasParallax,\n\t\t\t...( ! hasParallax ? { focalPoint: undefined } : {} ),\n\t\t} );\n\t};\n\n\tconst toggleIsRepeated = () => {\n\t\tsetAttributes( {\n\t\t\tisRepeated: ! isRepeated,\n\t\t} );\n\t};\n\n\tconst showFocalPointPicker =\n\t\tisVideoBackground ||\n\t\t( isImageBackground && ( ! hasParallax || isRepeated ) );\n\n\tconst imperativeFocalPointPreview = ( value ) => {\n\t\tconst [ styleOfRef, property ] = mediaElement.current\n\t\t\t? [ mediaElement.current.style, 'objectPosition' ]\n\t\t\t: [ coverRef.current.style, 'backgroundPosition' ];\n\t\tstyleOfRef[ property ] = mediaPosition( value );\n\t};\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\n\tconst htmlElementMessages = {\n\t\theader: __(\n\t\t\t'The <header> element should represent introductory content, typically a group of introductory or navigational aids.'\n\t\t),\n\t\tmain: __(\n\t\t\t'The <main> element should be used for the primary content of your document only.'\n\t\t),\n\t\tsection: __(\n\t\t\t\"The <section> element should represent a standalone portion of the document that can't be better represented by another element.\"\n\t\t),\n\t\tarticle: __(\n\t\t\t'The <article> element should represent a self-contained, syndicatable portion of the document.'\n\t\t),\n\t\taside: __(\n\t\t\t\"The <aside> element should represent a portion of a document whose content is only indirectly related to the document's main content.\"\n\t\t),\n\t\tfooter: __(\n\t\t\t'The <footer> element should represent a footer for its nearest sectioning element (e.g.: <section>, <article>, <main> etc.).'\n\t\t),\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ !! url && (\n\t\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t\t{ isImageBackground && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Fixed background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ hasParallax }\n\t\t\t\t\t\t\t\t\tonChange={ toggleParallax }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Repeated background' ) }\n\t\t\t\t\t\t\t\t\tchecked={ isRepeated }\n\t\t\t\t\t\t\t\t\tonChange={ toggleIsRepeated }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ showFocalPointPicker && (\n\t\t\t\t\t\t\t<FocalPointPicker\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\t\tlabel={ __( 'Focal point' ) }\n\t\t\t\t\t\t\t\turl={ url }\n\t\t\t\t\t\t\t\tvalue={ focalPoint }\n\t\t\t\t\t\t\t\tonDragStart={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonDrag={ imperativeFocalPointPreview }\n\t\t\t\t\t\t\t\tonChange={ ( newFocalPoint ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tfocalPoint: newFocalPoint,\n\t\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! useFeaturedImage && url && ! isVideoBackground && (\n\t\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Alternative text' ) }\n\t\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\t\tonChange={ ( newAlt ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { alt: newAlt } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/WAI/tutorials/images/decision-tree\">\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t'Describe the purpose of the image.'\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t{ __( 'Leave empty if decorative.' ) }\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<PanelRow>\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tvariant=\"secondary\"\n\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\tclassName=\"block-library-cover__reset-button\"\n\t\t\t\t\t\t\t\tonClick={ onClearMedia }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ __( 'Clear Media' ) }\n\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t</PanelRow>\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayColor.color,\n\t\t\t\t\t\t\t\tgradientValue,\n\t\t\t\t\t\t\t\tlabel: __( 'Overlay' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayColor,\n\t\t\t\t\t\t\t\tonGradientChange: setGradient,\n\t\t\t\t\t\t\t\tisShownByDefault: true,\n\t\t\t\t\t\t\t\tresetAllFilter: () => ( {\n\t\t\t\t\t\t\t\t\toverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tcustomOverlayColor: undefined,\n\t\t\t\t\t\t\t\t\tgradient: undefined,\n\t\t\t\t\t\t\t\t\tcustomGradient: undefined,\n\t\t\t\t\t\t\t\t} ),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\thasValue={ () => {\n\t\t\t\t\t\t\t// If there's a media background the dimRatio will be\n\t\t\t\t\t\t\t// defaulted to 50 whereas it will be 100 for colors.\n\t\t\t\t\t\t\treturn dimRatio === undefined\n\t\t\t\t\t\t\t\t? false\n\t\t\t\t\t\t\t\t: dimRatio !== ( url ? 50 : 100 );\n\t\t\t\t\t\t} }\n\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\tonDeselect={ () => updateDimRatio( url ? 50 : 100 ) }\n\t\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\t\tdimRatio: url ? 50 : 100,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t>\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Overlay opacity' ) }\n\t\t\t\t\t\t\tvalue={ dimRatio }\n\t\t\t\t\t\t\tonChange={ ( newDimRatio ) =>\n\t\t\t\t\t\t\t\tupdateDimRatio( newDimRatio )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ 0 }\n\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\tstep={ 10 }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t</InspectorControls>\n\t\t\t) }\n\t\t\t<InspectorControls group=\"dimensions\">\n\t\t\t\t<ToolsPanelItem\n\t\t\t\t\thasValue={ () => !! minHeight }\n\t\t\t\t\tlabel={ __( 'Minimum height' ) }\n\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tresetAllFilter={ () => ( {\n\t\t\t\t\t\tminHeight: undefined,\n\t\t\t\t\t\tminHeightUnit: undefined,\n\t\t\t\t\t} ) }\n\t\t\t\t\tisShownByDefault={ true }\n\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t>\n\t\t\t\t\t<CoverHeightInput\n\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\tattributes?.style?.dimensions?.aspectRatio\n\t\t\t\t\t\t\t\t? ''\n\t\t\t\t\t\t\t\t: minHeight\n\t\t\t\t\t\t}\n\t\t\t\t\t\tunit={ minHeightUnit }\n\t\t\t\t\t\tonChange={ ( newMinHeight ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeight: newMinHeight,\n\t\t\t\t\t\t\t\tstyle: cleanEmptyObject( {\n\t\t\t\t\t\t\t\t\t...attributes?.style,\n\t\t\t\t\t\t\t\t\tdimensions: {\n\t\t\t\t\t\t\t\t\t\t...attributes?.style?.dimensions,\n\t\t\t\t\t\t\t\t\t\taspectRatio: undefined, // Reset aspect ratio when minHeight is set.\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t} ),\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tminHeightUnit: nextUnit,\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</ToolsPanelItem>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<header>', value: 'header' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<article>', value: 'article' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t\t{ label: '<footer>', value: 'footer' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ tagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ tagName ] }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _blocks = require("@wordpress/blocks");
8
8
  var _shared = require("./shared");
9
+ var _getTransformedMetadata = require("../utils/get-transformed-metadata");
9
10
  /**
10
11
  * WordPress dependencies
11
12
  */
@@ -22,11 +23,17 @@ const transforms = {
22
23
  transform: attributes => attributes.map(({
23
24
  content,
24
25
  anchor,
25
- align: textAlign
26
+ align: textAlign,
27
+ metadata
26
28
  }) => (0, _blocks.createBlock)('core/heading', {
27
29
  content,
28
30
  anchor,
29
- textAlign
31
+ textAlign,
32
+ metadata: (0, _getTransformedMetadata.getTransformedMetadata)(metadata, 'core/heading', ({
33
+ content: contentBinding
34
+ }) => ({
35
+ content: contentBinding
36
+ }))
30
37
  }))
31
38
  }, {
32
39
  type: 'raw',
@@ -81,10 +88,16 @@ const transforms = {
81
88
  blocks: ['core/paragraph'],
82
89
  transform: attributes => attributes.map(({
83
90
  content,
84
- textAlign: align
91
+ textAlign: align,
92
+ metadata
85
93
  }) => (0, _blocks.createBlock)('core/paragraph', {
86
94
  content,
87
- align
95
+ align,
96
+ metadata: (0, _getTransformedMetadata.getTransformedMetadata)(metadata, 'core/paragraph', ({
97
+ content: contentBinding
98
+ }) => ({
99
+ content: contentBinding
100
+ }))
88
101
  }))
89
102
  }]
90
103
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_blocks","require","_shared","transforms","from","type","isMultiBlock","blocks","transform","attributes","map","content","anchor","align","textAlign","createBlock","selector","schema","phrasingContentSchema","isPaste","children","h1","h2","h3","h4","h5","h6","node","getBlockAttributes","outerHTML","style","level","getLevelFromHeadingNodeName","nodeName","prefix","Array","join","regExp","RegExp","to","_default","exports","default"],"sources":["@wordpress/block-library/src/heading/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, getBlockAttributes } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getLevelFromHeadingNodeName } from './shared';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, anchor, align: textAlign } ) =>\n\t\t\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t\tanchor,\n\t\t\t\t\t\ttextAlign,\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\t\tschema: ( { phrasingContentSchema, isPaste } ) => {\n\t\t\t\tconst schema = {\n\t\t\t\t\tchildren: phrasingContentSchema,\n\t\t\t\t\tattributes: isPaste ? [] : [ 'style', 'id' ],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\th1: schema,\n\t\t\t\t\th2: schema,\n\t\t\t\t\th3: schema,\n\t\t\t\t\th4: schema,\n\t\t\t\t\th5: schema,\n\t\t\t\t\th6: schema,\n\t\t\t\t};\n\t\t\t},\n\t\t\ttransform( node ) {\n\t\t\t\tconst attributes = getBlockAttributes(\n\t\t\t\t\t'core/heading',\n\t\t\t\t\tnode.outerHTML\n\t\t\t\t);\n\t\t\t\tconst { textAlign } = node.style || {};\n\n\t\t\t\tattributes.level = getLevelFromHeadingNodeName( node.nodeName );\n\n\t\t\t\tif (\n\t\t\t\t\ttextAlign === 'left' ||\n\t\t\t\t\ttextAlign === 'center' ||\n\t\t\t\t\ttextAlign === 'right'\n\t\t\t\t) {\n\t\t\t\t\tattributes.align = textAlign;\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( 'core/heading', attributes );\n\t\t\t},\n\t\t},\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix: Array( level + 1 ).join( '#' ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( 'core/heading', {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'enter',\n\t\t\tregExp: new RegExp( `^/(h|H)${ level }$` ),\n\t\t\ttransform: () => createBlock( 'core/heading', { level } ),\n\t\t} ) ),\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, textAlign: align } ) =>\n\t\t\t\t\tcreateBlock( 'core/paragraph', { content, align } )\n\t\t\t\t),\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_blocks","require","_shared","_getTransformedMetadata","transforms","from","type","isMultiBlock","blocks","transform","attributes","map","content","anchor","align","textAlign","metadata","createBlock","getTransformedMetadata","contentBinding","selector","schema","phrasingContentSchema","isPaste","children","h1","h2","h3","h4","h5","h6","node","getBlockAttributes","outerHTML","style","level","getLevelFromHeadingNodeName","nodeName","prefix","Array","join","regExp","RegExp","to","_default","exports","default"],"sources":["@wordpress/block-library/src/heading/transforms.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock, getBlockAttributes } from '@wordpress/blocks';\n\n/**\n * Internal dependencies\n */\nimport { getLevelFromHeadingNodeName } from './shared';\nimport { getTransformedMetadata } from '../utils/get-transformed-metadata';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map(\n\t\t\t\t\t( { content, anchor, align: textAlign, metadata } ) =>\n\t\t\t\t\t\tcreateBlock( 'core/heading', {\n\t\t\t\t\t\t\tcontent,\n\t\t\t\t\t\t\tanchor,\n\t\t\t\t\t\t\ttextAlign,\n\t\t\t\t\t\t\tmetadata: getTransformedMetadata(\n\t\t\t\t\t\t\t\tmetadata,\n\t\t\t\t\t\t\t\t'core/heading',\n\t\t\t\t\t\t\t\t( { content: contentBinding } ) => ( {\n\t\t\t\t\t\t\t\t\tcontent: contentBinding,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t} )\n\t\t\t\t),\n\t\t},\n\t\t{\n\t\t\ttype: 'raw',\n\t\t\tselector: 'h1,h2,h3,h4,h5,h6',\n\t\t\tschema: ( { phrasingContentSchema, isPaste } ) => {\n\t\t\t\tconst schema = {\n\t\t\t\t\tchildren: phrasingContentSchema,\n\t\t\t\t\tattributes: isPaste ? [] : [ 'style', 'id' ],\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\th1: schema,\n\t\t\t\t\th2: schema,\n\t\t\t\t\th3: schema,\n\t\t\t\t\th4: schema,\n\t\t\t\t\th5: schema,\n\t\t\t\t\th6: schema,\n\t\t\t\t};\n\t\t\t},\n\t\t\ttransform( node ) {\n\t\t\t\tconst attributes = getBlockAttributes(\n\t\t\t\t\t'core/heading',\n\t\t\t\t\tnode.outerHTML\n\t\t\t\t);\n\t\t\t\tconst { textAlign } = node.style || {};\n\n\t\t\t\tattributes.level = getLevelFromHeadingNodeName( node.nodeName );\n\n\t\t\t\tif (\n\t\t\t\t\ttextAlign === 'left' ||\n\t\t\t\t\ttextAlign === 'center' ||\n\t\t\t\t\ttextAlign === 'right'\n\t\t\t\t) {\n\t\t\t\t\tattributes.align = textAlign;\n\t\t\t\t}\n\n\t\t\t\treturn createBlock( 'core/heading', attributes );\n\t\t\t},\n\t\t},\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'prefix',\n\t\t\tprefix: Array( level + 1 ).join( '#' ),\n\t\t\ttransform( content ) {\n\t\t\t\treturn createBlock( 'core/heading', {\n\t\t\t\t\tlevel,\n\t\t\t\t\tcontent,\n\t\t\t\t} );\n\t\t\t},\n\t\t} ) ),\n\t\t...[ 1, 2, 3, 4, 5, 6 ].map( ( level ) => ( {\n\t\t\ttype: 'enter',\n\t\t\tregExp: new RegExp( `^/(h|H)${ level }$` ),\n\t\t\ttransform: () => createBlock( 'core/heading', { level } ),\n\t\t} ) ),\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ 'core/paragraph' ],\n\t\t\ttransform: ( attributes ) =>\n\t\t\t\tattributes.map( ( { content, textAlign: align, metadata } ) =>\n\t\t\t\t\tcreateBlock( 'core/paragraph', {\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t\talign,\n\t\t\t\t\t\tmetadata: getTransformedMetadata(\n\t\t\t\t\t\t\tmetadata,\n\t\t\t\t\t\t\t'core/paragraph',\n\t\t\t\t\t\t\t( { content: contentBinding } ) => ( {\n\t\t\t\t\t\t\t\tcontent: contentBinding,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t),\n\t\t\t\t\t} )\n\t\t\t\t),\n\t\t},\n\t],\n};\n\nexport default transforms;\n"],"mappings":";;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AAKA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,uBAAA,GAAAF,OAAA;AATA;AACA;AACA;;AAGA;AACA;AACA;;AAIA,MAAMG,UAAU,GAAG;EAClBC,IAAI,EAAE,CACL;IACCC,IAAI,EAAE,OAAO;IACbC,YAAY,EAAE,IAAI;IAClBC,MAAM,EAAE,CAAE,gBAAgB,CAAE;IAC5BC,SAAS,EAAIC,UAAU,IACtBA,UAAU,CAACC,GAAG,CACb,CAAE;MAAEC,OAAO;MAAEC,MAAM;MAAEC,KAAK,EAAEC,SAAS;MAAEC;IAAS,CAAC,KAChD,IAAAC,mBAAW,EAAE,cAAc,EAAE;MAC5BL,OAAO;MACPC,MAAM;MACNE,SAAS;MACTC,QAAQ,EAAE,IAAAE,8CAAsB,EAC/BF,QAAQ,EACR,cAAc,EACd,CAAE;QAAEJ,OAAO,EAAEO;MAAe,CAAC,MAAQ;QACpCP,OAAO,EAAEO;MACV,CAAC,CACF;IACD,CAAE,CACJ;EACF,CAAC,EACD;IACCb,IAAI,EAAE,KAAK;IACXc,QAAQ,EAAE,mBAAmB;IAC7BC,MAAM,EAAEA,CAAE;MAAEC,qBAAqB;MAAEC;IAAQ,CAAC,KAAM;MACjD,MAAMF,MAAM,GAAG;QACdG,QAAQ,EAAEF,qBAAqB;QAC/BZ,UAAU,EAAEa,OAAO,GAAG,EAAE,GAAG,CAAE,OAAO,EAAE,IAAI;MAC3C,CAAC;MACD,OAAO;QACNE,EAAE,EAAEJ,MAAM;QACVK,EAAE,EAAEL,MAAM;QACVM,EAAE,EAAEN,MAAM;QACVO,EAAE,EAAEP,MAAM;QACVQ,EAAE,EAAER,MAAM;QACVS,EAAE,EAAET;MACL,CAAC;IACF,CAAC;IACDZ,SAASA,CAAEsB,IAAI,EAAG;MACjB,MAAMrB,UAAU,GAAG,IAAAsB,0BAAkB,EACpC,cAAc,EACdD,IAAI,CAACE,SACN,CAAC;MACD,MAAM;QAAElB;MAAU,CAAC,GAAGgB,IAAI,CAACG,KAAK,IAAI,CAAC,CAAC;MAEtCxB,UAAU,CAACyB,KAAK,GAAG,IAAAC,mCAA2B,EAAEL,IAAI,CAACM,QAAS,CAAC;MAE/D,IACCtB,SAAS,KAAK,MAAM,IACpBA,SAAS,KAAK,QAAQ,IACtBA,SAAS,KAAK,OAAO,EACpB;QACDL,UAAU,CAACI,KAAK,GAAGC,SAAS;MAC7B;MAEA,OAAO,IAAAE,mBAAW,EAAE,cAAc,EAAEP,UAAW,CAAC;IACjD;EACD,CAAC,EACD,GAAG,CAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAE,CAACC,GAAG,CAAIwB,KAAK,KAAQ;IAC3C7B,IAAI,EAAE,QAAQ;IACdgC,MAAM,EAAEC,KAAK,CAAEJ,KAAK,GAAG,CAAE,CAAC,CAACK,IAAI,CAAE,GAAI,CAAC;IACtC/B,SAASA,CAAEG,OAAO,EAAG;MACpB,OAAO,IAAAK,mBAAW,EAAE,cAAc,EAAE;QACnCkB,KAAK;QACLvB;MACD,CAAE,CAAC;IACJ;EACD,CAAC,CAAG,CAAC,EACL,GAAG,CAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAE,CAACD,GAAG,CAAIwB,KAAK,KAAQ;IAC3C7B,IAAI,EAAE,OAAO;IACbmC,MAAM,EAAE,IAAIC,MAAM,CAAG,UAAUP,KAAO,GAAG,CAAC;IAC1C1B,SAAS,EAAEA,CAAA,KAAM,IAAAQ,mBAAW,EAAE,cAAc,EAAE;MAAEkB;IAAM,CAAE;EACzD,CAAC,CAAG,CAAC,CACL;EACDQ,EAAE,EAAE,CACH;IACCrC,IAAI,EAAE,OAAO;IACbC,YAAY,EAAE,IAAI;IAClBC,MAAM,EAAE,CAAE,gBAAgB,CAAE;IAC5BC,SAAS,EAAIC,UAAU,IACtBA,UAAU,CAACC,GAAG,CAAE,CAAE;MAAEC,OAAO;MAAEG,SAAS,EAAED,KAAK;MAAEE;IAAS,CAAC,KACxD,IAAAC,mBAAW,EAAE,gBAAgB,EAAE;MAC9BL,OAAO;MACPE,KAAK;MACLE,QAAQ,EAAE,IAAAE,8CAAsB,EAC/BF,QAAQ,EACR,gBAAgB,EAChB,CAAE;QAAEJ,OAAO,EAAEO;MAAe,CAAC,MAAQ;QACpCP,OAAO,EAAEO;MACV,CAAC,CACF;IACD,CAAE,CACH;EACF,CAAC;AAEH,CAAC;AAAC,IAAAyB,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEa1C,UAAU"}
@@ -9,6 +9,7 @@ exports.pickRelevantMediaFiles = exports.isExternalImage = exports.default = voi
9
9
  var _react = require("react");
10
10
  var _classnames = _interopRequireDefault(require("classnames"));
11
11
  var _blob = require("@wordpress/blob");
12
+ var _blocks = require("@wordpress/blocks");
12
13
  var _components = require("@wordpress/components");
13
14
  var _data = require("@wordpress/data");
14
15
  var _blockEditor = require("@wordpress/block-editor");
@@ -312,7 +313,7 @@ function ImageEdit({
312
313
  if (!isSingleSelected) {
313
314
  return {};
314
315
  }
315
- const blockBindingsSource = (0, _lockUnlock.unlock)(select(_blockEditor.store)).getBlockBindingsSource(metadata?.bindings?.url?.source);
316
+ const blockBindingsSource = (0, _lockUnlock.unlock)(select(_blocks.store)).getBlockBindingsSource(metadata?.bindings?.url?.source);
316
317
  return {
317
318
  lockUrlControls: !!metadata?.bindings?.url && (!blockBindingsSource || blockBindingsSource?.lockAttributesEditing)
318
319
  };