import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core'; import { type CaseStudyCopy } from '../../core/content/content.contracts'; import { MetricList } from '../metric-list/metric-list'; @Component({ selector: 'app-case-study', changeDetection: ChangeDetectionStrategy.OnPush, imports: [MetricList], templateUrl: './case-study.html', styleUrl: './case-study.scss', }) export class CaseStudy { readonly caseStudy = input.required(); readonly situationLabel = input.required(); readonly approachLabel = input.required(); readonly outcomeLabel = input.required(); readonly stackLabel = input.required(); protected readonly headingId = computed(() => `case-heading-${this.caseStudy().id}`); protected readonly metricsLabelId = computed(() => `case-metrics-${this.caseStudy().id}`); }