@wordpress/block-editor 14.7.0 → 14.7.1-next.082ed6819.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/build/components/block-controls/slot.js +6 -3
- package/build/components/block-controls/slot.js.map +1 -1
- package/build/components/block-inspector/index.js +1 -2
- package/build/components/block-inspector/index.js.map +1 -1
- package/build/components/block-lock/modal.js +1 -1
- package/build/components/block-lock/modal.js.map +1 -1
- package/build/components/block-manager/category.js +79 -0
- package/build/components/block-manager/category.js.map +1 -0
- package/build/components/block-manager/checklist.js +40 -0
- package/build/components/block-manager/checklist.js.map +1 -0
- package/build/components/block-manager/index.js +108 -0
- package/build/components/block-manager/index.js.map +1 -0
- package/build/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build/components/block-settings-menu/index.js.map +1 -1
- package/build/components/block-toolbar/index.js +7 -2
- package/build/components/block-toolbar/index.js.map +1 -1
- package/build/components/block-toolbar/switch-section-style.js +105 -0
- package/build/components/block-toolbar/switch-section-style.js.map +1 -0
- package/build/components/collab/block-comment-icon-slot.js +2 -6
- package/build/components/collab/block-comment-icon-slot.js.map +1 -1
- package/build/components/collab/block-comment-icon-toolbar-slot.js +2 -6
- package/build/components/collab/block-comment-icon-toolbar-slot.js.map +1 -1
- package/build/components/color-palette/with-color-context.js +4 -2
- package/build/components/color-palette/with-color-context.js.map +1 -1
- package/build/components/font-family/index.js +14 -13
- package/build/components/font-family/index.js.map +1 -1
- package/build/components/global-styles/use-global-styles-output.js +1 -1
- package/build/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build/components/iframe/index.js +140 -23
- package/build/components/iframe/index.js.map +1 -1
- package/build/components/inserter/block-patterns-tab/pattern-category-previews.js +1 -5
- package/build/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
- package/build/components/inserter/category-tabs/index.js +7 -8
- package/build/components/inserter/category-tabs/index.js.map +1 -1
- package/build/components/inserter-draggable-blocks/index.js +2 -1
- package/build/components/inserter-draggable-blocks/index.js.map +1 -1
- package/build/components/inspector-controls/slot.js +7 -4
- package/build/components/inspector-controls/slot.js.map +1 -1
- package/build/components/inspector-controls-tabs/position-controls-panel.js +1 -1
- package/build/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
- package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js +4 -4
- package/build/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
- package/build/components/media-placeholder/index.js +29 -21
- package/build/components/media-placeholder/index.js.map +1 -1
- package/build/hooks/border.js +3 -3
- package/build/hooks/border.js.map +1 -1
- package/build/hooks/color.js +1 -1
- package/build/hooks/color.js.map +1 -1
- package/build/hooks/dimensions.js +2 -2
- package/build/hooks/dimensions.js.map +1 -1
- package/build/hooks/style.js +6 -6
- package/build/hooks/style.js.map +1 -1
- package/build/hooks/supports.js +1 -1
- package/build/hooks/supports.js.map +1 -1
- package/build/hooks/typography.js +1 -1
- package/build/hooks/typography.js.map +1 -1
- package/build/hooks/utils.js +1 -1
- package/build/hooks/utils.js.map +1 -1
- package/build/layouts/flex.js +11 -9
- package/build/layouts/flex.js.map +1 -1
- package/build/private-apis.js +4 -4
- package/build/private-apis.js.map +1 -1
- package/build/store/private-selectors.js +1 -1
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/selectors.js +3 -0
- package/build/store/selectors.js.map +1 -1
- package/build-module/components/block-controls/slot.js +6 -3
- package/build-module/components/block-controls/slot.js.map +1 -1
- package/build-module/components/block-inspector/index.js +1 -2
- package/build-module/components/block-inspector/index.js.map +1 -1
- package/build-module/components/block-lock/modal.js +1 -1
- package/build-module/components/block-lock/modal.js.map +1 -1
- package/build-module/components/block-manager/category.js +71 -0
- package/build-module/components/block-manager/category.js.map +1 -0
- package/build-module/components/block-manager/checklist.js +32 -0
- package/build-module/components/block-manager/checklist.js.map +1 -0
- package/build-module/components/block-manager/index.js +102 -0
- package/build-module/components/block-manager/index.js.map +1 -0
- package/build-module/components/block-settings-menu/block-settings-dropdown.js +2 -2
- package/build-module/components/block-settings-menu/block-settings-dropdown.js.map +1 -1
- package/build-module/components/block-settings-menu/index.js +2 -2
- package/build-module/components/block-settings-menu/index.js.map +1 -1
- package/build-module/components/block-toolbar/index.js +7 -2
- package/build-module/components/block-toolbar/index.js.map +1 -1
- package/build-module/components/block-toolbar/switch-section-style.js +97 -0
- package/build-module/components/block-toolbar/switch-section-style.js.map +1 -0
- package/build-module/components/collab/block-comment-icon-slot.js +2 -6
- package/build-module/components/collab/block-comment-icon-slot.js.map +1 -1
- package/build-module/components/collab/block-comment-icon-toolbar-slot.js +2 -6
- package/build-module/components/collab/block-comment-icon-toolbar-slot.js.map +1 -1
- package/build-module/components/color-palette/with-color-context.js +4 -2
- package/build-module/components/color-palette/with-color-context.js.map +1 -1
- package/build-module/components/font-family/index.js +15 -14
- package/build-module/components/font-family/index.js.map +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js +1 -1
- package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
- package/build-module/components/iframe/index.js +141 -24
- package/build-module/components/iframe/index.js.map +1 -1
- package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js +1 -5
- package/build-module/components/inserter/block-patterns-tab/pattern-category-previews.js.map +1 -1
- package/build-module/components/inserter/category-tabs/index.js +8 -9
- package/build-module/components/inserter/category-tabs/index.js.map +1 -1
- package/build-module/components/inserter-draggable-blocks/index.js +2 -1
- package/build-module/components/inserter-draggable-blocks/index.js.map +1 -1
- package/build-module/components/inspector-controls/slot.js +7 -4
- package/build-module/components/inspector-controls/slot.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/position-controls-panel.js +1 -1
- package/build-module/components/inspector-controls-tabs/position-controls-panel.js.map +1 -1
- package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js +4 -4
- package/build-module/components/inspector-controls-tabs/use-inspector-controls-tabs.js.map +1 -1
- package/build-module/components/media-placeholder/index.js +29 -21
- package/build-module/components/media-placeholder/index.js.map +1 -1
- package/build-module/hooks/border.js +3 -3
- package/build-module/hooks/border.js.map +1 -1
- package/build-module/hooks/color.js +1 -1
- package/build-module/hooks/color.js.map +1 -1
- package/build-module/hooks/dimensions.js +2 -2
- package/build-module/hooks/dimensions.js.map +1 -1
- package/build-module/hooks/style.js +6 -6
- package/build-module/hooks/style.js.map +1 -1
- package/build-module/hooks/supports.js +1 -1
- package/build-module/hooks/supports.js.map +1 -1
- package/build-module/hooks/typography.js +1 -1
- package/build-module/hooks/typography.js.map +1 -1
- package/build-module/hooks/utils.js +1 -1
- package/build-module/hooks/utils.js.map +1 -1
- package/build-module/layouts/flex.js +11 -9
- package/build-module/layouts/flex.js.map +1 -1
- package/build-module/private-apis.js +6 -6
- package/build-module/private-apis.js.map +1 -1
- package/build-module/store/private-selectors.js +1 -1
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/selectors.js +3 -0
- package/build-module/store/selectors.js.map +1 -1
- package/build-style/content-rtl.css +23 -9
- package/build-style/content.css +23 -9
- package/build-style/style-rtl.css +78 -0
- package/build-style/style.css +78 -0
- package/package.json +31 -31
- package/src/components/block-controls/slot.js +5 -3
- package/src/components/block-inspector/index.js +0 -2
- package/src/components/block-lock/modal.js +1 -1
- package/src/components/block-manager/category.js +102 -0
- package/src/components/block-manager/checklist.js +34 -0
- package/src/components/block-manager/index.js +127 -0
- package/src/components/block-manager/style.scss +82 -0
- package/src/components/block-mover/README.md +15 -8
- package/src/components/block-mover/stories/index.story.js +73 -71
- package/src/components/block-mover/style.scss +3 -0
- package/src/components/block-settings-menu/block-settings-dropdown.js +2 -2
- package/src/components/block-settings-menu/index.js +2 -2
- package/src/components/block-toolbar/index.js +6 -0
- package/src/components/block-toolbar/switch-section-style.js +115 -0
- package/src/components/collab/block-comment-icon-slot.js +2 -6
- package/src/components/collab/block-comment-icon-toolbar-slot.js +3 -5
- package/src/components/color-palette/with-color-context.js +25 -7
- package/src/components/font-family/index.js +13 -13
- package/src/components/global-styles/test/use-global-styles-output.js +1 -1
- package/src/components/global-styles/use-global-styles-output.js +1 -1
- package/src/components/iframe/content.scss +16 -3
- package/src/components/iframe/index.js +187 -44
- package/src/components/inserter/block-patterns-tab/pattern-category-previews.js +7 -16
- package/src/components/inserter/category-tabs/index.js +8 -9
- package/src/components/inserter-draggable-blocks/index.js +10 -1
- package/src/components/inspector-controls/README.md +2 -0
- package/src/components/inspector-controls/slot.js +6 -4
- package/src/components/inspector-controls-tabs/position-controls-panel.js +1 -3
- package/src/components/inspector-controls-tabs/use-inspector-controls-tabs.js +10 -10
- package/src/components/media-placeholder/index.js +37 -33
- package/src/components/provider/test/use-block-sync.js +3 -1
- package/src/components/rich-text/content.scss +15 -10
- package/src/hooks/border.js +3 -9
- package/src/hooks/color.js +1 -1
- package/src/hooks/dimensions.js +2 -2
- package/src/hooks/style.js +6 -12
- package/src/hooks/supports.js +1 -1
- package/src/hooks/test/style.js +1 -2
- package/src/hooks/typography.js +1 -1
- package/src/hooks/utils.js +1 -1
- package/src/layouts/flex.js +26 -18
- package/src/private-apis.js +6 -6
- package/src/store/private-selectors.js +1 -1
- package/src/store/selectors.js +3 -0
- package/src/store/test/selectors.js +87 -58
- package/src/style.scss +1 -0
- package/build/components/block-info-slot-fill/index.js +0 -39
- package/build/components/block-info-slot-fill/index.js.map +0 -1
- package/build-module/components/block-info-slot-fill/index.js +0 -32
- package/build-module/components/block-info-slot-fill/index.js.map +0 -1
- package/src/components/block-info-slot-fill/index.js +0 -27
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_blocks","require","_components","_data","_icons","_element","_i18n","_keycodes","_keyboardShortcuts","_compose","_blockActions","_interopRequireDefault","_blockCommentIconSlot","_blockHtmlConvertButton","_blockSettingsMenuFirstItem","_blockSettingsMenuControls","_blockParentSelectorMenuItem","_store","_lockUnlock","_jsxRuntime","POPOVER_PROPS","className","placement","CopyMenuItem","clientIds","onCopy","label","shortcut","getBlocksByClientId","useSelect","blockEditorStore","ref","useCopyToClipboard","serialize","copyMenuItemLabel","__","jsx","MenuItem","children","BlockSettingsDropdown","block","__experimentalSelectBlock","props","currentClientId","clientId","count","length","firstBlockClientId","firstParentClientId","parentBlockType","previousBlockClientId","selectedBlockClientIds","openedBlockSettingsMenu","isContentOnly","select","getBlockName","getBlockRootClientId","getPreviousBlockClientId","getSelectedBlockClientIds","getBlockAttributes","getOpenedBlockSettingsMenu","getBlockEditingMode","unlock","getActiveBlockVariation","blocksStore","_firstParentClientId","parentBlockName","getBlockType","getBlockOrder","setOpenedBlockSettingsMenu","useDispatch","shortcuts","getShortcutRepresentation","keyboardShortcutsStore","duplicate","remove","insertAfter","insertBefore","hasSelectedBlocks","updateSelectionAfterDuplicate","clientIdsPromise","ids","updateSelectionAfterRemove","blockToFocus","shouldUpdateSelection","parentBlockIsSelected","includes","open","undefined","onToggle","localOpen","shouldShowBlockParentMenuItem","default","__experimentalUpdateSelection","canCopyStyles","canDuplicate","canInsertBlock","canRemove","onDuplicate","onInsertAfter","onInsertBefore","onRemove","onPasteStyles","isEmpty","DropdownMenu","icon","moreVertical","popoverProps","noIcons","onClose","jsxs","Fragment","MenuGroup","Slot","fillProps","parentClientId","displayShortcut","primary","onClick","pipe","Children","map","child","cloneElement","_default","exports"],"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 { displayShortcut } from '@wordpress/keycodes';\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 __unstableCommentIconFill 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';\n\nconst POPOVER_PROPS = {\n\tclassName: 'block-editor-block-settings-menu__popover',\n\tplacement: 'bottom-start',\n};\n\nfunction CopyMenuItem( { clientIds, onCopy, label, shortcut } ) {\n\tconst { getBlocksByClientId } = useSelect( blockEditorStore );\n\tconst ref = useCopyToClipboard(\n\t\t() => serialize( getBlocksByClientId( clientIds ) ),\n\t\tonCopy\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\tconst {\n\t\tfirstParentClientId,\n\t\tparentBlockType,\n\t\tpreviousBlockClientId,\n\t\tselectedBlockClientIds,\n\t\topenedBlockSettingsMenu,\n\t\tisContentOnly,\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} = 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};\n\t\t},\n\t\t[ firstBlockClientId ]\n\t);\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\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{ ! isContentOnly && (\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={ displayShortcut.primary(\n\t\t\t\t\t\t\t\t\t\t\t\t'c'\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 && ! isContentOnly && (\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<__unstableCommentIconFill.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/>\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<BlockSettingsMenuControls.Slot\n\t\t\t\t\t\t\t\t\tfillProps={ {\n\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\tcount,\n\t\t\t\t\t\t\t\t\t\tfirstBlockClientId,\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tclientIds={ clientIds }\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":["_blocks","require","_components","_data","_icons","_element","_i18n","_keycodes","_keyboardShortcuts","_compose","_blockActions","_interopRequireDefault","_blockCommentIconSlot","_blockHtmlConvertButton","_blockSettingsMenuFirstItem","_blockSettingsMenuControls","_blockParentSelectorMenuItem","_store","_lockUnlock","_jsxRuntime","POPOVER_PROPS","className","placement","CopyMenuItem","clientIds","onCopy","label","shortcut","getBlocksByClientId","useSelect","blockEditorStore","ref","useCopyToClipboard","serialize","copyMenuItemLabel","__","jsx","MenuItem","children","BlockSettingsDropdown","block","__experimentalSelectBlock","props","currentClientId","clientId","count","length","firstBlockClientId","firstParentClientId","parentBlockType","previousBlockClientId","selectedBlockClientIds","openedBlockSettingsMenu","isContentOnly","select","getBlockName","getBlockRootClientId","getPreviousBlockClientId","getSelectedBlockClientIds","getBlockAttributes","getOpenedBlockSettingsMenu","getBlockEditingMode","unlock","getActiveBlockVariation","blocksStore","_firstParentClientId","parentBlockName","getBlockType","getBlockOrder","setOpenedBlockSettingsMenu","useDispatch","shortcuts","getShortcutRepresentation","keyboardShortcutsStore","duplicate","remove","insertAfter","insertBefore","hasSelectedBlocks","updateSelectionAfterDuplicate","clientIdsPromise","ids","updateSelectionAfterRemove","blockToFocus","shouldUpdateSelection","parentBlockIsSelected","includes","open","undefined","onToggle","localOpen","shouldShowBlockParentMenuItem","default","__experimentalUpdateSelection","canCopyStyles","canDuplicate","canInsertBlock","canRemove","onDuplicate","onInsertAfter","onInsertBefore","onRemove","onPasteStyles","isEmpty","DropdownMenu","icon","moreVertical","popoverProps","noIcons","onClose","jsxs","Fragment","MenuGroup","Slot","fillProps","parentClientId","displayShortcut","primary","onClick","pipe","Children","map","child","cloneElement","_default","exports"],"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 { displayShortcut } from '@wordpress/keycodes';\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';\n\nconst POPOVER_PROPS = {\n\tclassName: 'block-editor-block-settings-menu__popover',\n\tplacement: 'bottom-start',\n};\n\nfunction CopyMenuItem( { clientIds, onCopy, label, shortcut } ) {\n\tconst { getBlocksByClientId } = useSelect( blockEditorStore );\n\tconst ref = useCopyToClipboard(\n\t\t() => serialize( getBlocksByClientId( clientIds ) ),\n\t\tonCopy\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\tconst {\n\t\tfirstParentClientId,\n\t\tparentBlockType,\n\t\tpreviousBlockClientId,\n\t\tselectedBlockClientIds,\n\t\topenedBlockSettingsMenu,\n\t\tisContentOnly,\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} = 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};\n\t\t},\n\t\t[ firstBlockClientId ]\n\t);\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\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{ ! isContentOnly && (\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={ displayShortcut.primary(\n\t\t\t\t\t\t\t\t\t\t\t\t'c'\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 && ! isContentOnly && (\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/>\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<BlockSettingsMenuControls.Slot\n\t\t\t\t\t\t\t\t\tfillProps={ {\n\t\t\t\t\t\t\t\t\t\tonClose,\n\t\t\t\t\t\t\t\t\t\tcount,\n\t\t\t\t\t\t\t\t\t\tfirstBlockClientId,\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\tclientIds={ clientIds }\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":";;;;;;;;AAGA,IAAAA,OAAA,GAAAC,OAAA;AAKA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,kBAAA,GAAAP,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AAKA,IAAAS,aAAA,GAAAC,sBAAA,CAAAV,OAAA;AACA,IAAAW,qBAAA,GAAAD,sBAAA,CAAAV,OAAA;AACA,IAAAY,uBAAA,GAAAF,sBAAA,CAAAV,OAAA;AACA,IAAAa,2BAAA,GAAAH,sBAAA,CAAAV,OAAA;AACA,IAAAc,0BAAA,GAAAJ,sBAAA,CAAAV,OAAA;AACA,IAAAe,4BAAA,GAAAL,sBAAA,CAAAV,OAAA;AACA,IAAAgB,MAAA,GAAAhB,OAAA;AACA,IAAAiB,WAAA,GAAAjB,OAAA;AAA2C,IAAAkB,WAAA,GAAAlB,OAAA;AA3B3C;AACA;AACA;;AAeA;AACA;AACA;;AAUA,MAAMmB,aAAa,GAAG;EACrBC,SAAS,EAAE,2CAA2C;EACtDC,SAAS,EAAE;AACZ,CAAC;AAED,SAASC,YAAYA,CAAE;EAAEC,SAAS;EAAEC,MAAM;EAAEC,KAAK;EAAEC;AAAS,CAAC,EAAG;EAC/D,MAAM;IAAEC;EAAoB,CAAC,GAAG,IAAAC,eAAS,EAAEC,YAAiB,CAAC;EAC7D,MAAMC,GAAG,GAAG,IAAAC,2BAAkB,EAC7B,MAAM,IAAAC,iBAAS,EAAEL,mBAAmB,CAAEJ,SAAU,CAAE,CAAC,EACnDC,MACD,CAAC;EACD,MAAMS,iBAAiB,GAAGR,KAAK,GAAGA,KAAK,GAAG,IAAAS,QAAE,EAAE,MAAO,CAAC;EACtD,oBACC,IAAAhB,WAAA,CAAAiB,GAAA,EAAClC,WAAA,CAAAmC,QAAQ;IAACN,GAAG,EAAGA,GAAK;IAACJ,QAAQ,EAAGA,QAAU;IAAAW,QAAA,EACxCJ;EAAiB,CACV,CAAC;AAEb;AAEO,SAASK,qBAAqBA,CAAE;EACtCC,KAAK;EACLhB,SAAS;EACTc,QAAQ;EACRG,yBAAyB;EACzB,GAAGC;AACJ,CAAC,EAAG;EACH;EACA,MAAMC,eAAe,GAAGH,KAAK,EAAEI,QAAQ;EACvC,MAAMC,KAAK,GAAGrB,SAAS,CAACsB,MAAM;EAC9B,MAAMC,kBAAkB,GAAGvB,SAAS,CAAE,CAAC,CAAE;EACzC,MAAM;IACLwB,mBAAmB;IACnBC,eAAe;IACfC,qBAAqB;IACrBC,sBAAsB;IACtBC,uBAAuB;IACvBC;EACD,CAAC,GAAG,IAAAxB,eAAS,EACVyB,MAAM,IAAM;IACb,MAAM;MACLC,YAAY;MACZC,oBAAoB;MACpBC,wBAAwB;MACxBC,yBAAyB;MACzBC,kBAAkB;MAClBC,0BAA0B;MAC1BC;IACD,CAAC,GAAG,IAAAC,kBAAM,EAAER,MAAM,CAAExB,YAAiB,CAAE,CAAC;IAExC,MAAM;MAAEiC;IAAwB,CAAC,GAAGT,MAAM,CAAEU,aAAY,CAAC;IAEzD,MAAMC,oBAAoB,GACzBT,oBAAoB,CAAET,kBAAmB,CAAC;IAC3C,MAAMmB,eAAe,GACpBD,oBAAoB,IAAIV,YAAY,CAAEU,oBAAqB,CAAC;IAE7D,OAAO;MACNjB,mBAAmB,EAAEiB,oBAAoB;MACzChB,eAAe,EACdgB,oBAAoB,KAClBF,uBAAuB,CACxBG,eAAe,EACfP,kBAAkB,CAAEM,oBAAqB,CAC1C,CAAC,IACA,IAAAE,oBAAY,EAAED,eAAgB,CAAC,CAAE;MACnChB,qBAAqB,EACpBO,wBAAwB,CAAEV,kBAAmB,CAAC;MAC/CI,sBAAsB,EAAEO,yBAAyB,CAAC,CAAC;MACnDN,uBAAuB,EAAEQ,0BAA0B,CAAC,CAAC;MACrDP,aAAa,EACZQ,mBAAmB,CAAEd,kBAAmB,CAAC,KAAK;IAChD,CAAC;EACF,CAAC,EACD,CAAEA,kBAAkB,CACrB,CAAC;EACD,MAAM;IAAEqB,aAAa;IAAEV;EAA0B,CAAC,GACjD,IAAA7B,eAAS,EAAEC,YAAiB,CAAC;EAE9B,MAAM;IAAEuC;EAA2B,CAAC,GAAG,IAAAP,kBAAM,EAC5C,IAAAQ,iBAAW,EAAExC,YAAiB,CAC/B,CAAC;EAED,MAAMyC,SAAS,GAAG,IAAA1C,eAAS,EAAIyB,MAAM,IAAM;IAC1C,MAAM;MAAEkB;IAA0B,CAAC,GAAGlB,MAAM,CAAEmB,wBAAuB,CAAC;IACtE,OAAO;MACNC,SAAS,EAAEF,yBAAyB,CACnC,6BACD,CAAC;MACDG,MAAM,EAAEH,yBAAyB,CAAE,0BAA2B,CAAC;MAC/DI,WAAW,EAAEJ,yBAAyB,CACrC,gCACD,CAAC;MACDK,YAAY,EAAEL,yBAAyB,CACtC,iCACD;IACD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAMM,iBAAiB,GAAG3B,sBAAsB,CAACL,MAAM,GAAG,CAAC;EAE3D,eAAeiC,6BAA6BA,CAAEC,gBAAgB,EAAG;IAChE,IAAK,CAAEvC,yBAAyB,EAAG;MAClC;IACD;IAEA,MAAMwC,GAAG,GAAG,MAAMD,gBAAgB;IAClC,IAAKC,GAAG,IAAIA,GAAG,CAAE,CAAC,CAAE,EAAG;MACtBxC,yBAAyB,CAAEwC,GAAG,CAAE,CAAC,CAAE,EAAE,KAAM,CAAC;IAC7C;EACD;EAEA,SAASC,0BAA0BA,CAAA,EAAG;IACrC,IAAK,CAAEzC,yBAAyB,EAAG;MAClC;IACD;IAEA,IAAI0C,YAAY,GAAGjC,qBAAqB,IAAIF,mBAAmB;;IAE/D;IACA,IAAK,CAAEmC,YAAY,EAAG;MACrBA,YAAY,GAAGf,aAAa,CAAC,CAAC,CAAE,CAAC,CAAE;IACpC;;IAEA;IACA,MAAMgB,qBAAqB,GAC1BN,iBAAiB,IAAIpB,yBAAyB,CAAC,CAAC,CAACZ,MAAM,KAAK,CAAC;IAE9DL,yBAAyB,CAAE0C,YAAY,EAAEC,qBAAsB,CAAC;EACjE;;EAEA;EACA;EACA,MAAMC,qBAAqB,GAC1BlC,sBAAsB,EAAEmC,QAAQ,CAAEtC,mBAAoB,CAAC;;EAExD;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMuC,IAAI,GAAG,CAAE5C,eAAe,GAC3B6C,SAAS,GACTpC,uBAAuB,KAAKT,eAAe,IAAI,KAAK;EAEvD,SAAS8C,QAAQA,CAAEC,SAAS,EAAG;IAC9B,IAAKA,SAAS,IAAItC,uBAAuB,KAAKT,eAAe,EAAG;MAC/D0B,0BAA0B,CAAE1B,eAAgB,CAAC;IAC9C,CAAC,MAAM,IACN,CAAE+C,SAAS,IACXtC,uBAAuB,IACvBA,uBAAuB,KAAKT,eAAe,EAC1C;MACD0B,0BAA0B,CAAEmB,SAAU,CAAC;IACxC;EACD;EAEA,MAAMG,6BAA6B,GAClC,CAAEN,qBAAqB,IAAI,CAAC,CAAErC,mBAAmB;EAElD,oBACC,IAAA7B,WAAA,CAAAiB,GAAA,EAAC1B,aAAA,CAAAkF,OAAY;IACZpE,SAAS,EAAGA,SAAW;IACvBqE,6BAA6B,EAAG,CAAEpD,yBAA2B;IAAAH,QAAA,EAE3DA,CAAE;MACHwD,aAAa;MACbC,YAAY;MACZC,cAAc;MACdC,SAAS;MACTC,WAAW;MACXC,aAAa;MACbC,cAAc;MACdC,QAAQ;MACR5E,MAAM;MACN6E;IACD,CAAC,KAAM;MACN;MACA;MACA;MACA;MACA,MAAMC,OAAO,GACZ,CAAEN,SAAS,IACX,CAAEF,YAAY,IACd,CAAEC,cAAc,IAChB3C,aAAa;MAEd,IAAKkD,OAAO,EAAG;QACd,OAAO,IAAI;MACZ;MAEA,oBACC,IAAApF,WAAA,CAAAiB,GAAA,EAAClC,WAAA,CAAAsG,YAAY;QACZC,IAAI,EAAGC,mBAAc;QACrBhF,KAAK,EAAG,IAAAS,QAAE,EAAE,SAAU,CAAG;QACzBd,SAAS,EAAC,kCAAkC;QAC5CsF,YAAY,EAAGvF,aAAe;QAC9BmE,IAAI,EAAGA,IAAM;QACbE,QAAQ,EAAGA,QAAU;QACrBmB,OAAO;QAAA,GACFlE,KAAK;QAAAJ,QAAA,EAERA,CAAE;UAAEuE;QAAQ,CAAC,kBACd,IAAA1F,WAAA,CAAA2F,IAAA,EAAA3F,WAAA,CAAA4F,QAAA;UAAAzE,QAAA,gBACC,IAAAnB,WAAA,CAAA2F,IAAA,EAAC5G,WAAA,CAAA8G,SAAS;YAAA1E,QAAA,gBACT,IAAAnB,WAAA,CAAAiB,GAAA,EAACtB,2BAAA,CAAA8E,OAAoC,CAACqB,IAAI;cACzCC,SAAS,EAAG;gBAAEL;cAAQ;YAAG,CACzB,CAAC,EACAlB,6BAA6B,iBAC9B,IAAAxE,WAAA,CAAAiB,GAAA,EAACpB,4BAAA,CAAA4E,OAA2B;cAC3BuB,cAAc,EACbnE,mBACA;cACDC,eAAe,EAAGA;YAAiB,CACnC,CACD,EACCJ,KAAK,KAAK,CAAC,iBACZ,IAAA1B,WAAA,CAAAiB,GAAA,EAACvB,uBAAA,CAAA+E,OAAsB;cACtBhD,QAAQ,EAAGG;YAAoB,CAC/B,CACD,EACC,CAAEM,aAAa,iBAChB,IAAAlC,WAAA,CAAAiB,GAAA,EAACb,YAAY;cACZC,SAAS,EAAGA,SAAW;cACvBC,MAAM,EAAGA,MAAQ;cACjBE,QAAQ,EAAGyF,yBAAe,CAACC,OAAO,CACjC,GACD;YAAG,CACH,CACD,EACCtB,YAAY,iBACb,IAAA5E,WAAA,CAAAiB,GAAA,EAAClC,WAAA,CAAAmC,QAAQ;cACRiF,OAAO,EAAG,IAAAC,aAAI,EACbV,OAAO,EACPX,WAAW,EACXnB,6BACD,CAAG;cACHpD,QAAQ,EAAG4C,SAAS,CAACG,SAAW;cAAApC,QAAA,EAE9B,IAAAH,QAAE,EAAE,WAAY;YAAC,CACV,CACV,EACC6D,cAAc,IAAI,CAAE3C,aAAa,iBAClC,IAAAlC,WAAA,CAAA2F,IAAA,EAAA3F,WAAA,CAAA4F,QAAA;cAAAzE,QAAA,gBACC,IAAAnB,WAAA,CAAAiB,GAAA,EAAClC,WAAA,CAAAmC,QAAQ;gBACRiF,OAAO,EAAG,IAAAC,aAAI,EACbV,OAAO,EACPT,cACD,CAAG;gBACHzE,QAAQ,EACP4C,SAAS,CAACM,YACV;gBAAAvC,QAAA,EAEC,IAAAH,QAAE,EAAE,YAAa;cAAC,CACX,CAAC,eACX,IAAAhB,WAAA,CAAAiB,GAAA,EAAClC,WAAA,CAAAmC,QAAQ;gBACRiF,OAAO,EAAG,IAAAC,aAAI,EACbV,OAAO,EACPV,aACD,CAAG;gBACHxE,QAAQ,EACP4C,SAAS,CAACK,WACV;gBAAAtC,QAAA,EAEC,IAAAH,QAAE,EAAE,WAAY;cAAC,CACV,CAAC;YAAA,CACV,CACF,eACD,IAAAhB,WAAA,CAAAiB,GAAA,EAACxB,qBAAA,CAAAgF,OAAmB,CAACqB,IAAI;cACxBC,SAAS,EAAG;gBAAEL;cAAQ;YAAG,CACzB,CAAC;UAAA,CACQ,CAAC,EACVf,aAAa,IAAI,CAAEzC,aAAa,iBACjC,IAAAlC,WAAA,CAAA2F,IAAA,EAAC5G,WAAA,CAAA8G,SAAS;YAAA1E,QAAA,gBACT,IAAAnB,WAAA,CAAAiB,GAAA,EAACb,YAAY;cACZC,SAAS,EAAGA,SAAW;cACvBC,MAAM,EAAGA,MAAQ;cACjBC,KAAK,EAAG,IAAAS,QAAE,EAAE,aAAc;YAAG,CAC7B,CAAC,eACF,IAAAhB,WAAA,CAAAiB,GAAA,EAAClC,WAAA,CAAAmC,QAAQ;cAACiF,OAAO,EAAGhB,aAAe;cAAAhE,QAAA,EAChC,IAAAH,QAAE,EAAE,cAAe;YAAC,CACb,CAAC;UAAA,CACD,CACX,eACD,IAAAhB,WAAA,CAAAiB,GAAA,EAACrB,0BAAA,CAAA6E,OAAyB,CAACqB,IAAI;YAC9BC,SAAS,EAAG;cACXL,OAAO;cACPhE,KAAK;cACLE;YACD,CAAG;YACHvB,SAAS,EAAGA;UAAW,CACvB,CAAC,EACA,OAAOc,QAAQ,KAAK,UAAU,GAC7BA,QAAQ,CAAE;YAAEuE;UAAQ,CAAE,CAAC,GACvBW,iBAAQ,CAACC,GAAG,CAAIC,KAAK,IACrB,IAAAC,qBAAY,EAAED,KAAK,EAAE;YAAEb;UAAQ,CAAE,CACjC,CAAC,EACFZ,SAAS,iBACV,IAAA9E,WAAA,CAAAiB,GAAA,EAAClC,WAAA,CAAA8G,SAAS;YAAA1E,QAAA,eACT,IAAAnB,WAAA,CAAAiB,GAAA,EAAClC,WAAA,CAAAmC,QAAQ;cACRiF,OAAO,EAAG,IAAAC,aAAI,EACbV,OAAO,EACPR,QAAQ,EACRnB,0BACD,CAAG;cACHvD,QAAQ,EAAG4C,SAAS,CAACI,MAAQ;cAAArC,QAAA,EAE3B,IAAAH,QAAE,EAAE,QAAS;YAAC,CACP;UAAC,CACD,CACX;QAAA,CACA;MACF,CACY,CAAC;IAEjB;EAAC,CACY,CAAC;AAEjB;AAAC,IAAAyF,QAAA,GAAAC,OAAA,CAAAjC,OAAA,GAEcrD,qBAAqB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_blockSettingsDropdown","_interopRequireDefault","_blockCommentIconToolbarSlot","_jsxRuntime","BlockSettingsMenu","clientIds","props","jsxs","ToolbarGroup","children","jsx","default","Slot","ToolbarItem","toggleProps","_default","exports"],"sources":["@wordpress/block-editor/src/components/block-settings-menu/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { ToolbarGroup, ToolbarItem } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport BlockSettingsDropdown from './block-settings-dropdown';\nimport
|
|
1
|
+
{"version":3,"names":["_components","require","_blockSettingsDropdown","_interopRequireDefault","_blockCommentIconToolbarSlot","_jsxRuntime","BlockSettingsMenu","clientIds","props","jsxs","ToolbarGroup","children","jsx","default","Slot","ToolbarItem","toggleProps","_default","exports"],"sources":["@wordpress/block-editor/src/components/block-settings-menu/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { ToolbarGroup, ToolbarItem } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport BlockSettingsDropdown from './block-settings-dropdown';\nimport CommentIconToolbarSlotFill from '../../components/collab/block-comment-icon-toolbar-slot';\n\nexport function BlockSettingsMenu( { clientIds, ...props } ) {\n\treturn (\n\t\t<ToolbarGroup>\n\t\t\t<CommentIconToolbarSlotFill.Slot />\n\n\t\t\t<ToolbarItem>\n\t\t\t\t{ ( toggleProps ) => (\n\t\t\t\t\t<BlockSettingsDropdown\n\t\t\t\t\t\tclientIds={ clientIds }\n\t\t\t\t\t\ttoggleProps={ toggleProps }\n\t\t\t\t\t\t{ ...props }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</ToolbarItem>\n\t\t</ToolbarGroup>\n\t);\n}\n\nexport default BlockSettingsMenu;\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAKA,IAAAC,sBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,4BAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAiG,IAAAI,WAAA,GAAAJ,OAAA;AATjG;AACA;AACA;;AAGA;AACA;AACA;;AAIO,SAASK,iBAAiBA,CAAE;EAAEC,SAAS;EAAE,GAAGC;AAAM,CAAC,EAAG;EAC5D,oBACC,IAAAH,WAAA,CAAAI,IAAA,EAACT,WAAA,CAAAU,YAAY;IAAAC,QAAA,gBACZ,IAAAN,WAAA,CAAAO,GAAA,EAACR,4BAAA,CAAAS,OAA0B,CAACC,IAAI,IAAE,CAAC,eAEnC,IAAAT,WAAA,CAAAO,GAAA,EAACZ,WAAA,CAAAe,WAAW;MAAAJ,QAAA,EACPK,WAAW,iBACd,IAAAX,WAAA,CAAAO,GAAA,EAACV,sBAAA,CAAAW,OAAqB;QACrBN,SAAS,EAAGA,SAAW;QACvBS,WAAW,EAAGA,WAAa;QAAA,GACtBR;MAAK,CACV;IACD,CACW,CAAC;EAAA,CACD,CAAC;AAEjB;AAAC,IAAAS,QAAA,GAAAC,OAAA,CAAAL,OAAA,GAEcP,iBAAiB","ignoreList":[]}
|
|
@@ -28,6 +28,7 @@ var _blockNameContext = _interopRequireDefault(require("./block-name-context"));
|
|
|
28
28
|
var _navigableToolbar = _interopRequireDefault(require("../navigable-toolbar"));
|
|
29
29
|
var _useHasBlockToolbar = require("./use-has-block-toolbar");
|
|
30
30
|
var _changeDesign = _interopRequireDefault(require("./change-design"));
|
|
31
|
+
var _switchSectionStyle = _interopRequireDefault(require("./switch-section-style"));
|
|
31
32
|
var _lockUnlock = require("../../lock-unlock");
|
|
32
33
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
33
34
|
/**
|
|
@@ -75,7 +76,8 @@ function PrivateBlockToolbar({
|
|
|
75
76
|
showShuffleButton,
|
|
76
77
|
showSlots,
|
|
77
78
|
showGroupButtons,
|
|
78
|
-
showLockButtons
|
|
79
|
+
showLockButtons,
|
|
80
|
+
showSwitchSectionStyleButton
|
|
79
81
|
} = (0, _data.useSelect)(select => {
|
|
80
82
|
const {
|
|
81
83
|
getBlockName,
|
|
@@ -121,7 +123,8 @@ function PrivateBlockToolbar({
|
|
|
121
123
|
showShuffleButton: isZoomOut(),
|
|
122
124
|
showSlots: !isZoomOut(),
|
|
123
125
|
showGroupButtons: !isZoomOut(),
|
|
124
|
-
showLockButtons: !isZoomOut()
|
|
126
|
+
showLockButtons: !isZoomOut(),
|
|
127
|
+
showSwitchSectionStyleButton: isZoomOut()
|
|
125
128
|
};
|
|
126
129
|
}, []);
|
|
127
130
|
const toolbarWrapperRef = (0, _element.useRef)(null);
|
|
@@ -181,6 +184,8 @@ function PrivateBlockToolbar({
|
|
|
181
184
|
})
|
|
182
185
|
}), !hasContentOnlyLocking && shouldShowVisualToolbar && isMultiToolbar && showGroupButtons && /*#__PURE__*/(0, _jsxRuntime.jsx)(_convertToGroupButtons.BlockGroupToolbar, {}), showShuffleButton && /*#__PURE__*/(0, _jsxRuntime.jsx)(_changeDesign.default, {
|
|
183
186
|
clientId: blockClientIds[0]
|
|
187
|
+
}), showSwitchSectionStyleButton && /*#__PURE__*/(0, _jsxRuntime.jsx)(_switchSectionStyle.default, {
|
|
188
|
+
clientId: blockClientIds[0]
|
|
184
189
|
}), shouldShowVisualToolbar && showSlots && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
185
190
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_blockControls.default.Slot, {
|
|
186
191
|
group: "parent",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_data","_element","_compose","_blocks","_components","_blockMover","_blockParentSelector","_blockSwitcher","_blockControls","_blockToolbarLastItem","_blockSettingsMenu","_blockLock","_convertToGroupButtons","_blockEditVisuallyButton","_utils","_store","_blockNameContext","_navigableToolbar","_useHasBlockToolbar","_changeDesign","_lockUnlock","_jsxRuntime","PrivateBlockToolbar","hideDragHandle","focusOnMount","__experimentalInitialIndex","__experimentalOnIndexChange","variant","blockClientId","blockClientIds","isDefaultEditingMode","blockType","toolbarKey","shouldShowVisualToolbar","showParentSelector","isUsingBindings","hasParentPattern","hasContentOnlyLocking","showShuffleButton","showSlots","showGroupButtons","showLockButtons","useSelect","select","getBlockName","getBlockMode","getBlockParents","getSelectedBlockClientIds","isBlockValid","getBlockEditingMode","getBlockAttributes","getBlockParentsByBlockName","getTemplateLock","getParentSectionBlock","isZoomOut","unlock","blockEditorStore","selectedBlockClientIds","selectedBlockClientId","parents","parentSection","parentClientId","length","parentBlockName","parentBlockType","getBlockType","editingMode","_isDefaultEditingMode","_blockName","isValid","every","id","isVisual","_isUsingBindings","clientId","metadata","bindings","_hasParentPattern","_hasTemplateLock","some","hasBlockSupport","toolbarWrapperRef","useRef","nodeRef","showHoveredOrFocusedGestures","useShowHoveredOrFocusedGestures","ref","isLargeViewport","useViewportMatch","hasBlockToolbar","useHasBlockToolbar","isMultiToolbar","isSynced","isReusableBlock","isTemplatePart","classes","clsx","innerClasses","jsx","default","focusEditorOnEscape","className","__","undefined","children","jsxs","ToolbarGroup","clientIds","BlockLockToolbar","BlockGroupToolbar","Fragment","Slot","group","Provider","value","name","BlockToolbar"],"sources":["@wordpress/block-editor/src/components/block-toolbar/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { useRef } from '@wordpress/element';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tgetBlockType,\n\thasBlockSupport,\n\tisReusableBlock,\n\tisTemplatePart,\n} from '@wordpress/blocks';\nimport { ToolbarGroup } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport BlockMover from '../block-mover';\nimport BlockParentSelector from '../block-parent-selector';\nimport BlockSwitcher from '../block-switcher';\nimport BlockControls from '../block-controls';\nimport __unstableBlockToolbarLastItem from './block-toolbar-last-item';\nimport BlockSettingsMenu from '../block-settings-menu';\nimport { BlockLockToolbar } from '../block-lock';\nimport { BlockGroupToolbar } from '../convert-to-group-buttons';\nimport BlockEditVisuallyButton from '../block-edit-visually-button';\nimport { useShowHoveredOrFocusedGestures } from './utils';\nimport { store as blockEditorStore } from '../../store';\nimport __unstableBlockNameContext from './block-name-context';\nimport NavigableToolbar from '../navigable-toolbar';\nimport { useHasBlockToolbar } from './use-has-block-toolbar';\nimport ChangeDesign from './change-design';\nimport { unlock } from '../../lock-unlock';\n\n/**\n * Renders the block toolbar.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-toolbar/README.md\n *\n * @param {Object} props Components props.\n * @param {boolean} props.hideDragHandle Show or hide the Drag Handle for drag and drop functionality.\n * @param {boolean} props.focusOnMount Focus the toolbar when mounted.\n * @param {number} props.__experimentalInitialIndex The initial index of the toolbar item to focus.\n * @param {Function} props.__experimentalOnIndexChange Callback function to be called when the index of the focused toolbar item changes.\n * @param {string} props.variant Style variant of the toolbar, also passed to the Dropdowns rendered from Block Toolbar Buttons.\n */\nexport function PrivateBlockToolbar( {\n\thideDragHandle,\n\tfocusOnMount,\n\t__experimentalInitialIndex,\n\t__experimentalOnIndexChange,\n\tvariant = 'unstyled',\n} ) {\n\tconst {\n\t\tblockClientId,\n\t\tblockClientIds,\n\t\tisDefaultEditingMode,\n\t\tblockType,\n\t\ttoolbarKey,\n\t\tshouldShowVisualToolbar,\n\t\tshowParentSelector,\n\t\tisUsingBindings,\n\t\thasParentPattern,\n\t\thasContentOnlyLocking,\n\t\tshowShuffleButton,\n\t\tshowSlots,\n\t\tshowGroupButtons,\n\t\tshowLockButtons,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetBlockName,\n\t\t\tgetBlockMode,\n\t\t\tgetBlockParents,\n\t\t\tgetSelectedBlockClientIds,\n\t\t\tisBlockValid,\n\t\t\tgetBlockEditingMode,\n\t\t\tgetBlockAttributes,\n\t\t\tgetBlockParentsByBlockName,\n\t\t\tgetTemplateLock,\n\t\t\tgetParentSectionBlock,\n\t\t\tisZoomOut,\n\t\t} = unlock( select( blockEditorStore ) );\n\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\t\tconst selectedBlockClientId = selectedBlockClientIds[ 0 ];\n\t\tconst parents = getBlockParents( selectedBlockClientId );\n\t\tconst parentSection = getParentSectionBlock( selectedBlockClientId );\n\t\tconst parentClientId = parentSection ?? parents[ parents.length - 1 ];\n\t\tconst parentBlockName = getBlockName( parentClientId );\n\t\tconst parentBlockType = getBlockType( parentBlockName );\n\t\tconst editingMode = getBlockEditingMode( selectedBlockClientId );\n\t\tconst _isDefaultEditingMode = editingMode === 'default';\n\t\tconst _blockName = getBlockName( selectedBlockClientId );\n\t\tconst isValid = selectedBlockClientIds.every( ( id ) =>\n\t\t\tisBlockValid( id )\n\t\t);\n\t\tconst isVisual = selectedBlockClientIds.every(\n\t\t\t( id ) => getBlockMode( id ) === 'visual'\n\t\t);\n\t\tconst _isUsingBindings = selectedBlockClientIds.every(\n\t\t\t( clientId ) =>\n\t\t\t\t!! getBlockAttributes( clientId )?.metadata?.bindings\n\t\t);\n\n\t\tconst _hasParentPattern = selectedBlockClientIds.every(\n\t\t\t( clientId ) =>\n\t\t\t\tgetBlockParentsByBlockName( clientId, 'core/block', true )\n\t\t\t\t\t.length > 0\n\t\t);\n\n\t\t// If one or more selected blocks are locked, do not show the BlockGroupToolbar.\n\t\tconst _hasTemplateLock = selectedBlockClientIds.some(\n\t\t\t( id ) => getTemplateLock( id ) === 'contentOnly'\n\t\t);\n\t\treturn {\n\t\t\tblockClientId: selectedBlockClientId,\n\t\t\tblockClientIds: selectedBlockClientIds,\n\t\t\tisDefaultEditingMode: _isDefaultEditingMode,\n\t\t\tblockType: selectedBlockClientId && getBlockType( _blockName ),\n\t\t\tshouldShowVisualToolbar: isValid && isVisual,\n\t\t\ttoolbarKey: `${ selectedBlockClientId }${ parentClientId }`,\n\t\t\tshowParentSelector:\n\t\t\t\t! isZoomOut() &&\n\t\t\t\tparentBlockType &&\n\t\t\t\tgetBlockEditingMode( parentClientId ) !== 'disabled' &&\n\t\t\t\thasBlockSupport(\n\t\t\t\t\tparentBlockType,\n\t\t\t\t\t'__experimentalParentSelector',\n\t\t\t\t\ttrue\n\t\t\t\t) &&\n\t\t\t\tselectedBlockClientIds.length === 1,\n\t\t\tisUsingBindings: _isUsingBindings,\n\t\t\thasParentPattern: _hasParentPattern,\n\t\t\thasContentOnlyLocking: _hasTemplateLock,\n\t\t\tshowShuffleButton: isZoomOut(),\n\t\t\tshowSlots: ! isZoomOut(),\n\t\t\tshowGroupButtons: ! isZoomOut(),\n\t\t\tshowLockButtons: ! isZoomOut(),\n\t\t};\n\t}, [] );\n\n\tconst toolbarWrapperRef = useRef( null );\n\n\t// Handles highlighting the current block outline on hover or focus of the\n\t// block type toolbar area.\n\tconst nodeRef = useRef();\n\tconst showHoveredOrFocusedGestures = useShowHoveredOrFocusedGestures( {\n\t\tref: nodeRef,\n\t} );\n\n\tconst isLargeViewport = ! useViewportMatch( 'medium', '<' );\n\n\tconst hasBlockToolbar = useHasBlockToolbar();\n\tif ( ! hasBlockToolbar ) {\n\t\treturn null;\n\t}\n\n\tconst isMultiToolbar = blockClientIds.length > 1;\n\tconst isSynced =\n\t\tisReusableBlock( blockType ) || isTemplatePart( blockType );\n\n\t// Shifts the toolbar to make room for the parent block selector.\n\tconst classes = clsx( 'block-editor-block-contextual-toolbar', {\n\t\t'has-parent': showParentSelector,\n\t} );\n\n\tconst innerClasses = clsx( 'block-editor-block-toolbar', {\n\t\t'is-synced': isSynced,\n\t\t'is-connected': isUsingBindings,\n\t} );\n\n\treturn (\n\t\t<NavigableToolbar\n\t\t\tfocusEditorOnEscape\n\t\t\tclassName={ classes }\n\t\t\t/* translators: accessibility text for the block toolbar */\n\t\t\taria-label={ __( 'Block tools' ) }\n\t\t\t// The variant is applied as \"toolbar\" when undefined, which is the black border style of the dropdown from the toolbar popover.\n\t\t\tvariant={ variant === 'toolbar' ? undefined : variant }\n\t\t\tfocusOnMount={ focusOnMount }\n\t\t\t__experimentalInitialIndex={ __experimentalInitialIndex }\n\t\t\t__experimentalOnIndexChange={ __experimentalOnIndexChange }\n\t\t\t// Resets the index whenever the active block changes so\n\t\t\t// this is not persisted. See https://github.com/WordPress/gutenberg/pull/25760#issuecomment-717906169\n\t\t\tkey={ toolbarKey }\n\t\t>\n\t\t\t<div ref={ toolbarWrapperRef } className={ innerClasses }>\n\t\t\t\t{ showParentSelector && ! isMultiToolbar && isLargeViewport && (\n\t\t\t\t\t<BlockParentSelector />\n\t\t\t\t) }\n\t\t\t\t{ ( shouldShowVisualToolbar || isMultiToolbar ) &&\n\t\t\t\t\t! hasParentPattern && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ nodeRef }\n\t\t\t\t\t\t\t{ ...showHoveredOrFocusedGestures }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToolbarGroup className=\"block-editor-block-toolbar__block-controls\">\n\t\t\t\t\t\t\t\t<BlockSwitcher clientIds={ blockClientIds } />\n\t\t\t\t\t\t\t\t{ ! isMultiToolbar &&\n\t\t\t\t\t\t\t\t\tisDefaultEditingMode &&\n\t\t\t\t\t\t\t\t\tshowLockButtons && (\n\t\t\t\t\t\t\t\t\t\t<BlockLockToolbar\n\t\t\t\t\t\t\t\t\t\t\tclientId={ blockClientId }\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<BlockMover\n\t\t\t\t\t\t\t\t\tclientIds={ blockClientIds }\n\t\t\t\t\t\t\t\t\thideDragHandle={ hideDragHandle }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t{ ! hasContentOnlyLocking &&\n\t\t\t\t\tshouldShowVisualToolbar &&\n\t\t\t\t\tisMultiToolbar &&\n\t\t\t\t\tshowGroupButtons && <BlockGroupToolbar /> }\n\t\t\t\t{ showShuffleButton && (\n\t\t\t\t\t<ChangeDesign clientId={ blockClientIds[ 0 ] } />\n\t\t\t\t) }\n\t\t\t\t{ shouldShowVisualToolbar && showSlots && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"parent\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"block\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot className=\"block-editor-block-toolbar__slot\" />\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"inline\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"other\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<__unstableBlockNameContext.Provider\n\t\t\t\t\t\t\tvalue={ blockType?.name }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<__unstableBlockToolbarLastItem.Slot />\n\t\t\t\t\t\t</__unstableBlockNameContext.Provider>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t<BlockEditVisuallyButton clientIds={ blockClientIds } />\n\t\t\t\t<BlockSettingsMenu clientIds={ blockClientIds } />\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\n/**\n * Renders the block toolbar.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-toolbar/README.md\n *\n * @param {Object} props Components props.\n * @param {boolean} props.hideDragHandle Show or hide the Drag Handle for drag and drop functionality.\n * @param {string} props.variant Style variant of the toolbar, also passed to the Dropdowns rendered from Block Toolbar Buttons.\n */\nexport default function BlockToolbar( { hideDragHandle, variant } ) {\n\treturn (\n\t\t<PrivateBlockToolbar\n\t\t\thideDragHandle={ hideDragHandle }\n\t\t\tvariant={ variant }\n\t\t\tfocusOnMount={ undefined }\n\t\t\t__experimentalInitialIndex={ undefined }\n\t\t\t__experimentalOnIndexChange={ undefined }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_i18n","_data","_element","_compose","_blocks","_components","_blockMover","_blockParentSelector","_blockSwitcher","_blockControls","_blockToolbarLastItem","_blockSettingsMenu","_blockLock","_convertToGroupButtons","_blockEditVisuallyButton","_utils","_store","_blockNameContext","_navigableToolbar","_useHasBlockToolbar","_changeDesign","_switchSectionStyle","_lockUnlock","_jsxRuntime","PrivateBlockToolbar","hideDragHandle","focusOnMount","__experimentalInitialIndex","__experimentalOnIndexChange","variant","blockClientId","blockClientIds","isDefaultEditingMode","blockType","toolbarKey","shouldShowVisualToolbar","showParentSelector","isUsingBindings","hasParentPattern","hasContentOnlyLocking","showShuffleButton","showSlots","showGroupButtons","showLockButtons","showSwitchSectionStyleButton","useSelect","select","getBlockName","getBlockMode","getBlockParents","getSelectedBlockClientIds","isBlockValid","getBlockEditingMode","getBlockAttributes","getBlockParentsByBlockName","getTemplateLock","getParentSectionBlock","isZoomOut","unlock","blockEditorStore","selectedBlockClientIds","selectedBlockClientId","parents","parentSection","parentClientId","length","parentBlockName","parentBlockType","getBlockType","editingMode","_isDefaultEditingMode","_blockName","isValid","every","id","isVisual","_isUsingBindings","clientId","metadata","bindings","_hasParentPattern","_hasTemplateLock","some","hasBlockSupport","toolbarWrapperRef","useRef","nodeRef","showHoveredOrFocusedGestures","useShowHoveredOrFocusedGestures","ref","isLargeViewport","useViewportMatch","hasBlockToolbar","useHasBlockToolbar","isMultiToolbar","isSynced","isReusableBlock","isTemplatePart","classes","clsx","innerClasses","jsx","default","focusEditorOnEscape","className","__","undefined","children","jsxs","ToolbarGroup","clientIds","BlockLockToolbar","BlockGroupToolbar","Fragment","Slot","group","Provider","value","name","BlockToolbar"],"sources":["@wordpress/block-editor/src/components/block-toolbar/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useSelect } from '@wordpress/data';\nimport { useRef } from '@wordpress/element';\nimport { useViewportMatch } from '@wordpress/compose';\nimport {\n\tgetBlockType,\n\thasBlockSupport,\n\tisReusableBlock,\n\tisTemplatePart,\n} from '@wordpress/blocks';\nimport { ToolbarGroup } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport BlockMover from '../block-mover';\nimport BlockParentSelector from '../block-parent-selector';\nimport BlockSwitcher from '../block-switcher';\nimport BlockControls from '../block-controls';\nimport __unstableBlockToolbarLastItem from './block-toolbar-last-item';\nimport BlockSettingsMenu from '../block-settings-menu';\nimport { BlockLockToolbar } from '../block-lock';\nimport { BlockGroupToolbar } from '../convert-to-group-buttons';\nimport BlockEditVisuallyButton from '../block-edit-visually-button';\nimport { useShowHoveredOrFocusedGestures } from './utils';\nimport { store as blockEditorStore } from '../../store';\nimport __unstableBlockNameContext from './block-name-context';\nimport NavigableToolbar from '../navigable-toolbar';\nimport { useHasBlockToolbar } from './use-has-block-toolbar';\nimport ChangeDesign from './change-design';\nimport SwitchSectionStyle from './switch-section-style';\nimport { unlock } from '../../lock-unlock';\n\n/**\n * Renders the block toolbar.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-toolbar/README.md\n *\n * @param {Object} props Components props.\n * @param {boolean} props.hideDragHandle Show or hide the Drag Handle for drag and drop functionality.\n * @param {boolean} props.focusOnMount Focus the toolbar when mounted.\n * @param {number} props.__experimentalInitialIndex The initial index of the toolbar item to focus.\n * @param {Function} props.__experimentalOnIndexChange Callback function to be called when the index of the focused toolbar item changes.\n * @param {string} props.variant Style variant of the toolbar, also passed to the Dropdowns rendered from Block Toolbar Buttons.\n */\nexport function PrivateBlockToolbar( {\n\thideDragHandle,\n\tfocusOnMount,\n\t__experimentalInitialIndex,\n\t__experimentalOnIndexChange,\n\tvariant = 'unstyled',\n} ) {\n\tconst {\n\t\tblockClientId,\n\t\tblockClientIds,\n\t\tisDefaultEditingMode,\n\t\tblockType,\n\t\ttoolbarKey,\n\t\tshouldShowVisualToolbar,\n\t\tshowParentSelector,\n\t\tisUsingBindings,\n\t\thasParentPattern,\n\t\thasContentOnlyLocking,\n\t\tshowShuffleButton,\n\t\tshowSlots,\n\t\tshowGroupButtons,\n\t\tshowLockButtons,\n\t\tshowSwitchSectionStyleButton,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetBlockName,\n\t\t\tgetBlockMode,\n\t\t\tgetBlockParents,\n\t\t\tgetSelectedBlockClientIds,\n\t\t\tisBlockValid,\n\t\t\tgetBlockEditingMode,\n\t\t\tgetBlockAttributes,\n\t\t\tgetBlockParentsByBlockName,\n\t\t\tgetTemplateLock,\n\t\t\tgetParentSectionBlock,\n\t\t\tisZoomOut,\n\t\t} = unlock( select( blockEditorStore ) );\n\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\t\tconst selectedBlockClientId = selectedBlockClientIds[ 0 ];\n\t\tconst parents = getBlockParents( selectedBlockClientId );\n\t\tconst parentSection = getParentSectionBlock( selectedBlockClientId );\n\t\tconst parentClientId = parentSection ?? parents[ parents.length - 1 ];\n\t\tconst parentBlockName = getBlockName( parentClientId );\n\t\tconst parentBlockType = getBlockType( parentBlockName );\n\t\tconst editingMode = getBlockEditingMode( selectedBlockClientId );\n\t\tconst _isDefaultEditingMode = editingMode === 'default';\n\t\tconst _blockName = getBlockName( selectedBlockClientId );\n\t\tconst isValid = selectedBlockClientIds.every( ( id ) =>\n\t\t\tisBlockValid( id )\n\t\t);\n\t\tconst isVisual = selectedBlockClientIds.every(\n\t\t\t( id ) => getBlockMode( id ) === 'visual'\n\t\t);\n\t\tconst _isUsingBindings = selectedBlockClientIds.every(\n\t\t\t( clientId ) =>\n\t\t\t\t!! getBlockAttributes( clientId )?.metadata?.bindings\n\t\t);\n\n\t\tconst _hasParentPattern = selectedBlockClientIds.every(\n\t\t\t( clientId ) =>\n\t\t\t\tgetBlockParentsByBlockName( clientId, 'core/block', true )\n\t\t\t\t\t.length > 0\n\t\t);\n\n\t\t// If one or more selected blocks are locked, do not show the BlockGroupToolbar.\n\t\tconst _hasTemplateLock = selectedBlockClientIds.some(\n\t\t\t( id ) => getTemplateLock( id ) === 'contentOnly'\n\t\t);\n\t\treturn {\n\t\t\tblockClientId: selectedBlockClientId,\n\t\t\tblockClientIds: selectedBlockClientIds,\n\t\t\tisDefaultEditingMode: _isDefaultEditingMode,\n\t\t\tblockType: selectedBlockClientId && getBlockType( _blockName ),\n\t\t\tshouldShowVisualToolbar: isValid && isVisual,\n\t\t\ttoolbarKey: `${ selectedBlockClientId }${ parentClientId }`,\n\t\t\tshowParentSelector:\n\t\t\t\t! isZoomOut() &&\n\t\t\t\tparentBlockType &&\n\t\t\t\tgetBlockEditingMode( parentClientId ) !== 'disabled' &&\n\t\t\t\thasBlockSupport(\n\t\t\t\t\tparentBlockType,\n\t\t\t\t\t'__experimentalParentSelector',\n\t\t\t\t\ttrue\n\t\t\t\t) &&\n\t\t\t\tselectedBlockClientIds.length === 1,\n\t\t\tisUsingBindings: _isUsingBindings,\n\t\t\thasParentPattern: _hasParentPattern,\n\t\t\thasContentOnlyLocking: _hasTemplateLock,\n\t\t\tshowShuffleButton: isZoomOut(),\n\t\t\tshowSlots: ! isZoomOut(),\n\t\t\tshowGroupButtons: ! isZoomOut(),\n\t\t\tshowLockButtons: ! isZoomOut(),\n\t\t\tshowSwitchSectionStyleButton: isZoomOut(),\n\t\t};\n\t}, [] );\n\n\tconst toolbarWrapperRef = useRef( null );\n\n\t// Handles highlighting the current block outline on hover or focus of the\n\t// block type toolbar area.\n\tconst nodeRef = useRef();\n\tconst showHoveredOrFocusedGestures = useShowHoveredOrFocusedGestures( {\n\t\tref: nodeRef,\n\t} );\n\n\tconst isLargeViewport = ! useViewportMatch( 'medium', '<' );\n\n\tconst hasBlockToolbar = useHasBlockToolbar();\n\tif ( ! hasBlockToolbar ) {\n\t\treturn null;\n\t}\n\n\tconst isMultiToolbar = blockClientIds.length > 1;\n\tconst isSynced =\n\t\tisReusableBlock( blockType ) || isTemplatePart( blockType );\n\n\t// Shifts the toolbar to make room for the parent block selector.\n\tconst classes = clsx( 'block-editor-block-contextual-toolbar', {\n\t\t'has-parent': showParentSelector,\n\t} );\n\n\tconst innerClasses = clsx( 'block-editor-block-toolbar', {\n\t\t'is-synced': isSynced,\n\t\t'is-connected': isUsingBindings,\n\t} );\n\n\treturn (\n\t\t<NavigableToolbar\n\t\t\tfocusEditorOnEscape\n\t\t\tclassName={ classes }\n\t\t\t/* translators: accessibility text for the block toolbar */\n\t\t\taria-label={ __( 'Block tools' ) }\n\t\t\t// The variant is applied as \"toolbar\" when undefined, which is the black border style of the dropdown from the toolbar popover.\n\t\t\tvariant={ variant === 'toolbar' ? undefined : variant }\n\t\t\tfocusOnMount={ focusOnMount }\n\t\t\t__experimentalInitialIndex={ __experimentalInitialIndex }\n\t\t\t__experimentalOnIndexChange={ __experimentalOnIndexChange }\n\t\t\t// Resets the index whenever the active block changes so\n\t\t\t// this is not persisted. See https://github.com/WordPress/gutenberg/pull/25760#issuecomment-717906169\n\t\t\tkey={ toolbarKey }\n\t\t>\n\t\t\t<div ref={ toolbarWrapperRef } className={ innerClasses }>\n\t\t\t\t{ showParentSelector && ! isMultiToolbar && isLargeViewport && (\n\t\t\t\t\t<BlockParentSelector />\n\t\t\t\t) }\n\t\t\t\t{ ( shouldShowVisualToolbar || isMultiToolbar ) &&\n\t\t\t\t\t! hasParentPattern && (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ nodeRef }\n\t\t\t\t\t\t\t{ ...showHoveredOrFocusedGestures }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToolbarGroup className=\"block-editor-block-toolbar__block-controls\">\n\t\t\t\t\t\t\t\t<BlockSwitcher clientIds={ blockClientIds } />\n\t\t\t\t\t\t\t\t{ ! isMultiToolbar &&\n\t\t\t\t\t\t\t\t\tisDefaultEditingMode &&\n\t\t\t\t\t\t\t\t\tshowLockButtons && (\n\t\t\t\t\t\t\t\t\t\t<BlockLockToolbar\n\t\t\t\t\t\t\t\t\t\t\tclientId={ blockClientId }\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<BlockMover\n\t\t\t\t\t\t\t\t\tclientIds={ blockClientIds }\n\t\t\t\t\t\t\t\t\thideDragHandle={ hideDragHandle }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) }\n\t\t\t\t{ ! hasContentOnlyLocking &&\n\t\t\t\t\tshouldShowVisualToolbar &&\n\t\t\t\t\tisMultiToolbar &&\n\t\t\t\t\tshowGroupButtons && <BlockGroupToolbar /> }\n\t\t\t\t{ showShuffleButton && (\n\t\t\t\t\t<ChangeDesign clientId={ blockClientIds[ 0 ] } />\n\t\t\t\t) }\n\t\t\t\t{ showSwitchSectionStyleButton && (\n\t\t\t\t\t<SwitchSectionStyle clientId={ blockClientIds[ 0 ] } />\n\t\t\t\t) }\n\t\t\t\t{ shouldShowVisualToolbar && showSlots && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"parent\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"block\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot className=\"block-editor-block-toolbar__slot\" />\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"inline\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<BlockControls.Slot\n\t\t\t\t\t\t\tgroup=\"other\"\n\t\t\t\t\t\t\tclassName=\"block-editor-block-toolbar__slot\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<__unstableBlockNameContext.Provider\n\t\t\t\t\t\t\tvalue={ blockType?.name }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<__unstableBlockToolbarLastItem.Slot />\n\t\t\t\t\t\t</__unstableBlockNameContext.Provider>\n\t\t\t\t\t</>\n\t\t\t\t) }\n\t\t\t\t<BlockEditVisuallyButton clientIds={ blockClientIds } />\n\t\t\t\t<BlockSettingsMenu clientIds={ blockClientIds } />\n\t\t\t</div>\n\t\t</NavigableToolbar>\n\t);\n}\n\n/**\n * Renders the block toolbar.\n *\n * @see https://github.com/WordPress/gutenberg/blob/HEAD/packages/block-editor/src/components/block-toolbar/README.md\n *\n * @param {Object} props Components props.\n * @param {boolean} props.hideDragHandle Show or hide the Drag Handle for drag and drop functionality.\n * @param {string} props.variant Style variant of the toolbar, also passed to the Dropdowns rendered from Block Toolbar Buttons.\n */\nexport default function BlockToolbar( { hideDragHandle, variant } ) {\n\treturn (\n\t\t<PrivateBlockToolbar\n\t\t\thideDragHandle={ hideDragHandle }\n\t\t\tvariant={ variant }\n\t\t\tfocusOnMount={ undefined }\n\t\t\t__experimentalInitialIndex={ undefined }\n\t\t\t__experimentalOnIndexChange={ undefined }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _components = require("@wordpress/components");
|
|
9
|
+
var _i18n = require("@wordpress/i18n");
|
|
10
|
+
var _data = require("@wordpress/data");
|
|
11
|
+
var _element = require("@wordpress/element");
|
|
12
|
+
var _useStylesForBlock = _interopRequireDefault(require("../block-styles/use-styles-for-block"));
|
|
13
|
+
var _utils = require("../block-styles/utils");
|
|
14
|
+
var _store = require("../../store");
|
|
15
|
+
var _globalStyles = require("../global-styles");
|
|
16
|
+
var _privateKeys = require("../../store/private-keys");
|
|
17
|
+
var _blockStyleVariation = require("../../hooks/block-style-variation");
|
|
18
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
|
+
/**
|
|
20
|
+
* WordPress dependencies
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Internal dependencies
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
const styleIcon = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.SVG, {
|
|
28
|
+
viewBox: "0 0 24 24",
|
|
29
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
30
|
+
width: "24",
|
|
31
|
+
height: "24",
|
|
32
|
+
"aria-hidden": "true",
|
|
33
|
+
focusable: "false",
|
|
34
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Path, {
|
|
35
|
+
d: "M17.2 10.9c-.5-1-1.2-2.1-2.1-3.2-.6-.9-1.3-1.7-2.1-2.6L12 4l-1 1.1c-.6.9-1.3 1.7-2 2.6-.8 1.2-1.5 2.3-2 3.2-.6 1.2-1 2.2-1 3 0 3.4 2.7 6.1 6.1 6.1s6.1-2.7 6.1-6.1c0-.8-.3-1.8-1-3z"
|
|
36
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Path, {
|
|
37
|
+
stroke: "currentColor",
|
|
38
|
+
strokeWidth: "1.5",
|
|
39
|
+
d: "M17.2 10.9c-.5-1-1.2-2.1-2.1-3.2-.6-.9-1.3-1.7-2.1-2.6L12 4l-1 1.1c-.6.9-1.3 1.7-2 2.6-.8 1.2-1.5 2.3-2 3.2-.6 1.2-1 2.2-1 3 0 3.4 2.7 6.1 6.1 6.1s6.1-2.7 6.1-6.1c0-.8-.3-1.8-1-3z"
|
|
40
|
+
})]
|
|
41
|
+
});
|
|
42
|
+
function SwitchSectionStyle({
|
|
43
|
+
clientId
|
|
44
|
+
}) {
|
|
45
|
+
var _mergedConfig$setting, _mergedConfig$styles;
|
|
46
|
+
const {
|
|
47
|
+
stylesToRender,
|
|
48
|
+
activeStyle,
|
|
49
|
+
className
|
|
50
|
+
} = (0, _useStylesForBlock.default)({
|
|
51
|
+
clientId
|
|
52
|
+
});
|
|
53
|
+
const {
|
|
54
|
+
updateBlockAttributes
|
|
55
|
+
} = (0, _data.useDispatch)(_store.store);
|
|
56
|
+
|
|
57
|
+
// Get global styles data
|
|
58
|
+
const {
|
|
59
|
+
merged: mergedConfig
|
|
60
|
+
} = (0, _element.useContext)(_globalStyles.GlobalStylesContext);
|
|
61
|
+
const {
|
|
62
|
+
globalSettings,
|
|
63
|
+
globalStyles,
|
|
64
|
+
blockName
|
|
65
|
+
} = (0, _data.useSelect)(select => {
|
|
66
|
+
const settings = select(_store.store).getSettings();
|
|
67
|
+
return {
|
|
68
|
+
globalSettings: settings.__experimentalFeatures,
|
|
69
|
+
globalStyles: settings[_privateKeys.globalStylesDataKey],
|
|
70
|
+
blockName: select(_store.store).getBlockName(clientId)
|
|
71
|
+
};
|
|
72
|
+
}, [clientId]);
|
|
73
|
+
|
|
74
|
+
// Get the background color for the active style
|
|
75
|
+
const activeStyleBackground = activeStyle?.name ? (0, _blockStyleVariation.getVariationStylesWithRefValues)({
|
|
76
|
+
settings: (_mergedConfig$setting = mergedConfig?.settings) !== null && _mergedConfig$setting !== void 0 ? _mergedConfig$setting : globalSettings,
|
|
77
|
+
styles: (_mergedConfig$styles = mergedConfig?.styles) !== null && _mergedConfig$styles !== void 0 ? _mergedConfig$styles : globalStyles
|
|
78
|
+
}, blockName, activeStyle.name)?.color?.background : undefined;
|
|
79
|
+
if (!stylesToRender || stylesToRender.length === 0) {
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
const handleStyleSwitch = () => {
|
|
83
|
+
const currentIndex = stylesToRender.findIndex(style => style.name === activeStyle.name);
|
|
84
|
+
const nextIndex = (currentIndex + 1) % stylesToRender.length;
|
|
85
|
+
const nextStyle = stylesToRender[nextIndex];
|
|
86
|
+
const styleClassName = (0, _utils.replaceActiveStyle)(className, activeStyle, nextStyle);
|
|
87
|
+
updateBlockAttributes(clientId, {
|
|
88
|
+
className: styleClassName
|
|
89
|
+
});
|
|
90
|
+
};
|
|
91
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToolbarGroup, {
|
|
92
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.ToolbarButton, {
|
|
93
|
+
onClick: handleStyleSwitch,
|
|
94
|
+
label: (0, _i18n.__)('Shuffle styles'),
|
|
95
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
|
|
96
|
+
icon: styleIcon,
|
|
97
|
+
style: {
|
|
98
|
+
fill: activeStyleBackground || 'transparent'
|
|
99
|
+
}
|
|
100
|
+
})
|
|
101
|
+
})
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
var _default = exports.default = SwitchSectionStyle;
|
|
105
|
+
//# sourceMappingURL=switch-section-style.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_components","require","_i18n","_data","_element","_useStylesForBlock","_interopRequireDefault","_utils","_store","_globalStyles","_privateKeys","_blockStyleVariation","_jsxRuntime","styleIcon","jsxs","SVG","viewBox","xmlns","width","height","focusable","children","jsx","Path","d","stroke","strokeWidth","SwitchSectionStyle","clientId","_mergedConfig$setting","_mergedConfig$styles","stylesToRender","activeStyle","className","useStylesForBlocks","updateBlockAttributes","useDispatch","blockEditorStore","merged","mergedConfig","useContext","GlobalStylesContext","globalSettings","globalStyles","blockName","useSelect","select","settings","getSettings","__experimentalFeatures","globalStylesDataKey","getBlockName","activeStyleBackground","name","getVariationStylesWithRefValues","styles","color","background","undefined","length","handleStyleSwitch","currentIndex","findIndex","style","nextIndex","nextStyle","styleClassName","replaceActiveStyle","ToolbarGroup","ToolbarButton","onClick","label","__","Icon","icon","fill","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/block-toolbar/switch-section-style.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tToolbarButton,\n\tToolbarGroup,\n\tIcon,\n\tPath,\n\tSVG,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport useStylesForBlocks from '../block-styles/use-styles-for-block';\nimport { replaceActiveStyle } from '../block-styles/utils';\nimport { store as blockEditorStore } from '../../store';\nimport { GlobalStylesContext } from '../global-styles';\nimport { globalStylesDataKey } from '../../store/private-keys';\nimport { getVariationStylesWithRefValues } from '../../hooks/block-style-variation';\n\nconst styleIcon = (\n\t<SVG\n\t\tviewBox=\"0 0 24 24\"\n\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\twidth=\"24\"\n\t\theight=\"24\"\n\t\taria-hidden=\"true\"\n\t\tfocusable=\"false\"\n\t>\n\t\t<Path d=\"M17.2 10.9c-.5-1-1.2-2.1-2.1-3.2-.6-.9-1.3-1.7-2.1-2.6L12 4l-1 1.1c-.6.9-1.3 1.7-2 2.6-.8 1.2-1.5 2.3-2 3.2-.6 1.2-1 2.2-1 3 0 3.4 2.7 6.1 6.1 6.1s6.1-2.7 6.1-6.1c0-.8-.3-1.8-1-3z\" />\n\t\t<Path\n\t\t\tstroke=\"currentColor\"\n\t\t\tstrokeWidth=\"1.5\"\n\t\t\td=\"M17.2 10.9c-.5-1-1.2-2.1-2.1-3.2-.6-.9-1.3-1.7-2.1-2.6L12 4l-1 1.1c-.6.9-1.3 1.7-2 2.6-.8 1.2-1.5 2.3-2 3.2-.6 1.2-1 2.2-1 3 0 3.4 2.7 6.1 6.1 6.1s6.1-2.7 6.1-6.1c0-.8-.3-1.8-1-3z\"\n\t\t/>\n\t</SVG>\n);\n\nfunction SwitchSectionStyle( { clientId } ) {\n\tconst { stylesToRender, activeStyle, className } = useStylesForBlocks( {\n\t\tclientId,\n\t} );\n\tconst { updateBlockAttributes } = useDispatch( blockEditorStore );\n\n\t// Get global styles data\n\tconst { merged: mergedConfig } = useContext( GlobalStylesContext );\n\tconst { globalSettings, globalStyles, blockName } = useSelect(\n\t\t( select ) => {\n\t\t\tconst settings = select( blockEditorStore ).getSettings();\n\t\t\treturn {\n\t\t\t\tglobalSettings: settings.__experimentalFeatures,\n\t\t\t\tglobalStyles: settings[ globalStylesDataKey ],\n\t\t\t\tblockName: select( blockEditorStore ).getBlockName( clientId ),\n\t\t\t};\n\t\t},\n\t\t[ clientId ]\n\t);\n\n\t// Get the background color for the active style\n\tconst activeStyleBackground = activeStyle?.name\n\t\t? getVariationStylesWithRefValues(\n\t\t\t\t{\n\t\t\t\t\tsettings: mergedConfig?.settings ?? globalSettings,\n\t\t\t\t\tstyles: mergedConfig?.styles ?? globalStyles,\n\t\t\t\t},\n\t\t\t\tblockName,\n\t\t\t\tactiveStyle.name\n\t\t )?.color?.background\n\t\t: undefined;\n\n\tif ( ! stylesToRender || stylesToRender.length === 0 ) {\n\t\treturn null;\n\t}\n\n\tconst handleStyleSwitch = () => {\n\t\tconst currentIndex = stylesToRender.findIndex(\n\t\t\t( style ) => style.name === activeStyle.name\n\t\t);\n\n\t\tconst nextIndex = ( currentIndex + 1 ) % stylesToRender.length;\n\t\tconst nextStyle = stylesToRender[ nextIndex ];\n\n\t\tconst styleClassName = replaceActiveStyle(\n\t\t\tclassName,\n\t\t\tactiveStyle,\n\t\t\tnextStyle\n\t\t);\n\n\t\tupdateBlockAttributes( clientId, {\n\t\t\tclassName: styleClassName,\n\t\t} );\n\t};\n\n\treturn (\n\t\t<ToolbarGroup>\n\t\t\t<ToolbarButton\n\t\t\t\tonClick={ handleStyleSwitch }\n\t\t\t\tlabel={ __( 'Shuffle styles' ) }\n\t\t\t>\n\t\t\t\t<Icon\n\t\t\t\t\ticon={ styleIcon }\n\t\t\t\t\tstyle={ {\n\t\t\t\t\t\tfill: activeStyleBackground || 'transparent',\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</ToolbarButton>\n\t\t</ToolbarGroup>\n\t);\n}\n\nexport default SwitchSectionStyle;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,10 +9,6 @@ var _components = require("@wordpress/components");
|
|
|
9
9
|
* WordPress dependencies
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
Slot
|
|
15
|
-
} = (0, _components.createSlotFill)('__unstableCommentIconFill');
|
|
16
|
-
__unstableCommentIconFill.Slot = Slot;
|
|
17
|
-
var _default = exports.default = __unstableCommentIconFill;
|
|
12
|
+
const CommentIconSlotFill = (0, _components.createSlotFill)(Symbol('CommentIconSlotFill'));
|
|
13
|
+
var _default = exports.default = CommentIconSlotFill;
|
|
18
14
|
//# sourceMappingURL=block-comment-icon-slot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","
|
|
1
|
+
{"version":3,"names":["_components","require","CommentIconSlotFill","createSlotFill","Symbol","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/collab/block-comment-icon-slot.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill } from '@wordpress/components';\n\nconst CommentIconSlotFill = createSlotFill( Symbol( 'CommentIconSlotFill' ) );\n\nexport default CommentIconSlotFill;\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGA,MAAMC,mBAAmB,GAAG,IAAAC,0BAAc,EAAEC,MAAM,CAAE,qBAAsB,CAAE,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAE/DL,mBAAmB","ignoreList":[]}
|
|
@@ -9,10 +9,6 @@ var _components = require("@wordpress/components");
|
|
|
9
9
|
* WordPress dependencies
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
Slot
|
|
15
|
-
} = (0, _components.createSlotFill)('__unstableCommentIconToolbarFill');
|
|
16
|
-
__unstableCommentIconToolbarFill.Slot = Slot;
|
|
17
|
-
var _default = exports.default = __unstableCommentIconToolbarFill;
|
|
12
|
+
const CommentIconToolbarSlotFill = (0, _components.createSlotFill)(Symbol('CommentIconToolbarSlotFill'));
|
|
13
|
+
var _default = exports.default = CommentIconToolbarSlotFill;
|
|
18
14
|
//# sourceMappingURL=block-comment-icon-toolbar-slot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","
|
|
1
|
+
{"version":3,"names":["_components","require","CommentIconToolbarSlotFill","createSlotFill","Symbol","_default","exports","default"],"sources":["@wordpress/block-editor/src/components/collab/block-comment-icon-toolbar-slot.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill } from '@wordpress/components';\n\nconst CommentIconToolbarSlotFill = createSlotFill(\n\tSymbol( 'CommentIconToolbarSlotFill' )\n);\n\nexport default CommentIconToolbarSlotFill;\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAHA;AACA;AACA;;AAGA,MAAMC,0BAA0B,GAAG,IAAAC,0BAAc,EAChDC,MAAM,CAAE,4BAA6B,CACtC,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEaL,0BAA0B","ignoreList":[]}
|
|
@@ -15,9 +15,11 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
15
15
|
*/
|
|
16
16
|
var _default = exports.default = (0, _compose.createHigherOrderComponent)(WrappedComponent => {
|
|
17
17
|
return props => {
|
|
18
|
-
|
|
18
|
+
// Get the default colors, theme colors, and custom colors
|
|
19
|
+
const [defaultColors, themeColors, customColors, enableCustomColors, enableDefaultColors] = (0, _useSettings.useSettings)('color.palette.default', 'color.palette.theme', 'color.palette.custom', 'color.custom', 'color.defaultPalette');
|
|
20
|
+
const _colors = enableDefaultColors ? [...(themeColors || []), ...(defaultColors || []), ...(customColors || [])] : [...(themeColors || []), ...(customColors || [])];
|
|
19
21
|
const {
|
|
20
|
-
colors =
|
|
22
|
+
colors = _colors,
|
|
21
23
|
disableCustomColors = !enableCustomColors
|
|
22
24
|
} = props;
|
|
23
25
|
const hasColorsToChoose = colors && colors.length > 0 || !disableCustomColors;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_compose","require","_useSettings","_jsxRuntime","_default","exports","default","createHigherOrderComponent","WrappedComponent","props","
|
|
1
|
+
{"version":3,"names":["_compose","require","_useSettings","_jsxRuntime","_default","exports","default","createHigherOrderComponent","WrappedComponent","props","defaultColors","themeColors","customColors","enableCustomColors","enableDefaultColors","useSettings","_colors","colors","disableCustomColors","hasColorsToChoose","length","jsx"],"sources":["@wordpress/block-editor/src/components/color-palette/with-color-context.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createHigherOrderComponent } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { useSettings } from '../use-settings';\n\nexport default createHigherOrderComponent( ( WrappedComponent ) => {\n\treturn ( props ) => {\n\t\t// Get the default colors, theme colors, and custom colors\n\t\tconst [\n\t\t\tdefaultColors,\n\t\t\tthemeColors,\n\t\t\tcustomColors,\n\t\t\tenableCustomColors,\n\t\t\tenableDefaultColors,\n\t\t] = useSettings(\n\t\t\t'color.palette.default',\n\t\t\t'color.palette.theme',\n\t\t\t'color.palette.custom',\n\t\t\t'color.custom',\n\t\t\t'color.defaultPalette'\n\t\t);\n\n\t\tconst _colors = enableDefaultColors\n\t\t\t? [\n\t\t\t\t\t...( themeColors || [] ),\n\t\t\t\t\t...( defaultColors || [] ),\n\t\t\t\t\t...( customColors || [] ),\n\t\t\t ]\n\t\t\t: [ ...( themeColors || [] ), ...( customColors || [] ) ];\n\n\t\tconst { colors = _colors, disableCustomColors = ! enableCustomColors } =\n\t\t\tprops;\n\n\t\tconst hasColorsToChoose =\n\t\t\t( colors && colors.length > 0 ) || ! disableCustomColors;\n\t\treturn (\n\t\t\t<WrappedComponent\n\t\t\t\t{ ...{\n\t\t\t\t\t...props,\n\t\t\t\t\tcolors,\n\t\t\t\t\tdisableCustomColors,\n\t\t\t\t\thasColorsToChoose,\n\t\t\t\t} }\n\t\t\t/>\n\t\t);\n\t};\n}, 'withColorContext' );\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAKA,IAAAC,YAAA,GAAAD,OAAA;AAA8C,IAAAE,WAAA,GAAAF,OAAA;AAR9C;AACA;AACA;AAGA;AACA;AACA;AAFA,IAAAG,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAKe,IAAAC,mCAA0B,EAAIC,gBAAgB,IAAM;EAClE,OAASC,KAAK,IAAM;IACnB;IACA,MAAM,CACLC,aAAa,EACbC,WAAW,EACXC,YAAY,EACZC,kBAAkB,EAClBC,mBAAmB,CACnB,GAAG,IAAAC,wBAAW,EACd,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,cAAc,EACd,sBACD,CAAC;IAED,MAAMC,OAAO,GAAGF,mBAAmB,GAChC,CACA,IAAKH,WAAW,IAAI,EAAE,CAAE,EACxB,IAAKD,aAAa,IAAI,EAAE,CAAE,EAC1B,IAAKE,YAAY,IAAI,EAAE,CAAE,CACxB,GACD,CAAE,IAAKD,WAAW,IAAI,EAAE,CAAE,EAAE,IAAKC,YAAY,IAAI,EAAE,CAAE,CAAE;IAE1D,MAAM;MAAEK,MAAM,GAAGD,OAAO;MAAEE,mBAAmB,GAAG,CAAEL;IAAmB,CAAC,GACrEJ,KAAK;IAEN,MAAMU,iBAAiB,GACpBF,MAAM,IAAIA,MAAM,CAACG,MAAM,GAAG,CAAC,IAAM,CAAEF,mBAAmB;IACzD,oBACC,IAAAf,WAAA,CAAAkB,GAAA,EAACb,gBAAgB;MAEf,GAAGC,KAAK;MACRQ,MAAM;MACNC,mBAAmB;MACnBC;IAAiB,CAElB,CAAC;EAEJ,CAAC;AACF,CAAC,EAAE,kBAAmB,CAAC","ignoreList":[]}
|
|
@@ -36,17 +36,18 @@ function FontFamilyControl({
|
|
|
36
36
|
return null;
|
|
37
37
|
}
|
|
38
38
|
const options = [{
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
key: '',
|
|
40
|
+
name: (0, _i18n.__)('Default')
|
|
41
41
|
}, ...fontFamilies.map(({
|
|
42
42
|
fontFamily,
|
|
43
43
|
name
|
|
44
|
-
}) => {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
44
|
+
}) => ({
|
|
45
|
+
key: fontFamily,
|
|
46
|
+
name: name || fontFamily,
|
|
47
|
+
style: {
|
|
48
|
+
fontFamily
|
|
49
|
+
}
|
|
50
|
+
}))];
|
|
50
51
|
if (!__nextHasNoMarginBottom) {
|
|
51
52
|
(0, _deprecated.default)('Bottom margin styles for wp.blockEditor.FontFamilyControl', {
|
|
52
53
|
since: '6.7',
|
|
@@ -54,14 +55,14 @@ function FontFamilyControl({
|
|
|
54
55
|
hint: 'Set the `__nextHasNoMarginBottom` prop to true to start opting into the new styles, which will become the default in a future version'
|
|
55
56
|
});
|
|
56
57
|
}
|
|
57
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.
|
|
58
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.CustomSelectControl, {
|
|
58
59
|
__next40pxDefaultSize: __next40pxDefaultSize,
|
|
59
|
-
__nextHasNoMarginBottom: __nextHasNoMarginBottom,
|
|
60
60
|
label: (0, _i18n.__)('Font'),
|
|
61
|
-
options: options,
|
|
62
61
|
value: value,
|
|
63
|
-
onChange:
|
|
64
|
-
|
|
62
|
+
onChange: ({
|
|
63
|
+
selectedItem
|
|
64
|
+
}) => onChange(selectedItem.key),
|
|
65
|
+
options: options,
|
|
65
66
|
...props
|
|
66
67
|
});
|
|
67
68
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_components","require","_deprecated","_interopRequireDefault","_i18n","_useSettings","_jsxRuntime","FontFamilyControl","__next40pxDefaultSize","__nextHasNoMarginBottom","value","onChange","fontFamilies","props","blockLevelFontFamilies","useSettings","length","options","
|
|
1
|
+
{"version":3,"names":["_components","require","_deprecated","_interopRequireDefault","_i18n","_useSettings","_jsxRuntime","FontFamilyControl","__next40pxDefaultSize","__nextHasNoMarginBottom","value","onChange","fontFamilies","props","blockLevelFontFamilies","useSettings","length","options","key","name","__","map","fontFamily","style","deprecated","since","version","hint","jsx","CustomSelectControl","label","selectedItem"],"sources":["@wordpress/block-editor/src/components/font-family/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { CustomSelectControl } from '@wordpress/components';\nimport deprecated from '@wordpress/deprecated';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { useSettings } from '../use-settings';\n\nexport default function FontFamilyControl( {\n\t/** Start opting into the larger default height that will become the default size in a future version. */\n\t__next40pxDefaultSize = false,\n\t/** Start opting into the new margin-free styles that will become the default in a future version. */\n\t__nextHasNoMarginBottom = false,\n\tvalue = '',\n\tonChange,\n\tfontFamilies,\n\t...props\n} ) {\n\tconst [ blockLevelFontFamilies ] = useSettings( 'typography.fontFamilies' );\n\tif ( ! fontFamilies ) {\n\t\tfontFamilies = blockLevelFontFamilies;\n\t}\n\n\tif ( ! fontFamilies || fontFamilies.length === 0 ) {\n\t\treturn null;\n\t}\n\n\tconst options = [\n\t\t{\n\t\t\tkey: '',\n\t\t\tname: __( 'Default' ),\n\t\t},\n\t\t...fontFamilies.map( ( { fontFamily, name } ) => ( {\n\t\t\tkey: fontFamily,\n\t\t\tname: name || fontFamily,\n\t\t\tstyle: { fontFamily },\n\t\t} ) ),\n\t];\n\n\tif ( ! __nextHasNoMarginBottom ) {\n\t\tdeprecated(\n\t\t\t'Bottom margin styles for wp.blockEditor.FontFamilyControl',\n\t\t\t{\n\t\t\t\tsince: '6.7',\n\t\t\t\tversion: '7.0',\n\t\t\t\thint: 'Set the `__nextHasNoMarginBottom` prop to true to start opting into the new styles, which will become the default in a future version',\n\t\t\t}\n\t\t);\n\t}\n\n\treturn (\n\t\t<CustomSelectControl\n\t\t\t__next40pxDefaultSize={ __next40pxDefaultSize }\n\t\t\tlabel={ __( 'Font' ) }\n\t\t\tvalue={ value }\n\t\t\tonChange={ ( { selectedItem } ) => onChange( selectedItem.key ) }\n\t\t\toptions={ options }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAKA,IAAAI,YAAA,GAAAJ,OAAA;AAA8C,IAAAK,WAAA,GAAAL,OAAA;AAV9C;AACA;AACA;;AAKA;AACA;AACA;;AAGe,SAASM,iBAAiBA,CAAE;EAC1C;EACAC,qBAAqB,GAAG,KAAK;EAC7B;EACAC,uBAAuB,GAAG,KAAK;EAC/BC,KAAK,GAAG,EAAE;EACVC,QAAQ;EACRC,YAAY;EACZ,GAAGC;AACJ,CAAC,EAAG;EACH,MAAM,CAAEC,sBAAsB,CAAE,GAAG,IAAAC,wBAAW,EAAE,yBAA0B,CAAC;EAC3E,IAAK,CAAEH,YAAY,EAAG;IACrBA,YAAY,GAAGE,sBAAsB;EACtC;EAEA,IAAK,CAAEF,YAAY,IAAIA,YAAY,CAACI,MAAM,KAAK,CAAC,EAAG;IAClD,OAAO,IAAI;EACZ;EAEA,MAAMC,OAAO,GAAG,CACf;IACCC,GAAG,EAAE,EAAE;IACPC,IAAI,EAAE,IAAAC,QAAE,EAAE,SAAU;EACrB,CAAC,EACD,GAAGR,YAAY,CAACS,GAAG,CAAE,CAAE;IAAEC,UAAU;IAAEH;EAAK,CAAC,MAAQ;IAClDD,GAAG,EAAEI,UAAU;IACfH,IAAI,EAAEA,IAAI,IAAIG,UAAU;IACxBC,KAAK,EAAE;MAAED;IAAW;EACrB,CAAC,CAAG,CAAC,CACL;EAED,IAAK,CAAEb,uBAAuB,EAAG;IAChC,IAAAe,mBAAU,EACT,2DAA2D,EAC3D;MACCC,KAAK,EAAE,KAAK;MACZC,OAAO,EAAE,KAAK;MACdC,IAAI,EAAE;IACP,CACD,CAAC;EACF;EAEA,oBACC,IAAArB,WAAA,CAAAsB,GAAA,EAAC5B,WAAA,CAAA6B,mBAAmB;IACnBrB,qBAAqB,EAAGA,qBAAuB;IAC/CsB,KAAK,EAAG,IAAAV,QAAE,EAAE,MAAO,CAAG;IACtBV,KAAK,EAAGA,KAAO;IACfC,QAAQ,EAAGA,CAAE;MAAEoB;IAAa,CAAC,KAAMpB,QAAQ,CAAEoB,YAAY,CAACb,GAAI,CAAG;IACjED,OAAO,EAAGA,OAAS;IAAA,GACdJ;EAAK,CACV,CAAC;AAEJ","ignoreList":[]}
|
|
@@ -46,7 +46,7 @@ const ELEMENT_CLASS_NAMES = {
|
|
|
46
46
|
// List of block support features that can have their related styles
|
|
47
47
|
// generated under their own feature level selector rather than the block's.
|
|
48
48
|
const BLOCK_SUPPORT_FEATURE_LEVEL_SELECTORS = {
|
|
49
|
-
|
|
49
|
+
border: 'border',
|
|
50
50
|
color: 'color',
|
|
51
51
|
spacing: 'spacing',
|
|
52
52
|
typography: 'typography'
|