content: replace scaffolding with bilingual pages and case studies
Ship the final German and English copy, compose every route from shared page primitives, and cover claims, parity and contact briefing in tests. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
21
src/app/shared/cta-row/cta-row.ts
Normal file
21
src/app/shared/cta-row/cta-row.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
import { ChangeDetectionStrategy, Component, inject, input } from '@angular/core';
|
||||
import { RouterLink } from '@angular/router';
|
||||
import { type CtaCopy } from '../../core/content/content.contracts';
|
||||
import { NavigationService } from '../../core/navigation/navigation.service';
|
||||
|
||||
@Component({
|
||||
selector: 'app-cta-row',
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
imports: [RouterLink],
|
||||
templateUrl: './cta-row.html',
|
||||
styleUrl: './cta-row.scss',
|
||||
})
|
||||
export class CtaRow {
|
||||
readonly ctas = input<readonly CtaCopy[]>([]);
|
||||
|
||||
private readonly navigation = inject(NavigationService);
|
||||
|
||||
protected link(cta: CtaCopy): unknown[] {
|
||||
return cta.routeId ? this.navigation.link(cta.routeId) : [];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user