• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/web/webpacker/resource/asset.php
  • Класс: BitrixMainWebWebPackerResourceAsset
  • Вызов: Asset::getContent
public function getContent()
{
	if ($this->content)
	{
		return $this->content;
	}

	if (!static::isExists($this->path))
	{
		return null;
	}

	$path = self::getAbsolutePath($this->path);

	$mapPath = null;
	$useMinimized = false;
	$minPathPos = mb_strrpos($path, '.');
	if ($minPathPos !== false)
	{
		$minPath = mb_substr($path, 0, $minPathPos)
			.'.min'
			.mb_substr($path, $minPathPos);

		if (IOFile::isFileExists($minPath))
		{
			$path = $minPath;
			$useMinimized = true;

			$minPathPos = mb_strrpos($this->path, '.');
			$mapPath = mb_substr($this->path, 0, $minPathPos)
				.'.map'
				.mb_substr($this->path, $minPathPos);
		}
	}

	$content = IOFile::getFileContents($path) ?: '';
	if (!$content || !$useMinimized || !$mapPath)
	{
		return $content;
	}

	$parts = explode("n", $content);
	$mapUri = '//# sourceMappingURL=';
	if (mb_strpos(array_pop($parts), $mapUri) !== 0)
	{
		return $content;
	}

	$mapUri .=  WebPackerBuilder::getDefaultSiteUri() . $mapPath;
	array_push($parts, $mapUri);

	return implode("n", $parts);

}