Skip to content
PHP Ecosystem
Explore

AbstractNpmAsset

API reference › FilePond › asset › AbstractNpmAsset

abstract classyii2\extensions\filepond\asset\AbstractNpmAsset
Extendsyii\web\AssetBundle » yii\base\BaseObject
Implementsyii\base\Configurable
Sourcesrc/asset/AbstractNpmAsset.php
3 subclasses

Provides local or CDN delivery for asset bundles backed by an npm package installed under the @npm alias.

In local mode the bundle publishes the package dist files from the @npm alias. In CDN mode it links the same files from $cdnUrl, pinned to the version read from the installed package.json, so both delivery modes always serve the same release. The delivery mode is set through the asset manager bundles configuration or through registerWith().

PropertyTypeDescriptionDefined by
$basePathstring|nullThe Web-accessible directory that contains the asset files in this bundle. Default: null.yii\web\AssetBundle
$baseUrlstring|nullThe base URL for the relative asset files listed in $js and $css. Default: null.yii\web\AssetBundle
$cdnboolWhether to link the files from the CDN instead of publishing the local package. Default: false.AbstractNpmAsset
$cdnUrlstringBase URL of the CDN serving npm packages as {cdnUrl}/{package}@{version}/dist/{file}. Default: 'https://unpkg.com'.AbstractNpmAsset
$cssarray<string|array<array-key, mixed>>List of CSS files that this bundle contains. Default: [].yii\web\AssetBundle
$cssOptionsyii\web\RegisterCssFileOptionsThe options that will be passed to View::registerCssFile() when registering the CSS files in this bundle. Default: [].yii\web\AssetBundle
$dependsarray<class-string>List of bundle class names that this bundle depends on. Default: [].yii\web\AssetBundle
$jsarray<string|array<array-key, mixed>>List of JavaScript files that this bundle contains. Default: [].yii\web\AssetBundle
$jsOptionsyii\web\RegisterJsFileOptionsThe options that will be passed to View::registerJsFile() when registering the JS files in this bundle. Default: [].yii\web\AssetBundle
$minifiedbool|nullWhether to serve the minified dist files, or null to serve them outside debug mode. Default: null.AbstractNpmAsset
$publishOptionsyii\web\PublishOptionsThe options to be passed to AssetManager::publish() when the asset bundle is being published. Default: [].yii\web\AssetBundle
$sourcePathstring|nullThe directory that contains the source asset files for this asset bundle. Default: null.yii\web\AssetBundle
MethodDescriptionDefined by
__construct()Constructor.yii\base\BaseObject
__call()Calls the named method which is not a class method.yii\base\BaseObject
__get()Returns the value of an object property.yii\base\BaseObject
__isset()Checks if a property is set, i.e. defined and not null.yii\base\BaseObject
__set()Sets value of an object property.yii\base\BaseObject
__unset()Sets an object property to null.yii\base\BaseObject
canGetProperty()Returns a value indicating whether a property can be read.yii\base\BaseObject
canSetProperty()Returns a value indicating whether a property can be set.yii\base\BaseObject
className() staticReturns the fully qualified name of this class.yii\base\BaseObject
dependencies() staticReturns the asset bundle classes this bundle depends on.AbstractNpmAsset
hasMethod()Returns a value indicating whether a method is defined.yii\base\BaseObject
hasProperty()Returns a value indicating whether a property is defined.yii\base\BaseObject
init()Initializes the bundle file lists for the configured delivery mode.AbstractNpmAsset
publish()Publishes the asset bundle if its source code is not under Web-accessible directory.yii\web\AssetBundle
register() staticRegisters this asset bundle with a view.yii\web\AssetBundle
registerAssetFiles()Registers the CSS and JS files with the given view.yii\web\AssetBundle
registerWith() staticRegisters the bundle, and its npm-backed dependencies, with the given delivery mode.AbstractNpmAsset
package() protected abstractReturns the npm package name that ships the files.AbstractNpmAsset
scripts() protected abstractReturns the script file names inside the package dist directory, without the .min infix.AbstractNpmAsset
styles() protectedReturns the stylesheet file names inside the package dist directory, without the .min infix.AbstractNpmAsset
public static function dependencies(): list<class-string<yii\web\AssetBundle>>

Returns the asset bundle classes this bundle depends on.

Returns

list<class-string<yii\web\AssetBundle>>: Dependency bundle classes.

public function init(): void

Initializes the bundle file lists for the configured delivery mode.

Throws

public static function registerWith(yii\web\View $view, bool $cdn = false): static

Registers the bundle, and its npm-backed dependencies, with the given delivery mode.

Bundles already configured in the asset manager, or already registered, keep their current mode.

Parameters

ParameterTypeDescription
$viewyii\web\ViewView that renders the asset files.
$cdnboolWhether to link the files from the CDN.

Returns

static: Registered bundle instance.

abstract protected function package(): string

Returns the npm package name that ships the files.

Returns

string: Npm package name.

abstract protected function scripts(): list<string>

Returns the script file names inside the package dist directory, without the .min infix.

Returns

list<string>: Script file names.

protected function styles(): list<string>

Returns the stylesheet file names inside the package dist directory, without the .min infix.

Returns

list<string>: Stylesheet file names.