class AttachedAssets
Same name in other branches
- 8.9.x core/lib/Drupal/Core/Asset/AttachedAssets.php \Drupal\Core\Asset\AttachedAssets
- 10 core/lib/Drupal/Core/Asset/AttachedAssets.php \Drupal\Core\Asset\AttachedAssets
- 11.x core/lib/Drupal/Core/Asset/AttachedAssets.php \Drupal\Core\Asset\AttachedAssets
The default attached assets collection.
Hierarchy
- class \Drupal\Core\Asset\AttachedAssets implements \Drupal\Core\Asset\AttachedAssetsInterface
Expanded class hierarchy of AttachedAssets
10 files declare their use of AttachedAssets
- AjaxCommandsTest.php in core/
tests/ Drupal/ Tests/ Core/ Ajax/ AjaxCommandsTest.php - AjaxResponseAttachmentsProcessor.php in core/
lib/ Drupal/ Core/ Ajax/ AjaxResponseAttachmentsProcessor.php - AnnounceCommand.php in core/
lib/ Drupal/ Core/ Ajax/ AnnounceCommand.php - AssetResolverTest.php in core/
tests/ Drupal/ Tests/ Core/ Asset/ AssetResolverTest.php - Contains \Drupal\Tests\Core\Asset\AssetResolverTest.
- AttachedAssetsTest.php in core/
tests/ Drupal/ KernelTests/ Core/ Asset/ AttachedAssetsTest.php
File
-
core/
lib/ Drupal/ Core/ Asset/ AttachedAssets.php, line 8
Namespace
Drupal\Core\AssetView source
class AttachedAssets implements AttachedAssetsInterface {
/**
* The (ordered) list of asset libraries attached to the current response.
*
* @var string[]
*/
public $libraries = [];
/**
* The JavaScript settings attached to the current response.
*
* @var array
*/
public $settings = [];
/**
* The set of asset libraries that the client has already loaded.
*
* @var string[]
*/
protected $alreadyLoadedLibraries = [];
/**
* {@inheritdoc}
*/
public static function createFromRenderArray(array $render_array) {
if (!isset($render_array['#attached'])) {
throw new \LogicException('The render array has not yet been rendered, hence not all attachments have been collected yet.');
}
$assets = new static();
if (isset($render_array['#attached']['library'])) {
$assets->setLibraries($render_array['#attached']['library']);
}
if (isset($render_array['#attached']['drupalSettings'])) {
$assets->setSettings($render_array['#attached']['drupalSettings']);
}
return $assets;
}
/**
* {@inheritdoc}
*/
public function setLibraries(array $libraries) {
$this->libraries = array_unique($libraries);
return $this;
}
/**
* {@inheritdoc}
*/
public function getLibraries() {
return $this->libraries;
}
/**
* {@inheritdoc}
*/
public function setSettings(array $settings) {
$this->settings = $settings;
return $this;
}
/**
* {@inheritdoc}
*/
public function getSettings() {
return $this->settings;
}
/**
* {@inheritdoc}
*/
public function getAlreadyLoadedLibraries() {
return $this->alreadyLoadedLibraries;
}
/**
* {@inheritdoc}
*/
public function setAlreadyLoadedLibraries(array $libraries) {
$this->alreadyLoadedLibraries = $libraries;
return $this;
}
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overriden Title |
---|---|---|---|---|
AttachedAssets::$alreadyLoadedLibraries | protected | property | The set of asset libraries that the client has already loaded. | |
AttachedAssets::$libraries | public | property | The (ordered) list of asset libraries attached to the current response. | |
AttachedAssets::$settings | public | property | The JavaScript settings attached to the current response. | |
AttachedAssets::createFromRenderArray | public static | function | Creates an AttachedAssetsInterface object from a render array. | Overrides AttachedAssetsInterface::createFromRenderArray |
AttachedAssets::getAlreadyLoadedLibraries | public | function | Returns the set of already loaded asset libraries. | Overrides AttachedAssetsInterface::getAlreadyLoadedLibraries |
AttachedAssets::getLibraries | public | function | Returns the asset libraries attached to the current response. | Overrides AttachedAssetsInterface::getLibraries |
AttachedAssets::getSettings | public | function | Returns the settings attached to the current response. | Overrides AttachedAssetsInterface::getSettings |
AttachedAssets::setAlreadyLoadedLibraries | public | function | Sets the asset libraries that the current request marked as already loaded. | Overrides AttachedAssetsInterface::setAlreadyLoadedLibraries |
AttachedAssets::setLibraries | public | function | Sets the asset libraries attached to the current response. | Overrides AttachedAssetsInterface::setLibraries |
AttachedAssets::setSettings | public | function | Sets the JavaScript settings that are attached to the current response. | Overrides AttachedAssetsInterface::setSettings |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.