code: protected function getConfigurationItem($imageSize)
  	{
  		$configItem = new PictureConfigurationItem();
  		$resizeConfig = new ResizeConfiguration();
  
  		$mode = $imageSize->resizeMode;
  
  		if (substr_count($mode, '_') === 1)
  		{
  			$importantPart = $this->image->setImportantPart(null)->getImportantPart();
  
  			$mode = explode('_', $mode);
  
  			if ($mode[0] === 'left')
  			{
  				$importantPart['width'] = 1;
  			}
  			elseif ($mode[0] === 'right')
  			{
  				$importantPart['x'] = $importantPart['width'] - 1;
  				$importantPart['width'] = 1;
  			}
  
  			if ($mode[1] === 'top')
  			{
  				$importantPart['height'] = 1;
  			}
  			elseif ($mode[1] === 'bottom')
  			{
  				$importantPart['y'] = $importantPart['height'] - 1;
  				$importantPart['height'] = 1;
  			}
  
  			$this->image->setImportantPart($importantPart);
  
  			$mode = ResizeConfiguration::MODE_CROP;
  		}
  
  		$resizeConfig
  			->setWidth($imageSize->width)
  			->setHeight($imageSize->height)
  			->setZoomLevel($imageSize->zoom)
  		;
  
  		if ($mode)
  		{
  			$resizeConfig->setMode($mode);
  		}
  
  		$configItem->setResizeConfig($resizeConfig);
  
  		if (isset($imageSize->sizes))
  		{
  			$configItem->setSizes($imageSize->sizes);
  		}
  
  		if (isset($imageSize->densities))
  		{
  			$configItem->setDensities($imageSize->densities);
  		}
  
  		if (isset($imageSize->media))
  		{
  			$configItem->setMedia($imageSize->media);
  		}
  
  		return $configItem;
  	}
docs: Get the config for one picture source element
  
  @param Model|object $imageSize The image size or image size item model
  
  @return PictureConfigurationItem