import { Component } from '@angular/core'; import { CommonModule } from '@angular/common'; import { EmptyStateComponent } from '../../../../../ui-essentials/src/lib/components/feedback/empty-state/empty-state.component'; @Component({ selector: 'ui-empty-state-demo', standalone: true, imports: [CommonModule, EmptyStateComponent], template: `

Empty State Demo

Sizes

@for (size of sizes; track size) {

{{ size }} size

}

Variants

Default

Search

Error

Loading

Success

States

Normal

Disabled

No Action

Custom Content

This is custom content projected into the empty state component. You can add any HTML or Angular components here.

With Content Projection

Interactive Example

Action clicked: {{ lastAction || 'None' }}

Click count: {{ clickCount }}

`, styleUrl: './empty-state-demo.component.scss' }) export class EmptyStateDemoComponent { sizes = ['sm', 'md', 'lg'] as const; variants = ['default', 'search', 'error', 'loading', 'success'] as const; clickCount = 0; lastAction: string | null = null; handleDemoClick(action: string): void { this.clickCount++; this.lastAction = action; console.log('Empty state action clicked:', action); } }