Skip to content

AssetBundle Collector ​

Captures registered frontend asset bundles — CSS files, JavaScript files, dependencies, and configuration.

What It Captures ​

FieldDescription
classAsset bundle class name
sourcePathSource path for published assets
basePathPublished base path
baseUrlPublished base URL
cssCSS file list
jsJavaScript file list
dependsBundle dependencies
optionsBundle options

Data Schema ​

json
{
    "bundles": {
        "AppAsset": {
            "class": "App\\Assets\\AppAsset",
            "sourcePath": "/app/assets",
            "basePath": "/public/assets/abc123",
            "baseUrl": "/assets/abc123",
            "css": ["css/app.css"],
            "js": ["js/app.js"],
            "depends": ["yii\\web\\JqueryAsset"],
            "options": {}
        }
    },
    "bundleCount": 3
}

Summary (shown in debug entry list):

json
{
    "assets": {
        "bundleCount": 3
    }
}

Contract ​

php
use AppDevPanel\Kernel\Collector\AssetBundleCollector;

$collector->collectBundle(name: 'AppAsset', bundle: [
    'class' => 'App\\Assets\\AppAsset',
    'css' => ['css/app.css'],
    'js' => ['js/app.js'],
    'depends' => ['yii\\web\\JqueryAsset'],
]);

// Or collect all bundles at once
$collector->collectBundles(bundles: $allBundles);

Debug Panel ​

  • Bundle list — all registered asset bundles with file counts
  • Asset files — CSS and JS files per bundle
  • Dependency tree — bundle dependency graph

Released under the MIT License.