fix(storefront): create missing footer payment-icon assets
bootstrap.json's footer.paymentIcons referenced /assets/images/ mir-logo.svg, visa-logo.svg, mastercard-logo.svg - none of that directory's files existed until the RC-02 placeholder fix, and these three were still missing. Site-wide broken-image icons in every page footer. Added neutral labeled-badge SVGs (not reproductions of the actual trademarked logo artwork) at the exact referenced paths, plus an onerror fallback on the footer <img> for defense in depth.
This commit is contained in:
@@ -29,7 +29,7 @@
|
||||
<h4>{{ 'footer.payment' | translate }}</h4>
|
||||
<div class="app-footer__payments">
|
||||
@for (icon of paymentIcons(); track $index) {
|
||||
<img [src]="icon.src" [alt]="icon.alt" loading="lazy" [width]="icon.width" [height]="icon.height" />
|
||||
<img [src]="icon.src" [alt]="icon.alt" loading="lazy" [width]="icon.width" [height]="icon.height" (error)="onImageError($event)" />
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -6,6 +6,7 @@ import { UiRuntimeFacade } from '../../facades/runtime/ui-runtime.facade';
|
||||
import { LangRoutePipe } from '../../pipes/lang-route.pipe';
|
||||
import { FooterPaymentIcon, FooterResolvedGroup, FooterResolverService } from '../../core/config/footer-resolver.service';
|
||||
import { ConfigService } from '../../core/config/config.service';
|
||||
import { onImageError } from '../../utils/item.utils';
|
||||
|
||||
@Component({
|
||||
selector: 'app-footer',
|
||||
@@ -15,6 +16,8 @@ import { ConfigService } from '../../core/config/config.service';
|
||||
changeDetection: ChangeDetectionStrategy.OnPush
|
||||
})
|
||||
export class FooterComponent {
|
||||
readonly onImageError = onImageError;
|
||||
|
||||
readonly footerGroups = signal<FooterResolvedGroup[]>([]);
|
||||
readonly paymentIcons = signal<FooterPaymentIcon[]>([]);
|
||||
readonly copyrightText = signal('');
|
||||
|
||||
5
src/assets/images/mastercard-logo.svg
Normal file
5
src/assets/images/mastercard-logo.svg
Normal file
@@ -0,0 +1,5 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 28" role="img" aria-label="Mastercard">
|
||||
<rect width="40" height="28" rx="4" fill="#f4f4f4"/>
|
||||
<circle cx="17" cy="14" r="8" fill="#eb001b"/>
|
||||
<circle cx="25" cy="14" r="8" fill="#f79e1b" fill-opacity="0.85"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 276 B |
4
src/assets/images/mir-logo.svg
Normal file
4
src/assets/images/mir-logo.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 28" role="img" aria-label="MIR">
|
||||
<rect width="40" height="28" rx="4" fill="#0f754e"/>
|
||||
<text x="20" y="18" text-anchor="middle" font-family="Arial, sans-serif" font-size="11" font-weight="700" fill="#ffffff">MIR</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 285 B |
4
src/assets/images/visa-logo.svg
Normal file
4
src/assets/images/visa-logo.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 28" role="img" aria-label="Visa">
|
||||
<rect width="40" height="28" rx="4" fill="#1a1f71"/>
|
||||
<text x="20" y="18" text-anchor="middle" font-family="Arial, sans-serif" font-size="10" font-weight="700" font-style="italic" fill="#ffffff">VISA</text>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 307 B |
Reference in New Issue
Block a user