import { Component, input, signal } from '@angular/core';

let nextId = 0;

@Component({
  selector: '<%= selector %>',
  imports: [],
  templateUrl: './<%= dasherize(name) %>.html',
  styleUrl: './<%= dasherize(name) %>.css',
})
export class <%= classify(name) %> {
  protected readonly instanceId = `<%= dasherize(name) %>-${nextId++}`;
  protected readonly visible = signal(true);

  readonly message = input('Your changes have been saved.');
  readonly dismissLabel = input('Dismiss');

  protected dismiss(): void {
    this.visible.set(false);
  }
}
