@wordpress/block-library 6.0.10 → 6.0.14

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 (145) hide show
  1. package/build/cover/edit.js +1 -0
  2. package/build/cover/edit.js.map +1 -1
  3. package/build/gallery/deprecated.js +314 -26
  4. package/build/gallery/deprecated.js.map +1 -1
  5. package/build/gallery/edit-wrapper.js +10 -27
  6. package/build/gallery/edit-wrapper.js.map +1 -1
  7. package/build/gallery/edit.js +10 -12
  8. package/build/gallery/edit.js.map +1 -1
  9. package/build/gallery/save.js +3 -3
  10. package/build/gallery/save.js.map +1 -1
  11. package/build/gallery/shared.js +24 -0
  12. package/build/gallery/shared.js.map +1 -1
  13. package/build/gallery/transforms.js +8 -22
  14. package/build/gallery/transforms.js.map +1 -1
  15. package/build/gallery/use-mobile-warning.js +1 -1
  16. package/build/gallery/use-mobile-warning.js.map +1 -1
  17. package/build/gallery/v1/edit.js +2 -21
  18. package/build/gallery/v1/edit.js.map +1 -1
  19. package/build/image/image.js +30 -6
  20. package/build/image/image.js.map +1 -1
  21. package/build/navigation/deprecated.js +9 -7
  22. package/build/navigation/deprecated.js.map +1 -1
  23. package/build/navigation/edit/index.js +12 -1
  24. package/build/navigation/edit/index.js.map +1 -1
  25. package/build/navigation/edit/inner-blocks.js +0 -4
  26. package/build/navigation/edit/inner-blocks.js.map +1 -1
  27. package/build/navigation/edit/navigation-menu-selector.js +7 -1
  28. package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
  29. package/build/navigation/menu-items-to-blocks.js +4 -1
  30. package/build/navigation/menu-items-to-blocks.js.map +1 -1
  31. package/build/navigation/view.js +2 -2
  32. package/build/navigation/view.js.map +1 -1
  33. package/build/navigation-submenu/edit.js +5 -1
  34. package/build/navigation-submenu/edit.js.map +1 -1
  35. package/build/post-comments/index.js +1 -1
  36. package/build/query-pagination/index.js +1 -1
  37. package/build/query-pagination-next/index.js +2 -2
  38. package/build/query-pagination-numbers/index.js +1 -1
  39. package/build/query-pagination-previous/index.js +2 -2
  40. package/build/separator/separator-settings.js +1 -0
  41. package/build/separator/separator-settings.js.map +1 -1
  42. package/build/social-links/edit.js +1 -0
  43. package/build/social-links/edit.js.map +1 -1
  44. package/build-module/cover/edit.js +1 -0
  45. package/build-module/cover/edit.js.map +1 -1
  46. package/build-module/gallery/deprecated.js +309 -27
  47. package/build-module/gallery/deprecated.js.map +1 -1
  48. package/build-module/gallery/edit-wrapper.js +7 -27
  49. package/build-module/gallery/edit-wrapper.js.map +1 -1
  50. package/build-module/gallery/edit.js +10 -12
  51. package/build-module/gallery/edit.js.map +1 -1
  52. package/build-module/gallery/save.js +2 -3
  53. package/build-module/gallery/save.js.map +1 -1
  54. package/build-module/gallery/shared.js +22 -0
  55. package/build-module/gallery/shared.js.map +1 -1
  56. package/build-module/gallery/transforms.js +9 -21
  57. package/build-module/gallery/transforms.js.map +1 -1
  58. package/build-module/gallery/use-mobile-warning.js +1 -1
  59. package/build-module/gallery/use-mobile-warning.js.map +1 -1
  60. package/build-module/gallery/v1/edit.js +4 -22
  61. package/build-module/gallery/v1/edit.js.map +1 -1
  62. package/build-module/image/image.js +31 -7
  63. package/build-module/image/image.js.map +1 -1
  64. package/build-module/navigation/deprecated.js +9 -7
  65. package/build-module/navigation/deprecated.js.map +1 -1
  66. package/build-module/navigation/edit/index.js +11 -1
  67. package/build-module/navigation/edit/index.js.map +1 -1
  68. package/build-module/navigation/edit/inner-blocks.js +0 -4
  69. package/build-module/navigation/edit/inner-blocks.js.map +1 -1
  70. package/build-module/navigation/edit/navigation-menu-selector.js +6 -1
  71. package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
  72. package/build-module/navigation/menu-items-to-blocks.js +3 -1
  73. package/build-module/navigation/menu-items-to-blocks.js.map +1 -1
  74. package/build-module/navigation/view.js +2 -2
  75. package/build-module/navigation/view.js.map +1 -1
  76. package/build-module/navigation-submenu/edit.js +5 -1
  77. package/build-module/navigation-submenu/edit.js.map +1 -1
  78. package/build-module/post-comments/index.js +1 -1
  79. package/build-module/query-pagination/index.js +1 -1
  80. package/build-module/query-pagination-next/index.js +2 -2
  81. package/build-module/query-pagination-numbers/index.js +1 -1
  82. package/build-module/query-pagination-previous/index.js +2 -2
  83. package/build-module/separator/separator-settings.js +1 -0
  84. package/build-module/separator/separator-settings.js.map +1 -1
  85. package/build-module/social-links/edit.js +1 -0
  86. package/build-module/social-links/edit.js.map +1 -1
  87. package/build-style/columns/editor-rtl.css +1 -1
  88. package/build-style/columns/editor.css +1 -1
  89. package/build-style/editor-rtl.css +26 -1
  90. package/build-style/editor.css +26 -1
  91. package/build-style/image/editor-rtl.css +16 -0
  92. package/build-style/image/editor.css +16 -0
  93. package/build-style/navigation/editor-rtl.css +9 -0
  94. package/build-style/navigation/editor.css +9 -0
  95. package/build-style/navigation/style-rtl.css +5 -1
  96. package/build-style/navigation/style.css +5 -1
  97. package/build-style/post-comments/style-rtl.css +3 -1
  98. package/build-style/post-comments/style.css +3 -1
  99. package/build-style/post-comments-form/style-rtl.css +2 -2
  100. package/build-style/post-comments-form/style.css +2 -2
  101. package/build-style/style-rtl.css +10 -4
  102. package/build-style/style.css +10 -4
  103. package/package.json +8 -8
  104. package/src/columns/editor.scss +3 -2
  105. package/src/cover/edit.js +1 -0
  106. package/src/gallery/deprecated.js +831 -559
  107. package/src/gallery/edit-wrapper.js +7 -27
  108. package/src/gallery/edit.js +10 -12
  109. package/src/gallery/index.php +7 -8
  110. package/src/gallery/save.js +2 -1
  111. package/src/gallery/shared.js +24 -0
  112. package/src/gallery/transforms.js +9 -27
  113. package/src/gallery/use-mobile-warning.js +1 -1
  114. package/src/gallery/v1/edit.js +1 -28
  115. package/src/image/editor.scss +18 -0
  116. package/src/image/image.js +32 -8
  117. package/src/image/index.php +1 -1
  118. package/src/navigation/deprecated.js +10 -9
  119. package/src/navigation/edit/index.js +15 -6
  120. package/src/navigation/edit/inner-blocks.js +0 -5
  121. package/src/navigation/edit/navigation-menu-selector.js +8 -0
  122. package/src/navigation/editor.scss +12 -0
  123. package/src/navigation/index.php +149 -26
  124. package/src/navigation/menu-items-to-blocks.js +7 -1
  125. package/src/navigation/style.scss +5 -1
  126. package/src/navigation/view.js +2 -2
  127. package/src/navigation-submenu/edit.js +7 -1
  128. package/src/navigation-submenu/index.php +30 -45
  129. package/src/page-list/index.php +5 -9
  130. package/src/post-comments/block.json +5 -1
  131. package/src/post-comments/index.php +15 -0
  132. package/src/post-comments/style.scss +7 -3
  133. package/src/post-comments-form/style.scss +7 -5
  134. package/src/query-pagination/block.json +1 -1
  135. package/src/query-pagination-next/block.json +2 -2
  136. package/src/query-pagination-numbers/block.json +1 -1
  137. package/src/query-pagination-previous/block.json +2 -2
  138. package/src/separator/separator-settings.js +1 -0
  139. package/src/social-links/edit.js +1 -0
  140. package/src/template-part/index.php +36 -0
  141. package/build/gallery/v1/update-gallery-modal.js +0 -114
  142. package/build/gallery/v1/update-gallery-modal.js.map +0 -1
  143. package/build-module/gallery/v1/update-gallery-modal.js +0 -97
  144. package/build-module/gallery/v1/update-gallery-modal.js.map +0 -1
  145. package/src/gallery/v1/update-gallery-modal.js +0 -97
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/image/image.js"],"names":["Image","temporaryURL","attributes","url","alt","caption","align","id","href","rel","linkClass","linkDestination","title","width","height","linkTarget","sizeSlug","setAttributes","isSelected","insertBlocksAfter","onReplace","onSelectImage","onSelectURL","onUploadError","containerRef","context","clientId","captionRef","prevUrl","allowResize","getBlock","blockEditorStore","image","multiImageSelection","select","getMedia","coreStore","getMultiSelectedBlockClientIds","getBlockName","multiSelectedClientIds","length","every","_clientId","canInsertCover","imageEditing","imageSizes","maxWidth","mediaUpload","getBlockRootClientId","getSettings","canInsertBlockType","rootClientId","settings","replaceBlocks","toggleSelection","createErrorNotice","createSuccessNotice","noticesStore","isLargeViewport","isWideAligned","naturalWidth","naturalHeight","setNaturalSize","isEditingImage","setIsEditingImage","externalBlob","setExternalBlob","clientWidth","isResizable","imageSizeOptions","slug","name","value","label","window","fetch","then","response","blob","catch","current","focus","onResizeStart","onResizeStop","onImageError","embedBlock","undefined","onSetHref","props","onSetTitle","updateAlt","newAlt","updateImage","newSizeSlug","newUrl","uploadExternal","filesList","onFileChange","img","type","allowedTypes","ALLOWED_MEDIA_TYPES","onError","message","updateAlignment","nextAlign","extraUpdatedAttributes","includes","canEditImage","allowCrop","switchToCover","controls","source_url","link","crop","upload","overlayText","filename","defaultedAlt","event","target","imageWidthWithinContainer","imageHeightWithinContainer","exceedMaxWidth","ratio","currentWidth","currentHeight","minWidth","MIN_SIZE","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","top","right","bottom","left","direction","elt","delta","parseInt","imageAttributes","RichText","isEmpty"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, filter, map, pick, includes } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tExternalLink,\n\tPanelBody,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tTextControl,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { useViewportMatch, usePrevious } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\t__experimentalImageURLInputUI as ImageURLInputUI,\n\tMediaReplaceFlow,\n\tstore as blockEditorStore,\n\tBlockAlignmentControl,\n\t__experimentalImageEditor as ImageEditor,\n\t__experimentalImageEditingProvider as ImageEditingProvider,\n} from '@wordpress/block-editor';\nimport { useEffect, useState, useRef } from '@wordpress/element';\nimport { __, sprintf, isRTL } from '@wordpress/i18n';\nimport { getFilename } from '@wordpress/url';\nimport { createBlock, switchToBlockType } from '@wordpress/blocks';\nimport { crop, overlayText, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport useClientWidth from './use-client-width';\nimport { isExternalImage } from './edit';\n\n/**\n * Module constants\n */\nimport { MIN_SIZE, ALLOWED_MEDIA_TYPES } from './constants';\n\nexport default function Image( {\n\ttemporaryURL,\n\tattributes: {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\talign,\n\t\tid,\n\t\thref,\n\t\trel,\n\t\tlinkClass,\n\t\tlinkDestination,\n\t\ttitle,\n\t\twidth,\n\t\theight,\n\t\tlinkTarget,\n\t\tsizeSlug,\n\t},\n\tsetAttributes,\n\tisSelected,\n\tinsertBlocksAfter,\n\tonReplace,\n\tonSelectImage,\n\tonSelectURL,\n\tonUploadError,\n\tcontainerRef,\n\tcontext,\n\tclientId,\n} ) {\n\tconst captionRef = useRef();\n\tconst prevUrl = usePrevious( url );\n\tconst { allowResize = true } = context;\n\tconst { getBlock } = useSelect( blockEditorStore );\n\n\tconst { image, multiImageSelection } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia } = select( coreStore );\n\t\t\tconst { getMultiSelectedBlockClientIds, getBlockName } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\t\t\tconst multiSelectedClientIds = getMultiSelectedBlockClientIds();\n\t\t\treturn {\n\t\t\t\timage: id && isSelected ? getMedia( id ) : null,\n\t\t\t\tmultiImageSelection:\n\t\t\t\t\tmultiSelectedClientIds.length &&\n\t\t\t\t\tmultiSelectedClientIds.every(\n\t\t\t\t\t\t( _clientId ) =>\n\t\t\t\t\t\t\tgetBlockName( _clientId ) === 'core/image'\n\t\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ id, isSelected ]\n\t);\n\tconst {\n\t\tcanInsertCover,\n\t\timageEditing,\n\t\timageSizes,\n\t\tmaxWidth,\n\t\tmediaUpload,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetSettings,\n\t\t\t\tcanInsertBlockType,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst settings = pick( getSettings(), [\n\t\t\t\t'imageEditing',\n\t\t\t\t'imageSizes',\n\t\t\t\t'maxWidth',\n\t\t\t\t'mediaUpload',\n\t\t\t] );\n\n\t\t\treturn {\n\t\t\t\t...settings,\n\t\t\t\tcanInsertCover: canInsertBlockType(\n\t\t\t\t\t'core/cover',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { replaceBlocks, toggleSelection } = useDispatch( blockEditorStore );\n\tconst { createErrorNotice, createSuccessNotice } = useDispatch(\n\t\tnoticesStore\n\t);\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = includes( [ 'wide', 'full' ], align );\n\tconst [ { naturalWidth, naturalHeight }, setNaturalSize ] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst [ externalBlob, setExternalBlob ] = useState();\n\tconst clientWidth = useClientWidth( containerRef, [ align ] );\n\tconst isResizable = allowResize && ! ( isWideAligned && isLargeViewport );\n\tconst imageSizeOptions = map(\n\t\tfilter( imageSizes, ( { slug } ) =>\n\t\t\tget( image, [ 'media_details', 'sizes', slug, 'source_url' ] )\n\t\t),\n\t\t( { name, slug } ) => ( { value: slug, label: name } )\n\t);\n\n\t// If an image is externally hosted, try to fetch the image data. This may\n\t// fail if the image host doesn't allow CORS with the domain. If it works,\n\t// we can enable a button in the toolbar to upload the image.\n\tuseEffect( () => {\n\t\tif ( ! isExternalImage( id, url ) || ! isSelected || externalBlob ) {\n\t\t\treturn;\n\t\t}\n\n\t\twindow\n\t\t\t.fetch( url )\n\t\t\t.then( ( response ) => response.blob() )\n\t\t\t.then( ( blob ) => setExternalBlob( blob ) )\n\t\t\t// Do nothing, cannot upload.\n\t\t\t.catch( () => {} );\n\t}, [ id, url, isSelected, externalBlob ] );\n\n\t// Focus the caption after inserting an image from the placeholder. This is\n\t// done to preserve the behaviour of focussing the first tabbable element\n\t// when a block is mounted. Previously, the image block would remount when\n\t// the placeholder is removed. Maybe this behaviour could be removed.\n\tuseEffect( () => {\n\t\tif ( url && ! prevUrl && isSelected ) {\n\t\t\tcaptionRef.current.focus();\n\t\t}\n\t}, [ url, prevUrl ] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tfunction onImageError() {\n\t\t// Check if there's an embed block that handles this URL.\n\t\tconst embedBlock = createUpgradedEmbedBlock( { attributes: { url } } );\n\t\tif ( undefined !== embedBlock ) {\n\t\t\tonReplace( embedBlock );\n\t\t}\n\t}\n\n\tfunction onSetHref( props ) {\n\t\tsetAttributes( props );\n\t}\n\n\tfunction onSetTitle( value ) {\n\t\t// This is the HTML title attribute, separate from the media object\n\t\t// title.\n\t\tsetAttributes( { title: value } );\n\t}\n\n\tfunction updateAlt( newAlt ) {\n\t\tsetAttributes( { alt: newAlt } );\n\t}\n\n\tfunction updateImage( newSizeSlug ) {\n\t\tconst newUrl = get( image, [\n\t\t\t'media_details',\n\t\t\t'sizes',\n\t\t\tnewSizeSlug,\n\t\t\t'source_url',\n\t\t] );\n\t\tif ( ! newUrl ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\turl: newUrl,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tfunction uploadExternal() {\n\t\tmediaUpload( {\n\t\t\tfilesList: [ externalBlob ],\n\t\t\tonFileChange( [ img ] ) {\n\t\t\t\tonSelectImage( img );\n\n\t\t\t\tif ( isBlobURL( img.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tsetExternalBlob();\n\t\t\t\tcreateSuccessNotice( __( 'Image uploaded.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t},\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tonError( message ) {\n\t\t\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\t\t},\n\t\t} );\n\t}\n\n\tfunction updateAlignment( nextAlign ) {\n\t\tconst extraUpdatedAttributes = [ 'wide', 'full' ].includes( nextAlign )\n\t\t\t? { width: undefined, height: undefined }\n\t\t\t: {};\n\t\tsetAttributes( {\n\t\t\t...extraUpdatedAttributes,\n\t\t\talign: nextAlign,\n\t\t} );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\tconst canEditImage = id && naturalWidth && naturalHeight && imageEditing;\n\tconst allowCrop = ! multiImageSelection && canEditImage && ! isEditingImage;\n\n\tfunction switchToCover() {\n\t\treplaceBlocks(\n\t\t\tclientId,\n\t\t\tswitchToBlockType( getBlock( clientId ), 'core/cover' )\n\t\t);\n\t}\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\tvalue={ align }\n\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t/>\n\t\t\t\t{ ! multiImageSelection && ! isEditingImage && (\n\t\t\t\t\t<ImageURLInputUI\n\t\t\t\t\t\turl={ href || '' }\n\t\t\t\t\t\tonChangeUrl={ onSetHref }\n\t\t\t\t\t\tlinkDestination={ linkDestination }\n\t\t\t\t\t\tmediaUrl={ ( image && image.source_url ) || url }\n\t\t\t\t\t\tmediaLink={ image && image.link }\n\t\t\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\t\t\tlinkClass={ linkClass }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ allowCrop && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ externalBlob && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ uploadExternal }\n\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\tlabel={ __( 'Upload external image' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! multiImageSelection && canInsertCover && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ticon={ overlayText }\n\t\t\t\t\t\tlabel={ __( 'Add text over image' ) }\n\t\t\t\t\t\tonClick={ switchToCover }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ ! multiImageSelection && ! isEditingImage && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Image settings' ) }>\n\t\t\t\t\t{ ! multiImageSelection && (\n\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\tlabel={ __( 'Alt text (alternative text)' ) }\n\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t<>\n\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{ __(\n\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) }\n\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'Leave empty if the image is purely 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) }\n\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\tonChangeImage={ updateImage }\n\t\t\t\t\t\tonChange={ ( value ) => setAttributes( value ) }\n\t\t\t\t\t\tslug={ sizeSlug }\n\t\t\t\t\t\twidth={ width }\n\t\t\t\t\t\theight={ height }\n\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\tisResizable={ isResizable }\n\t\t\t\t\t\timageWidth={ naturalWidth }\n\t\t\t\t\t\timageHeight={ naturalHeight }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\thelp={\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</ExternalLink>\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\tconst filename = getFilename( url );\n\tlet defaultedAlt;\n\n\tif ( alt ) {\n\t\tdefaultedAlt = alt;\n\t} else if ( filename ) {\n\t\tdefaultedAlt = sprintf(\n\t\t\t/* translators: %s: file name */\n\t\t\t__( 'This image has an empty alt attribute; its file name is %s' ),\n\t\t\tfilename\n\t\t);\n\t} else {\n\t\tdefaultedAlt = __( 'This image has an empty alt attribute' );\n\t}\n\n\tlet img = (\n\t\t// Disable reason: Image itself is not meant to be interactive, but\n\t\t// should direct focus to block.\n\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t<>\n\t\t\t<img\n\t\t\t\tsrc={ temporaryURL || url }\n\t\t\t\talt={ defaultedAlt }\n\t\t\t\tonError={ () => onImageError() }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetNaturalSize(\n\t\t\t\t\t\tpick( event.target, [\n\t\t\t\t\t\t\t'naturalWidth',\n\t\t\t\t\t\t\t'naturalHeight',\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\t{ temporaryURL && <Spinner /> }\n\t\t</>\n\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t);\n\n\tlet imageWidthWithinContainer;\n\tlet imageHeightWithinContainer;\n\n\tif ( clientWidth && naturalWidth && naturalHeight ) {\n\t\tconst exceedMaxWidth = naturalWidth > clientWidth;\n\t\tconst ratio = naturalHeight / naturalWidth;\n\t\timageWidthWithinContainer = exceedMaxWidth ? clientWidth : naturalWidth;\n\t\timageHeightWithinContainer = exceedMaxWidth\n\t\t\t? clientWidth * ratio\n\t\t\t: naturalHeight;\n\t}\n\n\tif ( canEditImage && isEditingImage ) {\n\t\timg = (\n\t\t\t<ImageEditor\n\t\t\t\turl={ url }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\tclientWidth={ clientWidth }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t/>\n\t\t);\n\t} else if ( ! isResizable || ! imageWidthWithinContainer ) {\n\t\timg = <div style={ { width, height } }>{ img }</div>;\n\t} else {\n\t\tconst currentWidth = width || imageWidthWithinContainer;\n\t\tconst currentHeight = height || imageHeightWithinContainer;\n\n\t\tconst ratio = naturalWidth / naturalHeight;\n\t\tconst minWidth =\n\t\t\tnaturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;\n\t\tconst minHeight =\n\t\t\tnaturalHeight < naturalWidth ? MIN_SIZE : MIN_SIZE / ratio;\n\n\t\t// With the current implementation of ResizableBox, an image needs an\n\t\t// explicit pixel value for the max-width. In absence of being able to\n\t\t// set the content-width, this max-width is currently dictated by the\n\t\t// vanilla editor style. The following variable adds a buffer to this\n\t\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t\t// in most cases, allow you to scale the image beyond the width of the\n\t\t// main column, though not infinitely.\n\t\t// @todo It would be good to revisit this once a content-width variable\n\t\t// becomes available.\n\t\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\t\tlet showRightHandle = false;\n\t\tlet showLeftHandle = false;\n\n\t\t/* eslint-disable no-lonely-if */\n\t\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\t\tif ( align === 'center' ) {\n\t\t\t// When the image is centered, show both handles.\n\t\t\tshowRightHandle = true;\n\t\t\tshowLeftHandle = true;\n\t\t} else if ( isRTL() ) {\n\t\t\t// In RTL mode the image is on the right by default.\n\t\t\t// Show the right handle and hide the left handle only when it is\n\t\t\t// aligned left. Otherwise always show the left handle.\n\t\t\tif ( align === 'left' ) {\n\t\t\t\tshowRightHandle = true;\n\t\t\t} else {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t}\n\t\t} else {\n\t\t\t// Show the left handle and hide the right handle only when the\n\t\t\t// image is aligned right. Otherwise always show the right handle.\n\t\t\tif ( align === 'right' ) {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t} else {\n\t\t\t\tshowRightHandle = true;\n\t\t\t}\n\t\t}\n\t\t/* eslint-enable no-lonely-if */\n\n\t\timg = (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: width ?? 'auto',\n\t\t\t\t\theight: height ?? 'auto',\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</ResizableBox>\n\t\t);\n\t}\n\n\treturn (\n\t\t<ImageEditingProvider\n\t\t\tid={ id }\n\t\t\turl={ url }\n\t\t\tnaturalWidth={ naturalWidth }\n\t\t\tnaturalHeight={ naturalHeight }\n\t\t\tclientWidth={ clientWidth }\n\t\t\tonSaveImage={ ( imageAttributes ) =>\n\t\t\t\tsetAttributes( imageAttributes )\n\t\t\t}\n\t\t\tisEditing={ isEditingImage }\n\t\t\tonFinishEditing={ () => setIsEditingImage( false ) }\n\t\t>\n\t\t\t{ /* Hide controls during upload to avoid component remount,\n\t\t\t\twhich causes duplicated image upload. */ }\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ img }\n\t\t\t{ ( ! RichText.isEmpty( caption ) || isSelected ) && (\n\t\t\t\t<RichText\n\t\t\t\t\tref={ captionRef }\n\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\taria-label={ __( 'Image caption text' ) }\n\t\t\t\t\tplaceholder={ __( 'Add caption' ) }\n\t\t\t\t\tvalue={ caption }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { caption: value } )\n\t\t\t\t\t}\n\t\t\t\t\tinlineToolbar\n\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\tinsertBlocksAfter( createBlock( 'core/paragraph' ) )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</ImageEditingProvider>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/image/image.js"],"names":["Image","temporaryURL","attributes","url","alt","caption","align","id","href","rel","linkClass","linkDestination","title","width","height","linkTarget","sizeSlug","setAttributes","isSelected","insertBlocksAfter","onReplace","onSelectImage","onSelectURL","onUploadError","containerRef","context","clientId","imageRef","captionRef","prevUrl","allowResize","getBlock","blockEditorStore","image","multiImageSelection","select","getMedia","coreStore","getMultiSelectedBlockClientIds","getBlockName","multiSelectedClientIds","length","every","_clientId","canInsertCover","imageEditing","imageSizes","maxWidth","mediaUpload","getBlockRootClientId","getSettings","canInsertBlockType","rootClientId","settings","replaceBlocks","toggleSelection","createErrorNotice","createSuccessNotice","noticesStore","isLargeViewport","isWideAligned","loadedNaturalWidth","loadedNaturalHeight","setLoadedNaturalSize","isEditingImage","setIsEditingImage","externalBlob","setExternalBlob","clientWidth","isResizable","imageSizeOptions","slug","name","value","label","window","fetch","then","response","blob","catch","current","focus","naturalWidth","naturalHeight","undefined","complete","onResizeStart","onResizeStop","onImageError","embedBlock","onSetHref","props","onSetTitle","updateAlt","newAlt","updateImage","newSizeSlug","newUrl","uploadExternal","filesList","onFileChange","img","type","allowedTypes","ALLOWED_MEDIA_TYPES","onError","message","updateAlignment","nextAlign","extraUpdatedAttributes","includes","canEditImage","allowCrop","switchToCover","controls","source_url","link","crop","upload","overlayText","filename","defaultedAlt","event","target","imageWidthWithinContainer","imageHeightWithinContainer","exceedMaxWidth","ratio","currentWidth","currentHeight","minWidth","MIN_SIZE","minHeight","maxWidthBuffer","showRightHandle","showLeftHandle","top","right","bottom","left","direction","elt","delta","parseInt","imageAttributes","RichText","isEmpty"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { get, filter, map, pick, includes } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { isBlobURL } from '@wordpress/blob';\nimport {\n\tExternalLink,\n\tPanelBody,\n\tResizableBox,\n\tSpinner,\n\tTextareaControl,\n\tTextControl,\n\tToolbarButton,\n} from '@wordpress/components';\nimport { useViewportMatch, usePrevious } from '@wordpress/compose';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tRichText,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\t__experimentalImageURLInputUI as ImageURLInputUI,\n\tMediaReplaceFlow,\n\tstore as blockEditorStore,\n\tBlockAlignmentControl,\n\t__experimentalImageEditor as ImageEditor,\n\t__experimentalImageEditingProvider as ImageEditingProvider,\n} from '@wordpress/block-editor';\nimport { useEffect, useMemo, useState, useRef } from '@wordpress/element';\nimport { __, sprintf, isRTL } from '@wordpress/i18n';\nimport { getFilename } from '@wordpress/url';\nimport { createBlock, switchToBlockType } from '@wordpress/blocks';\nimport { crop, overlayText, upload } from '@wordpress/icons';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { createUpgradedEmbedBlock } from '../embed/util';\nimport useClientWidth from './use-client-width';\nimport { isExternalImage } from './edit';\n\n/**\n * Module constants\n */\nimport { MIN_SIZE, ALLOWED_MEDIA_TYPES } from './constants';\n\nexport default function Image( {\n\ttemporaryURL,\n\tattributes: {\n\t\turl = '',\n\t\talt,\n\t\tcaption,\n\t\talign,\n\t\tid,\n\t\thref,\n\t\trel,\n\t\tlinkClass,\n\t\tlinkDestination,\n\t\ttitle,\n\t\twidth,\n\t\theight,\n\t\tlinkTarget,\n\t\tsizeSlug,\n\t},\n\tsetAttributes,\n\tisSelected,\n\tinsertBlocksAfter,\n\tonReplace,\n\tonSelectImage,\n\tonSelectURL,\n\tonUploadError,\n\tcontainerRef,\n\tcontext,\n\tclientId,\n} ) {\n\tconst imageRef = useRef();\n\tconst captionRef = useRef();\n\tconst prevUrl = usePrevious( url );\n\tconst { allowResize = true } = context;\n\tconst { getBlock } = useSelect( blockEditorStore );\n\n\tconst { image, multiImageSelection } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getMedia } = select( coreStore );\n\t\t\tconst { getMultiSelectedBlockClientIds, getBlockName } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\t\t\tconst multiSelectedClientIds = getMultiSelectedBlockClientIds();\n\t\t\treturn {\n\t\t\t\timage: id && isSelected ? getMedia( id ) : null,\n\t\t\t\tmultiImageSelection:\n\t\t\t\t\tmultiSelectedClientIds.length &&\n\t\t\t\t\tmultiSelectedClientIds.every(\n\t\t\t\t\t\t( _clientId ) =>\n\t\t\t\t\t\t\tgetBlockName( _clientId ) === 'core/image'\n\t\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ id, isSelected ]\n\t);\n\tconst {\n\t\tcanInsertCover,\n\t\timageEditing,\n\t\timageSizes,\n\t\tmaxWidth,\n\t\tmediaUpload,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetSettings,\n\t\t\t\tcanInsertBlockType,\n\t\t\t} = select( blockEditorStore );\n\n\t\t\tconst rootClientId = getBlockRootClientId( clientId );\n\t\t\tconst settings = pick( getSettings(), [\n\t\t\t\t'imageEditing',\n\t\t\t\t'imageSizes',\n\t\t\t\t'maxWidth',\n\t\t\t\t'mediaUpload',\n\t\t\t] );\n\n\t\t\treturn {\n\t\t\t\t...settings,\n\t\t\t\tcanInsertCover: canInsertBlockType(\n\t\t\t\t\t'core/cover',\n\t\t\t\t\trootClientId\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst { replaceBlocks, toggleSelection } = useDispatch( blockEditorStore );\n\tconst { createErrorNotice, createSuccessNotice } = useDispatch(\n\t\tnoticesStore\n\t);\n\tconst isLargeViewport = useViewportMatch( 'medium' );\n\tconst isWideAligned = includes( [ 'wide', 'full' ], align );\n\tconst [\n\t\t{ loadedNaturalWidth, loadedNaturalHeight },\n\t\tsetLoadedNaturalSize,\n\t] = useState( {} );\n\tconst [ isEditingImage, setIsEditingImage ] = useState( false );\n\tconst [ externalBlob, setExternalBlob ] = useState();\n\tconst clientWidth = useClientWidth( containerRef, [ align ] );\n\tconst isResizable = allowResize && ! ( isWideAligned && isLargeViewport );\n\tconst imageSizeOptions = map(\n\t\tfilter( imageSizes, ( { slug } ) =>\n\t\t\tget( image, [ 'media_details', 'sizes', slug, 'source_url' ] )\n\t\t),\n\t\t( { name, slug } ) => ( { value: slug, label: name } )\n\t);\n\n\t// If an image is externally hosted, try to fetch the image data. This may\n\t// fail if the image host doesn't allow CORS with the domain. If it works,\n\t// we can enable a button in the toolbar to upload the image.\n\tuseEffect( () => {\n\t\tif ( ! isExternalImage( id, url ) || ! isSelected || externalBlob ) {\n\t\t\treturn;\n\t\t}\n\n\t\twindow\n\t\t\t.fetch( url )\n\t\t\t.then( ( response ) => response.blob() )\n\t\t\t.then( ( blob ) => setExternalBlob( blob ) )\n\t\t\t// Do nothing, cannot upload.\n\t\t\t.catch( () => {} );\n\t}, [ id, url, isSelected, externalBlob ] );\n\n\t// Focus the caption after inserting an image from the placeholder. This is\n\t// done to preserve the behaviour of focussing the first tabbable element\n\t// when a block is mounted. Previously, the image block would remount when\n\t// the placeholder is removed. Maybe this behaviour could be removed.\n\tuseEffect( () => {\n\t\tif ( url && ! prevUrl && isSelected ) {\n\t\t\tcaptionRef.current.focus();\n\t\t}\n\t}, [ url, prevUrl ] );\n\n\t// Get naturalWidth and naturalHeight from image ref, and fall back to loaded natural\n\t// width and height. This resolves an issue in Safari where the loaded natural\n\t// witdth and height is otherwise lost when switching between alignments.\n\t// See: https://github.com/WordPress/gutenberg/pull/37210.\n\tconst { naturalWidth, naturalHeight } = useMemo( () => {\n\t\treturn {\n\t\t\tnaturalWidth:\n\t\t\t\timageRef.current?.naturalWidth ||\n\t\t\t\tloadedNaturalWidth ||\n\t\t\t\tundefined,\n\t\t\tnaturalHeight:\n\t\t\t\timageRef.current?.naturalHeight ||\n\t\t\t\tloadedNaturalHeight ||\n\t\t\t\tundefined,\n\t\t};\n\t}, [\n\t\tloadedNaturalWidth,\n\t\tloadedNaturalHeight,\n\t\timageRef.current?.complete,\n\t] );\n\n\tfunction onResizeStart() {\n\t\ttoggleSelection( false );\n\t}\n\n\tfunction onResizeStop() {\n\t\ttoggleSelection( true );\n\t}\n\n\tfunction onImageError() {\n\t\t// Check if there's an embed block that handles this URL.\n\t\tconst embedBlock = createUpgradedEmbedBlock( { attributes: { url } } );\n\t\tif ( undefined !== embedBlock ) {\n\t\t\tonReplace( embedBlock );\n\t\t}\n\t}\n\n\tfunction onSetHref( props ) {\n\t\tsetAttributes( props );\n\t}\n\n\tfunction onSetTitle( value ) {\n\t\t// This is the HTML title attribute, separate from the media object\n\t\t// title.\n\t\tsetAttributes( { title: value } );\n\t}\n\n\tfunction updateAlt( newAlt ) {\n\t\tsetAttributes( { alt: newAlt } );\n\t}\n\n\tfunction updateImage( newSizeSlug ) {\n\t\tconst newUrl = get( image, [\n\t\t\t'media_details',\n\t\t\t'sizes',\n\t\t\tnewSizeSlug,\n\t\t\t'source_url',\n\t\t] );\n\t\tif ( ! newUrl ) {\n\t\t\treturn null;\n\t\t}\n\n\t\tsetAttributes( {\n\t\t\turl: newUrl,\n\t\t\twidth: undefined,\n\t\t\theight: undefined,\n\t\t\tsizeSlug: newSizeSlug,\n\t\t} );\n\t}\n\n\tfunction uploadExternal() {\n\t\tmediaUpload( {\n\t\t\tfilesList: [ externalBlob ],\n\t\t\tonFileChange( [ img ] ) {\n\t\t\t\tonSelectImage( img );\n\n\t\t\t\tif ( isBlobURL( img.url ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tsetExternalBlob();\n\t\t\t\tcreateSuccessNotice( __( 'Image uploaded.' ), {\n\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t} );\n\t\t\t},\n\t\t\tallowedTypes: ALLOWED_MEDIA_TYPES,\n\t\t\tonError( message ) {\n\t\t\t\tcreateErrorNotice( message, { type: 'snackbar' } );\n\t\t\t},\n\t\t} );\n\t}\n\n\tfunction updateAlignment( nextAlign ) {\n\t\tconst extraUpdatedAttributes = [ 'wide', 'full' ].includes( nextAlign )\n\t\t\t? { width: undefined, height: undefined }\n\t\t\t: {};\n\t\tsetAttributes( {\n\t\t\t...extraUpdatedAttributes,\n\t\t\talign: nextAlign,\n\t\t} );\n\t}\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected ) {\n\t\t\tsetIsEditingImage( false );\n\t\t}\n\t}, [ isSelected ] );\n\n\tconst canEditImage = id && naturalWidth && naturalHeight && imageEditing;\n\tconst allowCrop = ! multiImageSelection && canEditImage && ! isEditingImage;\n\n\tfunction switchToCover() {\n\t\treplaceBlocks(\n\t\t\tclientId,\n\t\t\tswitchToBlockType( getBlock( clientId ), 'core/cover' )\n\t\t);\n\t}\n\n\tconst controls = (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<BlockAlignmentControl\n\t\t\t\t\tvalue={ align }\n\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t/>\n\t\t\t\t{ ! multiImageSelection && ! isEditingImage && (\n\t\t\t\t\t<ImageURLInputUI\n\t\t\t\t\t\turl={ href || '' }\n\t\t\t\t\t\tonChangeUrl={ onSetHref }\n\t\t\t\t\t\tlinkDestination={ linkDestination }\n\t\t\t\t\t\tmediaUrl={ ( image && image.source_url ) || url }\n\t\t\t\t\t\tmediaLink={ image && image.link }\n\t\t\t\t\t\tlinkTarget={ linkTarget }\n\t\t\t\t\t\tlinkClass={ linkClass }\n\t\t\t\t\t\trel={ rel }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ allowCrop && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ () => setIsEditingImage( true ) }\n\t\t\t\t\t\ticon={ crop }\n\t\t\t\t\t\tlabel={ __( 'Crop' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ externalBlob && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\tonClick={ uploadExternal }\n\t\t\t\t\t\ticon={ upload }\n\t\t\t\t\t\tlabel={ __( 'Upload external image' ) }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! multiImageSelection && canInsertCover && (\n\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\ticon={ overlayText }\n\t\t\t\t\t\tlabel={ __( 'Add text over image' ) }\n\t\t\t\t\t\tonClick={ switchToCover }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</BlockControls>\n\t\t\t{ ! multiImageSelection && ! isEditingImage && (\n\t\t\t\t<BlockControls group=\"other\">\n\t\t\t\t\t<MediaReplaceFlow\n\t\t\t\t\t\tmediaId={ id }\n\t\t\t\t\t\tmediaURL={ url }\n\t\t\t\t\t\tallowedTypes={ ALLOWED_MEDIA_TYPES }\n\t\t\t\t\t\taccept=\"image/*\"\n\t\t\t\t\t\tonSelect={ onSelectImage }\n\t\t\t\t\t\tonSelectURL={ onSelectURL }\n\t\t\t\t\t\tonError={ onUploadError }\n\t\t\t\t\t/>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Image settings' ) }>\n\t\t\t\t\t{ ! multiImageSelection && (\n\t\t\t\t\t\t<TextareaControl\n\t\t\t\t\t\t\tlabel={ __( 'Alt text (alternative text)' ) }\n\t\t\t\t\t\t\tvalue={ alt }\n\t\t\t\t\t\t\tonChange={ updateAlt }\n\t\t\t\t\t\t\thelp={\n\t\t\t\t\t\t\t\t<>\n\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{ __(\n\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) }\n\t\t\t\t\t\t\t\t\t</ExternalLink>\n\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t'Leave empty if the image is purely 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) }\n\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\tonChangeImage={ updateImage }\n\t\t\t\t\t\tonChange={ ( value ) => setAttributes( value ) }\n\t\t\t\t\t\tslug={ sizeSlug }\n\t\t\t\t\t\twidth={ width }\n\t\t\t\t\t\theight={ height }\n\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\tisResizable={ isResizable }\n\t\t\t\t\t\timageWidth={ naturalWidth }\n\t\t\t\t\t\timageHeight={ naturalHeight }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\tlabel={ __( 'Title attribute' ) }\n\t\t\t\t\tvalue={ title || '' }\n\t\t\t\t\tonChange={ onSetTitle }\n\t\t\t\t\thelp={\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t'Describe the role of this image on the page.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<ExternalLink href=\"https://www.w3.org/TR/html52/dom.html#the-title-attribute\">\n\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t'(Note: many devices and browsers do not display this text.)'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</ExternalLink>\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\tconst filename = getFilename( url );\n\tlet defaultedAlt;\n\n\tif ( alt ) {\n\t\tdefaultedAlt = alt;\n\t} else if ( filename ) {\n\t\tdefaultedAlt = sprintf(\n\t\t\t/* translators: %s: file name */\n\t\t\t__( 'This image has an empty alt attribute; its file name is %s' ),\n\t\t\tfilename\n\t\t);\n\t} else {\n\t\tdefaultedAlt = __( 'This image has an empty alt attribute' );\n\t}\n\n\tlet img = (\n\t\t// Disable reason: Image itself is not meant to be interactive, but\n\t\t// should direct focus to block.\n\t\t/* eslint-disable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t\t<>\n\t\t\t<img\n\t\t\t\tsrc={ temporaryURL || url }\n\t\t\t\talt={ defaultedAlt }\n\t\t\t\tonError={ () => onImageError() }\n\t\t\t\tonLoad={ ( event ) => {\n\t\t\t\t\tsetLoadedNaturalSize( {\n\t\t\t\t\t\tloadedNaturalWidth: event.target?.naturalWidth,\n\t\t\t\t\t\tloadedNaturalHeight: event.target?.naturalHeight,\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t\tref={ imageRef }\n\t\t\t/>\n\t\t\t{ temporaryURL && <Spinner /> }\n\t\t</>\n\t\t/* eslint-enable jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events */\n\t);\n\n\tlet imageWidthWithinContainer;\n\tlet imageHeightWithinContainer;\n\n\tif ( clientWidth && naturalWidth && naturalHeight ) {\n\t\tconst exceedMaxWidth = naturalWidth > clientWidth;\n\t\tconst ratio = naturalHeight / naturalWidth;\n\t\timageWidthWithinContainer = exceedMaxWidth ? clientWidth : naturalWidth;\n\t\timageHeightWithinContainer = exceedMaxWidth\n\t\t\t? clientWidth * ratio\n\t\t\t: naturalHeight;\n\t}\n\n\tif ( canEditImage && isEditingImage ) {\n\t\timg = (\n\t\t\t<ImageEditor\n\t\t\t\turl={ url }\n\t\t\t\twidth={ width }\n\t\t\t\theight={ height }\n\t\t\t\tclientWidth={ clientWidth }\n\t\t\t\tnaturalHeight={ naturalHeight }\n\t\t\t\tnaturalWidth={ naturalWidth }\n\t\t\t/>\n\t\t);\n\t} else if ( ! isResizable || ! imageWidthWithinContainer ) {\n\t\timg = <div style={ { width, height } }>{ img }</div>;\n\t} else {\n\t\tconst currentWidth = width || imageWidthWithinContainer;\n\t\tconst currentHeight = height || imageHeightWithinContainer;\n\n\t\tconst ratio = naturalWidth / naturalHeight;\n\t\tconst minWidth =\n\t\t\tnaturalWidth < naturalHeight ? MIN_SIZE : MIN_SIZE * ratio;\n\t\tconst minHeight =\n\t\t\tnaturalHeight < naturalWidth ? MIN_SIZE : MIN_SIZE / ratio;\n\n\t\t// With the current implementation of ResizableBox, an image needs an\n\t\t// explicit pixel value for the max-width. In absence of being able to\n\t\t// set the content-width, this max-width is currently dictated by the\n\t\t// vanilla editor style. The following variable adds a buffer to this\n\t\t// vanilla style, so 3rd party themes have some wiggleroom. This does,\n\t\t// in most cases, allow you to scale the image beyond the width of the\n\t\t// main column, though not infinitely.\n\t\t// @todo It would be good to revisit this once a content-width variable\n\t\t// becomes available.\n\t\tconst maxWidthBuffer = maxWidth * 2.5;\n\n\t\tlet showRightHandle = false;\n\t\tlet showLeftHandle = false;\n\n\t\t/* eslint-disable no-lonely-if */\n\t\t// See https://github.com/WordPress/gutenberg/issues/7584.\n\t\tif ( align === 'center' ) {\n\t\t\t// When the image is centered, show both handles.\n\t\t\tshowRightHandle = true;\n\t\t\tshowLeftHandle = true;\n\t\t} else if ( isRTL() ) {\n\t\t\t// In RTL mode the image is on the right by default.\n\t\t\t// Show the right handle and hide the left handle only when it is\n\t\t\t// aligned left. Otherwise always show the left handle.\n\t\t\tif ( align === 'left' ) {\n\t\t\t\tshowRightHandle = true;\n\t\t\t} else {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t}\n\t\t} else {\n\t\t\t// Show the left handle and hide the right handle only when the\n\t\t\t// image is aligned right. Otherwise always show the right handle.\n\t\t\tif ( align === 'right' ) {\n\t\t\t\tshowLeftHandle = true;\n\t\t\t} else {\n\t\t\t\tshowRightHandle = true;\n\t\t\t}\n\t\t}\n\t\t/* eslint-enable no-lonely-if */\n\n\t\timg = (\n\t\t\t<ResizableBox\n\t\t\t\tsize={ {\n\t\t\t\t\twidth: width ?? 'auto',\n\t\t\t\t\theight: height ?? 'auto',\n\t\t\t\t} }\n\t\t\t\tshowHandle={ isSelected }\n\t\t\t\tminWidth={ minWidth }\n\t\t\t\tmaxWidth={ maxWidthBuffer }\n\t\t\t\tminHeight={ minHeight }\n\t\t\t\tmaxHeight={ maxWidthBuffer / ratio }\n\t\t\t\tlockAspectRatio\n\t\t\t\tenable={ {\n\t\t\t\t\ttop: false,\n\t\t\t\t\tright: showRightHandle,\n\t\t\t\t\tbottom: true,\n\t\t\t\t\tleft: showLeftHandle,\n\t\t\t\t} }\n\t\t\t\tonResizeStart={ onResizeStart }\n\t\t\t\tonResizeStop={ ( event, direction, elt, delta ) => {\n\t\t\t\t\tonResizeStop();\n\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\twidth: parseInt( currentWidth + delta.width, 10 ),\n\t\t\t\t\t\theight: parseInt( currentHeight + delta.height, 10 ),\n\t\t\t\t\t} );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ img }\n\t\t\t</ResizableBox>\n\t\t);\n\t}\n\n\treturn (\n\t\t<ImageEditingProvider\n\t\t\tid={ id }\n\t\t\turl={ url }\n\t\t\tnaturalWidth={ naturalWidth }\n\t\t\tnaturalHeight={ naturalHeight }\n\t\t\tclientWidth={ clientWidth }\n\t\t\tonSaveImage={ ( imageAttributes ) =>\n\t\t\t\tsetAttributes( imageAttributes )\n\t\t\t}\n\t\t\tisEditing={ isEditingImage }\n\t\t\tonFinishEditing={ () => setIsEditingImage( false ) }\n\t\t>\n\t\t\t{ /* Hide controls during upload to avoid component remount,\n\t\t\t\twhich causes duplicated image upload. */ }\n\t\t\t{ ! temporaryURL && controls }\n\t\t\t{ img }\n\t\t\t{ ( ! RichText.isEmpty( caption ) || isSelected ) && (\n\t\t\t\t<RichText\n\t\t\t\t\tref={ captionRef }\n\t\t\t\t\ttagName=\"figcaption\"\n\t\t\t\t\taria-label={ __( 'Image caption text' ) }\n\t\t\t\t\tplaceholder={ __( 'Add caption' ) }\n\t\t\t\t\tvalue={ caption }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { caption: value } )\n\t\t\t\t\t}\n\t\t\t\t\tinlineToolbar\n\t\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\t\tinsertBlocksAfter( createBlock( 'core/paragraph' ) )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t) }\n\t\t</ImageEditingProvider>\n\t);\n}\n"]}
@@ -52,21 +52,23 @@ const migrateWithLayout = attributes => {
52
52
 
53
53
  const {
54
54
  itemsJustification,
55
- orientation
55
+ orientation,
56
+ ...updatedAttributes
56
57
  } = attributes;
57
- const updatedAttributes = { ...attributes
58
- };
59
58
 
60
59
  if (itemsJustification || orientation) {
61
60
  Object.assign(updatedAttributes, {
62
61
  layout: {
63
62
  type: 'flex',
64
- justifyContent: itemsJustification || 'left',
65
- orientation: orientation || 'horizontal'
63
+ setCascadingProperties: 'true',
64
+ ...(itemsJustification && {
65
+ justifyContent: itemsJustification
66
+ }),
67
+ ...(orientation && {
68
+ orientation
69
+ })
66
70
  }
67
71
  });
68
- delete updatedAttributes.itemsJustification;
69
- delete updatedAttributes.orientation;
70
72
  }
71
73
 
72
74
  return updatedAttributes;
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/deprecated.js"],"names":["TYPOGRAPHY_PRESET_DEPRECATION_MAP","fontStyle","fontWeight","textDecoration","textTransform","migrateIdToRef","navigationMenuId","attributes","ref","migrateWithLayout","layout","itemsJustification","orientation","updatedAttributes","Object","assign","type","justifyContent","v6","textColor","customTextColor","rgbTextColor","backgroundColor","customBackgroundColor","rgbBackgroundColor","showSubmenuIcon","default","openSubmenusOnClick","overlayMenu","__unstableLocation","overlayBackgroundColor","customOverlayBackgroundColor","overlayTextColor","customOverlayTextColor","supports","align","anchor","html","inserter","typography","fontSize","lineHeight","__experimentalFontStyle","__experimentalFontWeight","__experimentalTextTransform","__experimentalFontFamily","__experimentalTextDecoration","__experimentalDefaultControls","spacing","blockGap","units","__experimentalLayout","allowSwitching","allowInheriting","setCascadingProperties","save","isEligible","migrate","v5","v4","migrateFontFamily","style","fontFamily","migrateIsResponsive","isResponsive","migrateTypographyPresets","value","key","prefix","startsWith","newValue","slice","length","deprecated","color","styleAttribute","attributeValue","className","customFontSize","attribute","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { mapValues, omit } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { InnerBlocks } from '@wordpress/block-editor';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport migrateFontFamily from '../utils/migrate-font-family';\n\nconst TYPOGRAPHY_PRESET_DEPRECATION_MAP = {\n\tfontStyle: 'var:preset|font-style|',\n\tfontWeight: 'var:preset|font-weight|',\n\ttextDecoration: 'var:preset|text-decoration|',\n\ttextTransform: 'var:preset|text-transform|',\n};\n\nconst migrateIdToRef = ( { navigationMenuId, ...attributes } ) => {\n\treturn {\n\t\t...attributes,\n\t\tref: navigationMenuId,\n\t};\n};\n\nconst migrateWithLayout = ( attributes ) => {\n\tif ( !! attributes.layout ) {\n\t\treturn attributes;\n\t}\n\n\tconst { itemsJustification, orientation } = attributes;\n\n\tconst updatedAttributes = {\n\t\t...attributes,\n\t};\n\n\tif ( itemsJustification || orientation ) {\n\t\tObject.assign( updatedAttributes, {\n\t\t\tlayout: {\n\t\t\t\ttype: 'flex',\n\t\t\t\tjustifyContent: itemsJustification || 'left',\n\t\t\t\torientation: orientation || 'horizontal',\n\t\t\t},\n\t\t} );\n\t\tdelete updatedAttributes.itemsJustification;\n\t\tdelete updatedAttributes.orientation;\n\t}\n\n\treturn updatedAttributes;\n};\n\nconst v6 = {\n\tattributes: {\n\t\tnavigationMenuId: {\n\t\t\ttype: 'number',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tshowSubmenuIcon: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\topenSubmenusOnClick: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\toverlayMenu: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'mobile',\n\t\t},\n\t\t__unstableLocation: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: [ 'wide', 'full' ],\n\t\tanchor: true,\n\t\thtml: false,\n\t\tinserter: true,\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t},\n\t\t},\n\t\tspacing: {\n\t\t\tblockGap: true,\n\t\t\tunits: [ 'px', 'em', 'rem', 'vh', 'vw' ],\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tblockGap: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalLayout: {\n\t\t\tallowSwitching: false,\n\t\t\tallowInheriting: false,\n\t\t\tdefault: {\n\t\t\t\ttype: 'flex',\n\t\t\t\tsetCascadingProperties: true,\n\t\t\t},\n\t\t},\n\t},\n\tsave() {\n\t\treturn <InnerBlocks.Content />;\n\t},\n\tisEligible: ( { navigationMenuId } ) => !! navigationMenuId,\n\tmigrate: migrateIdToRef,\n};\n\nconst v5 = {\n\tattributes: {\n\t\tnavigationMenuId: {\n\t\t\ttype: 'number',\n\t\t},\n\t\torientation: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'horizontal',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\titemsJustification: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tshowSubmenuIcon: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\topenSubmenusOnClick: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\toverlayMenu: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'never',\n\t\t},\n\t\t__unstableLocation: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: [ 'wide', 'full' ],\n\t\tanchor: true,\n\t\thtml: false,\n\t\tinserter: true,\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t},\n\t\t},\n\t\tspacing: {\n\t\t\tblockGap: true,\n\t\t\tunits: [ 'px', 'em', 'rem', 'vh', 'vw' ],\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tblockGap: true,\n\t\t\t},\n\t\t},\n\t},\n\tsave() {\n\t\treturn <InnerBlocks.Content />;\n\t},\n\tisEligible: ( { itemsJustification, orientation } ) =>\n\t\t!! itemsJustification || !! orientation,\n\tmigrate: compose( migrateIdToRef, migrateWithLayout ),\n};\n\nconst v4 = {\n\tattributes: {\n\t\torientation: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'horizontal',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\titemsJustification: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tshowSubmenuIcon: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\topenSubmenusOnClick: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\toverlayMenu: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'never',\n\t\t},\n\t\t__unstableLocation: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: [ 'wide', 'full' ],\n\t\tanchor: true,\n\t\thtml: false,\n\t\tinserter: true,\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t},\n\t\tspacing: {\n\t\t\tblockGap: true,\n\t\t\tunits: [ 'px', 'em', 'rem', 'vh', 'vw' ],\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tblockGap: true,\n\t\t\t},\n\t\t},\n\t},\n\tsave() {\n\t\treturn <InnerBlocks.Content />;\n\t},\n\tmigrate: compose( migrateIdToRef, migrateWithLayout, migrateFontFamily ),\n\tisEligible( { style } ) {\n\t\treturn style?.typography?.fontFamily;\n\t},\n};\n\nconst migrateIsResponsive = function ( attributes ) {\n\tdelete attributes.isResponsive;\n\treturn {\n\t\t...attributes,\n\t\toverlayMenu: 'mobile',\n\t};\n};\n\nconst migrateTypographyPresets = function ( attributes ) {\n\treturn {\n\t\t...attributes,\n\t\tstyle: {\n\t\t\t...attributes.style,\n\t\t\ttypography: mapValues(\n\t\t\t\tattributes.style.typography,\n\t\t\t\t( value, key ) => {\n\t\t\t\t\tconst prefix = TYPOGRAPHY_PRESET_DEPRECATION_MAP[ key ];\n\t\t\t\t\tif ( prefix && value.startsWith( prefix ) ) {\n\t\t\t\t\t\tconst newValue = value.slice( prefix.length );\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t'textDecoration' === key &&\n\t\t\t\t\t\t\t'strikethrough' === newValue\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn 'line-through';\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn newValue;\n\t\t\t\t\t}\n\t\t\t\t\treturn value;\n\t\t\t\t}\n\t\t\t),\n\t\t},\n\t};\n};\n\nconst deprecated = [\n\tv6,\n\tv5,\n\tv4,\n\t// Remove `isResponsive` attribute.\n\t{\n\t\tattributes: {\n\t\t\torientation: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'horizontal',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\titemsJustification: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tshowSubmenuIcon: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: true,\n\t\t\t},\n\t\t\topenSubmenusOnClick: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tisResponsive: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: 'false',\n\t\t\t},\n\t\t\t__unstableLocation: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\toverlayBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomOverlayBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\toverlayTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomOverlayTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tsupports: {\n\t\t\talign: [ 'wide', 'full' ],\n\t\t\tanchor: true,\n\t\t\thtml: false,\n\t\t\tinserter: true,\n\t\t\ttypography: {\n\t\t\t\tfontSize: true,\n\t\t\t\tlineHeight: true,\n\t\t\t\t__experimentalFontStyle: true,\n\t\t\t\t__experimentalFontWeight: true,\n\t\t\t\t__experimentalTextTransform: true,\n\t\t\t\t__experimentalFontFamily: true,\n\t\t\t\t__experimentalTextDecoration: true,\n\t\t\t},\n\t\t},\n\t\tisEligible( attributes ) {\n\t\t\treturn attributes.isResponsive;\n\t\t},\n\t\tmigrate: compose(\n\t\t\tmigrateIdToRef,\n\t\t\tmigrateWithLayout,\n\t\t\tmigrateFontFamily,\n\t\t\tmigrateIsResponsive\n\t\t),\n\t\tsave() {\n\t\t\treturn <InnerBlocks.Content />;\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\torientation: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\titemsJustification: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tshowSubmenuIcon: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: true,\n\t\t\t},\n\t\t},\n\t\tsupports: {\n\t\t\talign: [ 'wide', 'full' ],\n\t\t\tanchor: true,\n\t\t\thtml: false,\n\t\t\tinserter: true,\n\t\t\tfontSize: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\tcolor: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t},\n\t\tsave() {\n\t\t\treturn <InnerBlocks.Content />;\n\t\t},\n\t\tisEligible( attributes ) {\n\t\t\tif ( ! attributes.style || ! attributes.style.typography ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tfor ( const styleAttribute in TYPOGRAPHY_PRESET_DEPRECATION_MAP ) {\n\t\t\t\tconst attributeValue =\n\t\t\t\t\tattributes.style.typography[ styleAttribute ];\n\t\t\t\tif (\n\t\t\t\t\tattributeValue &&\n\t\t\t\t\tattributeValue.startsWith(\n\t\t\t\t\t\tTYPOGRAPHY_PRESET_DEPRECATION_MAP[ styleAttribute ]\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t\tmigrate: compose(\n\t\t\tmigrateIdToRef,\n\t\t\tmigrateWithLayout,\n\t\t\tmigrateFontFamily,\n\t\t\tmigrateTypographyPresets\n\t\t),\n\t},\n\t{\n\t\tattributes: {\n\t\t\tclassName: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tfontSize: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomFontSize: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\titemsJustification: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tshowSubmenuIcon: {\n\t\t\t\ttype: 'boolean',\n\t\t\t},\n\t\t},\n\t\tisEligible( attribute ) {\n\t\t\treturn attribute.rgbTextColor || attribute.rgbBackgroundColor;\n\t\t},\n\t\tsupports: {\n\t\t\talign: [ 'wide', 'full' ],\n\t\t\tanchor: true,\n\t\t\thtml: false,\n\t\t\tinserter: true,\n\t\t},\n\t\tmigrate: compose( migrateIdToRef, ( attributes ) => {\n\t\t\treturn {\n\t\t\t\t...omit( attributes, [ 'rgbTextColor', 'rgbBackgroundColor' ] ),\n\t\t\t\tcustomTextColor: attributes.textColor\n\t\t\t\t\t? undefined\n\t\t\t\t\t: attributes.rgbTextColor,\n\t\t\t\tcustomBackgroundColor: attributes.backgroundColor\n\t\t\t\t\t? undefined\n\t\t\t\t\t: attributes.rgbBackgroundColor,\n\t\t\t};\n\t\t} ),\n\t\tsave() {\n\t\t\treturn <InnerBlocks.Content />;\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/deprecated.js"],"names":["TYPOGRAPHY_PRESET_DEPRECATION_MAP","fontStyle","fontWeight","textDecoration","textTransform","migrateIdToRef","navigationMenuId","attributes","ref","migrateWithLayout","layout","itemsJustification","orientation","updatedAttributes","Object","assign","type","setCascadingProperties","justifyContent","v6","textColor","customTextColor","rgbTextColor","backgroundColor","customBackgroundColor","rgbBackgroundColor","showSubmenuIcon","default","openSubmenusOnClick","overlayMenu","__unstableLocation","overlayBackgroundColor","customOverlayBackgroundColor","overlayTextColor","customOverlayTextColor","supports","align","anchor","html","inserter","typography","fontSize","lineHeight","__experimentalFontStyle","__experimentalFontWeight","__experimentalTextTransform","__experimentalFontFamily","__experimentalTextDecoration","__experimentalDefaultControls","spacing","blockGap","units","__experimentalLayout","allowSwitching","allowInheriting","save","isEligible","migrate","v5","v4","migrateFontFamily","style","fontFamily","migrateIsResponsive","isResponsive","migrateTypographyPresets","value","key","prefix","startsWith","newValue","slice","length","deprecated","color","styleAttribute","attributeValue","className","customFontSize","attribute","undefined"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { mapValues, omit } from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport { InnerBlocks } from '@wordpress/block-editor';\nimport { compose } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport migrateFontFamily from '../utils/migrate-font-family';\n\nconst TYPOGRAPHY_PRESET_DEPRECATION_MAP = {\n\tfontStyle: 'var:preset|font-style|',\n\tfontWeight: 'var:preset|font-weight|',\n\ttextDecoration: 'var:preset|text-decoration|',\n\ttextTransform: 'var:preset|text-transform|',\n};\n\nconst migrateIdToRef = ( { navigationMenuId, ...attributes } ) => {\n\treturn {\n\t\t...attributes,\n\t\tref: navigationMenuId,\n\t};\n};\n\nconst migrateWithLayout = ( attributes ) => {\n\tif ( !! attributes.layout ) {\n\t\treturn attributes;\n\t}\n\n\tconst {\n\t\titemsJustification,\n\t\torientation,\n\t\t...updatedAttributes\n\t} = attributes;\n\n\tif ( itemsJustification || orientation ) {\n\t\tObject.assign( updatedAttributes, {\n\t\t\tlayout: {\n\t\t\t\ttype: 'flex',\n\t\t\t\tsetCascadingProperties: 'true',\n\t\t\t\t...( itemsJustification && {\n\t\t\t\t\tjustifyContent: itemsJustification,\n\t\t\t\t} ),\n\t\t\t\t...( orientation && { orientation } ),\n\t\t\t},\n\t\t} );\n\t}\n\n\treturn updatedAttributes;\n};\n\nconst v6 = {\n\tattributes: {\n\t\tnavigationMenuId: {\n\t\t\ttype: 'number',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tshowSubmenuIcon: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\topenSubmenusOnClick: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\toverlayMenu: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'mobile',\n\t\t},\n\t\t__unstableLocation: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: [ 'wide', 'full' ],\n\t\tanchor: true,\n\t\thtml: false,\n\t\tinserter: true,\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t},\n\t\t},\n\t\tspacing: {\n\t\t\tblockGap: true,\n\t\t\tunits: [ 'px', 'em', 'rem', 'vh', 'vw' ],\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tblockGap: true,\n\t\t\t},\n\t\t},\n\t\t__experimentalLayout: {\n\t\t\tallowSwitching: false,\n\t\t\tallowInheriting: false,\n\t\t\tdefault: {\n\t\t\t\ttype: 'flex',\n\t\t\t\tsetCascadingProperties: true,\n\t\t\t},\n\t\t},\n\t},\n\tsave() {\n\t\treturn <InnerBlocks.Content />;\n\t},\n\tisEligible: ( { navigationMenuId } ) => !! navigationMenuId,\n\tmigrate: migrateIdToRef,\n};\n\nconst v5 = {\n\tattributes: {\n\t\tnavigationMenuId: {\n\t\t\ttype: 'number',\n\t\t},\n\t\torientation: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'horizontal',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\titemsJustification: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tshowSubmenuIcon: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\topenSubmenusOnClick: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\toverlayMenu: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'never',\n\t\t},\n\t\t__unstableLocation: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: [ 'wide', 'full' ],\n\t\tanchor: true,\n\t\thtml: false,\n\t\tinserter: true,\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tfontSize: true,\n\t\t\t},\n\t\t},\n\t\tspacing: {\n\t\t\tblockGap: true,\n\t\t\tunits: [ 'px', 'em', 'rem', 'vh', 'vw' ],\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tblockGap: true,\n\t\t\t},\n\t\t},\n\t},\n\tsave() {\n\t\treturn <InnerBlocks.Content />;\n\t},\n\tisEligible: ( { itemsJustification, orientation } ) =>\n\t\t!! itemsJustification || !! orientation,\n\tmigrate: compose( migrateIdToRef, migrateWithLayout ),\n};\n\nconst v4 = {\n\tattributes: {\n\t\torientation: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'horizontal',\n\t\t},\n\t\ttextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tbackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\trgbBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\titemsJustification: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tshowSubmenuIcon: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: true,\n\t\t},\n\t\topenSubmenusOnClick: {\n\t\t\ttype: 'boolean',\n\t\t\tdefault: false,\n\t\t},\n\t\toverlayMenu: {\n\t\t\ttype: 'string',\n\t\t\tdefault: 'never',\n\t\t},\n\t\t__unstableLocation: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayBackgroundColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\toverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t\tcustomOverlayTextColor: {\n\t\t\ttype: 'string',\n\t\t},\n\t},\n\tsupports: {\n\t\talign: [ 'wide', 'full' ],\n\t\tanchor: true,\n\t\thtml: false,\n\t\tinserter: true,\n\t\ttypography: {\n\t\t\tfontSize: true,\n\t\t\tlineHeight: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t},\n\t\tspacing: {\n\t\t\tblockGap: true,\n\t\t\tunits: [ 'px', 'em', 'rem', 'vh', 'vw' ],\n\t\t\t__experimentalDefaultControls: {\n\t\t\t\tblockGap: true,\n\t\t\t},\n\t\t},\n\t},\n\tsave() {\n\t\treturn <InnerBlocks.Content />;\n\t},\n\tmigrate: compose( migrateIdToRef, migrateWithLayout, migrateFontFamily ),\n\tisEligible( { style } ) {\n\t\treturn style?.typography?.fontFamily;\n\t},\n};\n\nconst migrateIsResponsive = function ( attributes ) {\n\tdelete attributes.isResponsive;\n\treturn {\n\t\t...attributes,\n\t\toverlayMenu: 'mobile',\n\t};\n};\n\nconst migrateTypographyPresets = function ( attributes ) {\n\treturn {\n\t\t...attributes,\n\t\tstyle: {\n\t\t\t...attributes.style,\n\t\t\ttypography: mapValues(\n\t\t\t\tattributes.style.typography,\n\t\t\t\t( value, key ) => {\n\t\t\t\t\tconst prefix = TYPOGRAPHY_PRESET_DEPRECATION_MAP[ key ];\n\t\t\t\t\tif ( prefix && value.startsWith( prefix ) ) {\n\t\t\t\t\t\tconst newValue = value.slice( prefix.length );\n\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t'textDecoration' === key &&\n\t\t\t\t\t\t\t'strikethrough' === newValue\n\t\t\t\t\t\t) {\n\t\t\t\t\t\t\treturn 'line-through';\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn newValue;\n\t\t\t\t\t}\n\t\t\t\t\treturn value;\n\t\t\t\t}\n\t\t\t),\n\t\t},\n\t};\n};\n\nconst deprecated = [\n\tv6,\n\tv5,\n\tv4,\n\t// Remove `isResponsive` attribute.\n\t{\n\t\tattributes: {\n\t\t\torientation: {\n\t\t\t\ttype: 'string',\n\t\t\t\tdefault: 'horizontal',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\titemsJustification: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tshowSubmenuIcon: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: true,\n\t\t\t},\n\t\t\topenSubmenusOnClick: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: false,\n\t\t\t},\n\t\t\tisResponsive: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: 'false',\n\t\t\t},\n\t\t\t__unstableLocation: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\toverlayBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomOverlayBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\toverlayTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomOverlayTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t},\n\t\tsupports: {\n\t\t\talign: [ 'wide', 'full' ],\n\t\t\tanchor: true,\n\t\t\thtml: false,\n\t\t\tinserter: true,\n\t\t\ttypography: {\n\t\t\t\tfontSize: true,\n\t\t\t\tlineHeight: true,\n\t\t\t\t__experimentalFontStyle: true,\n\t\t\t\t__experimentalFontWeight: true,\n\t\t\t\t__experimentalTextTransform: true,\n\t\t\t\t__experimentalFontFamily: true,\n\t\t\t\t__experimentalTextDecoration: true,\n\t\t\t},\n\t\t},\n\t\tisEligible( attributes ) {\n\t\t\treturn attributes.isResponsive;\n\t\t},\n\t\tmigrate: compose(\n\t\t\tmigrateIdToRef,\n\t\t\tmigrateWithLayout,\n\t\t\tmigrateFontFamily,\n\t\t\tmigrateIsResponsive\n\t\t),\n\t\tsave() {\n\t\t\treturn <InnerBlocks.Content />;\n\t\t},\n\t},\n\t{\n\t\tattributes: {\n\t\t\torientation: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\titemsJustification: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tshowSubmenuIcon: {\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: true,\n\t\t\t},\n\t\t},\n\t\tsupports: {\n\t\t\talign: [ 'wide', 'full' ],\n\t\t\tanchor: true,\n\t\t\thtml: false,\n\t\t\tinserter: true,\n\t\t\tfontSize: true,\n\t\t\t__experimentalFontStyle: true,\n\t\t\t__experimentalFontWeight: true,\n\t\t\t__experimentalTextTransform: true,\n\t\t\tcolor: true,\n\t\t\t__experimentalFontFamily: true,\n\t\t\t__experimentalTextDecoration: true,\n\t\t},\n\t\tsave() {\n\t\t\treturn <InnerBlocks.Content />;\n\t\t},\n\t\tisEligible( attributes ) {\n\t\t\tif ( ! attributes.style || ! attributes.style.typography ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tfor ( const styleAttribute in TYPOGRAPHY_PRESET_DEPRECATION_MAP ) {\n\t\t\t\tconst attributeValue =\n\t\t\t\t\tattributes.style.typography[ styleAttribute ];\n\t\t\t\tif (\n\t\t\t\t\tattributeValue &&\n\t\t\t\t\tattributeValue.startsWith(\n\t\t\t\t\t\tTYPOGRAPHY_PRESET_DEPRECATION_MAP[ styleAttribute ]\n\t\t\t\t\t)\n\t\t\t\t) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t},\n\t\tmigrate: compose(\n\t\t\tmigrateIdToRef,\n\t\t\tmigrateWithLayout,\n\t\t\tmigrateFontFamily,\n\t\t\tmigrateTypographyPresets\n\t\t),\n\t},\n\t{\n\t\tattributes: {\n\t\t\tclassName: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\ttextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbTextColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tbackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\trgbBackgroundColor: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tfontSize: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tcustomFontSize: {\n\t\t\t\ttype: 'number',\n\t\t\t},\n\t\t\titemsJustification: {\n\t\t\t\ttype: 'string',\n\t\t\t},\n\t\t\tshowSubmenuIcon: {\n\t\t\t\ttype: 'boolean',\n\t\t\t},\n\t\t},\n\t\tisEligible( attribute ) {\n\t\t\treturn attribute.rgbTextColor || attribute.rgbBackgroundColor;\n\t\t},\n\t\tsupports: {\n\t\t\talign: [ 'wide', 'full' ],\n\t\t\tanchor: true,\n\t\t\thtml: false,\n\t\t\tinserter: true,\n\t\t},\n\t\tmigrate: compose( migrateIdToRef, ( attributes ) => {\n\t\t\treturn {\n\t\t\t\t...omit( attributes, [ 'rgbTextColor', 'rgbBackgroundColor' ] ),\n\t\t\t\tcustomTextColor: attributes.textColor\n\t\t\t\t\t? undefined\n\t\t\t\t\t: attributes.rgbTextColor,\n\t\t\t\tcustomBackgroundColor: attributes.backgroundColor\n\t\t\t\t\t? undefined\n\t\t\t\t\t: attributes.rgbBackgroundColor,\n\t\t\t};\n\t\t} ),\n\t\tsave() {\n\t\t\treturn <InnerBlocks.Content />;\n\t\t},\n\t},\n];\n\nexport default deprecated;\n"]}
@@ -11,6 +11,8 @@ var _element = require("@wordpress/element");
11
11
 
12
12
  var _classnames = _interopRequireDefault(require("classnames"));
13
13
 
14
+ var _lodash = _interopRequireDefault(require("lodash"));
15
+
14
16
  var _blockEditor = require("@wordpress/block-editor");
15
17
 
16
18
  var _coreData = require("@wordpress/core-data");
@@ -107,7 +109,15 @@ function Navigation(_ref) {
107
109
  orientation = 'horizontal'
108
110
  } = {}
109
111
  } = attributes;
