private function buildDiscountLineItems(string
$code, PromotionEntity
$promotion, Cart
$cart, SalesChannelContext
$context): array
{ $collection =
$promotion->
getDiscounts();
if (!
$collection instanceof PromotionDiscountCollection
) { return [];
} $lineItems =
[];
foreach ($collection->
getElements() as $discount) { $itemIds =
$this->
getAllLineItemIds($cart);
// add a new discount line item for this discount
// if we have at least one valid item that will be discounted.
if (\
count($itemIds) <= 0
) { continue;
} $factor = 1.0;
if (!
$context->
getCurrency()->
getIsSystemDefault()) { $factor =
$context->
getCurrency()->
getFactor();
}