HEX
Server: Apache/2.4.41
System: Linux mainweb 5.4.0-182-generic #202-Ubuntu SMP Fri Apr 26 12:29:36 UTC 2024 x86_64
User: nationalmedicaregrp (1119)
PHP: 8.3.7
Disabled: exec,passthru,shell_exec,system,popen,proc_open,pcntl_exec
Upload Files
File: /home/flbestac/public_html/wp-content/plugins/essential-blocks/src/blocks/accordion/src/helpers.js
/**
 * WordPress dependencies
 */
import { __ } from "@wordpress/i18n";
import { select, dispatch } from "@wordpress/data";
const { times } = lodash;


export const deleteAccordion = (clientId, setAttributes, accordionLists, index) => {
    const {
        removeBlock,
        updateBlockAttributes,
        selectBlock
    } = dispatch("core/block-editor");

    const innerBlocks = select("core/block-editor").getBlocks(clientId);
    const deleteItemClientId = innerBlocks[index]?.clientId || false;

    const updatedInnerBlocks = innerBlocks.filter((each, i) => i !== index)
    times(updatedInnerBlocks.length, (n) => {
        updateBlockAttributes(updatedInnerBlocks[n].clientId);
    });

    //Update Innerblock Attribute for unlocak and then remove
    if (deleteItemClientId) {
        updateBlockAttributes(deleteItemClientId, {
            lock: { move: false, remove: false }
        });
        removeBlock(deleteItemClientId)
        selectBlock(clientId)
    }

    const accordion = accordionLists.filter((each, i) => i !== index);

    setAttributes({
        accordionLists: accordion,
        accordionChildCount: accordion ? accordion.length : 0
    });
};