• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/web/webpacker/builder.php
  • Класс: BitrixMainWebWebPackerBuilder
  • Вызов: Builder::convertExtensionsToModules
private function convertExtensionsToModules()
{
	foreach ($this->modules as $index => $module)
	{
		if ($module === 'main.core')
		{
			$module .= '.minimal';
		}

		if ($module === Converter::CORE_EXTENSION && !$this->hasCoreExtension())
		{
			continue;
		}

		if (!is_string($module))
		{
			continue;
		}

		$name = $module;
		$extension = Extension::getResourceList($name, ['with_dependency' => false]);

		$package = (new ResourcePackage());
		$profile = (new ResourceProfile());
		foreach ($extension as $key => $values)
		{
			if ($key === 'options')
			{
				$this->applyExtensionOptions($profile, $values);
				continue;
			}

			if (!in_array($key, ResourceAsset::getTypeList()))
			{
				continue;
			}

			foreach ($values as $path)
			{
				$type = ResourceAsset::detectType($path);
				if (!$type)
				{
					continue;
				}

				$package->addAsset(ResourceAsset::create($path));
			}
		}

		$this->modules[$index] = new Module($name, $package, $profile);
	}

	return $this;
}