import { ChangeDetectionStrategy, Component, input } from '@angular/core';
/**
* Compact stacked text for table cells and detail panels.
*
* Typical use: name, email, and a timestamp (Packaged by, Created by, …).
* Missing lines are omitted so the stack stays tight.
*
* @example
* ```html
*
* ```
*/
@Component({
selector: 'africanies-content-stack',
standalone: true,
changeDetection: ChangeDetectionStrategy.OnPush,
host: {
class: 'block min-w-0',
},
template: `
@if (title()) {
{{ title() }}
}
@if (subtitle()) {
{{ subtitle() }}
}
@if (extraLine()) {
{{ extraLine() }}
}
`,
})
/**
* Compact stacked text for table cells and detail panels.
*/
export class ContentStackComponent {
/** Primary line — usually a person or entity name. */
readonly title = input('');
/** Supporting line — usually an email. */
readonly subtitle = input('');
/** Trailing line — usually a formatted date or other caption. */
readonly extraLine = input('');
}