Server IP : 209.38.156.173 / Your IP : 216.73.216.122 [ Web Server : Apache/2.4.52 (Ubuntu) System : Linux lakekumayuhotel 5.15.0-136-generic #147-Ubuntu SMP Sat Mar 15 15:53:30 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.1.2-1ubuntu2.22 Disable Function : NONE Domains : 2 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/wp-content/plugins/jetpack/extensions/blocks/ai-assistant/lib/utils/ |
Upload File : |
/** * External dependencies */ import type { Block } from '@automattic/jetpack-ai-client'; const omitClientId = ( block: Block ): Block => { delete block.clientId; for ( const child of block.innerBlocks ?? [] ) { omitClientId( child ); } return block; }; const copyBlock = ( block: Block ): Block => JSON.parse( JSON.stringify( block ) ); const copyBlockWithoutClientId = ( block: Block ) => omitClientId( copyBlock( block ) ); /** * Deeply compares two blocks, ignoring the clientId property. * * @param {Block} blockA - The first block to compare. * @param {Block} blockB - The second block to compare. * @returns {boolean} Whether the two blocks are equal. */ export function compareBlocks( blockA: Block, blockB: Block ): boolean { const aCopy = copyBlockWithoutClientId( blockA ); const bCopy = copyBlockWithoutClientId( blockB ); return JSON.stringify( aCopy ) === JSON.stringify( bCopy ); }