@let isItemsFormArrayInvalid = itemsFormArray.invalid; @let itemsLength = itemsFormArray.length; @let hasNoDataImage = _itemsConfig.noDataImage && !itemsLength; @let hasNoCardVariation = _itemsConfig.hasNoCardVariation; @let hasPlusIcon = !hasNoCardVariation && !_itemsConfig.isDisabled; @let hasDivider = !hasNoCardVariation && !_itemsConfig.isDividerHidden; @let isCardOpen = hasNoDataImage || !!itemsLength; @let isDisabledCard = hasNoCardVariation || (!hasNoDataImage && !itemsLength); @let isAlwaysOpen = _itemsConfig.isAlwaysOpen || false; @let cardName = _itemsConfig.cardName || eStringPlaceholder.EMPTY; @let cardSubText = _itemsConfig.cardSubText || null; @let counter = hasNoCardVariation ? -1 : itemsLength; @if (itemsLength) { @if (_itemsConfig.stickyGridTemplateColumnValues) {
@let stickyGridTemplateColumns = { 'grid-template-columns': _itemsConfig.stickyGridTemplateColumnValues, };
@let stickySectionHeaderContext = { gridTemplateColumns: stickyGridTemplateColumns, headerItems: _itemsConfig.headerItems | slice: 0 : 2, requiredIndex: _itemsConfig.stickyHeaderItemsRequiredIndex, isStickySection: true, }; @let stickySectionListContext = { gridTemplateColumns: stickyGridTemplateColumns, templateRef: stickyItemsRowTemplate, };
@if (hasNoCardVariation) { } } @else { @let standardLayoutHeaderContext = { gridTemplateColumns, headerItems: _itemsConfig.headerItems, requiredIndex: _itemsConfig.headerItemsRequiredIndex, alignRightIndex: _itemsConfig.headerItemsAlignRightIndex, alignLeftIndex: _itemsConfig.headerItemsAlignLeftIndex, justifyCenterIndex: _itemsConfig.headerItemsJustifyCenterIndex, }; @let adjustedGridTemplateColumns = _itemsConfig.singleListItemGridTemplateColumnValues ? { 'grid-template-columns': _itemsConfig.singleListItemGridTemplateColumnValues, } : gridTemplateColumns; @let standardLayoutListContext = { gridTemplateColumns: adjustedGridTemplateColumns, templateRef: itemsRowTemplate, }; } }
@for ( headerItem of headerItems; let headerItemFirst = $first; let headerItemLast = $last; let headerIndex = $index; track headerItem ) { @let isRequiredItem = requiredIndex?.includes(headerIndex); @let isAlignRightItem = alignRightIndex?.includes(headerIndex); @let isAlignLeftItem = alignLeftIndex?.includes(headerIndex); @let isJustifyCenterItem = justifyCenterIndex?.includes(headerIndex); @let headerItemClass = { headerItemFirst, headerItemLast, isJustifyCenterItem, isAlignLeftItem, isStickySection, } | modalItemsHeaderClass;

@if (headerItem) { {{ headerItem }} } @else { @let hasSingleItemsRow = itemsLength <= 1; @if (hasSingleItemsRow) { # } @else {

} }

@if (isRequiredItem) { * }
}
@for ( group of itemsFormArray.controls; track group; let index = $index ) {
@let groupClass = { 'background-white': group.valid && !_itemsConfig.isDisabled && hoverIndex !== index, 'background-light-grey-5': !group.valid && hoverIndex !== index, 'background-hover-bw2': !_itemsConfig.isDisabled, 'background-bw2': !_itemsConfig.isDisabled && hoverIndex === index, 'pe-none user-select-none': _itemsConfig.isDisabled, };
}
@if (itemsTotalValue) {

Total Cost

{{ itemsTotalValue }}

}
@let noDataImgRoute = sharedSvgRoutes.COMMON_FOLDER_ROUTE + _itemsConfig.noDataImage; @let noDataImgDimensions = { width: _itemsConfig.noDataImageDimensions?.width, height: _itemsConfig.noDataImageDimensions?.height, };