@wordpress/block-library 8.19.4 → 8.19.6

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 (43) hide show
  1. package/build/image/image.js +4 -1
  2. package/build/image/image.js.map +1 -1
  3. package/build/image/view.js +13 -4
  4. package/build/image/view.js.map +1 -1
  5. package/build/latest-posts/edit.js +2 -2
  6. package/build/latest-posts/edit.js.map +1 -1
  7. package/build/list-item/hooks/use-merge.js +15 -15
  8. package/build/list-item/hooks/use-merge.js.map +1 -1
  9. package/build/lock-unlock.js +1 -1
  10. package/build/lock-unlock.js.map +1 -1
  11. package/build/navigation/edit/index.js +0 -1
  12. package/build/navigation/edit/index.js.map +1 -1
  13. package/build/navigation/view.js +7 -0
  14. package/build/navigation/view.js.map +1 -1
  15. package/build-module/image/image.js +4 -1
  16. package/build-module/image/image.js.map +1 -1
  17. package/build-module/image/view.js +13 -4
  18. package/build-module/image/view.js.map +1 -1
  19. package/build-module/latest-posts/edit.js +2 -2
  20. package/build-module/latest-posts/edit.js.map +1 -1
  21. package/build-module/list-item/hooks/use-merge.js +15 -15
  22. package/build-module/list-item/hooks/use-merge.js.map +1 -1
  23. package/build-module/lock-unlock.js +1 -1
  24. package/build-module/lock-unlock.js.map +1 -1
  25. package/build-module/navigation/edit/index.js +0 -1
  26. package/build-module/navigation/edit/index.js.map +1 -1
  27. package/build-module/navigation/view.js +7 -0
  28. package/build-module/navigation/view.js.map +1 -1
  29. package/package.json +32 -32
  30. package/src/image/image.js +10 -0
  31. package/src/image/index.php +55 -37
  32. package/src/image/view.js +16 -5
  33. package/src/latest-posts/edit.js +4 -3
  34. package/src/latest-posts/index.php +2 -3
  35. package/src/list-item/hooks/use-merge.js +20 -23
  36. package/src/lock-unlock.js +1 -1
  37. package/src/navigation/edit/index.js +0 -1
  38. package/src/navigation/index.php +19 -6
  39. package/src/navigation/view.js +7 -0
  40. package/src/pattern/index.php +0 -3
  41. package/src/query/index.php +2 -1
  42. package/src/search/index.php +0 -4
  43. package/src/template-part/index.php +4 -7
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_components","_i18n","_date","_blockEditor","_data","_icons","_coreData","_notices","_compose","_constants","CATEGORIES_LIST_QUERY","per_page","context","USERS_LIST_QUERY","has_published_posts","getFeaturedImageDetails","post","size","_image$media_details$","image","_embedded","url","media_details","sizes","source_url","alt","alt_text","LatestPostsEdit","attributes","setAttributes","_categoriesList$reduc","instanceId","useInstanceId","postsToShow","order","orderBy","categories","selectedAuthor","displayFeaturedImage","displayPostContentRadio","displayPostContent","displayPostDate","displayAuthor","postLayout","columns","excerptLength","featuredImageAlign","featuredImageSizeSlug","featuredImageSizeWidth","featuredImageSizeHeight","addLinkToFeaturedImage","imageSizes","latestPosts","defaultImageWidth","defaultImageHeight","categoriesList","authorList","useSelect","select","_settings$imageDimens","_settings$imageDimens2","getEntityRecords","getUsers","coreStore","settings","blockEditorStore","getSettings","catIds","length","map","cat","id","latestPostsQuery","Object","fromEntries","entries","author","orderby","_embed","filter","value","imageDimensions","width","height","createWarningNotice","removeNotice","useDispatch","noticeStore","noticeId","showRedirectionPreventedNotice","event","preventDefault","__","type","imageSizeOptions","slug","name","label","categorySuggestions","reduce","accumulator","category","selectCategories","tokens","hasNoSuggestion","some","token","allCategories","includes","hasPosts","inspectorControls","createElement","InspectorControls","PanelBody","title","ToggleControl","checked","onChange","RadioControl","selected","options","RangeControl","__nextHasNoMarginBottom","__next40pxDefaultSize","min","MIN_EXCERPT_LENGTH","max","MAX_EXCERPT_LENGTH","Fragment","__experimentalImageSizeControl","newAttrs","hasOwnProperty","imageWidth","imageHeight","imageSizeHelp","onChangeImage","undefined","BaseControl","className","VisualLabel","BlockAlignmentToolbar","controls","isCollapsed","QueryControls","numberOfItems","onOrderChange","onOrderByChange","onNumberOfItemsChange","onCategoryChange","selectedCategories","onAuthorChange","Number","selectedAuthorId","MAX_POSTS_COLUMNS","Math","required","blockProps","useBlockProps","classnames","Placeholder","icon","pin","Array","isArray","Spinner","displayPosts","slice","layoutControls","list","onClick","isActive","grid","dateFormat","formats","date","BlockControls","ToolbarGroup","titleTrimmed","rendered","trim","excerpt","currentAuthor","find","excerptElement","document","innerHTML","textContent","innerText","imageSourceUrl","featuredImageAlt","imageClasses","renderFeaturedImage","featuredImage","src","style","maxWidth","maxHeight","needsReadMore","split","raw","postExcerpt","join","createInterpolateElement","sprintf","a","href","link","rel","span","key","dangerouslySetInnerHTML","__html","date_gmt","dateTime","format","dateI18n","content"],"sources":["@wordpress/block-library/src/latest-posts/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tPlaceholder,\n\tQueryControls,\n\tRadioControl,\n\tRangeControl,\n\tSpinner,\n\tToggleControl,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { dateI18n, format, getSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tBlockAlignmentToolbar,\n\tBlockControls,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { pin, list, grid } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticeStore } from '@wordpress/notices';\nimport { useInstanceId } from '@wordpress/compose';\nimport { createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMIN_EXCERPT_LENGTH,\n\tMAX_EXCERPT_LENGTH,\n\tMAX_POSTS_COLUMNS,\n} from './constants';\n\n/**\n * Module Constants\n */\nconst CATEGORIES_LIST_QUERY = {\n\tper_page: -1,\n\tcontext: 'view',\n};\nconst USERS_LIST_QUERY = {\n\tper_page: -1,\n\thas_published_posts: [ 'post' ],\n\tcontext: 'view',\n};\n\nfunction getFeaturedImageDetails( post, size ) {\n\tconst image = post._embedded?.[ 'wp:featuredmedia' ]?.[ '0' ];\n\n\treturn {\n\t\turl:\n\t\t\timage?.media_details?.sizes?.[ size ]?.source_url ??\n\t\t\timage?.source_url,\n\t\talt: image?.alt_text,\n\t};\n}\n\nexport default function LatestPostsEdit( { attributes, setAttributes } ) {\n\tconst instanceId = useInstanceId( LatestPostsEdit );\n\tconst {\n\t\tpostsToShow,\n\t\torder,\n\t\torderBy,\n\t\tcategories,\n\t\tselectedAuthor,\n\t\tdisplayFeaturedImage,\n\t\tdisplayPostContentRadio,\n\t\tdisplayPostContent,\n\t\tdisplayPostDate,\n\t\tdisplayAuthor,\n\t\tpostLayout,\n\t\tcolumns,\n\t\texcerptLength,\n\t\tfeaturedImageAlign,\n\t\tfeaturedImageSizeSlug,\n\t\tfeaturedImageSizeWidth,\n\t\tfeaturedImageSizeHeight,\n\t\taddLinkToFeaturedImage,\n\t} = attributes;\n\tconst {\n\t\timageSizes,\n\t\tlatestPosts,\n\t\tdefaultImageWidth,\n\t\tdefaultImageHeight,\n\t\tcategoriesList,\n\t\tauthorList,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getUsers } = select( coreStore );\n\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\tconst catIds =\n\t\t\t\tcategories && categories.length > 0\n\t\t\t\t\t? categories.map( ( cat ) => cat.id )\n\t\t\t\t\t: [];\n\t\t\tconst latestPostsQuery = Object.fromEntries(\n\t\t\t\tObject.entries( {\n\t\t\t\t\tcategories: catIds,\n\t\t\t\t\tauthor: selectedAuthor,\n\t\t\t\t\torder,\n\t\t\t\t\torderby: orderBy,\n\t\t\t\t\tper_page: postsToShow,\n\t\t\t\t\t_embed: 'wp:featuredmedia',\n\t\t\t\t} ).filter( ( [ , value ] ) => typeof value !== 'undefined' )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tdefaultImageWidth:\n\t\t\t\t\tsettings.imageDimensions?.[ featuredImageSizeSlug ]\n\t\t\t\t\t\t?.width ?? 0,\n\t\t\t\tdefaultImageHeight:\n\t\t\t\t\tsettings.imageDimensions?.[ featuredImageSizeSlug ]\n\t\t\t\t\t\t?.height ?? 0,\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tlatestPosts: getEntityRecords(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'post',\n\t\t\t\t\tlatestPostsQuery\n\t\t\t\t),\n\t\t\t\tcategoriesList: getEntityRecords(\n\t\t\t\t\t'taxonomy',\n\t\t\t\t\t'category',\n\t\t\t\t\tCATEGORIES_LIST_QUERY\n\t\t\t\t),\n\t\t\t\tauthorList: getUsers( USERS_LIST_QUERY ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tfeaturedImageSizeSlug,\n\t\t\tpostsToShow,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tcategories,\n\t\t\tselectedAuthor,\n\t\t]\n\t);\n\n\t// If a user clicks to a link prevent redirection and show a warning.\n\tconst { createWarningNotice, removeNotice } = useDispatch( noticeStore );\n\tlet noticeId;\n\tconst showRedirectionPreventedNotice = ( event ) => {\n\t\tevent.preventDefault();\n\t\t// Remove previous warning if any, to show one at a time per block.\n\t\tremoveNotice( noticeId );\n\t\tnoticeId = `block-library/core/latest-posts/redirection-prevented/${ instanceId }`;\n\t\tcreateWarningNotice( __( 'Links are disabled in the editor.' ), {\n\t\t\tid: noticeId,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => slug !== 'full' )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\tconst categorySuggestions =\n\t\tcategoriesList?.reduce(\n\t\t\t( accumulator, category ) => ( {\n\t\t\t\t...accumulator,\n\t\t\t\t[ category.name ]: category,\n\t\t\t} ),\n\t\t\t{}\n\t\t) ?? {};\n\tconst selectCategories = ( tokens ) => {\n\t\tconst hasNoSuggestion = tokens.some(\n\t\t\t( token ) =>\n\t\t\t\ttypeof token === 'string' && ! categorySuggestions[ token ]\n\t\t);\n\t\tif ( hasNoSuggestion ) {\n\t\t\treturn;\n\t\t}\n\t\t// Categories that are already will be objects, while new additions will be strings (the name).\n\t\t// allCategories nomalizes the array so that they are all objects.\n\t\tconst allCategories = tokens.map( ( token ) => {\n\t\t\treturn typeof token === 'string'\n\t\t\t\t? categorySuggestions[ token ]\n\t\t\t\t: token;\n\t\t} );\n\t\t// We do nothing if the category is not selected\n\t\t// from suggestions.\n\t\tif ( allCategories.includes( null ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tsetAttributes( { categories: allCategories } );\n\t};\n\n\tconst hasPosts = !! latestPosts?.length;\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Post content' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Post content' ) }\n\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostContent: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t<RadioControl\n\t\t\t\t\t\tlabel={ __( 'Show:' ) }\n\t\t\t\t\t\tselected={ displayPostContentRadio }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Excerpt' ), value: 'excerpt' },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Full post' ),\n\t\t\t\t\t\t\t\tvalue: 'full_post',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayPostContentRadio: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ displayPostContent &&\n\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Max number of words' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Post meta' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display author name' ) }\n\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayAuthor: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostDate: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Featured image' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayFeaturedImage: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tconst newAttrs = {};\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'width' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeWidth =\n\t\t\t\t\t\t\t\t\t\tvalue.width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'height' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeHeight =\n\t\t\t\t\t\t\t\t\t\tvalue.height;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetAttributes( newAttrs );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tslug={ featuredImageSizeSlug }\n\t\t\t\t\t\t\twidth={ featuredImageSizeWidth }\n\t\t\t\t\t\t\theight={ featuredImageSizeHeight }\n\t\t\t\t\t\t\timageWidth={ defaultImageWidth }\n\t\t\t\t\t\t\timageHeight={ defaultImageHeight }\n\t\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\t\timageSizeHelp={ __(\n\t\t\t\t\t\t\t\t'Select the size of the source image.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonChangeImage={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeSlug: value,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeWidth: undefined,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeHeight: undefined,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BaseControl className=\"editor-latest-posts-image-alignment-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Image alignment' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<BlockAlignmentToolbar\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\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\tfeaturedImageAlign: 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\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisCollapsed={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taddLinkToFeaturedImage: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t<QueryControls\n\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\tonOrderChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { order: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonOrderByChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { orderBy: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonNumberOfItemsChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { postsToShow: value } )\n\t\t\t\t\t}\n\t\t\t\t\tcategorySuggestions={ categorySuggestions }\n\t\t\t\t\tonCategoryChange={ selectCategories }\n\t\t\t\t\tselectedCategories={ categories }\n\t\t\t\t\tonAuthorChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tselectedAuthor:\n\t\t\t\t\t\t\t\t'' !== value ? Number( value ) : undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tauthorList={ authorList ?? [] }\n\t\t\t\t\tselectedAuthorId={ selectedAuthor }\n\t\t\t\t/>\n\n\t\t\t\t{ postLayout === 'grid' && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t! hasPosts\n\t\t\t\t\t\t\t\t? MAX_POSTS_COLUMNS\n\t\t\t\t\t\t\t\t: Math.min(\n\t\t\t\t\t\t\t\t\t\tMAX_POSTS_COLUMNS,\n\t\t\t\t\t\t\t\t\t\tlatestPosts.length\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'wp-block-latest-posts__list': true,\n\t\t\t'is-grid': postLayout === 'grid',\n\t\t\t'has-dates': displayPostDate,\n\t\t\t'has-author': displayAuthor,\n\t\t\t[ `columns-${ columns }` ]: postLayout === 'grid',\n\t\t} ),\n\t} );\n\n\tif ( ! hasPosts ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ inspectorControls }\n\t\t\t\t<Placeholder icon={ pin } label={ __( 'Latest Posts' ) }>\n\t\t\t\t\t{ ! Array.isArray( latestPosts ) ? (\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t__( 'No posts found.' )\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Removing posts from display should be instant.\n\tconst displayPosts =\n\t\tlatestPosts.length > postsToShow\n\t\t\t? latestPosts.slice( 0, postsToShow )\n\t\t\t: latestPosts;\n\n\tconst layoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: __( 'List view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'list' } ),\n\t\t\tisActive: postLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: __( 'Grid view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'grid' } ),\n\t\t\tisActive: postLayout === 'grid',\n\t\t},\n\t];\n\n\tconst dateFormat = getSettings().formats.date;\n\n\treturn (\n\t\t<div>\n\t\t\t{ inspectorControls }\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ layoutControls } />\n\t\t\t</BlockControls>\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ displayPosts.map( ( post ) => {\n\t\t\t\t\tconst titleTrimmed = post.title.rendered.trim();\n\t\t\t\t\tlet excerpt = post.excerpt.rendered;\n\t\t\t\t\tconst currentAuthor = authorList?.find(\n\t\t\t\t\t\t( author ) => author.id === post.author\n\t\t\t\t\t);\n\n\t\t\t\t\tconst excerptElement = document.createElement( 'div' );\n\t\t\t\t\texcerptElement.innerHTML = excerpt;\n\n\t\t\t\t\texcerpt =\n\t\t\t\t\t\texcerptElement.textContent ||\n\t\t\t\t\t\texcerptElement.innerText ||\n\t\t\t\t\t\t'';\n\n\t\t\t\t\tconst { url: imageSourceUrl, alt: featuredImageAlt } =\n\t\t\t\t\t\tgetFeaturedImageDetails( post, featuredImageSizeSlug );\n\t\t\t\t\tconst imageClasses = classnames( {\n\t\t\t\t\t\t'wp-block-latest-posts__featured-image': true,\n\t\t\t\t\t\t[ `align${ featuredImageAlign }` ]:\n\t\t\t\t\t\t\t!! featuredImageAlign,\n\t\t\t\t\t} );\n\t\t\t\t\tconst renderFeaturedImage =\n\t\t\t\t\t\tdisplayFeaturedImage && imageSourceUrl;\n\t\t\t\t\tconst featuredImage = renderFeaturedImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ imageSourceUrl }\n\t\t\t\t\t\t\talt={ featuredImageAlt }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: featuredImageSizeWidth,\n\t\t\t\t\t\t\t\tmaxHeight: featuredImageSizeHeight,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\tconst needsReadMore =\n\t\t\t\t\t\texcerptLength < excerpt.trim().split( ' ' ).length &&\n\t\t\t\t\t\tpost.excerpt.raw === '';\n\n\t\t\t\t\tconst postExcerpt = needsReadMore ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ excerpt\n\t\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\t\t\t.split( ' ', excerptLength )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: 1: The static string \"Read more\", 2: The post title only visible to screen readers. */\n\t\t\t\t\t\t\t\t\t__( '… <a>%1$s<span>: %2$s</span></a>' ),\n\t\t\t\t\t\t\t\t\t__( 'Read more' ),\n\t\t\t\t\t\t\t\t\ttitleTrimmed || __( '(no title)' )\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\ta: (\n\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__read-more\"\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\t\t\tshowRedirectionPreventedNotice\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tspan: (\n\t\t\t\t\t\t\t\t\t\t<span className=\"screen-reader-text\" />\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\texcerpt\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={ post.id }>\n\t\t\t\t\t\t\t{ renderFeaturedImage && (\n\t\t\t\t\t\t\t\t<div className={ imageClasses }>\n\t\t\t\t\t\t\t\t\t{ addLinkToFeaturedImage ? (\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-title\"\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\t\t\tshowRedirectionPreventedNotice\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ featuredImage }\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tfeaturedImage\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={\n\t\t\t\t\t\t\t\t\t!! titleTrimmed\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t__html: titleTrimmed,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonClick={ showRedirectionPreventedNotice }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ! titleTrimmed ? __( '(no title)' ) : null }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{ displayAuthor && currentAuthor && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-author\">\n\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: byline. %s: current author. */\n\t\t\t\t\t\t\t\t\t\t__( 'by %s' ),\n\t\t\t\t\t\t\t\t\t\tcurrentAuthor.name\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostDate && post.date_gmt && (\n\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\tdateTime={ format( 'c', post.date_gmt ) }\n\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-date\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ dateI18n( dateFormat, post.date_gmt ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-excerpt\">\n\t\t\t\t\t\t\t\t\t\t{ postExcerpt }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'full_post' && (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-full-content\"\n\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t\t\t\t\t__html: post.content.raw.trim(),\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t</div>\n\t);\n}\n"],"mappings":";;;;;;;AAkCA,IAAAA,QAAA,GAAAC,OAAA;AA/BA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AAKA,IAAAG,WAAA,GAAAH,OAAA;AAWA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,YAAA,GAAAN,OAAA;AAQA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAT,OAAA;AACA,IAAAU,QAAA,GAAAV,OAAA;AACA,IAAAW,QAAA,GAAAX,OAAA;AAMA,IAAAY,UAAA,GAAAZ,OAAA;AAvCA;AACA;AACA;;AAGA;AACA;AACA;;AA6BA;AACA;AACA;;AAOA;AACA;AACA;AACA,MAAMa,qBAAqB,GAAG;EAC7BC,QAAQ,EAAE,CAAC,CAAC;EACZC,OAAO,EAAE;AACV,CAAC;AACD,MAAMC,gBAAgB,GAAG;EACxBF,QAAQ,EAAE,CAAC,CAAC;EACZG,mBAAmB,EAAE,CAAE,MAAM,CAAE;EAC/BF,OAAO,EAAE;AACV,CAAC;AAED,SAASG,uBAAuBA,CAAEC,IAAI,EAAEC,IAAI,EAAG;EAAA,IAAAC,qBAAA;EAC9C,MAAMC,KAAK,GAAGH,IAAI,CAACI,SAAS,GAAI,kBAAkB,CAAE,GAAI,GAAG,CAAE;EAE7D,OAAO;IACNC,GAAG,GAAAH,qBAAA,GACFC,KAAK,EAAEG,aAAa,EAAEC,KAAK,GAAIN,IAAI,CAAE,EAAEO,UAAU,cAAAN,qBAAA,cAAAA,qBAAA,GACjDC,KAAK,EAAEK,UAAU;IAClBC,GAAG,EAAEN,KAAK,EAAEO;EACb,CAAC;AACF;AAEe,SAASC,eAAeA,CAAE;EAAEC,UAAU;EAAEC;AAAc,CAAC,EAAG;EAAA,IAAAC,qBAAA;EACxE,MAAMC,UAAU,GAAG,IAAAC,sBAAa,EAAEL,eAAgB,CAAC;EACnD,MAAM;IACLM,WAAW;IACXC,KAAK;IACLC,OAAO;IACPC,UAAU;IACVC,cAAc;IACdC,oBAAoB;IACpBC,uBAAuB;IACvBC,kBAAkB;IAClBC,eAAe;IACfC,aAAa;IACbC,UAAU;IACVC,OAAO;IACPC,aAAa;IACbC,kBAAkB;IAClBC,qBAAqB;IACrBC,sBAAsB;IACtBC,uBAAuB;IACvBC;EACD,CAAC,GAAGtB,UAAU;EACd,MAAM;IACLuB,UAAU;IACVC,WAAW;IACXC,iBAAiB;IACjBC,kBAAkB;IAClBC,cAAc;IACdC;EACD,CAAC,GAAG,IAAAC,eAAS,EACVC,MAAM,IAAM;IAAA,IAAAC,qBAAA,EAAAC,sBAAA;IACb,MAAM;MAAEC,gBAAgB;MAAEC;IAAS,CAAC,GAAGJ,MAAM,CAAEK,eAAU,CAAC;IAC1D,MAAMC,QAAQ,GAAGN,MAAM,CAAEO,kBAAiB,CAAC,CAACC,WAAW,CAAC,CAAC;IACzD,MAAMC,MAAM,GACX/B,UAAU,IAAIA,UAAU,CAACgC,MAAM,GAAG,CAAC,GAChChC,UAAU,CAACiC,GAAG,CAAIC,GAAG,IAAMA,GAAG,CAACC,EAAG,CAAC,GACnC,EAAE;IACN,MAAMC,gBAAgB,GAAGC,MAAM,CAACC,WAAW,CAC1CD,MAAM,CAACE,OAAO,CAAE;MACfvC,UAAU,EAAE+B,MAAM;MAClBS,MAAM,EAAEvC,cAAc;MACtBH,KAAK;MACL2C,OAAO,EAAE1C,OAAO;MAChBxB,QAAQ,EAAEsB,WAAW;MACrB6C,MAAM,EAAE;IACT,CAAE,CAAC,CAACC,MAAM,CAAE,CAAE,GAAIC,KAAK,CAAE,KAAM,OAAOA,KAAK,KAAK,WAAY,CAC7D,CAAC;IAED,OAAO;MACN3B,iBAAiB,GAAAM,qBAAA,GAChBK,QAAQ,CAACiB,eAAe,GAAIlC,qBAAqB,CAAE,EAChDmC,KAAK,cAAAvB,qBAAA,cAAAA,qBAAA,GAAI,CAAC;MACdL,kBAAkB,GAAAM,sBAAA,GACjBI,QAAQ,CAACiB,eAAe,GAAIlC,qBAAqB,CAAE,EAChDoC,MAAM,cAAAvB,sBAAA,cAAAA,sBAAA,GAAI,CAAC;MACfT,UAAU,EAAEa,QAAQ,CAACb,UAAU;MAC/BC,WAAW,EAAES,gBAAgB,CAC5B,UAAU,EACV,MAAM,EACNW,gBACD,CAAC;MACDjB,cAAc,EAAEM,gBAAgB,CAC/B,UAAU,EACV,UAAU,EACVnD,qBACD,CAAC;MACD8C,UAAU,EAAEM,QAAQ,CAAEjD,gBAAiB;IACxC,CAAC;EACF,CAAC,EACD,CACCkC,qBAAqB,EACrBd,WAAW,EACXC,KAAK,EACLC,OAAO,EACPC,UAAU,EACVC,cAAc,CAEhB,CAAC;;EAED;EACA,MAAM;IAAE+C,mBAAmB;IAAEC;EAAa,CAAC,GAAG,IAAAC,iBAAW,EAAEC,cAAY,CAAC;EACxE,IAAIC,QAAQ;EACZ,MAAMC,8BAA8B,GAAKC,KAAK,IAAM;IACnDA,KAAK,CAACC,cAAc,CAAC,CAAC;IACtB;IACAN,YAAY,CAAEG,QAAS,CAAC;IACxBA,QAAQ,GAAI,yDAAyDzD,UAAY,EAAC;IAClFqD,mBAAmB,CAAE,IAAAQ,QAAE,EAAE,mCAAoC,CAAC,EAAE;MAC/DrB,EAAE,EAAEiB,QAAQ;MACZK,IAAI,EAAE;IACP,CAAE,CAAC;EACJ,CAAC;EAED,MAAMC,gBAAgB,GAAG3C,UAAU,CACjC4B,MAAM,CAAE,CAAE;IAAEgB;EAAK,CAAC,KAAMA,IAAI,KAAK,MAAO,CAAC,CACzC1B,GAAG,CAAE,CAAE;IAAE2B,IAAI;IAAED;EAAK,CAAC,MAAQ;IAC7Bf,KAAK,EAAEe,IAAI;IACXE,KAAK,EAAED;EACR,CAAC,CAAG,CAAC;EACN,MAAME,mBAAmB,IAAApE,qBAAA,GACxByB,cAAc,EAAE4C,MAAM,CACrB,CAAEC,WAAW,EAAEC,QAAQ,MAAQ;IAC9B,GAAGD,WAAW;IACd,CAAEC,QAAQ,CAACL,IAAI,GAAIK;EACpB,CAAC,CAAE,EACH,CAAC,CACF,CAAC,cAAAvE,qBAAA,cAAAA,qBAAA,GAAI,CAAC,CAAC;EACR,MAAMwE,gBAAgB,GAAKC,MAAM,IAAM;IACtC,MAAMC,eAAe,GAAGD,MAAM,CAACE,IAAI,CAChCC,KAAK,IACN,OAAOA,KAAK,KAAK,QAAQ,IAAI,CAAER,mBAAmB,CAAEQ,KAAK,CAC3D,CAAC;IACD,IAAKF,eAAe,EAAG;MACtB;IACD;IACA;IACA;IACA,MAAMG,aAAa,GAAGJ,MAAM,CAAClC,GAAG,CAAIqC,KAAK,IAAM;MAC9C,OAAO,OAAOA,KAAK,KAAK,QAAQ,GAC7BR,mBAAmB,CAAEQ,KAAK,CAAE,GAC5BA,KAAK;IACT,CAAE,CAAC;IACH;IACA;IACA,IAAKC,aAAa,CAACC,QAAQ,CAAE,IAAK,CAAC,EAAG;MACrC,OAAO,KAAK;IACb;IACA/E,aAAa,CAAE;MAAEO,UAAU,EAAEuE;IAAc,CAAE,CAAC;EAC/C,CAAC;EAED,MAAME,QAAQ,GAAG,CAAC,CAAEzD,WAAW,EAAEgB,MAAM;EACvC,MAAM0C,iBAAiB,GACtB,IAAAlH,QAAA,CAAAmH,aAAA,EAAC5G,YAAA,CAAA6G,iBAAiB,QACjB,IAAApH,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAiH,SAAS;IAACC,KAAK,EAAG,IAAAtB,QAAE,EAAE,cAAe;EAAG,GACxC,IAAAhG,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAmH,aAAa;IACblB,KAAK,EAAG,IAAAL,QAAE,EAAE,cAAe,CAAG;IAC9BwB,OAAO,EAAG5E,kBAAoB;IAC9B6E,QAAQ,EAAKrC,KAAK,IACjBnD,aAAa,CAAE;MAAEW,kBAAkB,EAAEwC;IAAM,CAAE;EAC7C,CACD,CAAC,EACAxC,kBAAkB,IACnB,IAAA5C,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAsH,YAAY;IACZrB,KAAK,EAAG,IAAAL,QAAE,EAAE,OAAQ,CAAG;IACvB2B,QAAQ,EAAGhF,uBAAyB;IACpCiF,OAAO,EAAG,CACT;MAAEvB,KAAK,EAAE,IAAAL,QAAE,EAAE,SAAU,CAAC;MAAEZ,KAAK,EAAE;IAAU,CAAC,EAC5C;MACCiB,KAAK,EAAE,IAAAL,QAAE,EAAE,WAAY,CAAC;MACxBZ,KAAK,EAAE;IACR,CAAC,CACC;IACHqC,QAAQ,EAAKrC,KAAK,IACjBnD,aAAa,CAAE;MACdU,uBAAuB,EAAEyC;IAC1B,CAAE;EACF,CACD,CACD,EACCxC,kBAAkB,IACnBD,uBAAuB,KAAK,SAAS,IACpC,IAAA3C,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAyH,YAAY;IACZC,uBAAuB;IACvBC,qBAAqB;IACrB1B,KAAK,EAAG,IAAAL,QAAE,EAAE,qBAAsB,CAAG;IACrCZ,KAAK,EAAGnC,aAAe;IACvBwE,QAAQ,EAAKrC,KAAK,IACjBnD,aAAa,CAAE;MAAEgB,aAAa,EAAEmC;IAAM,CAAE,CACxC;IACD4C,GAAG,EAAGC,6BAAoB;IAC1BC,GAAG,EAAGC;EAAoB,CAC1B,CAEO,CAAC,EAEZ,IAAAnI,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAiH,SAAS;IAACC,KAAK,EAAG,IAAAtB,QAAE,EAAE,WAAY;EAAG,GACrC,IAAAhG,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAmH,aAAa;IACbO,uBAAuB;IACvBzB,KAAK,EAAG,IAAAL,QAAE,EAAE,qBAAsB,CAAG;IACrCwB,OAAO,EAAG1E,aAAe;IACzB2E,QAAQ,EAAKrC,KAAK,IACjBnD,aAAa,CAAE;MAAEa,aAAa,EAAEsC;IAAM,CAAE;EACxC,CACD,CAAC,EACF,IAAApF,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAmH,aAAa;IACbO,uBAAuB;IACvBzB,KAAK,EAAG,IAAAL,QAAE,EAAE,mBAAoB,CAAG;IACnCwB,OAAO,EAAG3E,eAAiB;IAC3B4E,QAAQ,EAAKrC,KAAK,IACjBnD,aAAa,CAAE;MAAEY,eAAe,EAAEuC;IAAM,CAAE;EAC1C,CACD,CACS,CAAC,EAEZ,IAAApF,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAiH,SAAS;IAACC,KAAK,EAAG,IAAAtB,QAAE,EAAE,gBAAiB;EAAG,GAC1C,IAAAhG,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAmH,aAAa;IACbO,uBAAuB;IACvBzB,KAAK,EAAG,IAAAL,QAAE,EAAE,wBAAyB,CAAG;IACxCwB,OAAO,EAAG9E,oBAAsB;IAChC+E,QAAQ,EAAKrC,KAAK,IACjBnD,aAAa,CAAE;MAAES,oBAAoB,EAAE0C;IAAM,CAAE;EAC/C,CACD,CAAC,EACA1C,oBAAoB,IACrB,IAAA1C,QAAA,CAAAmH,aAAA,EAAAnH,QAAA,CAAAoI,QAAA,QACC,IAAApI,QAAA,CAAAmH,aAAA,EAAC5G,YAAA,CAAA8H,8BAAgB;IAChBZ,QAAQ,EAAKrC,KAAK,IAAM;MACvB,MAAMkD,QAAQ,GAAG,CAAC,CAAC;MACnB,IAAKlD,KAAK,CAACmD,cAAc,CAAE,OAAQ,CAAC,EAAG;QACtCD,QAAQ,CAAClF,sBAAsB,GAC9BgC,KAAK,CAACE,KAAK;MACb;MACA,IAAKF,KAAK,CAACmD,cAAc,CAAE,QAAS,CAAC,EAAG;QACvCD,QAAQ,CAACjF,uBAAuB,GAC/B+B,KAAK,CAACG,MAAM;MACd;MACAtD,aAAa,CAAEqG,QAAS,CAAC;IAC1B,CAAG;IACHnC,IAAI,EAAGhD,qBAAuB;IAC9BmC,KAAK,EAAGlC,sBAAwB;IAChCmC,MAAM,EAAGlC,uBAAyB;IAClCmF,UAAU,EAAG/E,iBAAmB;IAChCgF,WAAW,EAAG/E,kBAAoB;IAClCwC,gBAAgB,EAAGA,gBAAkB;IACrCwC,aAAa,EAAG,IAAA1C,QAAE,EACjB,sCACD,CAAG;IACH2C,aAAa,EAAKvD,KAAK,IACtBnD,aAAa,CAAE;MACdkB,qBAAqB,EAAEiC,KAAK;MAC5BhC,sBAAsB,EAAEwF,SAAS;MACjCvF,uBAAuB,EAAEuF;IAC1B,CAAE;EACF,CACD,CAAC,EACF,IAAA5I,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAyI,WAAW;IAACC,SAAS,EAAC;EAA6C,GACnE,IAAA9I,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAyI,WAAW,CAACE,WAAW,QACrB,IAAA/C,QAAE,EAAE,iBAAkB,CACA,CAAC,EAC1B,IAAAhG,QAAA,CAAAmH,aAAA,EAAC5G,YAAA,CAAAyI,qBAAqB;IACrB5D,KAAK,EAAGlC,kBAAoB;IAC5BuE,QAAQ,EAAKrC,KAAK,IACjBnD,aAAa,CAAE;MACdiB,kBAAkB,EAAEkC;IACrB,CAAE,CACF;IACD6D,QAAQ,EAAG,CAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAI;IAC1CC,WAAW,EAAG;EAAO,CACrB,CACW,CAAC,EACd,IAAAlJ,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAmH,aAAa;IACbO,uBAAuB;IACvBzB,KAAK,EAAG,IAAAL,QAAE,EAAE,4BAA6B,CAAG;IAC5CwB,OAAO,EAAGlE,sBAAwB;IAClCmE,QAAQ,EAAKrC,KAAK,IACjBnD,aAAa,CAAE;MACdqB,sBAAsB,EAAE8B;IACzB,CAAE;EACF,CACD,CACA,CAEO,CAAC,EAEZ,IAAApF,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAiH,SAAS;IAACC,KAAK,EAAG,IAAAtB,QAAE,EAAE,uBAAwB;EAAG,GACjD,IAAAhG,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAA+I,aAAa;IACN7G,KAAK;IAAEC,OAAO;IACrB6G,aAAa,EAAG/G,WAAa;IAC7BgH,aAAa,EAAKjE,KAAK,IACtBnD,aAAa,CAAE;MAAEK,KAAK,EAAE8C;IAAM,CAAE,CAChC;IACDkE,eAAe,EAAKlE,KAAK,IACxBnD,aAAa,CAAE;MAAEM,OAAO,EAAE6C;IAAM,CAAE,CAClC;IACDmE,qBAAqB,EAAKnE,KAAK,IAC9BnD,aAAa,CAAE;MAAEI,WAAW,EAAE+C;IAAM,CAAE,CACtC;IACDkB,mBAAmB,EAAGA,mBAAqB;IAC3CkD,gBAAgB,EAAG9C,gBAAkB;IACrC+C,kBAAkB,EAAGjH,UAAY;IACjCkH,cAAc,EAAKtE,KAAK,IACvBnD,aAAa,CAAE;MACdQ,cAAc,EACb,EAAE,KAAK2C,KAAK,GAAGuE,MAAM,CAAEvE,KAAM,CAAC,GAAGwD;IACnC,CAAE,CACF;IACDhF,UAAU,EAAGA,UAAU,aAAVA,UAAU,cAAVA,UAAU,GAAI,EAAI;IAC/BgG,gBAAgB,EAAGnH;EAAgB,CACnC,CAAC,EAEAM,UAAU,KAAK,MAAM,IACtB,IAAA/C,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAyH,YAAY;IACZC,uBAAuB;IACvBC,qBAAqB;IACrB1B,KAAK,EAAG,IAAAL,QAAE,EAAE,SAAU,CAAG;IACzBZ,KAAK,EAAGpC,OAAS;IACjByE,QAAQ,EAAKrC,KAAK,IACjBnD,aAAa,CAAE;MAAEe,OAAO,EAAEoC;IAAM,CAAE,CAClC;IACD4C,GAAG,EAAG,CAAG;IACTE,GAAG,EACF,CAAEjB,QAAQ,GACP4C,4BAAiB,GACjBC,IAAI,CAAC9B,GAAG,CACR6B,4BAAiB,EACjBrG,WAAW,CAACgB,MACZ,CACH;IACDuF,QAAQ;EAAA,CACR,CAEQ,CACO,CACnB;EAED,MAAMC,UAAU,GAAG,IAAAC,0BAAa,EAAE;IACjCnB,SAAS,EAAE,IAAAoB,mBAAU,EAAE;MACtB,6BAA6B,EAAE,IAAI;MACnC,SAAS,EAAEnH,UAAU,KAAK,MAAM;MAChC,WAAW,EAAEF,eAAe;MAC5B,YAAY,EAAEC,aAAa;MAC3B,CAAG,WAAWE,OAAS,EAAC,GAAID,UAAU,KAAK;IAC5C,CAAE;EACH,CAAE,CAAC;EAEH,IAAK,CAAEkE,QAAQ,EAAG;IACjB,OACC,IAAAjH,QAAA,CAAAmH,aAAA;MAAA,GAAU6C;IAAU,GACjB9C,iBAAiB,EACnB,IAAAlH,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAA+J,WAAW;MAACC,IAAI,EAAGC,UAAK;MAAChE,KAAK,EAAG,IAAAL,QAAE,EAAE,cAAe;IAAG,GACrD,CAAEsE,KAAK,CAACC,OAAO,CAAE/G,WAAY,CAAC,GAC/B,IAAAxD,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAoK,OAAO,MAAE,CAAC,GAEX,IAAAxE,QAAE,EAAE,iBAAkB,CAEX,CACT,CAAC;EAER;;EAEA;EACA,MAAMyE,YAAY,GACjBjH,WAAW,CAACgB,MAAM,GAAGnC,WAAW,GAC7BmB,WAAW,CAACkH,KAAK,CAAE,CAAC,EAAErI,WAAY,CAAC,GACnCmB,WAAW;EAEf,MAAMmH,cAAc,GAAG,CACtB;IACCP,IAAI,EAAEQ,WAAI;IACVtD,KAAK,EAAE,IAAAtB,QAAE,EAAE,WAAY,CAAC;IACxB6E,OAAO,EAAEA,CAAA,KAAM5I,aAAa,CAAE;MAAEc,UAAU,EAAE;IAAO,CAAE,CAAC;IACtD+H,QAAQ,EAAE/H,UAAU,KAAK;EAC1B,CAAC,EACD;IACCqH,IAAI,EAAEW,WAAI;IACVzD,KAAK,EAAE,IAAAtB,QAAE,EAAE,WAAY,CAAC;IACxB6E,OAAO,EAAEA,CAAA,KAAM5I,aAAa,CAAE;MAAEc,UAAU,EAAE;IAAO,CAAE,CAAC;IACtD+H,QAAQ,EAAE/H,UAAU,KAAK;EAC1B,CAAC,CACD;EAED,MAAMiI,UAAU,GAAG,IAAA1G,iBAAW,EAAC,CAAC,CAAC2G,OAAO,CAACC,IAAI;EAE7C,OACC,IAAAlL,QAAA,CAAAmH,aAAA,eACGD,iBAAiB,EACnB,IAAAlH,QAAA,CAAAmH,aAAA,EAAC5G,YAAA,CAAA4K,aAAa,QACb,IAAAnL,QAAA,CAAAmH,aAAA,EAAC/G,WAAA,CAAAgL,YAAY;IAACnC,QAAQ,EAAG0B;EAAgB,CAAE,CAC7B,CAAC,EAChB,IAAA3K,QAAA,CAAAmH,aAAA;IAAA,GAAS6C;EAAU,GAChBS,YAAY,CAAChG,GAAG,CAAIrD,IAAI,IAAM;IAC/B,MAAMiK,YAAY,GAAGjK,IAAI,CAACkG,KAAK,CAACgE,QAAQ,CAACC,IAAI,CAAC,CAAC;IAC/C,IAAIC,OAAO,GAAGpK,IAAI,CAACoK,OAAO,CAACF,QAAQ;IACnC,MAAMG,aAAa,GAAG7H,UAAU,EAAE8H,IAAI,CACnC1G,MAAM,IAAMA,MAAM,CAACL,EAAE,KAAKvD,IAAI,CAAC4D,MAClC,CAAC;IAED,MAAM2G,cAAc,GAAGC,QAAQ,CAACzE,aAAa,CAAE,KAAM,CAAC;IACtDwE,cAAc,CAACE,SAAS,GAAGL,OAAO;IAElCA,OAAO,GACNG,cAAc,CAACG,WAAW,IAC1BH,cAAc,CAACI,SAAS,IACxB,EAAE;IAEH,MAAM;MAAEtK,GAAG,EAAEuK,cAAc;MAAEnK,GAAG,EAAEoK;IAAiB,CAAC,GACnD9K,uBAAuB,CAAEC,IAAI,EAAE+B,qBAAsB,CAAC;IACvD,MAAM+I,YAAY,GAAG,IAAAhC,mBAAU,EAAE;MAChC,uCAAuC,EAAE,IAAI;MAC7C,CAAG,QAAQhH,kBAAoB,EAAC,GAC/B,CAAC,CAAEA;IACL,CAAE,CAAC;IACH,MAAMiJ,mBAAmB,GACxBzJ,oBAAoB,IAAIsJ,cAAc;IACvC,MAAMI,aAAa,GAAGD,mBAAmB,IACxC,IAAAnM,QAAA,CAAAmH,aAAA;MACCkF,GAAG,EAAGL,cAAgB;MACtBnK,GAAG,EAAGoK,gBAAkB;MACxBK,KAAK,EAAG;QACPC,QAAQ,EAAEnJ,sBAAsB;QAChCoJ,SAAS,EAAEnJ;MACZ;IAAG,CACH,CACD;IAED,MAAMoJ,aAAa,GAClBxJ,aAAa,GAAGuI,OAAO,CAACD,IAAI,CAAC,CAAC,CAACmB,KAAK,CAAE,GAAI,CAAC,CAAClI,MAAM,IAClDpD,IAAI,CAACoK,OAAO,CAACmB,GAAG,KAAK,EAAE;IAExB,MAAMC,WAAW,GAAGH,aAAa,GAChC,IAAAzM,QAAA,CAAAmH,aAAA,EAAAnH,QAAA,CAAAoI,QAAA,QACGoD,OAAO,CACPD,IAAI,CAAC,CAAC,CACNmB,KAAK,CAAE,GAAG,EAAEzJ,aAAc,CAAC,CAC3B4J,IAAI,CAAE,GAAI,CAAC,EACX,IAAAC,iCAAwB,EACzB,IAAAC,aAAO,GACN;IACA,IAAA/G,QAAE,EAAE,kCAAmC,CAAC,EACxC,IAAAA,QAAE,EAAE,WAAY,CAAC,EACjBqF,YAAY,IAAI,IAAArF,QAAE,EAAE,YAAa,CAClC,CAAC,EACD;MACCgH,CAAC;MACA;MACA,IAAAhN,QAAA,CAAAmH,aAAA;QACC2B,SAAS,EAAC,kCAAkC;QAC5CmE,IAAI,EAAG7L,IAAI,CAAC8L,IAAM;QAClBC,GAAG,EAAC,qBAAqB;QACzBtC,OAAO,EACNhF;MACA,CACD,CACD;MACDuH,IAAI,EACH,IAAApN,QAAA,CAAAmH,aAAA;QAAM2B,SAAS,EAAC;MAAoB,CAAE;IAExC,CACD,CACC,CAAC,GAEH0C,OACA;IAED,OACC,IAAAxL,QAAA,CAAAmH,aAAA;MAAIkG,GAAG,EAAGjM,IAAI,CAACuD;IAAI,GAChBwH,mBAAmB,IACpB,IAAAnM,QAAA,CAAAmH,aAAA;MAAK2B,SAAS,EAAGoD;IAAc,GAC5B5I,sBAAsB,GACvB,IAAAtD,QAAA,CAAAmH,aAAA;MACC2B,SAAS,EAAC,mCAAmC;MAC7CmE,IAAI,EAAG7L,IAAI,CAAC8L,IAAM;MAClBC,GAAG,EAAC,qBAAqB;MACzBtC,OAAO,EACNhF;IACA,GAECuG,aACA,CAAC,GAEJA,aAEG,CACL,EACD,IAAApM,QAAA,CAAAmH,aAAA;MACC8F,IAAI,EAAG7L,IAAI,CAAC8L,IAAM;MAClBC,GAAG,EAAC,qBAAqB;MACzBG,uBAAuB,EACtB,CAAC,CAAEjC,YAAY,GACZ;QACAkC,MAAM,EAAElC;MACR,CAAC,GACDzC,SACH;MACDiC,OAAO,EAAGhF;IAAgC,GAExC,CAAEwF,YAAY,GAAG,IAAArF,QAAE,EAAE,YAAa,CAAC,GAAG,IACtC,CAAC,EACFlD,aAAa,IAAI2I,aAAa,IAC/B,IAAAzL,QAAA,CAAAmH,aAAA;MAAK2B,SAAS,EAAC;IAAoC,GAChD,IAAAiE,aAAO,GACR;IACA,IAAA/G,QAAE,EAAE,OAAQ,CAAC,EACbyF,aAAa,CAACrF,IACf,CACI,CACL,EACCvD,eAAe,IAAIzB,IAAI,CAACoM,QAAQ,IACjC,IAAAxN,QAAA,CAAAmH,aAAA;MACCsG,QAAQ,EAAG,IAAAC,YAAM,EAAE,GAAG,EAAEtM,IAAI,CAACoM,QAAS,CAAG;MACzC1E,SAAS,EAAC;IAAkC,GAE1C,IAAA6E,cAAQ,EAAE3C,UAAU,EAAE5J,IAAI,CAACoM,QAAS,CACjC,CACN,EACC5K,kBAAkB,IACnBD,uBAAuB,KAAK,SAAS,IACpC,IAAA3C,QAAA,CAAAmH,aAAA;MAAK2B,SAAS,EAAC;IAAqC,GACjD8D,WACE,CACL,EACAhK,kBAAkB,IACnBD,uBAAuB,KAAK,WAAW,IACtC,IAAA3C,QAAA,CAAAmH,aAAA;MACC2B,SAAS,EAAC,0CAA0C;MACpDwE,uBAAuB,EAAG;QACzBC,MAAM,EAAEnM,IAAI,CAACwM,OAAO,CAACjB,GAAG,CAACpB,IAAI,CAAC;MAC/B;IAAG,CACH,CAEA,CAAC;EAEP,CAAE,CACC,CACA,CAAC;AAER"}
1
+ {"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_components","_i18n","_date","_blockEditor","_data","_icons","_coreData","_notices","_compose","_constants","CATEGORIES_LIST_QUERY","per_page","context","USERS_LIST_QUERY","has_published_posts","getFeaturedImageDetails","post","size","_image$media_details$","image","_embedded","url","media_details","sizes","source_url","alt","alt_text","LatestPostsEdit","attributes","setAttributes","_categoriesList$reduc","instanceId","useInstanceId","postsToShow","order","orderBy","categories","selectedAuthor","displayFeaturedImage","displayPostContentRadio","displayPostContent","displayPostDate","displayAuthor","postLayout","columns","excerptLength","featuredImageAlign","featuredImageSizeSlug","featuredImageSizeWidth","featuredImageSizeHeight","addLinkToFeaturedImage","imageSizes","latestPosts","defaultImageWidth","defaultImageHeight","categoriesList","authorList","useSelect","select","_settings$imageDimens","_settings$imageDimens2","getEntityRecords","getUsers","coreStore","settings","blockEditorStore","getSettings","catIds","length","map","cat","id","latestPostsQuery","Object","fromEntries","entries","author","orderby","_embed","filter","value","imageDimensions","width","height","createWarningNotice","removeNotice","useDispatch","noticeStore","noticeId","showRedirectionPreventedNotice","event","preventDefault","__","type","imageSizeOptions","slug","name","label","categorySuggestions","reduce","accumulator","category","selectCategories","tokens","hasNoSuggestion","some","token","allCategories","includes","hasPosts","inspectorControls","createElement","InspectorControls","PanelBody","title","ToggleControl","checked","onChange","RadioControl","selected","options","RangeControl","__nextHasNoMarginBottom","__next40pxDefaultSize","min","MIN_EXCERPT_LENGTH","max","MAX_EXCERPT_LENGTH","Fragment","__experimentalImageSizeControl","newAttrs","hasOwnProperty","imageWidth","imageHeight","imageSizeHelp","onChangeImage","undefined","BaseControl","className","VisualLabel","BlockAlignmentToolbar","controls","isCollapsed","QueryControls","numberOfItems","onOrderChange","onOrderByChange","onNumberOfItemsChange","onCategoryChange","selectedCategories","onAuthorChange","Number","selectedAuthorId","MAX_POSTS_COLUMNS","Math","required","blockProps","useBlockProps","classnames","Placeholder","icon","pin","Array","isArray","Spinner","displayPosts","slice","layoutControls","list","onClick","isActive","grid","dateFormat","formats","date","BlockControls","ToolbarGroup","titleTrimmed","rendered","trim","excerpt","currentAuthor","find","excerptElement","document","innerHTML","textContent","innerText","imageSourceUrl","featuredImageAlt","imageClasses","renderFeaturedImage","featuredImage","src","style","maxWidth","maxHeight","needsReadMore","split","raw","postExcerpt","join","createInterpolateElement","sprintf","a","href","link","rel","span","key","dangerouslySetInnerHTML","__html","date_gmt","dateTime","format","dateI18n","content"],"sources":["@wordpress/block-library/src/latest-posts/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBaseControl,\n\tPanelBody,\n\tPlaceholder,\n\tQueryControls,\n\tRadioControl,\n\tRangeControl,\n\tSpinner,\n\tToggleControl,\n\tToolbarGroup,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { dateI18n, format, getSettings } from '@wordpress/date';\nimport {\n\tInspectorControls,\n\tBlockAlignmentToolbar,\n\tBlockControls,\n\t__experimentalImageSizeControl as ImageSizeControl,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { pin, list, grid } from '@wordpress/icons';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticeStore } from '@wordpress/notices';\nimport { useInstanceId } from '@wordpress/compose';\nimport { createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport {\n\tMIN_EXCERPT_LENGTH,\n\tMAX_EXCERPT_LENGTH,\n\tMAX_POSTS_COLUMNS,\n} from './constants';\n\n/**\n * Module Constants\n */\nconst CATEGORIES_LIST_QUERY = {\n\tper_page: -1,\n\tcontext: 'view',\n};\nconst USERS_LIST_QUERY = {\n\tper_page: -1,\n\thas_published_posts: [ 'post' ],\n\tcontext: 'view',\n};\n\nfunction getFeaturedImageDetails( post, size ) {\n\tconst image = post._embedded?.[ 'wp:featuredmedia' ]?.[ '0' ];\n\n\treturn {\n\t\turl:\n\t\t\timage?.media_details?.sizes?.[ size ]?.source_url ??\n\t\t\timage?.source_url,\n\t\talt: image?.alt_text,\n\t};\n}\n\nexport default function LatestPostsEdit( { attributes, setAttributes } ) {\n\tconst instanceId = useInstanceId( LatestPostsEdit );\n\tconst {\n\t\tpostsToShow,\n\t\torder,\n\t\torderBy,\n\t\tcategories,\n\t\tselectedAuthor,\n\t\tdisplayFeaturedImage,\n\t\tdisplayPostContentRadio,\n\t\tdisplayPostContent,\n\t\tdisplayPostDate,\n\t\tdisplayAuthor,\n\t\tpostLayout,\n\t\tcolumns,\n\t\texcerptLength,\n\t\tfeaturedImageAlign,\n\t\tfeaturedImageSizeSlug,\n\t\tfeaturedImageSizeWidth,\n\t\tfeaturedImageSizeHeight,\n\t\taddLinkToFeaturedImage,\n\t} = attributes;\n\tconst {\n\t\timageSizes,\n\t\tlatestPosts,\n\t\tdefaultImageWidth,\n\t\tdefaultImageHeight,\n\t\tcategoriesList,\n\t\tauthorList,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getUsers } = select( coreStore );\n\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\tconst catIds =\n\t\t\t\tcategories && categories.length > 0\n\t\t\t\t\t? categories.map( ( cat ) => cat.id )\n\t\t\t\t\t: [];\n\t\t\tconst latestPostsQuery = Object.fromEntries(\n\t\t\t\tObject.entries( {\n\t\t\t\t\tcategories: catIds,\n\t\t\t\t\tauthor: selectedAuthor,\n\t\t\t\t\torder,\n\t\t\t\t\torderby: orderBy,\n\t\t\t\t\tper_page: postsToShow,\n\t\t\t\t\t_embed: 'wp:featuredmedia',\n\t\t\t\t} ).filter( ( [ , value ] ) => typeof value !== 'undefined' )\n\t\t\t);\n\n\t\t\treturn {\n\t\t\t\tdefaultImageWidth:\n\t\t\t\t\tsettings.imageDimensions?.[ featuredImageSizeSlug ]\n\t\t\t\t\t\t?.width ?? 0,\n\t\t\t\tdefaultImageHeight:\n\t\t\t\t\tsettings.imageDimensions?.[ featuredImageSizeSlug ]\n\t\t\t\t\t\t?.height ?? 0,\n\t\t\t\timageSizes: settings.imageSizes,\n\t\t\t\tlatestPosts: getEntityRecords(\n\t\t\t\t\t'postType',\n\t\t\t\t\t'post',\n\t\t\t\t\tlatestPostsQuery\n\t\t\t\t),\n\t\t\t\tcategoriesList: getEntityRecords(\n\t\t\t\t\t'taxonomy',\n\t\t\t\t\t'category',\n\t\t\t\t\tCATEGORIES_LIST_QUERY\n\t\t\t\t),\n\t\t\t\tauthorList: getUsers( USERS_LIST_QUERY ),\n\t\t\t};\n\t\t},\n\t\t[\n\t\t\tfeaturedImageSizeSlug,\n\t\t\tpostsToShow,\n\t\t\torder,\n\t\t\torderBy,\n\t\t\tcategories,\n\t\t\tselectedAuthor,\n\t\t]\n\t);\n\n\t// If a user clicks to a link prevent redirection and show a warning.\n\tconst { createWarningNotice, removeNotice } = useDispatch( noticeStore );\n\tlet noticeId;\n\tconst showRedirectionPreventedNotice = ( event ) => {\n\t\tevent.preventDefault();\n\t\t// Remove previous warning if any, to show one at a time per block.\n\t\tremoveNotice( noticeId );\n\t\tnoticeId = `block-library/core/latest-posts/redirection-prevented/${ instanceId }`;\n\t\tcreateWarningNotice( __( 'Links are disabled in the editor.' ), {\n\t\t\tid: noticeId,\n\t\t\ttype: 'snackbar',\n\t\t} );\n\t};\n\n\tconst imageSizeOptions = imageSizes\n\t\t.filter( ( { slug } ) => slug !== 'full' )\n\t\t.map( ( { name, slug } ) => ( {\n\t\t\tvalue: slug,\n\t\t\tlabel: name,\n\t\t} ) );\n\tconst categorySuggestions =\n\t\tcategoriesList?.reduce(\n\t\t\t( accumulator, category ) => ( {\n\t\t\t\t...accumulator,\n\t\t\t\t[ category.name ]: category,\n\t\t\t} ),\n\t\t\t{}\n\t\t) ?? {};\n\tconst selectCategories = ( tokens ) => {\n\t\tconst hasNoSuggestion = tokens.some(\n\t\t\t( token ) =>\n\t\t\t\ttypeof token === 'string' && ! categorySuggestions[ token ]\n\t\t);\n\t\tif ( hasNoSuggestion ) {\n\t\t\treturn;\n\t\t}\n\t\t// Categories that are already will be objects, while new additions will be strings (the name).\n\t\t// allCategories nomalizes the array so that they are all objects.\n\t\tconst allCategories = tokens.map( ( token ) => {\n\t\t\treturn typeof token === 'string'\n\t\t\t\t? categorySuggestions[ token ]\n\t\t\t\t: token;\n\t\t} );\n\t\t// We do nothing if the category is not selected\n\t\t// from suggestions.\n\t\tif ( allCategories.includes( null ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tsetAttributes( { categories: allCategories } );\n\t};\n\n\tconst hasPosts = !! latestPosts?.length;\n\tconst inspectorControls = (\n\t\t<InspectorControls>\n\t\t\t<PanelBody title={ __( 'Post content' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\tlabel={ __( 'Post content' ) }\n\t\t\t\t\tchecked={ displayPostContent }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostContent: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayPostContent && (\n\t\t\t\t\t<RadioControl\n\t\t\t\t\t\tlabel={ __( 'Show:' ) }\n\t\t\t\t\t\tselected={ displayPostContentRadio }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Excerpt' ), value: 'excerpt' },\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tlabel: __( 'Full post' ),\n\t\t\t\t\t\t\t\tvalue: 'full_post',\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayPostContentRadio: value,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ displayPostContent &&\n\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Max number of words' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ MIN_EXCERPT_LENGTH }\n\t\t\t\t\t\t\tmax={ MAX_EXCERPT_LENGTH }\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Post meta' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display author name' ) }\n\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayAuthor: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display post date' ) }\n\t\t\t\t\tchecked={ displayPostDate }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayPostDate: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Featured image' ) }>\n\t\t\t\t<ToggleControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Display featured image' ) }\n\t\t\t\t\tchecked={ displayFeaturedImage }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { displayFeaturedImage: value } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t{ displayFeaturedImage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<ImageSizeControl\n\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\tconst newAttrs = {};\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'width' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeWidth =\n\t\t\t\t\t\t\t\t\t\tvalue.width;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( value.hasOwnProperty( 'height' ) ) {\n\t\t\t\t\t\t\t\t\tnewAttrs.featuredImageSizeHeight =\n\t\t\t\t\t\t\t\t\t\tvalue.height;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tsetAttributes( newAttrs );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\tslug={ featuredImageSizeSlug }\n\t\t\t\t\t\t\twidth={ featuredImageSizeWidth }\n\t\t\t\t\t\t\theight={ featuredImageSizeHeight }\n\t\t\t\t\t\t\timageWidth={ defaultImageWidth }\n\t\t\t\t\t\t\timageHeight={ defaultImageHeight }\n\t\t\t\t\t\t\timageSizeOptions={ imageSizeOptions }\n\t\t\t\t\t\t\timageSizeHelp={ __(\n\t\t\t\t\t\t\t\t'Select the size of the source image.'\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tonChangeImage={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeSlug: value,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeWidth: undefined,\n\t\t\t\t\t\t\t\t\tfeaturedImageSizeHeight: undefined,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BaseControl className=\"editor-latest-posts-image-alignment-control\">\n\t\t\t\t\t\t\t<BaseControl.VisualLabel>\n\t\t\t\t\t\t\t\t{ __( 'Image alignment' ) }\n\t\t\t\t\t\t\t</BaseControl.VisualLabel>\n\t\t\t\t\t\t\t<BlockAlignmentToolbar\n\t\t\t\t\t\t\t\tvalue={ featuredImageAlign }\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\tfeaturedImageAlign: 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\tcontrols={ [ 'left', 'center', 'right' ] }\n\t\t\t\t\t\t\t\tisCollapsed={ false }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</BaseControl>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Add link to featured image' ) }\n\t\t\t\t\t\t\tchecked={ addLinkToFeaturedImage }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\taddLinkToFeaturedImage: value,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\n\t\t\t<PanelBody title={ __( 'Sorting and filtering' ) }>\n\t\t\t\t<QueryControls\n\t\t\t\t\t{ ...{ order, orderBy } }\n\t\t\t\t\tnumberOfItems={ postsToShow }\n\t\t\t\t\tonOrderChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { order: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonOrderByChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { orderBy: value } )\n\t\t\t\t\t}\n\t\t\t\t\tonNumberOfItemsChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { postsToShow: value } )\n\t\t\t\t\t}\n\t\t\t\t\tcategorySuggestions={ categorySuggestions }\n\t\t\t\t\tonCategoryChange={ selectCategories }\n\t\t\t\t\tselectedCategories={ categories }\n\t\t\t\t\tonAuthorChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tselectedAuthor:\n\t\t\t\t\t\t\t\t'' !== value ? Number( value ) : undefined,\n\t\t\t\t\t\t} )\n\t\t\t\t\t}\n\t\t\t\t\tauthorList={ authorList ?? [] }\n\t\t\t\t\tselectedAuthorId={ selectedAuthor }\n\t\t\t\t/>\n\n\t\t\t\t{ postLayout === 'grid' && (\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\tmax={\n\t\t\t\t\t\t\t! hasPosts\n\t\t\t\t\t\t\t\t? MAX_POSTS_COLUMNS\n\t\t\t\t\t\t\t\t: Math.min(\n\t\t\t\t\t\t\t\t\t\tMAX_POSTS_COLUMNS,\n\t\t\t\t\t\t\t\t\t\tlatestPosts.length\n\t\t\t\t\t\t\t\t )\n\t\t\t\t\t\t}\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</PanelBody>\n\t\t</InspectorControls>\n\t);\n\n\tconst blockProps = useBlockProps( {\n\t\tclassName: classnames( {\n\t\t\t'wp-block-latest-posts__list': true,\n\t\t\t'is-grid': postLayout === 'grid',\n\t\t\t'has-dates': displayPostDate,\n\t\t\t'has-author': displayAuthor,\n\t\t\t[ `columns-${ columns }` ]: postLayout === 'grid',\n\t\t} ),\n\t} );\n\n\tif ( ! hasPosts ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t{ inspectorControls }\n\t\t\t\t<Placeholder icon={ pin } label={ __( 'Latest Posts' ) }>\n\t\t\t\t\t{ ! Array.isArray( latestPosts ) ? (\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t__( 'No posts found.' )\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\t// Removing posts from display should be instant.\n\tconst displayPosts =\n\t\tlatestPosts.length > postsToShow\n\t\t\t? latestPosts.slice( 0, postsToShow )\n\t\t\t: latestPosts;\n\n\tconst layoutControls = [\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: __( 'List view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'list' } ),\n\t\t\tisActive: postLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: __( 'Grid view' ),\n\t\t\tonClick: () => setAttributes( { postLayout: 'grid' } ),\n\t\t\tisActive: postLayout === 'grid',\n\t\t},\n\t];\n\n\tconst dateFormat = getSettings().formats.date;\n\n\treturn (\n\t\t<div>\n\t\t\t{ inspectorControls }\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ layoutControls } />\n\t\t\t</BlockControls>\n\t\t\t<ul { ...blockProps }>\n\t\t\t\t{ displayPosts.map( ( post ) => {\n\t\t\t\t\tconst titleTrimmed = post.title.rendered.trim();\n\t\t\t\t\tlet excerpt = post.excerpt.rendered;\n\t\t\t\t\tconst currentAuthor = authorList?.find(\n\t\t\t\t\t\t( author ) => author.id === post.author\n\t\t\t\t\t);\n\n\t\t\t\t\tconst excerptElement = document.createElement( 'div' );\n\t\t\t\t\texcerptElement.innerHTML = excerpt;\n\n\t\t\t\t\texcerpt =\n\t\t\t\t\t\texcerptElement.textContent ||\n\t\t\t\t\t\texcerptElement.innerText ||\n\t\t\t\t\t\t'';\n\n\t\t\t\t\tconst { url: imageSourceUrl, alt: featuredImageAlt } =\n\t\t\t\t\t\tgetFeaturedImageDetails( post, featuredImageSizeSlug );\n\t\t\t\t\tconst imageClasses = classnames( {\n\t\t\t\t\t\t'wp-block-latest-posts__featured-image': true,\n\t\t\t\t\t\t[ `align${ featuredImageAlign }` ]:\n\t\t\t\t\t\t\t!! featuredImageAlign,\n\t\t\t\t\t} );\n\t\t\t\t\tconst renderFeaturedImage =\n\t\t\t\t\t\tdisplayFeaturedImage && imageSourceUrl;\n\t\t\t\t\tconst featuredImage = renderFeaturedImage && (\n\t\t\t\t\t\t<img\n\t\t\t\t\t\t\tsrc={ imageSourceUrl }\n\t\t\t\t\t\t\talt={ featuredImageAlt }\n\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\tmaxWidth: featuredImageSizeWidth,\n\t\t\t\t\t\t\t\tmaxHeight: featuredImageSizeHeight,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\n\t\t\t\t\tconst needsReadMore =\n\t\t\t\t\t\texcerptLength < excerpt.trim().split( ' ' ).length &&\n\t\t\t\t\t\tpost.excerpt.raw === '';\n\n\t\t\t\t\tconst postExcerpt = needsReadMore ? (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t{ excerpt\n\t\t\t\t\t\t\t\t.trim()\n\t\t\t\t\t\t\t\t.split( ' ', excerptLength )\n\t\t\t\t\t\t\t\t.join( ' ' ) }\n\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t/* translators: 1: Hidden accessibility text: Post title */\n\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t'… <a>Read more<span>: %1$s</span></a>'\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\ttitleTrimmed || __( '(no title)' )\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\ta: (\n\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line jsx-a11y/anchor-has-content\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__read-more\"\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noopener noreferrer\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\t\t\tshowRedirectionPreventedNotice\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\tspan: (\n\t\t\t\t\t\t\t\t\t\t<span className=\"screen-reader-text\" />\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\texcerpt\n\t\t\t\t\t);\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<li key={ post.id }>\n\t\t\t\t\t\t\t{ renderFeaturedImage && (\n\t\t\t\t\t\t\t\t<div className={ imageClasses }>\n\t\t\t\t\t\t\t\t\t{ addLinkToFeaturedImage ? (\n\t\t\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-title\"\n\t\t\t\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\t\t\t\tonClick={\n\t\t\t\t\t\t\t\t\t\t\t\tshowRedirectionPreventedNotice\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ featuredImage }\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\tfeaturedImage\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={ post.link }\n\t\t\t\t\t\t\t\trel=\"noreferrer noopener\"\n\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={\n\t\t\t\t\t\t\t\t\t!! titleTrimmed\n\t\t\t\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t\t\t\t__html: titleTrimmed,\n\t\t\t\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tonClick={ showRedirectionPreventedNotice }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ ! titleTrimmed ? __( '(no title)' ) : null }\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t{ displayAuthor && currentAuthor && (\n\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-author\">\n\t\t\t\t\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: byline. %s: current author. */\n\t\t\t\t\t\t\t\t\t\t__( 'by %s' ),\n\t\t\t\t\t\t\t\t\t\tcurrentAuthor.name\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostDate && post.date_gmt && (\n\t\t\t\t\t\t\t\t<time\n\t\t\t\t\t\t\t\t\tdateTime={ format( 'c', post.date_gmt ) }\n\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-date\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ dateI18n( dateFormat, post.date_gmt ) }\n\t\t\t\t\t\t\t\t</time>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'excerpt' && (\n\t\t\t\t\t\t\t\t\t<div className=\"wp-block-latest-posts__post-excerpt\">\n\t\t\t\t\t\t\t\t\t\t{ postExcerpt }\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t{ displayPostContent &&\n\t\t\t\t\t\t\t\tdisplayPostContentRadio === 'full_post' && (\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"wp-block-latest-posts__post-full-content\"\n\t\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={ {\n\t\t\t\t\t\t\t\t\t\t\t__html: post.content.raw.trim(),\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</li>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ul>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
@@ -80,6 +80,19 @@ function useMerge(clientId, onMerge) {
80
80
  return getBlockOrder(order[0])[0];
81
81
  }
82
82
  return forward => {
83
+ function mergeWithNested(clientIdA, clientIdB) {
84
+ registry.batch(() => {
85
+ // When merging a sub list item with a higher next list item, we
86
+ // also need to move any nested list items. Check if there's a
87
+ // listed list, and append its nested list items to the current
88
+ // list.
89
+ const [nestedListClientId] = getBlockOrder(clientIdB);
90
+ if (nestedListClientId) {
91
+ moveBlocksToPosition(getBlockOrder(nestedListClientId), nestedListClientId, getBlockRootClientId(clientIdA));
92
+ }
93
+ mergeBlocks(clientIdA, clientIdB);
94
+ });
95
+ }
83
96
  if (forward) {
84
97
  const nextBlockClientId = getNextId(clientId);
85
98
  if (!nextBlockClientId) {
@@ -89,10 +102,7 @@ function useMerge(clientId, onMerge) {
89
102
  if (getParentListItemId(nextBlockClientId)) {
90
103
  outdentListItem(nextBlockClientId);
91
104
  } else {
92
- registry.batch(() => {
93
- moveBlocksToPosition(getBlockOrder(nextBlockClientId), nextBlockClientId, getPreviousBlockClientId(nextBlockClientId));
94
- mergeBlocks(clientId, nextBlockClientId);
95
- });
105
+ mergeWithNested(clientId, nextBlockClientId);
96
106
  }
97
107
  } else {
98
108
  // Merging is only done from the top level. For lowel levels, the
@@ -102,17 +112,7 @@ function useMerge(clientId, onMerge) {
102
112
  outdentListItem(clientId);
103
113
  } else if (previousBlockClientId) {
104
114
  const trailingId = getTrailingId(previousBlockClientId);
105
- registry.batch(() => {
106
- // When merging a list item with a previous trailing list
107
- // item, we also need to move any nested list items. First,
108
- // check if there's a listed list. If there's a nested list,
109
- // append its nested list items to the trailing list.
110
- const [nestedListClientId] = getBlockOrder(clientId);
111
- if (nestedListClientId) {
112
- moveBlocksToPosition(getBlockOrder(nestedListClientId), nestedListClientId, getBlockRootClientId(trailingId));
113
- }
114
- mergeBlocks(trailingId, clientId);
115
- });
115
+ mergeWithNested(trailingId, clientId);
116
116
  } else {
117
117
  onMerge(forward);
118
118
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_blockEditor","_useOutdentListItem","_interopRequireDefault","useMerge","clientId","onMerge","registry","useRegistry","getPreviousBlockClientId","getNextBlockClientId","getBlockOrder","getBlockRootClientId","getBlockName","useSelect","blockEditorStore","mergeBlocks","moveBlocksToPosition","useDispatch","outdentListItem","useOutdentListItem","getTrailingId","id","order","length","getParentListItemId","listId","parentListItemId","_getNextId","next","getNextId","forward","nextBlockClientId","batch","previousBlockClientId","trailingId","nestedListClientId"],"sources":["@wordpress/block-library/src/list-item/hooks/use-merge.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRegistry, useDispatch, useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport useOutdentListItem from './use-outdent-list-item';\n\nexport default function useMerge( clientId, onMerge ) {\n\tconst registry = useRegistry();\n\tconst {\n\t\tgetPreviousBlockClientId,\n\t\tgetNextBlockClientId,\n\t\tgetBlockOrder,\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t} = useSelect( blockEditorStore );\n\tconst { mergeBlocks, moveBlocksToPosition } =\n\t\tuseDispatch( blockEditorStore );\n\tconst [ , outdentListItem ] = useOutdentListItem( clientId );\n\n\tfunction getTrailingId( id ) {\n\t\tconst order = getBlockOrder( id );\n\n\t\tif ( ! order.length ) {\n\t\t\treturn id;\n\t\t}\n\n\t\treturn getTrailingId( order[ order.length - 1 ] );\n\t}\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== 'core/list-item' ) return;\n\t\treturn parentListItemId;\n\t}\n\n\t/**\n\t * Return the next list item with respect to the given list item. If none,\n\t * return the next list item of the parent list item if it exists.\n\t *\n\t * @param {string} id A list item client ID.\n\t * @return {string?} The client ID of the next list item.\n\t */\n\tfunction _getNextId( id ) {\n\t\tconst next = getNextBlockClientId( id );\n\t\tif ( next ) return next;\n\t\tconst parentListItemId = getParentListItemId( id );\n\t\tif ( ! parentListItemId ) return;\n\t\treturn _getNextId( parentListItemId );\n\t}\n\n\t/**\n\t * Given a client ID, return the client ID of the list item on the next\n\t * line, regardless of indentation level.\n\t *\n\t * @param {string} id The client ID of the current list item.\n\t * @return {string?} The client ID of the next list item.\n\t */\n\tfunction getNextId( id ) {\n\t\tconst order = getBlockOrder( id );\n\n\t\t// If the list item does not have a nested list, return the next list\n\t\t// item.\n\t\tif ( ! order.length ) {\n\t\t\treturn _getNextId( id );\n\t\t}\n\n\t\t// Get the first list item in the nested list.\n\t\treturn getBlockOrder( order[ 0 ] )[ 0 ];\n\t}\n\n\treturn ( forward ) => {\n\t\tif ( forward ) {\n\t\t\tconst nextBlockClientId = getNextId( clientId );\n\n\t\t\tif ( ! nextBlockClientId ) {\n\t\t\t\tonMerge( forward );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( getParentListItemId( nextBlockClientId ) ) {\n\t\t\t\toutdentListItem( nextBlockClientId );\n\t\t\t} else {\n\t\t\t\tregistry.batch( () => {\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tgetBlockOrder( nextBlockClientId ),\n\t\t\t\t\t\tnextBlockClientId,\n\t\t\t\t\t\tgetPreviousBlockClientId( nextBlockClientId )\n\t\t\t\t\t);\n\t\t\t\t\tmergeBlocks( clientId, nextBlockClientId );\n\t\t\t\t} );\n\t\t\t}\n\t\t} else {\n\t\t\t// Merging is only done from the top level. For lowel levels, the\n\t\t\t// list item is outdented instead.\n\t\t\tconst previousBlockClientId = getPreviousBlockClientId( clientId );\n\t\t\tif ( getParentListItemId( clientId ) ) {\n\t\t\t\toutdentListItem( clientId );\n\t\t\t} else if ( previousBlockClientId ) {\n\t\t\t\tconst trailingId = getTrailingId( previousBlockClientId );\n\t\t\t\tregistry.batch( () => {\n\t\t\t\t\t// When merging a list item with a previous trailing list\n\t\t\t\t\t// item, we also need to move any nested list items. First,\n\t\t\t\t\t// check if there's a listed list. If there's a nested list,\n\t\t\t\t\t// append its nested list items to the trailing list.\n\t\t\t\t\tconst [ nestedListClientId ] = getBlockOrder( clientId );\n\t\t\t\t\tif ( nestedListClientId ) {\n\t\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\t\tgetBlockOrder( nestedListClientId ),\n\t\t\t\t\t\t\tnestedListClientId,\n\t\t\t\t\t\t\tgetBlockRootClientId( trailingId )\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tmergeBlocks( trailingId, clientId );\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\tonMerge( forward );\n\t\t\t}\n\t\t}\n\t};\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_data","require","_blockEditor","_useOutdentListItem","_interopRequireDefault","useMerge","clientId","onMerge","registry","useRegistry","getPreviousBlockClientId","getNextBlockClientId","getBlockOrder","getBlockRootClientId","getBlockName","useSelect","blockEditorStore","mergeBlocks","moveBlocksToPosition","useDispatch","outdentListItem","useOutdentListItem","getTrailingId","id","order","length","getParentListItemId","listId","parentListItemId","_getNextId","next","getNextId","forward","mergeWithNested","clientIdA","clientIdB","batch","nestedListClientId","nextBlockClientId","previousBlockClientId","trailingId"],"sources":["@wordpress/block-library/src/list-item/hooks/use-merge.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRegistry, useDispatch, useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport useOutdentListItem from './use-outdent-list-item';\n\nexport default function useMerge( clientId, onMerge ) {\n\tconst registry = useRegistry();\n\tconst {\n\t\tgetPreviousBlockClientId,\n\t\tgetNextBlockClientId,\n\t\tgetBlockOrder,\n\t\tgetBlockRootClientId,\n\t\tgetBlockName,\n\t} = useSelect( blockEditorStore );\n\tconst { mergeBlocks, moveBlocksToPosition } =\n\t\tuseDispatch( blockEditorStore );\n\tconst [ , outdentListItem ] = useOutdentListItem( clientId );\n\n\tfunction getTrailingId( id ) {\n\t\tconst order = getBlockOrder( id );\n\n\t\tif ( ! order.length ) {\n\t\t\treturn id;\n\t\t}\n\n\t\treturn getTrailingId( order[ order.length - 1 ] );\n\t}\n\n\tfunction getParentListItemId( id ) {\n\t\tconst listId = getBlockRootClientId( id );\n\t\tconst parentListItemId = getBlockRootClientId( listId );\n\t\tif ( ! parentListItemId ) return;\n\t\tif ( getBlockName( parentListItemId ) !== 'core/list-item' ) return;\n\t\treturn parentListItemId;\n\t}\n\n\t/**\n\t * Return the next list item with respect to the given list item. If none,\n\t * return the next list item of the parent list item if it exists.\n\t *\n\t * @param {string} id A list item client ID.\n\t * @return {string?} The client ID of the next list item.\n\t */\n\tfunction _getNextId( id ) {\n\t\tconst next = getNextBlockClientId( id );\n\t\tif ( next ) return next;\n\t\tconst parentListItemId = getParentListItemId( id );\n\t\tif ( ! parentListItemId ) return;\n\t\treturn _getNextId( parentListItemId );\n\t}\n\n\t/**\n\t * Given a client ID, return the client ID of the list item on the next\n\t * line, regardless of indentation level.\n\t *\n\t * @param {string} id The client ID of the current list item.\n\t * @return {string?} The client ID of the next list item.\n\t */\n\tfunction getNextId( id ) {\n\t\tconst order = getBlockOrder( id );\n\n\t\t// If the list item does not have a nested list, return the next list\n\t\t// item.\n\t\tif ( ! order.length ) {\n\t\t\treturn _getNextId( id );\n\t\t}\n\n\t\t// Get the first list item in the nested list.\n\t\treturn getBlockOrder( order[ 0 ] )[ 0 ];\n\t}\n\n\treturn ( forward ) => {\n\t\tfunction mergeWithNested( clientIdA, clientIdB ) {\n\t\t\tregistry.batch( () => {\n\t\t\t\t// When merging a sub list item with a higher next list item, we\n\t\t\t\t// also need to move any nested list items. Check if there's a\n\t\t\t\t// listed list, and append its nested list items to the current\n\t\t\t\t// list.\n\t\t\t\tconst [ nestedListClientId ] = getBlockOrder( clientIdB );\n\t\t\t\tif ( nestedListClientId ) {\n\t\t\t\t\tmoveBlocksToPosition(\n\t\t\t\t\t\tgetBlockOrder( nestedListClientId ),\n\t\t\t\t\t\tnestedListClientId,\n\t\t\t\t\t\tgetBlockRootClientId( clientIdA )\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tmergeBlocks( clientIdA, clientIdB );\n\t\t\t} );\n\t\t}\n\n\t\tif ( forward ) {\n\t\t\tconst nextBlockClientId = getNextId( clientId );\n\n\t\t\tif ( ! nextBlockClientId ) {\n\t\t\t\tonMerge( forward );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( getParentListItemId( nextBlockClientId ) ) {\n\t\t\t\toutdentListItem( nextBlockClientId );\n\t\t\t} else {\n\t\t\t\tmergeWithNested( clientId, nextBlockClientId );\n\t\t\t}\n\t\t} else {\n\t\t\t// Merging is only done from the top level. For lowel levels, the\n\t\t\t// list item is outdented instead.\n\t\t\tconst previousBlockClientId = getPreviousBlockClientId( clientId );\n\t\t\tif ( getParentListItemId( clientId ) ) {\n\t\t\t\toutdentListItem( clientId );\n\t\t\t} else if ( previousBlockClientId ) {\n\t\t\t\tconst trailingId = getTrailingId( previousBlockClientId );\n\t\t\t\tmergeWithNested( trailingId, clientId );\n\t\t\t} else {\n\t\t\t\tonMerge( forward );\n\t\t\t}\n\t\t}\n\t};\n}\n"],"mappings":"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"}
@@ -12,7 +12,7 @@ var _privateApis = require("@wordpress/private-apis");
12
12
  const {
13
13
  lock,
14
14
  unlock
15
- } = (0, _privateApis.__dangerousOptInToUnstableAPIsOnlyForCoreModules)('I know using unstable features means my plugin or theme will inevitably break on the next WordPress release.', '@wordpress/block-library');
15
+ } = (0, _privateApis.__dangerousOptInToUnstableAPIsOnlyForCoreModules)('I know using unstable features means my theme or plugin will inevitably break in the next version of WordPress.', '@wordpress/block-library');
16
16
  exports.unlock = unlock;
17
17
  exports.lock = lock;
18
18
  //# sourceMappingURL=lock-unlock.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_privateApis","require","lock","unlock","__dangerousOptInToUnstableAPIsOnlyForCoreModules","exports"],"sources":["@wordpress/block-library/src/lock-unlock.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __dangerousOptInToUnstableAPIsOnlyForCoreModules } from '@wordpress/private-apis';\n\nexport const { lock, unlock } =\n\t__dangerousOptInToUnstableAPIsOnlyForCoreModules(\n\t\t'I know using unstable features means my plugin or theme will inevitably break on the next WordPress release.',\n\t\t'@wordpress/block-library'\n\t);\n"],"mappings":";;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGO,MAAM;EAAEC,IAAI;EAAEC;AAAO,CAAC,GAC5B,IAAAC,6DAAgD,EAC/C,8GAA8G,EAC9G,0BACD,CAAC;AAACC,OAAA,CAAAF,MAAA,GAAAA,MAAA;AAAAE,OAAA,CAAAH,IAAA,GAAAA,IAAA"}
1
+ {"version":3,"names":["_privateApis","require","lock","unlock","__dangerousOptInToUnstableAPIsOnlyForCoreModules","exports"],"sources":["@wordpress/block-library/src/lock-unlock.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __dangerousOptInToUnstableAPIsOnlyForCoreModules } from '@wordpress/private-apis';\n\nexport const { lock, unlock } =\n\t__dangerousOptInToUnstableAPIsOnlyForCoreModules(\n\t\t'I know using unstable features means my theme or plugin will inevitably break in the next version of WordPress.',\n\t\t'@wordpress/block-library'\n\t);\n"],"mappings":";;;;;;AAGA,IAAAA,YAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGO,MAAM;EAAEC,IAAI;EAAEC;AAAO,CAAC,GAC5B,IAAAC,6DAAgD,EAC/C,iHAAiH,EACjH,0BACD,CAAC;AAACC,OAAA,CAAAF,MAAA,GAAAA,MAAA;AAAAE,OAAA,CAAAH,IAAA,GAAAA,IAAA"}
@@ -563,7 +563,6 @@ function Navigation({
563
563
  }), (0, _element.createElement)(_responsiveWrapper.default, {
564
564
  id: clientId,
565
565
  onToggle: setResponsiveMenuVisibility,
566
- label: (0, _i18n.__)('Menu'),
567
566
  hasIcon: hasIcon,
568
567
  icon: icon,
569
568
  isOpen: isResponsiveMenuOpen,
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_blockEditor","_coreData","_data","_components","_i18n","_a11y","_icons","_compose","_useNavigationMenu","_useNavigationEntities","_placeholder","_responsiveWrapper","_innerBlocks","_navigationMenuNameControl","_unsavedInnerBlocks","_navigationMenuDeleteControl","_useNavigationNotice","_overlayMenuIcon","_overlayMenuPreview","_useConvertClassicMenuToBlockMenu","_interopRequireWildcard","_useCreateNavigationMenu","_useInnerBlocks","_utils","_manageMenusButton","_menuInspectorControls","_deletedNavigationWarning","_accessibleDescription","_accessibleMenuDescription","_lockUnlock","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Navigation","attributes","setAttributes","clientId","isSelected","className","backgroundColor","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","hasSubmenuIndicatorSetting","customPlaceholder","CustomPlaceholder","__unstableLayoutClassNames","layoutClassNames","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","icon","ref","setRef","useCallback","postId","recursionId","hasAlreadyRendered","useHasRecursion","blockEditingMode","useBlockEditingMode","menus","classicMenus","useNavigationEntities","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","useNavigationNotice","name","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","useCreateNavigationMenu","createUntitledEmptyNavigationMenu","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","useInnerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","useDispatch","blockEditorStore","isResponsiveMenuOpen","setResponsiveMenuVisibility","useState","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","useNavigationMenu","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","useConvertClassicToBlockMenu","isConvertingClassicMenu","CLASSIC_MENU_CONVERSION_PENDING","handleUpdateMenu","menuId","options","focusNavigationBlock","isEntityAvailable","hasUnsavedBlocks","getNavigationFallbackId","unlock","useSelect","coreStore","navigationFallbackId","useEffect","navRef","useRef","TagName","isPlaceholder","length","isLoading","textDecoration","style","typography","hasBlockOverlay","useBlockOverlayActive","isResponsive","blockProps","useBlockProps","classnames","color","class","getColorClassName","slug","enableContrastChecking","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","onSelectClassicMenu","classicMenu","navMenu","id","onSelectNavigationMenu","speak","__","CLASSIC_MENU_CONVERSION_SUCCESS","CLASSIC_MENU_CONVERSION_ERROR","detectColors","current","subMenuElement","querySelector","hasManagePermissions","overlayMenuPreviewClasses","open","submenuAccessibilityNotice","isFirstRender","overlayMenuPreviewId","useInstanceId","OverlayMenuPreview","colorGradientSettings","useMultipleOriginColorsAndGradients","stylingInspectorControls","createElement","Fragment","InspectorControls","PanelBody","title","Button","onClick","Icon","close","hidden","__experimentalToggleGroupControl","__nextHasNoMarginBottom","label","help","onChange","isBlock","hideLabelFromVision","__experimentalToggleGroupControlOption","ToggleControl","checked","disabled","Notice","spokenMessage","isDismissible","hasColorsOrGradients","group","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","colorValue","onColorChange","resetAllFilter","panelId","gradients","disableCustomGradients","ContrastChecker","accessibleDescriptionId","isManageMenusButtonDisabled","undefined","currentMenuId","onCreateNew","onToggle","isOpen","isHiddenByDefault","blocks","hasSelection","Warning","PlaceholderComponent","Placeholder","onCreateEmpty","EntityProvider","kind","type","__experimentalRecursionProvider","uniqueId","onDelete","deletedMenuTitle","sprintf","Spinner","hasCustomPlaceholder","_default","withColors","exports"],"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseCallback,\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { EntityProvider, store as coreStore } from '@wordpress/core-data';\n\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tButton,\n\tSpinner,\n\tNotice,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { close, Icon } from '@wordpress/icons';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\nimport Placeholder from './placeholder';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\nimport useNavigationNotice from './use-navigation-notice';\nimport OverlayMenuIcon from './overlay-menu-icon';\nimport OverlayMenuPreview from './overlay-menu-preview';\nimport useConvertClassicToBlockMenu, {\n\tCLASSIC_MENU_CONVERSION_ERROR,\n\tCLASSIC_MENU_CONVERSION_PENDING,\n\tCLASSIC_MENU_CONVERSION_SUCCESS,\n} from './use-convert-classic-menu-to-block-menu';\nimport useCreateNavigationMenu from './use-create-navigation-menu';\nimport { useInnerBlocks } from './use-inner-blocks';\nimport { detectColors } from './utils';\nimport ManageMenusButton from './manage-menus-button';\nimport MenuInspectorControls from './menu-inspector-controls';\nimport DeletedNavigationWarning from './deleted-navigation-warning';\nimport AccessibleDescription from './accessible-description';\nimport AccessibleMenuDescription from './accessible-menu-description';\nimport { unlock } from '../../lock-unlock';\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\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n\t__unstableLayoutClassNames: layoutClassNames,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\ttemplateLock,\n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {},\n\t\thasIcon,\n\t\ticon = 'handle',\n\t} = attributes;\n\n\tconst ref = attributes.ref;\n\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t},\n\t\t[ setAttributes ]\n\t);\n\n\tconst recursionId = `navigationMenu/${ ref }`;\n\tconst hasAlreadyRendered = useHasRecursion( recursionId );\n\n\tconst blockEditingMode = useBlockEditingMode();\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst [ showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/status',\n\t\t} );\n\n\tconst [ showClassicMenuConversionNotice, hideClassicMenuConversionNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/classic-menu-conversion',\n\t\t} );\n\n\tconst [\n\t\tshowNavigationMenuPermissionsNotice,\n\t\thideNavigationMenuPermissionsNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t\tisPending: isCreatingNavigationMenu,\n\t\tisSuccess: createNavigationMenuIsSuccess,\n\t\tisError: createNavigationMenuIsError,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst createUntitledEmptyNavigationMenu = () => {\n\t\tcreateNavigationMenu( '' );\n\t};\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\tinnerBlocks,\n\t} = useInnerBlocks( clientId );\n\n\tconst hasSubmenus = !! innerBlocks.find(\n\t\t( block ) => block.name === 'core/navigation-submenu'\n\t);\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseState( false );\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserDeleteNavigationMenu,\n\t\thasResolvedCanUserDeleteNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\tisResolvingCanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t} = useNavigationMenu( ref );\n\n\tconst navMenuResolvedButMissing =\n\t\thasResolvedNavigationMenus && isNavigationMenuMissing;\n\n\tconst {\n\t\tconvert: convertClassicMenu,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t} = useConvertClassicToBlockMenu( createNavigationMenu );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\n\n\tconst handleUpdateMenu = useCallback(\n\t\t( menuId, options = { focusNavigationBlock: false } ) => {\n\t\t\tconst { focusNavigationBlock } = options;\n\t\t\tsetRef( menuId );\n\t\t\tif ( focusNavigationBlock ) {\n\t\t\t\tselectBlock( clientId );\n\t\t\t}\n\t\t},\n\t\t[ selectBlock, clientId, setRef ]\n\t);\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\t// If the block has inner blocks, but no menu id, then these blocks are either:\n\t// - inserted via a pattern.\n\t// - inserted directly via Code View (or otherwise).\n\t// - from an older version of navigation block added before the block used a wp_navigation entity.\n\t// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu as an entity when changes are made to the inner blocks.\n\tconst hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;\n\n\tconst { getNavigationFallbackId } = unlock( useSelect( coreStore ) );\n\n\tconst navigationFallbackId = ! ( ref || hasUnsavedBlocks )\n\t\t? getNavigationFallbackId()\n\t\t: null;\n\n\tuseEffect( () => {\n\t\t// If:\n\t\t// - there is an existing menu, OR\n\t\t// - there are existing (uncontrolled) inner blocks\n\t\t// ...then don't request a fallback menu.\n\t\tif ( ref || hasUnsavedBlocks || ! navigationFallbackId ) {\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * This fallback displays (both in editor and on front)\n\t\t * The fallback should not request a save (entity dirty state)\n\t\t * nor to be undoable, hence why it is marked as non persistent\n\t\t */\n\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetRef( navigationFallbackId );\n\t}, [\n\t\tref,\n\t\tsetRef,\n\t\thasUnsavedBlocks,\n\t\tnavigationFallbackId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t] );\n\n\tconst navRef = useRef();\n\n\t// The standard HTML5 tag for the block wrapper.\n\tconst TagName = 'nav';\n\n\t// \"placeholder\" shown if:\n\t// - there is no ref attribute pointing to a Navigation Post.\n\t// - there is no classic menu conversion process in progress.\n\t// - there is no menu creation process in progress.\n\t// - there are no uncontrolled blocks.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\tclassicMenus?.length === 0 &&\n\t\t! hasUncontrolledInnerBlocks;\n\n\t// \"loading\" state:\n\t// - there is a menu creation process in progress.\n\t// - there is a classic menu conversion process in progress.\n\t// OR:\n\t// - there is a ref attribute pointing to a Navigation Post\n\t// - the Navigation Post isn't available (hasn't resolved) yet.\n\tconst isLoading =\n\t\t! hasResolvedNavigationMenus ||\n\t\tisCreatingNavigationMenu ||\n\t\tisConvertingClassicMenu ||\n\t\t!! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );\n\n\tconst textDecoration = attributes.style?.typography?.textDecoration;\n\n\tconst hasBlockOverlay = useBlockOverlayActive( clientId );\n\tconst isResponsive = 'never' !== overlayMenu;\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames(\n\t\t\tclassName,\n\t\t\t{\n\t\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t\t'items-justified-space-between':\n\t\t\t\t\tjustifyContent === 'space-between',\n\t\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t\t\t'is-responsive': isResponsive,\n\t\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t\t[ getColorClassName( 'color', textColor?.slug ) ]:\n\t\t\t\t\t!! textColor?.slug,\n\t\t\t\t'has-background':\n\t\t\t\t\t!! backgroundColor.color || backgroundColor.class,\n\t\t\t\t[ getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tbackgroundColor?.slug\n\t\t\t\t) ]: !! backgroundColor?.slug,\n\t\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t\t\t'block-editor-block-content-overlay': hasBlockOverlay,\n\t\t\t},\n\t\t\tlayoutClassNames\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\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\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\tconst navMenu = await convertClassicMenu(\n\t\t\tclassicMenu.id,\n\t\t\tclassicMenu.name,\n\t\t\t'draft'\n\t\t);\n\t\tif ( navMenu ) {\n\t\t\thandleUpdateMenu( navMenu.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst onSelectNavigationMenu = ( menuId ) => {\n\t\thandleUpdateMenu( menuId );\n\t};\n\n\tuseEffect( () => {\n\t\thideNavigationMenuStatusNotice();\n\n\t\tif ( isCreatingNavigationMenu ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuIsSuccess ) {\n\t\t\thandleUpdateMenu( createNavigationMenuPost?.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuIsError ) {\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost?.id,\n\t\tcreateNavigationMenuIsError,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tisCreatingNavigationMenu,\n\t\thandleUpdateMenu,\n\t\thideNavigationMenuStatusNotice,\n\t\tshowNavigationMenuStatusNotice,\n\t] );\n\n\tuseEffect( () => {\n\t\thideClassicMenuConversionNotice();\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu imported successfully.' )\n\t\t\t);\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu import failed.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tclassicMenuConversionStatus,\n\t\tclassicMenuConversionError,\n\t\thideClassicMenuConversionNotice,\n\t\tshowClassicMenuConversionNotice,\n\t] );\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\n\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-submenu\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\n\t\tif ( ! subMenuElement ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Only detect submenu overlay colors if they have previously been explicitly set.\n\t\t// This avoids the contrast checker from reporting on inherited submenu colors and\n\t\t// showing the contrast warning twice.\n\t\tif ( overlayTextColor.color || overlayBackgroundColor.color ) {\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\t\tenableContrastChecking,\n\t\toverlayTextColor.color,\n\t\toverlayBackgroundColor.color,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideNavigationMenuPermissionsNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\tref &&\n\t\t\t\t! navMenuResolvedButMissing &&\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! ref &&\n\t\t\t\thasResolvedCanUserCreateNavigationMenu &&\n\t\t\t\t! canUserCreateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [\n\t\tisSelected,\n\t\tisInnerBlockSelected,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t\tref,\n\t\thideNavigationMenuPermissionsNotice,\n\t\tshowNavigationMenuPermissionsNotice,\n\t\tnavMenuResolvedButMissing,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenu || canUserUpdateNavigationMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\tconst submenuAccessibilityNotice =\n\t\t! showSubmenuIcon && ! openSubmenusOnClick\n\t\t\t? __(\n\t\t\t\t\t'The current menu options offer reduced accessibility for users and are not recommended. Enabling either \"Open on Click\" or \"Show arrow\" offers enhanced accessibility by allowing keyboard users to browse submenus selectively.'\n\t\t\t )\n\t\t\t: '';\n\n\tconst isFirstRender = useRef( true ); // Don't speak on first render.\n\tuseEffect( () => {\n\t\tif ( ! isFirstRender.current && submenuAccessibilityNotice ) {\n\t\t\tspeak( submenuAccessibilityNotice );\n\t\t}\n\t\tisFirstRender.current = false;\n\t}, [ submenuAccessibilityNotice ] );\n\n\tconst overlayMenuPreviewId = useInstanceId(\n\t\tOverlayMenuPreview,\n\t\t`overlay-menu-preview`\n\t);\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tconst stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t{ isResponsive && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\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\taria-label={ __( 'Overlay menu controls' ) }\n\t\t\t\t\t\t\t\t\taria-controls={ overlayMenuPreviewId }\n\t\t\t\t\t\t\t\t\taria-expanded={ overlayMenuPreview }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<OverlayMenuIcon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ close } />\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Close' ) }</span>\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</Button>\n\t\t\t\t\t\t\t\t<div id={ overlayMenuPreviewId }>\n\t\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t\t\t<OverlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\t\t\thidden={ ! overlayMenuPreview }\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</div>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\thelp={ __(\n\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) }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\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\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\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={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\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\tdisabled={ attributes.openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice && (\n\t\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tspokenMessage={ null }\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t</div>\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</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () =>\n\t\t\t\t\t\t\t\t\tsetOverlayBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t\tgradients={ [] }\n\t\t\t\t\t\tdisableCustomGradients={ true }\n\t\t\t\t\t/>\n\t\t\t\t\t{ enableContrastChecking && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\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</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n\n\tconst accessibleDescriptionId = `${ clientId }-desc`;\n\n\tconst isManageMenusButtonDisabled =\n\t\t! hasManagePermissions || ! hasResolvedNavigationMenus;\n\n\tif ( hasUnsavedBlocks && ! isCreatingNavigationMenu ) {\n\t\treturn (\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\taria-describedby={\n\t\t\t\t\t! isPlaceholder ? accessibleDescriptionId : undefined\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<AccessibleDescription id={ accessibleDescriptionId }>\n\t\t\t\t\t{ __( 'Unsaved Navigation Menu.' ) }\n\t\t\t\t</AccessibleDescription>\n\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tcreateNavigationMenu={ createNavigationMenu }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t/>\n\t\t\t\t</ResponsiveWrapper>\n\t\t\t</TagName>\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<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t<DeletedNavigationWarning\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\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\t/**\n\t * Historically the navigation block has supported custom placeholders.\n\t * Even though the current UX tries as hard as possible not to\n\t * end up in a placeholder state, the block continues to support\n\t * this extensibility point, via a CustomPlaceholder.\n\t * When CustomPlaceholder is present it becomes the default fallback\n\t * for an empty navigation block, instead of the default fallbacks.\n\t *\n\t */\n\n\tif ( isPlaceholder && CustomPlaceholder ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<PlaceholderComponent\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcanUserCreateNavigationMenu={ canUserCreateNavigationMenu }\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenu={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenu\n\t\t\t\t\t}\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonCreateEmpty={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider uniqueId={ recursionId }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t{ blockEditingMode === 'default' && isEntityAvailable && (\n\t\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t\t{ hasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t\t\t\tcanUserUpdateNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ hasResolvedCanUserDeleteNavigationMenu &&\n\t\t\t\t\t\t\tcanUserDeleteNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\t\t\tonDelete={ ( deletedMenuTitle = '' ) => {\n\t\t\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: %s: the name of a menu (e.g. Header navigation).\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation menu %s successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\tdeletedMenuTitle\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ManageMenusButton\n\t\t\t\t\t\t\tdisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-manage-menus-button\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\n\t\t\t\t{ isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<div className=\"wp-block-navigation__loading-indicator-container\">\n\t\t\t\t\t\t\t<Spinner className=\"wp-block-navigation__loading-indicator\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\n\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t<TagName\n\t\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t! isPlaceholder\n\t\t\t\t\t\t\t\t? accessibleDescriptionId\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<AccessibleMenuDescription\n\t\t\t\t\t\t\tid={ accessibleDescriptionId }\n\t\t\t\t\t\t/>\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\tlabel={ __( 'Menu' ) }\n\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\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\tclientId={ clientId }\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\ttemplateLock={ templateLock }\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</TagName>\n\t\t\t\t) }\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"],"mappings":"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"}
1
+ {"version":3,"names":["_element","require","_classnames","_interopRequireDefault","_blockEditor","_coreData","_data","_components","_i18n","_a11y","_icons","_compose","_useNavigationMenu","_useNavigationEntities","_placeholder","_responsiveWrapper","_innerBlocks","_navigationMenuNameControl","_unsavedInnerBlocks","_navigationMenuDeleteControl","_useNavigationNotice","_overlayMenuIcon","_overlayMenuPreview","_useConvertClassicMenuToBlockMenu","_interopRequireWildcard","_useCreateNavigationMenu","_useInnerBlocks","_utils","_manageMenusButton","_menuInspectorControls","_deletedNavigationWarning","_accessibleDescription","_accessibleMenuDescription","_lockUnlock","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Navigation","attributes","setAttributes","clientId","isSelected","className","backgroundColor","setBackgroundColor","textColor","setTextColor","overlayBackgroundColor","setOverlayBackgroundColor","overlayTextColor","setOverlayTextColor","hasSubmenuIndicatorSetting","customPlaceholder","CustomPlaceholder","__unstableLayoutClassNames","layoutClassNames","openSubmenusOnClick","overlayMenu","showSubmenuIcon","templateLock","layout","justifyContent","orientation","flexWrap","hasIcon","icon","ref","setRef","useCallback","postId","recursionId","hasAlreadyRendered","useHasRecursion","blockEditingMode","useBlockEditingMode","menus","classicMenus","useNavigationEntities","showNavigationMenuStatusNotice","hideNavigationMenuStatusNotice","useNavigationNotice","name","showClassicMenuConversionNotice","hideClassicMenuConversionNotice","showNavigationMenuPermissionsNotice","hideNavigationMenuPermissionsNotice","create","createNavigationMenu","status","createNavigationMenuStatus","error","createNavigationMenuError","value","createNavigationMenuPost","isPending","isCreatingNavigationMenu","isSuccess","createNavigationMenuIsSuccess","isError","createNavigationMenuIsError","useCreateNavigationMenu","createUntitledEmptyNavigationMenu","hasUncontrolledInnerBlocks","uncontrolledInnerBlocks","isInnerBlockSelected","innerBlocks","useInnerBlocks","hasSubmenus","find","block","replaceInnerBlocks","selectBlock","__unstableMarkNextChangeAsNotPersistent","useDispatch","blockEditorStore","isResponsiveMenuOpen","setResponsiveMenuVisibility","useState","overlayMenuPreview","setOverlayMenuPreview","hasResolvedNavigationMenus","isNavigationMenuResolved","isNavigationMenuMissing","canUserUpdateNavigationMenu","hasResolvedCanUserUpdateNavigationMenu","canUserDeleteNavigationMenu","hasResolvedCanUserDeleteNavigationMenu","canUserCreateNavigationMenu","isResolvingCanUserCreateNavigationMenu","hasResolvedCanUserCreateNavigationMenu","useNavigationMenu","navMenuResolvedButMissing","convert","convertClassicMenu","classicMenuConversionStatus","classicMenuConversionError","useConvertClassicToBlockMenu","isConvertingClassicMenu","CLASSIC_MENU_CONVERSION_PENDING","handleUpdateMenu","menuId","options","focusNavigationBlock","isEntityAvailable","hasUnsavedBlocks","getNavigationFallbackId","unlock","useSelect","coreStore","navigationFallbackId","useEffect","navRef","useRef","TagName","isPlaceholder","length","isLoading","textDecoration","style","typography","hasBlockOverlay","useBlockOverlayActive","isResponsive","blockProps","useBlockProps","classnames","color","class","getColorClassName","slug","enableContrastChecking","Platform","OS","detectedBackgroundColor","setDetectedBackgroundColor","detectedColor","setDetectedColor","detectedOverlayBackgroundColor","setDetectedOverlayBackgroundColor","detectedOverlayColor","setDetectedOverlayColor","onSelectClassicMenu","classicMenu","navMenu","id","onSelectNavigationMenu","speak","__","CLASSIC_MENU_CONVERSION_SUCCESS","CLASSIC_MENU_CONVERSION_ERROR","detectColors","current","subMenuElement","querySelector","hasManagePermissions","overlayMenuPreviewClasses","open","submenuAccessibilityNotice","isFirstRender","overlayMenuPreviewId","useInstanceId","OverlayMenuPreview","colorGradientSettings","useMultipleOriginColorsAndGradients","stylingInspectorControls","createElement","Fragment","InspectorControls","PanelBody","title","Button","onClick","Icon","close","hidden","__experimentalToggleGroupControl","__nextHasNoMarginBottom","label","help","onChange","isBlock","hideLabelFromVision","__experimentalToggleGroupControlOption","ToggleControl","checked","disabled","Notice","spokenMessage","isDismissible","hasColorsOrGradients","group","__experimentalColorGradientSettingsDropdown","__experimentalIsRenderedInSidebar","settings","colorValue","onColorChange","resetAllFilter","panelId","gradients","disableCustomGradients","ContrastChecker","accessibleDescriptionId","isManageMenusButtonDisabled","undefined","currentMenuId","onCreateNew","onToggle","isOpen","isHiddenByDefault","blocks","hasSelection","Warning","PlaceholderComponent","Placeholder","onCreateEmpty","EntityProvider","kind","type","__experimentalRecursionProvider","uniqueId","onDelete","deletedMenuTitle","sprintf","Spinner","hasCustomPlaceholder","_default","withColors","exports"],"sources":["@wordpress/block-library/src/navigation/edit/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseCallback,\n\tuseState,\n\tuseEffect,\n\tuseRef,\n\tPlatform,\n} from '@wordpress/element';\nimport {\n\tInspectorControls,\n\tuseBlockProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tstore as blockEditorStore,\n\twithColors,\n\tContrastChecker,\n\tgetColorClassName,\n\tWarning,\n\t__experimentalColorGradientSettingsDropdown as ColorGradientSettingsDropdown,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\n\t__experimentalUseMultipleOriginColorsAndGradients as useMultipleOriginColorsAndGradients,\n\tuseBlockEditingMode,\n} from '@wordpress/block-editor';\nimport { EntityProvider, store as coreStore } from '@wordpress/core-data';\n\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tPanelBody,\n\tToggleControl,\n\t__experimentalToggleGroupControl as ToggleGroupControl,\n\t__experimentalToggleGroupControlOption as ToggleGroupControlOption,\n\tButton,\n\tSpinner,\n\tNotice,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { speak } from '@wordpress/a11y';\nimport { close, Icon } from '@wordpress/icons';\nimport { useInstanceId } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport useNavigationMenu from '../use-navigation-menu';\nimport useNavigationEntities from '../use-navigation-entities';\nimport Placeholder from './placeholder';\nimport ResponsiveWrapper from './responsive-wrapper';\nimport NavigationInnerBlocks from './inner-blocks';\nimport NavigationMenuNameControl from './navigation-menu-name-control';\nimport UnsavedInnerBlocks from './unsaved-inner-blocks';\nimport NavigationMenuDeleteControl from './navigation-menu-delete-control';\nimport useNavigationNotice from './use-navigation-notice';\nimport OverlayMenuIcon from './overlay-menu-icon';\nimport OverlayMenuPreview from './overlay-menu-preview';\nimport useConvertClassicToBlockMenu, {\n\tCLASSIC_MENU_CONVERSION_ERROR,\n\tCLASSIC_MENU_CONVERSION_PENDING,\n\tCLASSIC_MENU_CONVERSION_SUCCESS,\n} from './use-convert-classic-menu-to-block-menu';\nimport useCreateNavigationMenu from './use-create-navigation-menu';\nimport { useInnerBlocks } from './use-inner-blocks';\nimport { detectColors } from './utils';\nimport ManageMenusButton from './manage-menus-button';\nimport MenuInspectorControls from './menu-inspector-controls';\nimport DeletedNavigationWarning from './deleted-navigation-warning';\nimport AccessibleDescription from './accessible-description';\nimport AccessibleMenuDescription from './accessible-menu-description';\nimport { unlock } from '../../lock-unlock';\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\n\t// These props are used by the navigation editor to override specific\n\t// navigation block settings.\n\thasSubmenuIndicatorSetting = true,\n\tcustomPlaceholder: CustomPlaceholder = null,\n\t__unstableLayoutClassNames: layoutClassNames,\n} ) {\n\tconst {\n\t\topenSubmenusOnClick,\n\t\toverlayMenu,\n\t\tshowSubmenuIcon,\n\t\ttemplateLock,\n\t\tlayout: {\n\t\t\tjustifyContent,\n\t\t\torientation = 'horizontal',\n\t\t\tflexWrap = 'wrap',\n\t\t} = {},\n\t\thasIcon,\n\t\ticon = 'handle',\n\t} = attributes;\n\n\tconst ref = attributes.ref;\n\n\tconst setRef = useCallback(\n\t\t( postId ) => {\n\t\t\tsetAttributes( { ref: postId } );\n\t\t},\n\t\t[ setAttributes ]\n\t);\n\n\tconst recursionId = `navigationMenu/${ ref }`;\n\tconst hasAlreadyRendered = useHasRecursion( recursionId );\n\n\tconst blockEditingMode = useBlockEditingMode();\n\n\t// Preload classic menus, so that they don't suddenly pop-in when viewing\n\t// the Select Menu dropdown.\n\tconst { menus: classicMenus } = useNavigationEntities();\n\n\tconst [ showNavigationMenuStatusNotice, hideNavigationMenuStatusNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/status',\n\t\t} );\n\n\tconst [ showClassicMenuConversionNotice, hideClassicMenuConversionNotice ] =\n\t\tuseNavigationNotice( {\n\t\t\tname: 'block-library/core/navigation/classic-menu-conversion',\n\t\t} );\n\n\tconst [\n\t\tshowNavigationMenuPermissionsNotice,\n\t\thideNavigationMenuPermissionsNotice,\n\t] = useNavigationNotice( {\n\t\tname: 'block-library/core/navigation/permissions/update',\n\t} );\n\n\tconst {\n\t\tcreate: createNavigationMenu,\n\t\tstatus: createNavigationMenuStatus,\n\t\terror: createNavigationMenuError,\n\t\tvalue: createNavigationMenuPost,\n\t\tisPending: isCreatingNavigationMenu,\n\t\tisSuccess: createNavigationMenuIsSuccess,\n\t\tisError: createNavigationMenuIsError,\n\t} = useCreateNavigationMenu( clientId );\n\n\tconst createUntitledEmptyNavigationMenu = () => {\n\t\tcreateNavigationMenu( '' );\n\t};\n\n\tconst {\n\t\thasUncontrolledInnerBlocks,\n\t\tuncontrolledInnerBlocks,\n\t\tisInnerBlockSelected,\n\t\tinnerBlocks,\n\t} = useInnerBlocks( clientId );\n\n\tconst hasSubmenus = !! innerBlocks.find(\n\t\t( block ) => block.name === 'core/navigation-submenu'\n\t);\n\n\tconst {\n\t\treplaceInnerBlocks,\n\t\tselectBlock,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t} = useDispatch( blockEditorStore );\n\n\tconst [ isResponsiveMenuOpen, setResponsiveMenuVisibility ] =\n\t\tuseState( false );\n\n\tconst [ overlayMenuPreview, setOverlayMenuPreview ] = useState( false );\n\n\tconst {\n\t\thasResolvedNavigationMenus,\n\t\tisNavigationMenuResolved,\n\t\tisNavigationMenuMissing,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserDeleteNavigationMenu,\n\t\thasResolvedCanUserDeleteNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\tisResolvingCanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t} = useNavigationMenu( ref );\n\n\tconst navMenuResolvedButMissing =\n\t\thasResolvedNavigationMenus && isNavigationMenuMissing;\n\n\tconst {\n\t\tconvert: convertClassicMenu,\n\t\tstatus: classicMenuConversionStatus,\n\t\terror: classicMenuConversionError,\n\t} = useConvertClassicToBlockMenu( createNavigationMenu );\n\n\tconst isConvertingClassicMenu =\n\t\tclassicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING;\n\n\tconst handleUpdateMenu = useCallback(\n\t\t( menuId, options = { focusNavigationBlock: false } ) => {\n\t\t\tconst { focusNavigationBlock } = options;\n\t\t\tsetRef( menuId );\n\t\t\tif ( focusNavigationBlock ) {\n\t\t\t\tselectBlock( clientId );\n\t\t\t}\n\t\t},\n\t\t[ selectBlock, clientId, setRef ]\n\t);\n\n\tconst isEntityAvailable =\n\t\t! isNavigationMenuMissing && isNavigationMenuResolved;\n\n\t// If the block has inner blocks, but no menu id, then these blocks are either:\n\t// - inserted via a pattern.\n\t// - inserted directly via Code View (or otherwise).\n\t// - from an older version of navigation block added before the block used a wp_navigation entity.\n\t// Consider this state as 'unsaved' and offer an uncontrolled version of inner blocks,\n\t// that automatically saves the menu as an entity when changes are made to the inner blocks.\n\tconst hasUnsavedBlocks = hasUncontrolledInnerBlocks && ! isEntityAvailable;\n\n\tconst { getNavigationFallbackId } = unlock( useSelect( coreStore ) );\n\n\tconst navigationFallbackId = ! ( ref || hasUnsavedBlocks )\n\t\t? getNavigationFallbackId()\n\t\t: null;\n\n\tuseEffect( () => {\n\t\t// If:\n\t\t// - there is an existing menu, OR\n\t\t// - there are existing (uncontrolled) inner blocks\n\t\t// ...then don't request a fallback menu.\n\t\tif ( ref || hasUnsavedBlocks || ! navigationFallbackId ) {\n\t\t\treturn;\n\t\t}\n\n\t\t/**\n\t\t * This fallback displays (both in editor and on front)\n\t\t * The fallback should not request a save (entity dirty state)\n\t\t * nor to be undoable, hence why it is marked as non persistent\n\t\t */\n\n\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\tsetRef( navigationFallbackId );\n\t}, [\n\t\tref,\n\t\tsetRef,\n\t\thasUnsavedBlocks,\n\t\tnavigationFallbackId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t] );\n\n\tconst navRef = useRef();\n\n\t// The standard HTML5 tag for the block wrapper.\n\tconst TagName = 'nav';\n\n\t// \"placeholder\" shown if:\n\t// - there is no ref attribute pointing to a Navigation Post.\n\t// - there is no classic menu conversion process in progress.\n\t// - there is no menu creation process in progress.\n\t// - there are no uncontrolled blocks.\n\tconst isPlaceholder =\n\t\t! ref &&\n\t\t! isCreatingNavigationMenu &&\n\t\t! isConvertingClassicMenu &&\n\t\thasResolvedNavigationMenus &&\n\t\tclassicMenus?.length === 0 &&\n\t\t! hasUncontrolledInnerBlocks;\n\n\t// \"loading\" state:\n\t// - there is a menu creation process in progress.\n\t// - there is a classic menu conversion process in progress.\n\t// OR:\n\t// - there is a ref attribute pointing to a Navigation Post\n\t// - the Navigation Post isn't available (hasn't resolved) yet.\n\tconst isLoading =\n\t\t! hasResolvedNavigationMenus ||\n\t\tisCreatingNavigationMenu ||\n\t\tisConvertingClassicMenu ||\n\t\t!! ( ref && ! isEntityAvailable && ! isConvertingClassicMenu );\n\n\tconst textDecoration = attributes.style?.typography?.textDecoration;\n\n\tconst hasBlockOverlay = useBlockOverlayActive( clientId );\n\tconst isResponsive = 'never' !== overlayMenu;\n\tconst blockProps = useBlockProps( {\n\t\tref: navRef,\n\t\tclassName: classnames(\n\t\t\tclassName,\n\t\t\t{\n\t\t\t\t'items-justified-right': justifyContent === 'right',\n\t\t\t\t'items-justified-space-between':\n\t\t\t\t\tjustifyContent === 'space-between',\n\t\t\t\t'items-justified-left': justifyContent === 'left',\n\t\t\t\t'items-justified-center': justifyContent === 'center',\n\t\t\t\t'is-vertical': orientation === 'vertical',\n\t\t\t\t'no-wrap': flexWrap === 'nowrap',\n\t\t\t\t'is-responsive': isResponsive,\n\t\t\t\t'has-text-color': !! textColor.color || !! textColor?.class,\n\t\t\t\t[ getColorClassName( 'color', textColor?.slug ) ]:\n\t\t\t\t\t!! textColor?.slug,\n\t\t\t\t'has-background':\n\t\t\t\t\t!! backgroundColor.color || backgroundColor.class,\n\t\t\t\t[ getColorClassName(\n\t\t\t\t\t'background-color',\n\t\t\t\t\tbackgroundColor?.slug\n\t\t\t\t) ]: !! backgroundColor?.slug,\n\t\t\t\t[ `has-text-decoration-${ textDecoration }` ]: textDecoration,\n\t\t\t\t'block-editor-block-content-overlay': hasBlockOverlay,\n\t\t\t},\n\t\t\tlayoutClassNames\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\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\tconst onSelectClassicMenu = async ( classicMenu ) => {\n\t\tconst navMenu = await convertClassicMenu(\n\t\t\tclassicMenu.id,\n\t\t\tclassicMenu.name,\n\t\t\t'draft'\n\t\t);\n\t\tif ( navMenu ) {\n\t\t\thandleUpdateMenu( navMenu.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\t\t}\n\t};\n\n\tconst onSelectNavigationMenu = ( menuId ) => {\n\t\thandleUpdateMenu( menuId );\n\t};\n\n\tuseEffect( () => {\n\t\thideNavigationMenuStatusNotice();\n\n\t\tif ( isCreatingNavigationMenu ) {\n\t\t\tspeak( __( `Creating Navigation Menu.` ) );\n\t\t}\n\n\t\tif ( createNavigationMenuIsSuccess ) {\n\t\t\thandleUpdateMenu( createNavigationMenuPost?.id, {\n\t\t\t\tfocusNavigationBlock: true,\n\t\t\t} );\n\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( `Navigation Menu successfully created.` )\n\t\t\t);\n\t\t}\n\n\t\tif ( createNavigationMenuIsError ) {\n\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t__( 'Failed to create Navigation Menu.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tcreateNavigationMenuStatus,\n\t\tcreateNavigationMenuError,\n\t\tcreateNavigationMenuPost?.id,\n\t\tcreateNavigationMenuIsError,\n\t\tcreateNavigationMenuIsSuccess,\n\t\tisCreatingNavigationMenu,\n\t\thandleUpdateMenu,\n\t\thideNavigationMenuStatusNotice,\n\t\tshowNavigationMenuStatusNotice,\n\t] );\n\n\tuseEffect( () => {\n\t\thideClassicMenuConversionNotice();\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_PENDING ) {\n\t\t\tspeak( __( 'Classic menu importing.' ) );\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_SUCCESS ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu imported successfully.' )\n\t\t\t);\n\t\t}\n\n\t\tif ( classicMenuConversionStatus === CLASSIC_MENU_CONVERSION_ERROR ) {\n\t\t\tshowClassicMenuConversionNotice(\n\t\t\t\t__( 'Classic menu import failed.' )\n\t\t\t);\n\t\t}\n\t}, [\n\t\tclassicMenuConversionStatus,\n\t\tclassicMenuConversionError,\n\t\thideClassicMenuConversionNotice,\n\t\tshowClassicMenuConversionNotice,\n\t] );\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\n\t\tconst subMenuElement = navRef.current?.querySelector(\n\t\t\t'[data-type=\"core/navigation-submenu\"] [data-type=\"core/navigation-link\"]'\n\t\t);\n\n\t\tif ( ! subMenuElement ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Only detect submenu overlay colors if they have previously been explicitly set.\n\t\t// This avoids the contrast checker from reporting on inherited submenu colors and\n\t\t// showing the contrast warning twice.\n\t\tif ( overlayTextColor.color || overlayBackgroundColor.color ) {\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\t\tenableContrastChecking,\n\t\toverlayTextColor.color,\n\t\toverlayBackgroundColor.color,\n\t] );\n\n\tuseEffect( () => {\n\t\tif ( ! isSelected && ! isInnerBlockSelected ) {\n\t\t\thideNavigationMenuPermissionsNotice();\n\t\t}\n\n\t\tif ( isSelected || isInnerBlockSelected ) {\n\t\t\tif (\n\t\t\t\tref &&\n\t\t\t\t! navMenuResolvedButMissing &&\n\t\t\t\thasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t! canUserUpdateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to edit this Menu. Any changes made will not be saved.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t! ref &&\n\t\t\t\thasResolvedCanUserCreateNavigationMenu &&\n\t\t\t\t! canUserCreateNavigationMenu\n\t\t\t) {\n\t\t\t\tshowNavigationMenuPermissionsNotice(\n\t\t\t\t\t__(\n\t\t\t\t\t\t'You do not have permission to create Navigation Menus.'\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}, [\n\t\tisSelected,\n\t\tisInnerBlockSelected,\n\t\tcanUserUpdateNavigationMenu,\n\t\thasResolvedCanUserUpdateNavigationMenu,\n\t\tcanUserCreateNavigationMenu,\n\t\thasResolvedCanUserCreateNavigationMenu,\n\t\tref,\n\t\thideNavigationMenuPermissionsNotice,\n\t\tshowNavigationMenuPermissionsNotice,\n\t\tnavMenuResolvedButMissing,\n\t] );\n\n\tconst hasManagePermissions =\n\t\tcanUserCreateNavigationMenu || canUserUpdateNavigationMenu;\n\n\tconst overlayMenuPreviewClasses = classnames(\n\t\t'wp-block-navigation__overlay-menu-preview',\n\t\t{ open: overlayMenuPreview }\n\t);\n\n\tconst submenuAccessibilityNotice =\n\t\t! showSubmenuIcon && ! openSubmenusOnClick\n\t\t\t? __(\n\t\t\t\t\t'The current menu options offer reduced accessibility for users and are not recommended. Enabling either \"Open on Click\" or \"Show arrow\" offers enhanced accessibility by allowing keyboard users to browse submenus selectively.'\n\t\t\t )\n\t\t\t: '';\n\n\tconst isFirstRender = useRef( true ); // Don't speak on first render.\n\tuseEffect( () => {\n\t\tif ( ! isFirstRender.current && submenuAccessibilityNotice ) {\n\t\t\tspeak( submenuAccessibilityNotice );\n\t\t}\n\t\tisFirstRender.current = false;\n\t}, [ submenuAccessibilityNotice ] );\n\n\tconst overlayMenuPreviewId = useInstanceId(\n\t\tOverlayMenuPreview,\n\t\t`overlay-menu-preview`\n\t);\n\n\tconst colorGradientSettings = useMultipleOriginColorsAndGradients();\n\tconst stylingInspectorControls = (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t{ hasSubmenuIndicatorSetting && (\n\t\t\t\t\t<PanelBody title={ __( 'Display' ) }>\n\t\t\t\t\t\t{ isResponsive && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tclassName={ overlayMenuPreviewClasses }\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetOverlayMenuPreview(\n\t\t\t\t\t\t\t\t\t\t\t! overlayMenuPreview\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\taria-label={ __( 'Overlay menu controls' ) }\n\t\t\t\t\t\t\t\t\taria-controls={ overlayMenuPreviewId }\n\t\t\t\t\t\t\t\t\taria-expanded={ overlayMenuPreview }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<OverlayMenuIcon icon={ icon } />\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ close } />\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ ! hasIcon && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Menu' ) }</span>\n\t\t\t\t\t\t\t\t\t\t\t<span>{ __( 'Close' ) }</span>\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</Button>\n\t\t\t\t\t\t\t\t<div id={ overlayMenuPreviewId }>\n\t\t\t\t\t\t\t\t\t{ overlayMenuPreview && (\n\t\t\t\t\t\t\t\t\t\t<OverlayMenuPreview\n\t\t\t\t\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\t\t\t\t\thidden={ ! overlayMenuPreview }\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</div>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<h3>{ __( 'Overlay Menu' ) }</h3>\n\t\t\t\t\t\t<ToggleGroupControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Configure overlay menu' ) }\n\t\t\t\t\t\t\tvalue={ overlayMenu }\n\t\t\t\t\t\t\thelp={ __(\n\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) }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { overlayMenu: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisBlock\n\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"never\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Off' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"mobile\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Mobile' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ToggleGroupControlOption\n\t\t\t\t\t\t\t\tvalue=\"always\"\n\t\t\t\t\t\t\t\tlabel={ __( 'Always' ) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToggleGroupControl>\n\t\t\t\t\t\t{ hasSubmenus && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<h3>{ __( 'Submenus' ) }</h3>\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\tchecked={ openSubmenusOnClick }\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\topenSubmenusOnClick: value,\n\t\t\t\t\t\t\t\t\t\t\t...( value && {\n\t\t\t\t\t\t\t\t\t\t\t\tshowSubmenuIcon: true,\n\t\t\t\t\t\t\t\t\t\t\t} ), // Make sure arrows are shown when we toggle this on.\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={ __( 'Open on click' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\t\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\tdisabled={ attributes.openSubmenusOnClick }\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Show arrow' ) }\n\t\t\t\t\t\t\t\t/>\n\n\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice && (\n\t\t\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tspokenMessage={ null }\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ submenuAccessibilityNotice }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t</div>\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</PanelBody>\n\t\t\t\t) }\n\t\t\t</InspectorControls>\n\t\t\t{ colorGradientSettings.hasColorsOrGradients && (\n\t\t\t\t<InspectorControls group=\"color\">\n\t\t\t\t\t<ColorGradientSettingsDropdown\n\t\t\t\t\t\t__experimentalIsRenderedInSidebar\n\t\t\t\t\t\tsettings={ [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: textColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Text' ),\n\t\t\t\t\t\t\t\tonColorChange: setTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: backgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Background' ),\n\t\t\t\t\t\t\t\tonColorChange: setBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayTextColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay text' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayTextColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () => setOverlayTextColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tcolorValue: overlayBackgroundColor.color,\n\t\t\t\t\t\t\t\tlabel: __( 'Submenu & overlay background' ),\n\t\t\t\t\t\t\t\tonColorChange: setOverlayBackgroundColor,\n\t\t\t\t\t\t\t\tresetAllFilter: () =>\n\t\t\t\t\t\t\t\t\tsetOverlayBackgroundColor(),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tpanelId={ clientId }\n\t\t\t\t\t\t{ ...colorGradientSettings }\n\t\t\t\t\t\tgradients={ [] }\n\t\t\t\t\t\tdisableCustomGradients={ true }\n\t\t\t\t\t/>\n\t\t\t\t\t{ enableContrastChecking && (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={ detectedBackgroundColor }\n\t\t\t\t\t\t\t\ttextColor={ detectedColor }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t<ContrastChecker\n\t\t\t\t\t\t\t\tbackgroundColor={\n\t\t\t\t\t\t\t\t\tdetectedOverlayBackgroundColor\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\ttextColor={ detectedOverlayColor }\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</InspectorControls>\n\t\t\t) }\n\t\t</>\n\t);\n\n\tconst accessibleDescriptionId = `${ clientId }-desc`;\n\n\tconst isManageMenusButtonDisabled =\n\t\t! hasManagePermissions || ! hasResolvedNavigationMenus;\n\n\tif ( hasUnsavedBlocks && ! isCreatingNavigationMenu ) {\n\t\treturn (\n\t\t\t<TagName\n\t\t\t\t{ ...blockProps }\n\t\t\t\taria-describedby={\n\t\t\t\t\t! isPlaceholder ? accessibleDescriptionId : undefined\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<AccessibleDescription id={ accessibleDescriptionId }>\n\t\t\t\t\t{ __( 'Unsaved Navigation Menu.' ) }\n\t\t\t\t</AccessibleDescription>\n\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t<ResponsiveWrapper\n\t\t\t\t\tid={ clientId }\n\t\t\t\t\tonToggle={ setResponsiveMenuVisibility }\n\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\thasIcon={ hasIcon }\n\t\t\t\t\ticon={ icon }\n\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\toverlayTextColor={ overlayTextColor }\n\t\t\t\t>\n\t\t\t\t\t<UnsavedInnerBlocks\n\t\t\t\t\t\tcreateNavigationMenu={ createNavigationMenu }\n\t\t\t\t\t\tblocks={ uncontrolledInnerBlocks }\n\t\t\t\t\t\thasSelection={ isSelected || isInnerBlockSelected }\n\t\t\t\t\t/>\n\t\t\t\t</ResponsiveWrapper>\n\t\t\t</TagName>\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<TagName { ...blockProps }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t<DeletedNavigationWarning\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\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\t/**\n\t * Historically the navigation block has supported custom placeholders.\n\t * Even though the current UX tries as hard as possible not to\n\t * end up in a placeholder state, the block continues to support\n\t * this extensibility point, via a CustomPlaceholder.\n\t * When CustomPlaceholder is present it becomes the default fallback\n\t * for an empty navigation block, instead of the default fallbacks.\n\t *\n\t */\n\n\tif ( isPlaceholder && CustomPlaceholder ) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<PlaceholderComponent\n\t\t\t\t\tisSelected={ isSelected }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcanUserCreateNavigationMenu={ canUserCreateNavigationMenu }\n\t\t\t\t\tisResolvingCanUserCreateNavigationMenu={\n\t\t\t\t\t\tisResolvingCanUserCreateNavigationMenu\n\t\t\t\t\t}\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonCreateEmpty={ createUntitledEmptyNavigationMenu }\n\t\t\t\t/>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<EntityProvider kind=\"postType\" type=\"wp_navigation\" id={ ref }>\n\t\t\t<RecursionProvider uniqueId={ recursionId }>\n\t\t\t\t<MenuInspectorControls\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tcreateNavigationMenuIsSuccess={\n\t\t\t\t\t\tcreateNavigationMenuIsSuccess\n\t\t\t\t\t}\n\t\t\t\t\tcreateNavigationMenuIsError={ createNavigationMenuIsError }\n\t\t\t\t\tcurrentMenuId={ ref }\n\t\t\t\t\tisNavigationMenuMissing={ isNavigationMenuMissing }\n\t\t\t\t\tisManageMenusButtonDisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\tonCreateNew={ createUntitledEmptyNavigationMenu }\n\t\t\t\t\tonSelectClassicMenu={ onSelectClassicMenu }\n\t\t\t\t\tonSelectNavigationMenu={ onSelectNavigationMenu }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t\tblockEditingMode={ blockEditingMode }\n\t\t\t\t/>\n\t\t\t\t{ blockEditingMode === 'default' && stylingInspectorControls }\n\t\t\t\t{ blockEditingMode === 'default' && isEntityAvailable && (\n\t\t\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t\t\t{ hasResolvedCanUserUpdateNavigationMenu &&\n\t\t\t\t\t\t\tcanUserUpdateNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuNameControl />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ hasResolvedCanUserDeleteNavigationMenu &&\n\t\t\t\t\t\t\tcanUserDeleteNavigationMenu && (\n\t\t\t\t\t\t\t\t<NavigationMenuDeleteControl\n\t\t\t\t\t\t\t\t\tonDelete={ ( deletedMenuTitle = '' ) => {\n\t\t\t\t\t\t\t\t\t\treplaceInnerBlocks( clientId, [] );\n\t\t\t\t\t\t\t\t\t\tshowNavigationMenuStatusNotice(\n\t\t\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t\t\t// translators: %s: the name of a menu (e.g. Header navigation).\n\t\t\t\t\t\t\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t\t\t\t\t\t\t'Navigation menu %s successfully deleted.'\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\tdeletedMenuTitle\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t<ManageMenusButton\n\t\t\t\t\t\t\tdisabled={ isManageMenusButtonDisabled }\n\t\t\t\t\t\t\tclassName=\"wp-block-navigation-manage-menus-button\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t) }\n\n\t\t\t\t{ isLoading && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<div className=\"wp-block-navigation__loading-indicator-container\">\n\t\t\t\t\t\t\t<Spinner className=\"wp-block-navigation__loading-indicator\" />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\n\t\t\t\t{ ! isLoading && (\n\t\t\t\t\t<TagName\n\t\t\t\t\t\t{ ...blockProps }\n\t\t\t\t\t\taria-describedby={\n\t\t\t\t\t\t\t! isPlaceholder\n\t\t\t\t\t\t\t\t? accessibleDescriptionId\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t<AccessibleMenuDescription\n\t\t\t\t\t\t\tid={ accessibleDescriptionId }\n\t\t\t\t\t\t/>\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\thasIcon={ hasIcon }\n\t\t\t\t\t\t\ticon={ icon }\n\t\t\t\t\t\t\tisOpen={ isResponsiveMenuOpen }\n\t\t\t\t\t\t\tisResponsive={ isResponsive }\n\t\t\t\t\t\t\tisHiddenByDefault={ 'always' === overlayMenu }\n\t\t\t\t\t\t\toverlayBackgroundColor={ overlayBackgroundColor }\n\t\t\t\t\t\t\toverlayTextColor={ overlayTextColor }\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\tclientId={ clientId }\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\ttemplateLock={ templateLock }\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</TagName>\n\t\t\t\t) }\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"],"mappings":"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"}