diff --git a/packages/block-library/src/accordion/edit.js b/packages/block-library/src/accordion/edit.js
index 2c6ec036fd7e2f..447f995f19e363 100644
--- a/packages/block-library/src/accordion/edit.js
+++ b/packages/block-library/src/accordion/edit.js
@@ -5,6 +5,8 @@ import {
useBlockProps,
useInnerBlocksProps,
InspectorControls,
+ BlockControls,
+ store as blockEditorStore,
} from '@wordpress/block-editor';
import { __ } from '@wordpress/i18n';
import {
@@ -13,7 +15,10 @@ import {
__experimentalToggleGroupControlOption as ToggleGroupControlOption,
__experimentalToolsPanel as ToolsPanel,
__experimentalToolsPanelItem as ToolsPanelItem,
+ ToolbarButton,
} from '@wordpress/components';
+import { useDispatch } from '@wordpress/data';
+import { createBlock } from '@wordpress/blocks';
/**
* Internal dependencies
@@ -27,10 +32,12 @@ const ACCORDION_BLOCK = {
export default function Edit( {
attributes: { autoclose, iconPosition, showIcon },
+ clientId,
setAttributes,
} ) {
const blockProps = useBlockProps();
const dropdownMenuProps = useToolsPanelDropdownMenuProps();
+ const { insertBlock } = useDispatch( blockEditorStore );
const innerBlocksProps = useInnerBlocksProps( blockProps, {
template: [ [ ACCORDION_BLOCK_NAME ], [ ACCORDION_BLOCK_NAME ] ],
@@ -39,8 +46,21 @@ export default function Edit( {
templateInsertUpdatesSelection: true,
} );
+ const addAccordionContentBlock = () => {
+ const newAccordionContent = createBlock( ACCORDION_BLOCK_NAME );
+ insertBlock( newAccordionContent, undefined, clientId );
+ };
+
return (
<>
+
+
+ { __( 'Add' ) }
+
+