function ResponsiveImageStyle::sortMappings
Same name in other branches
- 11.x core/modules/responsive_image/src/Entity/ResponsiveImageStyle.php \Drupal\responsive_image\Entity\ResponsiveImageStyle::sortMappings()
Sort mappings by breakpoint ID and multiplier.
1 call to ResponsiveImageStyle::sortMappings()
- ResponsiveImageStyle::addImageStyleMapping in core/
modules/ responsive_image/ src/ Entity/ ResponsiveImageStyle.php - Adds an image style mapping to the responsive image configuration entity.
File
-
core/
modules/ responsive_image/ src/ Entity/ ResponsiveImageStyle.php, line 150
Class
- ResponsiveImageStyle
- Defines the responsive image style entity.
Namespace
Drupal\responsive_image\EntityCode
protected function sortMappings() : void {
$this->keyedImageStyleMappings = NULL;
$breakpoints = \Drupal::service('breakpoint.manager')->getBreakpointsByGroup($this->getBreakpointGroup());
if (empty($breakpoints)) {
return;
}
usort($this->image_style_mappings, static function (array $a, array $b) use ($breakpoints) : int {
$breakpoint_a = $breakpoints[$a['breakpoint_id']] ?? NULL;
$breakpoint_b = $breakpoints[$b['breakpoint_id']] ?? NULL;
$first = (double) mb_substr($a['multiplier'], 0, -1) * 100;
$second = (double) mb_substr($b['multiplier'], 0, -1) * 100;
return [
$breakpoint_b ? $breakpoint_b->getWeight() : 0,
$first,
] <=> [
$breakpoint_a ? $breakpoint_a->getWeight() : 0,
$second,
];
});
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.