diff --git a/packages/block-library/src/blocks/supernova-item/block-controls.js b/packages/block-library/src/blocks/supernova-item/block-controls.js index f8cea5f8..ade74fba 100644 --- a/packages/block-library/src/blocks/supernova-item/block-controls.js +++ b/packages/block-library/src/blocks/supernova-item/block-controls.js @@ -21,15 +21,16 @@ const SupernovaItemBlockControls = ( props ) => { return null; }, [ clientId ] ); + const innerBlocks = useInnerBlocks( clientId ); const parentInnerBlocks = useInnerBlocks( parentClientId ); const addNewCard = useCallback( () => { const newInnerBlocks = parentInnerBlocks.slice(); const index = newInnerBlocks.findIndex( block => block.clientId === clientId ); - const newBlock = createBlock( 'novablocks/supernova-item', attributes ); + const newBlock = createBlock( 'novablocks/supernova-item', attributes, innerBlocks ); newInnerBlocks.splice( index + 1, 0, newBlock ); replaceInnerBlocks( parentClientId, newInnerBlocks ); - }, [ clientId, parentClientId, attributes ] ); + }, [ clientId, innerBlocks, parentClientId, attributes ] ); return ( diff --git a/packages/block-library/src/blocks/supernova/block-controls.js b/packages/block-library/src/blocks/supernova/block-controls.js index bd4edb46..7f45b04f 100644 --- a/packages/block-library/src/blocks/supernova/block-controls.js +++ b/packages/block-library/src/blocks/supernova/block-controls.js @@ -95,8 +95,10 @@ const InnerBlocksControls = ( props ) => { const addNewCard = useCallback( () => { const newInnerBlocks = innerBlocks.slice(); - const newBlockAttributes = innerBlocks[ innerBlocks.length - 1 ].attributes; - const newBlock = createBlock( 'novablocks/supernova-item', newBlockAttributes ); + const lastBlock = innerBlocks[ innerBlocks.length - 1 ]; + const newBlockAttributes = lastBlock.attributes; + const newBlockInnerBlocks = lastBlock.innerBlocks; + const newBlock = createBlock( 'novablocks/supernova-item', newBlockAttributes, newBlockInnerBlocks ); newInnerBlocks.push( newBlock ); replaceInnerBlocks( clientId, newInnerBlocks ); }, [ innerBlocks, postsToShow ] ); @@ -147,6 +149,7 @@ const InnerBlocksControls = ( props ) => {