From 7e89aaed78b70ab49d82f26c58c71354b90622f2 Mon Sep 17 00:00:00 2001 From: joe Jankowiak Date: Wed, 28 Jan 2026 13:40:16 -0500 Subject: [PATCH] feat: Allow args to be passed to registered scripts --- src/Assets/Asset.php | 7 ++++++- src/Assets/Compiler.php | 8 ++++---- src/Assets/LaravelMixCompiler.php | 2 +- src/Assets/ViteCompiler.php | 2 +- 4 files changed, 12 insertions(+), 7 deletions(-) diff --git a/src/Assets/Asset.php b/src/Assets/Asset.php index e14459d..1a312c9 100644 --- a/src/Assets/Asset.php +++ b/src/Assets/Asset.php @@ -4,7 +4,7 @@ class Asset { - public function __construct(public string $path, public array $dependencies = []) + public function __construct(public string $path, public array $dependencies = [], public array|bool $args = true ) { // } @@ -18,4 +18,9 @@ public function dependencies() { return $this->dependencies; } + + public function args() + { + return $this->args; + } } diff --git a/src/Assets/Compiler.php b/src/Assets/Compiler.php index 4773635..8c14f59 100644 --- a/src/Assets/Compiler.php +++ b/src/Assets/Compiler.php @@ -33,12 +33,12 @@ public function getEditorStyleFile(): ?string return $this->editorStyleFile; } - public function registerAsset($asset, $dependencies = []): self + public function registerAsset( $asset, $dependencies = [], $args = true ): self { - $this->assets[$asset] = new Asset(path: $asset, dependencies: $dependencies); + $this->assets[ $asset ] = new Asset( path: $asset, dependencies: $dependencies, args: $args ); - return $this; - } + return $this; + } public function enqueueAssets(): void {} } diff --git a/src/Assets/LaravelMixCompiler.php b/src/Assets/LaravelMixCompiler.php index 1d74007..8576de3 100644 --- a/src/Assets/LaravelMixCompiler.php +++ b/src/Assets/LaravelMixCompiler.php @@ -29,7 +29,7 @@ public function enqueueAssets(): void $uri = get_theme_file_uri($manifest[$assetInDist]); if (str_ends_with($asset->path(), '.js')) { - wp_enqueue_script("{$this->handle}-$filename", $uri, $asset->dependencies(), $themeVersion, false); + wp_enqueue_script( "{$this->handle}-$filename", $uri, $asset->dependencies(), $themeVersion, $asset->args() ); } elseif (str_ends_with($asset->path(), '.css')) { wp_enqueue_style("{$this->handle}-$filename", $uri, $asset->dependencies(), $themeVersion); } diff --git a/src/Assets/ViteCompiler.php b/src/Assets/ViteCompiler.php index 9d4b934..6929283 100644 --- a/src/Assets/ViteCompiler.php +++ b/src/Assets/ViteCompiler.php @@ -179,7 +179,7 @@ public function enqueueAssets(): void $uri = get_theme_file_uri('dist/'.$file); if (str_ends_with($file, '.js')) { - wp_enqueue_script("{$this->handle}-$filename", $uri, $asset->dependencies(), $themeVersion, true); + wp_enqueue_script( "{$this->handle}-$filename", $uri, $asset->dependencies(), $themeVersion, $asset->args() ); } elseif (str_ends_with($file, '.css')) { wp_enqueue_style("{$this->handle}-$filename", $uri, $asset->dependencies(), $themeVersion); }