import { Component, EventEmitter, Output, signal } from '@angular/core';
import { CommonModule } from '@angular/common';
@Component({
selector: 'app-icon-picker',
standalone: true,
imports: [CommonModule],
template: `
`,
styles: [`
:host { display: block; }
`]
})
export class IconPickerComponent {
@Output() select = new EventEmitter();
private readonly all = [
'๐','๐','๐','๐คฃ','๐','๐','๐','๐','๐','๐','๐ค','๐คจ','๐','๐ด','๐ค','๐ค','๐','๐','๐','๐','๐','๐','โ
','โ ๏ธ','โน๏ธ','๐ก','โญ','๐','๐','๐','๐','๐','๐ฆ','๐ง ','๐ฏ','๐ท๏ธ','๐','๐','๐ ๏ธ','โ๏ธ','๐ฌ','๐ฃ','๐งฉ','๐','๐ฅ','๐ฅ','โจ','๐','๐ช'
];
query = signal('');
filtered = signal(this.all);
onSearch(ev: Event) {
const q = (ev.target as HTMLInputElement).value.toLowerCase();
this.query.set(q);
if (!q) { this.filtered.set(this.all); return; }
this.filtered.set(this.all.filter(ic => ic.toLowerCase().includes(q)));
}
pick(ic: string) { this.select.emit(ic); }
}