HEX
Server: Apache/2.4.65 (Debian)
System: Linux wordpress-7cb4c6b6f6-l5jc2 5.15.0-131-generic #141-Ubuntu SMP Fri Jan 10 21:18:28 UTC 2025 x86_64
User: www-data (33)
PHP: 8.3.27
Disabled: NONE
Upload Files
File: /var/www/html/wp-content/plugins/jet-engine/assets/js/admin/blocks-views/src/hooks.js
const { __ } = wp.i18n;
const { addFilter } = wp.hooks;
const { Fragment } = wp.element;
const { InspectorAdvancedControls } = wp.blockEditor;
const { createHigherOrderComponent } = wp.compose;
const { TextControl } = wp.components;

const enableElementIdControlOnBlocks = window.JetEngineListingData.blocksWithIdAttr;

const addElementIdAdvancedControl = createHigherOrderComponent( ( BlockEdit ) => {
	return ( props ) => {

		if ( ! enableElementIdControlOnBlocks.includes( props.name ) ) {
			return (
				<BlockEdit { ...props } />
			);
		}

		const {
			attributes,
			setAttributes,
			isSelected,
		} = props;

		const {
			_element_id,
		} = attributes;

		return (
			<Fragment>
				<BlockEdit {...props} />
				{ isSelected &&
					<InspectorAdvancedControls>
						<TextControl
							type="text"
							label={ __( 'CSS ID' ) }
							value={ _element_id }
							onChange={ newValue => {
								setAttributes( { _element_id: newValue } );
							} }
						/>
					</InspectorAdvancedControls>
				}
			</Fragment>
		);
	};
}, 'addElementIdAdvancedControl' );

addFilter(
	'editor.BlockEdit',
	'jet-engine/add-element-id-advanced-control',
	addElementIdAdvancedControl
);