import { useSelect, dispatch } from '@wordpress/data'; import {useState, createElement} from "@wordpress/element"; import { __ } from "@wordpress/i18n"; import { useBlockProps, InnerBlocks, InspectorControls } from "@wordpress/block-editor"; import { __experimentalNumberControl as NumberControl } from '@wordpress/components'; import { getSaveElement, createBlock } from '@wordpress/blocks'; import "./editor.scss"; import Orbiter from './orbiter.js'; export default function Edit( { attributes, setAttributes, clientId }) { const { innerBlocks } = useSelect(select => select('core/block-editor').getBlock(clientId)); const [count, setCount] = useState(innerBlocks.length); const onCountChange = (value) => { if (value > count) { const orbiter = createBlock('red-block/red-orbiter'); const index = count; dispatch('core/editor').insertBlock(orbiter, index, clientId); } setCount(value); } const viewList = innerBlocks.map(block => { let primary = null; let secondary = null; if(block.innerBlocks.length > 0) { const {name, attributes, innerBlocks} = block.innerBlocks[0]; const element = getSaveElement( name, attributes, innerBlocks ); primary = element; } if(block.innerBlocks.length > 1) { const {name, attributes, innerBlocks} = block.innerBlocks[1]; const element = getSaveElement( name, attributes, innerBlocks ); secondary = element; } return ( ) }); return ( <>
); }