Create New Item
×
Item Type
File
Folder
Item Name
×
Search file in folder and subfolders...
File Manager
/
wp-content
/
plugins
/
generateblocks
/
src
/
components
/
portaled-styles
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
import { createPortal, useState, useEffect } from '@wordpress/element'; export function PortaledStyles( { css } ) { const [ targetElement, setTargetElement ] = useState( null ); useEffect( () => { const element = document.querySelector( '.editor-styles-wrapper' ); if ( element && css ) { let insertedDiv = document.querySelector( '.gb-block-styles' ); if ( ! insertedDiv ) { const newDiv = document.createElement( 'div' ); newDiv.className = 'gb-block-styles'; element.insertBefore( newDiv, element.firstChild ); insertedDiv = newDiv; } setTargetElement( insertedDiv ); } }, [ css ] ); if ( ! targetElement ) { return null; } return createPortal( <style>{ css }</style>, targetElement ); }