Add kbd.component.ts
Create the following file in your project.
import { ChangeDetectionStrategy, Component, computed, input, ViewEncapsulation } from '@angular/core';
import type { ClassValue } from 'clsx';
import { mergeClasses } from '@/shared/utils/merge-classes';
import { kbdVariants } from './kbd.variants';
@Component({
selector: 'z-kbd, [z-kbd]',
template: `
<kbd data-slot="kbd" [class]="classes()"><ng-content /></kbd>
`,
changeDetection: ChangeDetectionStrategy.OnPush,
encapsulation: ViewEncapsulation.None,
exportAs: 'zKbd',
})
export class ZardKbdComponent {
readonly class = input<ClassValue>('');
protected readonly classes = computed(() => mergeClasses(kbdVariants(), this.class()));
}