110
- const [areaMenu, setAreaMenu] = (0, _coreData.useEntityProp)('root', 'navigationArea', 'navigation', navigationArea);
112
+ let areaMenu,
113
+ setAreaMenu = _lodash.default; // Navigation areas are deprecated and on their way out. Let's not perform
114
+ // the request unless we're in an environment where the endpoint exists.
115
+
116
+ if (process.env.GUTENBERG_PHASE === 2) {
117
+ // eslint-disable-next-line react-hooks/rules-of-hooks
118
+ [areaMenu, setAreaMenu] = (0, _coreData.useEntityProp)('root', 'navigationArea', 'navigation', navigationArea);
119
+ }
120
+
111
121
  const navigationAreaMenu = areaMenu === 0 ? undefined : areaMenu;
112
122
  const ref = navigationArea ? navigationAreaMenu : attributes.ref;
113
123
  const setRef = (0, _element.useCallback)(postId => {
@@ -333,6 +343,7 @@ function Navigation(_ref) {
333
343
  label: (0, _i18n.__)('Show icons')
334
344
  })), hasColorSettings && (0, _element.createElement)(_blockEditor.PanelColorSettings, {
335
345
  __experimentalHasMultipleOrigins: true,
346
+ __experimentalIsRenderedInSidebar: true,
336
347
  title: (0, _i18n.__)('Color'),
337
348
  initialOpen: false,
338
349
  colorSettings: [{
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"names":["getComputedStyle","node","ownerDocument","defaultView","detectColors","colorsDetectionElement","setColor","setBackground","color","backgroundColorNode","backgroundColor","parentNode","nodeType","ELEMENT_NODE","Navigation","attributes","setAttributes","clientId","isSelected","className","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","context","navigationArea","hasSubmenuIndicatorSetting","hasColorSettings","customPlaceholder","CustomPlaceholder","customAppender","CustomAppender","openSubmenusOnClick","overlayMenu","showSubmenuIcon","layout","justifyContent","orientation","areaMenu","setAreaMenu","navigationAreaMenu","undefined","ref","setRef","postId","hasAlreadyRendered","RecursionProvider","innerBlocks","isInnerBlockSelected","select","getBlocks","hasSelectedInnerBlock","blockEditorStore","hasExistingNavItems","length","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","hasSavedUnsavedInnerBlocks","setHasSavedUnsavedInnerBlocks","isWithinUnassignedArea","isPlaceholderShown","setIsPlaceholderShown","isResponsiveMenuOpen","setResponsiveMenuVisibility","isNavigationMenuResolved","isNavigationMenuMissing","canSwitchNavigationMenu","hasResolvedNavigationMenus","navigationMenus","navigationMenu","navRef","isDraftNavigationMenu","status","listViewToolbarButton","listViewModal","isEntityAvailable","blockProps","class","slug","style","overlayClassnames","overlayStyles","enableContrastChecking","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","current","subMenuElement","querySelector","startWithEmptyMenu","hasUnsavedBlocks","post","id","PlaceholderComponent","Placeholder","onClose","value","onChange","label"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tuseCallback,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\tstore as blockEditorStore,\n\twithColors,\n\tPanelColorSettings,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n} from '@wordpress/block-editor';\nimport { EntityProvider, useEntityProp } from '@wordpress/core-data';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tToolbarGroup,\n\tToolbarDropdownMenu,\n\tButton,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useListViewModal from './use-list-view-modal';\nimport useNavigationMenu from '../use-navigation-menu';\nimport Placeholder from './placeholder';\nimport PlaceholderPreview from './placeholder/placeholder-preview';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuSelector from './navigation-menu-selector';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\n\nfunction getComputedStyle( node ) {\n\treturn node.ownerDocument.defaultView.getComputedStyle( node );\n}\n\nfunction detectColors( colorsDetectionElement, setColor, setBackground ) {\n\tif ( ! colorsDetectionElement ) {\n\t\treturn;\n\t}\n\tsetColor( getComputedStyle( colorsDetectionElement ).color );\n\n\tlet backgroundColorNode = colorsDetectionElement;\n\tlet backgroundColor = getComputedStyle( backgroundColorNode )\n\t\t.backgroundColor;\n\twhile (\n\t\tbackgroundColor === 'rgba(0, 0, 0, 0)' &&\n\t\tbackgroundColorNode.parentNode &&\n\t\tbackgroundColorNode.parentNode.nodeType ===\n\t\t\tbackgroundColorNode.parentNode.ELEMENT_NODE\n\t) {\n\t\tbackgroundColorNode = backgroundColorNode.parentNode;\n\t\tbackgroundColor = getComputedStyle( backgroundColorNode )\n\t\t\t.backgroundColor;\n\t}\n\n\tsetBackground( backgroundColor );\n}\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\tcontext: { navigationArea },\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\thasColorSettings = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n\tcustomAppender: CustomAppender = null,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\tlayout: { justifyContent, orientation = 'horizontal' } = {},\n\t} = attributes;\n\n\tconst [ areaMenu, setAreaMenu ] = useEntityProp(\n\t\t'root',\n\t\t'navigationArea',\n\t\t'navigation',\n\t\tnavigationArea\n\t);\n\n\tconst navigationAreaMenu = areaMenu === 0 ? undefined : areaMenu;\n\n\tconst ref = navigationArea ? navigationAreaMenu : attributes.ref;\n\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t\tif ( navigationArea ) {\n\t\t\t\tsetAreaMenu( postId );\n\t\t\t}\n\t\t},\n\t\t[ navigationArea ]\n\t);\n\n\tconst [ hasAlreadyRendered, RecursionProvider ] = useNoRecursiveRenders(\n\t\t`navigationMenu/${ ref }`\n\t);\n\n\tconst { innerBlocks, isInnerBlockSelected } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlocks, hasSelectedInnerBlock } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisInnerBlockSelected: hasSelectedInnerBlock( clientId, true ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst hasExistingNavItems = !! innerBlocks.length;\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [\n\t\thasSavedUnsavedInnerBlocks,\n\t\tsetHasSavedUnsavedInnerBlocks,\n\t] = useState( false );\n\n\tconst isWithinUnassignedArea = navigationArea && ! ref;\n\n\tconst [ isPlaceholderShown, setIsPlaceholderShown ] = useState(\n\t\t! hasExistingNavItems || isWithinUnassignedArea\n\t);\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] = useState(\n\t\tfalse\n\t);\n\n\tconst {\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tcanSwitchNavigationMenu,\n\t\thasResolvedNavigationMenus,\n\t\tnavigationMenus,\n\t\tnavigationMenu,\n\t} = useNavigationMenu( ref );\n\n\tconst navRef = useRef();\n\tconst isDraftNavigationMenu = navigationMenu?.status === 'draft';\n\n\tconst { listViewToolbarButton, listViewModal } = useListViewModal(\n\t\tclientId\n\t);\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames( className, {\n\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t'items-justified-space-between': justifyContent === 'space-between',\n\t\t\t'is-responsive': 'never' !== overlayMenu,\n\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'color',\n\t\t\t\ttextColor?.slug\n\t\t\t) ]: !! textColor?.slug,\n\t\t\t'has-background': !! backgroundColor.color || backgroundColor.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor?.slug\n\t\t\t) ]: !! backgroundColor?.slug,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\tconst overlayClassnames = classnames( {\n\t\t'has-text-color':\n\t\t\t!! overlayTextColor.color || !! overlayTextColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'color',\n\t\t\toverlayTextColor?.slug\n\t\t) ]: !! overlayTextColor?.slug,\n\t\t'has-background':\n\t\t\t!! overlayBackgroundColor.color || overlayBackgroundColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'background-color',\n\t\t\toverlayBackgroundColor?.slug\n\t\t) ]: !! overlayBackgroundColor?.slug,\n\t} );\n\n\tconst overlayStyles = {\n\t\tcolor: ! overlayTextColor?.slug && overlayTextColor?.color,\n\t\tbackgroundColor:\n\t\t\t! overlayBackgroundColor?.slug &&\n\t\t\toverlayBackgroundColor?.color &&\n\t\t\toverlayBackgroundColor.color,\n\t};\n\n\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\n\n\tconst [ detectedBackgroundColor, setDetectedBackgroundColor ] = useState();\n\tconst [ detectedColor, setDetectedColor ] = useState();\n\tconst [\n\t\tdetectedOverlayBackgroundColor,\n\t\tsetDetectedOverlayBackgroundColor,\n\t] = useState();\n\tconst [ detectedOverlayColor, setDetectedOverlayColor ] = useState();\n\n\t// Spacer block needs orientation from context. This is a patch until\n\t// https://github.com/WordPress/gutenberg/issues/36197 is addressed.\n\tuseEffect( () => {\n\t\tif ( orientation ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { orientation } );\n\t\t}\n\t}, [ orientation ] );\n\n\tuseEffect( () => {\n\t\tif ( ! enableContrastChecking ) {\n\t\t\treturn;\n\t\t}\n\t\tdetectColors(\n\t\t\tnavRef.current,\n\t\t\tsetDetectedColor,\n\t\t\tsetDetectedBackgroundColor\n\t\t);\n\t\tconst subMenuElement = navRef.current.querySelector(\n\t\t\t'[data-type=\"core/navigation-link\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\t\tif ( subMenuElement ) {\n\t\t\tdetectColors(\n\t\t\t\tsubMenuElement,\n\t\t\t\tsetDetectedOverlayColor,\n\t\t\t\tsetDetectedOverlayBackgroundColor\n\t\t\t);\n\t\t}\n\t} );\n\n\t// Hide the placeholder if an navigation menu entity has loaded.\n\tuseEffect( () => {\n\t\tsetIsPlaceholderShown( ! isEntityAvailable );\n\t}, [ isEntityAvailable ] );\n\n\t// If the ref no longer exists the reset the inner blocks\n\t// to provide a clean slate.\n\tuseEffect( () => {\n\t\tif ( ref === undefined && innerBlocks.length > 0 ) {\n\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t}\n\t\t// innerBlocks are intentionally not listed as deps. This function is only concerned\n\t\t// with the snapshot from the time when ref became undefined.\n\t}, [ clientId, ref, innerBlocks ] );\n\n\tconst startWithEmptyMenu = useCallback( () => {\n\t\tif ( navigationArea ) {\n\t\t\tsetAreaMenu( 0 );\n\t\t}\n\t\tsetAttributes( {\n\t\t\tref: undefined,\n\t\t} );\n\n\t\tsetIsPlaceholderShown( true );\n\t}, [ clientId ] );\n\n\t// If the block has inner blocks, but no menu id, this was an older\n\t// navigation block added before the block used a wp_navigation entity.\n\t// Either this block was saved in the content or inserted by a pattern.\n\t// Consider this 'unsaved'. Offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu.\n\tconst hasUnsavedBlocks =\n\t\thasExistingNavItems && ! isEntityAvailable && ! isWithinUnassignedArea;\n\tif ( hasUnsavedBlocks ) {\n\t\treturn (\n\t\t\t<UnsavedInnerBlocks\n\t\t\t\tblockProps={ blockProps }\n\t\t\t\tblocks={ innerBlocks }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tnavigationMenus={ navigationMenus }\n\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\thasSavedUnsavedInnerBlocks={ hasSavedUnsavedInnerBlocks }\n\t\t\t\tonSave={ ( post ) => {\n\t\t\t\t\tsetHasSavedUnsavedInnerBlocks( true );\n\t\t\t\t\t// Switch to using the wp_navigation entity.\n\t\t\t\t\tsetRef( post.id );\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n\n\t// Show a warning if the selected menu is no longer available.\n\t// TODO - the user should be able to select a new one?\n\tif ( ref && isNavigationMenuMissing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Navigation menu has been deleted or is unavailable. '\n\t\t\t\t\t) }\n\t\t\t\t\t<Button onClick={ startWithEmptyMenu } variant=\"link\">\n\t\t\t\t\t\t{ __( 'Create a new menu?' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst PlaceholderComponent = CustomPlaceholder\n\t\t? CustomPlaceholder\n\t\t: Placeholder;\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider>\n\t\t\t\t<BlockControls>\n\t\t\t\t\t{ ! isDraftNavigationMenu && isEntityAvailable && (\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\t\t\tlabel={ __( 'Select Menu' ) }\n\t\t\t\t\t\t\t\ttext={ __( 'Select Menu' ) }\n\t\t\t\t\t\t\t\ticon={ null }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\t\t\t\tonSelect={ ( { id } ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetRef( id );\n\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tonCreateNew={ startWithEmptyMenu }\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</ToolbarDropdownMenu>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t) }\n\t\t\t\t\t<ToolbarGroup>{ listViewToolbarButton }</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t\t{ listViewModal }\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\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\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ ! attributes.openSubmenusOnClick && (\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show icons' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasColorSettings && (\n\t\t\t\t\t\t<PanelColorSettings\n\t\t\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t\t\ttitle={ __( 'Color' ) }\n\t\t\t\t\t\t\tinitialOpen={ false }\n\t\t\t\t\t\t\tcolorSettings={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: textColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: backgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: overlayTextColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\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\t{ enableContrastChecking && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\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</PanelColorSettings>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\tonDelete={ () => {\n\t\t\t\t\t\t\t\tif ( navigationArea ) {\n\t\t\t\t\t\t\t\t\tsetAreaMenu( 0 );\n\t\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\tref: undefined,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\tsetIsPlaceholderShown( true );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\t\t\t\t<nav { ...blockProps }>\n\t\t\t\t\t{ isPlaceholderShown && (\n\t\t\t\t\t\t<PlaceholderComponent\n\t\t\t\t\t\t\tonFinish={ ( post ) => {\n\t\t\t\t\t\t\t\tsetIsPlaceholderShown( false );\n\t\t\t\t\t\t\t\tif ( post ) {\n\t\t\t\t\t\t\t\t\tsetRef( post.id );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tselectBlock( clientId );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tcanSwitchNavigationMenu={ canSwitchNavigationMenu }\n\t\t\t\t\t\t\thasResolvedNavigationMenus={\n\t\t\t\t\t\t\t\thasResolvedNavigationMenus\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! isEntityAvailable && ! isPlaceholderShown && (\n\t\t\t\t\t\t<PlaceholderPreview isLoading />\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! isPlaceholderShown && (\n\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ 'never' !== overlayMenu }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\tclassNames={ overlayClassnames }\n\t\t\t\t\t\t\tstyles={ overlayStyles }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\tisVisible={ ! isPlaceholderShown }\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\tappender={ CustomAppender }\n\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t) }\n\t\t\t\t</nav>\n\t\t\t</RecursionProvider>\n\t\t</EntityProvider>\n\t);\n}\n\nexport default withColors(\n\t{ textColor: 'color' },\n\t{ backgroundColor: 'color' },\n\t{ overlayBackgroundColor: 'color' },\n\t{ overlayTextColor: 'color' }\n)( Navigation );\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"names":["getComputedStyle","node","ownerDocument","defaultView","detectColors","colorsDetectionElement","setColor","setBackground","color","backgroundColorNode","backgroundColor","parentNode","nodeType","ELEMENT_NODE","Navigation","attributes","setAttributes","clientId","isSelected","className","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","context","navigationArea","hasSubmenuIndicatorSetting","hasColorSettings","customPlaceholder","CustomPlaceholder","customAppender","CustomAppender","openSubmenusOnClick","overlayMenu","showSubmenuIcon","layout","justifyContent","orientation","areaMenu","setAreaMenu","noop","process","env","GUTENBERG_PHASE","navigationAreaMenu","undefined","ref","setRef","postId","hasAlreadyRendered","RecursionProvider","innerBlocks","isInnerBlockSelected","select","getBlocks","hasSelectedInnerBlock","blockEditorStore","hasExistingNavItems","length","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","hasSavedUnsavedInnerBlocks","setHasSavedUnsavedInnerBlocks","isWithinUnassignedArea","isPlaceholderShown","setIsPlaceholderShown","isResponsiveMenuOpen","setResponsiveMenuVisibility","isNavigationMenuResolved","isNavigationMenuMissing","canSwitchNavigationMenu","hasResolvedNavigationMenus","navigationMenus","navigationMenu","navRef","isDraftNavigationMenu","status","listViewToolbarButton","listViewModal","isEntityAvailable","blockProps","class","slug","style","overlayClassnames","overlayStyles","enableContrastChecking","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","current","subMenuElement","querySelector","startWithEmptyMenu","hasUnsavedBlocks","post","id","PlaceholderComponent","Placeholder","onClose","value","onChange","label"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport noop from 'lodash';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tuseCallback,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\tstore as blockEditorStore,\n\twithColors,\n\tPanelColorSettings,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n} from '@wordpress/block-editor';\nimport { EntityProvider, useEntityProp } from '@wordpress/core-data';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tToolbarGroup,\n\tToolbarDropdownMenu,\n\tButton,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport useListViewModal from './use-list-view-modal';\nimport useNavigationMenu from '../use-navigation-menu';\nimport Placeholder from './placeholder';\nimport PlaceholderPreview from './placeholder/placeholder-preview';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuSelector from './navigation-menu-selector';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\n\nfunction getComputedStyle( node ) {\n\treturn node.ownerDocument.defaultView.getComputedStyle( node );\n}\n\nfunction detectColors( colorsDetectionElement, setColor, setBackground ) {\n\tif ( ! colorsDetectionElement ) {\n\t\treturn;\n\t}\n\tsetColor( getComputedStyle( colorsDetectionElement ).color );\n\n\tlet backgroundColorNode = colorsDetectionElement;\n\tlet backgroundColor = getComputedStyle( backgroundColorNode )\n\t\t.backgroundColor;\n\twhile (\n\t\tbackgroundColor === 'rgba(0, 0, 0, 0)' &&\n\t\tbackgroundColorNode.parentNode &&\n\t\tbackgroundColorNode.parentNode.nodeType ===\n\t\t\tbackgroundColorNode.parentNode.ELEMENT_NODE\n\t) {\n\t\tbackgroundColorNode = backgroundColorNode.parentNode;\n\t\tbackgroundColor = getComputedStyle( backgroundColorNode )\n\t\t\t.backgroundColor;\n\t}\n\n\tsetBackground( backgroundColor );\n}\n\nfunction Navigation( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n\tclassName,\n\tbackgroundColor,\n\tsetBackgroundColor,\n\ttextColor,\n\tsetTextColor,\n\toverlayBackgroundColor,\n\tsetOverlayBackgroundColor,\n\toverlayTextColor,\n\tsetOverlayTextColor,\n\tcontext: { navigationArea },\n\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\thasColorSettings = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n\tcustomAppender: CustomAppender = null,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\tlayout: { justifyContent, orientation = 'horizontal' } = {},\n\t} = attributes;\n\n\tlet areaMenu,\n\t\tsetAreaMenu = noop;\n\t// Navigation areas are deprecated and on their way out. Let's not perform\n\t// the request unless we're in an environment where the endpoint exists.\n\tif ( process.env.GUTENBERG_PHASE === 2 ) {\n\t\t// eslint-disable-next-line react-hooks/rules-of-hooks\n\t\t[ areaMenu, setAreaMenu ] = useEntityProp(\n\t\t\t'root',\n\t\t\t'navigationArea',\n\t\t\t'navigation',\n\t\t\tnavigationArea\n\t\t);\n\t}\n\n\tconst navigationAreaMenu = areaMenu === 0 ? undefined : areaMenu;\n\n\tconst ref = navigationArea ? navigationAreaMenu : attributes.ref;\n\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t\tif ( navigationArea ) {\n\t\t\t\tsetAreaMenu( postId );\n\t\t\t}\n\t\t},\n\t\t[ navigationArea ]\n\t);\n\n\tconst [ hasAlreadyRendered, RecursionProvider ] = useNoRecursiveRenders(\n\t\t`navigationMenu/${ ref }`\n\t);\n\n\tconst { innerBlocks, isInnerBlockSelected } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getBlocks, hasSelectedInnerBlock } = select(\n\t\t\t\tblockEditorStore\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisInnerBlockSelected: hasSelectedInnerBlock( clientId, true ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\tconst hasExistingNavItems = !! innerBlocks.length;\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [\n\t\thasSavedUnsavedInnerBlocks,\n\t\tsetHasSavedUnsavedInnerBlocks,\n\t] = useState( false );\n\n\tconst isWithinUnassignedArea = navigationArea && ! ref;\n\n\tconst [ isPlaceholderShown, setIsPlaceholderShown ] = useState(\n\t\t! hasExistingNavItems || isWithinUnassignedArea\n\t);\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] = useState(\n\t\tfalse\n\t);\n\n\tconst {\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tcanSwitchNavigationMenu,\n\t\thasResolvedNavigationMenus,\n\t\tnavigationMenus,\n\t\tnavigationMenu,\n\t} = useNavigationMenu( ref );\n\n\tconst navRef = useRef();\n\tconst isDraftNavigationMenu = navigationMenu?.status === 'draft';\n\n\tconst { listViewToolbarButton, listViewModal } = useListViewModal(\n\t\tclientId\n\t);\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames( className, {\n\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t'items-justified-space-between': justifyContent === 'space-between',\n\t\t\t'is-responsive': 'never' !== overlayMenu,\n\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'color',\n\t\t\t\ttextColor?.slug\n\t\t\t) ]: !! textColor?.slug,\n\t\t\t'has-background': !! backgroundColor.color || backgroundColor.class,\n\t\t\t[ getColorClassName(\n\t\t\t\t'background-color',\n\t\t\t\tbackgroundColor?.slug\n\t\t\t) ]: !! backgroundColor?.slug,\n\t\t} ),\n\t\tstyle: {\n\t\t\tcolor: ! textColor?.slug && textColor?.color,\n\t\t\tbackgroundColor: ! backgroundColor?.slug && backgroundColor?.color,\n\t\t},\n\t} );\n\n\tconst overlayClassnames = classnames( {\n\t\t'has-text-color':\n\t\t\t!! overlayTextColor.color || !! overlayTextColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'color',\n\t\t\toverlayTextColor?.slug\n\t\t) ]: !! overlayTextColor?.slug,\n\t\t'has-background':\n\t\t\t!! overlayBackgroundColor.color || overlayBackgroundColor?.class,\n\t\t[ getColorClassName(\n\t\t\t'background-color',\n\t\t\toverlayBackgroundColor?.slug\n\t\t) ]: !! overlayBackgroundColor?.slug,\n\t} );\n\n\tconst overlayStyles = {\n\t\tcolor: ! overlayTextColor?.slug && overlayTextColor?.color,\n\t\tbackgroundColor:\n\t\t\t! overlayBackgroundColor?.slug &&\n\t\t\toverlayBackgroundColor?.color &&\n\t\t\toverlayBackgroundColor.color,\n\t};\n\n\t// Turn on contrast checker for web only since it's not supported on mobile yet.\n\tconst enableContrastChecking = Platform.OS === 'web';\n\n\tconst [ detectedBackgroundColor, setDetectedBackgroundColor ] = useState();\n\tconst [ detectedColor, setDetectedColor ] = useState();\n\tconst [\n\t\tdetectedOverlayBackgroundColor,\n\t\tsetDetectedOverlayBackgroundColor,\n\t] = useState();\n\tconst [ detectedOverlayColor, setDetectedOverlayColor ] = useState();\n\n\t// Spacer block needs orientation from context. This is a patch until\n\t// https://github.com/WordPress/gutenberg/issues/36197 is addressed.\n\tuseEffect( () => {\n\t\tif ( orientation ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { orientation } );\n\t\t}\n\t}, [ orientation ] );\n\n\tuseEffect( () => {\n\t\tif ( ! enableContrastChecking ) {\n\t\t\treturn;\n\t\t}\n\t\tdetectColors(\n\t\t\tnavRef.current,\n\t\t\tsetDetectedColor,\n\t\t\tsetDetectedBackgroundColor\n\t\t);\n\t\tconst subMenuElement = navRef.current.querySelector(\n\t\t\t'[data-type=\"core/navigation-link\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\t\tif ( subMenuElement ) {\n\t\t\tdetectColors(\n\t\t\t\tsubMenuElement,\n\t\t\t\tsetDetectedOverlayColor,\n\t\t\t\tsetDetectedOverlayBackgroundColor\n\t\t\t);\n\t\t}\n\t} );\n\n\t// Hide the placeholder if an navigation menu entity has loaded.\n\tuseEffect( () => {\n\t\tsetIsPlaceholderShown( ! isEntityAvailable );\n\t}, [ isEntityAvailable ] );\n\n\t// If the ref no longer exists the reset the inner blocks\n\t// to provide a clean slate.\n\tuseEffect( () => {\n\t\tif ( ref === undefined && innerBlocks.length > 0 ) {\n\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t}\n\t\t// innerBlocks are intentionally not listed as deps. This function is only concerned\n\t\t// with the snapshot from the time when ref became undefined.\n\t}, [ clientId, ref, innerBlocks ] );\n\n\tconst startWithEmptyMenu = useCallback( () => {\n\t\tif ( navigationArea ) {\n\t\t\tsetAreaMenu( 0 );\n\t\t}\n\t\tsetAttributes( {\n\t\t\tref: undefined,\n\t\t} );\n\n\t\tsetIsPlaceholderShown( true );\n\t}, [ clientId ] );\n\n\t// If the block has inner blocks, but no menu id, this was an older\n\t// navigation block added before the block used a wp_navigation entity.\n\t// Either this block was saved in the content or inserted by a pattern.\n\t// Consider this 'unsaved'. Offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu.\n\tconst hasUnsavedBlocks =\n\t\thasExistingNavItems && ! isEntityAvailable && ! isWithinUnassignedArea;\n\tif ( hasUnsavedBlocks ) {\n\t\treturn (\n\t\t\t<UnsavedInnerBlocks\n\t\t\t\tblockProps={ blockProps }\n\t\t\t\tblocks={ innerBlocks }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tnavigationMenus={ navigationMenus }\n\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\thasSavedUnsavedInnerBlocks={ hasSavedUnsavedInnerBlocks }\n\t\t\t\tonSave={ ( post ) => {\n\t\t\t\t\tsetHasSavedUnsavedInnerBlocks( true );\n\t\t\t\t\t// Switch to using the wp_navigation entity.\n\t\t\t\t\tsetRef( post.id );\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t}\n\n\t// Show a warning if the selected menu is no longer available.\n\t// TODO - the user should be able to select a new one?\n\tif ( ref && isNavigationMenuMissing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __(\n\t\t\t\t\t\t'Navigation menu has been deleted or is unavailable. '\n\t\t\t\t\t) }\n\t\t\t\t\t<Button onClick={ startWithEmptyMenu } variant=\"link\">\n\t\t\t\t\t\t{ __( 'Create a new menu?' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst PlaceholderComponent = CustomPlaceholder\n\t\t? CustomPlaceholder\n\t\t: Placeholder;\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider>\n\t\t\t\t<BlockControls>\n\t\t\t\t\t{ ! isDraftNavigationMenu && isEntityAvailable && (\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarDropdownMenu\n\t\t\t\t\t\t\t\tlabel={ __( 'Select Menu' ) }\n\t\t\t\t\t\t\t\ttext={ __( 'Select Menu' ) }\n\t\t\t\t\t\t\t\ticon={ null }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t\t\t<NavigationMenuSelector\n\t\t\t\t\t\t\t\t\t\tonSelect={ ( { id } ) => {\n\t\t\t\t\t\t\t\t\t\t\tsetRef( id );\n\t\t\t\t\t\t\t\t\t\t\tonClose();\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tonCreateNew={ startWithEmptyMenu }\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</ToolbarDropdownMenu>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t) }\n\t\t\t\t\t<ToolbarGroup>{ listViewToolbarButton }</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t\t{ listViewModal }\n\t\t\t\t<InspectorControls>\n\t\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\t\thelp={ __(\n\t\t\t\t\t\t\t\t\t'Collapses the navigation options in a menu icon opening an overlay.'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\n\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\topenSubmenusOnClick: value,\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\tlabel={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ ! attributes.openSubmenusOnClick && (\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\tchecked={ showSubmenuIcon }\n\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: value,\n\t\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show icons' ) }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t) }\n\t\t\t\t\t{ hasColorSettings && (\n\t\t\t\t\t\t<PanelColorSettings\n\t\t\t\t\t\t\t__experimentalHasMultipleOrigins\n\t\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\t\ttitle={ __( 'Color' ) }\n\t\t\t\t\t\t\tinitialOpen={ false }\n\t\t\t\t\t\t\tcolorSettings={ [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: textColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: backgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: overlayTextColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tvalue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\t\tonChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\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\t{ enableContrastChecking && (\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\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</PanelColorSettings>\n\t\t\t\t\t) }\n\t\t\t\t</InspectorControls>\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<InspectorControls __experimentalGroup=\"advanced\">\n\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\tonDelete={ () => {\n\t\t\t\t\t\t\t\tif ( navigationArea ) {\n\t\t\t\t\t\t\t\t\tsetAreaMenu( 0 );\n\t\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\tref: undefined,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\tsetIsPlaceholderShown( true );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\t\t\t\t<nav { ...blockProps }>\n\t\t\t\t\t{ isPlaceholderShown && (\n\t\t\t\t\t\t<PlaceholderComponent\n\t\t\t\t\t\t\tonFinish={ ( post ) => {\n\t\t\t\t\t\t\t\tsetIsPlaceholderShown( false );\n\t\t\t\t\t\t\t\tif ( post ) {\n\t\t\t\t\t\t\t\t\tsetRef( post.id );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tselectBlock( clientId );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tcanSwitchNavigationMenu={ canSwitchNavigationMenu }\n\t\t\t\t\t\t\thasResolvedNavigationMenus={\n\t\t\t\t\t\t\t\thasResolvedNavigationMenus\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! isEntityAvailable && ! isPlaceholderShown && (\n\t\t\t\t\t\t<PlaceholderPreview isLoading />\n\t\t\t\t\t) }\n\t\t\t\t\t{ ! isPlaceholderShown && (\n\t\t\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\t\t\tid={ clientId }\n\t\t\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ 'never' !== overlayMenu }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\tclassNames={ overlayClassnames }\n\t\t\t\t\t\t\tstyles={ overlayStyles }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t\t\t\t<NavigationInnerBlocks\n\t\t\t\t\t\t\t\t\tisVisible={ ! isPlaceholderShown }\n\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\tappender={ CustomAppender }\n\t\t\t\t\t\t\t\t\thasCustomPlaceholder={\n\t\t\t\t\t\t\t\t\t\t!! CustomPlaceholder\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\torientation={ orientation }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</ResponsiveWrapper>\n\t\t\t\t\t) }\n\t\t\t\t</nav>\n\t\t\t</RecursionProvider>\n\t\t</EntityProvider>\n\t);\n}\n\nexport default withColors(\n\t{ textColor: 'color' },\n\t{ backgroundColor: 'color' },\n\t{ overlayBackgroundColor: 'color' },\n\t{ overlayTextColor: 'color' }\n)( Navigation );\n"]}
@@ -84,10 +84,6 @@ function NavigationInnerBlocks(_ref) {
84
84
  __experimentalDirectInsert: shouldDirectInsert,
85
85
  orientation,
86
86
  renderAppender: CustomAppender || appender,
87
- // Ensure block toolbar is not too far removed from item
88
- // being edited when in vertical mode.
89
- // see: https://github.com/WordPress/gutenberg/pull/34615.
90
- __experimentalCaptureToolbars: orientation !== 'vertical',
91
87
  // Template lock set to false here so that the Nav
92
88
  // Block on the experimental menus screen does not
93
89
  // inherit templateLock={ 'all' }.
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/inner-blocks.js"],"names":["ALLOWED_BLOCKS","DEFAULT_BLOCK","LAYOUT","type","alignments","NavigationInnerBlocks","isVisible","clientId","appender","CustomAppender","hasCustomPlaceholder","orientation","isImmediateParentOfSelectedBlock","selectedBlockHasDescendants","isSelected","select","getClientIdsOfDescendants","hasSelectedInnerBlock","getSelectedBlockClientId","blockEditorStore","selectedBlockId","length","blocks","onInput","onChange","shouldDirectInsert","every","name","parentOrChildHasSelection","undefined","placeholder","innerBlocksProps","className","value","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","renderAppender","__experimentalCaptureToolbars","templateLock","__experimentalLayout"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityBlockEditor } from '@wordpress/core-data';\nimport {\n\tuseInnerBlocksProps,\n\t__experimentalBlockContentOverlay as BlockContentOverlay,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport PlaceholderPreview from './placeholder/placeholder-preview';\n\nconst ALLOWED_BLOCKS = [\n\t'core/navigation-link',\n\t'core/search',\n\t'core/social-links',\n\t'core/page-list',\n\t'core/spacer',\n\t'core/home-link',\n\t'core/site-title',\n\t'core/site-logo',\n\t'core/navigation-submenu',\n];\n\nconst DEFAULT_BLOCK = [ 'core/navigation-link' ];\n\nconst LAYOUT = {\n\ttype: 'default',\n\talignments: [],\n};\n\nexport default function NavigationInnerBlocks( {\n\tisVisible,\n\tclientId,\n\tappender: CustomAppender,\n\thasCustomPlaceholder,\n\torientation,\n} ) {\n\tconst {\n\t\tisImmediateParentOfSelectedBlock,\n\t\tselectedBlockHasDescendants,\n\t\tisSelected,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetClientIdsOfDescendants,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst selectedBlockId = getSelectedBlockClientId();\n\n\t\t\treturn {\n\t\t\t\tisImmediateParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\tfalse\n\t\t\t\t),\n\t\t\t\tselectedBlockHasDescendants: !! getClientIdsOfDescendants( [\n\t\t\t\t\tselectedBlockId,\n\t\t\t\t] )?.length,\n\n\t\t\t\t// This prop is already available but computing it here ensures it's\n\t\t\t\t// fresh compared to isImmediateParentOfSelectedBlock\n\t\t\t\tisSelected: selectedBlockId === clientId,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_navigation'\n\t);\n\n\tconst shouldDirectInsert = useMemo(\n\t\t() =>\n\t\t\tblocks.every(\n\t\t\t\t( { name } ) =>\n\t\t\t\t\tname === 'core/navigation-link' ||\n\t\t\t\t\tname === 'core/navigation-submenu' ||\n\t\t\t\t\tname === 'core/page-list'\n\t\t\t),\n\t\t[ blocks ]\n\t);\n\n\t// When the block is selected itself or has a top level item selected that\n\t// doesn't itself have children, show the standard appender. Else show no\n\t// appender.\n\tconst parentOrChildHasSelection =\n\t\tisSelected ||\n\t\t( isImmediateParentOfSelectedBlock && ! selectedBlockHasDescendants );\n\tconst appender = isVisible && parentOrChildHasSelection ? undefined : false;\n\n\tconst placeholder = useMemo( () => <PlaceholderPreview />, [] );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-navigation__container',\n\t\t},\n\t\t{\n\t\t\tvalue: blocks,\n\t\t\tonInput,\n\t\t\tonChange,\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: shouldDirectInsert,\n\t\t\torientation,\n\t\t\trenderAppender: CustomAppender || appender,\n\n\t\t\t// Ensure block toolbar is not too far removed from item\n\t\t\t// being edited when in vertical mode.\n\t\t\t// see: https://github.com/WordPress/gutenberg/pull/34615.\n\t\t\t__experimentalCaptureToolbars: orientation !== 'vertical',\n\t\t\t// Template lock set to false here so that the Nav\n\t\t\t// Block on the experimental menus screen does not\n\t\t\t// inherit templateLock={ 'all' }.\n\t\t\ttemplateLock: false,\n\t\t\t__experimentalLayout: LAYOUT,\n\t\t\tplaceholder:\n\t\t\t\t! isVisible || hasCustomPlaceholder ? undefined : placeholder,\n\t\t}\n\t);\n\n\treturn (\n\t\t<BlockContentOverlay\n\t\t\tclientId={ clientId }\n\t\t\ttagName={ 'div' }\n\t\t\twrapperProps={ innerBlocksProps }\n\t\t/>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/block-library/src/navigation/edit/inner-blocks.js"],"names":["ALLOWED_BLOCKS","DEFAULT_BLOCK","LAYOUT","type","alignments","NavigationInnerBlocks","isVisible","clientId","appender","CustomAppender","hasCustomPlaceholder","orientation","isImmediateParentOfSelectedBlock","selectedBlockHasDescendants","isSelected","select","getClientIdsOfDescendants","hasSelectedInnerBlock","getSelectedBlockClientId","blockEditorStore","selectedBlockId","length","blocks","onInput","onChange","shouldDirectInsert","every","name","parentOrChildHasSelection","undefined","placeholder","innerBlocksProps","className","value","allowedBlocks","__experimentalDefaultBlock","__experimentalDirectInsert","renderAppender","templateLock","__experimentalLayout"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEntityBlockEditor } from '@wordpress/core-data';\nimport {\n\tuseInnerBlocksProps,\n\t__experimentalBlockContentOverlay as BlockContentOverlay,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport PlaceholderPreview from './placeholder/placeholder-preview';\n\nconst ALLOWED_BLOCKS = [\n\t'core/navigation-link',\n\t'core/search',\n\t'core/social-links',\n\t'core/page-list',\n\t'core/spacer',\n\t'core/home-link',\n\t'core/site-title',\n\t'core/site-logo',\n\t'core/navigation-submenu',\n];\n\nconst DEFAULT_BLOCK = [ 'core/navigation-link' ];\n\nconst LAYOUT = {\n\ttype: 'default',\n\talignments: [],\n};\n\nexport default function NavigationInnerBlocks( {\n\tisVisible,\n\tclientId,\n\tappender: CustomAppender,\n\thasCustomPlaceholder,\n\torientation,\n} ) {\n\tconst {\n\t\tisImmediateParentOfSelectedBlock,\n\t\tselectedBlockHasDescendants,\n\t\tisSelected,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetClientIdsOfDescendants,\n\t\t\t\thasSelectedInnerBlock,\n\t\t\t\tgetSelectedBlockClientId,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst selectedBlockId = getSelectedBlockClientId();\n\n\t\t\treturn {\n\t\t\t\tisImmediateParentOfSelectedBlock: hasSelectedInnerBlock(\n\t\t\t\t\tclientId,\n\t\t\t\t\tfalse\n\t\t\t\t),\n\t\t\t\tselectedBlockHasDescendants: !! getClientIdsOfDescendants( [\n\t\t\t\t\tselectedBlockId,\n\t\t\t\t] )?.length,\n\n\t\t\t\t// This prop is already available but computing it here ensures it's\n\t\t\t\t// fresh compared to isImmediateParentOfSelectedBlock\n\t\t\t\tisSelected: selectedBlockId === clientId,\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_navigation'\n\t);\n\n\tconst shouldDirectInsert = useMemo(\n\t\t() =>\n\t\t\tblocks.every(\n\t\t\t\t( { name } ) =>\n\t\t\t\t\tname === 'core/navigation-link' ||\n\t\t\t\t\tname === 'core/navigation-submenu' ||\n\t\t\t\t\tname === 'core/page-list'\n\t\t\t),\n\t\t[ blocks ]\n\t);\n\n\t// When the block is selected itself or has a top level item selected that\n\t// doesn't itself have children, show the standard appender. Else show no\n\t// appender.\n\tconst parentOrChildHasSelection =\n\t\tisSelected ||\n\t\t( isImmediateParentOfSelectedBlock && ! selectedBlockHasDescendants );\n\tconst appender = isVisible && parentOrChildHasSelection ? undefined : false;\n\n\tconst placeholder = useMemo( () => <PlaceholderPreview />, [] );\n\n\tconst innerBlocksProps = useInnerBlocksProps(\n\t\t{\n\t\t\tclassName: 'wp-block-navigation__container',\n\t\t},\n\t\t{\n\t\t\tvalue: blocks,\n\t\t\tonInput,\n\t\t\tonChange,\n\t\t\tallowedBlocks: ALLOWED_BLOCKS,\n\t\t\t__experimentalDefaultBlock: DEFAULT_BLOCK,\n\t\t\t__experimentalDirectInsert: shouldDirectInsert,\n\t\t\torientation,\n\t\t\trenderAppender: CustomAppender || appender,\n\t\t\t// Template lock set to false here so that the Nav\n\t\t\t// Block on the experimental menus screen does not\n\t\t\t// inherit templateLock={ 'all' }.\n\t\t\ttemplateLock: false,\n\t\t\t__experimentalLayout: LAYOUT,\n\t\t\tplaceholder:\n\t\t\t\t! isVisible || hasCustomPlaceholder ? undefined : placeholder,\n\t\t}\n\t);\n\n\treturn (\n\t\t<BlockContentOverlay\n\t\t\tclientId={ clientId }\n\t\t\ttagName={ 'div' }\n\t\t\twrapperProps={ innerBlocksProps }\n\t\t/>\n\t);\n}\n"]}
@@ -17,6 +17,8 @@ var _i18n = require("@wordpress/i18n");
17
17
 
18
18
  var _htmlEntities = require("@wordpress/html-entities");
19
19
 
20
+ var _url = require("@wordpress/url");
21
+
20
22
  var _useNavigationMenu = _interopRequireDefault(require("../use-navigation-menu"));
21
23
 
22
24
  /**
@@ -54,6 +56,10 @@ function NavigationMenuSelector(_ref) {
54
56
  })
55
57
  })), (0, _element.createElement)(_components.MenuGroup, null, (0, _element.createElement)(_components.MenuItem, {
56
58
  onClick: onCreateNew
57
- }, (0, _i18n.__)('Create new menu'))));
59
+ }, (0, _i18n.__)('Create new menu')), (0, _element.createElement)(_components.MenuItem, {
60
+ href: (0, _url.addQueryArgs)('edit.php', {
61
+ post_type: 'wp_navigation'
62
+ })
63
+ }, (0, _i18n.__)('Manage menus'))));
58
64
  }
59
65
  //# sourceMappingURL=navigation-menu-selector.js.map