$query->
from('sales_channel'
);
$query->
innerJoin('sales_channel', 'sales_channel_domain', 'domain', 'domain.sales_channel_id = sales_channel.id'
);
$query->
innerJoin('domain', 'snippet_set', 'snippet_set', 'snippet_set.id = domain.snippet_set_id'
);
$query->
leftJoin('sales_channel', 'theme_sales_channel', 'theme_sales_channel', 'sales_channel.id = theme_sales_channel.sales_channel_id'
);
$query->
leftJoin('theme_sales_channel', 'theme', 'theme', 'theme_sales_channel.theme_id = theme.id'
);
$query->
leftJoin('theme', 'theme', 'parentTheme', 'theme.parent_theme_id = parentTheme.id'
);
$query->
where('sales_channel.type_id = UNHEX(:typeId)'
);
$query->
andWhere('sales_channel.active'
);
$query->
setParameter('typeId', Defaults::SALES_CHANNEL_TYPE_STOREFRONT
);
/** @var array<string, Domain> $domains */
$domains = FetchModeHelper::
groupUnique($query->
executeQuery()->
fetchAllAssociative());
return $domains;
}}