diff --git a/includes/class-asset-enqueue.php b/includes/class-asset-enqueue.php index cc0d115..c49eb35 100644 --- a/includes/class-asset-enqueue.php +++ b/includes/class-asset-enqueue.php @@ -28,6 +28,13 @@ final class Asset_Enqueue { */ private $stylesheet_dependencies = array(); + /** + * Array of stylesheet URLs to be used as dependancies for enqueued stylesheets. + * + * @var string[] + */ + private $stylesheet_dependency_sources = array(); + /** * Initializes the process. */ @@ -131,15 +138,24 @@ function () { * Enqueues a site editor stylesheet for all manifests. */ private function enqueue_editor_stylesheets() { - foreach ( $this->manifests as $manifest ) { - $style = $this->get_manifest_style( $manifest, 'vite-entry-points/admin.js' ); + add_action( + 'init', + function () { + foreach ( $this->stylesheet_dependency_sources as $source ) { + add_editor_style( $source ); + } - if ( is_null( $style ) ) { - continue; - } + foreach ( $this->manifests as $manifest ) { + $style = $this->get_manifest_style( $manifest, 'vite-entry-points/admin.js' ); - add_editor_style( $style['url'] ); - } + if ( is_null( $style ) ) { + continue; + } + + add_editor_style( $style['url'] ); + } + } + ); } /** @@ -203,6 +219,7 @@ function () use ( $handle, $src, $dependencies, $version, $media ) { ); array_push( $this->stylesheet_dependencies, $handle ); + array_push( $this->stylesheet_dependency_sources, $src ); } /**