string
$appId,
string
$defaultLocale,
Context
$context ): void
{ $existingCmsBlocks =
$this->
getExistingCmsBlocks($appId,
$context);
$cmsBlocks =
$cmsExtensions->
getBlocks() !== null ?
$cmsExtensions->
getBlocks()->
getBlocks() :
[];
$upserts =
[];
foreach ($cmsBlocks as $cmsBlock) { $payload =
$cmsBlock->
toEntityArray($appId,
$defaultLocale);
$template =
$this->blockTemplateLoader->
getTemplateForBlock($cmsExtensions,
$cmsBlock->
getName());
$payload['template'
] =
$template;
$payload['styles'
] =
$this->blockTemplateLoader->
getStylesForBlock($cmsExtensions,
$cmsBlock->
getName());
/** @var AppCmsBlockEntity|null $existing */
$existing =
$existingCmsBlocks->
filterByProperty('name',
$cmsBlock->
getName())->
first();
if ($existing) { $payload['id'
] =
$existing->
getId();
$existingCmsBlocks->
remove($existing->
getId());
}