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.