@wordpress/block-editor 15.0.1-next.46f643fa0.0 → 15.1.1-next.0f6f9d12c.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/components/block-settings-menu/block-settings-dropdown.js +6 -2
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-toolbar/block-toolbar-menu.native.js +2 -2
- package/build/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
- package/build/components/border-radius-control/constants.js +41 -0
- package/build/components/border-radius-control/constants.js.map +1 -0
- package/build/components/border-radius-control/index.js +49 -58
- package/build/components/border-radius-control/index.js.map +1 -1
- package/build/components/border-radius-control/linked-button.js +1 -1
- package/build/components/border-radius-control/linked-button.js.map +1 -1
- package/build/components/border-radius-control/single-input-control.js +204 -0
- package/build/components/border-radius-control/single-input-control.js.map +1 -0
- package/build/components/border-radius-control/utils.js +161 -4
- package/build/components/border-radius-control/utils.js.map +1 -1
- package/build/components/global-styles/border-panel.js +12 -1
- package/build/components/global-styles/border-panel.js.map +1 -1
- package/build/components/global-styles/hooks.js +1 -1
- package/build/components/global-styles/hooks.js.map +1 -1
- package/build/components/global-styles/utils.js +5 -3
- package/build/components/global-styles/utils.js.map +1 -1
- package/build/components/rich-text/index.js +9 -4
- package/build/components/rich-text/index.js.map +1 -1
- package/build/components/rich-text/use-format-types.js +19 -8
- package/build/components/rich-text/use-format-types.js.map +1 -1
- package/build/components/url-popover/image-url-input-ui.js +2 -1
- package/build/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build/hooks/duotone.js +2 -2
- package/build/hooks/duotone.js.map +1 -1
- package/build/hooks/utils.js +4 -3
- package/build/hooks/utils.js.map +1 -1
- package/build/private-apis.js +2 -1
- package/build/private-apis.js.map +1 -1
- package/build/store/private-keys.js +2 -1
- package/build/store/private-keys.js.map +1 -1
- package/build-module/components/block-settings-menu/block-settings-dropdown.js +6 -2
- package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build-module/components/block-toolbar/block-toolbar-menu.native.js +3 -3
- package/build-module/components/block-toolbar/block-toolbar-menu.native.js.map +1 -1
- package/build-module/components/border-radius-control/constants.js +34 -0
- package/build-module/components/border-radius-control/constants.js.map +1 -0
- package/build-module/components/border-radius-control/index.js +53 -62
- package/build-module/components/border-radius-control/index.js.map +1 -1
- package/build-module/components/border-radius-control/linked-button.js +1 -1
- package/build-module/components/border-radius-control/linked-button.js.map +1 -1
- package/build-module/components/border-radius-control/single-input-control.js +197 -0
- package/build-module/components/border-radius-control/single-input-control.js.map +1 -0
- package/build-module/components/border-radius-control/utils.js +154 -4
- package/build-module/components/border-radius-control/utils.js.map +1 -1
- package/build-module/components/global-styles/border-panel.js +12 -1
- package/build-module/components/global-styles/border-panel.js.map +1 -1
- package/build-module/components/global-styles/hooks.js +1 -1
- package/build-module/components/global-styles/hooks.js.map +1 -1
- package/build-module/components/global-styles/utils.js +5 -3
- package/build-module/components/global-styles/utils.js.map +1 -1
- package/build-module/components/rich-text/index.js +9 -4
- package/build-module/components/rich-text/index.js.map +1 -1
- package/build-module/components/rich-text/use-format-types.js +19 -8
- package/build-module/components/rich-text/use-format-types.js.map +1 -1
- package/build-module/components/url-popover/image-url-input-ui.js +2 -1
- package/build-module/components/url-popover/image-url-input-ui.js.map +1 -1
- package/build-module/hooks/duotone.js +3 -3
- package/build-module/hooks/duotone.js.map +1 -1
- package/build-module/hooks/utils.js +4 -3
- package/build-module/hooks/utils.js.map +1 -1
- package/build-module/private-apis.js +3 -2
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/private-keys.js +1 -0
- package/build-module/store/private-keys.js.map +1 -1
- package/build-style/style-rtl.css +17 -23
- package/build-style/style.css +17 -23
- package/package.json +34 -34
- package/src/components/block-settings-menu/block-settings-dropdown.js +22 -14
- package/src/components/block-toolbar/block-toolbar-menu.native.js +3 -3
- package/src/components/block-variation-transforms/style.scss +1 -0
- package/src/components/border-radius-control/constants.js +46 -0
- package/src/components/border-radius-control/index.js +71 -72
- package/src/components/border-radius-control/linked-button.js +1 -1
- package/src/components/border-radius-control/single-input-control.js +277 -0
- package/src/components/border-radius-control/style.scss +16 -21
- package/src/components/border-radius-control/utils.js +178 -5
- package/src/components/global-styles/border-panel.js +12 -1
- package/src/components/global-styles/hooks.js +1 -0
- package/src/components/global-styles/utils.js +6 -1
- package/src/components/media-replace-flow/style.scss +0 -6
- package/src/components/rich-text/index.js +19 -10
- package/src/components/rich-text/use-format-types.js +42 -19
- package/src/components/url-popover/image-url-input-ui.js +2 -1
- package/src/hooks/duotone.js +11 -3
- package/src/hooks/utils.js +4 -0
- package/src/private-apis.js +2 -0
- package/src/store/private-keys.js +1 -0
- package/build/components/border-radius-control/all-input-control.js +0 -65
- package/build/components/border-radius-control/all-input-control.js.map +0 -1
- package/build/components/border-radius-control/input-controls.js +0 -82
- package/build/components/border-radius-control/input-controls.js.map +0 -1
- package/build-module/components/border-radius-control/all-input-control.js +0 -58
- package/build-module/components/border-radius-control/all-input-control.js.map +0 -1
- package/build-module/components/border-radius-control/input-controls.js +0 -75
- package/build-module/components/border-radius-control/input-controls.js.map +0 -1
- package/src/components/border-radius-control/all-input-control.js +0 -67
- package/src/components/border-radius-control/input-controls.js +0 -91
package/build/hooks/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_blocks","require","_element","_data","_compose","_hooks","_context","_components","_hooks2","_object","_store","_lockUnlock","_clsx","_interopRequireDefault","_jsxRuntime","cleanEmptyObject","object","Array","isArray","cleanedNestedObjects","Object","entries","map","key","value","filter","undefined","length","fromEntries","exports","transformStyles","activeSupports","migrationPaths","result","source","index","results","values","every","isActive","innerBlocks","referenceBlockAttributes","attributes","returnBlock","forEach","support","path","styleValue","getValueFromObjectPath","setImmutably","shouldSkipSerialization","blockNameOrType","featureSet","feature","getBlockSupport","skipSerialization","__experimentalSkipSerialization","includes","pendingStyleOverrides","WeakMap","useStyleOverride","id","css","usePrivateStyleOverride","assets","__unstableType","variation","clientId","setStyleOverride","deleteStyleOverride","unlock","useDispatch","blockEditorStore","registry","useRegistry","fallbackId","useId","useEffect","_id","override","get","set","push","window","queueMicrotask","batch","args","isPending","find","currentId","useBlockSettings","name","parentLayout","backgroundImage","backgroundSize","customFontFamilies","defaultFontFamilies","themeFontFamilies","defaultFontSizesEnabled","customFontSizes","defaultFontSizes","themeFontSizes","customFontSize","fontStyle","fontWeight","lineHeight","textAlign","textColumns","textDecoration","writingMode","textTransform","letterSpacing","padding","margin","blockGap","defaultSpacingSizesEnabled","customSpacingSize","userSpacingSizes","defaultSpacingSizes","themeSpacingSizes","units","aspectRatio","minHeight","layout","borderColor","borderRadius","borderStyle","borderWidth","customColorsEnabled","customColors","customDuotone","themeColors","defaultColors","defaultPalette","defaultDuotone","userDuotonePalette","themeDuotonePalette","defaultDuotonePalette","userGradientPalette","themeGradientPalette","defaultGradientPalette","defaultGradients","areCustomGradientsEnabled","isBackgroundEnabled","isLinkEnabled","isTextEnabled","isHeadingEnabled","isButtonEnabled","shadow","useSettings","rawSettings","useMemo","background","color","palette","custom","theme","default","gradients","duotone","customGradient","link","heading","button","text","typography","fontFamilies","fontSizes","spacing","spacingSizes","border","radius","style","width","dimensions","useSettingsForBlockElement","createBlockEditFilter","features","settings","Edit","memo","edit","withBlockEditHooks","createHigherOrderComponent","OriginalBlockEdit","props","context","useBlockEditContext","i","hasSupport","attributeKeys","shareWithChildBlocks","shouldDisplayControls","mayDisplayControlsKey","mayDisplayParentControlsKey","neededProps","jsx","isSelected","setAttributes","__unstableParentLayout","addFilter","BlockProps","useBlockProps","hook","setAllWrapperProps","wrapperProps","setWrapperProps","next","prev","nextAll","BlockPropsPure","createBlockListBlockFilter","withBlockListBlockHooks","BlockListBlock","allWrapperProps","useState","fill","isMatch","keys","Boolean","reduce","acc","className","clsx","createBlockSaveFilter","extraPropsFromHooks","accu","addSaveProps","neededAttributes","hasOwnProperty"],"sources":["@wordpress/block-editor/src/hooks/utils.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getBlockSupport } from '@wordpress/blocks';\nimport { memo, useMemo, useEffect, useId, useState } from '@wordpress/element';\nimport { useDispatch, useRegistry } from '@wordpress/data';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseBlockEditContext,\n\tmayDisplayControlsKey,\n\tmayDisplayParentControlsKey,\n} from '../components/block-edit/context';\nimport { useSettings } from '../components';\nimport { useSettingsForBlockElement } from '../components/global-styles/hooks';\nimport { getValueFromObjectPath, setImmutably } from '../utils/object';\nimport { store as blockEditorStore } from '../store';\nimport { unlock } from '../lock-unlock';\n/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * Removed falsy values from nested object.\n *\n * @param {*} object\n * @return {*} Object cleaned from falsy values\n */\nexport const cleanEmptyObject = ( object ) => {\n\tif (\n\t\tobject === null ||\n\t\ttypeof object !== 'object' ||\n\t\tArray.isArray( object )\n\t) {\n\t\treturn object;\n\t}\n\n\tconst cleanedNestedObjects = Object.entries( object )\n\t\t.map( ( [ key, value ] ) => [ key, cleanEmptyObject( value ) ] )\n\t\t.filter( ( [ , value ] ) => value !== undefined );\n\treturn ! cleanedNestedObjects.length\n\t\t? undefined\n\t\t: Object.fromEntries( cleanedNestedObjects );\n};\n\nexport function transformStyles(\n\tactiveSupports,\n\tmigrationPaths,\n\tresult,\n\tsource,\n\tindex,\n\tresults\n) {\n\t// If there are no active supports return early.\n\tif (\n\t\tObject.values( activeSupports ?? {} ).every(\n\t\t\t( isActive ) => ! isActive\n\t\t)\n\t) {\n\t\treturn result;\n\t}\n\t// If the condition verifies we are probably in the presence of a wrapping transform\n\t// e.g: nesting paragraphs in a group or columns and in that case the styles should not be transformed.\n\tif ( results.length === 1 && result.innerBlocks.length === source.length ) {\n\t\treturn result;\n\t}\n\t// For cases where we have a transform from one block to multiple blocks\n\t// or multiple blocks to one block we apply the styles of the first source block\n\t// to the result(s).\n\tlet referenceBlockAttributes = source[ 0 ]?.attributes;\n\t// If we are in presence of transform between more than one block in the source\n\t// that has more than one block in the result\n\t// we apply the styles on source N to the result N,\n\t// if source N does not exists we do nothing.\n\tif ( results.length > 1 && source.length > 1 ) {\n\t\tif ( source[ index ] ) {\n\t\t\treferenceBlockAttributes = source[ index ]?.attributes;\n\t\t} else {\n\t\t\treturn result;\n\t\t}\n\t}\n\tlet returnBlock = result;\n\tObject.entries( activeSupports ).forEach( ( [ support, isActive ] ) => {\n\t\tif ( isActive ) {\n\t\t\tmigrationPaths[ support ].forEach( ( path ) => {\n\t\t\t\tconst styleValue = getValueFromObjectPath(\n\t\t\t\t\treferenceBlockAttributes,\n\t\t\t\t\tpath\n\t\t\t\t);\n\t\t\t\tif ( styleValue ) {\n\t\t\t\t\treturnBlock = {\n\t\t\t\t\t\t...returnBlock,\n\t\t\t\t\t\tattributes: setImmutably(\n\t\t\t\t\t\t\treturnBlock.attributes,\n\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\tstyleValue\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t} );\n\treturn returnBlock;\n}\n\n/**\n * Check whether serialization of specific block support feature or set should\n * be skipped.\n *\n * @param {string|Object} blockNameOrType Block name or block type object.\n * @param {string} featureSet Name of block support feature set.\n * @param {string} feature Name of the individual feature to check.\n *\n * @return {boolean} Whether serialization should occur.\n */\nexport function shouldSkipSerialization(\n\tblockNameOrType,\n\tfeatureSet,\n\tfeature\n) {\n\tconst support = getBlockSupport( blockNameOrType, featureSet );\n\tconst skipSerialization = support?.__experimentalSkipSerialization;\n\n\tif ( Array.isArray( skipSerialization ) ) {\n\t\treturn skipSerialization.includes( feature );\n\t}\n\n\treturn skipSerialization;\n}\n\nconst pendingStyleOverrides = new WeakMap();\n\n/**\n * Override a block editor settings style. Leave the ID blank to create a new\n * style.\n *\n * @param {Object} override Override object.\n * @param {?string} override.id Id of the style override, leave blank to create\n * a new style.\n * @param {string} override.css CSS to apply.\n */\nexport function useStyleOverride( { id, css } ) {\n\treturn usePrivateStyleOverride( { id, css } );\n}\n\nexport function usePrivateStyleOverride( {\n\tid,\n\tcss,\n\tassets,\n\t__unstableType,\n\tvariation,\n\tclientId,\n} = {} ) {\n\tconst { setStyleOverride, deleteStyleOverride } = unlock(\n\t\tuseDispatch( blockEditorStore )\n\t);\n\tconst registry = useRegistry();\n\tconst fallbackId = useId();\n\tuseEffect( () => {\n\t\t// Unmount if there is CSS and assets are empty.\n\t\tif ( ! css && ! assets ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst _id = id || fallbackId;\n\t\tconst override = {\n\t\t\tid,\n\t\t\tcss,\n\t\t\tassets,\n\t\t\t__unstableType,\n\t\t\tvariation,\n\t\t\tclientId,\n\t\t};\n\t\t// Batch updates to style overrides to avoid triggering cascading renders\n\t\t// for each style override block included in a tree and optimize initial render.\n\t\tif ( ! pendingStyleOverrides.get( registry ) ) {\n\t\t\tpendingStyleOverrides.set( registry, [] );\n\t\t}\n\t\tpendingStyleOverrides.get( registry ).push( [ _id, override ] );\n\t\twindow.queueMicrotask( () => {\n\t\t\tif ( pendingStyleOverrides.get( registry )?.length ) {\n\t\t\t\tregistry.batch( () => {\n\t\t\t\t\tpendingStyleOverrides.get( registry ).forEach( ( args ) => {\n\t\t\t\t\t\tsetStyleOverride( ...args );\n\t\t\t\t\t} );\n\t\t\t\t\tpendingStyleOverrides.set( registry, [] );\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\n\t\treturn () => {\n\t\t\tconst isPending = pendingStyleOverrides\n\t\t\t\t.get( registry )\n\t\t\t\t?.find( ( [ currentId ] ) => currentId === _id );\n\t\t\tif ( isPending ) {\n\t\t\t\tpendingStyleOverrides.set(\n\t\t\t\t\tregistry,\n\t\t\t\t\tpendingStyleOverrides\n\t\t\t\t\t\t.get( registry )\n\t\t\t\t\t\t.filter( ( [ currentId ] ) => currentId !== _id )\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tdeleteStyleOverride( _id );\n\t\t\t}\n\t\t};\n\t}, [\n\t\tid,\n\t\tcss,\n\t\tclientId,\n\t\tassets,\n\t\t__unstableType,\n\t\tfallbackId,\n\t\tsetStyleOverride,\n\t\tdeleteStyleOverride,\n\t\tregistry,\n\t] );\n}\n\n/**\n * Based on the block and its context, returns an object of all the block settings.\n * This object can be passed as a prop to all the Styles UI components\n * (TypographyPanel, DimensionsPanel...).\n *\n * @param {string} name Block name.\n * @param {*} parentLayout Parent layout.\n *\n * @return {Object} Settings object.\n */\nexport function useBlockSettings( name, parentLayout ) {\n\tconst [\n\t\tbackgroundImage,\n\t\tbackgroundSize,\n\t\tcustomFontFamilies,\n\t\tdefaultFontFamilies,\n\t\tthemeFontFamilies,\n\t\tdefaultFontSizesEnabled,\n\t\tcustomFontSizes,\n\t\tdefaultFontSizes,\n\t\tthemeFontSizes,\n\t\tcustomFontSize,\n\t\tfontStyle,\n\t\tfontWeight,\n\t\tlineHeight,\n\t\ttextAlign,\n\t\ttextColumns,\n\t\ttextDecoration,\n\t\twritingMode,\n\t\ttextTransform,\n\t\tletterSpacing,\n\t\tpadding,\n\t\tmargin,\n\t\tblockGap,\n\t\tdefaultSpacingSizesEnabled,\n\t\tcustomSpacingSize,\n\t\tuserSpacingSizes,\n\t\tdefaultSpacingSizes,\n\t\tthemeSpacingSizes,\n\t\tunits,\n\t\taspectRatio,\n\t\tminHeight,\n\t\tlayout,\n\t\tborderColor,\n\t\tborderRadius,\n\t\tborderStyle,\n\t\tborderWidth,\n\t\tcustomColorsEnabled,\n\t\tcustomColors,\n\t\tcustomDuotone,\n\t\tthemeColors,\n\t\tdefaultColors,\n\t\tdefaultPalette,\n\t\tdefaultDuotone,\n\t\tuserDuotonePalette,\n\t\tthemeDuotonePalette,\n\t\tdefaultDuotonePalette,\n\t\tuserGradientPalette,\n\t\tthemeGradientPalette,\n\t\tdefaultGradientPalette,\n\t\tdefaultGradients,\n\t\tareCustomGradientsEnabled,\n\t\tisBackgroundEnabled,\n\t\tisLinkEnabled,\n\t\tisTextEnabled,\n\t\tisHeadingEnabled,\n\t\tisButtonEnabled,\n\t\tshadow,\n\t] = useSettings(\n\t\t'background.backgroundImage',\n\t\t'background.backgroundSize',\n\t\t'typography.fontFamilies.custom',\n\t\t'typography.fontFamilies.default',\n\t\t'typography.fontFamilies.theme',\n\t\t'typography.defaultFontSizes',\n\t\t'typography.fontSizes.custom',\n\t\t'typography.fontSizes.default',\n\t\t'typography.fontSizes.theme',\n\t\t'typography.customFontSize',\n\t\t'typography.fontStyle',\n\t\t'typography.fontWeight',\n\t\t'typography.lineHeight',\n\t\t'typography.textAlign',\n\t\t'typography.textColumns',\n\t\t'typography.textDecoration',\n\t\t'typography.writingMode',\n\t\t'typography.textTransform',\n\t\t'typography.letterSpacing',\n\t\t'spacing.padding',\n\t\t'spacing.margin',\n\t\t'spacing.blockGap',\n\t\t'spacing.defaultSpacingSizes',\n\t\t'spacing.customSpacingSize',\n\t\t'spacing.spacingSizes.custom',\n\t\t'spacing.spacingSizes.default',\n\t\t'spacing.spacingSizes.theme',\n\t\t'spacing.units',\n\t\t'dimensions.aspectRatio',\n\t\t'dimensions.minHeight',\n\t\t'layout',\n\t\t'border.color',\n\t\t'border.radius',\n\t\t'border.style',\n\t\t'border.width',\n\t\t'color.custom',\n\t\t'color.palette.custom',\n\t\t'color.customDuotone',\n\t\t'color.palette.theme',\n\t\t'color.palette.default',\n\t\t'color.defaultPalette',\n\t\t'color.defaultDuotone',\n\t\t'color.duotone.custom',\n\t\t'color.duotone.theme',\n\t\t'color.duotone.default',\n\t\t'color.gradients.custom',\n\t\t'color.gradients.theme',\n\t\t'color.gradients.default',\n\t\t'color.defaultGradients',\n\t\t'color.customGradient',\n\t\t'color.background',\n\t\t'color.link',\n\t\t'color.text',\n\t\t'color.heading',\n\t\t'color.button',\n\t\t'shadow'\n\t);\n\n\tconst rawSettings = useMemo( () => {\n\t\treturn {\n\t\t\tbackground: {\n\t\t\t\tbackgroundImage,\n\t\t\t\tbackgroundSize,\n\t\t\t},\n\t\t\tcolor: {\n\t\t\t\tpalette: {\n\t\t\t\t\tcustom: customColors,\n\t\t\t\t\ttheme: themeColors,\n\t\t\t\t\tdefault: defaultColors,\n\t\t\t\t},\n\t\t\t\tgradients: {\n\t\t\t\t\tcustom: userGradientPalette,\n\t\t\t\t\ttheme: themeGradientPalette,\n\t\t\t\t\tdefault: defaultGradientPalette,\n\t\t\t\t},\n\t\t\t\tduotone: {\n\t\t\t\t\tcustom: userDuotonePalette,\n\t\t\t\t\ttheme: themeDuotonePalette,\n\t\t\t\t\tdefault: defaultDuotonePalette,\n\t\t\t\t},\n\t\t\t\tdefaultGradients,\n\t\t\t\tdefaultPalette,\n\t\t\t\tdefaultDuotone,\n\t\t\t\tcustom: customColorsEnabled,\n\t\t\t\tcustomGradient: areCustomGradientsEnabled,\n\t\t\t\tcustomDuotone,\n\t\t\t\tbackground: isBackgroundEnabled,\n\t\t\t\tlink: isLinkEnabled,\n\t\t\t\theading: isHeadingEnabled,\n\t\t\t\tbutton: isButtonEnabled,\n\t\t\t\ttext: isTextEnabled,\n\t\t\t},\n\t\t\ttypography: {\n\t\t\t\tfontFamilies: {\n\t\t\t\t\tcustom: customFontFamilies,\n\t\t\t\t\tdefault: defaultFontFamilies,\n\t\t\t\t\ttheme: themeFontFamilies,\n\t\t\t\t},\n\t\t\t\tfontSizes: {\n\t\t\t\t\tcustom: customFontSizes,\n\t\t\t\t\tdefault: defaultFontSizes,\n\t\t\t\t\ttheme: themeFontSizes,\n\t\t\t\t},\n\t\t\t\tcustomFontSize,\n\t\t\t\tdefaultFontSizes: defaultFontSizesEnabled,\n\t\t\t\tfontStyle,\n\t\t\t\tfontWeight,\n\t\t\t\tlineHeight,\n\t\t\t\ttextAlign,\n\t\t\t\ttextColumns,\n\t\t\t\ttextDecoration,\n\t\t\t\ttextTransform,\n\t\t\t\tletterSpacing,\n\t\t\t\twritingMode,\n\t\t\t},\n\t\t\tspacing: {\n\t\t\t\tspacingSizes: {\n\t\t\t\t\tcustom: userSpacingSizes,\n\t\t\t\t\tdefault: defaultSpacingSizes,\n\t\t\t\t\ttheme: themeSpacingSizes,\n\t\t\t\t},\n\t\t\t\tcustomSpacingSize,\n\t\t\t\tdefaultSpacingSizes: defaultSpacingSizesEnabled,\n\t\t\t\tpadding,\n\t\t\t\tmargin,\n\t\t\t\tblockGap,\n\t\t\t\tunits,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tcolor: borderColor,\n\t\t\t\tradius: borderRadius,\n\t\t\t\tstyle: borderStyle,\n\t\t\t\twidth: borderWidth,\n\t\t\t},\n\t\t\tdimensions: {\n\t\t\t\taspectRatio,\n\t\t\t\tminHeight,\n\t\t\t},\n\t\t\tlayout,\n\t\t\tparentLayout,\n\t\t\tshadow,\n\t\t};\n\t}, [\n\t\tbackgroundImage,\n\t\tbackgroundSize,\n\t\tcustomFontFamilies,\n\t\tdefaultFontFamilies,\n\t\tthemeFontFamilies,\n\t\tdefaultFontSizesEnabled,\n\t\tcustomFontSizes,\n\t\tdefaultFontSizes,\n\t\tthemeFontSizes,\n\t\tcustomFontSize,\n\t\tfontStyle,\n\t\tfontWeight,\n\t\tlineHeight,\n\t\ttextAlign,\n\t\ttextColumns,\n\t\ttextDecoration,\n\t\ttextTransform,\n\t\tletterSpacing,\n\t\twritingMode,\n\t\tpadding,\n\t\tmargin,\n\t\tblockGap,\n\t\tdefaultSpacingSizesEnabled,\n\t\tcustomSpacingSize,\n\t\tuserSpacingSizes,\n\t\tdefaultSpacingSizes,\n\t\tthemeSpacingSizes,\n\t\tunits,\n\t\taspectRatio,\n\t\tminHeight,\n\t\tlayout,\n\t\tparentLayout,\n\t\tborderColor,\n\t\tborderRadius,\n\t\tborderStyle,\n\t\tborderWidth,\n\t\tcustomColorsEnabled,\n\t\tcustomColors,\n\t\tcustomDuotone,\n\t\tthemeColors,\n\t\tdefaultColors,\n\t\tdefaultPalette,\n\t\tdefaultDuotone,\n\t\tuserDuotonePalette,\n\t\tthemeDuotonePalette,\n\t\tdefaultDuotonePalette,\n\t\tuserGradientPalette,\n\t\tthemeGradientPalette,\n\t\tdefaultGradientPalette,\n\t\tdefaultGradients,\n\t\tareCustomGradientsEnabled,\n\t\tisBackgroundEnabled,\n\t\tisLinkEnabled,\n\t\tisTextEnabled,\n\t\tisHeadingEnabled,\n\t\tisButtonEnabled,\n\t\tshadow,\n\t] );\n\n\treturn useSettingsForBlockElement( rawSettings, name );\n}\n\nexport function createBlockEditFilter( features ) {\n\t// We don't want block controls to re-render when typing inside a block.\n\t// `memo` will prevent re-renders unless props change, so only pass the\n\t// needed props and not the whole attributes object.\n\tfeatures = features.map( ( settings ) => {\n\t\treturn { ...settings, Edit: memo( settings.edit ) };\n\t} );\n\tconst withBlockEditHooks = createHigherOrderComponent(\n\t\t( OriginalBlockEdit ) => ( props ) => {\n\t\t\tconst context = useBlockEditContext();\n\t\t\t// CAUTION: code added before this line will be executed for all\n\t\t\t// blocks, not just those that support the feature! Code added\n\t\t\t// above this line should be carefully evaluated for its impact on\n\t\t\t// performance.\n\t\t\treturn [\n\t\t\t\t...features.map( ( feature, i ) => {\n\t\t\t\t\tconst {\n\t\t\t\t\t\tEdit,\n\t\t\t\t\t\thasSupport,\n\t\t\t\t\t\tattributeKeys = [],\n\t\t\t\t\t\tshareWithChildBlocks,\n\t\t\t\t\t} = feature;\n\t\t\t\t\tconst shouldDisplayControls =\n\t\t\t\t\t\tcontext[ mayDisplayControlsKey ] ||\n\t\t\t\t\t\t( context[ mayDisplayParentControlsKey ] &&\n\t\t\t\t\t\t\tshareWithChildBlocks );\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t! shouldDisplayControls ||\n\t\t\t\t\t\t! hasSupport( props.name )\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst neededProps = {};\n\t\t\t\t\tfor ( const key of attributeKeys ) {\n\t\t\t\t\t\tif ( props.attributes[ key ] ) {\n\t\t\t\t\t\t\tneededProps[ key ] = props.attributes[ key ];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Edit\n\t\t\t\t\t\t\t// We can use the index because the array length\n\t\t\t\t\t\t\t// is fixed per page load right now.\n\t\t\t\t\t\t\tkey={ i }\n\t\t\t\t\t\t\tname={ props.name }\n\t\t\t\t\t\t\tisSelected={ props.isSelected }\n\t\t\t\t\t\t\tclientId={ props.clientId }\n\t\t\t\t\t\t\tsetAttributes={ props.setAttributes }\n\t\t\t\t\t\t\t__unstableParentLayout={\n\t\t\t\t\t\t\t\tprops.__unstableParentLayout\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// This component is pure, so only pass needed\n\t\t\t\t\t\t\t// props!!!\n\t\t\t\t\t\t\t{ ...neededProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t\t\t<OriginalBlockEdit key=\"edit\" { ...props } />,\n\t\t\t];\n\t\t},\n\t\t'withBlockEditHooks'\n\t);\n\taddFilter( 'editor.BlockEdit', 'core/editor/hooks', withBlockEditHooks );\n}\n\nfunction BlockProps( {\n\tindex,\n\tuseBlockProps: hook,\n\tsetAllWrapperProps,\n\t...props\n} ) {\n\tconst wrapperProps = hook( props );\n\tconst setWrapperProps = ( next ) =>\n\t\tsetAllWrapperProps( ( prev ) => {\n\t\t\tconst nextAll = [ ...prev ];\n\t\t\tnextAll[ index ] = next;\n\t\t\treturn nextAll;\n\t\t} );\n\t// Setting state after every render is fine because this component is\n\t// pure and will only re-render when needed props change.\n\tuseEffect( () => {\n\t\t// We could shallow compare the props, but since this component only\n\t\t// changes when needed attributes change, the benefit is probably small.\n\t\tsetWrapperProps( wrapperProps );\n\t\treturn () => {\n\t\t\tsetWrapperProps( undefined );\n\t\t};\n\t} );\n\treturn null;\n}\n\nconst BlockPropsPure = memo( BlockProps );\n\nexport function createBlockListBlockFilter( features ) {\n\tconst withBlockListBlockHooks = createHigherOrderComponent(\n\t\t( BlockListBlock ) => ( props ) => {\n\t\t\tconst [ allWrapperProps, setAllWrapperProps ] = useState(\n\t\t\t\tArray( features.length ).fill( undefined )\n\t\t\t);\n\t\t\treturn [\n\t\t\t\t...features.map( ( feature, i ) => {\n\t\t\t\t\tconst {\n\t\t\t\t\t\thasSupport,\n\t\t\t\t\t\tattributeKeys = [],\n\t\t\t\t\t\tuseBlockProps,\n\t\t\t\t\t\tisMatch,\n\t\t\t\t\t} = feature;\n\n\t\t\t\t\tconst neededProps = {};\n\t\t\t\t\tfor ( const key of attributeKeys ) {\n\t\t\t\t\t\tif ( props.attributes[ key ] ) {\n\t\t\t\t\t\t\tneededProps[ key ] = props.attributes[ key ];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t// Skip rendering if none of the needed attributes are\n\t\t\t\t\t\t// set.\n\t\t\t\t\t\t! Object.keys( neededProps ).length ||\n\t\t\t\t\t\t! hasSupport( props.name ) ||\n\t\t\t\t\t\t( isMatch && ! isMatch( neededProps ) )\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<BlockPropsPure\n\t\t\t\t\t\t\t// We can use the index because the array length\n\t\t\t\t\t\t\t// is fixed per page load right now.\n\t\t\t\t\t\t\tkey={ i }\n\t\t\t\t\t\t\tindex={ i }\n\t\t\t\t\t\t\tuseBlockProps={ useBlockProps }\n\t\t\t\t\t\t\t// This component is pure, so we must pass a stable\n\t\t\t\t\t\t\t// function reference.\n\t\t\t\t\t\t\tsetAllWrapperProps={ setAllWrapperProps }\n\t\t\t\t\t\t\tname={ props.name }\n\t\t\t\t\t\t\tclientId={ props.clientId }\n\t\t\t\t\t\t\t// This component is pure, so only pass needed\n\t\t\t\t\t\t\t// props!!!\n\t\t\t\t\t\t\t{ ...neededProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t\t\t<BlockListBlock\n\t\t\t\t\tkey=\"edit\"\n\t\t\t\t\t{ ...props }\n\t\t\t\t\twrapperProps={ allWrapperProps\n\t\t\t\t\t\t.filter( Boolean )\n\t\t\t\t\t\t.reduce( ( acc, wrapperProps ) => {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t\t\t...wrapperProps,\n\t\t\t\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t\t\t\tacc.className,\n\t\t\t\t\t\t\t\t\twrapperProps.className\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\t...acc.style,\n\t\t\t\t\t\t\t\t\t...wrapperProps.style,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}, props.wrapperProps || {} ) }\n\t\t\t\t/>,\n\t\t\t];\n\t\t},\n\t\t'withBlockListBlockHooks'\n\t);\n\taddFilter(\n\t\t'editor.BlockListBlock',\n\t\t'core/editor/hooks',\n\t\twithBlockListBlockHooks\n\t);\n}\n\nexport function createBlockSaveFilter( features ) {\n\tfunction extraPropsFromHooks( props, name, attributes ) {\n\t\treturn features.reduce( ( accu, feature ) => {\n\t\t\tconst { hasSupport, attributeKeys = [], addSaveProps } = feature;\n\n\t\t\tconst neededAttributes = {};\n\t\t\tfor ( const key of attributeKeys ) {\n\t\t\t\tif ( attributes[ key ] ) {\n\t\t\t\t\tneededAttributes[ key ] = attributes[ key ];\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t// Skip rendering if none of the needed attributes are\n\t\t\t\t// set.\n\t\t\t\t! Object.keys( neededAttributes ).length ||\n\t\t\t\t! hasSupport( name )\n\t\t\t) {\n\t\t\t\treturn accu;\n\t\t\t}\n\n\t\t\treturn addSaveProps( accu, name, neededAttributes );\n\t\t}, props );\n\t}\n\taddFilter(\n\t\t'blocks.getSaveContent.extraProps',\n\t\t'core/editor/hooks',\n\t\textraPropsFromHooks,\n\t\t0\n\t);\n\taddFilter(\n\t\t'blocks.getSaveContent.extraProps',\n\t\t'core/editor/hooks',\n\t\t( props ) => {\n\t\t\t// Previously we had a filter deleting the className if it was an empty\n\t\t\t// string. That filter is no longer running, so now we need to delete it\n\t\t\t// here.\n\t\t\tif ( props.hasOwnProperty( 'className' ) && ! props.className ) {\n\t\t\t\tdelete props.className;\n\t\t\t}\n\n\t\t\treturn props;\n\t\t}\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_blocks","require","_element","_data","_compose","_hooks","_context","_components","_hooks2","_object","_store","_lockUnlock","_clsx","_interopRequireDefault","_jsxRuntime","cleanEmptyObject","object","Array","isArray","cleanedNestedObjects","Object","entries","map","key","value","filter","undefined","length","fromEntries","exports","transformStyles","activeSupports","migrationPaths","result","source","index","results","values","every","isActive","innerBlocks","referenceBlockAttributes","attributes","returnBlock","forEach","support","path","styleValue","getValueFromObjectPath","setImmutably","shouldSkipSerialization","blockNameOrType","featureSet","feature","getBlockSupport","skipSerialization","__experimentalSkipSerialization","includes","pendingStyleOverrides","WeakMap","useStyleOverride","id","css","usePrivateStyleOverride","assets","__unstableType","variation","clientId","setStyleOverride","deleteStyleOverride","unlock","useDispatch","blockEditorStore","registry","useRegistry","fallbackId","useId","useEffect","_id","override","get","set","push","window","queueMicrotask","batch","args","isPending","find","currentId","useBlockSettings","name","parentLayout","backgroundImage","backgroundSize","customFontFamilies","defaultFontFamilies","themeFontFamilies","defaultFontSizesEnabled","customFontSizes","defaultFontSizes","themeFontSizes","customFontSize","fontStyle","fontWeight","lineHeight","textAlign","textColumns","textDecoration","writingMode","textTransform","letterSpacing","padding","margin","blockGap","defaultSpacingSizesEnabled","customSpacingSize","userSpacingSizes","defaultSpacingSizes","themeSpacingSizes","units","aspectRatio","minHeight","layout","borderColor","borderRadius","borderStyle","borderWidth","borderRadiusSizes","customColorsEnabled","customColors","customDuotone","themeColors","defaultColors","defaultPalette","defaultDuotone","userDuotonePalette","themeDuotonePalette","defaultDuotonePalette","userGradientPalette","themeGradientPalette","defaultGradientPalette","defaultGradients","areCustomGradientsEnabled","isBackgroundEnabled","isLinkEnabled","isTextEnabled","isHeadingEnabled","isButtonEnabled","shadow","useSettings","rawSettings","useMemo","background","color","palette","custom","theme","default","gradients","duotone","customGradient","link","heading","button","text","typography","fontFamilies","fontSizes","spacing","spacingSizes","border","radius","style","width","radiusSizes","dimensions","useSettingsForBlockElement","createBlockEditFilter","features","settings","Edit","memo","edit","withBlockEditHooks","createHigherOrderComponent","OriginalBlockEdit","props","context","useBlockEditContext","i","hasSupport","attributeKeys","shareWithChildBlocks","shouldDisplayControls","mayDisplayControlsKey","mayDisplayParentControlsKey","neededProps","jsx","isSelected","setAttributes","__unstableParentLayout","addFilter","BlockProps","useBlockProps","hook","setAllWrapperProps","wrapperProps","setWrapperProps","next","prev","nextAll","BlockPropsPure","createBlockListBlockFilter","withBlockListBlockHooks","BlockListBlock","allWrapperProps","useState","fill","isMatch","keys","Boolean","reduce","acc","className","clsx","createBlockSaveFilter","extraPropsFromHooks","accu","addSaveProps","neededAttributes","hasOwnProperty"],"sources":["@wordpress/block-editor/src/hooks/utils.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { getBlockSupport } from '@wordpress/blocks';\nimport { memo, useMemo, useEffect, useId, useState } from '@wordpress/element';\nimport { useDispatch, useRegistry } from '@wordpress/data';\nimport { createHigherOrderComponent } from '@wordpress/compose';\nimport { addFilter } from '@wordpress/hooks';\n\n/**\n * Internal dependencies\n */\nimport {\n\tuseBlockEditContext,\n\tmayDisplayControlsKey,\n\tmayDisplayParentControlsKey,\n} from '../components/block-edit/context';\nimport { useSettings } from '../components';\nimport { useSettingsForBlockElement } from '../components/global-styles/hooks';\nimport { getValueFromObjectPath, setImmutably } from '../utils/object';\nimport { store as blockEditorStore } from '../store';\nimport { unlock } from '../lock-unlock';\n/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * Removed falsy values from nested object.\n *\n * @param {*} object\n * @return {*} Object cleaned from falsy values\n */\nexport const cleanEmptyObject = ( object ) => {\n\tif (\n\t\tobject === null ||\n\t\ttypeof object !== 'object' ||\n\t\tArray.isArray( object )\n\t) {\n\t\treturn object;\n\t}\n\n\tconst cleanedNestedObjects = Object.entries( object )\n\t\t.map( ( [ key, value ] ) => [ key, cleanEmptyObject( value ) ] )\n\t\t.filter( ( [ , value ] ) => value !== undefined );\n\treturn ! cleanedNestedObjects.length\n\t\t? undefined\n\t\t: Object.fromEntries( cleanedNestedObjects );\n};\n\nexport function transformStyles(\n\tactiveSupports,\n\tmigrationPaths,\n\tresult,\n\tsource,\n\tindex,\n\tresults\n) {\n\t// If there are no active supports return early.\n\tif (\n\t\tObject.values( activeSupports ?? {} ).every(\n\t\t\t( isActive ) => ! isActive\n\t\t)\n\t) {\n\t\treturn result;\n\t}\n\t// If the condition verifies we are probably in the presence of a wrapping transform\n\t// e.g: nesting paragraphs in a group or columns and in that case the styles should not be transformed.\n\tif ( results.length === 1 && result.innerBlocks.length === source.length ) {\n\t\treturn result;\n\t}\n\t// For cases where we have a transform from one block to multiple blocks\n\t// or multiple blocks to one block we apply the styles of the first source block\n\t// to the result(s).\n\tlet referenceBlockAttributes = source[ 0 ]?.attributes;\n\t// If we are in presence of transform between more than one block in the source\n\t// that has more than one block in the result\n\t// we apply the styles on source N to the result N,\n\t// if source N does not exists we do nothing.\n\tif ( results.length > 1 && source.length > 1 ) {\n\t\tif ( source[ index ] ) {\n\t\t\treferenceBlockAttributes = source[ index ]?.attributes;\n\t\t} else {\n\t\t\treturn result;\n\t\t}\n\t}\n\tlet returnBlock = result;\n\tObject.entries( activeSupports ).forEach( ( [ support, isActive ] ) => {\n\t\tif ( isActive ) {\n\t\t\tmigrationPaths[ support ].forEach( ( path ) => {\n\t\t\t\tconst styleValue = getValueFromObjectPath(\n\t\t\t\t\treferenceBlockAttributes,\n\t\t\t\t\tpath\n\t\t\t\t);\n\t\t\t\tif ( styleValue ) {\n\t\t\t\t\treturnBlock = {\n\t\t\t\t\t\t...returnBlock,\n\t\t\t\t\t\tattributes: setImmutably(\n\t\t\t\t\t\t\treturnBlock.attributes,\n\t\t\t\t\t\t\tpath,\n\t\t\t\t\t\t\tstyleValue\n\t\t\t\t\t\t),\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\t} );\n\treturn returnBlock;\n}\n\n/**\n * Check whether serialization of specific block support feature or set should\n * be skipped.\n *\n * @param {string|Object} blockNameOrType Block name or block type object.\n * @param {string} featureSet Name of block support feature set.\n * @param {string} feature Name of the individual feature to check.\n *\n * @return {boolean} Whether serialization should occur.\n */\nexport function shouldSkipSerialization(\n\tblockNameOrType,\n\tfeatureSet,\n\tfeature\n) {\n\tconst support = getBlockSupport( blockNameOrType, featureSet );\n\tconst skipSerialization = support?.__experimentalSkipSerialization;\n\n\tif ( Array.isArray( skipSerialization ) ) {\n\t\treturn skipSerialization.includes( feature );\n\t}\n\n\treturn skipSerialization;\n}\n\nconst pendingStyleOverrides = new WeakMap();\n\n/**\n * Override a block editor settings style. Leave the ID blank to create a new\n * style.\n *\n * @param {Object} override Override object.\n * @param {?string} override.id Id of the style override, leave blank to create\n * a new style.\n * @param {string} override.css CSS to apply.\n */\nexport function useStyleOverride( { id, css } ) {\n\treturn usePrivateStyleOverride( { id, css } );\n}\n\nexport function usePrivateStyleOverride( {\n\tid,\n\tcss,\n\tassets,\n\t__unstableType,\n\tvariation,\n\tclientId,\n} = {} ) {\n\tconst { setStyleOverride, deleteStyleOverride } = unlock(\n\t\tuseDispatch( blockEditorStore )\n\t);\n\tconst registry = useRegistry();\n\tconst fallbackId = useId();\n\tuseEffect( () => {\n\t\t// Unmount if there is CSS and assets are empty.\n\t\tif ( ! css && ! assets ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst _id = id || fallbackId;\n\t\tconst override = {\n\t\t\tid,\n\t\t\tcss,\n\t\t\tassets,\n\t\t\t__unstableType,\n\t\t\tvariation,\n\t\t\tclientId,\n\t\t};\n\t\t// Batch updates to style overrides to avoid triggering cascading renders\n\t\t// for each style override block included in a tree and optimize initial render.\n\t\tif ( ! pendingStyleOverrides.get( registry ) ) {\n\t\t\tpendingStyleOverrides.set( registry, [] );\n\t\t}\n\t\tpendingStyleOverrides.get( registry ).push( [ _id, override ] );\n\t\twindow.queueMicrotask( () => {\n\t\t\tif ( pendingStyleOverrides.get( registry )?.length ) {\n\t\t\t\tregistry.batch( () => {\n\t\t\t\t\tpendingStyleOverrides.get( registry ).forEach( ( args ) => {\n\t\t\t\t\t\tsetStyleOverride( ...args );\n\t\t\t\t\t} );\n\t\t\t\t\tpendingStyleOverrides.set( registry, [] );\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\n\t\treturn () => {\n\t\t\tconst isPending = pendingStyleOverrides\n\t\t\t\t.get( registry )\n\t\t\t\t?.find( ( [ currentId ] ) => currentId === _id );\n\t\t\tif ( isPending ) {\n\t\t\t\tpendingStyleOverrides.set(\n\t\t\t\t\tregistry,\n\t\t\t\t\tpendingStyleOverrides\n\t\t\t\t\t\t.get( registry )\n\t\t\t\t\t\t.filter( ( [ currentId ] ) => currentId !== _id )\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tdeleteStyleOverride( _id );\n\t\t\t}\n\t\t};\n\t}, [\n\t\tid,\n\t\tcss,\n\t\tclientId,\n\t\tassets,\n\t\t__unstableType,\n\t\tfallbackId,\n\t\tsetStyleOverride,\n\t\tdeleteStyleOverride,\n\t\tregistry,\n\t] );\n}\n\n/**\n * Based on the block and its context, returns an object of all the block settings.\n * This object can be passed as a prop to all the Styles UI components\n * (TypographyPanel, DimensionsPanel...).\n *\n * @param {string} name Block name.\n * @param {*} parentLayout Parent layout.\n *\n * @return {Object} Settings object.\n */\nexport function useBlockSettings( name, parentLayout ) {\n\tconst [\n\t\tbackgroundImage,\n\t\tbackgroundSize,\n\t\tcustomFontFamilies,\n\t\tdefaultFontFamilies,\n\t\tthemeFontFamilies,\n\t\tdefaultFontSizesEnabled,\n\t\tcustomFontSizes,\n\t\tdefaultFontSizes,\n\t\tthemeFontSizes,\n\t\tcustomFontSize,\n\t\tfontStyle,\n\t\tfontWeight,\n\t\tlineHeight,\n\t\ttextAlign,\n\t\ttextColumns,\n\t\ttextDecoration,\n\t\twritingMode,\n\t\ttextTransform,\n\t\tletterSpacing,\n\t\tpadding,\n\t\tmargin,\n\t\tblockGap,\n\t\tdefaultSpacingSizesEnabled,\n\t\tcustomSpacingSize,\n\t\tuserSpacingSizes,\n\t\tdefaultSpacingSizes,\n\t\tthemeSpacingSizes,\n\t\tunits,\n\t\taspectRatio,\n\t\tminHeight,\n\t\tlayout,\n\t\tborderColor,\n\t\tborderRadius,\n\t\tborderStyle,\n\t\tborderWidth,\n\t\tborderRadiusSizes,\n\t\tcustomColorsEnabled,\n\t\tcustomColors,\n\t\tcustomDuotone,\n\t\tthemeColors,\n\t\tdefaultColors,\n\t\tdefaultPalette,\n\t\tdefaultDuotone,\n\t\tuserDuotonePalette,\n\t\tthemeDuotonePalette,\n\t\tdefaultDuotonePalette,\n\t\tuserGradientPalette,\n\t\tthemeGradientPalette,\n\t\tdefaultGradientPalette,\n\t\tdefaultGradients,\n\t\tareCustomGradientsEnabled,\n\t\tisBackgroundEnabled,\n\t\tisLinkEnabled,\n\t\tisTextEnabled,\n\t\tisHeadingEnabled,\n\t\tisButtonEnabled,\n\t\tshadow,\n\t] = useSettings(\n\t\t'background.backgroundImage',\n\t\t'background.backgroundSize',\n\t\t'typography.fontFamilies.custom',\n\t\t'typography.fontFamilies.default',\n\t\t'typography.fontFamilies.theme',\n\t\t'typography.defaultFontSizes',\n\t\t'typography.fontSizes.custom',\n\t\t'typography.fontSizes.default',\n\t\t'typography.fontSizes.theme',\n\t\t'typography.customFontSize',\n\t\t'typography.fontStyle',\n\t\t'typography.fontWeight',\n\t\t'typography.lineHeight',\n\t\t'typography.textAlign',\n\t\t'typography.textColumns',\n\t\t'typography.textDecoration',\n\t\t'typography.writingMode',\n\t\t'typography.textTransform',\n\t\t'typography.letterSpacing',\n\t\t'spacing.padding',\n\t\t'spacing.margin',\n\t\t'spacing.blockGap',\n\t\t'spacing.defaultSpacingSizes',\n\t\t'spacing.customSpacingSize',\n\t\t'spacing.spacingSizes.custom',\n\t\t'spacing.spacingSizes.default',\n\t\t'spacing.spacingSizes.theme',\n\t\t'spacing.units',\n\t\t'dimensions.aspectRatio',\n\t\t'dimensions.minHeight',\n\t\t'layout',\n\t\t'border.color',\n\t\t'border.radius',\n\t\t'border.style',\n\t\t'border.width',\n\t\t'border.radiusSizes',\n\t\t'color.custom',\n\t\t'color.palette.custom',\n\t\t'color.customDuotone',\n\t\t'color.palette.theme',\n\t\t'color.palette.default',\n\t\t'color.defaultPalette',\n\t\t'color.defaultDuotone',\n\t\t'color.duotone.custom',\n\t\t'color.duotone.theme',\n\t\t'color.duotone.default',\n\t\t'color.gradients.custom',\n\t\t'color.gradients.theme',\n\t\t'color.gradients.default',\n\t\t'color.defaultGradients',\n\t\t'color.customGradient',\n\t\t'color.background',\n\t\t'color.link',\n\t\t'color.text',\n\t\t'color.heading',\n\t\t'color.button',\n\t\t'shadow'\n\t);\n\n\tconst rawSettings = useMemo( () => {\n\t\treturn {\n\t\t\tbackground: {\n\t\t\t\tbackgroundImage,\n\t\t\t\tbackgroundSize,\n\t\t\t},\n\t\t\tcolor: {\n\t\t\t\tpalette: {\n\t\t\t\t\tcustom: customColors,\n\t\t\t\t\ttheme: themeColors,\n\t\t\t\t\tdefault: defaultColors,\n\t\t\t\t},\n\t\t\t\tgradients: {\n\t\t\t\t\tcustom: userGradientPalette,\n\t\t\t\t\ttheme: themeGradientPalette,\n\t\t\t\t\tdefault: defaultGradientPalette,\n\t\t\t\t},\n\t\t\t\tduotone: {\n\t\t\t\t\tcustom: userDuotonePalette,\n\t\t\t\t\ttheme: themeDuotonePalette,\n\t\t\t\t\tdefault: defaultDuotonePalette,\n\t\t\t\t},\n\t\t\t\tdefaultGradients,\n\t\t\t\tdefaultPalette,\n\t\t\t\tdefaultDuotone,\n\t\t\t\tcustom: customColorsEnabled,\n\t\t\t\tcustomGradient: areCustomGradientsEnabled,\n\t\t\t\tcustomDuotone,\n\t\t\t\tbackground: isBackgroundEnabled,\n\t\t\t\tlink: isLinkEnabled,\n\t\t\t\theading: isHeadingEnabled,\n\t\t\t\tbutton: isButtonEnabled,\n\t\t\t\ttext: isTextEnabled,\n\t\t\t},\n\t\t\ttypography: {\n\t\t\t\tfontFamilies: {\n\t\t\t\t\tcustom: customFontFamilies,\n\t\t\t\t\tdefault: defaultFontFamilies,\n\t\t\t\t\ttheme: themeFontFamilies,\n\t\t\t\t},\n\t\t\t\tfontSizes: {\n\t\t\t\t\tcustom: customFontSizes,\n\t\t\t\t\tdefault: defaultFontSizes,\n\t\t\t\t\ttheme: themeFontSizes,\n\t\t\t\t},\n\t\t\t\tcustomFontSize,\n\t\t\t\tdefaultFontSizes: defaultFontSizesEnabled,\n\t\t\t\tfontStyle,\n\t\t\t\tfontWeight,\n\t\t\t\tlineHeight,\n\t\t\t\ttextAlign,\n\t\t\t\ttextColumns,\n\t\t\t\ttextDecoration,\n\t\t\t\ttextTransform,\n\t\t\t\tletterSpacing,\n\t\t\t\twritingMode,\n\t\t\t},\n\t\t\tspacing: {\n\t\t\t\tspacingSizes: {\n\t\t\t\t\tcustom: userSpacingSizes,\n\t\t\t\t\tdefault: defaultSpacingSizes,\n\t\t\t\t\ttheme: themeSpacingSizes,\n\t\t\t\t},\n\t\t\t\tcustomSpacingSize,\n\t\t\t\tdefaultSpacingSizes: defaultSpacingSizesEnabled,\n\t\t\t\tpadding,\n\t\t\t\tmargin,\n\t\t\t\tblockGap,\n\t\t\t\tunits,\n\t\t\t},\n\t\t\tborder: {\n\t\t\t\tcolor: borderColor,\n\t\t\t\tradius: borderRadius,\n\t\t\t\tstyle: borderStyle,\n\t\t\t\twidth: borderWidth,\n\t\t\t\tradiusSizes: borderRadiusSizes,\n\t\t\t},\n\t\t\tdimensions: {\n\t\t\t\taspectRatio,\n\t\t\t\tminHeight,\n\t\t\t},\n\t\t\tlayout,\n\t\t\tparentLayout,\n\t\t\tshadow,\n\t\t};\n\t}, [\n\t\tbackgroundImage,\n\t\tbackgroundSize,\n\t\tcustomFontFamilies,\n\t\tdefaultFontFamilies,\n\t\tthemeFontFamilies,\n\t\tdefaultFontSizesEnabled,\n\t\tcustomFontSizes,\n\t\tdefaultFontSizes,\n\t\tthemeFontSizes,\n\t\tcustomFontSize,\n\t\tfontStyle,\n\t\tfontWeight,\n\t\tlineHeight,\n\t\ttextAlign,\n\t\ttextColumns,\n\t\ttextDecoration,\n\t\ttextTransform,\n\t\tletterSpacing,\n\t\twritingMode,\n\t\tpadding,\n\t\tmargin,\n\t\tblockGap,\n\t\tdefaultSpacingSizesEnabled,\n\t\tcustomSpacingSize,\n\t\tuserSpacingSizes,\n\t\tdefaultSpacingSizes,\n\t\tthemeSpacingSizes,\n\t\tunits,\n\t\taspectRatio,\n\t\tminHeight,\n\t\tlayout,\n\t\tparentLayout,\n\t\tborderColor,\n\t\tborderRadius,\n\t\tborderStyle,\n\t\tborderWidth,\n\t\tborderRadiusSizes,\n\t\tcustomColorsEnabled,\n\t\tcustomColors,\n\t\tcustomDuotone,\n\t\tthemeColors,\n\t\tdefaultColors,\n\t\tdefaultPalette,\n\t\tdefaultDuotone,\n\t\tuserDuotonePalette,\n\t\tthemeDuotonePalette,\n\t\tdefaultDuotonePalette,\n\t\tuserGradientPalette,\n\t\tthemeGradientPalette,\n\t\tdefaultGradientPalette,\n\t\tdefaultGradients,\n\t\tareCustomGradientsEnabled,\n\t\tisBackgroundEnabled,\n\t\tisLinkEnabled,\n\t\tisTextEnabled,\n\t\tisHeadingEnabled,\n\t\tisButtonEnabled,\n\t\tshadow,\n\t] );\n\n\treturn useSettingsForBlockElement( rawSettings, name );\n}\n\nexport function createBlockEditFilter( features ) {\n\t// We don't want block controls to re-render when typing inside a block.\n\t// `memo` will prevent re-renders unless props change, so only pass the\n\t// needed props and not the whole attributes object.\n\tfeatures = features.map( ( settings ) => {\n\t\treturn { ...settings, Edit: memo( settings.edit ) };\n\t} );\n\tconst withBlockEditHooks = createHigherOrderComponent(\n\t\t( OriginalBlockEdit ) => ( props ) => {\n\t\t\tconst context = useBlockEditContext();\n\t\t\t// CAUTION: code added before this line will be executed for all\n\t\t\t// blocks, not just those that support the feature! Code added\n\t\t\t// above this line should be carefully evaluated for its impact on\n\t\t\t// performance.\n\t\t\treturn [\n\t\t\t\t...features.map( ( feature, i ) => {\n\t\t\t\t\tconst {\n\t\t\t\t\t\tEdit,\n\t\t\t\t\t\thasSupport,\n\t\t\t\t\t\tattributeKeys = [],\n\t\t\t\t\t\tshareWithChildBlocks,\n\t\t\t\t\t} = feature;\n\t\t\t\t\tconst shouldDisplayControls =\n\t\t\t\t\t\tcontext[ mayDisplayControlsKey ] ||\n\t\t\t\t\t\t( context[ mayDisplayParentControlsKey ] &&\n\t\t\t\t\t\t\tshareWithChildBlocks );\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t! shouldDisplayControls ||\n\t\t\t\t\t\t! hasSupport( props.name )\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst neededProps = {};\n\t\t\t\t\tfor ( const key of attributeKeys ) {\n\t\t\t\t\t\tif ( props.attributes[ key ] ) {\n\t\t\t\t\t\t\tneededProps[ key ] = props.attributes[ key ];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Edit\n\t\t\t\t\t\t\t// We can use the index because the array length\n\t\t\t\t\t\t\t// is fixed per page load right now.\n\t\t\t\t\t\t\tkey={ i }\n\t\t\t\t\t\t\tname={ props.name }\n\t\t\t\t\t\t\tisSelected={ props.isSelected }\n\t\t\t\t\t\t\tclientId={ props.clientId }\n\t\t\t\t\t\t\tsetAttributes={ props.setAttributes }\n\t\t\t\t\t\t\t__unstableParentLayout={\n\t\t\t\t\t\t\t\tprops.__unstableParentLayout\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t// This component is pure, so only pass needed\n\t\t\t\t\t\t\t// props!!!\n\t\t\t\t\t\t\t{ ...neededProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t\t\t<OriginalBlockEdit key=\"edit\" { ...props } />,\n\t\t\t];\n\t\t},\n\t\t'withBlockEditHooks'\n\t);\n\taddFilter( 'editor.BlockEdit', 'core/editor/hooks', withBlockEditHooks );\n}\n\nfunction BlockProps( {\n\tindex,\n\tuseBlockProps: hook,\n\tsetAllWrapperProps,\n\t...props\n} ) {\n\tconst wrapperProps = hook( props );\n\tconst setWrapperProps = ( next ) =>\n\t\tsetAllWrapperProps( ( prev ) => {\n\t\t\tconst nextAll = [ ...prev ];\n\t\t\tnextAll[ index ] = next;\n\t\t\treturn nextAll;\n\t\t} );\n\t// Setting state after every render is fine because this component is\n\t// pure and will only re-render when needed props change.\n\tuseEffect( () => {\n\t\t// We could shallow compare the props, but since this component only\n\t\t// changes when needed attributes change, the benefit is probably small.\n\t\tsetWrapperProps( wrapperProps );\n\t\treturn () => {\n\t\t\tsetWrapperProps( undefined );\n\t\t};\n\t} );\n\treturn null;\n}\n\nconst BlockPropsPure = memo( BlockProps );\n\nexport function createBlockListBlockFilter( features ) {\n\tconst withBlockListBlockHooks = createHigherOrderComponent(\n\t\t( BlockListBlock ) => ( props ) => {\n\t\t\tconst [ allWrapperProps, setAllWrapperProps ] = useState(\n\t\t\t\tArray( features.length ).fill( undefined )\n\t\t\t);\n\t\t\treturn [\n\t\t\t\t...features.map( ( feature, i ) => {\n\t\t\t\t\tconst {\n\t\t\t\t\t\thasSupport,\n\t\t\t\t\t\tattributeKeys = [],\n\t\t\t\t\t\tuseBlockProps,\n\t\t\t\t\t\tisMatch,\n\t\t\t\t\t} = feature;\n\n\t\t\t\t\tconst neededProps = {};\n\t\t\t\t\tfor ( const key of attributeKeys ) {\n\t\t\t\t\t\tif ( props.attributes[ key ] ) {\n\t\t\t\t\t\t\tneededProps[ key ] = props.attributes[ key ];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t// Skip rendering if none of the needed attributes are\n\t\t\t\t\t\t// set.\n\t\t\t\t\t\t! Object.keys( neededProps ).length ||\n\t\t\t\t\t\t! hasSupport( props.name ) ||\n\t\t\t\t\t\t( isMatch && ! isMatch( neededProps ) )\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<BlockPropsPure\n\t\t\t\t\t\t\t// We can use the index because the array length\n\t\t\t\t\t\t\t// is fixed per page load right now.\n\t\t\t\t\t\t\tkey={ i }\n\t\t\t\t\t\t\tindex={ i }\n\t\t\t\t\t\t\tuseBlockProps={ useBlockProps }\n\t\t\t\t\t\t\t// This component is pure, so we must pass a stable\n\t\t\t\t\t\t\t// function reference.\n\t\t\t\t\t\t\tsetAllWrapperProps={ setAllWrapperProps }\n\t\t\t\t\t\t\tname={ props.name }\n\t\t\t\t\t\t\tclientId={ props.clientId }\n\t\t\t\t\t\t\t// This component is pure, so only pass needed\n\t\t\t\t\t\t\t// props!!!\n\t\t\t\t\t\t\t{ ...neededProps }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t\t\t<BlockListBlock\n\t\t\t\t\tkey=\"edit\"\n\t\t\t\t\t{ ...props }\n\t\t\t\t\twrapperProps={ allWrapperProps\n\t\t\t\t\t\t.filter( Boolean )\n\t\t\t\t\t\t.reduce( ( acc, wrapperProps ) => {\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t\t\t...wrapperProps,\n\t\t\t\t\t\t\t\tclassName: clsx(\n\t\t\t\t\t\t\t\t\tacc.className,\n\t\t\t\t\t\t\t\t\twrapperProps.className\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\t...acc.style,\n\t\t\t\t\t\t\t\t\t...wrapperProps.style,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t}, props.wrapperProps || {} ) }\n\t\t\t\t/>,\n\t\t\t];\n\t\t},\n\t\t'withBlockListBlockHooks'\n\t);\n\taddFilter(\n\t\t'editor.BlockListBlock',\n\t\t'core/editor/hooks',\n\t\twithBlockListBlockHooks\n\t);\n}\n\nexport function createBlockSaveFilter( features ) {\n\tfunction extraPropsFromHooks( props, name, attributes ) {\n\t\treturn features.reduce( ( accu, feature ) => {\n\t\t\tconst { hasSupport, attributeKeys = [], addSaveProps } = feature;\n\n\t\t\tconst neededAttributes = {};\n\t\t\tfor ( const key of attributeKeys ) {\n\t\t\t\tif ( attributes[ key ] ) {\n\t\t\t\t\tneededAttributes[ key ] = attributes[ key ];\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t// Skip rendering if none of the needed attributes are\n\t\t\t\t// set.\n\t\t\t\t! Object.keys( neededAttributes ).length ||\n\t\t\t\t! hasSupport( name )\n\t\t\t) {\n\t\t\t\treturn accu;\n\t\t\t}\n\n\t\t\treturn addSaveProps( accu, name, neededAttributes );\n\t\t}, props );\n\t}\n\taddFilter(\n\t\t'blocks.getSaveContent.extraProps',\n\t\t'core/editor/hooks',\n\t\textraPropsFromHooks,\n\t\t0\n\t);\n\taddFilter(\n\t\t'blocks.getSaveContent.extraProps',\n\t\t'core/editor/hooks',\n\t\t( props ) => {\n\t\t\t// Previously we had a filter deleting the className if it was an empty\n\t\t\t// string. That filter is no longer running, so now we need to delete it\n\t\t\t// here.\n\t\t\tif ( props.hasOwnProperty( 'className' ) && ! props.className ) {\n\t\t\t\tdelete props.className;\n\t\t\t}\n\n\t\t\treturn props;\n\t\t}\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
package/build/private-apis.js
CHANGED
|
@@ -93,6 +93,7 @@ const privateApis = exports.privateApis = {};
|
|
|
93
93
|
sectionRootClientIdKey: _privateKeys.sectionRootClientIdKey,
|
|
94
94
|
CommentIconSlotFill: _blockCommentIconSlot.default,
|
|
95
95
|
CommentIconToolbarSlotFill: _blockCommentIconToolbarSlot.default,
|
|
96
|
-
mediaEditKey: _privateKeys.mediaEditKey
|
|
96
|
+
mediaEditKey: _privateKeys.mediaEditKey,
|
|
97
|
+
essentialFormatKey: _privateKeys.essentialFormatKey
|
|
97
98
|
});
|
|
98
99
|
//# sourceMappingURL=private-apis.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["globalStyles","_interopRequireWildcard","require","_provider","_lockUnlock","_getRichTextValues","_resizableBoxPopover","_interopRequireDefault","_quickInserter","_searchItems","_listView","_useHasBlockToolbar","_utils","_blockQuickNavigation","_layout","_blockManager","_blockRemovalWarningModal","_hooks","_dimensionsTool","_resolutionTool","_textAlignmentControl","_formatEdit","_blockCanvas","_utils2","_useFlashEditableBlocks","_privateKeys","_utils3","_richText","_blockPopover","_library","_publishDateTimePicker","_useSpacingSizes","_useBlockDisplayTitle","_tabbedSidebar","_blockCommentIconSlot","_blockCommentIconToolbarSlot","_htmlElementControl","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","privateApis","exports","lock","ExperimentalBlockCanvas","ExperimentalBlockEditorProvider","getDuotoneFilter","getRichTextValues","PrivateQuickInserter","extractWords","getNormalizedSearchTerms","normalizeString","PrivateListView","ResizableBoxPopover","useHasBlockToolbar","cleanEmptyObject","BlockQuickNavigation","LayoutStyle","BlockManager","BlockRemovalWarningModal","useLayoutClasses","useLayoutStyles","DimensionsTool","ResolutionTool","TabbedSidebar","TextAlignmentControl","usesContextKey","useFlashEditableBlocks","HTMLElementControl","useZoomOut","globalStylesDataKey","globalStylesLinksDataKey","selectBlockPatternsKey","requiresWrapperOnCopy","PrivateRichText","PrivateInserterLibrary","reusableBlocksSelectKey","PrivateBlockPopover","PrivatePublishDateTimePicker","useSpacingSizes","useBlockDisplayTitle","__unstableBlockStyleVariationOverridesWithConfig","setBackgroundStyleDefaults","sectionRootClientIdKey","CommentIconSlotFill","CommentIconToolbarSlotFill","mediaEditKey"],"sources":["@wordpress/block-editor/src/private-apis.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport * as globalStyles from './components/global-styles';\nimport { ExperimentalBlockEditorProvider } from './components/provider';\nimport { lock } from './lock-unlock';\nimport { getRichTextValues } from './components/rich-text/get-rich-text-values';\nimport ResizableBoxPopover from './components/resizable-box-popover';\nimport { default as PrivateQuickInserter } from './components/inserter/quick-inserter';\nimport {\n\textractWords,\n\tgetNormalizedSearchTerms,\n\tnormalizeString,\n} from './components/inserter/search-items';\nimport { PrivateListView } from './components/list-view';\nimport { useHasBlockToolbar } from './components/block-toolbar/use-has-block-toolbar';\nimport { cleanEmptyObject } from './hooks/utils';\nimport BlockQuickNavigation from './components/block-quick-navigation';\nimport { LayoutStyle } from './components/block-list/layout';\nimport BlockManager from './components/block-manager';\nimport { BlockRemovalWarningModal } from './components/block-removal-warning-modal';\nimport {\n\tsetBackgroundStyleDefaults,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\t__unstableBlockStyleVariationOverridesWithConfig,\n\tuseZoomOut,\n} from './hooks';\nimport DimensionsTool from './components/dimensions-tool';\nimport ResolutionTool from './components/resolution-tool';\nimport TextAlignmentControl from './components/text-alignment-control';\nimport { usesContextKey } from './components/rich-text/format-edit';\nimport { ExperimentalBlockCanvas } from './components/block-canvas';\nimport { getDuotoneFilter } from './components/duotone/utils';\nimport { useFlashEditableBlocks } from './components/use-flash-editable-blocks';\nimport {\n\tselectBlockPatternsKey,\n\treusableBlocksSelectKey,\n\tglobalStylesDataKey,\n\tglobalStylesLinksDataKey,\n\tsectionRootClientIdKey,\n\tmediaEditKey,\n} from './store/private-keys';\nimport { requiresWrapperOnCopy } from './components/writing-flow/utils';\nimport { PrivateRichText } from './components/rich-text/';\nimport { PrivateBlockPopover } from './components/block-popover';\nimport { PrivateInserterLibrary } from './components/inserter/library';\nimport { PrivatePublishDateTimePicker } from './components/publish-date-time-picker';\nimport useSpacingSizes from './components/spacing-sizes-control/hooks/use-spacing-sizes';\nimport useBlockDisplayTitle from './components/block-title/use-block-display-title';\nimport TabbedSidebar from './components/tabbed-sidebar';\nimport CommentIconSlotFill from './components/collab/block-comment-icon-slot';\nimport CommentIconToolbarSlotFill from './components/collab/block-comment-icon-toolbar-slot';\nimport HTMLElementControl from './components/html-element-control';\n/**\n * Private @wordpress/block-editor APIs.\n */\nexport const privateApis = {};\nlock( privateApis, {\n\t...globalStyles,\n\tExperimentalBlockCanvas,\n\tExperimentalBlockEditorProvider,\n\tgetDuotoneFilter,\n\tgetRichTextValues,\n\tPrivateQuickInserter,\n\textractWords,\n\tgetNormalizedSearchTerms,\n\tnormalizeString,\n\tPrivateListView,\n\tResizableBoxPopover,\n\tuseHasBlockToolbar,\n\tcleanEmptyObject,\n\tBlockQuickNavigation,\n\tLayoutStyle,\n\tBlockManager,\n\tBlockRemovalWarningModal,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\tDimensionsTool,\n\tResolutionTool,\n\tTabbedSidebar,\n\tTextAlignmentControl,\n\tusesContextKey,\n\tuseFlashEditableBlocks,\n\tHTMLElementControl,\n\tuseZoomOut,\n\tglobalStylesDataKey,\n\tglobalStylesLinksDataKey,\n\tselectBlockPatternsKey,\n\trequiresWrapperOnCopy,\n\tPrivateRichText,\n\tPrivateInserterLibrary,\n\treusableBlocksSelectKey,\n\tPrivateBlockPopover,\n\tPrivatePublishDateTimePicker,\n\tuseSpacingSizes,\n\tuseBlockDisplayTitle,\n\t__unstableBlockStyleVariationOverridesWithConfig,\n\tsetBackgroundStyleDefaults,\n\tsectionRootClientIdKey,\n\tCommentIconSlotFill,\n\tCommentIconToolbarSlotFill,\n\tmediaEditKey,\n} );\n"],"mappings":";;;;;;;AAGA,IAAAA,YAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAH,OAAA;AACA,IAAAI,oBAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,cAAA,GAAAD,sBAAA,CAAAL,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AAKA,IAAAQ,SAAA,GAAAR,OAAA;AACA,IAAAS,mBAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,qBAAA,GAAAN,sBAAA,CAAAL,OAAA;AACA,IAAAY,OAAA,GAAAZ,OAAA;AACA,IAAAa,aAAA,GAAAR,sBAAA,CAAAL,OAAA;AACA,IAAAc,yBAAA,GAAAd,OAAA;AACA,IAAAe,MAAA,GAAAf,OAAA;AAOA,IAAAgB,eAAA,GAAAX,sBAAA,CAAAL,OAAA;AACA,IAAAiB,eAAA,GAAAZ,sBAAA,CAAAL,OAAA;AACA,IAAAkB,qBAAA,GAAAb,sBAAA,CAAAL,OAAA;AACA,IAAAmB,WAAA,GAAAnB,OAAA;AACA,IAAAoB,YAAA,GAAApB,OAAA;AACA,IAAAqB,OAAA,GAAArB,OAAA;AACA,IAAAsB,uBAAA,GAAAtB,OAAA;AACA,IAAAuB,YAAA,GAAAvB,OAAA;
|
|
1
|
+
{"version":3,"names":["globalStyles","_interopRequireWildcard","require","_provider","_lockUnlock","_getRichTextValues","_resizableBoxPopover","_interopRequireDefault","_quickInserter","_searchItems","_listView","_useHasBlockToolbar","_utils","_blockQuickNavigation","_layout","_blockManager","_blockRemovalWarningModal","_hooks","_dimensionsTool","_resolutionTool","_textAlignmentControl","_formatEdit","_blockCanvas","_utils2","_useFlashEditableBlocks","_privateKeys","_utils3","_richText","_blockPopover","_library","_publishDateTimePicker","_useSpacingSizes","_useBlockDisplayTitle","_tabbedSidebar","_blockCommentIconSlot","_blockCommentIconToolbarSlot","_htmlElementControl","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","privateApis","exports","lock","ExperimentalBlockCanvas","ExperimentalBlockEditorProvider","getDuotoneFilter","getRichTextValues","PrivateQuickInserter","extractWords","getNormalizedSearchTerms","normalizeString","PrivateListView","ResizableBoxPopover","useHasBlockToolbar","cleanEmptyObject","BlockQuickNavigation","LayoutStyle","BlockManager","BlockRemovalWarningModal","useLayoutClasses","useLayoutStyles","DimensionsTool","ResolutionTool","TabbedSidebar","TextAlignmentControl","usesContextKey","useFlashEditableBlocks","HTMLElementControl","useZoomOut","globalStylesDataKey","globalStylesLinksDataKey","selectBlockPatternsKey","requiresWrapperOnCopy","PrivateRichText","PrivateInserterLibrary","reusableBlocksSelectKey","PrivateBlockPopover","PrivatePublishDateTimePicker","useSpacingSizes","useBlockDisplayTitle","__unstableBlockStyleVariationOverridesWithConfig","setBackgroundStyleDefaults","sectionRootClientIdKey","CommentIconSlotFill","CommentIconToolbarSlotFill","mediaEditKey","essentialFormatKey"],"sources":["@wordpress/block-editor/src/private-apis.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport * as globalStyles from './components/global-styles';\nimport { ExperimentalBlockEditorProvider } from './components/provider';\nimport { lock } from './lock-unlock';\nimport { getRichTextValues } from './components/rich-text/get-rich-text-values';\nimport ResizableBoxPopover from './components/resizable-box-popover';\nimport { default as PrivateQuickInserter } from './components/inserter/quick-inserter';\nimport {\n\textractWords,\n\tgetNormalizedSearchTerms,\n\tnormalizeString,\n} from './components/inserter/search-items';\nimport { PrivateListView } from './components/list-view';\nimport { useHasBlockToolbar } from './components/block-toolbar/use-has-block-toolbar';\nimport { cleanEmptyObject } from './hooks/utils';\nimport BlockQuickNavigation from './components/block-quick-navigation';\nimport { LayoutStyle } from './components/block-list/layout';\nimport BlockManager from './components/block-manager';\nimport { BlockRemovalWarningModal } from './components/block-removal-warning-modal';\nimport {\n\tsetBackgroundStyleDefaults,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\t__unstableBlockStyleVariationOverridesWithConfig,\n\tuseZoomOut,\n} from './hooks';\nimport DimensionsTool from './components/dimensions-tool';\nimport ResolutionTool from './components/resolution-tool';\nimport TextAlignmentControl from './components/text-alignment-control';\nimport { usesContextKey } from './components/rich-text/format-edit';\nimport { ExperimentalBlockCanvas } from './components/block-canvas';\nimport { getDuotoneFilter } from './components/duotone/utils';\nimport { useFlashEditableBlocks } from './components/use-flash-editable-blocks';\nimport {\n\tselectBlockPatternsKey,\n\treusableBlocksSelectKey,\n\tglobalStylesDataKey,\n\tglobalStylesLinksDataKey,\n\tsectionRootClientIdKey,\n\tmediaEditKey,\n\tessentialFormatKey,\n} from './store/private-keys';\nimport { requiresWrapperOnCopy } from './components/writing-flow/utils';\nimport { PrivateRichText } from './components/rich-text/';\nimport { PrivateBlockPopover } from './components/block-popover';\nimport { PrivateInserterLibrary } from './components/inserter/library';\nimport { PrivatePublishDateTimePicker } from './components/publish-date-time-picker';\nimport useSpacingSizes from './components/spacing-sizes-control/hooks/use-spacing-sizes';\nimport useBlockDisplayTitle from './components/block-title/use-block-display-title';\nimport TabbedSidebar from './components/tabbed-sidebar';\nimport CommentIconSlotFill from './components/collab/block-comment-icon-slot';\nimport CommentIconToolbarSlotFill from './components/collab/block-comment-icon-toolbar-slot';\nimport HTMLElementControl from './components/html-element-control';\n/**\n * Private @wordpress/block-editor APIs.\n */\nexport const privateApis = {};\nlock( privateApis, {\n\t...globalStyles,\n\tExperimentalBlockCanvas,\n\tExperimentalBlockEditorProvider,\n\tgetDuotoneFilter,\n\tgetRichTextValues,\n\tPrivateQuickInserter,\n\textractWords,\n\tgetNormalizedSearchTerms,\n\tnormalizeString,\n\tPrivateListView,\n\tResizableBoxPopover,\n\tuseHasBlockToolbar,\n\tcleanEmptyObject,\n\tBlockQuickNavigation,\n\tLayoutStyle,\n\tBlockManager,\n\tBlockRemovalWarningModal,\n\tuseLayoutClasses,\n\tuseLayoutStyles,\n\tDimensionsTool,\n\tResolutionTool,\n\tTabbedSidebar,\n\tTextAlignmentControl,\n\tusesContextKey,\n\tuseFlashEditableBlocks,\n\tHTMLElementControl,\n\tuseZoomOut,\n\tglobalStylesDataKey,\n\tglobalStylesLinksDataKey,\n\tselectBlockPatternsKey,\n\trequiresWrapperOnCopy,\n\tPrivateRichText,\n\tPrivateInserterLibrary,\n\treusableBlocksSelectKey,\n\tPrivateBlockPopover,\n\tPrivatePublishDateTimePicker,\n\tuseSpacingSizes,\n\tuseBlockDisplayTitle,\n\t__unstableBlockStyleVariationOverridesWithConfig,\n\tsetBackgroundStyleDefaults,\n\tsectionRootClientIdKey,\n\tCommentIconSlotFill,\n\tCommentIconToolbarSlotFill,\n\tmediaEditKey,\n\tessentialFormatKey,\n} );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,11 +3,12 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.selectBlockPatternsKey = exports.sectionRootClientIdKey = exports.reusableBlocksSelectKey = exports.mediaEditKey = exports.globalStylesLinksDataKey = exports.globalStylesDataKey = void 0;
|
|
6
|
+
exports.selectBlockPatternsKey = exports.sectionRootClientIdKey = exports.reusableBlocksSelectKey = exports.mediaEditKey = exports.globalStylesLinksDataKey = exports.globalStylesDataKey = exports.essentialFormatKey = void 0;
|
|
7
7
|
const globalStylesDataKey = exports.globalStylesDataKey = Symbol('globalStylesDataKey');
|
|
8
8
|
const globalStylesLinksDataKey = exports.globalStylesLinksDataKey = Symbol('globalStylesLinks');
|
|
9
9
|
const selectBlockPatternsKey = exports.selectBlockPatternsKey = Symbol('selectBlockPatternsKey');
|
|
10
10
|
const reusableBlocksSelectKey = exports.reusableBlocksSelectKey = Symbol('reusableBlocksSelect');
|
|
11
11
|
const sectionRootClientIdKey = exports.sectionRootClientIdKey = Symbol('sectionRootClientIdKey');
|
|
12
12
|
const mediaEditKey = exports.mediaEditKey = Symbol('mediaEditKey');
|
|
13
|
+
const essentialFormatKey = exports.essentialFormatKey = Symbol('essentialFormat');
|
|
13
14
|
//# sourceMappingURL=private-keys.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["globalStylesDataKey","exports","Symbol","globalStylesLinksDataKey","selectBlockPatternsKey","reusableBlocksSelectKey","sectionRootClientIdKey","mediaEditKey"],"sources":["@wordpress/block-editor/src/store/private-keys.js"],"sourcesContent":["export const globalStylesDataKey = Symbol( 'globalStylesDataKey' );\nexport const globalStylesLinksDataKey = Symbol( 'globalStylesLinks' );\nexport const selectBlockPatternsKey = Symbol( 'selectBlockPatternsKey' );\nexport const reusableBlocksSelectKey = Symbol( 'reusableBlocksSelect' );\nexport const sectionRootClientIdKey = Symbol( 'sectionRootClientIdKey' );\nexport const mediaEditKey = Symbol( 'mediaEditKey' );\n"],"mappings":";;;;;;AAAO,MAAMA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAGE,MAAM,CAAE,qBAAsB,CAAC;AAC3D,MAAMC,wBAAwB,GAAAF,OAAA,CAAAE,wBAAA,GAAGD,MAAM,CAAE,mBAAoB,CAAC;AAC9D,MAAME,sBAAsB,GAAAH,OAAA,CAAAG,sBAAA,GAAGF,MAAM,CAAE,wBAAyB,CAAC;AACjE,MAAMG,uBAAuB,GAAAJ,OAAA,CAAAI,uBAAA,GAAGH,MAAM,CAAE,sBAAuB,CAAC;AAChE,MAAMI,sBAAsB,GAAAL,OAAA,CAAAK,sBAAA,GAAGJ,MAAM,CAAE,wBAAyB,CAAC;AACjE,MAAMK,YAAY,GAAAN,OAAA,CAAAM,YAAA,GAAGL,MAAM,CAAE,cAAe,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["globalStylesDataKey","exports","Symbol","globalStylesLinksDataKey","selectBlockPatternsKey","reusableBlocksSelectKey","sectionRootClientIdKey","mediaEditKey","essentialFormatKey"],"sources":["@wordpress/block-editor/src/store/private-keys.js"],"sourcesContent":["export const globalStylesDataKey = Symbol( 'globalStylesDataKey' );\nexport const globalStylesLinksDataKey = Symbol( 'globalStylesLinks' );\nexport const selectBlockPatternsKey = Symbol( 'selectBlockPatternsKey' );\nexport const reusableBlocksSelectKey = Symbol( 'reusableBlocksSelect' );\nexport const sectionRootClientIdKey = Symbol( 'sectionRootClientIdKey' );\nexport const mediaEditKey = Symbol( 'mediaEditKey' );\nexport const essentialFormatKey = Symbol( 'essentialFormat' );\n"],"mappings":";;;;;;AAAO,MAAMA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAGE,MAAM,CAAE,qBAAsB,CAAC;AAC3D,MAAMC,wBAAwB,GAAAF,OAAA,CAAAE,wBAAA,GAAGD,MAAM,CAAE,mBAAoB,CAAC;AAC9D,MAAME,sBAAsB,GAAAH,OAAA,CAAAG,sBAAA,GAAGF,MAAM,CAAE,wBAAyB,CAAC;AACjE,MAAMG,uBAAuB,GAAAJ,OAAA,CAAAI,uBAAA,GAAGH,MAAM,CAAE,sBAAuB,CAAC;AAChE,MAAMI,sBAAsB,GAAAL,OAAA,CAAAK,sBAAA,GAAGJ,MAAM,CAAE,wBAAyB,CAAC;AACjE,MAAMK,YAAY,GAAAN,OAAA,CAAAM,YAAA,GAAGL,MAAM,CAAE,cAAe,CAAC;AAC7C,MAAMM,kBAAkB,GAAAP,OAAA,CAAAO,kBAAA,GAAGN,MAAM,CAAE,iBAAkB,CAAC","ignoreList":[]}
|
|
@@ -82,6 +82,7 @@ export function BlockSettingsDropdown({
|
|
|
82
82
|
selectedBlockClientIds,
|
|
83
83
|
openedBlockSettingsMenu,
|
|
84
84
|
isContentOnly,
|
|
85
|
+
isNavigationMode,
|
|
85
86
|
isZoomOut
|
|
86
87
|
} = useSelect(select => {
|
|
87
88
|
const {
|
|
@@ -92,6 +93,7 @@ export function BlockSettingsDropdown({
|
|
|
92
93
|
getBlockAttributes,
|
|
93
94
|
getOpenedBlockSettingsMenu,
|
|
94
95
|
getBlockEditingMode,
|
|
96
|
+
isNavigationMode: _isNavigationMode,
|
|
95
97
|
isZoomOut: _isZoomOut
|
|
96
98
|
} = unlock(select(blockEditorStore));
|
|
97
99
|
const {
|
|
@@ -106,6 +108,7 @@ export function BlockSettingsDropdown({
|
|
|
106
108
|
selectedBlockClientIds: getSelectedBlockClientIds(),
|
|
107
109
|
openedBlockSettingsMenu: getOpenedBlockSettingsMenu(),
|
|
108
110
|
isContentOnly: getBlockEditingMode(firstBlockClientId) === 'contentOnly',
|
|
111
|
+
isNavigationMode: _isNavigationMode(),
|
|
109
112
|
isZoomOut: _isZoomOut()
|
|
110
113
|
};
|
|
111
114
|
}, [firstBlockClientId]);
|
|
@@ -130,6 +133,7 @@ export function BlockSettingsDropdown({
|
|
|
130
133
|
};
|
|
131
134
|
}, []);
|
|
132
135
|
const hasSelectedBlocks = selectedBlockClientIds.length > 0;
|
|
136
|
+
const isContentOnlyWriteMode = isNavigationMode && isContentOnly;
|
|
133
137
|
async function updateSelectionAfterDuplicate(clientIdsPromise) {
|
|
134
138
|
if (!__experimentalSelectBlock) {
|
|
135
139
|
return;
|
|
@@ -220,11 +224,11 @@ export function BlockSettingsDropdown({
|
|
|
220
224
|
parentBlockType: parentBlockType
|
|
221
225
|
}), count === 1 && /*#__PURE__*/_jsx(BlockHTMLConvertButton, {
|
|
222
226
|
clientId: firstBlockClientId
|
|
223
|
-
}), /*#__PURE__*/_jsx(CopyMenuItem, {
|
|
227
|
+
}), !isContentOnlyWriteMode && /*#__PURE__*/_jsx(CopyMenuItem, {
|
|
224
228
|
clientIds: clientIds,
|
|
225
229
|
onCopy: onCopy,
|
|
226
230
|
shortcut: shortcuts.copy
|
|
227
|
-
}), /*#__PURE__*/_jsx(CopyMenuItem, {
|
|
231
|
+
}), !isContentOnlyWriteMode && /*#__PURE__*/_jsx(CopyMenuItem, {
|
|
228
232
|
clientIds: clientIds,
|
|
229
233
|
label: __('Cut'),
|
|
230
234
|
eventType: "cut",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getBlockType","serialize","store","blocksStore","DropdownMenu","MenuGroup","MenuItem","useDispatch","useSelect","moreVertical","Children","cloneElement","__","keyboardShortcutsStore","pipe","useCopyToClipboard","BlockActions","CommentIconSlotFill","BlockHTMLConvertButton","__unstableBlockSettingsMenuFirstItem","BlockSettingsMenuControls","BlockParentSelectorMenuItem","blockEditorStore","unlock","useNotifyCopy","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","POPOVER_PROPS","className","placement","CopyMenuItem","clientIds","onCopy","label","shortcut","eventType","__experimentalUpdateSelection","updateSelection","getBlocksByClientId","removeBlocks","notifyCopy","ref","copyMenuItemLabel","children","BlockSettingsDropdown","block","__experimentalSelectBlock","props","currentClientId","clientId","count","length","firstBlockClientId","firstParentClientId","parentBlockType","previousBlockClientId","selectedBlockClientIds","openedBlockSettingsMenu","isContentOnly","isZoomOut","select","getBlockName","getBlockRootClientId","getPreviousBlockClientId","getSelectedBlockClientIds","getBlockAttributes","getOpenedBlockSettingsMenu","getBlockEditingMode","_isZoomOut","getActiveBlockVariation","_firstParentClientId","parentBlockName","getBlockOrder","setOpenedBlockSettingsMenu","shortcuts","getShortcutRepresentation","copy","cut","duplicate","remove","insertAfter","insertBefore","hasSelectedBlocks","updateSelectionAfterDuplicate","clientIdsPromise","ids","updateSelectionAfterRemove","blockToFocus","shouldUpdateSelection","parentBlockIsSelected","includes","open","undefined","onToggle","localOpen","shouldShowBlockParentMenuItem","canCopyStyles","canDuplicate","canInsertBlock","canRemove","onDuplicate","onInsertAfter","onInsertBefore","onRemove","onPasteStyles","isEmpty","icon","popoverProps","noIcons","onClose","Slot","fillProps","parentClientId","onClick","map","child"],"sources":["@wordpress/block-editor/src/components/block-settings-menu/block-settings-dropdown.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tgetBlockType,\n\tserialize,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport { DropdownMenu, MenuGroup, MenuItem } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { moreVertical } from '@wordpress/icons';\nimport { Children, cloneElement } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { pipe, useCopyToClipboard } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BlockActions from '../block-actions';\nimport CommentIconSlotFill from '../../components/collab/block-comment-icon-slot';\nimport BlockHTMLConvertButton from './block-html-convert-button';\nimport __unstableBlockSettingsMenuFirstItem from './block-settings-menu-first-item';\nimport BlockSettingsMenuControls from '../block-settings-menu-controls';\nimport BlockParentSelectorMenuItem from './block-parent-selector-menu-item';\nimport { store as blockEditorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport { useNotifyCopy } from '../../utils/use-notify-copy';\n\nconst POPOVER_PROPS = {\n\tclassName: 'block-editor-block-settings-menu__popover',\n\tplacement: 'bottom-start',\n};\n\nfunction CopyMenuItem( {\n\tclientIds,\n\tonCopy,\n\tlabel,\n\tshortcut,\n\teventType = 'copy',\n\t__experimentalUpdateSelection: updateSelection = false,\n} ) {\n\tconst { getBlocksByClientId } = useSelect( blockEditorStore );\n\tconst { removeBlocks } = useDispatch( blockEditorStore );\n\tconst notifyCopy = useNotifyCopy();\n\tconst ref = useCopyToClipboard(\n\t\t() => serialize( getBlocksByClientId( clientIds ) ),\n\t\t() => {\n\t\t\tswitch ( eventType ) {\n\t\t\t\tcase 'copy':\n\t\t\t\tcase 'copyStyles':\n\t\t\t\t\tonCopy();\n\t\t\t\t\tnotifyCopy( eventType, clientIds );\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'cut':\n\t\t\t\t\tnotifyCopy( eventType, clientIds );\n\t\t\t\t\tremoveBlocks( clientIds, updateSelection );\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t);\n\tconst copyMenuItemLabel = label ? label : __( 'Copy' );\n\treturn (\n\t\t<MenuItem ref={ ref } shortcut={ shortcut }>\n\t\t\t{ copyMenuItemLabel }\n\t\t</MenuItem>\n\t);\n}\n\nexport function BlockSettingsDropdown( {\n\tblock,\n\tclientIds,\n\tchildren,\n\t__experimentalSelectBlock,\n\t...props\n} ) {\n\t// Get the client id of the current block for this menu, if one is set.\n\tconst currentClientId = block?.clientId;\n\tconst count = clientIds.length;\n\tconst firstBlockClientId = clientIds[ 0 ];\n\n\tconst {\n\t\tfirstParentClientId,\n\t\tparentBlockType,\n\t\tpreviousBlockClientId,\n\t\tselectedBlockClientIds,\n\t\topenedBlockSettingsMenu,\n\t\tisContentOnly,\n\t\tisZoomOut,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetPreviousBlockClientId,\n\t\t\t\tgetSelectedBlockClientIds,\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetOpenedBlockSettingsMenu,\n\t\t\t\tgetBlockEditingMode,\n\t\t\t\tisZoomOut: _isZoomOut,\n\t\t\t} = unlock( select( blockEditorStore ) );\n\n\t\t\tconst { getActiveBlockVariation } = select( blocksStore );\n\n\t\t\tconst _firstParentClientId =\n\t\t\t\tgetBlockRootClientId( firstBlockClientId );\n\t\t\tconst parentBlockName =\n\t\t\t\t_firstParentClientId && getBlockName( _firstParentClientId );\n\n\t\t\treturn {\n\t\t\t\tfirstParentClientId: _firstParentClientId,\n\t\t\t\tparentBlockType:\n\t\t\t\t\t_firstParentClientId &&\n\t\t\t\t\t( getActiveBlockVariation(\n\t\t\t\t\t\tparentBlockName,\n\t\t\t\t\t\tgetBlockAttributes( _firstParentClientId )\n\t\t\t\t\t) ||\n\t\t\t\t\t\tgetBlockType( parentBlockName ) ),\n\t\t\t\tpreviousBlockClientId:\n\t\t\t\t\tgetPreviousBlockClientId( firstBlockClientId ),\n\t\t\t\tselectedBlockClientIds: getSelectedBlockClientIds(),\n\t\t\t\topenedBlockSettingsMenu: getOpenedBlockSettingsMenu(),\n\t\t\t\tisContentOnly:\n\t\t\t\t\tgetBlockEditingMode( firstBlockClientId ) === 'contentOnly',\n\t\t\t\tisZoomOut: _isZoomOut(),\n\t\t\t};\n\t\t},\n\t\t[ firstBlockClientId ]\n\t);\n\n\tconst { getBlockOrder, getSelectedBlockClientIds } =\n\t\tuseSelect( blockEditorStore );\n\n\tconst { setOpenedBlockSettingsMenu } = unlock(\n\t\tuseDispatch( blockEditorStore )\n\t);\n\n\tconst shortcuts = useSelect( ( select ) => {\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\t\treturn {\n\t\t\tcopy: getShortcutRepresentation( 'core/block-editor/copy' ),\n\t\t\tcut: getShortcutRepresentation( 'core/block-editor/cut' ),\n\t\t\tduplicate: getShortcutRepresentation(\n\t\t\t\t'core/block-editor/duplicate'\n\t\t\t),\n\t\t\tremove: getShortcutRepresentation( 'core/block-editor/remove' ),\n\t\t\tinsertAfter: getShortcutRepresentation(\n\t\t\t\t'core/block-editor/insert-after'\n\t\t\t),\n\t\t\tinsertBefore: getShortcutRepresentation(\n\t\t\t\t'core/block-editor/insert-before'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst hasSelectedBlocks = selectedBlockClientIds.length > 0;\n\n\tasync function updateSelectionAfterDuplicate( clientIdsPromise ) {\n\t\tif ( ! __experimentalSelectBlock ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst ids = await clientIdsPromise;\n\t\tif ( ids && ids[ 0 ] ) {\n\t\t\t__experimentalSelectBlock( ids[ 0 ], false );\n\t\t}\n\t}\n\n\tfunction updateSelectionAfterRemove() {\n\t\tif ( ! __experimentalSelectBlock ) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet blockToFocus = previousBlockClientId || firstParentClientId;\n\n\t\t// Focus the first block if there's no previous block nor parent block.\n\t\tif ( ! blockToFocus ) {\n\t\t\tblockToFocus = getBlockOrder()[ 0 ];\n\t\t}\n\n\t\t// Only update the selection if the original selection is removed.\n\t\tconst shouldUpdateSelection =\n\t\t\thasSelectedBlocks && getSelectedBlockClientIds().length === 0;\n\n\t\t__experimentalSelectBlock( blockToFocus, shouldUpdateSelection );\n\t}\n\n\t// This can occur when the selected block (the parent)\n\t// displays child blocks within a List View.\n\tconst parentBlockIsSelected =\n\t\tselectedBlockClientIds?.includes( firstParentClientId );\n\n\t// When a currentClientId is in use, treat the menu as a controlled component.\n\t// This ensures that only one block settings menu is open at a time.\n\t// This is a temporary solution to work around an issue with `onFocusOutside`\n\t// where it does not allow a dropdown to be closed if focus was never within\n\t// the dropdown to begin with. Examples include a user either CMD+Clicking or\n\t// right clicking into an inactive window.\n\t// See: https://github.com/WordPress/gutenberg/pull/54083\n\tconst open = ! currentClientId\n\t\t? undefined\n\t\t: openedBlockSettingsMenu === currentClientId || false;\n\n\tfunction onToggle( localOpen ) {\n\t\tif ( localOpen && openedBlockSettingsMenu !== currentClientId ) {\n\t\t\tsetOpenedBlockSettingsMenu( currentClientId );\n\t\t} else if (\n\t\t\t! localOpen &&\n\t\t\topenedBlockSettingsMenu &&\n\t\t\topenedBlockSettingsMenu === currentClientId\n\t\t) {\n\t\t\tsetOpenedBlockSettingsMenu( undefined );\n\t\t}\n\t}\n\n\tconst shouldShowBlockParentMenuItem =\n\t\t! parentBlockIsSelected && !! firstParentClientId;\n\n\treturn (\n\t\t<BlockActions\n\t\t\tclientIds={ clientIds }\n\t\t\t__experimentalUpdateSelection={ ! __experimentalSelectBlock }\n\t\t>\n\t\t\t{ ( {\n\t\t\t\tcanCopyStyles,\n\t\t\t\tcanDuplicate,\n\t\t\t\tcanInsertBlock,\n\t\t\t\tcanRemove,\n\t\t\t\tonDuplicate,\n\t\t\t\tonInsertAfter,\n\t\t\t\tonInsertBefore,\n\t\t\t\tonRemove,\n\t\t\t\tonCopy,\n\t\t\t\tonPasteStyles,\n\t\t\t} ) => {\n\t\t\t\t// It is possible that some plugins register fills for this menu\n\t\t\t\t// even if Core doesn't render anything in the block settings menu.\n\t\t\t\t// in which case, we may want to render the menu anyway.\n\t\t\t\t// That said for now, we can start more conservative.\n\t\t\t\tconst isEmpty =\n\t\t\t\t\t! canRemove &&\n\t\t\t\t\t! canDuplicate &&\n\t\t\t\t\t! canInsertBlock &&\n\t\t\t\t\tisContentOnly;\n\n\t\t\t\tif ( isEmpty ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\tlabel={ __( 'Options' ) }\n\t\t\t\t\t\tclassName=\"block-editor-block-settings-menu\"\n\t\t\t\t\t\tpopoverProps={ POPOVER_PROPS }\n\t\t\t\t\t\topen={ open }\n\t\t\t\t\t\tonToggle={ onToggle }\n\t\t\t\t\t\tnoIcons\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t\t<__unstableBlockSettingsMenuFirstItem.Slot\n\t\t\t\t\t\t\t\t\t\tfillProps={ { onClose } }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{ shouldShowBlockParentMenuItem && (\n\t\t\t\t\t\t\t\t\t\t<BlockParentSelectorMenuItem\n\t\t\t\t\t\t\t\t\t\t\tparentClientId={\n\t\t\t\t\t\t\t\t\t\t\t\tfirstParentClientId\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tparentBlockType={ parentBlockType }\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{ count === 1 && (\n\t\t\t\t\t\t\t\t\t\t<BlockHTMLConvertButton\n\t\t\t\t\t\t\t\t\t\t\tclientId={ firstBlockClientId }\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<CopyMenuItem\n\t\t\t\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t\t\t\tonCopy={ onCopy }\n\t\t\t\t\t\t\t\t\t\tshortcut={ shortcuts.copy }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t<CopyMenuItem\n\t\t\t\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Cut' ) }\n\t\t\t\t\t\t\t\t\t\teventType=\"cut\"\n\t\t\t\t\t\t\t\t\t\tshortcut={ shortcuts.cut }\n\t\t\t\t\t\t\t\t\t\t__experimentalUpdateSelection={\n\t\t\t\t\t\t\t\t\t\t\t! __experimentalSelectBlock\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{ canDuplicate && (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\tonClick={ pipe(\n\t\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\t\tonDuplicate,\n\t\t\t\t\t\t\t\t\t\t\t\tupdateSelectionAfterDuplicate\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\tshortcut={ shortcuts.duplicate }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Duplicate' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ canInsertBlock && ! isZoomOut && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={ pipe(\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\t\t\tonInsertBefore\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\tshortcut={\n\t\t\t\t\t\t\t\t\t\t\t\t\tshortcuts.insertBefore\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>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'Add before' ) }\n\t\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={ pipe(\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\t\t\tonInsertAfter\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\tshortcut={\n\t\t\t\t\t\t\t\t\t\t\t\t\tshortcuts.insertAfter\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>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'Add after' ) }\n\t\t\t\t\t\t\t\t\t\t\t</MenuItem>\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<CommentIconSlotFill.Slot\n\t\t\t\t\t\t\t\t\t\tfillProps={ { onClose } }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t\t\t{ canCopyStyles && ! isContentOnly && (\n\t\t\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t\t\t<CopyMenuItem\n\t\t\t\t\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t\t\t\t\tonCopy={ onCopy }\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Copy styles' ) }\n\t\t\t\t\t\t\t\t\t\t\teventType=\"copyStyles\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<MenuItem onClick={ onPasteStyles }>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Paste styles' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ ! isContentOnly && (\n\t\t\t\t\t\t\t\t\t<BlockSettingsMenuControls.Slot\n\t\t\t\t\t\t\t\t\t\tfillProps={ {\n\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\tcount,\n\t\t\t\t\t\t\t\t\t\t\tfirstBlockClientId,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tclientIds={ clientIds }\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\t{ typeof children === 'function'\n\t\t\t\t\t\t\t\t\t? children( { onClose } )\n\t\t\t\t\t\t\t\t\t: Children.map( ( child ) =>\n\t\t\t\t\t\t\t\t\t\t\tcloneElement( child, { onClose } )\n\t\t\t\t\t\t\t\t\t ) }\n\t\t\t\t\t\t\t\t{ canRemove && (\n\t\t\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\tonClick={ pipe(\n\t\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\t\tonRemove,\n\t\t\t\t\t\t\t\t\t\t\t\tupdateSelectionAfterRemove\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\tshortcut={ shortcuts.remove }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t</MenuGroup>\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</DropdownMenu>\n\t\t\t\t);\n\t\t\t} }\n\t\t</BlockActions>\n\t);\n}\n\nexport default BlockSettingsDropdown;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["getBlockType","serialize","store","blocksStore","DropdownMenu","MenuGroup","MenuItem","useDispatch","useSelect","moreVertical","Children","cloneElement","__","keyboardShortcutsStore","pipe","useCopyToClipboard","BlockActions","CommentIconSlotFill","BlockHTMLConvertButton","__unstableBlockSettingsMenuFirstItem","BlockSettingsMenuControls","BlockParentSelectorMenuItem","blockEditorStore","unlock","useNotifyCopy","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","POPOVER_PROPS","className","placement","CopyMenuItem","clientIds","onCopy","label","shortcut","eventType","__experimentalUpdateSelection","updateSelection","getBlocksByClientId","removeBlocks","notifyCopy","ref","copyMenuItemLabel","children","BlockSettingsDropdown","block","__experimentalSelectBlock","props","currentClientId","clientId","count","length","firstBlockClientId","firstParentClientId","parentBlockType","previousBlockClientId","selectedBlockClientIds","openedBlockSettingsMenu","isContentOnly","isNavigationMode","isZoomOut","select","getBlockName","getBlockRootClientId","getPreviousBlockClientId","getSelectedBlockClientIds","getBlockAttributes","getOpenedBlockSettingsMenu","getBlockEditingMode","_isNavigationMode","_isZoomOut","getActiveBlockVariation","_firstParentClientId","parentBlockName","getBlockOrder","setOpenedBlockSettingsMenu","shortcuts","getShortcutRepresentation","copy","cut","duplicate","remove","insertAfter","insertBefore","hasSelectedBlocks","isContentOnlyWriteMode","updateSelectionAfterDuplicate","clientIdsPromise","ids","updateSelectionAfterRemove","blockToFocus","shouldUpdateSelection","parentBlockIsSelected","includes","open","undefined","onToggle","localOpen","shouldShowBlockParentMenuItem","canCopyStyles","canDuplicate","canInsertBlock","canRemove","onDuplicate","onInsertAfter","onInsertBefore","onRemove","onPasteStyles","isEmpty","icon","popoverProps","noIcons","onClose","Slot","fillProps","parentClientId","onClick","map","child"],"sources":["@wordpress/block-editor/src/components/block-settings-menu/block-settings-dropdown.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tgetBlockType,\n\tserialize,\n\tstore as blocksStore,\n} from '@wordpress/blocks';\nimport { DropdownMenu, MenuGroup, MenuItem } from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { moreVertical } from '@wordpress/icons';\nimport { Children, cloneElement } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { pipe, useCopyToClipboard } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport BlockActions from '../block-actions';\nimport CommentIconSlotFill from '../../components/collab/block-comment-icon-slot';\nimport BlockHTMLConvertButton from './block-html-convert-button';\nimport __unstableBlockSettingsMenuFirstItem from './block-settings-menu-first-item';\nimport BlockSettingsMenuControls from '../block-settings-menu-controls';\nimport BlockParentSelectorMenuItem from './block-parent-selector-menu-item';\nimport { store as blockEditorStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport { useNotifyCopy } from '../../utils/use-notify-copy';\n\nconst POPOVER_PROPS = {\n\tclassName: 'block-editor-block-settings-menu__popover',\n\tplacement: 'bottom-start',\n};\n\nfunction CopyMenuItem( {\n\tclientIds,\n\tonCopy,\n\tlabel,\n\tshortcut,\n\teventType = 'copy',\n\t__experimentalUpdateSelection: updateSelection = false,\n} ) {\n\tconst { getBlocksByClientId } = useSelect( blockEditorStore );\n\tconst { removeBlocks } = useDispatch( blockEditorStore );\n\tconst notifyCopy = useNotifyCopy();\n\tconst ref = useCopyToClipboard(\n\t\t() => serialize( getBlocksByClientId( clientIds ) ),\n\t\t() => {\n\t\t\tswitch ( eventType ) {\n\t\t\t\tcase 'copy':\n\t\t\t\tcase 'copyStyles':\n\t\t\t\t\tonCopy();\n\t\t\t\t\tnotifyCopy( eventType, clientIds );\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'cut':\n\t\t\t\t\tnotifyCopy( eventType, clientIds );\n\t\t\t\t\tremoveBlocks( clientIds, updateSelection );\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t);\n\tconst copyMenuItemLabel = label ? label : __( 'Copy' );\n\treturn (\n\t\t<MenuItem ref={ ref } shortcut={ shortcut }>\n\t\t\t{ copyMenuItemLabel }\n\t\t</MenuItem>\n\t);\n}\n\nexport function BlockSettingsDropdown( {\n\tblock,\n\tclientIds,\n\tchildren,\n\t__experimentalSelectBlock,\n\t...props\n} ) {\n\t// Get the client id of the current block for this menu, if one is set.\n\tconst currentClientId = block?.clientId;\n\tconst count = clientIds.length;\n\tconst firstBlockClientId = clientIds[ 0 ];\n\n\tconst {\n\t\tfirstParentClientId,\n\t\tparentBlockType,\n\t\tpreviousBlockClientId,\n\t\tselectedBlockClientIds,\n\t\topenedBlockSettingsMenu,\n\t\tisContentOnly,\n\t\tisNavigationMode,\n\t\tisZoomOut,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockName,\n\t\t\t\tgetBlockRootClientId,\n\t\t\t\tgetPreviousBlockClientId,\n\t\t\t\tgetSelectedBlockClientIds,\n\t\t\t\tgetBlockAttributes,\n\t\t\t\tgetOpenedBlockSettingsMenu,\n\t\t\t\tgetBlockEditingMode,\n\t\t\t\tisNavigationMode: _isNavigationMode,\n\t\t\t\tisZoomOut: _isZoomOut,\n\t\t\t} = unlock( select( blockEditorStore ) );\n\n\t\t\tconst { getActiveBlockVariation } = select( blocksStore );\n\n\t\t\tconst _firstParentClientId =\n\t\t\t\tgetBlockRootClientId( firstBlockClientId );\n\t\t\tconst parentBlockName =\n\t\t\t\t_firstParentClientId && getBlockName( _firstParentClientId );\n\n\t\t\treturn {\n\t\t\t\tfirstParentClientId: _firstParentClientId,\n\t\t\t\tparentBlockType:\n\t\t\t\t\t_firstParentClientId &&\n\t\t\t\t\t( getActiveBlockVariation(\n\t\t\t\t\t\tparentBlockName,\n\t\t\t\t\t\tgetBlockAttributes( _firstParentClientId )\n\t\t\t\t\t) ||\n\t\t\t\t\t\tgetBlockType( parentBlockName ) ),\n\t\t\t\tpreviousBlockClientId:\n\t\t\t\t\tgetPreviousBlockClientId( firstBlockClientId ),\n\t\t\t\tselectedBlockClientIds: getSelectedBlockClientIds(),\n\t\t\t\topenedBlockSettingsMenu: getOpenedBlockSettingsMenu(),\n\t\t\t\tisContentOnly:\n\t\t\t\t\tgetBlockEditingMode( firstBlockClientId ) === 'contentOnly',\n\t\t\t\tisNavigationMode: _isNavigationMode(),\n\t\t\t\tisZoomOut: _isZoomOut(),\n\t\t\t};\n\t\t},\n\t\t[ firstBlockClientId ]\n\t);\n\n\tconst { getBlockOrder, getSelectedBlockClientIds } =\n\t\tuseSelect( blockEditorStore );\n\n\tconst { setOpenedBlockSettingsMenu } = unlock(\n\t\tuseDispatch( blockEditorStore )\n\t);\n\n\tconst shortcuts = useSelect( ( select ) => {\n\t\tconst { getShortcutRepresentation } = select( keyboardShortcutsStore );\n\t\treturn {\n\t\t\tcopy: getShortcutRepresentation( 'core/block-editor/copy' ),\n\t\t\tcut: getShortcutRepresentation( 'core/block-editor/cut' ),\n\t\t\tduplicate: getShortcutRepresentation(\n\t\t\t\t'core/block-editor/duplicate'\n\t\t\t),\n\t\t\tremove: getShortcutRepresentation( 'core/block-editor/remove' ),\n\t\t\tinsertAfter: getShortcutRepresentation(\n\t\t\t\t'core/block-editor/insert-after'\n\t\t\t),\n\t\t\tinsertBefore: getShortcutRepresentation(\n\t\t\t\t'core/block-editor/insert-before'\n\t\t\t),\n\t\t};\n\t}, [] );\n\tconst hasSelectedBlocks = selectedBlockClientIds.length > 0;\n\tconst isContentOnlyWriteMode = isNavigationMode && isContentOnly;\n\n\tasync function updateSelectionAfterDuplicate( clientIdsPromise ) {\n\t\tif ( ! __experimentalSelectBlock ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst ids = await clientIdsPromise;\n\t\tif ( ids && ids[ 0 ] ) {\n\t\t\t__experimentalSelectBlock( ids[ 0 ], false );\n\t\t}\n\t}\n\n\tfunction updateSelectionAfterRemove() {\n\t\tif ( ! __experimentalSelectBlock ) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet blockToFocus = previousBlockClientId || firstParentClientId;\n\n\t\t// Focus the first block if there's no previous block nor parent block.\n\t\tif ( ! blockToFocus ) {\n\t\t\tblockToFocus = getBlockOrder()[ 0 ];\n\t\t}\n\n\t\t// Only update the selection if the original selection is removed.\n\t\tconst shouldUpdateSelection =\n\t\t\thasSelectedBlocks && getSelectedBlockClientIds().length === 0;\n\n\t\t__experimentalSelectBlock( blockToFocus, shouldUpdateSelection );\n\t}\n\n\t// This can occur when the selected block (the parent)\n\t// displays child blocks within a List View.\n\tconst parentBlockIsSelected =\n\t\tselectedBlockClientIds?.includes( firstParentClientId );\n\n\t// When a currentClientId is in use, treat the menu as a controlled component.\n\t// This ensures that only one block settings menu is open at a time.\n\t// This is a temporary solution to work around an issue with `onFocusOutside`\n\t// where it does not allow a dropdown to be closed if focus was never within\n\t// the dropdown to begin with. Examples include a user either CMD+Clicking or\n\t// right clicking into an inactive window.\n\t// See: https://github.com/WordPress/gutenberg/pull/54083\n\tconst open = ! currentClientId\n\t\t? undefined\n\t\t: openedBlockSettingsMenu === currentClientId || false;\n\n\tfunction onToggle( localOpen ) {\n\t\tif ( localOpen && openedBlockSettingsMenu !== currentClientId ) {\n\t\t\tsetOpenedBlockSettingsMenu( currentClientId );\n\t\t} else if (\n\t\t\t! localOpen &&\n\t\t\topenedBlockSettingsMenu &&\n\t\t\topenedBlockSettingsMenu === currentClientId\n\t\t) {\n\t\t\tsetOpenedBlockSettingsMenu( undefined );\n\t\t}\n\t}\n\n\tconst shouldShowBlockParentMenuItem =\n\t\t! parentBlockIsSelected && !! firstParentClientId;\n\n\treturn (\n\t\t<BlockActions\n\t\t\tclientIds={ clientIds }\n\t\t\t__experimentalUpdateSelection={ ! __experimentalSelectBlock }\n\t\t>\n\t\t\t{ ( {\n\t\t\t\tcanCopyStyles,\n\t\t\t\tcanDuplicate,\n\t\t\t\tcanInsertBlock,\n\t\t\t\tcanRemove,\n\t\t\t\tonDuplicate,\n\t\t\t\tonInsertAfter,\n\t\t\t\tonInsertBefore,\n\t\t\t\tonRemove,\n\t\t\t\tonCopy,\n\t\t\t\tonPasteStyles,\n\t\t\t} ) => {\n\t\t\t\t// It is possible that some plugins register fills for this menu\n\t\t\t\t// even if Core doesn't render anything in the block settings menu.\n\t\t\t\t// in which case, we may want to render the menu anyway.\n\t\t\t\t// That said for now, we can start more conservative.\n\t\t\t\tconst isEmpty =\n\t\t\t\t\t! canRemove &&\n\t\t\t\t\t! canDuplicate &&\n\t\t\t\t\t! canInsertBlock &&\n\t\t\t\t\tisContentOnly;\n\n\t\t\t\tif ( isEmpty ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownMenu\n\t\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\t\tlabel={ __( 'Options' ) }\n\t\t\t\t\t\tclassName=\"block-editor-block-settings-menu\"\n\t\t\t\t\t\tpopoverProps={ POPOVER_PROPS }\n\t\t\t\t\t\topen={ open }\n\t\t\t\t\t\tonToggle={ onToggle }\n\t\t\t\t\t\tnoIcons\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ( { onClose } ) => (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t\t<__unstableBlockSettingsMenuFirstItem.Slot\n\t\t\t\t\t\t\t\t\t\tfillProps={ { onClose } }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t{ shouldShowBlockParentMenuItem && (\n\t\t\t\t\t\t\t\t\t\t<BlockParentSelectorMenuItem\n\t\t\t\t\t\t\t\t\t\t\tparentClientId={\n\t\t\t\t\t\t\t\t\t\t\t\tfirstParentClientId\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tparentBlockType={ parentBlockType }\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{ count === 1 && (\n\t\t\t\t\t\t\t\t\t\t<BlockHTMLConvertButton\n\t\t\t\t\t\t\t\t\t\t\tclientId={ firstBlockClientId }\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{ ! isContentOnlyWriteMode && (\n\t\t\t\t\t\t\t\t\t\t<CopyMenuItem\n\t\t\t\t\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t\t\t\t\tonCopy={ onCopy }\n\t\t\t\t\t\t\t\t\t\t\tshortcut={ shortcuts.copy }\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{ ! isContentOnlyWriteMode && (\n\t\t\t\t\t\t\t\t\t\t<CopyMenuItem\n\t\t\t\t\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Cut' ) }\n\t\t\t\t\t\t\t\t\t\t\teventType=\"cut\"\n\t\t\t\t\t\t\t\t\t\t\tshortcut={ shortcuts.cut }\n\t\t\t\t\t\t\t\t\t\t\t__experimentalUpdateSelection={\n\t\t\t\t\t\t\t\t\t\t\t\t! __experimentalSelectBlock\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\t{ canDuplicate && (\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\tonClick={ pipe(\n\t\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\t\tonDuplicate,\n\t\t\t\t\t\t\t\t\t\t\t\tupdateSelectionAfterDuplicate\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\tshortcut={ shortcuts.duplicate }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Duplicate' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ canInsertBlock && ! isZoomOut && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={ pipe(\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\t\t\tonInsertBefore\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\tshortcut={\n\t\t\t\t\t\t\t\t\t\t\t\t\tshortcuts.insertBefore\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>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'Add before' ) }\n\t\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\t\tonClick={ pipe(\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\t\t\tonInsertAfter\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\tshortcut={\n\t\t\t\t\t\t\t\t\t\t\t\t\tshortcuts.insertAfter\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>\n\t\t\t\t\t\t\t\t\t\t\t\t{ __( 'Add after' ) }\n\t\t\t\t\t\t\t\t\t\t\t</MenuItem>\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<CommentIconSlotFill.Slot\n\t\t\t\t\t\t\t\t\t\tfillProps={ { onClose } }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t\t\t{ canCopyStyles && ! isContentOnly && (\n\t\t\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t\t\t<CopyMenuItem\n\t\t\t\t\t\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\t\t\t\t\t\tonCopy={ onCopy }\n\t\t\t\t\t\t\t\t\t\t\tlabel={ __( 'Copy styles' ) }\n\t\t\t\t\t\t\t\t\t\t\teventType=\"copyStyles\"\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t<MenuItem onClick={ onPasteStyles }>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Paste styles' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ ! isContentOnly && (\n\t\t\t\t\t\t\t\t\t<BlockSettingsMenuControls.Slot\n\t\t\t\t\t\t\t\t\t\tfillProps={ {\n\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\tcount,\n\t\t\t\t\t\t\t\t\t\t\tfirstBlockClientId,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t\tclientIds={ clientIds }\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\t{ typeof children === 'function'\n\t\t\t\t\t\t\t\t\t? children( { onClose } )\n\t\t\t\t\t\t\t\t\t: Children.map( ( child ) =>\n\t\t\t\t\t\t\t\t\t\t\tcloneElement( child, { onClose } )\n\t\t\t\t\t\t\t\t\t ) }\n\t\t\t\t\t\t\t\t{ canRemove && (\n\t\t\t\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\t\t\tonClick={ pipe(\n\t\t\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\t\t\tonRemove,\n\t\t\t\t\t\t\t\t\t\t\t\tupdateSelectionAfterRemove\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t\tshortcut={ shortcuts.remove }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t\t\t</MenuGroup>\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</DropdownMenu>\n\t\t\t\t);\n\t\t\t} }\n\t\t</BlockActions>\n\t);\n}\n\nexport default BlockSettingsDropdown;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,7 +11,7 @@ import { getBlockType, getDefaultBlockName, hasBlockSupport, serialize, rawHandl
|
|
|
11
11
|
import { __, sprintf } from '@wordpress/i18n';
|
|
12
12
|
import { withDispatch, withSelect, useSelect } from '@wordpress/data';
|
|
13
13
|
import { withInstanceId, compose } from '@wordpress/compose';
|
|
14
|
-
import {
|
|
14
|
+
import { moreHorizontal } from '@wordpress/icons';
|
|
15
15
|
import { useRef, useState } from '@wordpress/element';
|
|
16
16
|
import { store as noticesStore } from '@wordpress/notices';
|
|
17
17
|
import { store as reusableBlocksStore } from '@wordpress/reusable-blocks';
|
|
@@ -199,7 +199,7 @@ const BlockActionsMenu = ({
|
|
|
199
199
|
return /*#__PURE__*/_jsx(ToolbarGroup, {
|
|
200
200
|
children: /*#__PURE__*/_jsx(ToolbarButton, {
|
|
201
201
|
title: __('Open Block Actions Menu'),
|
|
202
|
-
icon:
|
|
202
|
+
icon: moreHorizontal,
|
|
203
203
|
disabled: true
|
|
204
204
|
})
|
|
205
205
|
});
|
|
@@ -228,7 +228,7 @@ const BlockActionsMenu = ({
|
|
|
228
228
|
children: [/*#__PURE__*/_jsx(ToolbarButton, {
|
|
229
229
|
title: __('Open Block Actions Menu'),
|
|
230
230
|
onClick: onPickerPresent,
|
|
231
|
-
icon:
|
|
231
|
+
icon: moreHorizontal,
|
|
232
232
|
extraProps: {
|
|
233
233
|
hint: accessibilityHint
|
|
234
234
|
}
|