@eagami/ui 1.2.1 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"eagami-ui.mjs","sources":["../../../src/lib/i18n/i18n.types.ts","../../../src/lib/i18n/i18n.provider.ts","../../../src/lib/i18n/messages/el.ts","../../../src/lib/i18n/messages/en.ts","../../../src/lib/i18n/messages/es-ES.ts","../../../src/lib/i18n/messages/fr-FR.ts","../../../src/lib/i18n/messages/pl.ts","../../../src/lib/i18n/messages/index.ts","../../../src/lib/i18n/i18n.service.ts","../../../src/lib/i18n/french-spacing.ts","../../../src/lib/i18n/index.ts","../../../src/lib/accordion/accordion.component.ts","../../../src/lib/icons/chevron-down.component.ts","../../../src/lib/accordion/accordion-item.component.ts","../../../src/lib/accordion/accordion-item.component.html","../../../src/lib/icons/alert-circle.component.ts","../../../src/lib/icons/check.component.ts","../../../src/lib/icons/info.component.ts","../../../src/lib/icons/x.component.ts","../../../src/lib/alert/alert.component.ts","../../../src/lib/alert/alert.component.html","../../../src/lib/autocomplete/autocomplete.component.ts","../../../src/lib/autocomplete/autocomplete.component.html","../../../src/lib/icons/camera.component.ts","../../../src/lib/icons/minus.component.ts","../../../src/lib/icons/plus.component.ts","../../../src/lib/icons/rotate-ccw.component.ts","../../../src/lib/icons/trash.component.ts","../../../src/lib/icons/upload.component.ts","../../../src/lib/skeleton/skeleton.component.ts","../../../src/lib/skeleton/skeleton.component.html","../../../src/lib/tooltip/tooltip.directive.ts","../../../src/lib/avatar-editor/avatar-editor.component.ts","../../../src/lib/avatar-editor/avatar-editor.component.html","../../../src/lib/icons/user.component.ts","../../../src/lib/avatar/avatar.component.ts","../../../src/lib/avatar/avatar.component.html","../../../src/lib/badge/badge.component.ts","../../../src/lib/badge/badge.component.html","../../../src/lib/icons/chevron-right.component.ts","../../../src/lib/breadcrumbs/breadcrumbs.component.ts","../../../src/lib/breadcrumbs/breadcrumbs.component.html","../../../src/lib/button/button.component.ts","../../../src/lib/button/button.component.html","../../../src/lib/divider/divider.component.ts","../../../src/lib/divider/divider.component.html","../../../src/lib/card/card.component.ts","../../../src/lib/card/card.component.html","../../../src/lib/checkbox/checkbox.component.ts","../../../src/lib/checkbox/checkbox.component.html","../../../src/lib/icons/arrow-down.component.ts","../../../src/lib/icons/arrow-up.component.ts","../../../src/lib/icons/chevrons-up-down.component.ts","../../../src/lib/data-table/data-table.component.ts","../../../src/lib/data-table/data-table.component.html","../../../src/lib/code-input/code-input.component.ts","../../../src/lib/code-input/code-input.component.html","../../../src/lib/icons/calendar.component.ts","../../../src/lib/icons/chevron-left.component.ts","../../../src/lib/date-picker/date-picker.component.ts","../../../src/lib/date-picker/date-picker.component.html","../../../src/lib/dialog/dialog.component.ts","../../../src/lib/dialog/dialog.component.html","../../../src/lib/drawer/drawer.component.ts","../../../src/lib/drawer/drawer.component.html","../../../src/lib/dropdown/dropdown.component.ts","../../../src/lib/dropdown/dropdown.component.html","../../../src/lib/icons/eagami.component.ts","../../../src/lib/eagami-wordmark/eagami-wordmark.component.ts","../../../src/lib/eagami-wordmark/eagami-wordmark.component.html","../../../src/lib/empty-state/empty-state.component.ts","../../../src/lib/empty-state/empty-state.component.html","../../../src/lib/icons/alert-triangle.component.ts","../../../src/lib/icons/apple.component.ts","../../../src/lib/icons/archive.component.ts","../../../src/lib/icons/arrow-left.component.ts","../../../src/lib/icons/arrow-right.component.ts","../../../src/lib/icons/at-sign.component.ts","../../../src/lib/icons/bar-chart.component.ts","../../../src/lib/icons/bell.component.ts","../../../src/lib/icons/bookmark.component.ts","../../../src/lib/icons/briefcase.component.ts","../../../src/lib/icons/check-circle.component.ts","../../../src/lib/icons/chevron-up.component.ts","../../../src/lib/icons/clipboard.component.ts","../../../src/lib/icons/clock.component.ts","../../../src/lib/icons/cloud.component.ts","../../../src/lib/icons/copy.component.ts","../../../src/lib/icons/credit-card.component.ts","../../../src/lib/icons/dollar-sign.component.ts","../../../src/lib/icons/download.component.ts","../../../src/lib/icons/external-link.component.ts","../../../src/lib/icons/eye-off.component.ts","../../../src/lib/icons/eye.component.ts","../../../src/lib/icons/facebook.component.ts","../../../src/lib/icons/file.component.ts","../../../src/lib/icons/filter.component.ts","../../../src/lib/icons/flag.component.ts","../../../src/lib/icons/folder.component.ts","../../../src/lib/icons/gift.component.ts","../../../src/lib/icons/github.component.ts","../../../src/lib/icons/globe.component.ts","../../../src/lib/icons/google.component.ts","../../../src/lib/icons/hash.component.ts","../../../src/lib/icons/heart.component.ts","../../../src/lib/icons/help-circle.component.ts","../../../src/lib/icons/home.component.ts","../../../src/lib/icons/image.component.ts","../../../src/lib/icons/inbox.component.ts","../../../src/lib/icons/link.component.ts","../../../src/lib/icons/list.component.ts","../../../src/lib/icons/loader.component.ts","../../../src/lib/icons/lock.component.ts","../../../src/lib/icons/log-in.component.ts","../../../src/lib/icons/log-out.component.ts","../../../src/lib/icons/mail.component.ts","../../../src/lib/icons/map-pin.component.ts","../../../src/lib/icons/maximize.component.ts","../../../src/lib/icons/menu.component.ts","../../../src/lib/icons/mic.component.ts","../../../src/lib/icons/microsoft.component.ts","../../../src/lib/icons/minimize.component.ts","../../../src/lib/icons/monitor.component.ts","../../../src/lib/icons/moon.component.ts","../../../src/lib/icons/more-horizontal.component.ts","../../../src/lib/icons/package.component.ts","../../../src/lib/icons/paperclip.component.ts","../../../src/lib/icons/pause.component.ts","../../../src/lib/icons/pencil.component.ts","../../../src/lib/icons/phone.component.ts","../../../src/lib/icons/play.component.ts","../../../src/lib/icons/printer.component.ts","../../../src/lib/icons/refresh-cw.component.ts","../../../src/lib/icons/save.component.ts","../../../src/lib/icons/search.component.ts","../../../src/lib/icons/send.component.ts","../../../src/lib/icons/settings.component.ts","../../../src/lib/icons/share.component.ts","../../../src/lib/icons/shield.component.ts","../../../src/lib/icons/shopping-cart.component.ts","../../../src/lib/icons/smartphone.component.ts","../../../src/lib/icons/star.component.ts","../../../src/lib/icons/sun.component.ts","../../../src/lib/icons/thumbs-down.component.ts","../../../src/lib/icons/thumbs-up.component.ts","../../../src/lib/icons/trending-up.component.ts","../../../src/lib/icons/unlock.component.ts","../../../src/lib/icons/users.component.ts","../../../src/lib/icons/video.component.ts","../../../src/lib/icons/volume-2.component.ts","../../../src/lib/icons/wifi.component.ts","../../../src/lib/icons/x-circle.component.ts","../../../src/lib/icons/x-twitter.component.ts","../../../src/lib/icons/zap.component.ts","../../../src/lib/input/input.component.ts","../../../src/lib/input/input.component.html","../../../src/lib/menu/menu.component.ts","../../../src/lib/menu/menu.component.html","../../../src/lib/menu/menu-item.component.ts","../../../src/lib/menu/menu-item.component.html","../../../src/lib/menu/menu-trigger.directive.ts","../../../src/lib/paginator/paginator.component.ts","../../../src/lib/paginator/paginator.component.html","../../../src/lib/progress-bar/progress-bar.component.ts","../../../src/lib/progress-bar/progress-bar.component.html","../../../src/lib/radio/radio-group.component.ts","../../../src/lib/radio/radio-group.component.html","../../../src/lib/radio/radio.component.ts","../../../src/lib/radio/radio.component.html","../../../src/lib/segmented/segmented.component.ts","../../../src/lib/segmented/segmented.component.html","../../../src/lib/slider/slider.component.ts","../../../src/lib/slider/slider.component.html","../../../src/lib/spinner/spinner.component.ts","../../../src/lib/spinner/spinner.component.html","../../../src/lib/switch/switch.component.ts","../../../src/lib/switch/switch.component.html","../../../src/lib/tabs/tabs.component.ts","../../../src/lib/tabs/tabs.component.html","../../../src/lib/tabs/tab.component.ts","../../../src/lib/tag/tag.component.ts","../../../src/lib/tag/tag.component.html","../../../src/lib/textarea/textarea.component.ts","../../../src/lib/textarea/textarea.component.html","../../../src/lib/toast/toast.service.ts","../../../src/lib/toast/toast.component.ts","../../../src/lib/toast/toast.component.html","../../../src/public-api.ts","../../../src/eagami-ui.ts"],"sourcesContent":["// =============================================================================\n// EAGAMI UI — i18n types\n// =============================================================================\n\n/**\n * BCP 47 locale tags supported out of the box. Consumers select one of these\n * via `provideEagamiUi({ locale })` or `EagamiI18nService.setLocale()`.\n */\nexport type EagamiLocale = 'en' | 'fr-FR' | 'el' | 'pl' | 'es-ES';\n\n/** Ordered list of every supported locale — handy for language switchers. */\nexport const EAGAMI_LOCALES: readonly EagamiLocale[] = [\n 'en',\n 'fr-FR',\n 'el',\n 'pl',\n 'es-ES',\n];\n\n/**\n * Every user-facing string baked into the component library, grouped by\n * component. Parameterized strings are functions so each locale controls its\n * own word order and pluralization.\n */\nexport interface EagamiMessages {\n alert: {\n dismiss: string;\n };\n autocomplete: {\n empty: string;\n };\n avatarEditor: {\n upload: string;\n dropzone: string;\n canvas: string;\n change: string;\n revert: string;\n zoomOut: string;\n zoom: string;\n zoomIn: string;\n remove: string;\n };\n breadcrumbs: {\n label: string;\n };\n codeInput: {\n groupLabel: (length: number) => string;\n digitLabel: (index: number, length: number) => string;\n };\n dataTable: {\n noData: string;\n };\n datePicker: {\n placeholder: string;\n clear: string;\n previousYear: string;\n previousMonth: string;\n nextMonth: string;\n nextYear: string;\n today: string;\n };\n dialog: {\n close: string;\n };\n drawer: {\n close: string;\n };\n dropdown: {\n placeholder: string;\n };\n input: {\n showPassword: string;\n hidePassword: string;\n };\n menu: {\n label: string;\n };\n paginator: {\n label: string;\n rowsPerPage: string;\n range: (start: number, end: number, total: number) => string;\n previousPage: string;\n nextPage: string;\n };\n progressBar: {\n label: string;\n };\n spinner: {\n label: string;\n };\n tag: {\n remove: string;\n };\n toast: {\n dismiss: string;\n };\n wordmark: {\n overline: string;\n tagline: string;\n };\n}\n\n/** A partial set of message overrides, applied per component group. */\nexport type EagamiMessagesOverride = {\n [G in keyof EagamiMessages]?: Partial<EagamiMessages[G]>;\n};\n\n/** Configuration accepted by `provideEagamiUi`. */\nexport interface EagamiI18nConfig {\n /** Initial locale. Defaults to `'en'`. */\n locale?: EagamiLocale;\n /** Optional per-string overrides merged over the active locale's messages. */\n messages?: EagamiMessagesOverride;\n}\n","import {\n EnvironmentProviders,\n InjectionToken,\n makeEnvironmentProviders,\n} from '@angular/core';\n\nimport { EagamiI18nConfig } from './i18n.types';\n\n/** DI token carrying the consumer-supplied i18n configuration. */\nexport const EAGAMI_I18N_CONFIG = new InjectionToken<EagamiI18nConfig>(\n 'EAGAMI_I18N_CONFIG',\n);\n\n/**\n * Configures Eagami UI for the application. Pass a `locale` to switch every\n * component's built-in strings (and locale-aware date formatting) at once, and\n * optionally `messages` to override individual strings.\n *\n * ```ts\n * bootstrapApplication(AppComponent, {\n * providers: [provideEagamiUi({ locale: 'fr-FR' })],\n * });\n * ```\n *\n * Calling this is optional — without it the library defaults to English.\n */\nexport function provideEagamiUi(config: EagamiI18nConfig = {}): EnvironmentProviders {\n return makeEnvironmentProviders([{ provide: EAGAMI_I18N_CONFIG, useValue: config }]);\n}\n","import { EagamiMessages } from '../i18n.types';\n\n/** Greek messages. */\nexport const el: EagamiMessages = {\n alert: {\n dismiss: 'Απόρριψη',\n },\n autocomplete: {\n empty: 'Δεν υπάρχουν αποτελέσματα',\n },\n avatarEditor: {\n upload: 'Μεταφόρτωση εικόνας',\n dropzone: 'Αποθέστε μια εικόνα ή κάντε κλικ για μεταφόρτωση',\n canvas:\n 'Προεπισκόπηση εικόνας, σύρετε ή χρησιμοποιήστε τα βέλη για μετακίνηση, το ρυθμιστικό για ζουμ',\n change: 'Αλλαγή φωτογραφίας',\n revert: 'Επαναφορά στο αρχικό',\n zoomOut: 'Σμίκρυνση',\n zoom: 'Ζουμ',\n zoomIn: 'Μεγέθυνση',\n remove: 'Αφαίρεση εικόνας',\n },\n breadcrumbs: {\n label: 'Διαδρομή πλοήγησης',\n },\n codeInput: {\n groupLabel: length => `Κωδικός επαλήθευσης, ${length} ψηφία`,\n digitLabel: (index, length) => `Ψηφίο ${index} από ${length}`,\n },\n dataTable: {\n noData: 'Δεν υπάρχουν διαθέσιμα δεδομένα',\n },\n datePicker: {\n placeholder: 'Επιλέξτε ημερομηνία…',\n clear: 'Εκκαθάριση ημερομηνίας',\n previousYear: 'Προηγούμενο έτος',\n previousMonth: 'Προηγούμενος μήνας',\n nextMonth: 'Επόμενος μήνας',\n nextYear: 'Επόμενο έτος',\n today: 'Σήμερα',\n },\n dialog: {\n close: 'Κλείσιμο παραθύρου διαλόγου',\n },\n drawer: {\n close: 'Κλείσιμο πίνακα',\n },\n dropdown: {\n placeholder: 'Επιλέξτε…',\n },\n input: {\n showPassword: 'Εμφάνιση κωδικού πρόσβασης',\n hidePassword: 'Απόκρυψη κωδικού πρόσβασης',\n },\n menu: {\n label: 'Μενού',\n },\n paginator: {\n label: 'Σελιδοποίηση',\n rowsPerPage: 'Γραμμές ανά σελίδα:',\n range: (start, end, total) => `${start}–${end} από ${total}`,\n previousPage: 'Προηγούμενη σελίδα',\n nextPage: 'Επόμενη σελίδα',\n },\n progressBar: {\n label: 'Πρόοδος',\n },\n spinner: {\n label: 'Φόρτωση',\n },\n tag: {\n remove: 'Αφαίρεση',\n },\n toast: {\n dismiss: 'Απόρριψη',\n },\n wordmark: {\n overline: 'φτιαγμένο με μεράκι από',\n tagline: 'κομψός σχεδιασμός ιστού',\n },\n};\n","import { EagamiMessages } from '../i18n.types';\n\n/** English (default / fallback) messages. */\nexport const en: EagamiMessages = {\n alert: {\n dismiss: 'Dismiss',\n },\n autocomplete: {\n empty: 'No results',\n },\n avatarEditor: {\n upload: 'Upload image',\n dropzone: 'Drop image or click to upload',\n canvas: 'Image preview, drag or use arrow keys to pan, slider to zoom',\n change: 'Change photo',\n revert: 'Revert to original',\n zoomOut: 'Zoom out',\n zoom: 'Zoom',\n zoomIn: 'Zoom in',\n remove: 'Remove image',\n },\n breadcrumbs: {\n label: 'Breadcrumb',\n },\n codeInput: {\n groupLabel: length => `Verification code, ${length} digits`,\n digitLabel: (index, length) => `Digit ${index} of ${length}`,\n },\n dataTable: {\n noData: 'No data available',\n },\n datePicker: {\n placeholder: 'Select date…',\n clear: 'Clear date',\n previousYear: 'Previous year',\n previousMonth: 'Previous month',\n nextMonth: 'Next month',\n nextYear: 'Next year',\n today: 'Today',\n },\n dialog: {\n close: 'Close dialog',\n },\n drawer: {\n close: 'Close panel',\n },\n dropdown: {\n placeholder: 'Select…',\n },\n input: {\n showPassword: 'Show password',\n hidePassword: 'Hide password',\n },\n menu: {\n label: 'Menu',\n },\n paginator: {\n label: 'Pagination',\n rowsPerPage: 'Rows per page:',\n range: (start, end, total) => `${start}–${end} of ${total}`,\n previousPage: 'Previous page',\n nextPage: 'Next page',\n },\n progressBar: {\n label: 'Progress',\n },\n spinner: {\n label: 'Loading',\n },\n tag: {\n remove: 'Remove',\n },\n toast: {\n dismiss: 'Dismiss',\n },\n wordmark: {\n overline: 'handcrafted by',\n tagline: 'elegant web design',\n },\n};\n","import { EagamiMessages } from '../i18n.types';\n\n/** Spanish (Spain) messages. */\nexport const esES: EagamiMessages = {\n alert: {\n dismiss: 'Descartar',\n },\n autocomplete: {\n empty: 'Sin resultados',\n },\n avatarEditor: {\n upload: 'Subir imagen',\n dropzone: 'Suelta una imagen o haz clic para subir',\n canvas:\n 'Vista previa de la imagen, arrastra o usa las flechas para desplazar, el control deslizante para ampliar',\n change: 'Cambiar foto',\n revert: 'Revertir al original',\n zoomOut: 'Alejar',\n zoom: 'Ampliación',\n zoomIn: 'Acercar',\n remove: 'Eliminar imagen',\n },\n breadcrumbs: {\n label: 'Ruta de navegación',\n },\n codeInput: {\n groupLabel: length => `Código de verificación, ${length} dígitos`,\n digitLabel: (index, length) => `Dígito ${index} de ${length}`,\n },\n dataTable: {\n noData: 'No hay datos disponibles',\n },\n datePicker: {\n placeholder: 'Seleccionar fecha…',\n clear: 'Borrar fecha',\n previousYear: 'Año anterior',\n previousMonth: 'Mes anterior',\n nextMonth: 'Mes siguiente',\n nextYear: 'Año siguiente',\n today: 'Hoy',\n },\n dialog: {\n close: 'Cerrar diálogo',\n },\n drawer: {\n close: 'Cerrar panel',\n },\n dropdown: {\n placeholder: 'Seleccionar…',\n },\n input: {\n showPassword: 'Mostrar contraseña',\n hidePassword: 'Ocultar contraseña',\n },\n menu: {\n label: 'Menú',\n },\n paginator: {\n label: 'Paginación',\n rowsPerPage: 'Filas por página:',\n range: (start, end, total) => `${start}–${end} de ${total}`,\n previousPage: 'Página anterior',\n nextPage: 'Página siguiente',\n },\n progressBar: {\n label: 'Progreso',\n },\n spinner: {\n label: 'Cargando',\n },\n tag: {\n remove: 'Eliminar',\n },\n toast: {\n dismiss: 'Descartar',\n },\n wordmark: {\n overline: 'hecho a mano por',\n tagline: 'diseño web elegante',\n },\n};\n","import { EagamiMessages } from '../i18n.types';\n\n/** French (France) messages. */\nexport const frFR: EagamiMessages = {\n alert: {\n dismiss: 'Fermer',\n },\n autocomplete: {\n empty: 'Aucun résultat',\n },\n avatarEditor: {\n upload: 'Téléverser une image',\n dropzone: 'Déposez une image ou cliquez pour téléverser',\n canvas:\n \"Aperçu de l'image, faites glisser ou utilisez les flèches pour déplacer, le curseur pour zoomer\",\n change: 'Changer la photo',\n revert: \"Revenir à l'original\",\n zoomOut: 'Dézoomer',\n zoom: 'Zoom',\n zoomIn: 'Zoomer',\n remove: \"Supprimer l'image\",\n },\n breadcrumbs: {\n label: \"Fil d'Ariane\",\n },\n codeInput: {\n groupLabel: length => `Code de vérification, ${length} chiffres`,\n digitLabel: (index, length) => `Chiffre ${index} sur ${length}`,\n },\n dataTable: {\n noData: 'Aucune donnée disponible',\n },\n datePicker: {\n placeholder: 'Sélectionner une date…',\n clear: 'Effacer la date',\n previousYear: 'Année précédente',\n previousMonth: 'Mois précédent',\n nextMonth: 'Mois suivant',\n nextYear: 'Année suivante',\n today: \"Aujourd'hui\",\n },\n dialog: {\n close: 'Fermer la boîte de dialogue',\n },\n drawer: {\n close: 'Fermer le panneau',\n },\n dropdown: {\n placeholder: 'Sélectionner…',\n },\n input: {\n showPassword: 'Afficher le mot de passe',\n hidePassword: 'Masquer le mot de passe',\n },\n menu: {\n label: 'Menu',\n },\n paginator: {\n label: 'Pagination',\n rowsPerPage: 'Lignes par page :',\n range: (start, end, total) => `${start}–${end} sur ${total}`,\n previousPage: 'Page précédente',\n nextPage: 'Page suivante',\n },\n progressBar: {\n label: 'Progression',\n },\n spinner: {\n label: 'Chargement',\n },\n tag: {\n remove: 'Supprimer',\n },\n toast: {\n dismiss: 'Fermer',\n },\n wordmark: {\n overline: 'conçu avec soin par',\n tagline: 'design web élégant',\n },\n};\n","import { EagamiMessages } from '../i18n.types';\n\n/** Polish messages. */\nexport const pl: EagamiMessages = {\n alert: {\n dismiss: 'Zamknij',\n },\n autocomplete: {\n empty: 'Brak wyników',\n },\n avatarEditor: {\n upload: 'Prześlij obraz',\n dropzone: 'Upuść obraz lub kliknij, aby przesłać',\n canvas:\n 'Podgląd obrazu, przeciągnij lub użyj strzałek, aby przesunąć, suwaka, aby przybliżyć',\n change: 'Zmień zdjęcie',\n revert: 'Przywróć oryginał',\n zoomOut: 'Pomniejsz',\n zoom: 'Powiększenie',\n zoomIn: 'Powiększ',\n remove: 'Usuń obraz',\n },\n breadcrumbs: {\n label: 'Ścieżka nawigacji',\n },\n codeInput: {\n groupLabel: length => `Kod weryfikacyjny, ${length} cyfr`,\n digitLabel: (index, length) => `Cyfra ${index} z ${length}`,\n },\n dataTable: {\n noData: 'Brak dostępnych danych',\n },\n datePicker: {\n placeholder: 'Wybierz datę…',\n clear: 'Wyczyść datę',\n previousYear: 'Poprzedni rok',\n previousMonth: 'Poprzedni miesiąc',\n nextMonth: 'Następny miesiąc',\n nextYear: 'Następny rok',\n today: 'Dzisiaj',\n },\n dialog: {\n close: 'Zamknij okno dialogowe',\n },\n drawer: {\n close: 'Zamknij panel',\n },\n dropdown: {\n placeholder: 'Wybierz…',\n },\n input: {\n showPassword: 'Pokaż hasło',\n hidePassword: 'Ukryj hasło',\n },\n menu: {\n label: 'Menu',\n },\n paginator: {\n label: 'Paginacja',\n rowsPerPage: 'Wierszy na stronę:',\n range: (start, end, total) => `${start}–${end} z ${total}`,\n previousPage: 'Poprzednia strona',\n nextPage: 'Następna strona',\n },\n progressBar: {\n label: 'Postęp',\n },\n spinner: {\n label: 'Ładowanie',\n },\n tag: {\n remove: 'Usuń',\n },\n toast: {\n dismiss: 'Zamknij',\n },\n wordmark: {\n overline: 'ręcznie wykonane przez',\n tagline: 'elegancki projekt stron',\n },\n};\n","import { EagamiLocale, EagamiMessages } from '../i18n.types';\nimport { el } from './el';\nimport { en } from './en';\nimport { esES } from './es-ES';\nimport { frFR } from './fr-FR';\nimport { pl } from './pl';\n\nexport { el, en, esES, frFR, pl };\n\n/** Built-in message dictionaries, keyed by locale. */\nexport const EAGAMI_MESSAGES: Record<EagamiLocale, EagamiMessages> = {\n en,\n 'fr-FR': frFR,\n el,\n pl,\n 'es-ES': esES,\n};\n","import { Injectable, Signal, computed, inject, signal } from '@angular/core';\n\nimport { EAGAMI_I18N_CONFIG } from './i18n.provider';\nimport { EagamiLocale, EagamiMessages, EagamiMessagesOverride } from './i18n.types';\nimport { EAGAMI_MESSAGES, en } from './messages';\n\n/** Shallow-merges per-component override groups over a complete base dictionary. */\nfunction applyOverrides(\n base: EagamiMessages,\n overrides: EagamiMessagesOverride,\n): EagamiMessages {\n const merged = {} as EagamiMessages;\n for (const key of Object.keys(base) as (keyof EagamiMessages)[]) {\n merged[key] = { ...base[key], ...overrides[key] } as EagamiMessages[never];\n }\n return merged;\n}\n\n/**\n * Holds the active locale and resolves the matching message dictionary for\n * every Eagami UI component. The `locale` signal is reactive, so changing it\n * at runtime re-renders all components with the new strings. Unknown locales\n * (or missing keys via partial overrides) fall back to English.\n */\n@Injectable({ providedIn: 'root' })\nexport class EagamiI18nService {\n private readonly config = inject(EAGAMI_I18N_CONFIG, { optional: true });\n\n private readonly _locale = signal<EagamiLocale>(this.config?.locale ?? 'en');\n\n /** The currently active locale. Read it reactively or call `setLocale()`. */\n readonly locale: Signal<EagamiLocale> = this._locale.asReadonly();\n\n /** The resolved message dictionary for the active locale. */\n readonly messages: Signal<EagamiMessages> = computed(() => {\n const base = EAGAMI_MESSAGES[this._locale()] ?? en;\n const overrides = this.config?.messages;\n return overrides ? applyOverrides(base, overrides) : base;\n });\n\n /** Switches the active locale; falls back to English if unsupported. */\n setLocale(locale: EagamiLocale): void {\n this._locale.set(EAGAMI_MESSAGES[locale] ? locale : 'en');\n }\n}\n","// =============================================================================\n// EAGAMI UI — French spacing helper\n// =============================================================================\n\n// Pattern: ASCII space (0x20) followed by a closing \"high\" punctuation mark.\n// French typography wants an \"espace fine insécable\" (narrow non-breaking\n// space, U+202F) in this position, not a regular breakable space. The match\n// deliberately excludes U+202F and U+00A0 so the function is idempotent.\nconst SPACE_BEFORE_HIGH_PUNCT = / ([!?:;»])/g;\n\n// Pattern: opening guillemet followed by an ASCII space — symmetric rule for\n// the inside of French quotation marks.\nconst SPACE_AFTER_OPEN_GUILLEMET = /(«) /g;\n\n/**\n * Replaces regular spaces with U+202F (narrow non-breaking space) in the\n * positions where standard French typography requires \"espace fine insécable\":\n * before `!` `?` `:` `;` `»`, and after `«`. This is what publishers like the\n * Imprimerie nationale and most French press follow, and it prevents the\n * punctuation from wrapping onto its own line.\n *\n * Opt-in: the library does not auto-apply this to anything. Components render\n * whatever string they receive. Apply this to consumer-supplied content (user\n * input, content from your CMS, etc.) that you want to format correctly for a\n * French audience. The function is idempotent — already-converted text passes\n * through unchanged.\n *\n * Do not apply it to URLs, CSS, JSON, code snippets, or other technical\n * strings where `:` or `?` have non-prose meaning.\n *\n * @example\n * frenchSpacing('Lignes par page :');\n * // → 'Lignes par page\\u202F:'\n *\n * frenchSpacing(\"Qu'est-ce que c'est ?\");\n * // → \"Qu'est-ce que c'est\\u202F?\"\n *\n * frenchSpacing('Il a dit « bonjour ».');\n * // → 'Il a dit «\\u202Fbonjour\\u202F».'\n */\nexport function frenchSpacing(text: string): string {\n return text\n .replace(SPACE_BEFORE_HIGH_PUNCT, ' $1')\n .replace(SPACE_AFTER_OPEN_GUILLEMET, '$1 ');\n}\n","// =============================================================================\n// EAGAMI UI — i18n public surface\n// =============================================================================\n\nexport * from './i18n.types';\nexport { EAGAMI_I18N_CONFIG, provideEagamiUi } from './i18n.provider';\nexport { EagamiI18nService } from './i18n.service';\nexport { EAGAMI_MESSAGES, el, en, esES, frFR, pl } from './messages';\nexport { frenchSpacing } from './french-spacing';\n","import { ChangeDetectionStrategy, Component, input, signal } from '@angular/core';\n\n/**\n * Container for expandable content sections. By default only one item can be\n * open at a time; set `multi` to allow several to stay expanded together.\n * Provides a built-in chevron animation and supports per-item disabling.\n */\n@Component({\n selector: 'ea-accordion',\n template: ` <div class=\"ea-accordion\"><ng-content /></div> `,\n styleUrl: './accordion.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionComponent {\n readonly multi = input<boolean>(false);\n\n readonly expandedItems = signal<Set<string>>(new Set());\n\n toggle(value: string): void {\n const current = this.expandedItems();\n const next = new Set(current);\n\n if (next.has(value)) {\n next.delete(value);\n } else {\n if (!this.multi()) {\n next.clear();\n }\n next.add(value);\n }\n\n this.expandedItems.set(next);\n }\n\n isExpanded(value: string): boolean {\n return this.expandedItems().has(value);\n }\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-chevron-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"6 9 12 15 18 9\" />\n </svg>\n `,\n})\nexport class ChevronDownIconComponent {}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { ChevronDownIconComponent } from '../icons/chevron-down.component';\nimport { AccordionComponent } from './accordion.component';\n\n/**\n * Single expandable section within an `ea-accordion`. Each item exposes a\n * header button with the supplied `label` and reveals its projected content\n * when expanded. Must be rendered inside an `ea-accordion`.\n */\n@Component({\n selector: 'ea-accordion-item',\n imports: [ChevronDownIconComponent],\n templateUrl: './accordion-item.component.html',\n styleUrl: './accordion-item.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionItemComponent {\n private readonly accordion = inject(AccordionComponent);\n\n readonly value = input.required<string>();\n readonly label = input.required<string>();\n readonly disabled = input<boolean>(false);\n readonly id = input<string>(\n `ea-accordion-item-${Math.random().toString(36).slice(2, 9)}`,\n );\n\n readonly isExpanded = computed(() => this.accordion.isExpanded(this.value()));\n\n toggle(): void {\n if (this.disabled()) return;\n this.accordion.toggle(this.value());\n }\n}\n","<div\n class=\"ea-accordion-item\"\n [class.ea-accordion-item--expanded]=\"isExpanded()\"\n [class.ea-accordion-item--disabled]=\"disabled()\">\n <button\n class=\"ea-accordion-item__trigger\"\n type=\"button\"\n [id]=\"id() + '-trigger'\"\n [attr.aria-expanded]=\"isExpanded()\"\n [attr.aria-controls]=\"id() + '-content'\"\n [disabled]=\"disabled()\"\n (click)=\"toggle()\">\n <span class=\"ea-accordion-item__label\">{{ label() }}</span>\n <ea-icon-chevron-down\n class=\"ea-accordion-item__chevron\"\n aria-hidden=\"true\" />\n </button>\n @if (isExpanded()) {\n <div\n class=\"ea-accordion-item__content\"\n role=\"region\"\n [id]=\"id() + '-content'\"\n [attr.aria-labelledby]=\"id() + '-trigger'\">\n <ng-content />\n </div>\n }\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-alert-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 16 16\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1zm-.75 4a.75.75 0 0 1 1.5 0v3.5a.75.75 0 0 1-1.5 0V5zm.75 6.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2z\" />\n </svg>\n `,\n})\nexport class AlertCircleIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-check',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n `,\n})\nexport class CheckIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-info',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"12\"\n y1=\"16\"\n x2=\"12\"\n y2=\"12\" />\n <line\n x1=\"12\"\n y1=\"8\"\n x2=\"12.01\"\n y2=\"8\" />\n </svg>\n `,\n})\nexport class InfoIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-x',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"18\"\n y1=\"6\"\n x2=\"6\"\n y2=\"18\" />\n <line\n x1=\"6\"\n y1=\"6\"\n x2=\"18\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class XIconComponent {}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n model,\n output,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { AlertCircleIconComponent } from '../icons/alert-circle.component';\nimport { CheckIconComponent } from '../icons/check.component';\nimport { InfoIconComponent } from '../icons/info.component';\nimport { XIconComponent } from '../icons/x.component';\n\n/** Semantic colour scheme of an alert. Drives icon and palette. */\nexport type AlertVariant = 'default' | 'success' | 'warning' | 'error' | 'info';\n\n/**\n * Inline banner for surfacing semantic messages such as success confirmations,\n * warnings, or errors. Optionally dismissible, with a two-way `visible`\n * binding and an automatically chosen ARIA role based on severity.\n */\n@Component({\n selector: 'ea-alert',\n templateUrl: './alert.component.html',\n styleUrl: './alert.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n AlertCircleIconComponent,\n CheckIconComponent,\n InfoIconComponent,\n XIconComponent,\n ],\n})\nexport class AlertComponent {\n protected readonly i18n = inject(EagamiI18nService);\n\n readonly variant = input<AlertVariant>('default');\n readonly dismissible = input<boolean>(false);\n readonly visible = model<boolean>(true);\n\n /** Fires when the user dismisses the alert via its close button. */\n readonly dismissed = output<void>();\n\n readonly alertClasses = computed(() => ({\n [`ea-alert--${this.variant()}`]: true,\n }));\n\n readonly role = computed(() => {\n const v = this.variant();\n return v === 'error' || v === 'warning' ? 'alert' : 'status';\n });\n\n /** Hides the alert and emits `dismissed`. */\n dismiss(): void {\n this.visible.set(false);\n this.dismissed.emit();\n }\n}\n","@if (visible()) {\n <div\n class=\"ea-alert\"\n [class.ea-alert--default]=\"variant() === 'default'\"\n [class.ea-alert--success]=\"variant() === 'success'\"\n [class.ea-alert--warning]=\"variant() === 'warning'\"\n [class.ea-alert--error]=\"variant() === 'error'\"\n [class.ea-alert--info]=\"variant() === 'info'\"\n [attr.role]=\"role()\">\n <span\n class=\"ea-alert__icon\"\n aria-hidden=\"true\">\n @switch (variant()) {\n @case ('success') {\n <ea-icon-check />\n }\n @case ('warning') {\n <ea-icon-alert-circle />\n }\n @case ('error') {\n <ea-icon-alert-circle />\n }\n @case ('info') {\n <ea-icon-info />\n }\n @default {\n <ea-icon-info />\n }\n }\n </span>\n <div class=\"ea-alert__content\">\n <ng-content />\n </div>\n @if (dismissible()) {\n <button\n class=\"ea-alert__close\"\n type=\"button\"\n [attr.aria-label]=\"i18n.messages().alert.dismiss\"\n (click)=\"dismiss()\">\n <ea-icon-x />\n </button>\n }\n </div>\n}\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostListener,\n computed,\n forwardRef,\n inject,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { SelectOption } from '../select-option';\n\n/** Visual size of the autocomplete input. */\nexport type AutocompleteSize = 'sm' | 'md' | 'lg';\n\n/**\n * Text input paired with a filtered suggestion list. Filters options by\n * case-insensitive substring match, supports arrow-key navigation, and\n * implements `ControlValueAccessor` for use with reactive and template-driven\n * forms.\n */\n@Component({\n selector: 'ea-autocomplete',\n imports: [NgClass],\n templateUrl: './autocomplete.component.html',\n styleUrl: './autocomplete.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AutocompleteComponent),\n multi: true,\n },\n ],\n})\nexport class AutocompleteComponent implements ControlValueAccessor {\n private readonly inputEl = viewChild<ElementRef<HTMLInputElement>>('inputEl');\n private readonly hostEl = viewChild<ElementRef<HTMLElement>>('hostEl');\n private readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly label = input<string | undefined>(undefined);\n readonly placeholder = input<string>('');\n readonly options = input<SelectOption[]>([]);\n readonly size = input<AutocompleteSize>('md');\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly minLength = input<number>(0);\n readonly maxResults = input<number>(10);\n readonly emptyMessage = input<string | undefined>(undefined);\n readonly id = input<string>(\n `ea-autocomplete-${Math.random().toString(36).slice(2, 9)}`,\n );\n\n // Two-way value binding (current text value in the input)\n readonly value = model<string>('');\n\n // Outputs\n /** Fires when the user picks an option from the suggestion list. */\n readonly selected = output<SelectOption>();\n /** Fires whenever the input text changes, including on free-text edits. */\n readonly changed = output<string>();\n /** Fires when the input receives focus. */\n readonly focused = output<FocusEvent>();\n /** Fires when the input loses focus. */\n readonly blurred = output<FocusEvent>();\n\n // Internal state\n readonly isOpen = signal(false);\n readonly isFocused = signal(false);\n readonly focusedIndex = signal(-1);\n private readonly _formDisabled = signal(false);\n private justSelected = false;\n\n // ControlValueAccessor callbacks\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly filteredOptions = computed<SelectOption[]>(() => {\n const query = this.value().trim().toLowerCase();\n const allOptions = this.options();\n const max = this.maxResults();\n\n if (query.length < this.minLength()) return [];\n\n const matched = query\n ? allOptions.filter(o => o.label.toLowerCase().includes(query))\n : allOptions;\n\n return matched.slice(0, max);\n });\n\n readonly showList = computed(\n () => this.isOpen() && this.value().length >= this.minLength(),\n );\n\n readonly showEmpty = computed(\n () => this.showList() && this.filteredOptions().length === 0,\n );\n\n /** Empty-list message, falling back to the active locale's translation. */\n readonly resolvedEmptyMessage = computed(\n () => this.emptyMessage() ?? this.i18n.messages().autocomplete.empty,\n );\n\n readonly wrapperClasses = computed(() => ({\n [`ea-autocomplete__wrapper--${this.size()}`]: true,\n 'ea-autocomplete__wrapper--error': this.hasError(),\n 'ea-autocomplete__wrapper--focused': this.isFocused(),\n 'ea-autocomplete__wrapper--disabled': this.isDisabled(),\n }));\n\n // ControlValueAccessor\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n // Handlers\n handleInput(event: Event): void {\n const next = (event.target as HTMLInputElement).value;\n this.value.set(next);\n this.onChange(next);\n this.changed.emit(next);\n this.isOpen.set(true);\n this.focusedIndex.set(-1);\n }\n\n handleFocus(event: FocusEvent): void {\n this.isFocused.set(true);\n this.focused.emit(event);\n if (this.justSelected) {\n this.justSelected = false;\n return;\n }\n if (this.value().length >= this.minLength()) {\n this.isOpen.set(true);\n }\n }\n\n handleBlur(event: FocusEvent): void {\n this.isFocused.set(false);\n this.onTouched();\n this.blurred.emit(event);\n }\n\n handleKeydown(event: KeyboardEvent): void {\n if (this.isDisabled() || this.readonly()) return;\n\n switch (event.key) {\n case 'ArrowDown':\n event.preventDefault();\n if (!this.isOpen()) {\n this.isOpen.set(true);\n } else {\n this.moveFocus(1);\n }\n break;\n case 'ArrowUp':\n event.preventDefault();\n if (this.isOpen()) this.moveFocus(-1);\n break;\n case 'Enter': {\n const opts = this.filteredOptions();\n const idx = this.focusedIndex();\n if (this.isOpen() && idx >= 0 && idx < opts.length && !opts[idx].disabled) {\n event.preventDefault();\n this.selectOption(opts[idx]);\n }\n break;\n }\n case 'Escape':\n if (this.isOpen()) {\n event.preventDefault();\n this.close();\n }\n break;\n }\n }\n\n /** Programmatically selects the given option, updating the value and closing the list. */\n selectOption(option: SelectOption): void {\n if (option.disabled || this.isDisabled()) return;\n this.value.set(option.label);\n this.onChange(option.label);\n this.changed.emit(option.label);\n this.selected.emit(option);\n this.justSelected = true;\n this.close();\n this.inputEl()?.nativeElement.focus();\n }\n\n /** Closes the suggestion list without changing the current value. */\n close(): void {\n this.isOpen.set(false);\n this.focusedIndex.set(-1);\n }\n\n /** Moves keyboard focus to the underlying text input. */\n focus(): void {\n this.inputEl()?.nativeElement.focus();\n }\n\n private moveFocus(delta: number): void {\n const opts = this.filteredOptions();\n if (opts.length === 0) return;\n let idx = this.focusedIndex() + delta;\n while (idx >= 0 && idx < opts.length && opts[idx].disabled) {\n idx += delta;\n }\n if (idx < 0 || idx >= opts.length) return;\n this.focusedIndex.set(idx);\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event): void {\n if (!this.isOpen()) return;\n const host = this.hostEl()?.nativeElement;\n if (host && !host.contains(event.target as Node)) {\n this.close();\n }\n }\n}\n","<div\n #hostEl\n class=\"ea-autocomplete\">\n @if (label()) {\n <label\n class=\"ea-autocomplete__label\"\n [for]=\"id()\"\n [class.ea-autocomplete__label--required]=\"required()\">\n {{ label() }}\n </label>\n }\n\n <div\n class=\"ea-autocomplete__wrapper\"\n [ngClass]=\"wrapperClasses()\">\n <span class=\"ea-autocomplete__prefix\">\n <ng-content select=\"[slot=prefix]\" />\n </span>\n\n <input\n #inputEl\n class=\"ea-autocomplete__input\"\n type=\"text\"\n autocomplete=\"off\"\n role=\"combobox\"\n [id]=\"id()\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"isDisabled()\"\n [readOnly]=\"readonly()\"\n [required]=\"required()\"\n [value]=\"value()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-haspopup]=\"'listbox'\"\n [attr.aria-autocomplete]=\"'list'\"\n [attr.aria-controls]=\"id() + '-listbox'\"\n [attr.aria-activedescendant]=\"\n focusedIndex() >= 0 ? id() + '-option-' + focusedIndex() : null\n \"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (input)=\"handleInput($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\"\n (keydown)=\"handleKeydown($event)\" />\n\n <span class=\"ea-autocomplete__suffix\">\n <ng-content select=\"[slot=suffix]\" />\n </span>\n </div>\n\n @if (showList()) {\n <ul\n class=\"ea-autocomplete__listbox\"\n role=\"listbox\"\n [id]=\"id() + '-listbox'\">\n @for (option of filteredOptions(); track option.value; let i = $index) {\n <li\n class=\"ea-autocomplete__option\"\n role=\"option\"\n [id]=\"id() + '-option-' + i\"\n [class.ea-autocomplete__option--focused]=\"i === focusedIndex()\"\n [class.ea-autocomplete__option--disabled]=\"option.disabled\"\n [attr.aria-selected]=\"i === focusedIndex()\"\n [attr.aria-disabled]=\"option.disabled || null\"\n (mousedown)=\"selectOption(option)\"\n (mouseenter)=\"focusedIndex.set(i)\">\n {{ option.label }}\n </li>\n }\n @if (showEmpty()) {\n <li\n class=\"ea-autocomplete__empty\"\n role=\"presentation\">\n {{ resolvedEmptyMessage() }}\n </li>\n }\n </ul>\n }\n\n @if (showError()) {\n <p\n class=\"ea-autocomplete__message ea-autocomplete__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-autocomplete__message ea-autocomplete__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-camera',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"1.5\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z\" />\n <circle\n cx=\"12\"\n cy=\"13\"\n r=\"4\" />\n </svg>\n `,\n})\nexport class CameraIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-minus',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"5\"\n y1=\"12\"\n x2=\"19\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class MinusIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-plus',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"5\"\n x2=\"12\"\n y2=\"19\" />\n <line\n x1=\"5\"\n y1=\"12\"\n x2=\"19\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class PlusIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-rotate-ccw',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"1 4 1 10 7 10\" />\n <path d=\"M3.51 15a9 9 0 1 0 2.13-9.36L1 10\" />\n </svg>\n `,\n})\nexport class RotateCcwIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-trash',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"3 6 5 6 21 6\" />\n <path\n d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\" />\n </svg>\n `,\n})\nexport class TrashIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-upload',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"1.5\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\" />\n <polyline points=\"17 8 12 3 7 8\" />\n <line\n x1=\"12\"\n y1=\"3\"\n x2=\"12\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class UploadIconComponent {}\n","import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\n/** Shape preset of a skeleton placeholder. */\nexport type SkeletonVariant = 'text' | 'circle' | 'rect';\n\n/**\n * Loading placeholder rendered as a pulsing block in one of three shapes.\n * Honours `prefers-reduced-motion` by suppressing the pulse animation when\n * the user has expressed that preference.\n */\n@Component({\n selector: 'ea-skeleton',\n templateUrl: './skeleton.component.html',\n styleUrl: './skeleton.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkeletonComponent {\n readonly variant = input<SkeletonVariant>('text');\n readonly width = input<string | undefined>(undefined);\n readonly height = input<string | undefined>(undefined);\n readonly animated = input<boolean>(true);\n\n readonly hostStyles = computed(() => {\n const styles: Record<string, string> = {};\n if (this.width()) styles['width'] = this.width()!;\n if (this.height()) styles['height'] = this.height()!;\n return styles;\n });\n\n readonly hostClasses = computed(() => ({\n [`ea-skeleton--${this.variant()}`]: true,\n 'ea-skeleton--animated': this.animated(),\n }));\n}\n","<div\n class=\"ea-skeleton\"\n [class.ea-skeleton--text]=\"variant() === 'text'\"\n [class.ea-skeleton--circle]=\"variant() === 'circle'\"\n [class.ea-skeleton--rect]=\"variant() === 'rect'\"\n [class.ea-skeleton--animated]=\"animated()\"\n [style]=\"hostStyles()\"\n aria-hidden=\"true\">\n</div>\n","import {\n Directive,\n ElementRef,\n OnDestroy,\n Renderer2,\n inject,\n input,\n} from '@angular/core';\n\n/** Placement of the tooltip relative to its host element. */\nexport type TooltipPosition = 'top' | 'bottom' | 'left' | 'right';\n\n/**\n * Attaches a positioned tooltip to its host element. Shows on hover and\n * focus, hides on leave/blur or Escape, and wires up `aria-describedby` so\n * the tooltip text is announced to assistive technology.\n */\n@Directive({\n selector: '[eaTooltip]',\n})\nexport class TooltipDirective implements OnDestroy {\n private readonly el = inject(ElementRef);\n private readonly renderer = inject(Renderer2);\n\n readonly eaTooltip = input.required<string>();\n readonly tooltipPosition = input<TooltipPosition>('top');\n\n private tooltipEl: HTMLElement | null = null;\n private readonly tooltipId = `ea-tooltip-${Math.random().toString(36).slice(2, 9)}`;\n\n // Touch devices fire `mouseenter` on tap but never fire `mouseleave` until\n // the user taps elsewhere, leaving hover-driven tooltips latched open. Track\n // hover capability reactively via the MediaQueryList so pointer listeners\n // are attached/detached when the device gains or loses hover (DevTools mobile\n // mode toggling, Bluetooth peripherals connecting, etc.) without a refresh.\n private readonly hoverMql =\n typeof window !== 'undefined' && typeof window.matchMedia === 'function'\n ? window.matchMedia('(hover: hover)')\n : null;\n\n private readonly showHandler = () => this.show();\n private readonly hideHandler = () => this.hide();\n private readonly keydownHandler = (event: KeyboardEvent) => {\n if (event.key === 'Escape' && this.tooltipEl) {\n this.hide();\n }\n };\n private readonly hoverChangeHandler = (event: MediaQueryListEvent) =>\n this.syncPointerListeners(event.matches);\n\n constructor() {\n const native = this.el.nativeElement;\n // Focus/blur/keydown always wire up — keyboard users benefit on any device.\n native.addEventListener('focus', this.showHandler);\n native.addEventListener('blur', this.hideHandler);\n native.addEventListener('keydown', this.keydownHandler);\n\n this.syncPointerListeners(this.hoverMql?.matches ?? true);\n this.hoverMql?.addEventListener('change', this.hoverChangeHandler);\n }\n\n ngOnDestroy(): void {\n const native = this.el.nativeElement;\n native.removeEventListener('mouseenter', this.showHandler);\n native.removeEventListener('mouseleave', this.hideHandler);\n native.removeEventListener('focus', this.showHandler);\n native.removeEventListener('blur', this.hideHandler);\n native.removeEventListener('keydown', this.keydownHandler);\n this.hoverMql?.removeEventListener('change', this.hoverChangeHandler);\n this.hide();\n }\n\n private syncPointerListeners(canHover: boolean): void {\n const native = this.el.nativeElement;\n // Remove first to keep this idempotent — addEventListener with the same\n // handler is a no-op anyway, but pairing keeps the bookkeeping obvious.\n native.removeEventListener('mouseenter', this.showHandler);\n native.removeEventListener('mouseleave', this.hideHandler);\n if (canHover) {\n native.addEventListener('mouseenter', this.showHandler);\n native.addEventListener('mouseleave', this.hideHandler);\n } else {\n this.hide();\n }\n }\n\n private show(): void {\n if (this.tooltipEl || !this.eaTooltip()) return;\n\n this.tooltipEl = this.renderer.createElement('div');\n this.renderer.addClass(this.tooltipEl, 'ea-tooltip');\n this.renderer.addClass(this.tooltipEl, `ea-tooltip--${this.tooltipPosition()}`);\n this.renderer.setAttribute(this.tooltipEl, 'role', 'tooltip');\n this.renderer.setAttribute(this.tooltipEl, 'id', this.tooltipId);\n this.tooltipEl!.textContent = this.eaTooltip();\n\n this.renderer.appendChild(document.body, this.tooltipEl);\n this.appendDescribedBy();\n this.positionTooltip();\n }\n\n private hide(): void {\n if (this.tooltipEl) {\n this.tooltipEl.remove();\n this.tooltipEl = null;\n this.removeDescribedBy();\n }\n }\n\n private appendDescribedBy(): void {\n const native = this.el.nativeElement;\n const existing = (native.getAttribute('aria-describedby') ?? '').trim();\n const tokens = existing ? existing.split(/\\s+/) : [];\n if (!tokens.includes(this.tooltipId)) tokens.push(this.tooltipId);\n this.renderer.setAttribute(native, 'aria-describedby', tokens.join(' '));\n }\n\n private removeDescribedBy(): void {\n const native = this.el.nativeElement;\n const existing = (native.getAttribute('aria-describedby') ?? '').trim();\n const tokens = existing.split(/\\s+/).filter((t: string) => t && t !== this.tooltipId);\n if (tokens.length) {\n this.renderer.setAttribute(native, 'aria-describedby', tokens.join(' '));\n } else {\n this.renderer.removeAttribute(native, 'aria-describedby');\n }\n }\n\n private positionTooltip(): void {\n if (!this.tooltipEl) return;\n\n const hostRect = this.el.nativeElement.getBoundingClientRect();\n const tooltipRect = this.tooltipEl.getBoundingClientRect();\n const gap = 8;\n\n let top: number;\n let left: number;\n\n switch (this.tooltipPosition()) {\n case 'top':\n top = hostRect.top - tooltipRect.height - gap;\n left = hostRect.left + (hostRect.width - tooltipRect.width) / 2;\n break;\n case 'bottom':\n top = hostRect.bottom + gap;\n left = hostRect.left + (hostRect.width - tooltipRect.width) / 2;\n break;\n case 'left':\n top = hostRect.top + (hostRect.height - tooltipRect.height) / 2;\n left = hostRect.left - tooltipRect.width - gap;\n break;\n case 'right':\n top = hostRect.top + (hostRect.height - tooltipRect.height) / 2;\n left = hostRect.right + gap;\n break;\n }\n\n this.renderer.setStyle(this.tooltipEl, 'top', `${top + window.scrollY}px`);\n this.renderer.setStyle(this.tooltipEl, 'left', `${left + window.scrollX}px`);\n }\n}\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Injector,\n OnDestroy,\n ViewEncapsulation,\n afterNextRender,\n computed,\n effect,\n inject,\n input,\n output,\n signal,\n untracked,\n viewChild,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { CameraIconComponent } from '../icons/camera.component';\nimport { MinusIconComponent } from '../icons/minus.component';\nimport { PlusIconComponent } from '../icons/plus.component';\nimport { RotateCcwIconComponent } from '../icons/rotate-ccw.component';\nimport { TrashIconComponent } from '../icons/trash.component';\nimport { UploadIconComponent } from '../icons/upload.component';\nimport { SkeletonComponent } from '../skeleton/skeleton.component';\nimport { TooltipDirective } from '../tooltip/tooltip.directive';\n\n/** Crop mask shape applied to the exported image. */\nexport type AvatarEditorShape = 'circle' | 'square';\n\n/** Result of a successful crop, providing both a `Blob` and a data URL. */\nexport interface AvatarEditorCropEvent {\n blob: Blob;\n dataUrl: string;\n}\n\n/** Persisted pan/zoom state, suitable for restoring an in-progress edit. */\nexport interface AvatarEditorCropState {\n zoom: number;\n offsetX: number;\n offsetY: number;\n}\n\n/**\n * Canvas-based image editor for cropping avatars. Supports drag-and-drop\n * upload, mouse/touch panning, zoom via slider or scroll wheel, and exports\n * the cropped image as either a `Blob` or a data URL.\n */\n@Component({\n selector: 'ea-avatar-editor',\n imports: [\n NgClass,\n CameraIconComponent,\n MinusIconComponent,\n PlusIconComponent,\n RotateCcwIconComponent,\n SkeletonComponent,\n TrashIconComponent,\n UploadIconComponent,\n TooltipDirective,\n ],\n templateUrl: './avatar-editor.component.html',\n styleUrl: './avatar-editor.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AvatarEditorComponent implements OnDestroy {\n readonly canvasEl = viewChild<ElementRef<HTMLCanvasElement>>('canvasEl');\n readonly fileInputEl = viewChild<ElementRef<HTMLInputElement>>('fileInputEl');\n protected readonly i18n = inject(EagamiI18nService);\n\n readonly shape = input<AvatarEditorShape>('circle');\n readonly canvasSize = input<number>(200);\n readonly currentSrc = input<string | undefined>(undefined);\n readonly loading = input<boolean>(false);\n readonly accept = input<string>('image/*');\n readonly maxFileSize = input<number>(5 * 1024 * 1024); // 5 MB\n readonly minZoom = input<number>(1);\n readonly maxZoom = input<number>(3);\n readonly exportQuality = input<number>(0.92);\n readonly exportType = input<string>('image/png');\n\n readonly cropState = input<AvatarEditorCropState | null | undefined>();\n\n /** Fires when the user finalises a crop via {@link exportCrop}; payload contains both `Blob` and data URL. */\n readonly cropped = output<AvatarEditorCropEvent>();\n /** Fires when a file is chosen from disk or dropped onto the editor. */\n readonly fileSelected = output<File>();\n /** Fires when the current image is cleared via the remove control. */\n readonly removed = output<void>();\n /** Fires with a human-readable message when validation fails (wrong type, oversized file, etc.). */\n readonly errored = output<string>();\n /** Fires whenever the user pans or zooms the image; useful for persisting in-progress crops. */\n readonly cropStateChanged = output<AvatarEditorCropState>();\n\n readonly hasImage = signal(false);\n readonly isDragOver = signal(false);\n readonly isAtOriginal = signal(false);\n readonly isLoading = computed(() => this.isFetching() || this.loading());\n readonly zoom = signal(1);\n readonly canRevert = computed(() => !this.isAtOriginal() && this.originalCaptured);\n /** True when the visible crop is darker than mid-grey; drives the `--on-light` class on the overlay so the \"Change photo\" affordance stays readable. */\n readonly isImageDark = signal(true);\n\n private image: HTMLImageElement | null = null;\n private offsetX = 0;\n private offsetY = 0;\n private dragStartX = 0;\n private dragStartY = 0;\n private isDragging = false;\n private hasDragged = false;\n private initialOffsetX = 0;\n private initialOffsetY = 0;\n private _suppressCropStateEmit = false;\n private readonly isFetching = signal(false);\n private originalCaptured = false;\n private originalImage: HTMLImageElement | null = null;\n private originalCropState: { zoom: number; offsetX: number; offsetY: number } | null =\n null;\n\n readonly hostClasses = computed(() => ({\n [`ea-avatar-editor--${this.shape()}`]: true,\n 'ea-avatar-editor--has-image': this.hasImage(),\n 'ea-avatar-editor--drag-over': this.isDragOver(),\n }));\n\n private readonly injector = inject(Injector);\n private readonly boundWheel = (e: WheelEvent) => this.onWheel(e);\n\n constructor() {\n effect(() => {\n const src = this.currentSrc();\n if (!src) {\n this.isFetching.set(false);\n if (!this.originalCaptured) {\n this.originalCaptured = true;\n this.originalImage = null;\n this.originalCropState = null;\n this.isAtOriginal.set(true);\n }\n return;\n }\n this.originalCaptured = false;\n this.originalImage = null;\n this.originalCropState = null;\n this.loadFromUrl(src, untracked(() => this.cropState()) ?? null, true);\n });\n }\n\n ngOnDestroy(): void {\n const canvas = this.canvasEl()?.nativeElement;\n canvas?.removeEventListener('wheel', this.boundWheel);\n }\n\n onDragOver(event: DragEvent): void {\n event.preventDefault();\n event.stopPropagation();\n this.isDragOver.set(true);\n }\n\n onDragLeave(event: DragEvent): void {\n event.preventDefault();\n event.stopPropagation();\n this.isDragOver.set(false);\n }\n\n onDrop(event: DragEvent): void {\n event.preventDefault();\n event.stopPropagation();\n this.isDragOver.set(false);\n\n const file = event.dataTransfer?.files[0];\n if (file) this.loadFile(file);\n }\n\n onFileSelected(event: Event): void {\n const input = event.target as HTMLInputElement;\n const file = input.files?.[0];\n if (file) this.loadFile(file);\n input.value = '';\n }\n\n /** Opens the native file picker dialog. */\n openFilePicker(): void {\n this.fileInputEl()?.nativeElement.click();\n }\n\n onMouseDown(event: MouseEvent): void {\n if (!this.hasImage()) return;\n event.preventDefault();\n this.isDragging = true;\n this.hasDragged = false;\n this.dragStartX = event.clientX;\n this.dragStartY = event.clientY;\n this.initialOffsetX = this.offsetX;\n this.initialOffsetY = this.offsetY;\n\n document.addEventListener('mousemove', this.onMouseMoveBound);\n document.addEventListener('mouseup', this.onMouseUpBound);\n }\n\n onTouchStart(event: TouchEvent): void {\n if (!this.hasImage() || event.touches.length !== 1) return;\n const touch = event.touches[0];\n this.isDragging = true;\n this.hasDragged = false;\n this.dragStartX = touch.clientX;\n this.dragStartY = touch.clientY;\n this.initialOffsetX = this.offsetX;\n this.initialOffsetY = this.offsetY;\n\n document.addEventListener('touchmove', this.onTouchMoveBound, { passive: false });\n document.addEventListener('touchend', this.onTouchEndBound);\n }\n\n private readonly onMouseMoveBound = (e: MouseEvent) => this.onMouseMove(e);\n private readonly onMouseUpBound = () => this.onMouseUp();\n private readonly onTouchMoveBound = (e: TouchEvent) => this.onTouchMove(e);\n private readonly onTouchEndBound = () => this.onTouchEnd();\n\n private onMouseMove(event: MouseEvent): void {\n if (!this.isDragging) return;\n const dx = event.clientX - this.dragStartX;\n const dy = event.clientY - this.dragStartY;\n if (Math.abs(dx) > 3 || Math.abs(dy) > 3) {\n this.hasDragged = true;\n this.isAtOriginal.set(false);\n }\n this.offsetX = this.initialOffsetX + dx;\n this.offsetY = this.initialOffsetY + dy;\n this.clampOffset();\n this.draw();\n this.emitCropStateChange();\n }\n\n private onMouseUp(): void {\n if (!this.hasDragged) this.openFilePicker();\n this.isDragging = false;\n document.removeEventListener('mousemove', this.onMouseMoveBound);\n document.removeEventListener('mouseup', this.onMouseUpBound);\n }\n\n private onTouchMove(event: TouchEvent): void {\n if (!this.isDragging || event.touches.length !== 1) return;\n event.preventDefault();\n const touch = event.touches[0];\n const dx = touch.clientX - this.dragStartX;\n const dy = touch.clientY - this.dragStartY;\n if (Math.abs(dx) > 3 || Math.abs(dy) > 3) {\n this.hasDragged = true;\n this.isAtOriginal.set(false);\n }\n this.offsetX = this.initialOffsetX + dx;\n this.offsetY = this.initialOffsetY + dy;\n this.clampOffset();\n this.draw();\n this.emitCropStateChange();\n }\n\n private onTouchEnd(): void {\n if (!this.hasDragged) this.openFilePicker();\n this.isDragging = false;\n document.removeEventListener('touchmove', this.onTouchMoveBound);\n document.removeEventListener('touchend', this.onTouchEndBound);\n }\n\n private onWheel(event: WheelEvent): void {\n if (!this.hasImage()) return;\n event.preventDefault();\n const delta = event.deltaY > 0 ? -0.1 : 0.1;\n this.setZoom(this.zoom() + delta);\n }\n\n onCanvasKeydown(event: KeyboardEvent): void {\n if (!this.hasImage() || this.isLoading()) return;\n const step = event.shiftKey ? 20 : 5;\n let handled = false;\n\n switch (event.key) {\n case 'ArrowLeft':\n this.offsetX += step;\n handled = true;\n break;\n case 'ArrowRight':\n this.offsetX -= step;\n handled = true;\n break;\n case 'ArrowUp':\n this.offsetY += step;\n handled = true;\n break;\n case 'ArrowDown':\n this.offsetY -= step;\n handled = true;\n break;\n case '+':\n case '=':\n this.setZoom(this.zoom() + 0.1);\n event.preventDefault();\n return;\n case '-':\n case '_':\n this.setZoom(this.zoom() - 0.1);\n event.preventDefault();\n return;\n }\n\n if (handled) {\n event.preventDefault();\n this.isAtOriginal.set(false);\n this.clampOffset();\n this.draw();\n this.emitCropStateChange();\n }\n }\n\n /** Sets the zoom level, clamped to the configured `minZoom`/`maxZoom` range. */\n setZoom(value: number): void {\n this.isAtOriginal.set(false);\n const clamped = Math.min(this.maxZoom(), Math.max(this.minZoom(), value));\n this.zoom.set(Math.round(clamped * 100) / 100);\n this.clampOffset();\n this.draw();\n this.emitCropStateChange();\n }\n\n onZoomInput(event: Event): void {\n const value = parseFloat((event.target as HTMLInputElement).value);\n this.setZoom(value);\n }\n\n /** Clears the loaded image and resets pan/zoom to defaults. */\n removeImage(): void {\n this.image = null;\n this.hasImage.set(false);\n this.isFetching.set(false);\n this.zoom.set(1);\n this.offsetX = 0;\n this.offsetY = 0;\n this.clearCanvas();\n this.isAtOriginal.set(this.originalCaptured && !this.originalImage);\n this.removed.emit();\n }\n\n /** Marks the current image and crop state as the baseline for {@link revertImage}. */\n captureOriginal(): void {\n this.originalCaptured = true;\n this.originalImage = this.image;\n this.originalCropState = this.image\n ? { zoom: this.zoom(), offsetX: this.offsetX, offsetY: this.offsetY }\n : null;\n this.isAtOriginal.set(true);\n }\n\n /** Restores the image and crop state captured by the most recent {@link captureOriginal}. */\n revertImage(): void {\n if (!this.originalCaptured) return;\n\n if (this.originalImage) {\n this.image = this.originalImage;\n this.hasImage.set(true);\n\n const crop = this.originalCropState;\n if (crop) {\n this.zoom.set(Math.min(this.maxZoom(), Math.max(this.minZoom(), crop.zoom)));\n this.offsetX = crop.offsetX;\n this.offsetY = crop.offsetY;\n this.clampOffset();\n } else {\n this.zoom.set(1);\n this.centerImage();\n }\n\n this.isAtOriginal.set(true);\n this.scheduleDrawAfterRender();\n } else {\n this.image = null;\n this.hasImage.set(false);\n this.zoom.set(1);\n this.offsetX = 0;\n this.offsetY = 0;\n this.clearCanvas();\n this.isAtOriginal.set(true);\n }\n }\n\n /** Renders the current crop to an offscreen canvas, emits `cropped`, and resolves with the resulting `Blob`. */\n exportCrop(): Promise<Blob> {\n return new Promise((resolve, reject) => {\n if (!this.image) {\n reject(new Error('No image loaded'));\n return;\n }\n\n const size = this.canvasSize();\n const offscreen = document.createElement('canvas');\n offscreen.width = size;\n offscreen.height = size;\n const ctx = offscreen.getContext('2d')!;\n\n if (this.shape() === 'circle') {\n ctx.beginPath();\n ctx.arc(size / 2, size / 2, size / 2, 0, Math.PI * 2);\n ctx.closePath();\n ctx.clip();\n }\n\n const { drawX, drawY, drawW, drawH } = this.getDrawParams();\n ctx.drawImage(this.image, drawX, drawY, drawW, drawH);\n\n offscreen.toBlob(\n blob => {\n if (blob) {\n const reader = new FileReader();\n reader.onloadend = () => {\n this.cropped.emit({ blob, dataUrl: reader.result as string });\n resolve(blob);\n };\n reader.readAsDataURL(blob);\n } else {\n reject(new Error('Canvas export failed'));\n }\n },\n this.exportType(),\n this.exportQuality(),\n );\n });\n }\n\n private loadFromUrl(\n url: string,\n cropState: AvatarEditorCropState | null = null,\n suppressEmit = false,\n ): void {\n this.isFetching.set(true);\n this._suppressCropStateEmit = suppressEmit;\n const img = new Image();\n img.crossOrigin = 'anonymous';\n img.onerror = () => {\n this.isFetching.set(false);\n this._suppressCropStateEmit = false;\n };\n img.onload = () => {\n this.image = img;\n this.hasImage.set(true);\n if (cropState) {\n this.zoom.set(Math.min(this.maxZoom(), Math.max(this.minZoom(), cropState.zoom)));\n this.offsetX = cropState.offsetX;\n this.offsetY = cropState.offsetY;\n this.clampOffset();\n } else {\n this.zoom.set(1);\n this.centerImage();\n }\n if (suppressEmit) {\n this.originalCaptured = true;\n this.originalImage = img;\n this.originalCropState = cropState\n ? { ...cropState }\n : { zoom: this.zoom(), offsetX: this.offsetX, offsetY: this.offsetY };\n this.isAtOriginal.set(true);\n }\n this.scheduleDrawAfterRender();\n };\n img.src = url;\n }\n\n private loadFile(file: File): void {\n if (!file.type.startsWith('image/')) {\n this.errored.emit('File must be an image');\n return;\n }\n if (file.size > this.maxFileSize()) {\n const maxMb = Math.round(this.maxFileSize() / (1024 * 1024));\n this.errored.emit(`File exceeds ${maxMb} MB limit`);\n return;\n }\n\n this.isAtOriginal.set(false);\n this.fileSelected.emit(file);\n\n const reader = new FileReader();\n reader.onload = e => {\n const img = new Image();\n img.onload = () => {\n this.image = img;\n this.hasImage.set(true);\n this.zoom.set(1);\n this.centerImage();\n this.scheduleDrawAfterRender();\n };\n img.src = e.target?.result as string;\n };\n reader.readAsDataURL(file);\n }\n\n private scheduleDrawAfterRender(): void {\n afterNextRender(\n () => {\n this.draw();\n this.isFetching.set(false);\n this._suppressCropStateEmit = false;\n const canvas = this.canvasEl()?.nativeElement;\n canvas?.removeEventListener('wheel', this.boundWheel);\n canvas?.addEventListener('wheel', this.boundWheel, { passive: false });\n },\n { injector: this.injector },\n );\n }\n\n private centerImage(): void {\n if (!this.image) return;\n const size = this.canvasSize();\n const scale = this.getScale();\n const drawW = this.image.width * scale;\n const drawH = this.image.height * scale;\n this.offsetX = (size - drawW) / 2;\n this.offsetY = (size - drawH) / 2;\n }\n\n private getScale(): number {\n if (!this.image) return 1;\n const size = this.canvasSize();\n const baseScale = Math.max(size / this.image.width, size / this.image.height);\n return baseScale * this.zoom();\n }\n\n private getDrawParams(): {\n drawX: number;\n drawY: number;\n drawW: number;\n drawH: number;\n } {\n if (!this.image) return { drawX: 0, drawY: 0, drawW: 0, drawH: 0 };\n const scale = this.getScale();\n return {\n drawX: this.offsetX,\n drawY: this.offsetY,\n drawW: this.image.width * scale,\n drawH: this.image.height * scale,\n };\n }\n\n private clampOffset(): void {\n if (!this.image) return;\n const size = this.canvasSize();\n const { drawW, drawH } = this.getDrawParams();\n\n this.offsetX = Math.min(0, Math.max(size - drawW, this.offsetX));\n this.offsetY = Math.min(0, Math.max(size - drawH, this.offsetY));\n }\n\n private draw(): void {\n const canvas = this.canvasEl()?.nativeElement;\n if (!canvas || !this.image) return;\n\n const ctx = canvas.getContext('2d')!;\n const size = this.canvasSize();\n canvas.width = size;\n canvas.height = size;\n\n ctx.clearRect(0, 0, size, size);\n\n const { drawX, drawY, drawW, drawH } = this.getDrawParams();\n ctx.drawImage(this.image, drawX, drawY, drawW, drawH);\n\n this.updateImageDarkness(ctx, size);\n\n // Draw overlay mask\n ctx.fillStyle = 'rgba(0, 0, 0, 0.5)';\n ctx.fillRect(0, 0, size, size);\n\n ctx.globalCompositeOperation = 'destination-out';\n if (this.shape() === 'circle') {\n ctx.beginPath();\n ctx.arc(size / 2, size / 2, size / 2, 0, Math.PI * 2);\n ctx.fill();\n } else {\n ctx.fillRect(0, 0, size, size);\n }\n\n ctx.globalCompositeOperation = 'destination-over';\n ctx.drawImage(this.image, drawX, drawY, drawW, drawH);\n ctx.globalCompositeOperation = 'source-over';\n }\n\n /**\n * Samples the visible crop region and stores whether it's darker than\n * mid-grey, so the hover overlay can flip its label and icon between\n * white (on dark photos) and black (on light photos).\n *\n * Restricts sampling to the inscribed circle for circle crops to ignore\n * the soon-to-be-masked corners. Uses Rec. 601 perceptual luminance\n * weights; transparent pixels and CORS-tainted canvases default to a\n * \"dark\" assumption (white ink).\n */\n private updateImageDarkness(ctx: CanvasRenderingContext2D, size: number): void {\n let data: Uint8ClampedArray;\n try {\n data = ctx.getImageData(0, 0, size, size).data;\n } catch {\n this.isImageDark.set(true);\n return;\n }\n\n const isCircle = this.shape() === 'circle';\n const cx = size / 2;\n const cy = size / 2;\n const radiusSq = cx * cx;\n\n let sum = 0;\n let count = 0;\n for (let y = 0; y < size; y++) {\n for (let x = 0; x < size; x++) {\n if (isCircle) {\n const dx = x - cx;\n const dy = y - cy;\n if (dx * dx + dy * dy > radiusSq) continue;\n }\n const i = (y * size + x) * 4;\n if (data[i + 3] === 0) continue;\n sum += 0.299 * data[i] + 0.587 * data[i + 1] + 0.114 * data[i + 2];\n count++;\n }\n }\n\n // Threshold biased above mid-grey (128) so images on the border between\n // light and dark still get the cleaner white ink; only clearly-bright\n // photos flip to black.\n if (count > 0) this.isImageDark.set(sum / count < 170);\n }\n\n private emitCropStateChange(): void {\n if (this._suppressCropStateEmit) return;\n this.cropStateChanged.emit({\n zoom: this.zoom(),\n offsetX: this.offsetX,\n offsetY: this.offsetY,\n });\n }\n\n private clearCanvas(): void {\n const canvas = this.canvasEl()?.nativeElement;\n if (!canvas) return;\n const ctx = canvas.getContext('2d')!;\n ctx.clearRect(0, 0, canvas.width, canvas.height);\n }\n}\n","<div\n class=\"ea-avatar-editor\"\n [ngClass]=\"hostClasses()\">\n <input\n #fileInputEl\n type=\"file\"\n class=\"ea-avatar-editor__file-input\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.upload\"\n [accept]=\"accept()\"\n (change)=\"onFileSelected($event)\" />\n\n @if (!hasImage() && !isLoading()) {\n <button\n type=\"button\"\n class=\"ea-avatar-editor__dropzone\"\n [style.width.px]=\"canvasSize()\"\n [style.height.px]=\"canvasSize()\"\n (click)=\"openFilePicker()\"\n (dragover)=\"onDragOver($event)\"\n (dragleave)=\"onDragLeave($event)\"\n (drop)=\"onDrop($event)\">\n <ea-icon-upload class=\"ea-avatar-editor__upload-icon\" />\n <span class=\"ea-avatar-editor__dropzone-text\">\n {{ i18n.messages().avatarEditor.dropzone }}\n </span>\n </button>\n }\n\n @if (hasImage() || isLoading()) {\n <div\n class=\"ea-avatar-editor__canvas-wrapper\"\n [style.width.px]=\"canvasSize()\"\n [style.height.px]=\"canvasSize()\"\n (dragover)=\"onDragOver($event)\"\n (dragleave)=\"onDragLeave($event)\"\n (drop)=\"onDrop($event)\">\n @if (isLoading()) {\n <ea-skeleton\n [variant]=\"shape() === 'circle' ? 'circle' : 'rect'\"\n [width]=\"canvasSize() + 'px'\"\n [height]=\"canvasSize() + 'px'\" />\n }\n\n @if (hasImage()) {\n <canvas\n #canvasEl\n class=\"ea-avatar-editor__canvas\"\n role=\"img\"\n tabindex=\"0\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.canvas\"\n [style.display]=\"isLoading() ? 'none' : 'block'\"\n [width]=\"canvasSize()\"\n [height]=\"canvasSize()\"\n (mousedown)=\"onMouseDown($event)\"\n (touchstart)=\"onTouchStart($event)\"\n (keydown)=\"onCanvasKeydown($event)\"></canvas>\n\n @if (!isLoading()) {\n <div\n class=\"ea-avatar-editor__canvas-overlay\"\n [class.ea-avatar-editor__canvas-overlay--on-light]=\"!isImageDark()\">\n <ea-icon-camera class=\"ea-avatar-editor__overlay-icon\" />\n <span>{{ i18n.messages().avatarEditor.change }}</span>\n </div>\n }\n }\n </div>\n }\n\n <div class=\"ea-avatar-editor__controls\">\n <button\n type=\"button\"\n class=\"ea-avatar-editor__icon-btn\"\n [eaTooltip]=\"i18n.messages().avatarEditor.revert\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.revert\"\n [disabled]=\"!canRevert() || isLoading()\"\n (click)=\"revertImage()\">\n <ea-icon-rotate-ccw />\n </button>\n\n <button\n type=\"button\"\n class=\"ea-avatar-editor__icon-btn\"\n [eaTooltip]=\"i18n.messages().avatarEditor.zoomOut\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.zoomOut\"\n [disabled]=\"!hasImage() || isLoading() || zoom() <= minZoom()\"\n (click)=\"setZoom(zoom() - 0.1)\">\n <ea-icon-minus />\n </button>\n\n <input\n type=\"range\"\n class=\"ea-avatar-editor__zoom-slider\"\n [min]=\"minZoom()\"\n [max]=\"maxZoom()\"\n step=\"0.01\"\n [value]=\"zoom()\"\n [disabled]=\"!hasImage() || isLoading()\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.zoom\"\n (input)=\"onZoomInput($event)\" />\n\n <button\n type=\"button\"\n class=\"ea-avatar-editor__icon-btn\"\n [eaTooltip]=\"i18n.messages().avatarEditor.zoomIn\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.zoomIn\"\n [disabled]=\"!hasImage() || isLoading() || zoom() >= maxZoom()\"\n (click)=\"setZoom(zoom() + 0.1)\">\n <ea-icon-plus />\n </button>\n\n <button\n type=\"button\"\n class=\"ea-avatar-editor__icon-btn ea-avatar-editor__icon-btn--danger\"\n [eaTooltip]=\"i18n.messages().avatarEditor.remove\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.remove\"\n [disabled]=\"!hasImage() || isLoading()\"\n (click)=\"removeImage()\">\n <ea-icon-trash />\n </button>\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-user',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2\" />\n <circle\n cx=\"12\"\n cy=\"7\"\n r=\"4\" />\n </svg>\n `,\n})\nexport class UserIconComponent {}\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\n\nimport { UserIconComponent } from '../icons/user.component';\n\n/** Diameter (or side length) preset for an avatar. */\nexport type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n/** Outline of the avatar — round or rounded-square. */\nexport type AvatarShape = 'circle' | 'square';\n\n/**\n * Compact image used to represent a user or entity. Falls back to initials\n * when no `src` is provided, then to a generic user icon when neither image\n * nor initials are available.\n */\n@Component({\n selector: 'ea-avatar',\n imports: [NgClass, UserIconComponent],\n templateUrl: './avatar.component.html',\n styleUrl: './avatar.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { style: 'display: inline-block; line-height: 0;' },\n})\nexport class AvatarComponent {\n readonly src = input<string | undefined>(undefined);\n readonly alt = input<string>('');\n readonly initials = input<string | undefined>(undefined);\n readonly size = input<AvatarSize>('md');\n readonly shape = input<AvatarShape>('circle');\n\n readonly hostClasses = computed(() => ({\n [`ea-avatar--${this.size()}`]: true,\n [`ea-avatar--${this.shape()}`]: true,\n }));\n\n readonly showImage = computed(() => !!this.src());\n readonly showInitials = computed(() => !this.src() && !!this.initials());\n readonly showFallback = computed(() => !this.src() && !this.initials());\n\n handleImageError(event: Event): void {\n (event.target as HTMLImageElement).style.display = 'none';\n }\n}\n","<div\n class=\"ea-avatar\"\n [ngClass]=\"hostClasses()\"\n [attr.aria-label]=\"alt() || initials() || null\"\n role=\"img\">\n @if (showImage()) {\n <img\n class=\"ea-avatar__image\"\n [src]=\"src()\"\n [alt]=\"alt()\"\n (error)=\"handleImageError($event)\" />\n }\n @if (showInitials()) {\n <span class=\"ea-avatar__initials\">{{ initials() }}</span>\n }\n @if (showFallback()) {\n <ea-icon-user class=\"ea-avatar__fallback\" />\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\n\n/** Semantic colour scheme of a badge. */\nexport type BadgeVariant = 'default' | 'success' | 'warning' | 'error' | 'info';\n/** Visual size of a badge. */\nexport type BadgeSize = 'sm' | 'md' | 'lg';\n\n/**\n * Compact pill-shaped indicator used to communicate status, counts, or labels\n * inline with surrounding content.\n */\n@Component({\n selector: 'ea-badge',\n imports: [NgClass],\n templateUrl: './badge.component.html',\n styleUrl: './badge.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class BadgeComponent {\n readonly variant = input<BadgeVariant>('default');\n readonly size = input<BadgeSize>('md');\n\n readonly hostClasses = computed(() => ({\n [`ea-badge--${this.variant()}`]: true,\n [`ea-badge--${this.size()}`]: true,\n }));\n}\n","<span\n class=\"ea-badge\"\n [ngClass]=\"hostClasses()\">\n <ng-content />\n</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-chevron-right',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"9 18 15 12 9 6\" />\n </svg>\n `,\n})\nexport class ChevronRightIconComponent {}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n inject,\n input,\n output,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { ChevronRightIconComponent } from '../icons/chevron-right.component';\n\n/** Visual style of the separator rendered between breadcrumb items. */\nexport type BreadcrumbsSeparator = 'chevron' | 'slash';\n\n/** Single entry in a breadcrumb trail. */\nexport interface BreadcrumbItem {\n label: string;\n href?: string;\n disabled?: boolean;\n}\n\n/** Payload emitted when a breadcrumb is activated. */\nexport interface BreadcrumbClickEvent {\n item: BreadcrumbItem;\n index: number;\n event: MouseEvent;\n}\n\n/**\n * Navigation trail that shows the user's location within a hierarchy. Items\n * with an `href` render as links, others render as buttons; the final item is\n * always treated as the current page and is non-interactive.\n */\n@Component({\n selector: 'ea-breadcrumbs',\n imports: [ChevronRightIconComponent],\n templateUrl: './breadcrumbs.component.html',\n styleUrl: './breadcrumbs.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class BreadcrumbsComponent {\n private readonly i18n = inject(EagamiI18nService);\n\n readonly items = input<BreadcrumbItem[]>([]);\n readonly separator = input<BreadcrumbsSeparator>('chevron');\n readonly ariaLabel = input<string | undefined>(undefined, {\n alias: 'aria-label',\n });\n\n /** Fires when a non-disabled, non-final breadcrumb is activated. */\n readonly clicked = output<BreadcrumbClickEvent>();\n\n /** Accessible label for the breadcrumb nav, falling back to the active locale. */\n readonly resolvedAriaLabel = computed(\n () => this.ariaLabel() ?? this.i18n.messages().breadcrumbs.label,\n );\n\n isLast(index: number): boolean {\n return index === this.items().length - 1;\n }\n\n handleClick(item: BreadcrumbItem, index: number, event: MouseEvent): void {\n if (item.disabled || this.isLast(index)) {\n event.preventDefault();\n return;\n }\n this.clicked.emit({ item, index, event });\n }\n}\n","<nav\n class=\"ea-breadcrumbs\"\n [attr.aria-label]=\"resolvedAriaLabel()\">\n <ol class=\"ea-breadcrumbs__list\">\n @for (item of items(); track $index; let i = $index; let last = $last) {\n <li class=\"ea-breadcrumbs__item\">\n @if (last) {\n <span\n class=\"ea-breadcrumbs__current\"\n aria-current=\"page\">\n {{ item.label }}\n </span>\n } @else if (item.disabled) {\n <span class=\"ea-breadcrumbs__link ea-breadcrumbs__link--disabled\">\n {{ item.label }}\n </span>\n } @else if (item.href) {\n <a\n class=\"ea-breadcrumbs__link\"\n [href]=\"item.href\"\n (click)=\"handleClick(item, i, $event)\">\n {{ item.label }}\n </a>\n } @else {\n <button\n type=\"button\"\n class=\"ea-breadcrumbs__link ea-breadcrumbs__link--button\"\n (click)=\"handleClick(item, i, $event)\">\n {{ item.label }}\n </button>\n }\n\n @if (!last) {\n @if (separator() === 'chevron') {\n <ea-icon-chevron-right\n class=\"ea-breadcrumbs__separator\"\n aria-hidden=\"true\" />\n } @else {\n <span\n class=\"ea-breadcrumbs__separator ea-breadcrumbs__separator--slash\"\n aria-hidden=\"true\">\n /\n </span>\n }\n }\n </li>\n }\n </ol>\n</nav>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n input,\n output,\n} from '@angular/core';\n\n/** Visual style of a button — drives colour and emphasis. */\nexport type ButtonVariant = 'primary' | 'secondary' | 'ghost' | 'danger';\n/** Visual size of a button. */\nexport type ButtonSize = 'sm' | 'md' | 'lg';\n/** HTML `type` attribute applied to the underlying `<button>` element. */\nexport type ButtonType = 'button' | 'submit' | 'reset';\n\n/**\n * Standard action button supporting primary, secondary, ghost, and danger\n * variants. Includes a loading state that swaps the label for a spinner while\n * preserving the rendered width.\n */\n@Component({\n selector: 'ea-button',\n templateUrl: './button.component.html',\n styleUrl: './button.component.scss',\n imports: [NgClass],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.ea-button--full-width]': 'fullWidth()',\n },\n})\nexport class ButtonComponent {\n // Inputs\n readonly variant = input<ButtonVariant>('primary');\n readonly size = input<ButtonSize>('md');\n readonly type = input<ButtonType>('button');\n readonly disabled = input<boolean>(false);\n readonly loading = input<boolean>(false);\n readonly fullWidth = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly ariaCurrent = input<string | undefined>(undefined, { alias: 'aria-current' });\n\n // Output\n /** Fires when the button is activated; suppressed while disabled or loading. */\n readonly clicked = output<MouseEvent>();\n\n // Derived\n readonly isDisabled = computed(() => this.disabled() || this.loading());\n\n readonly hostClasses = computed(() => ({\n [`ea-button--${this.variant()}`]: true,\n [`ea-button--${this.size()}`]: true,\n 'ea-button--full-width': this.fullWidth(),\n 'ea-button--loading': this.loading(),\n 'ea-button--disabled': this.isDisabled(),\n }));\n\n handleClick(event: MouseEvent): void {\n if (this.isDisabled()) {\n event.preventDefault();\n return;\n }\n this.clicked.emit(event);\n }\n}\n","<button\n class=\"ea-button\"\n [ngClass]=\"hostClasses()\"\n [type]=\"type()\"\n [disabled]=\"isDisabled()\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-current]=\"ariaCurrent() || null\"\n [attr.aria-busy]=\"loading() || null\"\n (click)=\"handleClick($event)\">\n @if (loading()) {\n <span\n class=\"ea-button__spinner\"\n aria-hidden=\"true\">\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\"\n stroke-dasharray=\"31.4\"\n stroke-dashoffset=\"10\" />\n </svg>\n </span>\n }\n\n <span\n class=\"ea-button__content\"\n [class.ea-button__content--hidden]=\"loading()\">\n <ng-content select=\"[slot=prefix]\" />\n <span class=\"ea-button__label\">\n <ng-content />\n </span>\n <ng-content select=\"[slot=suffix]\" />\n </span>\n</button>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\n\n/** Orientation of the divider rule. */\nexport type DividerOrientation = 'horizontal' | 'vertical';\n\n/**\n * Thin separator used to visually divide content. Renders horizontally by\n * default and may include an optional centred label (e.g. \"or\").\n */\n@Component({\n selector: 'ea-divider',\n imports: [NgClass],\n templateUrl: './divider.component.html',\n styleUrl: './divider.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class DividerComponent {\n readonly orientation = input<DividerOrientation>('horizontal');\n readonly label = input<string | undefined>(undefined);\n\n readonly hostClasses = computed(() => ({\n [`ea-divider--${this.orientation()}`]: true,\n 'ea-divider--with-label': !!this.label(),\n }));\n}\n","<div\n class=\"ea-divider\"\n [ngClass]=\"hostClasses()\"\n [attr.role]=\"'separator'\"\n [attr.aria-orientation]=\"orientation()\">\n @if (label()) {\n <span class=\"ea-divider__label\">{{ label() }}</span>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\n\nimport { DividerComponent } from '../divider/divider.component';\n\n/** Visual style of a card surface. */\nexport type CardVariant = 'elevated' | 'outlined' | 'filled';\n/** Padding preset applied to the card's content area. */\nexport type CardPadding = 'none' | 'sm' | 'md' | 'lg' | 'xl';\n/** Horizontal alignment of card header content. */\nexport type CardHeaderAlign = 'start' | 'center' | 'end';\n\n/**\n * Surface for grouping related content. Provides optional `header` and\n * `footer` content slots and supports elevated, outlined, and filled\n * variants. The card shadow can be customised per instance via the\n * `--ea-card-shadow` CSS custom property.\n */\n@Component({\n selector: 'ea-card',\n imports: [NgClass, DividerComponent],\n templateUrl: './card.component.html',\n styleUrl: './card.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class CardComponent {\n // Inputs\n readonly variant = input<CardVariant>('elevated');\n readonly padding = input<CardPadding>('md');\n readonly fullWidth = input<boolean>(false);\n readonly headerAlign = input<CardHeaderAlign>('center');\n readonly headerDivider = input<boolean>(false);\n\n // Computed\n readonly hostClasses = computed(() => ({\n [`ea-card--${this.variant()}`]: true,\n [`ea-card--padding-${this.padding()}`]: true,\n 'ea-card--full-width': this.fullWidth(),\n }));\n}\n","<div\n class=\"ea-card\"\n [ngClass]=\"hostClasses()\">\n <div\n class=\"ea-card__header\"\n [style.text-align]=\"headerAlign()\">\n <ng-content select=\"[slot=header]\" />\n </div>\n\n @if (headerDivider()) {\n <ea-divider class=\"ea-card__divider\" />\n }\n\n <div class=\"ea-card__body\">\n <ng-content />\n </div>\n\n <div class=\"ea-card__footer\">\n <ng-content select=\"[slot=footer]\" />\n </div>\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n/** Visual size of a checkbox. */\nexport type CheckboxSize = 'sm' | 'md' | 'lg';\n\n/**\n * Boolean form control with support for an indeterminate visual state. Pairs\n * a visually hidden native input with a custom checkmark and integrates with\n * Angular forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-checkbox',\n imports: [NgClass],\n templateUrl: './checkbox.component.html',\n styleUrl: './checkbox.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CheckboxComponent),\n multi: true,\n },\n ],\n})\nexport class CheckboxComponent implements ControlValueAccessor {\n // Inputs\n readonly label = input<string | undefined>(undefined);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly size = input<CheckboxSize>('md');\n readonly disabled = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly indeterminate = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-checkbox-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way checked binding\n readonly checked = model<boolean>(false);\n\n // Outputs\n /** Fires with the new checked state whenever the user toggles the checkbox. */\n readonly changed = output<boolean>();\n\n // Internal state\n private readonly _formDisabled = signal(false);\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly hostClasses = computed(() => ({\n [`ea-checkbox--${this.size()}`]: true,\n 'ea-checkbox--disabled': this.isDisabled(),\n 'ea-checkbox--checked': this.checked(),\n 'ea-checkbox--indeterminate': this.indeterminate(),\n 'ea-checkbox--error': this.hasError(),\n }));\n\n // ControlValueAccessor callbacks\n private onChange: (value: boolean) => void = () => {};\n private onTouched: () => void = () => {};\n\n // ControlValueAccessor\n writeValue(val: boolean): void {\n this.checked.set(!!val);\n }\n\n registerOnChange(fn: (value: boolean) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n // Handlers\n handleChange(): void {\n if (this.isDisabled()) return;\n const newValue = !this.checked();\n this.checked.set(newValue);\n this.onChange(newValue);\n this.onTouched();\n this.changed.emit(newValue);\n }\n}\n","<div class=\"ea-checkbox-field\">\n <label\n class=\"ea-checkbox\"\n [ngClass]=\"hostClasses()\"\n [for]=\"id()\">\n <input\n #inputEl\n type=\"checkbox\"\n class=\"ea-checkbox__input\"\n [id]=\"id()\"\n [checked]=\"checked()\"\n [disabled]=\"isDisabled()\"\n [required]=\"required()\"\n [indeterminate]=\"indeterminate()\"\n [attr.aria-checked]=\"indeterminate() ? 'mixed' : checked()\"\n [attr.aria-label]=\"!label() ? (ariaLabel() ?? null) : null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (change)=\"handleChange()\" />\n\n <span\n class=\"ea-checkbox__box\"\n aria-hidden=\"true\">\n @if (indeterminate()) {\n <svg\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M4 8h8\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\" />\n </svg>\n } @else if (checked()) {\n <svg\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M3.5 8.5L6.5 11.5L12.5 4.5\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg>\n }\n </span>\n\n @if (label()) {\n <span\n class=\"ea-checkbox__label\"\n [class.ea-checkbox__label--required]=\"required()\">\n {{ label() }}\n </span>\n }\n </label>\n\n @if (showError()) {\n <p\n class=\"ea-checkbox-field__message ea-checkbox-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-checkbox-field__message ea-checkbox-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-arrow-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"5\"\n x2=\"12\"\n y2=\"19\" />\n <polyline points=\"19 12 12 19 5 12\" />\n </svg>\n `,\n})\nexport class ArrowDownIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-arrow-up',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"19\"\n x2=\"12\"\n y2=\"5\" />\n <polyline points=\"5 12 12 5 19 12\" />\n </svg>\n `,\n})\nexport class ArrowUpIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-chevrons-up-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"7 15 12 20 17 15\" />\n <polyline points=\"17 9 12 4 7 9\" />\n </svg>\n `,\n})\nexport class ChevronsUpDownIconComponent {}\n","import { NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n TemplateRef,\n ViewEncapsulation,\n computed,\n contentChild,\n inject,\n input,\n model,\n output,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { ArrowDownIconComponent } from '../icons/arrow-down.component';\nimport { ArrowUpIconComponent } from '../icons/arrow-up.component';\nimport { ChevronsUpDownIconComponent } from '../icons/chevrons-up-down.component';\n\n/** Vertical density preset for table rows and header cells. */\nexport type DataTableDensity = 'compact' | 'comfortable' | 'spacious';\n\n/** Sort direction; `null` means no sort is applied. */\nexport type DataTableSortDirection = 'asc' | 'desc' | null;\n\n/** Column definition for the data table, including optional cell/header templates. */\nexport interface DataTableColumn<T = Record<string, unknown>> {\n key: string;\n label: string;\n sortable?: boolean;\n align?: 'left' | 'center' | 'right';\n width?: string;\n format?: (value: unknown) => string;\n cellTemplate?: TemplateRef<{ $implicit: T; value: unknown }>;\n headerTemplate?: TemplateRef<{ $implicit: DataTableColumn<T> }>;\n}\n\n/** Current sort state — which column is sorted and in which direction. */\nexport interface DataTableSortState {\n column: string;\n direction: DataTableSortDirection;\n}\n\n/**\n * Table for tabular data with sortable columns, sticky headers, and density\n * presets. Supports striping, borders, hoverable rows, and custom cell or\n * header templates via `ng-template`. Sort state is exposed as a two-way\n * `model()` binding.\n */\n@Component({\n selector: 'ea-data-table',\n imports: [\n NgClass,\n NgTemplateOutlet,\n ArrowUpIconComponent,\n ArrowDownIconComponent,\n ChevronsUpDownIconComponent,\n ],\n templateUrl: './data-table.component.html',\n styleUrl: './data-table.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class DataTableComponent<T = Record<string, unknown>> {\n private readonly i18n = inject(EagamiI18nService);\n\n readonly columns = input.required<DataTableColumn<T>[]>();\n readonly data = input.required<T[]>();\n readonly trackBy = input<keyof T | undefined>(undefined);\n readonly density = input<DataTableDensity>('comfortable');\n readonly stickyHeader = input<boolean>(false);\n readonly striped = input<boolean>(false);\n readonly hoverable = input<boolean>(true);\n readonly bordered = input<boolean>(false);\n readonly noDataText = input<string | undefined>(undefined);\n\n readonly sort = model<DataTableSortState>({ column: '', direction: null });\n\n /** Fires whenever the sort column or direction changes via header click. */\n readonly sorted = output<DataTableSortState>();\n\n readonly noDataTemplate = contentChild<TemplateRef<unknown>>('noData');\n\n /** Empty-state text, falling back to the active locale's translation. */\n readonly resolvedNoDataText = computed(\n () => this.noDataText() ?? this.i18n.messages().dataTable.noData,\n );\n\n readonly hostClasses = computed(() => ({\n [`ea-data-table--${this.density()}`]: true,\n 'ea-data-table--sticky': this.stickyHeader(),\n 'ea-data-table--striped': this.striped(),\n 'ea-data-table--hoverable': this.hoverable(),\n 'ea-data-table--bordered': this.bordered(),\n }));\n\n readonly sortedData = computed(() => {\n const items = this.data();\n const { column, direction } = this.sort();\n if (!column || !direction) return items;\n\n return [...items].sort((a, b) => {\n const valA = (a as Record<string, unknown>)[column];\n const valB = (b as Record<string, unknown>)[column];\n\n if (valA == null && valB == null) return 0;\n if (valA == null) return direction === 'asc' ? -1 : 1;\n if (valB == null) return direction === 'asc' ? 1 : -1;\n\n let comparison: number;\n if (typeof valA === 'number' && typeof valB === 'number') {\n comparison = valA - valB;\n } else if (typeof valA === 'string' && typeof valB === 'string') {\n comparison = valA.localeCompare(valB);\n } else {\n comparison = String(valA).localeCompare(String(valB));\n }\n\n return direction === 'asc' ? comparison : -comparison;\n });\n });\n\n getCellValue(row: T, key: string): unknown {\n return (row as Record<string, unknown>)[key];\n }\n\n onHeaderClick(col: DataTableColumn<T>): void {\n if (!col.sortable) return;\n\n const current = this.sort();\n let direction: DataTableSortDirection;\n\n if (current.column === col.key) {\n direction =\n current.direction === 'asc'\n ? 'desc'\n : current.direction === 'desc'\n ? null\n : 'asc';\n } else {\n direction = 'asc';\n }\n\n const next: DataTableSortState = { column: direction ? col.key : '', direction };\n this.sort.set(next);\n this.sorted.emit(next);\n }\n\n trackByFn(_index: number, item: T): unknown {\n const key = this.trackBy();\n return key ? (item as Record<string, unknown>)[key as string] : _index;\n }\n}\n","<div\n class=\"ea-data-table\"\n [ngClass]=\"hostClasses()\">\n <div class=\"ea-data-table__scroll\">\n <table class=\"ea-data-table__table\">\n <thead class=\"ea-data-table__head\">\n <tr class=\"ea-data-table__row ea-data-table__row--header\">\n @for (col of columns(); track col.key) {\n <th\n scope=\"col\"\n class=\"ea-data-table__cell ea-data-table__cell--header\"\n [class.ea-data-table__cell--sortable]=\"col.sortable\"\n [class.ea-data-table__cell--sorted]=\"\n sort().column === col.key && sort().direction\n \"\n [class.ea-data-table__cell--align-center]=\"col.align === 'center'\"\n [class.ea-data-table__cell--align-right]=\"col.align === 'right'\"\n [style.width]=\"col.width ?? null\"\n [attr.aria-sort]=\"\n sort().column === col.key && sort().direction === 'asc'\n ? 'ascending'\n : sort().column === col.key && sort().direction === 'desc'\n ? 'descending'\n : col.sortable\n ? 'none'\n : null\n \"\n (click)=\"onHeaderClick(col)\"\n (keydown.enter)=\"onHeaderClick(col)\"\n (keydown.space)=\"$event.preventDefault(); onHeaderClick(col)\"\n [attr.tabindex]=\"col.sortable ? 0 : null\">\n @if (col.headerTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"col.headerTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: col }\" />\n } @else {\n <span class=\"ea-data-table__header-text\">{{ col.label }}</span>\n }\n @if (col.sortable) {\n <span class=\"ea-data-table__sort-icon\">\n @if (sort().column === col.key && sort().direction === 'asc') {\n <ea-icon-arrow-up />\n } @else if (sort().column === col.key && sort().direction === 'desc') {\n <ea-icon-arrow-down />\n } @else {\n <ea-icon-chevrons-up-down />\n }\n </span>\n }\n </th>\n }\n </tr>\n </thead>\n <tbody class=\"ea-data-table__body\">\n @if (sortedData().length === 0) {\n <tr class=\"ea-data-table__row ea-data-table__row--empty\">\n <td\n class=\"ea-data-table__cell ea-data-table__cell--empty\"\n [attr.colspan]=\"columns().length\">\n @if (noDataTemplate()) {\n <ng-container [ngTemplateOutlet]=\"noDataTemplate()!\" />\n } @else {\n {{ resolvedNoDataText() }}\n }\n </td>\n </tr>\n } @else {\n @for (row of sortedData(); track trackByFn($index, row)) {\n <tr class=\"ea-data-table__row\">\n @for (col of columns(); track col.key) {\n <td\n class=\"ea-data-table__cell\"\n [class.ea-data-table__cell--align-center]=\"col.align === 'center'\"\n [class.ea-data-table__cell--align-right]=\"col.align === 'right'\">\n @if (col.cellTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"col.cellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: row,\n value: getCellValue(row, col.key),\n }\" />\n } @else if (col.format) {\n {{ col.format(getCellValue(row, col.key)) }}\n } @else {\n {{ getCellValue(row, col.key) }}\n }\n </td>\n }\n </tr>\n }\n }\n </tbody>\n </table>\n </div>\n <ng-content select=\"ea-paginator\" />\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n computed,\n forwardRef,\n inject,\n input,\n model,\n output,\n signal,\n viewChildren,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\n\n/** Visual size of each digit cell. */\nexport type CodeInputSize = 'sm' | 'md' | 'lg';\n\n/**\n * Verification code entry made up of one input per digit. Auto-advances on\n * input, supports paste of the full code at once, and integrates with Angular\n * forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-code-input',\n templateUrl: './code-input.component.html',\n styleUrl: './code-input.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CodeInputComponent),\n multi: true,\n },\n ],\n})\nexport class CodeInputComponent implements ControlValueAccessor {\n readonly digitEls = viewChildren<ElementRef<HTMLInputElement>>('digitEl');\n protected readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly label = input<string | undefined>(undefined);\n readonly placeholder = input<string>('');\n readonly length = input<number>(6);\n readonly size = input<CodeInputSize>('md');\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly id = input<string>(`ea-code-input-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way value binding\n readonly value = model<string>('');\n\n // Internal state\n readonly focusedIndex = signal<number>(-1);\n private readonly _formDisabled = signal(false);\n\n // Outputs\n /** Fires with the full code once every digit has been entered. */\n readonly completed = output<string>();\n\n // ControlValueAccessor callbacks\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly digits = computed(() => {\n const val = this.value();\n const len = this.length();\n return Array.from({ length: len }, (_, i) => val[i] ?? '');\n });\n\n readonly indices = computed(() => Array.from({ length: this.length() }, (_, i) => i));\n\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n handleInput(event: Event, index: number): void {\n if (this.readonly()) return;\n const input = event.target as HTMLInputElement;\n const char = input.value.replace(/[^0-9]/g, '').slice(-1);\n input.value = char;\n\n const current = this.value();\n const chars = current.padEnd(this.length(), ' ').split('');\n chars[index] = char;\n const newValue = chars.join('').replace(/ +$/, '');\n\n this.value.set(newValue);\n this.onChange(newValue);\n\n if (char && index < this.length() - 1) {\n this.focusDigit(index + 1);\n }\n\n if (newValue.length === this.length()) {\n this.completed.emit(newValue);\n }\n }\n\n handleKeydown(event: KeyboardEvent, index: number): void {\n const inputs = this.digitEls();\n\n if (event.key === 'Backspace') {\n if (this.readonly()) return;\n event.preventDefault();\n const current = this.value();\n const chars = current.padEnd(this.length(), ' ').split('');\n\n if (chars[index] && chars[index] !== ' ') {\n chars[index] = ' ';\n } else if (index > 0) {\n chars[index - 1] = ' ';\n this.focusDigit(index - 1);\n }\n\n const newValue = chars.join('').replace(/ +$/, '');\n this.value.set(newValue);\n this.onChange(newValue);\n } else if (event.key === 'ArrowLeft' && index > 0) {\n event.preventDefault();\n this.focusDigit(index - 1);\n } else if (event.key === 'ArrowRight' && index < inputs.length - 1) {\n event.preventDefault();\n this.focusDigit(index + 1);\n }\n }\n\n handlePaste(event: ClipboardEvent): void {\n event.preventDefault();\n if (this.readonly()) return;\n const pasted = (event.clipboardData?.getData('text') ?? '').replace(/[^0-9]/g, '');\n if (!pasted) return;\n\n const clipped = pasted.slice(0, this.length());\n this.value.set(clipped);\n this.onChange(clipped);\n\n const nextIndex = Math.min(clipped.length, this.length() - 1);\n this.focusDigit(nextIndex);\n\n if (clipped.length === this.length()) {\n this.completed.emit(clipped);\n }\n }\n\n handleFocus(index: number): void {\n this.focusedIndex.set(index);\n const input = this.digitEls()[index]?.nativeElement;\n input?.select();\n }\n\n handleBlur(): void {\n this.focusedIndex.set(-1);\n this.onTouched();\n }\n\n /** Moves keyboard focus to the next empty digit (or the last one when full). */\n focus(): void {\n const val = this.value();\n const index = Math.min(val.length, this.length() - 1);\n this.focusDigit(index);\n }\n\n private focusDigit(index: number): void {\n this.digitEls()[index]?.nativeElement.focus();\n }\n}\n","<div class=\"ea-code-input-field\">\n @if (label()) {\n <label\n class=\"ea-code-input-field__label\"\n [class.ea-code-input-field__label--required]=\"required()\"\n [id]=\"id() + '-label'\">\n {{ label() }}\n </label>\n }\n\n <div\n class=\"ea-code-input-group\"\n [class.ea-code-input-group--sm]=\"size() === 'sm'\"\n [class.ea-code-input-group--md]=\"size() === 'md'\"\n [class.ea-code-input-group--lg]=\"size() === 'lg'\"\n [class.ea-code-input-group--error]=\"hasError()\"\n [class.ea-code-input-group--disabled]=\"isDisabled()\"\n role=\"group\"\n [attr.aria-labelledby]=\"label() ? id() + '-label' : null\"\n [attr.aria-label]=\"!label() ? i18n.messages().codeInput.groupLabel(length()) : null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \">\n @for (i of indices(); track i) {\n <input\n #digitEl\n class=\"ea-code-input\"\n [class.ea-code-input--focused]=\"focusedIndex() === i\"\n [class.ea-code-input--filled]=\"digits()[i] !== ''\"\n type=\"text\"\n inputmode=\"numeric\"\n autocomplete=\"one-time-code\"\n maxlength=\"1\"\n [disabled]=\"isDisabled()\"\n [readOnly]=\"readonly()\"\n [required]=\"required()\"\n [value]=\"digits()[i]\"\n [placeholder]=\"placeholder()\"\n [attr.aria-label]=\"i18n.messages().codeInput.digitLabel(i + 1, length())\"\n [attr.aria-invalid]=\"hasError() || null\"\n (input)=\"handleInput($event, i)\"\n (keydown)=\"handleKeydown($event, i)\"\n (paste)=\"handlePaste($event)\"\n (focus)=\"handleFocus(i)\"\n (blur)=\"handleBlur()\" />\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-code-input-field__message ea-code-input-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-code-input-field__message ea-code-input-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-calendar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"4\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"16\"\n y1=\"2\"\n x2=\"16\"\n y2=\"6\" />\n <line\n x1=\"8\"\n y1=\"2\"\n x2=\"8\"\n y2=\"6\" />\n <line\n x1=\"3\"\n y1=\"10\"\n x2=\"21\"\n y2=\"10\" />\n </svg>\n `,\n})\nexport class CalendarIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-chevron-left',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"15 18 9 12 15 6\" />\n </svg>\n `,\n})\nexport class ChevronLeftIconComponent {}\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostListener,\n Injector,\n afterNextRender,\n computed,\n forwardRef,\n inject,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { AlertCircleIconComponent } from '../icons/alert-circle.component';\nimport { CalendarIconComponent } from '../icons/calendar.component';\nimport { ChevronLeftIconComponent } from '../icons/chevron-left.component';\nimport { ChevronRightIconComponent } from '../icons/chevron-right.component';\n\n/** Visual size of the date picker trigger. */\nexport type DatePickerSize = 'sm' | 'md' | 'lg';\n/** Locale-aware date format used for the displayed value. */\nexport type DatePickerFormat = 'short' | 'medium' | 'long';\n/** First day of the week in the calendar grid (0 = Sunday, 1 = Monday). */\nexport type DatePickerWeekStart = 0 | 1;\n/** Value accepted via `writeValue` — a `Date`, ISO/parseable string, or `null`. */\nexport type DatePickerValue = Date | string | null;\n\ninterface CalendarDay {\n date: Date;\n day: number;\n isCurrentMonth: boolean;\n isToday: boolean;\n isSelected: boolean;\n isDisabled: boolean;\n isFocused: boolean;\n}\n\n/**\n * Calendar popover for selecting a single date. Supports `min`/`max` bounds,\n * configurable week start, locale-aware formatting via `Intl.DateTimeFormat`,\n * and full keyboard navigation (arrows, PageUp/PageDown, Home/End, Enter,\n * Escape). Integrates with Angular forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-date-picker',\n imports: [\n NgClass,\n AlertCircleIconComponent,\n CalendarIconComponent,\n ChevronLeftIconComponent,\n ChevronRightIconComponent,\n ],\n templateUrl: './date-picker.component.html',\n styleUrl: './date-picker.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => DatePickerComponent),\n multi: true,\n },\n ],\n})\nexport class DatePickerComponent implements ControlValueAccessor {\n private readonly hostEl = viewChild<ElementRef<HTMLElement>>('hostEl');\n private readonly triggerEl = viewChild<ElementRef<HTMLButtonElement>>('triggerEl');\n private readonly injector = inject(Injector);\n protected readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly label = input<string | undefined>(undefined);\n /** Placeholder shown when no date is selected. Defaults to the active locale's text. */\n readonly placeholder = input<string | undefined>(undefined);\n readonly size = input<DatePickerSize>('md');\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly minDate = input<Date | null>(null);\n readonly maxDate = input<Date | null>(null);\n readonly format = input<DatePickerFormat>('medium');\n readonly weekStartsOn = input<DatePickerWeekStart>(1);\n readonly locale = input<string | undefined>(undefined);\n readonly id = input<string>(`ea-date-picker-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way value binding (Date at local midnight, or null)\n readonly value = model<Date | null>(null);\n\n // Outputs\n /** Fires when the selected date changes, including when cleared. */\n readonly changed = output<Date | null>();\n\n // Internal state\n readonly isOpen = signal(false);\n readonly viewYear = signal(new Date().getFullYear());\n readonly viewMonth = signal(new Date().getMonth());\n readonly focusedDate = signal<Date | null>(null);\n private readonly _formDisabled = signal(false);\n\n // ControlValueAccessor callbacks\n private onChange: (value: Date | null) => void = () => {};\n private onTouched: () => void = () => {};\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n /** Locale used for date formatting — explicit `locale` input, else the global locale. */\n readonly effectiveLocale = computed(() => this.locale() ?? this.i18n.locale());\n\n /** Placeholder text — explicit `placeholder` input, else the active locale's default. */\n readonly resolvedPlaceholder = computed(\n () => this.placeholder() ?? this.i18n.messages().datePicker.placeholder,\n );\n\n readonly triggerClasses = computed(() => ({\n [`ea-date-picker__trigger--${this.size()}`]: true,\n 'ea-date-picker__trigger--error': this.hasError(),\n 'ea-date-picker__trigger--open': this.isOpen(),\n 'ea-date-picker__trigger--disabled': this.isDisabled(),\n }));\n\n readonly displayValue = computed(() => {\n const val = this.value();\n if (!val) return '';\n return new Intl.DateTimeFormat(this.effectiveLocale(), this.formatOptions()).format(\n val,\n );\n });\n\n readonly monthYearLabel = computed(() => {\n const date = new Date(this.viewYear(), this.viewMonth(), 1);\n return new Intl.DateTimeFormat(this.effectiveLocale(), {\n month: 'long',\n year: 'numeric',\n }).format(date);\n });\n\n readonly weekdayLabels = computed(() => {\n const start = this.weekStartsOn();\n const formatter = new Intl.DateTimeFormat(this.effectiveLocale(), {\n weekday: 'short',\n });\n const labels: string[] = [];\n // Use a known Sunday (2024-01-07) as anchor so we can offset for locale\n const base = new Date(2024, 0, 7);\n for (let i = 0; i < 7; i++) {\n const d = new Date(base);\n d.setDate(base.getDate() + ((i + start) % 7));\n labels.push(formatter.format(d));\n }\n return labels;\n });\n\n readonly weeks = computed<CalendarDay[][]>(() => {\n const year = this.viewYear();\n const month = this.viewMonth();\n const start = this.weekStartsOn();\n\n const firstOfMonth = new Date(year, month, 1);\n const dayOfWeek = firstOfMonth.getDay();\n // Offset so grid starts on weekStartsOn (0=Sun, 1=Mon)\n const leading = (dayOfWeek - start + 7) % 7;\n\n const gridStart = new Date(year, month, 1 - leading);\n const today = this.startOfDay(new Date());\n const selected = this.value();\n const focused = this.focusedDate();\n const min = this.minDate() ? this.startOfDay(this.minDate()!) : null;\n const max = this.maxDate() ? this.startOfDay(this.maxDate()!) : null;\n\n const rows: CalendarDay[][] = [];\n for (let row = 0; row < 6; row++) {\n const cells: CalendarDay[] = [];\n for (let col = 0; col < 7; col++) {\n const cellDate = new Date(gridStart);\n cellDate.setDate(gridStart.getDate() + row * 7 + col);\n cells.push({\n date: cellDate,\n day: cellDate.getDate(),\n isCurrentMonth: cellDate.getMonth() === month,\n isToday: this.isSameDay(cellDate, today),\n isSelected: selected ? this.isSameDay(cellDate, selected) : false,\n isDisabled: (min ? cellDate < min : false) || (max ? cellDate > max : false),\n isFocused: focused ? this.isSameDay(cellDate, focused) : false,\n });\n }\n rows.push(cells);\n }\n return rows;\n });\n\n // ControlValueAccessor\n writeValue(val: DatePickerValue): void {\n const date = this.toDate(val);\n this.value.set(date);\n if (date) {\n this.viewYear.set(date.getFullYear());\n this.viewMonth.set(date.getMonth());\n }\n }\n\n registerOnChange(fn: (value: Date | null) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n // Handlers\n /** Toggles the calendar popover between open and closed. */\n toggle(): void {\n if (this.isDisabled() || this.readonly()) return;\n if (this.isOpen()) {\n this.close();\n } else {\n this.open();\n }\n }\n\n /** Opens the calendar popover and moves focus to the focused day cell. */\n open(): void {\n if (this.isDisabled() || this.readonly()) return;\n const current = this.value() ?? new Date();\n this.viewYear.set(current.getFullYear());\n this.viewMonth.set(current.getMonth());\n this.focusedDate.set(this.startOfDay(current));\n this.isOpen.set(true);\n afterNextRender(() => this.focusFocusedDayCell(), { injector: this.injector });\n }\n\n /** Closes the calendar popover. */\n close(): void {\n this.isOpen.set(false);\n this.focusedDate.set(null);\n }\n\n private focusFocusedDayCell(): void {\n const host = this.hostEl()?.nativeElement;\n const focusedCell = host?.querySelector<HTMLButtonElement>(\n '.ea-date-picker__day--focused',\n );\n focusedCell?.focus();\n }\n\n /** Moves keyboard focus to the trigger button. */\n focus(): void {\n this.triggerEl()?.nativeElement.focus();\n }\n\n selectDay(day: CalendarDay): void {\n if (day.isDisabled) return;\n const date = this.startOfDay(day.date);\n this.value.set(date);\n this.onChange(date);\n this.onTouched();\n this.changed.emit(date);\n this.close();\n this.triggerEl()?.nativeElement.focus();\n }\n\n /** Clears the selected date and emits `changed` with `null`. */\n clear(event: Event): void {\n event.stopPropagation();\n if (this.isDisabled() || this.readonly()) return;\n this.value.set(null);\n this.onChange(null);\n this.onTouched();\n this.changed.emit(null);\n }\n\n goToPrevMonth(): void {\n const month = this.viewMonth();\n if (month === 0) {\n this.viewMonth.set(11);\n this.viewYear.update(y => y - 1);\n } else {\n this.viewMonth.set(month - 1);\n }\n }\n\n goToNextMonth(): void {\n const month = this.viewMonth();\n if (month === 11) {\n this.viewMonth.set(0);\n this.viewYear.update(y => y + 1);\n } else {\n this.viewMonth.set(month + 1);\n }\n }\n\n goToPrevYear(): void {\n this.viewYear.update(y => y - 1);\n }\n\n goToNextYear(): void {\n this.viewYear.update(y => y + 1);\n }\n\n goToToday(): void {\n const today = this.startOfDay(new Date());\n this.viewYear.set(today.getFullYear());\n this.viewMonth.set(today.getMonth());\n this.focusedDate.set(today);\n }\n\n handleTriggerKeydown(event: KeyboardEvent): void {\n if (this.isDisabled()) return;\n switch (event.key) {\n case 'Enter':\n case ' ':\n case 'ArrowDown':\n event.preventDefault();\n this.open();\n break;\n }\n }\n\n handleGridKeydown(event: KeyboardEvent): void {\n if (!this.isOpen()) return;\n const focused = this.focusedDate() ?? this.startOfDay(new Date());\n let next: Date | null;\n\n switch (event.key) {\n case 'ArrowLeft':\n next = this.addDays(focused, -1);\n break;\n case 'ArrowRight':\n next = this.addDays(focused, 1);\n break;\n case 'ArrowUp':\n next = this.addDays(focused, -7);\n break;\n case 'ArrowDown':\n next = this.addDays(focused, 7);\n break;\n case 'PageUp':\n next = this.addMonths(focused, event.shiftKey ? -12 : -1);\n break;\n case 'PageDown':\n next = this.addMonths(focused, event.shiftKey ? 12 : 1);\n break;\n case 'Home':\n next = this.addDays(focused, -focused.getDay() + this.weekStartsOn());\n if (next > focused) next = this.addDays(next, -7);\n break;\n case 'End': {\n const weekStart = this.weekStartsOn();\n const offset = (focused.getDay() - weekStart + 7) % 7;\n next = this.addDays(focused, 6 - offset);\n break;\n }\n case 'Enter':\n case ' ': {\n event.preventDefault();\n const current = this.focusedDate();\n if (!current) return;\n const min = this.minDate();\n const max = this.maxDate();\n if (min && current < this.startOfDay(min)) return;\n if (max && current > this.startOfDay(max)) return;\n this.selectDay({\n date: current,\n day: current.getDate(),\n isCurrentMonth: current.getMonth() === this.viewMonth(),\n isToday: false,\n isSelected: false,\n isDisabled: false,\n isFocused: false,\n });\n return;\n }\n case 'Escape':\n event.preventDefault();\n this.close();\n this.triggerEl()?.nativeElement.focus();\n return;\n default:\n return;\n }\n\n if (next) {\n event.preventDefault();\n this.focusedDate.set(next);\n this.viewYear.set(next.getFullYear());\n this.viewMonth.set(next.getMonth());\n }\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event): void {\n if (!this.isOpen()) return;\n const host = this.hostEl()?.nativeElement;\n if (host && !host.contains(event.target as Node)) {\n this.close();\n this.onTouched();\n }\n }\n\n // Internal helpers\n private formatOptions(): Intl.DateTimeFormatOptions {\n switch (this.format()) {\n case 'short':\n return { dateStyle: 'short' };\n case 'long':\n return { dateStyle: 'long' };\n case 'medium':\n default:\n return { dateStyle: 'medium' };\n }\n }\n\n private toDate(val: DatePickerValue): Date | null {\n if (!val) return null;\n if (val instanceof Date) return isNaN(val.getTime()) ? null : this.startOfDay(val);\n const parsed = new Date(val);\n return isNaN(parsed.getTime()) ? null : this.startOfDay(parsed);\n }\n\n private startOfDay(date: Date): Date {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate());\n }\n\n private isSameDay(a: Date, b: Date): boolean {\n return (\n a.getFullYear() === b.getFullYear() &&\n a.getMonth() === b.getMonth() &&\n a.getDate() === b.getDate()\n );\n }\n\n private addDays(date: Date, days: number): Date {\n const result = new Date(date);\n result.setDate(date.getDate() + days);\n return result;\n }\n\n private addMonths(date: Date, months: number): Date {\n const result = new Date(date);\n result.setMonth(date.getMonth() + months);\n return result;\n }\n}\n","<div\n #hostEl\n class=\"ea-date-picker-field\">\n @if (label()) {\n <label\n class=\"ea-date-picker-field__label\"\n [for]=\"id()\"\n [class.ea-date-picker-field__label--required]=\"required()\">\n {{ label() }}\n </label>\n }\n\n <div class=\"ea-date-picker\">\n <div class=\"ea-date-picker__trigger-wrapper\">\n <button\n #triggerEl\n type=\"button\"\n class=\"ea-date-picker__trigger\"\n [ngClass]=\"triggerClasses()\"\n [id]=\"id()\"\n [disabled]=\"isDisabled()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-haspopup]=\"'dialog'\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (click)=\"toggle()\"\n (keydown)=\"handleTriggerKeydown($event)\">\n <ea-icon-calendar\n class=\"ea-date-picker__trigger-icon\"\n aria-hidden=\"true\" />\n <span\n class=\"ea-date-picker__trigger-value\"\n [class.ea-date-picker__trigger-value--placeholder]=\"!displayValue()\">\n {{ displayValue() || resolvedPlaceholder() }}\n </span>\n </button>\n @if (value() && !isDisabled() && !readonly()) {\n <button\n type=\"button\"\n class=\"ea-date-picker__clear\"\n [attr.aria-label]=\"i18n.messages().datePicker.clear\"\n (click)=\"clear($event)\">\n <span aria-hidden=\"true\">×</span>\n </button>\n }\n </div>\n\n @if (isOpen()) {\n <div\n class=\"ea-date-picker__popover\"\n role=\"dialog\"\n [attr.aria-labelledby]=\"id() + '-label'\"\n (keydown)=\"handleGridKeydown($event)\">\n <div class=\"ea-date-picker__header\">\n <button\n type=\"button\"\n class=\"ea-date-picker__nav-btn\"\n [attr.aria-label]=\"i18n.messages().datePicker.previousYear\"\n (click)=\"goToPrevYear()\">\n <ea-icon-chevron-left aria-hidden=\"true\" />\n <ea-icon-chevron-left aria-hidden=\"true\" />\n </button>\n <button\n type=\"button\"\n class=\"ea-date-picker__nav-btn\"\n [attr.aria-label]=\"i18n.messages().datePicker.previousMonth\"\n (click)=\"goToPrevMonth()\">\n <ea-icon-chevron-left aria-hidden=\"true\" />\n </button>\n <span\n class=\"ea-date-picker__month-label\"\n [id]=\"id() + '-label'\"\n aria-live=\"polite\">\n {{ monthYearLabel() }}\n </span>\n <button\n type=\"button\"\n class=\"ea-date-picker__nav-btn\"\n [attr.aria-label]=\"i18n.messages().datePicker.nextMonth\"\n (click)=\"goToNextMonth()\">\n <ea-icon-chevron-right aria-hidden=\"true\" />\n </button>\n <button\n type=\"button\"\n class=\"ea-date-picker__nav-btn\"\n [attr.aria-label]=\"i18n.messages().datePicker.nextYear\"\n (click)=\"goToNextYear()\">\n <ea-icon-chevron-right aria-hidden=\"true\" />\n <ea-icon-chevron-right aria-hidden=\"true\" />\n </button>\n </div>\n\n <div\n class=\"ea-date-picker__grid\"\n role=\"grid\">\n <div\n class=\"ea-date-picker__weekday-row\"\n role=\"row\">\n @for (label of weekdayLabels(); track label) {\n <div\n class=\"ea-date-picker__weekday\"\n role=\"columnheader\">\n {{ label }}\n </div>\n }\n </div>\n @for (week of weeks(); track $index) {\n <div\n class=\"ea-date-picker__week\"\n role=\"row\">\n @for (day of week; track day.date.getTime()) {\n <button\n type=\"button\"\n class=\"ea-date-picker__day\"\n role=\"gridcell\"\n [class.ea-date-picker__day--outside]=\"!day.isCurrentMonth\"\n [class.ea-date-picker__day--today]=\"day.isToday\"\n [class.ea-date-picker__day--selected]=\"day.isSelected\"\n [class.ea-date-picker__day--focused]=\"day.isFocused\"\n [class.ea-date-picker__day--disabled]=\"day.isDisabled\"\n [disabled]=\"day.isDisabled\"\n [attr.aria-selected]=\"day.isSelected\"\n [attr.aria-current]=\"day.isToday ? 'date' : null\"\n [attr.tabindex]=\"day.isFocused ? 0 : -1\"\n (click)=\"selectDay(day)\">\n {{ day.day }}\n </button>\n }\n </div>\n }\n </div>\n\n <div class=\"ea-date-picker__footer\">\n <button\n type=\"button\"\n class=\"ea-date-picker__today-btn\"\n (click)=\"goToToday()\">\n {{ i18n.messages().datePicker.today }}\n </button>\n </div>\n </div>\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-date-picker-field__message ea-date-picker-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n <ea-icon-alert-circle class=\"ea-date-picker-field__message-icon\" />\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-date-picker-field__message ea-date-picker-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n ViewEncapsulation,\n computed,\n effect,\n inject,\n input,\n model,\n output,\n viewChild,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { XIconComponent } from '../icons/x.component';\n\n/** Width preset of the dialog panel. */\nexport type DialogSize = 'sm' | 'md' | 'lg' | 'full';\n\n/**\n * Modal dialog backed by the native `<dialog>` element. Uses `showModal()`\n * for browser-managed focus trapping, supports backdrop and Escape dismissal,\n * and exposes `header`, default, and `footer` content slots. The `open` state\n * is a two-way `model()` binding.\n */\n@Component({\n selector: 'ea-dialog',\n imports: [NgClass, XIconComponent],\n templateUrl: './dialog.component.html',\n styleUrl: './dialog.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class DialogComponent {\n private readonly dialogEl = viewChild<ElementRef<HTMLDialogElement>>('dialogEl');\n private previouslyFocused: HTMLElement | null = null;\n protected readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly size = input<DialogSize>('md');\n readonly closeOnBackdrop = input<boolean>(true);\n readonly closeOnEscape = input<boolean>(true);\n readonly showClose = input<boolean>(true);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-dialog-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way open binding\n readonly open = model<boolean>(false);\n\n // Outputs\n /** Fires once the dialog has been shown via `showModal()`. */\n readonly opened = output<void>();\n /** Fires when the dialog closes (via close button, backdrop, or Escape). */\n readonly closed = output<void>();\n\n // Computed\n readonly panelClasses = computed(() => ({\n [`ea-dialog__panel--${this.size()}`]: true,\n }));\n\n constructor() {\n effect(() => {\n const dialogRef = this.dialogEl()?.nativeElement;\n if (!dialogRef) return;\n\n if (this.open()) {\n if (!dialogRef.open) {\n this.previouslyFocused = document.activeElement as HTMLElement | null;\n dialogRef.showModal();\n this.opened.emit();\n }\n } else {\n if (dialogRef.open) {\n dialogRef.close();\n this.previouslyFocused?.focus?.();\n this.previouslyFocused = null;\n }\n }\n });\n }\n\n handleClose(): void {\n this.open.set(false);\n this.closed.emit();\n }\n\n handleBackdropClick(event: MouseEvent): void {\n if (!this.closeOnBackdrop()) return;\n const dialogRef = this.dialogEl()?.nativeElement;\n if (event.target === dialogRef) {\n this.handleClose();\n }\n }\n\n handleCancel(event: Event): void {\n if (!this.closeOnEscape()) {\n event.preventDefault();\n return;\n }\n this.handleClose();\n }\n}\n","<dialog\n #dialogEl\n class=\"ea-dialog\"\n [id]=\"id()\"\n [attr.aria-label]=\"ariaLabel() ?? null\"\n [attr.aria-labelledby]=\"!ariaLabel() ? id() + '-header' : null\"\n (click)=\"handleBackdropClick($event)\"\n (cancel)=\"handleCancel($event)\">\n <div\n class=\"ea-dialog__panel\"\n [ngClass]=\"panelClasses()\">\n @if (showClose()) {\n <button\n type=\"button\"\n class=\"ea-dialog__close\"\n [attr.aria-label]=\"i18n.messages().dialog.close\"\n (click)=\"handleClose()\">\n <ea-icon-x />\n </button>\n }\n\n <div\n class=\"ea-dialog__header\"\n [id]=\"id() + '-header'\">\n <ng-content select=\"[slot=header]\" />\n </div>\n\n <div class=\"ea-dialog__body\">\n <ng-content />\n </div>\n\n <div class=\"ea-dialog__footer\">\n <ng-content select=\"[slot=footer]\" />\n </div>\n </div>\n</dialog>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n ViewEncapsulation,\n computed,\n effect,\n inject,\n input,\n model,\n output,\n viewChild,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { XIconComponent } from '../icons/x.component';\n\n/** Edge of the viewport from which the drawer slides in. */\nexport type DrawerPosition = 'left' | 'right' | 'top' | 'bottom';\n/** Size of the drawer panel along its primary axis. */\nexport type DrawerSize = 'sm' | 'md' | 'lg' | 'full';\n\n/**\n * Side panel backed by the native `<dialog>` element for browser-managed\n * focus trapping. Slides in from a configurable edge, supports backdrop and\n * Escape dismissal, and exposes `header`, default, and `footer` content\n * slots. The `open` state is a two-way `model()` binding.\n */\n@Component({\n selector: 'ea-drawer',\n imports: [NgClass, XIconComponent],\n templateUrl: './drawer.component.html',\n styleUrl: './drawer.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class DrawerComponent {\n private readonly drawerEl = viewChild<ElementRef<HTMLDialogElement>>('drawerEl');\n private previouslyFocused: HTMLElement | null = null;\n protected readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly position = input<DrawerPosition>('right');\n readonly size = input<DrawerSize>('md');\n readonly closeOnBackdrop = input<boolean>(true);\n readonly closeOnEscape = input<boolean>(true);\n readonly showClose = input<boolean>(true);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-drawer-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way open binding\n readonly open = model<boolean>(false);\n\n // Outputs\n /** Fires once the drawer has been shown via `showModal()`. */\n readonly opened = output<void>();\n /** Fires when the drawer closes (via close button, backdrop, or Escape). */\n readonly closed = output<void>();\n\n // Computed\n readonly panelClasses = computed(() => ({\n [`ea-drawer__panel--${this.position()}`]: true,\n [`ea-drawer__panel--${this.size()}`]: true,\n }));\n\n constructor() {\n effect(() => {\n const drawerRef = this.drawerEl()?.nativeElement;\n if (!drawerRef) return;\n\n if (this.open()) {\n if (!drawerRef.open) {\n this.previouslyFocused = document.activeElement as HTMLElement | null;\n drawerRef.showModal();\n this.opened.emit();\n }\n } else {\n if (drawerRef.open) {\n drawerRef.close();\n this.previouslyFocused?.focus?.();\n this.previouslyFocused = null;\n }\n }\n });\n }\n\n handleClose(): void {\n this.open.set(false);\n this.closed.emit();\n }\n\n handleBackdropClick(event: MouseEvent): void {\n if (!this.closeOnBackdrop()) return;\n const drawerRef = this.drawerEl()?.nativeElement;\n if (event.target === drawerRef) {\n this.handleClose();\n }\n }\n\n handleCancel(event: Event): void {\n if (!this.closeOnEscape()) {\n event.preventDefault();\n return;\n }\n this.handleClose();\n }\n}\n","<dialog\n #drawerEl\n class=\"ea-drawer\"\n [id]=\"id()\"\n [attr.aria-label]=\"ariaLabel() ?? null\"\n [attr.aria-labelledby]=\"!ariaLabel() ? id() + '-header' : null\"\n (click)=\"handleBackdropClick($event)\"\n (cancel)=\"handleCancel($event)\">\n <div\n class=\"ea-drawer__panel\"\n [ngClass]=\"panelClasses()\">\n @if (showClose()) {\n <button\n type=\"button\"\n class=\"ea-drawer__close\"\n [attr.aria-label]=\"i18n.messages().drawer.close\"\n (click)=\"handleClose()\">\n <ea-icon-x />\n </button>\n }\n\n <div\n class=\"ea-drawer__header\"\n [id]=\"id() + '-header'\">\n <ng-content select=\"[slot=header]\" />\n </div>\n\n <div class=\"ea-drawer__body\">\n <ng-content />\n </div>\n\n <div class=\"ea-drawer__footer\">\n <ng-content select=\"[slot=footer]\" />\n </div>\n </div>\n</dialog>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n ElementRef,\n HostListener,\n computed,\n effect,\n forwardRef,\n inject,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { ChevronDownIconComponent } from '../icons/chevron-down.component';\nimport { SelectOption } from '../select-option';\n\n/** Visual size of the dropdown trigger. */\nexport type DropdownSize = 'sm' | 'md' | 'lg';\n\n/**\n * Single-select dropdown with a custom popup list. Supports keyboard\n * navigation (arrow keys, Enter/Space to select, Escape to close), closes\n * on outside click or viewport scroll/resize, and integrates with Angular\n * forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-dropdown',\n imports: [NgClass, ChevronDownIconComponent],\n templateUrl: './dropdown.component.html',\n styleUrl: './dropdown.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => DropdownComponent),\n multi: true,\n },\n ],\n})\nexport class DropdownComponent implements ControlValueAccessor {\n private readonly elRef = viewChild<ElementRef<HTMLElement>>('triggerEl');\n private readonly menuEl = viewChild<ElementRef<HTMLElement>>('menuEl');\n private readonly destroyRef = inject(DestroyRef);\n private readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly label = input<string | undefined>(undefined);\n readonly placeholder = input<string | undefined>(undefined);\n readonly options = input<SelectOption[]>([]);\n readonly size = input<DropdownSize>('md');\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly id = input<string>(`ea-dropdown-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way value binding\n readonly value = model<string>('');\n\n // Outputs\n /** Fires with the new value when the user selects an option. */\n readonly changed = output<string>();\n\n // Internal state\n readonly isOpen = signal(false);\n readonly focusedIndex = signal(-1);\n private readonly _formDisabled = signal(false);\n\n // ControlValueAccessor callbacks\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly selectedLabel = computed(() => {\n const opt = this.options().find(o => o.value === this.value());\n return opt?.label ?? '';\n });\n\n /** Placeholder text, falling back to the active locale's translation. */\n readonly resolvedPlaceholder = computed(\n () => this.placeholder() ?? this.i18n.messages().dropdown.placeholder,\n );\n\n readonly triggerClasses = computed(() => ({\n [`ea-dropdown__trigger--${this.size()}`]: true,\n 'ea-dropdown__trigger--error': this.hasError(),\n 'ea-dropdown__trigger--open': this.isOpen(),\n 'ea-dropdown__trigger--disabled': this.isDisabled(),\n }));\n\n constructor() {\n effect(() => {\n const menu = this.menuEl()?.nativeElement;\n const trigger = this.elRef()?.nativeElement;\n if (!menu || !trigger || !this.isOpen()) return;\n const rect = trigger.getBoundingClientRect();\n menu.style.top = `${rect.bottom + 4}px`;\n menu.style.left = `${rect.left}px`;\n menu.style.minWidth = `${rect.width}px`;\n });\n\n const closeOnViewportChange = (): void => {\n if (this.isOpen()) this.close();\n };\n window.addEventListener('scroll', closeOnViewportChange, {\n capture: true,\n passive: true,\n });\n window.addEventListener('resize', closeOnViewportChange);\n this.destroyRef.onDestroy(() => {\n window.removeEventListener('scroll', closeOnViewportChange, { capture: true });\n window.removeEventListener('resize', closeOnViewportChange);\n });\n }\n\n // ControlValueAccessor\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n // Handlers\n /** Toggles the dropdown list between open and closed. */\n toggle(): void {\n if (this.isDisabled() || this.readonly()) return;\n this.isOpen.set(!this.isOpen());\n if (this.isOpen()) {\n const idx = this.options().findIndex(o => o.value === this.value());\n this.focusedIndex.set(idx >= 0 ? idx : 0);\n }\n }\n\n /** Programmatically selects the given option, closing the list. */\n select(option: SelectOption): void {\n if (option.disabled || this.isDisabled() || this.readonly()) return;\n this.value.set(option.value);\n this.onChange(option.value);\n this.onTouched();\n this.changed.emit(option.value);\n this.close();\n }\n\n /** Closes the dropdown list without changing the current value. */\n close(): void {\n this.isOpen.set(false);\n this.focusedIndex.set(-1);\n }\n\n /** Moves keyboard focus to the dropdown trigger. */\n focus(): void {\n this.elRef()?.nativeElement.focus();\n }\n\n handleKeydown(event: KeyboardEvent): void {\n if (this.isDisabled() || this.readonly()) return;\n\n switch (event.key) {\n case 'Enter':\n case ' ':\n event.preventDefault();\n if (this.isOpen()) {\n const opts = this.options();\n const idx = this.focusedIndex();\n if (idx >= 0 && idx < opts.length && !opts[idx].disabled) {\n this.select(opts[idx]);\n }\n } else {\n this.toggle();\n }\n break;\n case 'ArrowDown':\n event.preventDefault();\n if (!this.isOpen()) {\n this.toggle();\n } else {\n this.moveFocus(1);\n }\n break;\n case 'ArrowUp':\n event.preventDefault();\n if (this.isOpen()) {\n this.moveFocus(-1);\n }\n break;\n case 'Escape':\n if (this.isOpen()) {\n event.preventDefault();\n this.close();\n this.elRef()?.nativeElement.focus();\n }\n break;\n }\n }\n\n private moveFocus(delta: number): void {\n const opts = this.options();\n let idx = this.focusedIndex() + delta;\n while (idx >= 0 && idx < opts.length && opts[idx].disabled) {\n idx += delta;\n }\n if (idx >= 0 && idx < opts.length) {\n this.focusedIndex.set(idx);\n }\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event): void {\n if (!this.isOpen()) return;\n const el = event.target as Node;\n const host = this.elRef()?.nativeElement.closest('ea-dropdown');\n if (host && !host.contains(el)) {\n this.close();\n this.onTouched();\n }\n }\n}\n","<div class=\"ea-dropdown-field\">\n @if (label()) {\n <label\n class=\"ea-dropdown-field__label\"\n [for]=\"id()\"\n [id]=\"id() + '-label'\"\n [class.ea-dropdown-field__label--required]=\"required()\">\n {{ label() }}\n </label>\n }\n\n <div class=\"ea-dropdown\">\n <button\n #triggerEl\n type=\"button\"\n class=\"ea-dropdown__trigger\"\n [ngClass]=\"triggerClasses()\"\n [id]=\"id()\"\n [disabled]=\"isDisabled()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-haspopup]=\"'listbox'\"\n [attr.aria-controls]=\"isOpen() ? id() + '-listbox' : null\"\n [attr.aria-activedescendant]=\"\n isOpen() && focusedIndex() >= 0 ? id() + '-option-' + focusedIndex() : null\n \"\n [attr.aria-labelledby]=\"label() ? id() + '-label' : null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (click)=\"toggle()\"\n (keydown)=\"handleKeydown($event)\">\n <span\n class=\"ea-dropdown__value\"\n [class.ea-dropdown__value--placeholder]=\"!selectedLabel()\">\n {{ selectedLabel() || resolvedPlaceholder() }}\n </span>\n <ea-icon-chevron-down\n class=\"ea-dropdown__chevron\"\n [class.ea-dropdown__chevron--open]=\"isOpen()\" />\n </button>\n\n @if (isOpen()) {\n <ul\n #menuEl\n class=\"ea-dropdown__menu\"\n role=\"listbox\"\n [id]=\"id() + '-listbox'\">\n @for (option of options(); track option.value; let i = $index) {\n <li\n class=\"ea-dropdown__option\"\n [class.ea-dropdown__option--selected]=\"option.value === value()\"\n [class.ea-dropdown__option--focused]=\"i === focusedIndex()\"\n [class.ea-dropdown__option--disabled]=\"option.disabled\"\n [id]=\"id() + '-option-' + i\"\n role=\"option\"\n [attr.aria-selected]=\"option.value === value()\"\n [attr.aria-disabled]=\"option.disabled || null\"\n (click)=\"select(option)\"\n (mouseenter)=\"focusedIndex.set(i)\">\n {{ option.label }}\n </li>\n }\n </ul>\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-dropdown-field__message ea-dropdown-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-dropdown-field__message ea-dropdown-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-eagami',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 1962.34 1962.34\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <g>\n <polygon\n fill=\"#718e99\"\n points=\"843.82 1872.78 800.19 1873.73 747.86 1550.57 798.02 1579.39 843.82 1872.78\" />\n <polygon\n fill=\"#72808c\"\n points=\"798.01 1579.39 747.85 1550.57 735.89 1503.54 790.69 1529.94 798.01 1579.39\" />\n <path\n fill=\"#3c6c90\"\n d=\"M1369.61,147.98l-105.89-6.22s-.05,0-.07-.01c-1.06-.1-1.75-.11-1.94-.11h-.06l-187.74-15.4,147.76-37.63,147.94,59.38Z\" />\n <polygon\n fill=\"#46293f\"\n points=\"1242.39 201.49 1023.2 236.73 1000.3 239.43 1005.76 200.7 1073.91 126.23 1242.39 201.49\" />\n <polygon\n fill=\"#653f54\"\n points=\"1144.89 343.97 1140.97 360.09 1034.47 456.62 978.85 341.04 1000.3 239.43 1023.2 236.73 1144.89 343.97\" />\n <polygon\n fill=\"#46293f\"\n points=\"1149.33 499.16 1034.47 456.62 1140.97 360.09 1149.33 499.16\" />\n <polygon\n fill=\"#331b2a\"\n points=\"1318.72 563.47 1130.07 532.19 1149.33 499.16 1318.72 563.47\" />\n <polygon\n fill=\"#4b273c\"\n points=\"1318.72 563.47 1076.63 609.03 1130.07 532.19 1318.72 563.47\" />\n <polygon\n fill=\"#4b2f3f\"\n points=\"1066 741.83 1066 693.01 1035.47 664.68 1003.57 571.56 1076.63 609.03 1083.18 790.66 1059.73 811.84 1066 741.83\" />\n <polygon\n fill=\"#3c6c90\"\n points=\"667.69 998.55 555.65 1178.36 470.69 1211.06 590.27 1015.47 667.69 998.55\" />\n <polygon\n fill=\"#2a445f\"\n points=\"832.91 957.82 705.13 1117.7 555.65 1178.36 667.69 998.55 832.91 957.82\" />\n <polygon\n fill=\"#11253c\"\n points=\"725.23 1109.29 780.56 1088.46 751.67 1105.48 709.41 1120.01 687.32 1156.44 680.06 1168.82 419.79 1252.33 319.47 1293.93 458.32 1053.08 202.43 1176.77 237.68 1130.08 567.1 877.57 346 1256.78 470.69 1211.06 555.65 1178.36 705.13 1117.7 832.91 957.82 841.09 956.88 725.23 1109.29\" />\n <polygon\n fill=\"#72808c\"\n points=\"917.67 1070.61 873.26 1105.96 667.34 1192.96 680.06 1168.82 687.32 1156.44 901.06 1071.66 917.67 1070.61\" />\n <path\n fill=\"#bbcbd2\"\n d=\"M1038.72,1696.39l-46.05,2.39-55.25-98.11-146.73-70.72-54.8-26.4-164.16-79.11-25.44-51.12s112.32-146.39,121.05-180.36l205.92-87-119.96,97.64-58.34,44.77-80.69,118.59,14.17,37.15,93.25,43.58,61.72,33.13,195.9,95.94,59.41,119.62Z\" />\n <polygon\n fill=\"#254b71\"\n points=\"458.32 1053.08 319.47 1293.93 290.75 1344.73 190.85 1368.4 136.63 1381.25 114.46 1290.44 202.43 1176.77 458.32 1053.08\" />\n <polygon\n fill=\"#2a445f\"\n points=\"940.14 614.9 567.1 877.57 237.68 1130.08 490.22 786.13 940.14 614.9\" />\n <polygon\n fill=\"#3c6c90\"\n points=\"1003.57 571.56 940.14 614.9 490.22 786.13 865.63 537.27 1003.57 571.56\" />\n <polygon\n fill=\"#808d97\"\n points=\"1379.25 231.73 1163.33 267.92 1212.39 225.78 1379.25 231.73\" />\n <polygon\n fill=\"#3a0a23\"\n points=\"1090.1 267.24 1023.2 236.73 1163.33 267.92 1156.18 297.37 1090.1 267.24 1090.1 267.24\" />\n <polygon\n fill=\"#4d1832\"\n points=\"1156.18 297.37 1150.7 320 1023.2 236.73 1156.18 297.37\" />\n <polygon\n fill=\"#594b6e\"\n points=\"1150.7 320 1144.89 343.97 1023.2 236.73 1150.7 320\" />\n <polygon\n fill=\"#4f1730\"\n points=\"1276.02 379.71 1236.58 373.98 1140.97 360.09 1248.38 360.09 1276.02 379.71\" />\n <polygon\n fill=\"#d8dee3\"\n points=\"1341.26 475.03 1295.08 447.72 1295.07 447.71 1292.55 435.34 1236.58 373.98 1276.02 379.71 1336.29 447.7 1336.3 447.71 1341.26 475.03\" />\n <polygon\n fill=\"#6c2741\"\n points=\"1336.29 447.7 1276.02 379.71 1328.9 417.25 1335.44 442.96 1336.29 447.7\" />\n <polygon\n fill=\"#9fb1b7\"\n points=\"1346.71 505.52 1320.36 490.59 1298.63 465.1 1295.08 447.72 1341.26 475.03 1346.71 505.52\" />\n <polygon\n fill=\"#bbcbd2\"\n points=\"1356.16 554.73 1311.09 698.25 1240.75 757.31 1318.72 563.47 1298.63 465.1 1320.36 490.59 1356.16 554.73\" />\n <polygon\n fill=\"#72808c\"\n points=\"1279.46 804.94 1174.42 902.74 1240.75 757.31 1279.46 804.94\" />\n <polygon\n fill=\"#3c4d5e\"\n points=\"1240.75 757.31 1174.42 902.74 1068.04 1002.02 1081.79 810.12 1240.75 757.31\" />\n <polygon\n fill=\"#04111b\"\n points=\"1083.18 790.66 1081.79 810.12 1068.04 1002.02 1062.82 1006.89 1062.82 941.16 1059.73 811.84 1083.18 790.66\" />\n <polygon\n fill=\"#11253c\"\n points=\"1062.82 941.16 928.32 1062.14 917.68 1070.61 917.67 1070.61 901.06 1071.66 880.35 1049.28 911.78 1034.51 999.93 921 1059.73 811.84 1062.82 941.16\" />\n <polygon\n fill=\"#72808c\"\n points=\"873.26 1105.96 817.64 1235.99 812.19 1254.56 741.3 1304.8 753.3 1203.59 873.26 1105.96\" />\n <polygon\n fill=\"#8b9da8\"\n points=\"778.38 1446.98 783.4 1480.82 721.68 1447.69 741.3 1304.8 812.19 1254.56 778.38 1446.98\" />\n <polygon\n fill=\"#8b9da8\"\n points=\"1311.09 698.25 1279.46 804.94 1240.75 757.31 1311.09 698.25\" />\n <polygon\n fill=\"#9ea4bc\"\n points=\"1847.88 236.73 1837.25 237.12 1670.95 211.49 1325.63 194.03 1363.79 169.1 1387.06 154.33 1717.11 201.01 1847.88 236.73\" />\n <polygon\n fill=\"#0d2533\"\n points=\"1837.25 237.12 1710.47 241.73 1696.44 241.3 1325.63 194.03 1670.95 211.49 1837.25 237.12\" />\n <polygon\n fill=\"#04111b\"\n points=\"901.06 1071.66 687.32 1156.44 709.41 1120.01 751.67 1105.48 780.56 1088.46 880.35 1049.28 901.06 1071.66\" />\n <polygon\n fill=\"#3c6c90\"\n points=\"956.32 929.73 880.35 1049.28 780.56 1088.46 725.23 1109.29 841.09 956.88 956.32 929.73\" />\n <polygon\n fill=\"#2a445f\"\n points=\"999.93 921 911.78 1034.51 880.35 1049.28 956.32 929.73 999.93 921\" />\n <polygon\n fill=\"#2f567a\"\n points=\"1066 741.83 1059.73 811.84 999.93 921 956.32 929.73 841.09 956.88 832.91 957.82 667.69 998.55 590.27 1015.47 470.69 1211.06 346 1256.78 567.1 877.57 1066 741.83\" />\n <polygon\n fill=\"#3c6c90\"\n points=\"1066 693.01 1066 741.83 567.1 877.57 961.31 626.09 1035.47 664.68 1066 693.01\" />\n <polygon\n fill=\"#182f44\"\n points=\"961.31 626.09 567.1 877.57 940.14 614.9 961.31 626.09\" />\n <polygon\n fill=\"#40374f\"\n points=\"1035.47 664.68 961.31 626.09 940.14 614.9 1003.57 571.56 1035.47 664.68\" />\n <polygon\n fill=\"#444e77\"\n points=\"1318.72 563.47 1240.75 757.31 1081.79 810.12 1083.18 790.66 1318.72 563.47\" />\n <polygon\n fill=\"#11365c\"\n points=\"419.79 1252.33 248.23 1407.29 190.85 1368.4 290.75 1344.73 319.47 1293.93 419.79 1252.33\" />\n <polygon\n fill=\"#594b6e\"\n points=\"1318.72 563.47 1149.33 499.16 1140.97 360.09 1292.55 435.34 1295.07 447.71 1295.08 447.72 1298.63 465.1 1318.72 563.47\" />\n <polygon\n fill=\"#653f54\"\n points=\"1318.72 563.47 1083.18 790.66 1076.63 609.03 1318.72 563.47\" />\n <polygon\n fill=\"#6d1f44\"\n points=\"1356.16 554.73 1320.36 490.59 1346.71 505.52 1356.16 554.73\" />\n <polygon\n fill=\"#aeb9bc\"\n points=\"1292.55 435.34 1140.97 360.09 1236.58 373.98 1292.55 435.34\" />\n <polygon\n fill=\"#541730\"\n points=\"1242.39 201.49 1212.39 225.78 1163.33 267.92 1023.2 236.73 1242.39 201.49\" />\n <polygon\n fill=\"#d8dee3\"\n points=\"1379.25 231.73 1212.4 225.78 1242.39 201.49 1325.63 194.03 1379.25 231.73\" />\n <polygon\n fill=\"#7a929c\"\n points=\"1696.44 241.3 1379.25 231.73 1325.63 194.03 1696.44 241.3\" />\n <polygon\n fill=\"#d8dee3\"\n points=\"1387.06 154.34 1325.63 194.03 1293.1 167.67 1280.37 157.13 1261.66 141.64 1358.76 172.62 1387.06 154.34\" />\n <polygon\n fill=\"#628ead\"\n points=\"1387.06 154.34 1358.76 172.62 1261.66 141.64 1369.61 147.98 1387.06 154.34\" />\n <polygon\n fill=\"#285175\"\n points=\"1325.63 194.03 1242.39 201.49 1255.66 186.41 1280.37 157.13 1293.1 167.67 1325.63 194.03\" />\n <polygon\n fill=\"#2a445f\"\n points=\"1280.37 157.13 1255.66 186.41 1242.39 201.49 1073.91 126.23 1261.66 141.64 1280.37 157.13\" />\n </g>\n <polygon\n fill=\"#8b9da8\"\n points=\"628.44 1404.11 546.3 1373.32 614.27 1366.96 628.44 1404.11\" />\n <polygon\n fill=\"#8b9da8\"\n points=\"937.42 1600.66 979.31 1576.77 1038.72 1696.39 992.67 1698.78 937.42 1600.66\" />\n </svg>\n `,\n})\nexport class EagamiIconComponent {}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { EagamiIconComponent } from '../icons/eagami.component';\n\n/** Variant of the wordmark — 1: \"eagami\", 2: \"handcrafted by eagami\", 3: \"eagami design system\", 4: with tagline. */\nexport type EagamiWordmarkVariant = 1 | 2 | 3 | 4;\n/** Layout of the wordmark — `stacked` for multi-line, `inline` for a single line with em-dash separators. */\nexport type EagamiWordmarkLayout = 'stacked' | 'inline';\n\n/**\n * Branded eagami wordmark logo. Scales continuously from a single `size`\n * pixel value and supports four content variants paired with stacked or\n * inline layouts.\n */\n@Component({\n selector: 'ea-eagami-wordmark',\n imports: [EagamiIconComponent],\n templateUrl: './eagami-wordmark.component.html',\n styleUrl: './eagami-wordmark.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[style.--_size]': 'size()',\n },\n})\nexport class EagamiWordmarkComponent {\n protected readonly i18n = inject(EagamiI18nService);\n\n readonly variant = input<EagamiWordmarkVariant>(1);\n readonly layout = input<EagamiWordmarkLayout>('stacked');\n readonly size = input<number>(32);\n\n protected readonly showOverline = computed(() => this.variant() === 2);\n\n protected readonly showTagline = computed(() => this.variant() === 4);\n\n protected readonly brandText = computed(() => {\n const variant = this.variant();\n if (variant <= 2) return 'eagami';\n return 'eagami design system';\n });\n\n // The brand name itself stays untranslated; only the descriptive overline\n // and tagline localize.\n protected readonly ariaLabel = computed(() => {\n const messages = this.i18n.messages().wordmark;\n switch (this.variant()) {\n case 1:\n return 'eagami';\n case 2:\n return `${messages.overline} eagami`;\n case 3:\n return 'eagami design system';\n case 4:\n return `eagami design system \\u2014 ${messages.tagline}`;\n }\n });\n}\n","<a\n class=\"ea-eagami-wordmark\"\n [class.ea-eagami-wordmark--inline]=\"layout() === 'inline'\"\n href=\"https://eagami.com\"\n target=\"_blank\"\n rel=\"noopener\"\n [attr.aria-label]=\"ariaLabel()\">\n <ea-icon-eagami\n class=\"ea-eagami-wordmark__logo\"\n aria-hidden=\"true\" />\n\n <span class=\"ea-eagami-wordmark__text\">\n @if (showOverline()) {\n <span class=\"ea-eagami-wordmark__overline\">\n {{ i18n.messages().wordmark.overline }}\n </span>\n }\n <span class=\"ea-eagami-wordmark__brand\">{{ brandText() }}</span>\n @if (showTagline()) {\n @if (layout() === 'inline') {\n <span\n class=\"ea-eagami-wordmark__separator\"\n aria-hidden=\"true\">\n —\n </span>\n }\n <span class=\"ea-eagami-wordmark__tagline\">\n {{ i18n.messages().wordmark.tagline }}\n </span>\n }\n </span>\n</a>\n","import { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\n/** Visual size of the empty-state block. */\nexport type EmptyStateSize = 'sm' | 'md' | 'lg';\n/** Heading level used for the title so it fits the surrounding document outline. */\nexport type EmptyStateHeadingLevel = 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n\n/**\n * Pattern for \"no results\" or \"nothing here yet\" screens. Combines an\n * optional title and description with `[slot=media]` (icon or illustration)\n * and `[slot=actions]` (follow-up buttons) content slots.\n */\n@Component({\n selector: 'ea-empty-state',\n templateUrl: './empty-state.component.html',\n styleUrl: './empty-state.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n})\nexport class EmptyStateComponent {\n readonly title = input<string | undefined>(undefined);\n readonly description = input<string | undefined>(undefined);\n readonly size = input<EmptyStateSize>('md');\n readonly headingLevel = input<EmptyStateHeadingLevel>('h2');\n\n readonly hostClasses = computed(() => ({\n [`ea-empty-state--${this.size()}`]: true,\n }));\n}\n","<div\n class=\"ea-empty-state\"\n [ngClass]=\"hostClasses()\">\n <div class=\"ea-empty-state__media\">\n <ng-content select=\"[slot=media]\" />\n </div>\n\n @if (title()) {\n @switch (headingLevel()) {\n @case ('h2') {\n <h2 class=\"ea-empty-state__title\">{{ title() }}</h2>\n }\n @case ('h3') {\n <h3 class=\"ea-empty-state__title\">{{ title() }}</h3>\n }\n @case ('h4') {\n <h4 class=\"ea-empty-state__title\">{{ title() }}</h4>\n }\n @case ('h5') {\n <h5 class=\"ea-empty-state__title\">{{ title() }}</h5>\n }\n @case ('h6') {\n <h6 class=\"ea-empty-state__title\">{{ title() }}</h6>\n }\n @default {\n <h2 class=\"ea-empty-state__title\">{{ title() }}</h2>\n }\n }\n }\n\n @if (description()) {\n <p class=\"ea-empty-state__description\">{{ description() }}</p>\n }\n\n <div class=\"ea-empty-state__actions\">\n <ng-content select=\"[slot=actions]\" />\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-alert-triangle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z\" />\n <line\n x1=\"12\"\n y1=\"9\"\n x2=\"12\"\n y2=\"13\" />\n <line\n x1=\"12\"\n y1=\"17\"\n x2=\"12.01\"\n y2=\"17\" />\n </svg>\n `,\n})\nexport class AlertTriangleIconComponent {}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n/**\n * @deprecated Will be removed in v2.0.0. The icon depicts Apple Inc.'s logo,\n * which is more strictly protected than other brand marks. Source the asset\n * directly from Apple per their brand guidelines for use cases like \"Sign in\n * with Apple\".\n */\n@Component({\n selector: 'ea-icon-apple',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n style: 'display: inline-flex; width: 1em; height: 1em;',\n '[style.color]': \"brand() ? '#000000' : null\",\n },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M17.05 20.28c-.98.95-2.05.88-3.08.4-1.09-.5-2.08-.48-3.24 0-1.44.62-2.2.44-3.06-.4C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.8 1.18-.24 2.31-.93 3.57-.84 1.51.12 2.65.72 3.4 1.8-3.12 1.87-2.38 5.98.48 7.13-.57 1.5-1.31 2.99-2.54 4.09ZM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.32 2.32-1.55 4.3-3.74 4.25Z\" />\n </svg>\n `,\n})\nexport class AppleIconComponent {\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-archive',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"21 8 21 21 3 21 3 8\" />\n <rect\n x=\"1\"\n y=\"3\"\n width=\"22\"\n height=\"5\" />\n <line\n x1=\"10\"\n y1=\"12\"\n x2=\"14\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class ArchiveIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-arrow-left',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"19\"\n y1=\"12\"\n x2=\"5\"\n y2=\"12\" />\n <polyline points=\"12 19 5 12 12 5\" />\n </svg>\n `,\n})\nexport class ArrowLeftIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-arrow-right',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"5\"\n y1=\"12\"\n x2=\"19\"\n y2=\"12\" />\n <polyline points=\"12 5 19 12 12 19\" />\n </svg>\n `,\n})\nexport class ArrowRightIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-at-sign',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"4\" />\n <path d=\"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-3.92 7.94\" />\n </svg>\n `,\n})\nexport class AtSignIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-bar-chart',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"20\"\n x2=\"12\"\n y2=\"10\" />\n <line\n x1=\"18\"\n y1=\"20\"\n x2=\"18\"\n y2=\"4\" />\n <line\n x1=\"6\"\n y1=\"20\"\n x2=\"6\"\n y2=\"16\" />\n </svg>\n `,\n})\nexport class BarChartIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-bell',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9\" />\n <path d=\"M13.73 21a2 2 0 0 1-3.46 0\" />\n </svg>\n `,\n})\nexport class BellIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-bookmark',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z\" />\n </svg>\n `,\n})\nexport class BookmarkIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-briefcase',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"2\"\n y=\"7\"\n width=\"20\"\n height=\"14\"\n rx=\"2\"\n ry=\"2\" />\n <path d=\"M16 21V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16\" />\n </svg>\n `,\n})\nexport class BriefcaseIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-check-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M22 11.08V12a10 10 0 1 1-5.93-9.14\" />\n <polyline points=\"22 4 12 14.01 9 11.01\" />\n </svg>\n `,\n})\nexport class CheckCircleIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-chevron-up',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"18 15 12 9 6 15\" />\n </svg>\n `,\n})\nexport class ChevronUpIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-clipboard',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2\" />\n <rect\n x=\"8\"\n y=\"2\"\n width=\"8\"\n height=\"4\"\n rx=\"1\"\n ry=\"1\" />\n </svg>\n `,\n})\nexport class ClipboardIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-clock',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <polyline points=\"12 6 12 12 16 14\" />\n </svg>\n `,\n})\nexport class ClockIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-cloud',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M18 10h-1.26A8 8 0 1 0 9 20h9a5 5 0 0 0 0-10z\" />\n </svg>\n `,\n})\nexport class CloudIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-copy',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"9\"\n y=\"9\"\n width=\"13\"\n height=\"13\"\n rx=\"2\"\n ry=\"2\" />\n <path d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\" />\n </svg>\n `,\n})\nexport class CopyIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-credit-card',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"1\"\n y=\"4\"\n width=\"22\"\n height=\"16\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"1\"\n y1=\"10\"\n x2=\"23\"\n y2=\"10\" />\n </svg>\n `,\n})\nexport class CreditCardIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-dollar-sign',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"1\"\n x2=\"12\"\n y2=\"23\" />\n <path d=\"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6\" />\n </svg>\n `,\n})\nexport class DollarSignIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-download',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\" />\n <polyline points=\"7 10 12 15 17 10\" />\n <line\n x1=\"12\"\n y1=\"15\"\n x2=\"12\"\n y2=\"3\" />\n </svg>\n `,\n})\nexport class DownloadIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-external-link',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\" />\n <polyline points=\"15 3 21 3 21 9\" />\n <line\n x1=\"10\"\n y1=\"14\"\n x2=\"21\"\n y2=\"3\" />\n </svg>\n `,\n})\nexport class ExternalLinkIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-eye-off',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24\" />\n <line\n x1=\"1\"\n y1=\"1\"\n x2=\"23\"\n y2=\"23\" />\n </svg>\n `,\n})\nexport class EyeOffIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-eye',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8Z\" />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"3\" />\n </svg>\n `,\n})\nexport class EyeIconComponent {}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-facebook',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n style: 'display: inline-flex; width: 1em; height: 1em;',\n '[style.color]': \"brand() ? '#1877F2' : null\",\n },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073\" />\n </svg>\n `,\n})\nexport class FacebookIconComponent {\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-file',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z\" />\n <polyline points=\"13 2 13 9 20 9\" />\n </svg>\n `,\n})\nexport class FileIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-filter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3\" />\n </svg>\n `,\n})\nexport class FilterIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-flag',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z\" />\n <line\n x1=\"4\"\n y1=\"22\"\n x2=\"4\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class FlagIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-folder',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z\" />\n </svg>\n `,\n})\nexport class FolderIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-gift',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"20 12 20 22 4 22 4 12\" />\n <rect\n x=\"2\"\n y=\"7\"\n width=\"20\"\n height=\"5\" />\n <line\n x1=\"12\"\n y1=\"22\"\n x2=\"12\"\n y2=\"7\" />\n <path d=\"M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z\" />\n <path d=\"M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z\" />\n </svg>\n `,\n})\nexport class GiftIconComponent {}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-github',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n style: 'display: inline-flex; width: 1em; height: 1em;',\n '[style.color]': \"brand() ? '#181717' : null\",\n },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12\" />\n </svg>\n `,\n})\nexport class GithubIconComponent {\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-globe',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"2\"\n y1=\"12\"\n x2=\"22\"\n y2=\"12\" />\n <path\n d=\"M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z\" />\n </svg>\n `,\n})\nexport class GlobeIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-google',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92a5.06 5.06 0 0 1-2.2 3.32v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.1z\"\n fill=\"#4285F4\" />\n <path\n d=\"M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z\"\n fill=\"#34A853\" />\n <path\n d=\"M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18A10.96 10.96 0 0 0 1 12c0 1.77.42 3.45 1.18 4.93l3.66-2.84z\"\n fill=\"#FBBC05\" />\n <path\n d=\"M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z\"\n fill=\"#EA4335\" />\n </svg>\n `,\n})\nexport class GoogleIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-hash',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"4\"\n y1=\"9\"\n x2=\"20\"\n y2=\"9\" />\n <line\n x1=\"4\"\n y1=\"15\"\n x2=\"20\"\n y2=\"15\" />\n <line\n x1=\"10\"\n y1=\"3\"\n x2=\"8\"\n y2=\"21\" />\n <line\n x1=\"16\"\n y1=\"3\"\n x2=\"14\"\n y2=\"21\" />\n </svg>\n `,\n})\nexport class HashIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-heart',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z\" />\n </svg>\n `,\n})\nexport class HeartIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-help-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\" />\n <line\n x1=\"12\"\n y1=\"17\"\n x2=\"12.01\"\n y2=\"17\" />\n </svg>\n `,\n})\nexport class HelpCircleIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-home',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z\" />\n <polyline points=\"9 22 9 12 15 12 15 22\" />\n </svg>\n `,\n})\nexport class HomeIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-image',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"3\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n <circle\n cx=\"8.5\"\n cy=\"8.5\"\n r=\"1.5\" />\n <polyline points=\"21 15 16 10 5 21\" />\n </svg>\n `,\n})\nexport class ImageIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-inbox',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"22 12 16 12 14 15 10 15 8 12 2 12\" />\n <path\n d=\"M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z\" />\n </svg>\n `,\n})\nexport class InboxIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-link',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71\" />\n <path d=\"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71\" />\n </svg>\n `,\n})\nexport class LinkIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"8\"\n y1=\"6\"\n x2=\"21\"\n y2=\"6\" />\n <line\n x1=\"8\"\n y1=\"12\"\n x2=\"21\"\n y2=\"12\" />\n <line\n x1=\"8\"\n y1=\"18\"\n x2=\"21\"\n y2=\"18\" />\n <line\n x1=\"3\"\n y1=\"6\"\n x2=\"3.01\"\n y2=\"6\" />\n <line\n x1=\"3\"\n y1=\"12\"\n x2=\"3.01\"\n y2=\"12\" />\n <line\n x1=\"3\"\n y1=\"18\"\n x2=\"3.01\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class ListIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-loader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"2\"\n x2=\"12\"\n y2=\"6\" />\n <line\n x1=\"12\"\n y1=\"18\"\n x2=\"12\"\n y2=\"22\" />\n <line\n x1=\"4.93\"\n y1=\"4.93\"\n x2=\"7.76\"\n y2=\"7.76\" />\n <line\n x1=\"16.24\"\n y1=\"16.24\"\n x2=\"19.07\"\n y2=\"19.07\" />\n <line\n x1=\"2\"\n y1=\"12\"\n x2=\"6\"\n y2=\"12\" />\n <line\n x1=\"18\"\n y1=\"12\"\n x2=\"22\"\n y2=\"12\" />\n <line\n x1=\"4.93\"\n y1=\"19.07\"\n x2=\"7.76\"\n y2=\"16.24\" />\n <line\n x1=\"16.24\"\n y1=\"7.76\"\n x2=\"19.07\"\n y2=\"4.93\" />\n </svg>\n `,\n})\nexport class LoaderIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-lock',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"11\"\n width=\"18\"\n height=\"11\"\n rx=\"2\"\n ry=\"2\" />\n <path d=\"M7 11V7a5 5 0 0 1 10 0v4\" />\n </svg>\n `,\n})\nexport class LockIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-log-in',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4\" />\n <polyline points=\"10 17 15 12 10 7\" />\n <line\n x1=\"15\"\n y1=\"12\"\n x2=\"3\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class LogInIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-log-out',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4\" />\n <polyline points=\"16 17 21 12 16 7\" />\n <line\n x1=\"21\"\n y1=\"12\"\n x2=\"9\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class LogOutIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-mail',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z\" />\n <polyline points=\"22 6 12 13 2 6\" />\n </svg>\n `,\n})\nexport class MailIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-map-pin',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z\" />\n <circle\n cx=\"12\"\n cy=\"10\"\n r=\"3\" />\n </svg>\n `,\n})\nexport class MapPinIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-maximize',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M8 3H5a2 2 0 0 0-2 2v3\" />\n <path d=\"M21 8V5a2 2 0 0 0-2-2h-3\" />\n <path d=\"M3 16v3a2 2 0 0 0 2 2h3\" />\n <path d=\"M16 21h3a2 2 0 0 0 2-2v-3\" />\n </svg>\n `,\n})\nexport class MaximizeIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"3\"\n y1=\"6\"\n x2=\"21\"\n y2=\"6\" />\n <line\n x1=\"3\"\n y1=\"12\"\n x2=\"21\"\n y2=\"12\" />\n <line\n x1=\"3\"\n y1=\"18\"\n x2=\"21\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class MenuIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-mic',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z\" />\n <path d=\"M19 10v2a7 7 0 0 1-14 0v-2\" />\n <line\n x1=\"12\"\n y1=\"19\"\n x2=\"12\"\n y2=\"23\" />\n <line\n x1=\"8\"\n y1=\"23\"\n x2=\"16\"\n y2=\"23\" />\n </svg>\n `,\n})\nexport class MicIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-microsoft',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"1\"\n y=\"1\"\n width=\"10\"\n height=\"10\"\n fill=\"#F25022\" />\n <rect\n x=\"13\"\n y=\"1\"\n width=\"10\"\n height=\"10\"\n fill=\"#7FBA00\" />\n <rect\n x=\"1\"\n y=\"13\"\n width=\"10\"\n height=\"10\"\n fill=\"#00A4EF\" />\n <rect\n x=\"13\"\n y=\"13\"\n width=\"10\"\n height=\"10\"\n fill=\"#FFB900\" />\n </svg>\n `,\n})\nexport class MicrosoftIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-minimize',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M8 3v3a2 2 0 0 1-2 2H3\" />\n <path d=\"M21 8h-3a2 2 0 0 1-2-2V3\" />\n <path d=\"M3 16h3a2 2 0 0 1 2 2v3\" />\n <path d=\"M16 21v-3a2 2 0 0 1 2-2h3\" />\n </svg>\n `,\n})\nexport class MinimizeIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-monitor',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"2\"\n y=\"3\"\n width=\"20\"\n height=\"14\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"8\"\n y1=\"21\"\n x2=\"16\"\n y2=\"21\" />\n <line\n x1=\"12\"\n y1=\"17\"\n x2=\"12\"\n y2=\"21\" />\n </svg>\n `,\n})\nexport class MonitorIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-moon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z\" />\n </svg>\n `,\n})\nexport class MoonIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-more-horizontal',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"1\" />\n <circle\n cx=\"19\"\n cy=\"12\"\n r=\"1\" />\n <circle\n cx=\"5\"\n cy=\"12\"\n r=\"1\" />\n </svg>\n `,\n})\nexport class MoreHorizontalIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-package',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"16.5\"\n y1=\"9.4\"\n x2=\"7.5\"\n y2=\"4.21\" />\n <path\n d=\"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z\" />\n <polyline points=\"3.27 6.96 12 12.01 20.73 6.96\" />\n <line\n x1=\"12\"\n y1=\"22.08\"\n x2=\"12\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class PackageIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-paperclip',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48\" />\n </svg>\n `,\n})\nexport class PaperclipIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-pause',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"6\"\n y=\"4\"\n width=\"4\"\n height=\"16\" />\n <rect\n x=\"14\"\n y=\"4\"\n width=\"4\"\n height=\"16\" />\n </svg>\n `,\n})\nexport class PauseIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-pencil',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M17 3a2.83 2.83 0 0 1 4 4L7.5 20.5 2 22l1.5-5.5Z\" />\n </svg>\n `,\n})\nexport class PencilIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-phone',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z\" />\n </svg>\n `,\n})\nexport class PhoneIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-play',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"5 3 19 12 5 21 5 3\" />\n </svg>\n `,\n})\nexport class PlayIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-printer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"6 9 6 2 18 2 18 9\" />\n <path\n d=\"M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2\" />\n <rect\n x=\"6\"\n y=\"14\"\n width=\"12\"\n height=\"8\" />\n </svg>\n `,\n})\nexport class PrinterIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-refresh-cw',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"23 4 23 10 17 10\" />\n <polyline points=\"1 20 1 14 7 14\" />\n <path d=\"M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15\" />\n </svg>\n `,\n})\nexport class RefreshCwIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-save',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z\" />\n <polyline points=\"17 21 17 13 7 13 7 21\" />\n <polyline points=\"7 3 7 8 15 8\" />\n </svg>\n `,\n})\nexport class SaveIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-search',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"11\"\n cy=\"11\"\n r=\"8\" />\n <path d=\"m21 21-4.35-4.35\" />\n </svg>\n `,\n})\nexport class SearchIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-send',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"22\"\n y1=\"2\"\n x2=\"11\"\n y2=\"13\" />\n <polygon points=\"22 2 15 22 11 13 2 9 22 2\" />\n </svg>\n `,\n})\nexport class SendIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-settings',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"3\" />\n <path\n d=\"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06A1.65 1.65 0 0 0 9 4.68a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z\" />\n </svg>\n `,\n})\nexport class SettingsIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-share',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"18\"\n cy=\"5\"\n r=\"3\" />\n <circle\n cx=\"6\"\n cy=\"12\"\n r=\"3\" />\n <circle\n cx=\"18\"\n cy=\"19\"\n r=\"3\" />\n <line\n x1=\"8.59\"\n y1=\"13.51\"\n x2=\"15.42\"\n y2=\"17.49\" />\n <line\n x1=\"15.41\"\n y1=\"6.51\"\n x2=\"8.59\"\n y2=\"10.49\" />\n </svg>\n `,\n})\nexport class ShareIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-shield',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\" />\n </svg>\n `,\n})\nexport class ShieldIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-shopping-cart',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"9\"\n cy=\"21\"\n r=\"1\" />\n <circle\n cx=\"20\"\n cy=\"21\"\n r=\"1\" />\n <path d=\"M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6\" />\n </svg>\n `,\n})\nexport class ShoppingCartIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-smartphone',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"5\"\n y=\"2\"\n width=\"14\"\n height=\"20\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"12\"\n y1=\"18\"\n x2=\"12.01\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class SmartphoneIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-star',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon\n points=\"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2\" />\n </svg>\n `,\n})\nexport class StarIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-sun',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"5\" />\n <line\n x1=\"12\"\n y1=\"1\"\n x2=\"12\"\n y2=\"3\" />\n <line\n x1=\"12\"\n y1=\"21\"\n x2=\"12\"\n y2=\"23\" />\n <line\n x1=\"4.22\"\n y1=\"4.22\"\n x2=\"5.64\"\n y2=\"5.64\" />\n <line\n x1=\"18.36\"\n y1=\"18.36\"\n x2=\"19.78\"\n y2=\"19.78\" />\n <line\n x1=\"1\"\n y1=\"12\"\n x2=\"3\"\n y2=\"12\" />\n <line\n x1=\"21\"\n y1=\"12\"\n x2=\"23\"\n y2=\"12\" />\n <line\n x1=\"4.22\"\n y1=\"19.78\"\n x2=\"5.64\"\n y2=\"18.36\" />\n <line\n x1=\"18.36\"\n y1=\"5.64\"\n x2=\"19.78\"\n y2=\"4.22\" />\n </svg>\n `,\n})\nexport class SunIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-thumbs-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M10 15v4a3 3 0 0 0 3 3l4-9V2H5.72a2 2 0 0 0-2 1.7l-1.38 9a2 2 0 0 0 2 2.3zm7-13h2.67A2.31 2.31 0 0 1 22 4v7a2.31 2.31 0 0 1-2.33 2H17\" />\n </svg>\n `,\n})\nexport class ThumbsDownIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-thumbs-up',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9a2 2 0 0 0-2-2.3zM7 22H4a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2h3\" />\n </svg>\n `,\n})\nexport class ThumbsUpIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-trending-up',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"23 6 13.5 15.5 8.5 10.5 1 18\" />\n <polyline points=\"17 6 23 6 23 12\" />\n </svg>\n `,\n})\nexport class TrendingUpIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-unlock',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"11\"\n width=\"18\"\n height=\"11\"\n rx=\"2\"\n ry=\"2\" />\n <path d=\"M7 11V7a5 5 0 0 1 9.9-1\" />\n </svg>\n `,\n})\nexport class UnlockIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-users',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\" />\n <circle\n cx=\"9\"\n cy=\"7\"\n r=\"4\" />\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87\" />\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\" />\n </svg>\n `,\n})\nexport class UsersIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-video',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"23 7 16 12 23 17 23 7\" />\n <rect\n x=\"1\"\n y=\"5\"\n width=\"15\"\n height=\"14\"\n rx=\"2\"\n ry=\"2\" />\n </svg>\n `,\n})\nexport class VideoIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-volume-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"11 5 6 9 2 9 2 15 6 15 11 19 11 5\" />\n <path d=\"M19.07 4.93a10 10 0 0 1 0 14.14M15.54 8.46a5 5 0 0 1 0 7.07\" />\n </svg>\n `,\n})\nexport class Volume2IconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-wifi',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M5 12.55a11 11 0 0 1 14.08 0\" />\n <path d=\"M1.42 9a16 16 0 0 1 21.16 0\" />\n <path d=\"M8.53 16.11a6 6 0 0 1 6.95 0\" />\n <line\n x1=\"12\"\n y1=\"20\"\n x2=\"12.01\"\n y2=\"20\" />\n </svg>\n `,\n})\nexport class WifiIconComponent {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-x-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"15\"\n y1=\"9\"\n x2=\"9\"\n y2=\"15\" />\n <line\n x1=\"9\"\n y1=\"9\"\n x2=\"15\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class XCircleIconComponent {}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-x-twitter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n style: 'display: inline-flex; width: 1em; height: 1em;',\n '[style.color]': \"brand() ? '#000000' : null\",\n },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z\" />\n </svg>\n `,\n})\nexport class XTwitterIconComponent {\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'ea-icon-zap',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { style: 'display: inline-flex; width: 1em; height: 1em;' },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"13 2 3 14 12 14 11 22 21 10 12 10 13 2\" />\n </svg>\n `,\n})\nexport class ZapIconComponent {}\n","import { NgClass } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n computed,\n forwardRef,\n inject,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { AlertCircleIconComponent } from '../icons/alert-circle.component';\nimport { EyeOffIconComponent } from '../icons/eye-off.component';\nimport { EyeIconComponent } from '../icons/eye.component';\n\n/** Visual size of the input. */\nexport type InputSize = 'sm' | 'md' | 'lg';\n/** HTML `type` attribute applied to the underlying `<input>`. */\nexport type InputType =\n | 'text'\n | 'email'\n | 'password'\n | 'number'\n | 'search'\n | 'tel'\n | 'url';\n\n/**\n * Single-line text field with label, hint, and error message support.\n * Includes a built-in show/hide toggle for `password` inputs and integrates\n * with Angular forms via `ControlValueAccessor`. Prefix and suffix content\n * can be projected via the `prefix` and `suffix` slots.\n */\n@Component({\n selector: 'ea-input',\n templateUrl: './input.component.html',\n styleUrl: './input.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass, EyeIconComponent, EyeOffIconComponent, AlertCircleIconComponent],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputComponent),\n multi: true,\n },\n ],\n})\nexport class InputComponent implements ControlValueAccessor, AfterViewInit {\n readonly inputEl = viewChild<ElementRef<HTMLInputElement>>('inputEl');\n protected readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly label = input<string | undefined>(undefined);\n readonly type = input<InputType>('text');\n readonly placeholder = input<string>('');\n readonly size = input<InputSize>('md');\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly autocomplete = input<string | undefined>(undefined);\n readonly autofocus = input<boolean>(false);\n readonly showPasswordToggle = input<boolean>(true);\n readonly id = input<string>(`ea-input-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way value binding\n readonly value = model<string>('');\n\n // Internal state\n readonly isFocused = signal(false);\n readonly passwordVisible = signal(false);\n private readonly _formDisabled = signal(false);\n\n // Outputs\n /** Fires when the input receives focus. */\n readonly focused = output<FocusEvent>();\n /** Fires when the input loses focus. */\n readonly blurred = output<FocusEvent>();\n\n // ControlValueAccessor callbacks\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly effectiveType = computed<InputType>(() =>\n this.type() === 'password' && this.passwordVisible() ? 'text' : this.type(),\n );\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly wrapperClasses = computed(() => ({\n [`ea-input-wrapper--${this.size()}`]: true,\n 'ea-input-wrapper--error': this.hasError(),\n 'ea-input-wrapper--focused': this.isFocused(),\n 'ea-input-wrapper--disabled': this.isDisabled(),\n 'ea-input-wrapper--readonly': this.readonly(),\n }));\n\n ngAfterViewInit(): void {\n if (this.autofocus()) {\n setTimeout(() => this.inputEl()?.nativeElement.focus());\n }\n }\n\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n // Handlers\n handleInput(event: Event): void {\n const value = (event.target as HTMLInputElement).value;\n this.value.set(value);\n this.onChange(value);\n }\n\n handleFocus(event: FocusEvent): void {\n this.isFocused.set(true);\n this.focused.emit(event);\n }\n\n handleBlur(event: FocusEvent): void {\n this.isFocused.set(false);\n this.onTouched();\n this.blurred.emit(event);\n }\n\n /** Toggles the password reveal state for `type=\"password\"` inputs. */\n togglePasswordVisibility(): void {\n this.passwordVisible.update(value => !value);\n }\n\n /** Moves keyboard focus to the underlying native input element. */\n focus(): void {\n this.inputEl()?.nativeElement.focus();\n }\n}\n","<div class=\"ea-input-field\">\n @if (label()) {\n <label\n class=\"ea-input-field__label\"\n [for]=\"id()\"\n [class.ea-input-field__label--required]=\"required()\">\n {{ label() }}\n </label>\n }\n\n <div\n class=\"ea-input-wrapper\"\n [ngClass]=\"wrapperClasses()\">\n <!-- Prefix slot (icon or text) -->\n <span class=\"ea-input-wrapper__prefix\">\n <ng-content select=\"[slot=prefix]\" />\n </span>\n\n <input\n #inputEl\n class=\"ea-input\"\n [id]=\"id()\"\n [type]=\"effectiveType()\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"isDisabled()\"\n [readOnly]=\"readonly()\"\n [required]=\"required()\"\n [value]=\"value()\"\n [attr.autocomplete]=\"autocomplete() ?? null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (input)=\"handleInput($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\" />\n\n <!-- Suffix slot (icon, clear button, etc.) -->\n <span class=\"ea-input-wrapper__suffix\">\n <ng-content select=\"[slot=suffix]\" />\n </span>\n\n <!-- Built-in password visibility toggle -->\n @if (type() === 'password' && showPasswordToggle()) {\n <button\n type=\"button\"\n class=\"ea-input-wrapper__password-toggle\"\n [attr.aria-label]=\"\n passwordVisible()\n ? i18n.messages().input.hidePassword\n : i18n.messages().input.showPassword\n \"\n [attr.aria-pressed]=\"passwordVisible()\"\n (click)=\"togglePasswordVisibility()\">\n @if (passwordVisible()) {\n <ea-icon-eye-off />\n } @else {\n <ea-icon-eye />\n }\n </button>\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-input-field__message ea-input-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n <ea-icon-alert-circle class=\"ea-input-field__message-icon\" />\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-input-field__message ea-input-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostListener,\n Injector,\n afterNextRender,\n computed,\n inject,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\n\n/** Placement of the menu list relative to its trigger. */\nexport type MenuPlacement = 'bottom-start' | 'bottom-end' | 'top-start' | 'top-end';\n\n/**\n * Popup action menu attached to any focusable element via the\n * `[eaMenuTrigger]` directive. Supports keyboard navigation\n * (arrow keys, Home/End), closes on outside click or Escape, and restores\n * focus to the trigger on close.\n */\n@Component({\n selector: 'ea-menu',\n imports: [NgClass],\n templateUrl: './menu.component.html',\n styleUrl: './menu.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MenuComponent {\n private readonly injector = inject(Injector);\n private readonly i18n = inject(EagamiI18nService);\n private readonly listEl = viewChild<ElementRef<HTMLElement>>('listEl');\n\n readonly placement = input<MenuPlacement>('bottom-start');\n readonly disabled = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined, {\n alias: 'aria-label',\n });\n readonly id = input<string>(`ea-menu-${Math.random().toString(36).slice(2, 9)}`);\n\n /** Accessible label for the menu, falling back to the active locale. */\n readonly resolvedAriaLabel = computed(\n () => this.ariaLabel() ?? this.i18n.messages().menu.label,\n );\n\n readonly open = model<boolean>(false);\n /** Fires when the menu opens. */\n readonly opened = output<void>();\n /** Fires when the menu closes. */\n readonly closed = output<void>();\n\n private triggerEl: HTMLElement | null = null;\n private readonly triggerRect = signal<DOMRect | null>(null);\n\n readonly listClasses = computed(() => ({\n [`ea-menu__list--${this.placement()}`]: true,\n }));\n\n readonly listStyle = computed<Record<string, string>>(() => {\n const rect = this.triggerRect();\n if (!rect) return {};\n const placement = this.placement();\n const gap = 4;\n const style: Record<string, string> = {};\n\n if (placement === 'bottom-start' || placement === 'bottom-end') {\n style['top'] = `${rect.bottom + gap}px`;\n } else {\n style['bottom'] = `${window.innerHeight - rect.top + gap}px`;\n }\n\n if (placement === 'bottom-start' || placement === 'top-start') {\n style['left'] = `${rect.left}px`;\n } else {\n style['right'] = `${window.innerWidth - rect.right}px`;\n }\n\n return style;\n });\n\n /** Toggles the menu open state, anchoring it to the given trigger element. */\n toggleAt(triggerEl: HTMLElement): void {\n if (this.disabled()) return;\n if (this.open()) {\n this.close();\n } else {\n this.openAt(triggerEl);\n }\n }\n\n /** Opens the menu anchored to the given trigger element and focuses the first item. */\n openAt(triggerEl: HTMLElement): void {\n if (this.disabled()) return;\n this.triggerEl = triggerEl;\n this.triggerRect.set(triggerEl.getBoundingClientRect());\n this.open.set(true);\n this.opened.emit();\n afterNextRender(() => this.focusFirstItem(), { injector: this.injector });\n }\n\n /**\n * Closes the menu if it is open. Pass `restoreFocus: true` to return focus\n * to the trigger element (used when closing via Escape or item activation;\n * not used on outside click, where the user has chosen a new focus target).\n */\n close(restoreFocus = false): void {\n if (!this.open()) return;\n this.open.set(false);\n this.closed.emit();\n if (restoreFocus) this.triggerEl?.focus();\n }\n\n private getEnabledItems(): HTMLButtonElement[] {\n const list = this.listEl()?.nativeElement;\n if (!list) return [];\n return Array.from(\n list.querySelectorAll<HTMLButtonElement>('[role=\"menuitem\"]:not([disabled])'),\n );\n }\n\n private focusFirstItem(): void {\n this.getEnabledItems()[0]?.focus();\n }\n\n @HostListener('document:keydown', ['$event'])\n onKeydown(event: KeyboardEvent): void {\n if (!this.open()) return;\n const list = this.listEl()?.nativeElement;\n const active = document.activeElement as HTMLElement | null;\n if (!list || !active || !list.contains(active)) return;\n const items = this.getEnabledItems();\n if (items.length === 0) return;\n\n const current = items.indexOf(active as HTMLButtonElement);\n let next = -1;\n\n switch (event.key) {\n case 'ArrowDown':\n event.preventDefault();\n next = current < items.length - 1 ? current + 1 : 0;\n break;\n case 'ArrowUp':\n event.preventDefault();\n next = current > 0 ? current - 1 : items.length - 1;\n break;\n case 'Home':\n event.preventDefault();\n next = 0;\n break;\n case 'End':\n event.preventDefault();\n next = items.length - 1;\n break;\n }\n\n if (next >= 0) items[next].focus();\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event): void {\n if (!this.open()) return;\n const target = event.target as Node;\n if (this.triggerEl?.contains(target)) return;\n if (this.listEl()?.nativeElement.contains(target)) return;\n this.close();\n }\n\n @HostListener('document:keydown.escape')\n onEscape(): void {\n if (!this.open()) return;\n this.close(true);\n }\n\n @HostListener('window:resize')\n @HostListener('window:scroll')\n onViewportChange(): void {\n if (!this.open() || !this.triggerEl) return;\n this.triggerRect.set(this.triggerEl.getBoundingClientRect());\n }\n}\n","@if (open()) {\n <div\n #listEl\n class=\"ea-menu__list\"\n role=\"menu\"\n [id]=\"id()\"\n [ngClass]=\"listClasses()\"\n [style]=\"listStyle()\"\n [attr.aria-label]=\"resolvedAriaLabel()\">\n <ng-content />\n </div>\n}\n","import { ChangeDetectionStrategy, Component, inject, input, output } from '@angular/core';\n\nimport { MenuComponent } from './menu.component';\n\n/** Visual style of a menu item — `danger` for destructive actions. */\nexport type MenuItemVariant = 'default' | 'danger';\n\n/**\n * Selectable row inside an `ea-menu`. Supports leading icons via the `icon`\n * content slot, a disabled state, and a `danger` variant for destructive\n * actions. Activating an item closes its parent menu.\n */\n@Component({\n selector: 'ea-menu-item',\n templateUrl: './menu-item.component.html',\n styleUrl: './menu-item.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MenuItemComponent {\n private readonly menu = inject(MenuComponent, { optional: true });\n\n // Inputs\n readonly disabled = input<boolean>(false);\n readonly variant = input<MenuItemVariant>('default');\n\n // Outputs\n /** Fires when the item is activated; the parent menu closes immediately afterwards. */\n readonly clicked = output<MouseEvent>();\n\n handleClick(event: MouseEvent): void {\n if (this.disabled()) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n this.clicked.emit(event);\n this.menu?.close(true);\n }\n}\n","<button\n type=\"button\"\n class=\"ea-menu-item\"\n role=\"menuitem\"\n [class.ea-menu-item--disabled]=\"disabled()\"\n [class.ea-menu-item--danger]=\"variant() === 'danger'\"\n [disabled]=\"disabled()\"\n (click)=\"handleClick($event)\">\n <span class=\"ea-menu-item__icon\">\n <ng-content select=\"[slot=icon]\" />\n </span>\n <span class=\"ea-menu-item__label\">\n <ng-content />\n </span>\n</button>\n","import { Directive, ElementRef, inject, input } from '@angular/core';\n\nimport { MenuComponent } from './menu.component';\n\n/**\n * Wires a focusable host element (typically a button) to an `ea-menu`,\n * handling click and keyboard activation (ArrowDown/Enter/Space to open,\n * Escape to close) and applying the appropriate ARIA attributes.\n */\n@Directive({\n selector: '[eaMenuTrigger]',\n host: {\n '[attr.aria-haspopup]': '\"menu\"',\n '[attr.aria-expanded]': 'menu()?.open() ?? false',\n '[attr.aria-controls]': 'menu()?.id() ?? null',\n '(click)': 'handleClick()',\n '(keydown)': 'handleKeydown($event)',\n },\n})\nexport class MenuTriggerDirective {\n private readonly el = inject(ElementRef<HTMLElement>);\n\n readonly menu = input.required<MenuComponent>({ alias: 'eaMenuTrigger' });\n\n handleClick(): void {\n const m = this.menu();\n if (m.disabled()) return;\n m.toggleAt(this.el.nativeElement);\n }\n\n handleKeydown(event: KeyboardEvent): void {\n const m = this.menu();\n if (m.disabled()) return;\n\n if (event.key === 'ArrowDown' || event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n if (!m.open()) m.openAt(this.el.nativeElement);\n } else if (event.key === 'Escape' && m.open()) {\n event.preventDefault();\n m.close();\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n inject,\n input,\n model,\n output,\n} from '@angular/core';\n\nimport { ButtonComponent } from '../button/button.component';\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { ChevronLeftIconComponent } from '../icons/chevron-left.component';\nimport { ChevronRightIconComponent } from '../icons/chevron-right.component';\n\n/** Horizontal alignment of paginator controls within their container. */\nexport type PaginatorAlign = 'left' | 'center' | 'right';\n\n/** Snapshot of the paginator's page and page size. */\nexport interface PaginatorState {\n page: number;\n pageSize: number;\n}\n\n/**\n * Page navigation control with previous/next buttons, numbered page jumps,\n * an optional page-size selector, and a range label. Exposes `page` and\n * `pageSize` as two-way `model()` bindings and emits a single `changed`\n * event whenever either changes.\n */\n@Component({\n selector: 'ea-paginator',\n imports: [ButtonComponent, ChevronLeftIconComponent, ChevronRightIconComponent],\n templateUrl: './paginator.component.html',\n styleUrl: './paginator.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class PaginatorComponent {\n protected readonly i18n = inject(EagamiI18nService);\n\n readonly totalItems = input.required<number>();\n readonly pageSizeOptions = input<number[]>([10, 25, 50, 100]);\n readonly showPageSizeSelector = input<boolean>(true);\n readonly showRangeLabel = input<boolean>(true);\n readonly align = input<PaginatorAlign>('right');\n readonly disabled = input<boolean>(false);\n\n readonly page = model<number>(1);\n readonly pageSize = model<number>(10);\n\n /** Fires when the user changes either the current page or the page size. */\n readonly changed = output<PaginatorState>();\n\n readonly totalPages = computed(() =>\n Math.max(1, Math.ceil(this.totalItems() / this.pageSize())),\n );\n\n readonly rangeStart = computed(() =>\n this.totalItems() === 0 ? 0 : (this.page() - 1) * this.pageSize() + 1,\n );\n\n readonly rangeEnd = computed(() =>\n Math.min(this.page() * this.pageSize(), this.totalItems()),\n );\n\n readonly canGoPrev = computed(() => this.page() > 1);\n\n readonly canGoNext = computed(() => this.page() < this.totalPages());\n\n readonly visiblePages = computed(() => {\n const total = this.totalPages();\n const current = this.page();\n const pages: (number | 'ellipsis')[] = [];\n\n if (total <= 7) {\n for (let i = 1; i <= total; i++) pages.push(i);\n return pages;\n }\n\n pages.push(1);\n\n if (current > 3) {\n pages.push('ellipsis');\n }\n\n const start = Math.max(2, current - 1);\n const end = Math.min(total - 1, current + 1);\n for (let i = start; i <= end; i++) {\n pages.push(i);\n }\n\n if (current < total - 2) {\n pages.push('ellipsis');\n }\n\n pages.push(total);\n return pages;\n });\n\n /** Navigates to the given page, clamped into the valid range. */\n goToPage(page: number): void {\n if (this.disabled()) return;\n const clamped = Math.max(1, Math.min(page, this.totalPages()));\n if (clamped === this.page()) return;\n this.page.set(clamped);\n this.changed.emit({ page: clamped, pageSize: this.pageSize() });\n }\n\n /** Navigates to the previous page if one exists. */\n prevPage(): void {\n if (this.canGoPrev()) this.goToPage(this.page() - 1);\n }\n\n /** Navigates to the next page if one exists. */\n nextPage(): void {\n if (this.canGoNext()) this.goToPage(this.page() + 1);\n }\n\n onPageSizeChange(event: Event): void {\n if (this.disabled()) return;\n const newSize = Number((event.target as HTMLSelectElement).value);\n this.pageSize.set(newSize);\n this.page.set(1);\n this.changed.emit({ page: 1, pageSize: newSize });\n }\n}\n","<div\n class=\"ea-paginator\"\n [class.ea-paginator--left]=\"align() === 'left'\"\n [class.ea-paginator--center]=\"align() === 'center'\"\n [class.ea-paginator--disabled]=\"disabled()\"\n role=\"navigation\"\n [attr.aria-label]=\"i18n.messages().paginator.label\">\n @if (showPageSizeSelector()) {\n <div class=\"ea-paginator__page-size\">\n <label\n class=\"ea-paginator__label\"\n for=\"ea-paginator-size\">\n {{ i18n.messages().paginator.rowsPerPage }}\n </label>\n <select\n class=\"ea-paginator__select\"\n id=\"ea-paginator-size\"\n [disabled]=\"disabled()\"\n (change)=\"onPageSizeChange($event)\">\n @for (size of pageSizeOptions(); track size) {\n <option\n [value]=\"size\"\n [selected]=\"size === pageSize()\">\n {{ size }}\n </option>\n }\n </select>\n </div>\n }\n\n @if (showRangeLabel()) {\n <span class=\"ea-paginator__range\">\n {{ i18n.messages().paginator.range(rangeStart(), rangeEnd(), totalItems()) }}\n </span>\n }\n\n <div class=\"ea-paginator__controls\">\n <ea-button\n variant=\"ghost\"\n size=\"sm\"\n [disabled]=\"disabled() || !canGoPrev()\"\n [aria-label]=\"i18n.messages().paginator.previousPage\"\n (clicked)=\"prevPage()\">\n <ea-icon-chevron-left />\n </ea-button>\n\n @for (p of visiblePages(); track $index) {\n @if (p === 'ellipsis') {\n <span class=\"ea-paginator__ellipsis\">…</span>\n } @else {\n <ea-button\n class=\"ea-paginator__page-btn\"\n [class.ea-paginator__page-btn--active]=\"p === page()\"\n variant=\"ghost\"\n size=\"sm\"\n [disabled]=\"disabled()\"\n [aria-current]=\"p === page() ? 'page' : undefined\"\n (clicked)=\"goToPage(p)\">\n {{ p }}\n </ea-button>\n }\n }\n\n <ea-button\n variant=\"ghost\"\n size=\"sm\"\n [disabled]=\"disabled() || !canGoNext()\"\n [aria-label]=\"i18n.messages().paginator.nextPage\"\n (clicked)=\"nextPage()\">\n <ea-icon-chevron-right />\n </ea-button>\n </div>\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\n\n/** Semantic colour scheme of the progress bar. */\nexport type ProgressBarVariant = 'default' | 'success' | 'warning' | 'error' | 'info';\n/** Visual height of the progress bar. */\nexport type ProgressBarSize = 'sm' | 'md' | 'lg';\n\n/**\n * Linear progress indicator supporting both determinate (driven by `value`\n * and `max`) and indeterminate modes. Optionally renders an inline label\n * and/or the current percentage.\n */\n@Component({\n selector: 'ea-progress-bar',\n imports: [NgClass],\n templateUrl: './progress-bar.component.html',\n styleUrl: './progress-bar.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ProgressBarComponent {\n protected readonly i18n = inject(EagamiI18nService);\n\n readonly value = input<number>(0);\n readonly max = input<number>(100);\n readonly variant = input<ProgressBarVariant>('default');\n readonly size = input<ProgressBarSize>('md');\n readonly label = input<string | undefined>(undefined);\n readonly showValue = input<boolean>(false);\n readonly indeterminate = input<boolean>(false);\n\n readonly percentage = computed(() => {\n const max = this.max();\n if (max <= 0) return 0;\n return Math.min(100, Math.max(0, (this.value() / max) * 100));\n });\n\n readonly percentageRounded = computed(() => Math.round(this.percentage()));\n\n readonly hostClasses = computed(() => ({\n [`ea-progress-bar--${this.variant()}`]: true,\n [`ea-progress-bar--${this.size()}`]: true,\n 'ea-progress-bar--indeterminate': this.indeterminate(),\n }));\n}\n","<div\n class=\"ea-progress-bar\"\n [ngClass]=\"hostClasses()\">\n @if (label() || showValue()) {\n <div class=\"ea-progress-bar__header\">\n @if (label()) {\n <span class=\"ea-progress-bar__label\">{{ label() }}</span>\n }\n @if (showValue() && !indeterminate()) {\n <span class=\"ea-progress-bar__value\">{{ percentageRounded() }}%</span>\n }\n </div>\n }\n <div\n class=\"ea-progress-bar__track\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"indeterminate() ? null : percentageRounded()\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [attr.aria-busy]=\"indeterminate() || null\"\n [attr.aria-label]=\"label() || i18n.messages().progressBar.label\">\n <div\n class=\"ea-progress-bar__fill\"\n [style.width]=\"indeterminate() ? null : percentage() + '%'\"></div>\n </div>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n/** Visual size shared by all radios in the group. */\nexport type RadioSize = 'sm' | 'md' | 'lg';\n/** Layout direction for radios within the group. */\nexport type RadioOrientation = 'vertical' | 'horizontal';\n\n/**\n * Composite single-select control made up of `ea-radio` children. Manages\n * shared state (name, size, disabled) for its options and integrates with\n * Angular forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-radio-group',\n templateUrl: './radio-group.component.html',\n styleUrl: './radio-group.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => RadioGroupComponent),\n multi: true,\n },\n ],\n})\nexport class RadioGroupComponent implements ControlValueAccessor {\n // Inputs\n readonly id = input<string>(`ea-radio-group-${Math.random().toString(36).slice(2, 9)}`);\n readonly name = input<string>(`ea-radio-${Math.random().toString(36).slice(2, 9)}`);\n readonly size = input<RadioSize>('md');\n readonly orientation = input<RadioOrientation>('vertical');\n readonly disabled = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly label = input<string | undefined>(undefined);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n\n // Two-way value binding\n readonly value = model<string>('');\n\n // Output\n /** Fires with the new value when an option is selected. */\n readonly changed = output<string>();\n\n // Internal state\n private readonly _formDisabled = signal(false);\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n // ControlValueAccessor callbacks\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n // ControlValueAccessor\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n /** Programmatically selects the option with the given value. */\n select(val: string): void {\n if (this.isDisabled()) return;\n this.value.set(val);\n this.onChange(val);\n this.onTouched();\n this.changed.emit(val);\n }\n}\n","<div class=\"ea-radio-group-field\">\n @if (label()) {\n <span\n class=\"ea-radio-group-field__label\"\n [id]=\"id() + '-label'\"\n [class.ea-radio-group-field__label--required]=\"required()\">\n {{ label() }}\n </span>\n }\n\n <div\n class=\"ea-radio-group\"\n [class.ea-radio-group--horizontal]=\"orientation() === 'horizontal'\"\n [class.ea-radio-group--vertical]=\"orientation() === 'vertical'\"\n role=\"radiogroup\"\n [id]=\"id()\"\n [attr.aria-labelledby]=\"label() ? id() + '-label' : null\"\n [attr.aria-label]=\"!label() ? (ariaLabel() ?? null) : null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \">\n <ng-content />\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-radio-group-field__message ea-radio-group-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-radio-group-field__message ea-radio-group-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { RadioGroupComponent } from './radio-group.component';\n\n/**\n * Single radio option used inside an `ea-radio-group`. Inherits its size and\n * disabled state from the parent group and selecting it updates the group's\n * value.\n */\n@Component({\n selector: 'ea-radio',\n templateUrl: './radio.component.html',\n styleUrl: './radio.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n})\nexport class RadioComponent {\n private readonly group = inject(RadioGroupComponent);\n\n // Inputs\n readonly value = input.required<string>();\n readonly label = input<string | undefined>(undefined);\n readonly disabled = input<boolean>(false);\n readonly id = input<string>(`ea-radio-opt-${Math.random().toString(36).slice(2, 9)}`);\n\n // Computed\n readonly isChecked = computed(() => this.group.value() === this.value());\n readonly isDisabled = computed(() => this.disabled() || this.group.isDisabled());\n readonly name = computed(() => this.group.name());\n readonly size = computed(() => this.group.size());\n\n readonly hostClasses = computed(() => ({\n [`ea-radio--${this.size()}`]: true,\n 'ea-radio--disabled': this.isDisabled(),\n 'ea-radio--checked': this.isChecked(),\n }));\n\n handleChange(): void {\n if (this.isDisabled()) return;\n this.group.select(this.value());\n }\n}\n","<label\n class=\"ea-radio\"\n [ngClass]=\"hostClasses()\"\n [for]=\"id()\">\n <input\n type=\"radio\"\n class=\"ea-radio__input\"\n [id]=\"id()\"\n [name]=\"name()\"\n [value]=\"value()\"\n [checked]=\"isChecked()\"\n [disabled]=\"isDisabled()\"\n (change)=\"handleChange()\" />\n\n <span\n class=\"ea-radio__circle\"\n aria-hidden=\"true\">\n </span>\n\n @if (label()) {\n <span class=\"ea-radio__label\">{{ label() }}</span>\n }\n</label>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n viewChildren,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { SelectOption } from '../select-option';\n\n/** Visual size of the segmented control. */\nexport type SegmentedSize = 'sm' | 'md' | 'lg';\n\n/**\n * Compact toggle button group for picking one of a small set of options\n * (e.g. List/Grid/Kanban or Light/Dark). Implements `radiogroup` semantics\n * and `ControlValueAccessor`, with full keyboard support\n * (arrow keys, Home/End, Enter/Space).\n */\n@Component({\n selector: 'ea-segmented',\n templateUrl: './segmented.component.html',\n styleUrl: './segmented.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SegmentedComponent),\n multi: true,\n },\n ],\n})\nexport class SegmentedComponent implements ControlValueAccessor {\n readonly buttonEls = viewChildren<ElementRef<HTMLButtonElement>>('optionEl');\n\n readonly options = input.required<SelectOption[]>();\n readonly label = input<string | undefined>(undefined);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly size = input<SegmentedSize>('md');\n readonly disabled = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly fullWidth = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-segmented-${Math.random().toString(36).slice(2, 9)}`);\n\n readonly value = model<string>('');\n /** Fires with the new value when the user selects a different option. */\n readonly changed = output<string>();\n\n private readonly _formDisabled = signal(false);\n\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly enabledOptions = computed(() => this.options().filter(opt => !opt.disabled));\n\n readonly hostClasses = computed(() => ({\n [`ea-segmented--${this.size()}`]: true,\n 'ea-segmented--full-width': this.fullWidth(),\n 'ea-segmented--disabled': this.isDisabled(),\n 'ea-segmented--error': this.hasError(),\n }));\n\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n isSelected(option: SelectOption): boolean {\n return this.value() === option.value;\n }\n\n isOptionDisabled(option: SelectOption): boolean {\n return this.isDisabled() || !!option.disabled;\n }\n\n /** Programmatically selects the given option. */\n select(option: SelectOption): void {\n if (this.isOptionDisabled(option)) return;\n if (this.value() === option.value) {\n this.onTouched();\n return;\n }\n this.value.set(option.value);\n this.onChange(option.value);\n this.onTouched();\n this.changed.emit(option.value);\n }\n\n handleKeydown(event: KeyboardEvent, index: number): void {\n if (this.isDisabled()) return;\n\n const enabled = this.enabledOptions();\n if (enabled.length === 0) return;\n\n let targetValue: string | null = null;\n\n switch (event.key) {\n case 'ArrowRight':\n case 'ArrowDown': {\n const current = enabled.findIndex(o => o.value === this.value());\n const nextIndex = (current + 1 + enabled.length) % enabled.length;\n targetValue = enabled[nextIndex].value;\n break;\n }\n case 'ArrowLeft':\n case 'ArrowUp': {\n const current = enabled.findIndex(o => o.value === this.value());\n const prevIndex = (current - 1 + enabled.length) % enabled.length;\n targetValue = enabled[prevIndex].value;\n break;\n }\n case 'Home':\n targetValue = enabled[0].value;\n break;\n case 'End':\n targetValue = enabled[enabled.length - 1].value;\n break;\n case ' ':\n case 'Enter': {\n const opt = this.options()[index];\n if (opt) this.select(opt);\n event.preventDefault();\n return;\n }\n default:\n return;\n }\n\n if (targetValue !== null) {\n event.preventDefault();\n const opt = this.options().find(o => o.value === targetValue);\n if (opt) {\n this.select(opt);\n const targetIndex = this.options().findIndex(o => o.value === targetValue);\n queueMicrotask(() => this.buttonEls()[targetIndex]?.nativeElement.focus());\n }\n }\n }\n}\n","<div class=\"ea-segmented-field\">\n @if (label()) {\n <span\n class=\"ea-segmented-field__label\"\n [id]=\"id() + '-label'\"\n [class.ea-segmented-field__label--required]=\"required()\">\n {{ label() }}\n </span>\n }\n\n <div\n class=\"ea-segmented\"\n role=\"radiogroup\"\n [ngClass]=\"hostClasses()\"\n [attr.aria-labelledby]=\"label() ? id() + '-label' : null\"\n [attr.aria-label]=\"!label() ? (ariaLabel() ?? null) : null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-disabled]=\"isDisabled() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \">\n @for (option of options(); track option.value; let i = $index) {\n <button\n #optionEl\n type=\"button\"\n class=\"ea-segmented__option\"\n role=\"radio\"\n [class.ea-segmented__option--selected]=\"isSelected(option)\"\n [class.ea-segmented__option--disabled]=\"isOptionDisabled(option)\"\n [attr.aria-checked]=\"isSelected(option)\"\n [attr.aria-disabled]=\"isOptionDisabled(option) || null\"\n [disabled]=\"isOptionDisabled(option)\"\n [attr.tabindex]=\"isSelected(option) || (!value() && i === 0) ? 0 : -1\"\n (click)=\"select(option)\"\n (keydown)=\"handleKeydown($event, i)\">\n {{ option.label }}\n </button>\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-segmented-field__message ea-segmented-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-segmented-field__message ea-segmented-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n/** Visual size of the slider track and thumb. */\nexport type SliderSize = 'sm' | 'md' | 'lg';\n\n/**\n * Single-value range input controlled with pointer drag or full keyboard\n * navigation (arrows, PageUp/PageDown, Home/End). Supports configurable\n * `min`, `max`, and `step`, optional value display, and integrates with\n * Angular forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-slider',\n templateUrl: './slider.component.html',\n styleUrl: './slider.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SliderComponent),\n multi: true,\n },\n ],\n})\nexport class SliderComponent implements ControlValueAccessor {\n readonly trackEl = viewChild<ElementRef<HTMLDivElement>>('trackEl');\n\n readonly label = input<string | undefined>(undefined);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly min = input<number>(0);\n readonly max = input<number>(100);\n readonly step = input<number>(1);\n readonly size = input<SliderSize>('md');\n readonly disabled = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly showValue = input<boolean>(false);\n readonly showMinMaxLabels = input<boolean>(false);\n readonly formatValue = input<(value: number) => string>(value => `${value}`);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-slider-${Math.random().toString(36).slice(2, 9)}`);\n\n readonly value = model<number>(0);\n /** Fires with the new (snapped, clamped) numeric value whenever the slider moves. */\n readonly changed = output<number>();\n\n private readonly _formDisabled = signal(false);\n readonly dragging = signal(false);\n\n private onChange: (value: number) => void = () => {};\n private onTouched: () => void = () => {};\n\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly clampedValue = computed(() => {\n const v = this.value();\n return Math.min(this.max(), Math.max(this.min(), v));\n });\n\n readonly percent = computed(() => {\n const range = this.max() - this.min();\n if (range <= 0) return 0;\n return ((this.clampedValue() - this.min()) / range) * 100;\n });\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly hostClasses = computed(() => ({\n [`ea-slider--${this.size()}`]: true,\n 'ea-slider--error': this.hasError(),\n 'ea-slider--disabled': this.isDisabled(),\n 'ea-slider--dragging': this.dragging(),\n }));\n\n writeValue(val: number): void {\n this.value.set(typeof val === 'number' && !isNaN(val) ? val : this.min());\n }\n\n registerOnChange(fn: (value: number) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n handleKeydown(event: KeyboardEvent): void {\n if (this.isDisabled()) return;\n\n const step = this.step();\n const bigStep = Math.max(step * 10, (this.max() - this.min()) / 10);\n let next: number;\n\n switch (event.key) {\n case 'ArrowRight':\n case 'ArrowUp':\n next = this.clampedValue() + step;\n break;\n case 'ArrowLeft':\n case 'ArrowDown':\n next = this.clampedValue() - step;\n break;\n case 'PageUp':\n next = this.clampedValue() + bigStep;\n break;\n case 'PageDown':\n next = this.clampedValue() - bigStep;\n break;\n case 'Home':\n next = this.min();\n break;\n case 'End':\n next = this.max();\n break;\n default:\n return;\n }\n\n event.preventDefault();\n this.commitValue(next);\n }\n\n handlePointerDown(event: PointerEvent): void {\n if (this.isDisabled()) return;\n const track = this.trackEl()?.nativeElement;\n if (!track) return;\n\n (event.target as HTMLElement).setPointerCapture?.(event.pointerId);\n this.dragging.set(true);\n this.updateFromPointer(event, track);\n }\n\n handlePointerMove(event: PointerEvent): void {\n if (!this.dragging() || this.isDisabled()) return;\n const track = this.trackEl()?.nativeElement;\n if (!track) return;\n this.updateFromPointer(event, track);\n }\n\n handlePointerUp(event: PointerEvent): void {\n if (!this.dragging()) return;\n (event.target as HTMLElement).releasePointerCapture?.(event.pointerId);\n this.dragging.set(false);\n this.onTouched();\n }\n\n handleBlur(): void {\n this.onTouched();\n }\n\n private updateFromPointer(event: PointerEvent, track: HTMLDivElement): void {\n const rect = track.getBoundingClientRect();\n const ratio = Math.min(1, Math.max(0, (event.clientX - rect.left) / rect.width));\n const range = this.max() - this.min();\n const raw = this.min() + ratio * range;\n this.commitValue(raw);\n }\n\n private commitValue(raw: number): void {\n const step = this.step();\n const min = this.min();\n const max = this.max();\n const snapped = Math.round((raw - min) / step) * step + min;\n const clamped = Math.min(max, Math.max(min, snapped));\n const rounded = Number(clamped.toFixed(10));\n if (rounded === this.value()) return;\n this.value.set(rounded);\n this.onChange(rounded);\n this.changed.emit(rounded);\n }\n}\n","<div\n class=\"ea-slider-field\"\n [ngClass]=\"hostClasses()\">\n @if (label()) {\n <span\n class=\"ea-slider-field__label\"\n [id]=\"id() + '-label'\"\n [class.ea-slider-field__label--required]=\"required()\">\n {{ label() }}\n @if (showValue()) {\n <span class=\"ea-slider-field__value\">{{ formatValue()(clampedValue()) }}</span>\n }\n </span>\n }\n\n <div class=\"ea-slider\">\n <div\n #trackEl\n class=\"ea-slider__track\"\n (pointerdown)=\"handlePointerDown($event)\"\n (pointermove)=\"handlePointerMove($event)\"\n (pointerup)=\"handlePointerUp($event)\"\n (pointercancel)=\"handlePointerUp($event)\">\n <div\n class=\"ea-slider__fill\"\n [style.width.%]=\"percent()\">\n </div>\n <div\n class=\"ea-slider__thumb\"\n role=\"slider\"\n tabindex=\"0\"\n [id]=\"id()\"\n [attr.aria-labelledby]=\"label() ? id() + '-label' : null\"\n [attr.aria-label]=\"!label() ? (ariaLabel() ?? null) : null\"\n [attr.aria-valuemin]=\"min()\"\n [attr.aria-valuemax]=\"max()\"\n [attr.aria-valuenow]=\"clampedValue()\"\n [attr.aria-valuetext]=\"formatValue()(clampedValue())\"\n [attr.aria-disabled]=\"isDisabled() || null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n [style.left.%]=\"percent()\"\n (keydown)=\"handleKeydown($event)\"\n (blur)=\"handleBlur()\">\n </div>\n </div>\n\n @if (showMinMaxLabels()) {\n <div class=\"ea-slider__minmax\">\n <span class=\"ea-slider__minmax-label\">{{ formatValue()(min()) }}</span>\n <span class=\"ea-slider__minmax-label\">{{ formatValue()(max()) }}</span>\n </div>\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-slider-field__message ea-slider-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-slider-field__message ea-slider-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\n\n/** Visual size of the spinner. */\nexport type SpinnerSize = 'sm' | 'md' | 'lg';\n\n/**\n * SVG loading indicator with an accessible `role=\"status\"`. The `label` input\n * overrides the accessible name announced to assistive technology; when unset\n * it falls back to the active locale's translation.\n */\n@Component({\n selector: 'ea-spinner',\n imports: [NgClass],\n templateUrl: './spinner.component.html',\n styleUrl: './spinner.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class SpinnerComponent {\n private readonly i18n = inject(EagamiI18nService);\n\n readonly size = input<SpinnerSize>('md');\n readonly label = input<string | undefined>(undefined);\n\n /** Accessible label, falling back to the active locale's translation. */\n readonly resolvedLabel = computed(\n () => this.label() ?? this.i18n.messages().spinner.label,\n );\n\n readonly hostClasses = computed(() => ({\n [`ea-spinner--${this.size()}`]: true,\n }));\n}\n","<div\n class=\"ea-spinner\"\n [ngClass]=\"hostClasses()\"\n role=\"status\">\n <svg\n class=\"ea-spinner__circle\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n aria-hidden=\"true\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n opacity=\"0.25\" />\n <path\n d=\"M12 2a10 10 0 0 1 10 10\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\" />\n </svg>\n <span class=\"ea-spinner__label\">{{ resolvedLabel() }}</span>\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n/** Visual size of the switch. */\nexport type SwitchSize = 'sm' | 'md' | 'lg';\n\n/**\n * On/off toggle styled as a sliding switch. Backed by a visually hidden\n * native checkbox and integrates with Angular forms via\n * `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-switch',\n imports: [NgClass],\n templateUrl: './switch.component.html',\n styleUrl: './switch.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SwitchComponent),\n multi: true,\n },\n ],\n})\nexport class SwitchComponent implements ControlValueAccessor {\n readonly label = input<string | undefined>(undefined);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly size = input<SwitchSize>('md');\n readonly disabled = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-switch-${Math.random().toString(36).slice(2, 9)}`);\n\n readonly checked = model<boolean>(false);\n /** Fires with the new checked state whenever the user toggles the switch. */\n readonly changed = output<boolean>();\n\n private readonly _formDisabled = signal(false);\n\n private onChange: (value: boolean) => void = () => {};\n private onTouched: () => void = () => {};\n\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly hostClasses = computed(() => ({\n [`ea-switch--${this.size()}`]: true,\n 'ea-switch--checked': this.checked(),\n 'ea-switch--disabled': this.isDisabled(),\n 'ea-switch--error': this.hasError(),\n }));\n\n writeValue(val: boolean): void {\n this.checked.set(!!val);\n }\n\n registerOnChange(fn: (value: boolean) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n handleChange(): void {\n if (this.isDisabled()) return;\n const newValue = !this.checked();\n this.checked.set(newValue);\n this.onChange(newValue);\n this.onTouched();\n this.changed.emit(newValue);\n }\n}\n","<div class=\"ea-switch-field\">\n <label\n class=\"ea-switch\"\n [ngClass]=\"hostClasses()\">\n <input\n class=\"ea-switch__input\"\n type=\"checkbox\"\n role=\"switch\"\n [id]=\"id()\"\n [checked]=\"checked()\"\n [disabled]=\"isDisabled()\"\n [required]=\"required()\"\n [attr.aria-checked]=\"checked()\"\n [attr.aria-label]=\"!label() ? (ariaLabel() ?? null) : null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (change)=\"handleChange()\" />\n <span class=\"ea-switch__track\">\n <span class=\"ea-switch__thumb\"></span>\n </span>\n @if (label()) {\n <span\n class=\"ea-switch__label\"\n [class.ea-switch__label--required]=\"required()\">\n {{ label() }}\n </span>\n }\n </label>\n\n @if (showError()) {\n <p\n class=\"ea-switch-field__message ea-switch-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-switch-field__message ea-switch-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n model,\n output,\n signal,\n} from '@angular/core';\n\nimport { TabComponent } from './tab.component';\n\n/** Visual style of the tab bar. */\nexport type TabsVariant = 'underline' | 'filled';\n/** Visual size of the tabs. */\nexport type TabsSize = 'sm' | 'md' | 'lg';\n\n/**\n * Tab bar paired with content panels. Child `ea-tab` components register\n * themselves automatically and the active panel is shown based on the\n * `activeTab` two-way binding. Supports keyboard navigation\n * (arrow keys, Home/End).\n */\n@Component({\n selector: 'ea-tabs',\n templateUrl: './tabs.component.html',\n styleUrl: './tabs.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TabsComponent {\n readonly registeredTabs = signal<TabComponent[]>([]);\n\n readonly variant = input<TabsVariant>('underline');\n readonly size = input<TabsSize>('md');\n\n readonly activeTab = model<string>('');\n\n /** Fires with the value of the newly active tab. */\n readonly changed = output<string>();\n\n /** Registers a child tab so it appears in the tab bar; called automatically by `ea-tab`. */\n registerTab(tab: TabComponent): void {\n this.registeredTabs.update(tabs => [...tabs, tab]);\n }\n\n /** Removes a previously registered child tab; called automatically by `ea-tab`. */\n unregisterTab(tab: TabComponent): void {\n this.registeredTabs.update(tabs => tabs.filter(t => t !== tab));\n }\n\n /** Programmatically activates the tab with the given value. */\n selectTab(value: string): void {\n this.activeTab.set(value);\n this.changed.emit(value);\n }\n\n handleKeydown(event: KeyboardEvent): void {\n const tabList = this.registeredTabs().filter(t => !t.disabled());\n const currentIndex = tabList.findIndex(t => t.value() === this.activeTab());\n let nextIndex = -1;\n\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n nextIndex = currentIndex < tabList.length - 1 ? currentIndex + 1 : 0;\n } else if (event.key === 'ArrowLeft') {\n event.preventDefault();\n nextIndex = currentIndex > 0 ? currentIndex - 1 : tabList.length - 1;\n } else if (event.key === 'Home') {\n event.preventDefault();\n nextIndex = 0;\n } else if (event.key === 'End') {\n event.preventDefault();\n nextIndex = tabList.length - 1;\n }\n\n if (nextIndex >= 0) {\n const tab = tabList[nextIndex];\n this.selectTab(tab.value());\n const buttons = (\n event.currentTarget as HTMLElement\n ).querySelectorAll<HTMLButtonElement>('[role=\"tab\"]:not([disabled])');\n buttons[nextIndex]?.focus();\n }\n }\n}\n","<div class=\"ea-tabs\">\n <div\n class=\"ea-tabs__list\"\n [class.ea-tabs__list--underline]=\"variant() === 'underline'\"\n [class.ea-tabs__list--filled]=\"variant() === 'filled'\"\n [class.ea-tabs__list--sm]=\"size() === 'sm'\"\n [class.ea-tabs__list--md]=\"size() === 'md'\"\n [class.ea-tabs__list--lg]=\"size() === 'lg'\"\n role=\"tablist\"\n (keydown)=\"handleKeydown($event)\">\n @for (tab of registeredTabs(); track tab.value()) {\n <button\n class=\"ea-tabs__trigger\"\n [class.ea-tabs__trigger--active]=\"tab.isActive()\"\n type=\"button\"\n role=\"tab\"\n [id]=\"tab.id() + '-tab'\"\n [attr.aria-selected]=\"tab.isActive()\"\n [attr.aria-controls]=\"tab.id() + '-panel'\"\n [disabled]=\"tab.disabled()\"\n [tabindex]=\"tab.isActive() ? 0 : -1\"\n (click)=\"selectTab(tab.value())\">\n {{ tab.label() }}\n </button>\n }\n </div>\n <ng-content />\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n OnDestroy,\n OnInit,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { TabsComponent } from './tabs.component';\n\n/**\n * Single tab within an `ea-tabs` group. Registers itself with the parent on\n * init, exposes its `value` and `label`, and shows its projected content\n * when active.\n */\n@Component({\n selector: 'ea-tab',\n host: { '[style.display]': 'isActive() ? null : \"none\"' },\n template: `\n @if (isActive()) {\n <div\n class=\"ea-tab__panel\"\n role=\"tabpanel\"\n [id]=\"id() + '-panel'\"\n [attr.aria-labelledby]=\"id() + '-tab'\"\n tabindex=\"0\">\n <ng-content />\n </div>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TabComponent implements OnInit, OnDestroy {\n private readonly tabs = inject(TabsComponent);\n\n readonly value = input.required<string>();\n readonly label = input.required<string>();\n readonly disabled = input<boolean>(false);\n readonly id = input<string>(`ea-tab-${Math.random().toString(36).slice(2, 9)}`);\n\n readonly isActive = computed(() => this.tabs.activeTab() === this.value());\n\n ngOnInit(): void {\n this.tabs.registerTab(this);\n }\n\n ngOnDestroy(): void {\n this.tabs.unregisterTab(this);\n }\n}\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n inject,\n input,\n output,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { XIconComponent } from '../icons/x.component';\n\n/** Semantic colour scheme of a tag. */\nexport type TagVariant = 'default' | 'success' | 'warning' | 'error' | 'info';\n/** Visual size of a tag. */\nexport type TagSize = 'sm' | 'md' | 'lg';\n\n/**\n * Inline label commonly used to represent filters, categories, or selected\n * items. When `removable`, renders a close button that emits `removed`; the\n * accessible name of that button is configurable via `removeLabel` and\n * otherwise falls back to the active locale's translation.\n */\n@Component({\n selector: 'ea-tag',\n imports: [NgClass, XIconComponent],\n templateUrl: './tag.component.html',\n styleUrl: './tag.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class TagComponent {\n private readonly i18n = inject(EagamiI18nService);\n\n readonly variant = input<TagVariant>('default');\n readonly size = input<TagSize>('md');\n readonly removable = input<boolean>(false);\n readonly disabled = input<boolean>(false);\n readonly removeLabel = input<string | undefined>(undefined);\n\n /** Fires when the user activates the remove button on a `removable` tag. */\n readonly removed = output<void>();\n\n /** Accessible label for the remove button, falling back to the active locale. */\n readonly resolvedRemoveLabel = computed(\n () => this.removeLabel() ?? this.i18n.messages().tag.remove,\n );\n\n readonly hostClasses = computed(() => ({\n [`ea-tag--${this.variant()}`]: true,\n [`ea-tag--${this.size()}`]: true,\n 'ea-tag--disabled': this.disabled(),\n }));\n\n onRemove(event: MouseEvent): void {\n event.stopPropagation();\n this.removed.emit();\n }\n}\n","<span\n class=\"ea-tag\"\n [ngClass]=\"hostClasses()\">\n <ng-content />\n @if (removable()) {\n <button\n type=\"button\"\n class=\"ea-tag__remove\"\n [disabled]=\"disabled() || null\"\n [attr.aria-label]=\"resolvedRemoveLabel()\"\n (click)=\"onRemove($event)\">\n <ea-icon-x />\n </button>\n }\n</span>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { AlertCircleIconComponent } from '../icons/alert-circle.component';\n\n/** Visual size of the textarea. */\nexport type TextareaSize = 'sm' | 'md' | 'lg';\n/** Axis along which the user is allowed to resize the textarea. */\nexport type TextareaResize = 'none' | 'vertical' | 'horizontal' | 'both';\n\n/**\n * Multiline text field that mirrors the `ea-input` API. Supports configurable\n * `rows`, `resize` direction, and `maxlength`, and integrates with Angular\n * forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-textarea',\n imports: [NgClass, AlertCircleIconComponent],\n templateUrl: './textarea.component.html',\n styleUrl: './textarea.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TextareaComponent),\n multi: true,\n },\n ],\n})\nexport class TextareaComponent implements ControlValueAccessor {\n readonly textareaEl = viewChild<ElementRef<HTMLTextAreaElement>>('textareaEl');\n\n readonly label = input<string | undefined>(undefined);\n readonly placeholder = input<string>('');\n readonly size = input<TextareaSize>('md');\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly rows = input<number>(3);\n readonly resize = input<TextareaResize>('vertical');\n readonly maxlength = input<number | undefined>(undefined);\n readonly id = input<string>(`ea-textarea-${Math.random().toString(36).slice(2, 9)}`);\n\n readonly value = model<string>('');\n\n readonly isFocused = signal(false);\n private readonly _formDisabled = signal(false);\n\n /** Fires when the textarea receives focus. */\n readonly focused = output<FocusEvent>();\n /** Fires when the textarea loses focus. */\n readonly blurred = output<FocusEvent>();\n\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly wrapperClasses = computed(() => ({\n [`ea-textarea-wrapper--${this.size()}`]: true,\n 'ea-textarea-wrapper--error': this.hasError(),\n 'ea-textarea-wrapper--focused': this.isFocused(),\n 'ea-textarea-wrapper--disabled': this.isDisabled(),\n 'ea-textarea-wrapper--readonly': this.readonly(),\n }));\n\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n handleInput(event: Event): void {\n const value = (event.target as HTMLTextAreaElement).value;\n this.value.set(value);\n this.onChange(value);\n }\n\n handleFocus(event: FocusEvent): void {\n this.isFocused.set(true);\n this.focused.emit(event);\n }\n\n handleBlur(event: FocusEvent): void {\n this.isFocused.set(false);\n this.onTouched();\n this.blurred.emit(event);\n }\n\n /** Moves keyboard focus to the underlying native textarea element. */\n focus(): void {\n this.textareaEl()?.nativeElement.focus();\n }\n}\n","<div class=\"ea-textarea-field\">\n @if (label()) {\n <label\n class=\"ea-textarea-field__label\"\n [for]=\"id()\"\n [class.ea-textarea-field__label--required]=\"required()\">\n {{ label() }}\n </label>\n }\n\n <div\n class=\"ea-textarea-wrapper\"\n [ngClass]=\"wrapperClasses()\">\n <textarea\n #textareaEl\n class=\"ea-textarea\"\n [id]=\"id()\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"isDisabled()\"\n [readOnly]=\"readonly()\"\n [required]=\"required()\"\n [rows]=\"rows()\"\n [value]=\"value()\"\n [style.resize]=\"resize()\"\n [attr.maxlength]=\"maxlength() ?? null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (input)=\"handleInput($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\"></textarea>\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-textarea-field__message ea-textarea-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n <ea-icon-alert-circle class=\"ea-textarea-field__message-icon\" />\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-textarea-field__message ea-textarea-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { Injectable, signal } from '@angular/core';\n\n/** Semantic colour scheme of a toast. */\nexport type ToastVariant = 'default' | 'success' | 'warning' | 'error' | 'info';\n\n/** A single live toast notification rendered by `ea-toast`. */\nexport interface Toast {\n id: number;\n message: string;\n variant: ToastVariant;\n duration: number;\n}\n\n/** Optional configuration for a toast — defaults to `default` variant and 4s duration. */\nexport interface ToastOptions {\n variant?: ToastVariant;\n duration?: number;\n}\n\n/**\n * Application-wide notification service. Use the convenience methods\n * (`success`, `error`, `warning`, `info`) to push a toast, or call\n * {@link show} for full control. A single `<ea-toast />` outlet must be\n * present in the app for toasts to appear.\n */\n@Injectable({ providedIn: 'root' })\nexport class ToastService {\n private nextId = 0;\n\n readonly toasts = signal<Toast[]>([]);\n\n /** Shows a toast and returns its id; pass `duration: 0` to disable auto-dismiss. */\n show(message: string, options: ToastOptions = {}): number {\n const id = this.nextId++;\n const toast: Toast = {\n id,\n message,\n variant: options.variant ?? 'default',\n duration: options.duration ?? 4000,\n };\n\n this.toasts.update(list => [...list, toast]);\n\n if (toast.duration > 0) {\n setTimeout(() => this.dismiss(id), toast.duration);\n }\n\n return id;\n }\n\n /** Shows a `success` toast and returns its id. */\n success(message: string, duration?: number): number {\n return this.show(message, { variant: 'success', duration });\n }\n\n /** Shows an `error` toast and returns its id. */\n error(message: string, duration?: number): number {\n return this.show(message, { variant: 'error', duration });\n }\n\n /** Shows a `warning` toast and returns its id. */\n warning(message: string, duration?: number): number {\n return this.show(message, { variant: 'warning', duration });\n }\n\n /** Shows an `info` toast and returns its id. */\n info(message: string, duration?: number): number {\n return this.show(message, { variant: 'info', duration });\n }\n\n /** Removes the toast with the given id, if it is still active. */\n dismiss(id: number): void {\n this.toasts.update(list => list.filter(t => t.id !== id));\n }\n\n /** Removes all currently visible toasts. */\n clear(): void {\n this.toasts.set([]);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { XIconComponent } from '../icons/x.component';\nimport { Toast, ToastService } from './toast.service';\n\n/**\n * Outlet that renders the stack of active toasts produced by\n * {@link ToastService}. Place a single `<ea-toast />` once in the root\n * template so toasts created from anywhere in the app are surfaced.\n */\n@Component({\n selector: 'ea-toast',\n imports: [XIconComponent],\n templateUrl: './toast.component.html',\n styleUrl: './toast.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ToastComponent {\n protected readonly toastService = inject(ToastService);\n protected readonly i18n = inject(EagamiI18nService);\n\n protected getRole(toast: Toast): 'alert' | 'status' {\n return toast.variant === 'error' || toast.variant === 'warning' ? 'alert' : 'status';\n }\n}\n","@if (toastService.toasts().length) {\n <div\n class=\"ea-toast-container\"\n aria-live=\"polite\"\n aria-atomic=\"false\">\n @for (toast of toastService.toasts(); track toast.id) {\n <div\n class=\"ea-toast ea-toast--{{ toast.variant }}\"\n [attr.role]=\"getRole(toast)\"\n [attr.aria-live]=\"getRole(toast) === 'alert' ? 'assertive' : 'polite'\">\n <span class=\"ea-toast__message\">{{ toast.message }}</span>\n <button\n class=\"ea-toast__close\"\n type=\"button\"\n [attr.aria-label]=\"i18n.messages().toast.dismiss\"\n (click)=\"toastService.dismiss(toast.id)\">\n <ea-icon-x />\n </button>\n </div>\n }\n </div>\n}\n","// =============================================================================\n// EAGAMI UI — Public API\n// =============================================================================\n\n// Internationalization\nexport * from './lib/i18n';\n\n// Components\nexport * from './lib/accordion/accordion.component';\nexport * from './lib/accordion/accordion-item.component';\nexport * from './lib/alert/alert.component';\nexport * from './lib/autocomplete/autocomplete.component';\nexport * from './lib/avatar-editor/avatar-editor.component';\nexport * from './lib/avatar/avatar.component';\nexport * from './lib/badge/badge.component';\nexport * from './lib/breadcrumbs/breadcrumbs.component';\nexport * from './lib/button/button.component';\nexport * from './lib/card/card.component';\nexport * from './lib/checkbox/checkbox.component';\nexport * from './lib/data-table/data-table.component';\nexport * from './lib/code-input/code-input.component';\nexport * from './lib/date-picker/date-picker.component';\nexport * from './lib/dialog/dialog.component';\nexport * from './lib/divider/divider.component';\nexport * from './lib/drawer/drawer.component';\nexport * from './lib/dropdown/dropdown.component';\nexport * from './lib/eagami-wordmark/eagami-wordmark.component';\nexport * from './lib/empty-state/empty-state.component';\nexport * from './lib/icons/alert-circle.component';\nexport * from './lib/icons/alert-triangle.component';\nexport * from './lib/icons/apple.component';\nexport * from './lib/icons/archive.component';\nexport * from './lib/icons/arrow-down.component';\nexport * from './lib/icons/arrow-left.component';\nexport * from './lib/icons/arrow-right.component';\nexport * from './lib/icons/arrow-up.component';\nexport * from './lib/icons/at-sign.component';\nexport * from './lib/icons/bar-chart.component';\nexport * from './lib/icons/bell.component';\nexport * from './lib/icons/bookmark.component';\nexport * from './lib/icons/briefcase.component';\nexport * from './lib/icons/calendar.component';\nexport * from './lib/icons/camera.component';\nexport * from './lib/icons/check-circle.component';\nexport * from './lib/icons/check.component';\nexport * from './lib/icons/chevron-down.component';\nexport * from './lib/icons/chevron-left.component';\nexport * from './lib/icons/chevron-right.component';\nexport * from './lib/icons/chevron-up.component';\nexport * from './lib/icons/chevrons-up-down.component';\nexport * from './lib/icons/clipboard.component';\nexport * from './lib/icons/clock.component';\nexport * from './lib/icons/cloud.component';\nexport * from './lib/icons/copy.component';\nexport * from './lib/icons/credit-card.component';\nexport * from './lib/icons/dollar-sign.component';\nexport * from './lib/icons/download.component';\nexport * from './lib/icons/eagami.component';\nexport * from './lib/icons/external-link.component';\nexport * from './lib/icons/eye-off.component';\nexport * from './lib/icons/eye.component';\nexport * from './lib/icons/facebook.component';\nexport * from './lib/icons/file.component';\nexport * from './lib/icons/filter.component';\nexport * from './lib/icons/flag.component';\nexport * from './lib/icons/folder.component';\nexport * from './lib/icons/gift.component';\nexport * from './lib/icons/github.component';\nexport * from './lib/icons/globe.component';\nexport * from './lib/icons/google.component';\nexport * from './lib/icons/hash.component';\nexport * from './lib/icons/heart.component';\nexport * from './lib/icons/help-circle.component';\nexport * from './lib/icons/home.component';\nexport * from './lib/icons/image.component';\nexport * from './lib/icons/inbox.component';\nexport * from './lib/icons/info.component';\nexport * from './lib/icons/link.component';\nexport * from './lib/icons/list.component';\nexport * from './lib/icons/loader.component';\nexport * from './lib/icons/lock.component';\nexport * from './lib/icons/log-in.component';\nexport * from './lib/icons/log-out.component';\nexport * from './lib/icons/mail.component';\nexport * from './lib/icons/map-pin.component';\nexport * from './lib/icons/maximize.component';\nexport * from './lib/icons/menu.component';\nexport * from './lib/icons/mic.component';\nexport * from './lib/icons/microsoft.component';\nexport * from './lib/icons/minimize.component';\nexport * from './lib/icons/minus.component';\nexport * from './lib/icons/monitor.component';\nexport * from './lib/icons/moon.component';\nexport * from './lib/icons/more-horizontal.component';\nexport * from './lib/icons/package.component';\nexport * from './lib/icons/paperclip.component';\nexport * from './lib/icons/pause.component';\nexport * from './lib/icons/pencil.component';\nexport * from './lib/icons/phone.component';\nexport * from './lib/icons/play.component';\nexport * from './lib/icons/plus.component';\nexport * from './lib/icons/printer.component';\nexport * from './lib/icons/refresh-cw.component';\nexport * from './lib/icons/rotate-ccw.component';\nexport * from './lib/icons/save.component';\nexport * from './lib/icons/search.component';\nexport * from './lib/icons/send.component';\nexport * from './lib/icons/settings.component';\nexport * from './lib/icons/share.component';\nexport * from './lib/icons/shield.component';\nexport * from './lib/icons/shopping-cart.component';\nexport * from './lib/icons/smartphone.component';\nexport * from './lib/icons/star.component';\nexport * from './lib/icons/sun.component';\nexport * from './lib/icons/thumbs-down.component';\nexport * from './lib/icons/thumbs-up.component';\nexport * from './lib/icons/trash.component';\nexport * from './lib/icons/trending-up.component';\nexport * from './lib/icons/unlock.component';\nexport * from './lib/icons/upload.component';\nexport * from './lib/icons/user.component';\nexport * from './lib/icons/users.component';\nexport * from './lib/icons/video.component';\nexport * from './lib/icons/volume-2.component';\nexport * from './lib/icons/wifi.component';\nexport * from './lib/icons/x-circle.component';\nexport * from './lib/icons/x-twitter.component';\nexport * from './lib/icons/x.component';\nexport * from './lib/icons/zap.component';\nexport * from './lib/input/input.component';\nexport * from './lib/menu/menu.component';\nexport * from './lib/menu/menu-item.component';\nexport * from './lib/menu/menu-trigger.directive';\nexport * from './lib/paginator/paginator.component';\nexport * from './lib/progress-bar/progress-bar.component';\nexport * from './lib/radio/radio-group.component';\nexport * from './lib/radio/radio.component';\nexport * from './lib/segmented/segmented.component';\nexport * from './lib/select-option';\nexport * from './lib/skeleton/skeleton.component';\nexport * from './lib/slider/slider.component';\nexport * from './lib/spinner/spinner.component';\nexport * from './lib/switch/switch.component';\nexport * from './lib/tabs/tabs.component';\nexport * from './lib/tabs/tab.component';\nexport * from './lib/tag/tag.component';\nexport * from './lib/textarea/textarea.component';\nexport * from './lib/toast/toast.component';\nexport * from './lib/toast/toast.service';\nexport * from './lib/tooltip/tooltip.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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AAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,IAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,C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,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,KAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,KAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA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"}
1
+ {"version":3,"file":"eagami-ui.mjs","sources":["../../../src/lib/i18n/i18n.types.ts","../../../src/lib/i18n/i18n.provider.ts","../../../src/lib/i18n/messages/el.ts","../../../src/lib/i18n/messages/en.ts","../../../src/lib/i18n/messages/es-ES.ts","../../../src/lib/i18n/messages/fr-FR.ts","../../../src/lib/i18n/messages/pl.ts","../../../src/lib/i18n/messages/index.ts","../../../src/lib/i18n/i18n.service.ts","../../../src/lib/i18n/french-spacing.ts","../../../src/lib/i18n/index.ts","../../../src/lib/accordion/accordion.component.ts","../../../src/lib/icons/icon-category.ts","../../../src/lib/icons/chevron-down.component.ts","../../../src/lib/accordion/accordion-item.component.ts","../../../src/lib/accordion/accordion-item.component.html","../../../src/lib/icons/alert-circle.component.ts","../../../src/lib/icons/check.component.ts","../../../src/lib/icons/info.component.ts","../../../src/lib/icons/x.component.ts","../../../src/lib/alert/alert.component.ts","../../../src/lib/alert/alert.component.html","../../../src/lib/autocomplete/autocomplete.component.ts","../../../src/lib/autocomplete/autocomplete.component.html","../../../src/lib/icons/camera.component.ts","../../../src/lib/icons/minus.component.ts","../../../src/lib/icons/plus.component.ts","../../../src/lib/icons/rotate-ccw.component.ts","../../../src/lib/icons/trash.component.ts","../../../src/lib/icons/upload.component.ts","../../../src/lib/skeleton/skeleton.component.ts","../../../src/lib/skeleton/skeleton.component.html","../../../src/lib/tooltip/tooltip.directive.ts","../../../src/lib/avatar-editor/avatar-editor.component.ts","../../../src/lib/avatar-editor/avatar-editor.component.html","../../../src/lib/icons/user.component.ts","../../../src/lib/avatar/avatar.component.ts","../../../src/lib/avatar/avatar.component.html","../../../src/lib/badge/badge.component.ts","../../../src/lib/badge/badge.component.html","../../../src/lib/icons/chevron-right.component.ts","../../../src/lib/breadcrumbs/breadcrumbs.component.ts","../../../src/lib/breadcrumbs/breadcrumbs.component.html","../../../src/lib/button/button.component.ts","../../../src/lib/button/button.component.html","../../../src/lib/divider/divider.component.ts","../../../src/lib/divider/divider.component.html","../../../src/lib/card/card.component.ts","../../../src/lib/card/card.component.html","../../../src/lib/checkbox/checkbox.component.ts","../../../src/lib/checkbox/checkbox.component.html","../../../src/lib/icons/arrow-down.component.ts","../../../src/lib/icons/arrow-up.component.ts","../../../src/lib/icons/chevrons-up-down.component.ts","../../../src/lib/data-table/data-table.component.ts","../../../src/lib/data-table/data-table.component.html","../../../src/lib/code-input/code-input.component.ts","../../../src/lib/code-input/code-input.component.html","../../../src/lib/icons/calendar.component.ts","../../../src/lib/icons/chevron-left.component.ts","../../../src/lib/date-picker/date-picker.component.ts","../../../src/lib/date-picker/date-picker.component.html","../../../src/lib/dialog/dialog.component.ts","../../../src/lib/dialog/dialog.component.html","../../../src/lib/drawer/drawer.component.ts","../../../src/lib/drawer/drawer.component.html","../../../src/lib/dropdown/dropdown.component.ts","../../../src/lib/dropdown/dropdown.component.html","../../../src/lib/icons/eagami.component.ts","../../../src/lib/eagami-wordmark/eagami-wordmark.component.ts","../../../src/lib/eagami-wordmark/eagami-wordmark.component.html","../../../src/lib/empty-state/empty-state.component.ts","../../../src/lib/empty-state/empty-state.component.html","../../../src/lib/icons/icon-display-name.ts","../../../src/lib/icons/activity.component.ts","../../../src/lib/icons/airplay.component.ts","../../../src/lib/icons/alert-octagon.component.ts","../../../src/lib/icons/alert-triangle.component.ts","../../../src/lib/icons/align-center.component.ts","../../../src/lib/icons/align-justify.component.ts","../../../src/lib/icons/align-left.component.ts","../../../src/lib/icons/align-right.component.ts","../../../src/lib/icons/anchor.component.ts","../../../src/lib/icons/aperture.component.ts","../../../src/lib/icons/archive.component.ts","../../../src/lib/icons/arrow-down-circle.component.ts","../../../src/lib/icons/arrow-down-left.component.ts","../../../src/lib/icons/arrow-down-right.component.ts","../../../src/lib/icons/arrow-left-circle.component.ts","../../../src/lib/icons/arrow-left.component.ts","../../../src/lib/icons/arrow-right-circle.component.ts","../../../src/lib/icons/arrow-right.component.ts","../../../src/lib/icons/arrow-up-circle.component.ts","../../../src/lib/icons/arrow-up-left.component.ts","../../../src/lib/icons/arrow-up-right.component.ts","../../../src/lib/icons/at-sign.component.ts","../../../src/lib/icons/award.component.ts","../../../src/lib/icons/bar-chart-2.component.ts","../../../src/lib/icons/bar-chart.component.ts","../../../src/lib/icons/battery-charging.component.ts","../../../src/lib/icons/battery.component.ts","../../../src/lib/icons/bell-off.component.ts","../../../src/lib/icons/bell.component.ts","../../../src/lib/icons/bluetooth.component.ts","../../../src/lib/icons/bold.component.ts","../../../src/lib/icons/book-open.component.ts","../../../src/lib/icons/book.component.ts","../../../src/lib/icons/bookmark.component.ts","../../../src/lib/icons/bottle.component.ts","../../../src/lib/icons/box.component.ts","../../../src/lib/icons/briefcase.component.ts","../../../src/lib/icons/camera-off.component.ts","../../../src/lib/icons/candle.component.ts","../../../src/lib/icons/cast.component.ts","../../../src/lib/icons/check-circle.component.ts","../../../src/lib/icons/check-square.component.ts","../../../src/lib/icons/chevron-up.component.ts","../../../src/lib/icons/chevrons-down.component.ts","../../../src/lib/icons/chevrons-left.component.ts","../../../src/lib/icons/chevrons-right.component.ts","../../../src/lib/icons/chevrons-up.component.ts","../../../src/lib/icons/chrome.component.ts","../../../src/lib/icons/circle.component.ts","../../../src/lib/icons/clipboard.component.ts","../../../src/lib/icons/clock.component.ts","../../../src/lib/icons/cloud-drizzle.component.ts","../../../src/lib/icons/cloud-lightning.component.ts","../../../src/lib/icons/cloud-off.component.ts","../../../src/lib/icons/cloud-rain.component.ts","../../../src/lib/icons/cloud-snow.component.ts","../../../src/lib/icons/cloud.component.ts","../../../src/lib/icons/cloudflare.component.ts","../../../src/lib/icons/code.component.ts","../../../src/lib/icons/codepen.component.ts","../../../src/lib/icons/codesandbox.component.ts","../../../src/lib/icons/coffee.component.ts","../../../src/lib/icons/columns.component.ts","../../../src/lib/icons/command.component.ts","../../../src/lib/icons/compass.component.ts","../../../src/lib/icons/copy.component.ts","../../../src/lib/icons/corner-down-left.component.ts","../../../src/lib/icons/corner-down-right.component.ts","../../../src/lib/icons/corner-left-down.component.ts","../../../src/lib/icons/corner-left-up.component.ts","../../../src/lib/icons/corner-right-down.component.ts","../../../src/lib/icons/corner-right-up.component.ts","../../../src/lib/icons/corner-up-left.component.ts","../../../src/lib/icons/corner-up-right.component.ts","../../../src/lib/icons/cpu.component.ts","../../../src/lib/icons/credit-card.component.ts","../../../src/lib/icons/crop.component.ts","../../../src/lib/icons/crosshair.component.ts","../../../src/lib/icons/database.component.ts","../../../src/lib/icons/delete.component.ts","../../../src/lib/icons/disc.component.ts","../../../src/lib/icons/discord.component.ts","../../../src/lib/icons/divide-circle.component.ts","../../../src/lib/icons/divide-square.component.ts","../../../src/lib/icons/divide.component.ts","../../../src/lib/icons/docker.component.ts","../../../src/lib/icons/dollar-sign.component.ts","../../../src/lib/icons/download-cloud.component.ts","../../../src/lib/icons/download.component.ts","../../../src/lib/icons/dribbble.component.ts","../../../src/lib/icons/dropbox.component.ts","../../../src/lib/icons/droplet.component.ts","../../../src/lib/icons/edit-2.component.ts","../../../src/lib/icons/edit-3.component.ts","../../../src/lib/icons/edit.component.ts","../../../src/lib/icons/external-link.component.ts","../../../src/lib/icons/eye-off.component.ts","../../../src/lib/icons/eye.component.ts","../../../src/lib/icons/facebook-2.component.ts","../../../src/lib/icons/facebook.component.ts","../../../src/lib/icons/fast-forward.component.ts","../../../src/lib/icons/feather.component.ts","../../../src/lib/icons/figma-2.component.ts","../../../src/lib/icons/figma.component.ts","../../../src/lib/icons/file-minus.component.ts","../../../src/lib/icons/file-plus.component.ts","../../../src/lib/icons/file-text.component.ts","../../../src/lib/icons/file.component.ts","../../../src/lib/icons/film.component.ts","../../../src/lib/icons/filter.component.ts","../../../src/lib/icons/flag.component.ts","../../../src/lib/icons/folder-minus.component.ts","../../../src/lib/icons/folder-plus.component.ts","../../../src/lib/icons/folder.component.ts","../../../src/lib/icons/framer.component.ts","../../../src/lib/icons/frown.component.ts","../../../src/lib/icons/gift.component.ts","../../../src/lib/icons/git-branch.component.ts","../../../src/lib/icons/git-commit.component.ts","../../../src/lib/icons/git-merge.component.ts","../../../src/lib/icons/git-pull-request.component.ts","../../../src/lib/icons/github-2.component.ts","../../../src/lib/icons/github.component.ts","../../../src/lib/icons/gitlab.component.ts","../../../src/lib/icons/globe.component.ts","../../../src/lib/icons/google.component.ts","../../../src/lib/icons/grid.component.ts","../../../src/lib/icons/hard-drive.component.ts","../../../src/lib/icons/hash.component.ts","../../../src/lib/icons/headphones.component.ts","../../../src/lib/icons/heart.component.ts","../../../src/lib/icons/help-circle.component.ts","../../../src/lib/icons/heptagon.component.ts","../../../src/lib/icons/hexagon.component.ts","../../../src/lib/icons/home.component.ts","../../../src/lib/icons/image.component.ts","../../../src/lib/icons/inbox.component.ts","../../../src/lib/icons/instagram.component.ts","../../../src/lib/icons/italic.component.ts","../../../src/lib/icons/key.component.ts","../../../src/lib/icons/kubernetes.component.ts","../../../src/lib/icons/lamp.component.ts","../../../src/lib/icons/layers.component.ts","../../../src/lib/icons/layout.component.ts","../../../src/lib/icons/life-buoy.component.ts","../../../src/lib/icons/link-2.component.ts","../../../src/lib/icons/link.component.ts","../../../src/lib/icons/linkedin-2.component.ts","../../../src/lib/icons/linkedin.component.ts","../../../src/lib/icons/list.component.ts","../../../src/lib/icons/loader.component.ts","../../../src/lib/icons/lock.component.ts","../../../src/lib/icons/log-in.component.ts","../../../src/lib/icons/log-out.component.ts","../../../src/lib/icons/mail.component.ts","../../../src/lib/icons/map-pin.component.ts","../../../src/lib/icons/map.component.ts","../../../src/lib/icons/mastercard.component.ts","../../../src/lib/icons/maximize-2.component.ts","../../../src/lib/icons/maximize.component.ts","../../../src/lib/icons/meh.component.ts","../../../src/lib/icons/menu.component.ts","../../../src/lib/icons/message-circle.component.ts","../../../src/lib/icons/message-square.component.ts","../../../src/lib/icons/mic-off.component.ts","../../../src/lib/icons/mic.component.ts","../../../src/lib/icons/microsoft.component.ts","../../../src/lib/icons/minimize-2.component.ts","../../../src/lib/icons/minimize.component.ts","../../../src/lib/icons/minus-circle.component.ts","../../../src/lib/icons/minus-square.component.ts","../../../src/lib/icons/mongodb.component.ts","../../../src/lib/icons/monitor.component.ts","../../../src/lib/icons/moon.component.ts","../../../src/lib/icons/more-horizontal.component.ts","../../../src/lib/icons/more-vertical.component.ts","../../../src/lib/icons/mouse-pointer.component.ts","../../../src/lib/icons/move.component.ts","../../../src/lib/icons/music.component.ts","../../../src/lib/icons/navigation-2.component.ts","../../../src/lib/icons/navigation.component.ts","../../../src/lib/icons/netlify.component.ts","../../../src/lib/icons/notion.component.ts","../../../src/lib/icons/npm.component.ts","../../../src/lib/icons/octagon.component.ts","../../../src/lib/icons/package.component.ts","../../../src/lib/icons/paperclip.component.ts","../../../src/lib/icons/pause-circle.component.ts","../../../src/lib/icons/pause.component.ts","../../../src/lib/icons/paypal.component.ts","../../../src/lib/icons/pen-tool.component.ts","../../../src/lib/icons/pentagon.component.ts","../../../src/lib/icons/percent.component.ts","../../../src/lib/icons/phone-call.component.ts","../../../src/lib/icons/phone-forwarded.component.ts","../../../src/lib/icons/phone-incoming.component.ts","../../../src/lib/icons/phone-missed.component.ts","../../../src/lib/icons/phone-off.component.ts","../../../src/lib/icons/phone-outgoing.component.ts","../../../src/lib/icons/phone.component.ts","../../../src/lib/icons/pie-chart.component.ts","../../../src/lib/icons/play-circle.component.ts","../../../src/lib/icons/play.component.ts","../../../src/lib/icons/plus-circle.component.ts","../../../src/lib/icons/plus-square.component.ts","../../../src/lib/icons/pocket.component.ts","../../../src/lib/icons/power.component.ts","../../../src/lib/icons/printer.component.ts","../../../src/lib/icons/radio.component.ts","../../../src/lib/icons/rectangle-horizontal.component.ts","../../../src/lib/icons/rectangle-vertical.component.ts","../../../src/lib/icons/reddit.component.ts","../../../src/lib/icons/refresh-ccw.component.ts","../../../src/lib/icons/refresh-cw.component.ts","../../../src/lib/icons/repeat.component.ts","../../../src/lib/icons/rewind.component.ts","../../../src/lib/icons/rotate-cw.component.ts","../../../src/lib/icons/rss.component.ts","../../../src/lib/icons/save.component.ts","../../../src/lib/icons/scissors.component.ts","../../../src/lib/icons/search.component.ts","../../../src/lib/icons/send.component.ts","../../../src/lib/icons/server.component.ts","../../../src/lib/icons/settings.component.ts","../../../src/lib/icons/share-2.component.ts","../../../src/lib/icons/share.component.ts","../../../src/lib/icons/shield-off.component.ts","../../../src/lib/icons/shield.component.ts","../../../src/lib/icons/shopping-bag.component.ts","../../../src/lib/icons/shopping-cart.component.ts","../../../src/lib/icons/shuffle.component.ts","../../../src/lib/icons/sidebar.component.ts","../../../src/lib/icons/skip-back.component.ts","../../../src/lib/icons/skip-forward.component.ts","../../../src/lib/icons/slack-2.component.ts","../../../src/lib/icons/slack.component.ts","../../../src/lib/icons/slash.component.ts","../../../src/lib/icons/sliders.component.ts","../../../src/lib/icons/smartphone.component.ts","../../../src/lib/icons/smile.component.ts","../../../src/lib/icons/soccer-ball.component.ts","../../../src/lib/icons/speaker.component.ts","../../../src/lib/icons/spotify.component.ts","../../../src/lib/icons/square.component.ts","../../../src/lib/icons/star.component.ts","../../../src/lib/icons/stop-circle.component.ts","../../../src/lib/icons/stripe.component.ts","../../../src/lib/icons/sun.component.ts","../../../src/lib/icons/sunrise.component.ts","../../../src/lib/icons/sunset.component.ts","../../../src/lib/icons/table.component.ts","../../../src/lib/icons/tablet.component.ts","../../../src/lib/icons/tag.component.ts","../../../src/lib/icons/target.component.ts","../../../src/lib/icons/terminal.component.ts","../../../src/lib/icons/thermometer.component.ts","../../../src/lib/icons/thumbs-down.component.ts","../../../src/lib/icons/thumbs-up.component.ts","../../../src/lib/icons/toggle-left.component.ts","../../../src/lib/icons/toggle-right.component.ts","../../../src/lib/icons/tool.component.ts","../../../src/lib/icons/trash-2.component.ts","../../../src/lib/icons/trello.component.ts","../../../src/lib/icons/trending-down.component.ts","../../../src/lib/icons/trending-up.component.ts","../../../src/lib/icons/triangle.component.ts","../../../src/lib/icons/trophy.component.ts","../../../src/lib/icons/truck.component.ts","../../../src/lib/icons/tv.component.ts","../../../src/lib/icons/twitch-2.component.ts","../../../src/lib/icons/twitch.component.ts","../../../src/lib/icons/twitter.component.ts","../../../src/lib/icons/type.component.ts","../../../src/lib/icons/umbrella.component.ts","../../../src/lib/icons/underline.component.ts","../../../src/lib/icons/unlock.component.ts","../../../src/lib/icons/upload-cloud.component.ts","../../../src/lib/icons/user-check.component.ts","../../../src/lib/icons/user-minus.component.ts","../../../src/lib/icons/user-plus.component.ts","../../../src/lib/icons/user-x.component.ts","../../../src/lib/icons/users.component.ts","../../../src/lib/icons/vercel.component.ts","../../../src/lib/icons/video-off.component.ts","../../../src/lib/icons/video.component.ts","../../../src/lib/icons/voicemail.component.ts","../../../src/lib/icons/volume-1.component.ts","../../../src/lib/icons/volume-2.component.ts","../../../src/lib/icons/volume-x.component.ts","../../../src/lib/icons/volume.component.ts","../../../src/lib/icons/watch.component.ts","../../../src/lib/icons/wifi-off.component.ts","../../../src/lib/icons/wifi.component.ts","../../../src/lib/icons/wind.component.ts","../../../src/lib/icons/x-circle.component.ts","../../../src/lib/icons/x-octagon.component.ts","../../../src/lib/icons/x-square.component.ts","../../../src/lib/icons/x-twitter.component.ts","../../../src/lib/icons/youtube-2.component.ts","../../../src/lib/icons/youtube.component.ts","../../../src/lib/icons/zap-off.component.ts","../../../src/lib/icons/zap.component.ts","../../../src/lib/icons/zoom-in.component.ts","../../../src/lib/icons/zoom-out.component.ts","../../../src/lib/icons/icons-catalogue.ts","../../../src/lib/icons/apple.component.ts","../../../src/lib/icons/pencil.component.ts","../../../src/lib/input/input.component.ts","../../../src/lib/input/input.component.html","../../../src/lib/menu/menu.component.ts","../../../src/lib/menu/menu.component.html","../../../src/lib/menu/menu-item.component.ts","../../../src/lib/menu/menu-item.component.html","../../../src/lib/menu/menu-trigger.directive.ts","../../../src/lib/paginator/paginator.component.ts","../../../src/lib/paginator/paginator.component.html","../../../src/lib/progress-bar/progress-bar.component.ts","../../../src/lib/progress-bar/progress-bar.component.html","../../../src/lib/radio/radio-group.component.ts","../../../src/lib/radio/radio-group.component.html","../../../src/lib/radio/radio.component.ts","../../../src/lib/radio/radio.component.html","../../../src/lib/segmented/segmented.component.ts","../../../src/lib/segmented/segmented.component.html","../../../src/lib/slider/slider.component.ts","../../../src/lib/slider/slider.component.html","../../../src/lib/spinner/spinner.component.ts","../../../src/lib/spinner/spinner.component.html","../../../src/lib/switch/switch.component.ts","../../../src/lib/switch/switch.component.html","../../../src/lib/tabs/tabs.component.ts","../../../src/lib/tabs/tabs.component.html","../../../src/lib/tabs/tab.component.ts","../../../src/lib/tag/tag.component.ts","../../../src/lib/tag/tag.component.html","../../../src/lib/textarea/textarea.component.ts","../../../src/lib/textarea/textarea.component.html","../../../src/lib/toast/toast.service.ts","../../../src/lib/toast/toast.component.ts","../../../src/lib/toast/toast.component.html","../../../src/public-api.ts","../../../src/eagami-ui.ts"],"sourcesContent":["// =============================================================================\n// EAGAMI UI — i18n types\n// =============================================================================\n\n/**\n * BCP 47 locale tags supported out of the box. Consumers select one of these\n * via `provideEagamiUi({ locale })` or `EagamiI18nService.setLocale()`.\n */\nexport type EagamiLocale = 'en' | 'fr-FR' | 'el' | 'pl' | 'es-ES';\n\n/** Ordered list of every supported locale — handy for language switchers. */\nexport const EAGAMI_LOCALES: readonly EagamiLocale[] = [\n 'en',\n 'fr-FR',\n 'el',\n 'pl',\n 'es-ES',\n];\n\n/**\n * Every user-facing string baked into the component library, grouped by\n * component. Parameterized strings are functions so each locale controls its\n * own word order and pluralization.\n */\nexport interface EagamiMessages {\n alert: {\n dismiss: string;\n };\n autocomplete: {\n empty: string;\n };\n avatarEditor: {\n upload: string;\n dropzone: string;\n canvas: string;\n change: string;\n revert: string;\n zoomOut: string;\n zoom: string;\n zoomIn: string;\n remove: string;\n };\n breadcrumbs: {\n label: string;\n };\n codeInput: {\n groupLabel: (length: number) => string;\n digitLabel: (index: number, length: number) => string;\n };\n dataTable: {\n noData: string;\n };\n datePicker: {\n placeholder: string;\n clear: string;\n previousYear: string;\n previousMonth: string;\n nextMonth: string;\n nextYear: string;\n today: string;\n };\n dialog: {\n close: string;\n };\n drawer: {\n close: string;\n };\n dropdown: {\n placeholder: string;\n };\n input: {\n showPassword: string;\n hidePassword: string;\n };\n menu: {\n label: string;\n };\n paginator: {\n label: string;\n rowsPerPage: string;\n range: (start: number, end: number, total: number) => string;\n previousPage: string;\n nextPage: string;\n };\n progressBar: {\n label: string;\n };\n spinner: {\n label: string;\n };\n tag: {\n remove: string;\n };\n toast: {\n dismiss: string;\n };\n wordmark: {\n overline: string;\n tagline: string;\n };\n}\n\n/** A partial set of message overrides, applied per component group. */\nexport type EagamiMessagesOverride = {\n [G in keyof EagamiMessages]?: Partial<EagamiMessages[G]>;\n};\n\n/** Configuration accepted by `provideEagamiUi`. */\nexport interface EagamiI18nConfig {\n /** Initial locale. Defaults to `'en'`. */\n locale?: EagamiLocale;\n /** Optional per-string overrides merged over the active locale's messages. */\n messages?: EagamiMessagesOverride;\n}\n","import {\n EnvironmentProviders,\n InjectionToken,\n makeEnvironmentProviders,\n} from '@angular/core';\n\nimport { EagamiI18nConfig } from './i18n.types';\n\n/** DI token carrying the consumer-supplied i18n configuration. */\nexport const EAGAMI_I18N_CONFIG = new InjectionToken<EagamiI18nConfig>(\n 'EAGAMI_I18N_CONFIG',\n);\n\n/**\n * Configures Eagami UI for the application. Pass a `locale` to switch every\n * component's built-in strings (and locale-aware date formatting) at once, and\n * optionally `messages` to override individual strings.\n *\n * ```ts\n * bootstrapApplication(AppComponent, {\n * providers: [provideEagamiUi({ locale: 'fr-FR' })],\n * });\n * ```\n *\n * Calling this is optional — without it the library defaults to English.\n */\nexport function provideEagamiUi(config: EagamiI18nConfig = {}): EnvironmentProviders {\n return makeEnvironmentProviders([{ provide: EAGAMI_I18N_CONFIG, useValue: config }]);\n}\n","import { EagamiMessages } from '../i18n.types';\n\n/** Greek messages. */\nexport const el: EagamiMessages = {\n alert: {\n dismiss: 'Απόρριψη',\n },\n autocomplete: {\n empty: 'Δεν υπάρχουν αποτελέσματα',\n },\n avatarEditor: {\n upload: 'Μεταφόρτωση εικόνας',\n dropzone: 'Αποθέστε μια εικόνα ή κάντε κλικ για μεταφόρτωση',\n canvas:\n 'Προεπισκόπηση εικόνας, σύρετε ή χρησιμοποιήστε τα βέλη για μετακίνηση, το ρυθμιστικό για ζουμ',\n change: 'Αλλαγή φωτογραφίας',\n revert: 'Επαναφορά στο αρχικό',\n zoomOut: 'Σμίκρυνση',\n zoom: 'Ζουμ',\n zoomIn: 'Μεγέθυνση',\n remove: 'Αφαίρεση εικόνας',\n },\n breadcrumbs: {\n label: 'Διαδρομή πλοήγησης',\n },\n codeInput: {\n groupLabel: length => `Κωδικός επαλήθευσης, ${length} ψηφία`,\n digitLabel: (index, length) => `Ψηφίο ${index} από ${length}`,\n },\n dataTable: {\n noData: 'Δεν υπάρχουν διαθέσιμα δεδομένα',\n },\n datePicker: {\n placeholder: 'Επιλέξτε ημερομηνία…',\n clear: 'Εκκαθάριση ημερομηνίας',\n previousYear: 'Προηγούμενο έτος',\n previousMonth: 'Προηγούμενος μήνας',\n nextMonth: 'Επόμενος μήνας',\n nextYear: 'Επόμενο έτος',\n today: 'Σήμερα',\n },\n dialog: {\n close: 'Κλείσιμο παραθύρου διαλόγου',\n },\n drawer: {\n close: 'Κλείσιμο πίνακα',\n },\n dropdown: {\n placeholder: 'Επιλέξτε…',\n },\n input: {\n showPassword: 'Εμφάνιση κωδικού πρόσβασης',\n hidePassword: 'Απόκρυψη κωδικού πρόσβασης',\n },\n menu: {\n label: 'Μενού',\n },\n paginator: {\n label: 'Σελιδοποίηση',\n rowsPerPage: 'Γραμμές ανά σελίδα:',\n range: (start, end, total) => `${start}–${end} από ${total}`,\n previousPage: 'Προηγούμενη σελίδα',\n nextPage: 'Επόμενη σελίδα',\n },\n progressBar: {\n label: 'Πρόοδος',\n },\n spinner: {\n label: 'Φόρτωση',\n },\n tag: {\n remove: 'Αφαίρεση',\n },\n toast: {\n dismiss: 'Απόρριψη',\n },\n wordmark: {\n overline: 'φτιαγμένο με μεράκι από',\n tagline: 'κομψός σχεδιασμός ιστού',\n },\n};\n","import { EagamiMessages } from '../i18n.types';\n\n/** English (default / fallback) messages. */\nexport const en: EagamiMessages = {\n alert: {\n dismiss: 'Dismiss',\n },\n autocomplete: {\n empty: 'No results',\n },\n avatarEditor: {\n upload: 'Upload image',\n dropzone: 'Drop image or click to upload',\n canvas: 'Image preview, drag or use arrow keys to pan, slider to zoom',\n change: 'Change photo',\n revert: 'Revert to original',\n zoomOut: 'Zoom out',\n zoom: 'Zoom',\n zoomIn: 'Zoom in',\n remove: 'Remove image',\n },\n breadcrumbs: {\n label: 'Breadcrumb',\n },\n codeInput: {\n groupLabel: length => `Verification code, ${length} digits`,\n digitLabel: (index, length) => `Digit ${index} of ${length}`,\n },\n dataTable: {\n noData: 'No data available',\n },\n datePicker: {\n placeholder: 'Select date…',\n clear: 'Clear date',\n previousYear: 'Previous year',\n previousMonth: 'Previous month',\n nextMonth: 'Next month',\n nextYear: 'Next year',\n today: 'Today',\n },\n dialog: {\n close: 'Close dialog',\n },\n drawer: {\n close: 'Close panel',\n },\n dropdown: {\n placeholder: 'Select…',\n },\n input: {\n showPassword: 'Show password',\n hidePassword: 'Hide password',\n },\n menu: {\n label: 'Menu',\n },\n paginator: {\n label: 'Pagination',\n rowsPerPage: 'Rows per page:',\n range: (start, end, total) => `${start}–${end} of ${total}`,\n previousPage: 'Previous page',\n nextPage: 'Next page',\n },\n progressBar: {\n label: 'Progress',\n },\n spinner: {\n label: 'Loading',\n },\n tag: {\n remove: 'Remove',\n },\n toast: {\n dismiss: 'Dismiss',\n },\n wordmark: {\n overline: 'handcrafted by',\n tagline: 'elegant web design',\n },\n};\n","import { EagamiMessages } from '../i18n.types';\n\n/** Spanish (Spain) messages. */\nexport const esES: EagamiMessages = {\n alert: {\n dismiss: 'Descartar',\n },\n autocomplete: {\n empty: 'Sin resultados',\n },\n avatarEditor: {\n upload: 'Subir imagen',\n dropzone: 'Suelta una imagen o haz clic para subir',\n canvas:\n 'Vista previa de la imagen, arrastra o usa las flechas para desplazar, el control deslizante para ampliar',\n change: 'Cambiar foto',\n revert: 'Revertir al original',\n zoomOut: 'Alejar',\n zoom: 'Ampliación',\n zoomIn: 'Acercar',\n remove: 'Eliminar imagen',\n },\n breadcrumbs: {\n label: 'Ruta de navegación',\n },\n codeInput: {\n groupLabel: length => `Código de verificación, ${length} dígitos`,\n digitLabel: (index, length) => `Dígito ${index} de ${length}`,\n },\n dataTable: {\n noData: 'No hay datos disponibles',\n },\n datePicker: {\n placeholder: 'Seleccionar fecha…',\n clear: 'Borrar fecha',\n previousYear: 'Año anterior',\n previousMonth: 'Mes anterior',\n nextMonth: 'Mes siguiente',\n nextYear: 'Año siguiente',\n today: 'Hoy',\n },\n dialog: {\n close: 'Cerrar diálogo',\n },\n drawer: {\n close: 'Cerrar panel',\n },\n dropdown: {\n placeholder: 'Seleccionar…',\n },\n input: {\n showPassword: 'Mostrar contraseña',\n hidePassword: 'Ocultar contraseña',\n },\n menu: {\n label: 'Menú',\n },\n paginator: {\n label: 'Paginación',\n rowsPerPage: 'Filas por página:',\n range: (start, end, total) => `${start}–${end} de ${total}`,\n previousPage: 'Página anterior',\n nextPage: 'Página siguiente',\n },\n progressBar: {\n label: 'Progreso',\n },\n spinner: {\n label: 'Cargando',\n },\n tag: {\n remove: 'Eliminar',\n },\n toast: {\n dismiss: 'Descartar',\n },\n wordmark: {\n overline: 'hecho a mano por',\n tagline: 'diseño web elegante',\n },\n};\n","import { EagamiMessages } from '../i18n.types';\n\n/** French (France) messages. */\nexport const frFR: EagamiMessages = {\n alert: {\n dismiss: 'Fermer',\n },\n autocomplete: {\n empty: 'Aucun résultat',\n },\n avatarEditor: {\n upload: 'Téléverser une image',\n dropzone: 'Déposez une image ou cliquez pour téléverser',\n canvas:\n \"Aperçu de l'image, faites glisser ou utilisez les flèches pour déplacer, le curseur pour zoomer\",\n change: 'Changer la photo',\n revert: \"Revenir à l'original\",\n zoomOut: 'Dézoomer',\n zoom: 'Zoom',\n zoomIn: 'Zoomer',\n remove: \"Supprimer l'image\",\n },\n breadcrumbs: {\n label: \"Fil d'Ariane\",\n },\n codeInput: {\n groupLabel: length => `Code de vérification, ${length} chiffres`,\n digitLabel: (index, length) => `Chiffre ${index} sur ${length}`,\n },\n dataTable: {\n noData: 'Aucune donnée disponible',\n },\n datePicker: {\n placeholder: 'Sélectionner une date…',\n clear: 'Effacer la date',\n previousYear: 'Année précédente',\n previousMonth: 'Mois précédent',\n nextMonth: 'Mois suivant',\n nextYear: 'Année suivante',\n today: \"Aujourd'hui\",\n },\n dialog: {\n close: 'Fermer la boîte de dialogue',\n },\n drawer: {\n close: 'Fermer le panneau',\n },\n dropdown: {\n placeholder: 'Sélectionner…',\n },\n input: {\n showPassword: 'Afficher le mot de passe',\n hidePassword: 'Masquer le mot de passe',\n },\n menu: {\n label: 'Menu',\n },\n paginator: {\n label: 'Pagination',\n rowsPerPage: 'Lignes par page :',\n range: (start, end, total) => `${start}–${end} sur ${total}`,\n previousPage: 'Page précédente',\n nextPage: 'Page suivante',\n },\n progressBar: {\n label: 'Progression',\n },\n spinner: {\n label: 'Chargement',\n },\n tag: {\n remove: 'Supprimer',\n },\n toast: {\n dismiss: 'Fermer',\n },\n wordmark: {\n overline: 'conçu avec soin par',\n tagline: 'design web élégant',\n },\n};\n","import { EagamiMessages } from '../i18n.types';\n\n/** Polish messages. */\nexport const pl: EagamiMessages = {\n alert: {\n dismiss: 'Zamknij',\n },\n autocomplete: {\n empty: 'Brak wyników',\n },\n avatarEditor: {\n upload: 'Prześlij obraz',\n dropzone: 'Upuść obraz lub kliknij, aby przesłać',\n canvas:\n 'Podgląd obrazu, przeciągnij lub użyj strzałek, aby przesunąć, suwaka, aby przybliżyć',\n change: 'Zmień zdjęcie',\n revert: 'Przywróć oryginał',\n zoomOut: 'Pomniejsz',\n zoom: 'Powiększenie',\n zoomIn: 'Powiększ',\n remove: 'Usuń obraz',\n },\n breadcrumbs: {\n label: 'Ścieżka nawigacji',\n },\n codeInput: {\n groupLabel: length => `Kod weryfikacyjny, ${length} cyfr`,\n digitLabel: (index, length) => `Cyfra ${index} z ${length}`,\n },\n dataTable: {\n noData: 'Brak dostępnych danych',\n },\n datePicker: {\n placeholder: 'Wybierz datę…',\n clear: 'Wyczyść datę',\n previousYear: 'Poprzedni rok',\n previousMonth: 'Poprzedni miesiąc',\n nextMonth: 'Następny miesiąc',\n nextYear: 'Następny rok',\n today: 'Dzisiaj',\n },\n dialog: {\n close: 'Zamknij okno dialogowe',\n },\n drawer: {\n close: 'Zamknij panel',\n },\n dropdown: {\n placeholder: 'Wybierz…',\n },\n input: {\n showPassword: 'Pokaż hasło',\n hidePassword: 'Ukryj hasło',\n },\n menu: {\n label: 'Menu',\n },\n paginator: {\n label: 'Paginacja',\n rowsPerPage: 'Wierszy na stronę:',\n range: (start, end, total) => `${start}–${end} z ${total}`,\n previousPage: 'Poprzednia strona',\n nextPage: 'Następna strona',\n },\n progressBar: {\n label: 'Postęp',\n },\n spinner: {\n label: 'Ładowanie',\n },\n tag: {\n remove: 'Usuń',\n },\n toast: {\n dismiss: 'Zamknij',\n },\n wordmark: {\n overline: 'ręcznie wykonane przez',\n tagline: 'elegancki projekt stron',\n },\n};\n","import { EagamiLocale, EagamiMessages } from '../i18n.types';\nimport { el } from './el';\nimport { en } from './en';\nimport { esES } from './es-ES';\nimport { frFR } from './fr-FR';\nimport { pl } from './pl';\n\nexport { el, en, esES, frFR, pl };\n\n/** Built-in message dictionaries, keyed by locale. */\nexport const EAGAMI_MESSAGES: Record<EagamiLocale, EagamiMessages> = {\n en,\n 'fr-FR': frFR,\n el,\n pl,\n 'es-ES': esES,\n};\n","import { Injectable, Signal, computed, inject, signal } from '@angular/core';\n\nimport { EAGAMI_I18N_CONFIG } from './i18n.provider';\nimport { EagamiLocale, EagamiMessages, EagamiMessagesOverride } from './i18n.types';\nimport { EAGAMI_MESSAGES, en } from './messages';\n\n/** Shallow-merges per-component override groups over a complete base dictionary. */\nfunction applyOverrides(\n base: EagamiMessages,\n overrides: EagamiMessagesOverride,\n): EagamiMessages {\n const merged = {} as EagamiMessages;\n for (const key of Object.keys(base) as (keyof EagamiMessages)[]) {\n merged[key] = { ...base[key], ...overrides[key] } as EagamiMessages[never];\n }\n return merged;\n}\n\n/**\n * Holds the active locale and resolves the matching message dictionary for\n * every Eagami UI component. The `locale` signal is reactive, so changing it\n * at runtime re-renders all components with the new strings. Unknown locales\n * (or missing keys via partial overrides) fall back to English.\n */\n@Injectable({ providedIn: 'root' })\nexport class EagamiI18nService {\n private readonly config = inject(EAGAMI_I18N_CONFIG, { optional: true });\n\n private readonly _locale = signal<EagamiLocale>(this.config?.locale ?? 'en');\n\n /** The currently active locale. Read it reactively or call `setLocale()`. */\n readonly locale: Signal<EagamiLocale> = this._locale.asReadonly();\n\n /** The resolved message dictionary for the active locale. */\n readonly messages: Signal<EagamiMessages> = computed(() => {\n const base = EAGAMI_MESSAGES[this._locale()] ?? en;\n const overrides = this.config?.messages;\n return overrides ? applyOverrides(base, overrides) : base;\n });\n\n /** Switches the active locale; falls back to English if unsupported. */\n setLocale(locale: EagamiLocale): void {\n this._locale.set(EAGAMI_MESSAGES[locale] ? locale : 'en');\n }\n}\n","// =============================================================================\n// EAGAMI UI — French spacing helper\n// =============================================================================\n\n// Pattern: ASCII space (0x20) followed by a closing \"high\" punctuation mark.\n// French typography wants an \"espace fine insécable\" (narrow non-breaking\n// space, U+202F) in this position, not a regular breakable space. The match\n// deliberately excludes U+202F and U+00A0 so the function is idempotent.\nconst SPACE_BEFORE_HIGH_PUNCT = / ([!?:;»])/g;\n\n// Pattern: opening guillemet followed by an ASCII space — symmetric rule for\n// the inside of French quotation marks.\nconst SPACE_AFTER_OPEN_GUILLEMET = /(«) /g;\n\n/**\n * Replaces regular spaces with U+202F (narrow non-breaking space) in the\n * positions where standard French typography requires \"espace fine insécable\":\n * before `!` `?` `:` `;` `»`, and after `«`. This is what publishers like the\n * Imprimerie nationale and most French press follow, and it prevents the\n * punctuation from wrapping onto its own line.\n *\n * Opt-in: the library does not auto-apply this to anything. Components render\n * whatever string they receive. Apply this to consumer-supplied content (user\n * input, content from your CMS, etc.) that you want to format correctly for a\n * French audience. The function is idempotent — already-converted text passes\n * through unchanged.\n *\n * Do not apply it to URLs, CSS, JSON, code snippets, or other technical\n * strings where `:` or `?` have non-prose meaning.\n *\n * @example\n * frenchSpacing('Lignes par page :');\n * // → 'Lignes par page\\u202F:'\n *\n * frenchSpacing(\"Qu'est-ce que c'est ?\");\n * // → \"Qu'est-ce que c'est\\u202F?\"\n *\n * frenchSpacing('Il a dit « bonjour ».');\n * // → 'Il a dit «\\u202Fbonjour\\u202F».'\n */\nexport function frenchSpacing(text: string): string {\n return text\n .replace(SPACE_BEFORE_HIGH_PUNCT, ' $1')\n .replace(SPACE_AFTER_OPEN_GUILLEMET, '$1 ');\n}\n","// =============================================================================\n// EAGAMI UI — i18n public surface\n// =============================================================================\n\nexport * from './i18n.types';\nexport { EAGAMI_I18N_CONFIG, provideEagamiUi } from './i18n.provider';\nexport { EagamiI18nService } from './i18n.service';\nexport { EAGAMI_MESSAGES, el, en, esES, frFR, pl } from './messages';\nexport { frenchSpacing } from './french-spacing';\n","import { ChangeDetectionStrategy, Component, input, signal } from '@angular/core';\n\n/**\n * Container for expandable content sections. By default only one item can be\n * open at a time; set `multi` to allow several to stay expanded together.\n * Provides a built-in chevron animation and supports per-item disabling.\n */\n@Component({\n selector: 'ea-accordion',\n template: ` <div class=\"ea-accordion\"><ng-content /></div> `,\n styleUrl: './accordion.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionComponent {\n readonly multi = input<boolean>(false);\n\n readonly expandedItems = signal<Set<string>>(new Set());\n\n toggle(value: string): void {\n const current = this.expandedItems();\n const next = new Set(current);\n\n if (next.has(value)) {\n next.delete(value);\n } else {\n if (!this.multi()) {\n next.clear();\n }\n next.add(value);\n }\n\n this.expandedItems.set(next);\n }\n\n isExpanded(value: string): boolean {\n return this.expandedItems().has(value);\n }\n}\n","import { Directive, HostBinding, Type } from '@angular/core';\n\n/**\n * Primary classification for an icon component. Every icon ships with a single\n * `category` (read off the component's `static readonly category` field) plus\n * a separate `static readonly isBrand` flag for whether it also depicts a\n * recognisable brand mark.\n *\n * `feather`: derived from the upstream Feather Icons set (MIT). Uses Feather's\n * canonical slug and design.\n * `eagami`: original Eagami UI design (the brand mark, the basic shape set,\n * household icons, and the brand-filled variants of icons that\n * also exist as Feather outlines).\n */\nexport type IconCategory = 'feather' | 'eagami';\n\n/**\n * Shape of the static metadata that every `ea-icon-*` component carries\n * alongside its template. Read these fields directly off the component class\n * (e.g. `GithubIconComponent.tags`) to build catalogues, search indices, or\n * documentation tables without pulling in any other icon as a transitive\n * dependency.\n */\nexport interface IconMeta {\n readonly slug: string;\n readonly category: IconCategory;\n /** True when the icon depicts a recognisable third-party or Eagami brand mark. */\n readonly isBrand?: boolean;\n readonly tags: ReadonlyArray<string>;\n}\n\n/** An icon component class augmented with its static metadata. */\nexport type IconComponentType = Type<unknown> & IconMeta;\n\n/**\n * Abstract base class for every `ea-icon-*` component. Provides the shared\n * host bindings that make icons render as inline-flex 1em squares, so\n * individual icon components don't need to repeat the `host: { style: '...' }`\n * config in their `@Component` decorator. Brand icons with their own host\n * bindings (e.g. a colour binding tied to a `brand` input) layer those onto\n * this base via additional `@HostBinding` getters.\n */\n@Directive()\nexport abstract class IconComponentBase {\n @HostBinding('style.display') readonly display = 'inline-flex';\n @HostBinding('style.width') readonly width = '1em';\n @HostBinding('style.height') readonly height = '1em';\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-chevron-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"6 9 12 15 18 9\" />\n </svg>\n `,\n})\nexport class ChevronDownIconComponent extends IconComponentBase {\n static readonly slug = 'chevron-down';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'chevron-down',\n 'chevron',\n 'down',\n 'arrow',\n 'expand',\n 'dropdown',\n 'bas',\n 'abajo',\n 'κάτω',\n 'dół',\n ];\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { ChevronDownIconComponent } from '../icons/chevron-down.component';\nimport { AccordionComponent } from './accordion.component';\n\n/**\n * Single expandable section within an `ea-accordion`. Each item exposes a\n * header button with the supplied `label` and reveals its projected content\n * when expanded. Must be rendered inside an `ea-accordion`.\n */\n@Component({\n selector: 'ea-accordion-item',\n imports: [ChevronDownIconComponent],\n templateUrl: './accordion-item.component.html',\n styleUrl: './accordion-item.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccordionItemComponent {\n private readonly accordion = inject(AccordionComponent);\n\n readonly value = input.required<string>();\n readonly label = input.required<string>();\n readonly disabled = input<boolean>(false);\n readonly id = input<string>(\n `ea-accordion-item-${Math.random().toString(36).slice(2, 9)}`,\n );\n\n readonly isExpanded = computed(() => this.accordion.isExpanded(this.value()));\n\n toggle(): void {\n if (this.disabled()) return;\n this.accordion.toggle(this.value());\n }\n}\n","<div\n class=\"ea-accordion-item\"\n [class.ea-accordion-item--expanded]=\"isExpanded()\"\n [class.ea-accordion-item--disabled]=\"disabled()\">\n <button\n class=\"ea-accordion-item__trigger\"\n type=\"button\"\n [id]=\"id() + '-trigger'\"\n [attr.aria-expanded]=\"isExpanded()\"\n [attr.aria-controls]=\"id() + '-content'\"\n [disabled]=\"disabled()\"\n (click)=\"toggle()\">\n <span class=\"ea-accordion-item__label\">{{ label() }}</span>\n <ea-icon-chevron-down\n class=\"ea-accordion-item__chevron\"\n aria-hidden=\"true\" />\n </button>\n @if (isExpanded()) {\n <div\n class=\"ea-accordion-item__content\"\n role=\"region\"\n [id]=\"id() + '-content'\"\n [attr.aria-labelledby]=\"id() + '-trigger'\">\n <ng-content />\n </div>\n }\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-alert-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 16 16\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1zm-.75 4a.75.75 0 0 1 1.5 0v3.5a.75.75 0 0 1-1.5 0V5zm.75 6.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2z\" />\n </svg>\n `,\n})\nexport class AlertCircleIconComponent extends IconComponentBase {\n static readonly slug = 'alert-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'alert-circle',\n 'alert',\n 'circle',\n 'warning',\n 'caution',\n 'notification',\n 'alerte',\n 'avertissement',\n 'alerta',\n 'aviso',\n 'ειδοποίηση',\n 'προσοχή',\n 'alarm',\n 'ostrzeżenie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-check',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n `,\n})\nexport class CheckIconComponent extends IconComponentBase {\n static readonly slug = 'check';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'check',\n 'tick',\n 'confirm',\n 'done',\n 'ok',\n 'yes',\n 'coche',\n 'valider',\n 'marca',\n 'confirmar',\n 'τσεκ',\n 'επιβεβαίωση',\n 'zaznacz',\n 'potwierdź',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-info',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"12\"\n y1=\"16\"\n x2=\"12\"\n y2=\"12\" />\n <line\n x1=\"12\"\n y1=\"8\"\n x2=\"12.01\"\n y2=\"8\" />\n </svg>\n `,\n})\nexport class InfoIconComponent extends IconComponentBase {\n static readonly slug = 'info';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'info',\n 'information',\n 'help',\n 'about',\n 'details',\n 'information',\n 'información',\n 'πληροφορίες',\n 'informacje',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-x',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"18\"\n y1=\"6\"\n x2=\"6\"\n y2=\"18\" />\n <line\n x1=\"6\"\n y1=\"6\"\n x2=\"18\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class XIconComponent extends IconComponentBase {\n static readonly slug = 'x';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'x',\n 'close',\n 'cancel',\n 'cross',\n 'remove',\n 'exit',\n 'fermer',\n 'cerrar',\n 'κλείσιμο',\n 'άκυρο',\n 'zamknij',\n 'anuluj',\n ];\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n model,\n output,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { AlertCircleIconComponent } from '../icons/alert-circle.component';\nimport { CheckIconComponent } from '../icons/check.component';\nimport { InfoIconComponent } from '../icons/info.component';\nimport { XIconComponent } from '../icons/x.component';\n\n/** Semantic colour scheme of an alert. Drives icon and palette. */\nexport type AlertVariant = 'default' | 'success' | 'warning' | 'error' | 'info';\n\n/**\n * Inline banner for surfacing semantic messages such as success confirmations,\n * warnings, or errors. Optionally dismissible, with a two-way `visible`\n * binding and an automatically chosen ARIA role based on severity.\n */\n@Component({\n selector: 'ea-alert',\n templateUrl: './alert.component.html',\n styleUrl: './alert.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n AlertCircleIconComponent,\n CheckIconComponent,\n InfoIconComponent,\n XIconComponent,\n ],\n})\nexport class AlertComponent {\n protected readonly i18n = inject(EagamiI18nService);\n\n readonly variant = input<AlertVariant>('default');\n readonly dismissible = input<boolean>(false);\n readonly visible = model<boolean>(true);\n\n /** Fires when the user dismisses the alert via its close button. */\n readonly dismissed = output<void>();\n\n readonly alertClasses = computed(() => ({\n [`ea-alert--${this.variant()}`]: true,\n }));\n\n readonly role = computed(() => {\n const v = this.variant();\n return v === 'error' || v === 'warning' ? 'alert' : 'status';\n });\n\n /** Hides the alert and emits `dismissed`. */\n dismiss(): void {\n this.visible.set(false);\n this.dismissed.emit();\n }\n}\n","@if (visible()) {\n <div\n class=\"ea-alert\"\n [class.ea-alert--default]=\"variant() === 'default'\"\n [class.ea-alert--success]=\"variant() === 'success'\"\n [class.ea-alert--warning]=\"variant() === 'warning'\"\n [class.ea-alert--error]=\"variant() === 'error'\"\n [class.ea-alert--info]=\"variant() === 'info'\"\n [attr.role]=\"role()\">\n <span\n class=\"ea-alert__icon\"\n aria-hidden=\"true\">\n @switch (variant()) {\n @case ('success') {\n <ea-icon-check />\n }\n @case ('warning') {\n <ea-icon-alert-circle />\n }\n @case ('error') {\n <ea-icon-alert-circle />\n }\n @case ('info') {\n <ea-icon-info />\n }\n @default {\n <ea-icon-info />\n }\n }\n </span>\n <div class=\"ea-alert__content\">\n <ng-content />\n </div>\n @if (dismissible()) {\n <button\n class=\"ea-alert__close\"\n type=\"button\"\n [attr.aria-label]=\"i18n.messages().alert.dismiss\"\n (click)=\"dismiss()\">\n <ea-icon-x />\n </button>\n }\n </div>\n}\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostListener,\n computed,\n forwardRef,\n inject,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { SelectOption } from '../select-option';\n\n/** Visual size of the autocomplete input. */\nexport type AutocompleteSize = 'sm' | 'md' | 'lg';\n\n/**\n * Text input paired with a filtered suggestion list. Filters options by\n * case-insensitive substring match, supports arrow-key navigation, and\n * implements `ControlValueAccessor` for use with reactive and template-driven\n * forms.\n */\n@Component({\n selector: 'ea-autocomplete',\n imports: [NgClass],\n templateUrl: './autocomplete.component.html',\n styleUrl: './autocomplete.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AutocompleteComponent),\n multi: true,\n },\n ],\n})\nexport class AutocompleteComponent implements ControlValueAccessor {\n private readonly inputEl = viewChild<ElementRef<HTMLInputElement>>('inputEl');\n private readonly hostEl = viewChild<ElementRef<HTMLElement>>('hostEl');\n private readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly label = input<string | undefined>(undefined);\n readonly placeholder = input<string>('');\n readonly options = input<SelectOption[]>([]);\n readonly size = input<AutocompleteSize>('md');\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly minLength = input<number>(0);\n readonly maxResults = input<number>(10);\n readonly emptyMessage = input<string | undefined>(undefined);\n readonly id = input<string>(\n `ea-autocomplete-${Math.random().toString(36).slice(2, 9)}`,\n );\n\n // Two-way value binding (current text value in the input)\n readonly value = model<string>('');\n\n // Outputs\n /** Fires when the user picks an option from the suggestion list. */\n readonly selected = output<SelectOption>();\n /** Fires whenever the input text changes, including on free-text edits. */\n readonly changed = output<string>();\n /** Fires when the input receives focus. */\n readonly focused = output<FocusEvent>();\n /** Fires when the input loses focus. */\n readonly blurred = output<FocusEvent>();\n\n // Internal state\n readonly isOpen = signal(false);\n readonly isFocused = signal(false);\n readonly focusedIndex = signal(-1);\n private readonly _formDisabled = signal(false);\n private justSelected = false;\n\n // ControlValueAccessor callbacks\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly filteredOptions = computed<SelectOption[]>(() => {\n const query = this.value().trim().toLowerCase();\n const allOptions = this.options();\n const max = this.maxResults();\n\n if (query.length < this.minLength()) return [];\n\n const matched = query\n ? allOptions.filter(o => o.label.toLowerCase().includes(query))\n : allOptions;\n\n return matched.slice(0, max);\n });\n\n readonly showList = computed(\n () => this.isOpen() && this.value().length >= this.minLength(),\n );\n\n readonly showEmpty = computed(\n () => this.showList() && this.filteredOptions().length === 0,\n );\n\n /** Empty-list message, falling back to the active locale's translation. */\n readonly resolvedEmptyMessage = computed(\n () => this.emptyMessage() ?? this.i18n.messages().autocomplete.empty,\n );\n\n readonly wrapperClasses = computed(() => ({\n [`ea-autocomplete__wrapper--${this.size()}`]: true,\n 'ea-autocomplete__wrapper--error': this.hasError(),\n 'ea-autocomplete__wrapper--focused': this.isFocused(),\n 'ea-autocomplete__wrapper--disabled': this.isDisabled(),\n }));\n\n // ControlValueAccessor\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n // Handlers\n handleInput(event: Event): void {\n const next = (event.target as HTMLInputElement).value;\n this.value.set(next);\n this.onChange(next);\n this.changed.emit(next);\n this.isOpen.set(true);\n this.focusedIndex.set(-1);\n }\n\n handleFocus(event: FocusEvent): void {\n this.isFocused.set(true);\n this.focused.emit(event);\n if (this.justSelected) {\n this.justSelected = false;\n return;\n }\n if (this.value().length >= this.minLength()) {\n this.isOpen.set(true);\n }\n }\n\n handleBlur(event: FocusEvent): void {\n this.isFocused.set(false);\n this.onTouched();\n this.blurred.emit(event);\n }\n\n handleKeydown(event: KeyboardEvent): void {\n if (this.isDisabled() || this.readonly()) return;\n\n switch (event.key) {\n case 'ArrowDown':\n event.preventDefault();\n if (!this.isOpen()) {\n this.isOpen.set(true);\n } else {\n this.moveFocus(1);\n }\n break;\n case 'ArrowUp':\n event.preventDefault();\n if (this.isOpen()) this.moveFocus(-1);\n break;\n case 'Enter': {\n const opts = this.filteredOptions();\n const idx = this.focusedIndex();\n if (this.isOpen() && idx >= 0 && idx < opts.length && !opts[idx].disabled) {\n event.preventDefault();\n this.selectOption(opts[idx]);\n }\n break;\n }\n case 'Escape':\n if (this.isOpen()) {\n event.preventDefault();\n this.close();\n }\n break;\n }\n }\n\n /** Programmatically selects the given option, updating the value and closing the list. */\n selectOption(option: SelectOption): void {\n if (option.disabled || this.isDisabled()) return;\n this.value.set(option.label);\n this.onChange(option.label);\n this.changed.emit(option.label);\n this.selected.emit(option);\n this.justSelected = true;\n this.close();\n this.inputEl()?.nativeElement.focus();\n }\n\n /** Closes the suggestion list without changing the current value. */\n close(): void {\n this.isOpen.set(false);\n this.focusedIndex.set(-1);\n }\n\n /** Moves keyboard focus to the underlying text input. */\n focus(): void {\n this.inputEl()?.nativeElement.focus();\n }\n\n private moveFocus(delta: number): void {\n const opts = this.filteredOptions();\n if (opts.length === 0) return;\n let idx = this.focusedIndex() + delta;\n while (idx >= 0 && idx < opts.length && opts[idx].disabled) {\n idx += delta;\n }\n if (idx < 0 || idx >= opts.length) return;\n this.focusedIndex.set(idx);\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event): void {\n if (!this.isOpen()) return;\n const host = this.hostEl()?.nativeElement;\n if (host && !host.contains(event.target as Node)) {\n this.close();\n }\n }\n}\n","<div\n #hostEl\n class=\"ea-autocomplete\">\n @if (label()) {\n <label\n class=\"ea-autocomplete__label\"\n [for]=\"id()\"\n [class.ea-autocomplete__label--required]=\"required()\">\n {{ label() }}\n </label>\n }\n\n <div\n class=\"ea-autocomplete__wrapper\"\n [ngClass]=\"wrapperClasses()\">\n <span class=\"ea-autocomplete__prefix\">\n <ng-content select=\"[slot=prefix]\" />\n </span>\n\n <input\n #inputEl\n class=\"ea-autocomplete__input\"\n type=\"text\"\n autocomplete=\"off\"\n role=\"combobox\"\n [id]=\"id()\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"isDisabled()\"\n [readOnly]=\"readonly()\"\n [required]=\"required()\"\n [value]=\"value()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-haspopup]=\"'listbox'\"\n [attr.aria-autocomplete]=\"'list'\"\n [attr.aria-controls]=\"id() + '-listbox'\"\n [attr.aria-activedescendant]=\"\n focusedIndex() >= 0 ? id() + '-option-' + focusedIndex() : null\n \"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (input)=\"handleInput($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\"\n (keydown)=\"handleKeydown($event)\" />\n\n <span class=\"ea-autocomplete__suffix\">\n <ng-content select=\"[slot=suffix]\" />\n </span>\n </div>\n\n @if (showList()) {\n <ul\n class=\"ea-autocomplete__listbox\"\n role=\"listbox\"\n [id]=\"id() + '-listbox'\">\n @for (option of filteredOptions(); track option.value; let i = $index) {\n <li\n class=\"ea-autocomplete__option\"\n role=\"option\"\n [id]=\"id() + '-option-' + i\"\n [class.ea-autocomplete__option--focused]=\"i === focusedIndex()\"\n [class.ea-autocomplete__option--disabled]=\"option.disabled\"\n [attr.aria-selected]=\"i === focusedIndex()\"\n [attr.aria-disabled]=\"option.disabled || null\"\n (mousedown)=\"selectOption(option)\"\n (mouseenter)=\"focusedIndex.set(i)\">\n {{ option.label }}\n </li>\n }\n @if (showEmpty()) {\n <li\n class=\"ea-autocomplete__empty\"\n role=\"presentation\">\n {{ resolvedEmptyMessage() }}\n </li>\n }\n </ul>\n }\n\n @if (showError()) {\n <p\n class=\"ea-autocomplete__message ea-autocomplete__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-autocomplete__message ea-autocomplete__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-camera',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"1.5\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z\" />\n <circle\n cx=\"12\"\n cy=\"13\"\n r=\"4\" />\n </svg>\n `,\n})\nexport class CameraIconComponent extends IconComponentBase {\n static readonly slug = 'camera';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'camera',\n 'photo',\n 'photography',\n 'picture',\n 'snapshot',\n 'appareil photo',\n 'cámara',\n 'foto',\n 'κάμερα',\n 'φωτογραφία',\n 'aparat',\n 'zdjęcie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-minus',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"5\"\n y1=\"12\"\n x2=\"19\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class MinusIconComponent extends IconComponentBase {\n static readonly slug = 'minus';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'minus',\n 'subtract',\n 'remove',\n 'less',\n 'negative',\n 'moins',\n 'menos',\n 'restar',\n 'μείον',\n 'αφαίρεση',\n 'minus',\n 'odejmij',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-plus',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"5\"\n x2=\"12\"\n y2=\"19\" />\n <line\n x1=\"5\"\n y1=\"12\"\n x2=\"19\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class PlusIconComponent extends IconComponentBase {\n static readonly slug = 'plus';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'plus',\n 'add',\n 'new',\n 'create',\n 'positive',\n 'ajouter',\n 'añadir',\n 'agregar',\n 'συν',\n 'προσθήκη',\n 'dodaj',\n 'plus',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-rotate-ccw',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"1 4 1 10 7 10\" />\n <path d=\"M3.51 15a9 9 0 1 0 2.13-9.36L1 10\" />\n </svg>\n `,\n})\nexport class RotateCcwIconComponent extends IconComponentBase {\n static readonly slug = 'rotate-ccw';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'rotate-ccw',\n 'rotate',\n 'ccw',\n 'counterclockwise',\n 'undo',\n 'turn',\n 'tourner',\n 'girar',\n 'περιστροφή',\n 'obróć',\n 'cofnij',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-trash',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"3 6 5 6 21 6\" />\n <path\n d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\" />\n </svg>\n `,\n})\nexport class TrashIconComponent extends IconComponentBase {\n static readonly slug = 'trash';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'trash',\n 'delete',\n 'remove',\n 'bin',\n 'garbage',\n 'waste',\n 'poubelle',\n 'supprimer',\n 'basura',\n 'eliminar',\n 'κάδος',\n 'διαγραφή',\n 'kosz',\n 'usuń',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-upload',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"1.5\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\" />\n <polyline points=\"17 8 12 3 7 8\" />\n <line\n x1=\"12\"\n y1=\"3\"\n x2=\"12\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class UploadIconComponent extends IconComponentBase {\n static readonly slug = 'upload';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'upload',\n 'send',\n 'arrow',\n 'share',\n 'submit',\n 'téléverser',\n 'envoyer',\n 'subir',\n 'cargar',\n 'μεταφόρτωση',\n 'ανέβασμα',\n 'prześlij',\n 'wgraj',\n ];\n}\n","import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\n/** Shape preset of a skeleton placeholder. */\nexport type SkeletonVariant = 'text' | 'circle' | 'rect';\n\n/**\n * Loading placeholder rendered as a pulsing block in one of three shapes.\n * Honours `prefers-reduced-motion` by suppressing the pulse animation when\n * the user has expressed that preference.\n */\n@Component({\n selector: 'ea-skeleton',\n templateUrl: './skeleton.component.html',\n styleUrl: './skeleton.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkeletonComponent {\n readonly variant = input<SkeletonVariant>('text');\n readonly width = input<string | undefined>(undefined);\n readonly height = input<string | undefined>(undefined);\n readonly animated = input<boolean>(true);\n\n readonly hostStyles = computed(() => {\n const styles: Record<string, string> = {};\n if (this.width()) styles['width'] = this.width()!;\n if (this.height()) styles['height'] = this.height()!;\n return styles;\n });\n\n readonly hostClasses = computed(() => ({\n [`ea-skeleton--${this.variant()}`]: true,\n 'ea-skeleton--animated': this.animated(),\n }));\n}\n","<div\n class=\"ea-skeleton\"\n [class.ea-skeleton--text]=\"variant() === 'text'\"\n [class.ea-skeleton--circle]=\"variant() === 'circle'\"\n [class.ea-skeleton--rect]=\"variant() === 'rect'\"\n [class.ea-skeleton--animated]=\"animated()\"\n [style]=\"hostStyles()\"\n aria-hidden=\"true\">\n</div>\n","import {\n Directive,\n ElementRef,\n OnDestroy,\n Renderer2,\n inject,\n input,\n} from '@angular/core';\n\n/** Placement of the tooltip relative to its host element. */\nexport type TooltipPosition = 'top' | 'bottom' | 'left' | 'right';\n\n/**\n * Attaches a positioned tooltip to its host element. Shows on hover and\n * focus, hides on leave/blur or Escape, and wires up `aria-describedby` so\n * the tooltip text is announced to assistive technology.\n */\n@Directive({\n selector: '[eaTooltip]',\n})\nexport class TooltipDirective implements OnDestroy {\n private readonly el = inject(ElementRef);\n private readonly renderer = inject(Renderer2);\n\n readonly eaTooltip = input.required<string>();\n readonly tooltipPosition = input<TooltipPosition>('top');\n\n private tooltipEl: HTMLElement | null = null;\n private readonly tooltipId = `ea-tooltip-${Math.random().toString(36).slice(2, 9)}`;\n\n // Touch devices fire `mouseenter` on tap but never fire `mouseleave` until\n // the user taps elsewhere, leaving hover-driven tooltips latched open. Track\n // hover capability reactively via the MediaQueryList so pointer listeners\n // are attached/detached when the device gains or loses hover (DevTools mobile\n // mode toggling, Bluetooth peripherals connecting, etc.) without a refresh.\n private readonly hoverMql =\n typeof window !== 'undefined' && typeof window.matchMedia === 'function'\n ? window.matchMedia('(hover: hover)')\n : null;\n\n private readonly showHandler = () => this.show();\n private readonly hideHandler = () => this.hide();\n /* `:focus-visible` is supported in every browser we target (Chrome, Firefox,\n Safari, Edge — all stable for years). Feature-detect so non-browser test\n environments (jsdom) fall back to the previous always-on-focus behaviour\n rather than silently never showing. */\n private readonly supportsFocusVisible =\n typeof CSS !== 'undefined' && CSS.supports?.('selector(:focus-visible)') === true;\n /* Show on focus only when the focus is keyboard-driven. Clicking the\n trigger (e.g. a button that opens a menu) returns focus to the trigger\n after the menu closes; without this filter, the tooltip would latch\n open even though the user has moved their cursor away. `:focus-visible`\n is the browser's signal for \"keyboard activation\", which is exactly\n when a tooltip on focus is welcome. */\n private readonly focusHandler = () => {\n if (!this.supportsFocusVisible || this.el.nativeElement.matches(':focus-visible')) {\n this.show();\n }\n };\n private readonly keydownHandler = (event: KeyboardEvent) => {\n if (event.key === 'Escape' && this.tooltipEl) {\n this.hide();\n }\n };\n private readonly hoverChangeHandler = (event: MediaQueryListEvent) =>\n this.syncPointerListeners(event.matches);\n /* Re-runs the clamp so the tooltip stays inside the viewport when the page\n reflows under it (window resize, ancestor scroll, async content pushing\n the trigger around). Coalesced with rAF to keep scroll handling cheap. */\n private rafId: number | null = null;\n private readonly repositionHandler = () => {\n if (!this.tooltipEl || this.rafId !== null) return;\n this.rafId = requestAnimationFrame(() => {\n this.rafId = null;\n if (this.tooltipEl) this.positionTooltip();\n });\n };\n /* Capture-phase scroll listener catches scrolls on any ancestor, not just\n window. Without `capture: true`, only window-level scrolls fire here. */\n private readonly scrollListenerOptions: AddEventListenerOptions = {\n passive: true,\n capture: true,\n };\n /* Watches the trigger for size or position changes that don't fire any\n event (CSS transitions, image loads, sibling layout shifts). */\n private resizeObserver: ResizeObserver | null = null;\n\n constructor() {\n const native = this.el.nativeElement;\n // Focus/blur/keydown always wire up — keyboard users benefit on any device.\n native.addEventListener('focus', this.focusHandler);\n native.addEventListener('blur', this.hideHandler);\n native.addEventListener('keydown', this.keydownHandler);\n\n this.syncPointerListeners(this.hoverMql?.matches ?? true);\n this.hoverMql?.addEventListener('change', this.hoverChangeHandler);\n }\n\n ngOnDestroy(): void {\n const native = this.el.nativeElement;\n native.removeEventListener('mouseenter', this.showHandler);\n native.removeEventListener('mouseleave', this.hideHandler);\n native.removeEventListener('focus', this.focusHandler);\n native.removeEventListener('blur', this.hideHandler);\n native.removeEventListener('keydown', this.keydownHandler);\n this.hoverMql?.removeEventListener('change', this.hoverChangeHandler);\n this.hide();\n }\n\n private syncPointerListeners(canHover: boolean): void {\n const native = this.el.nativeElement;\n // Remove first to keep this idempotent — addEventListener with the same\n // handler is a no-op anyway, but pairing keeps the bookkeeping obvious.\n native.removeEventListener('mouseenter', this.showHandler);\n native.removeEventListener('mouseleave', this.hideHandler);\n if (canHover) {\n native.addEventListener('mouseenter', this.showHandler);\n native.addEventListener('mouseleave', this.hideHandler);\n } else {\n this.hide();\n }\n }\n\n private show(): void {\n if (this.tooltipEl || !this.eaTooltip()) return;\n\n this.tooltipEl = this.renderer.createElement('div');\n this.renderer.addClass(this.tooltipEl, 'ea-tooltip');\n this.renderer.addClass(this.tooltipEl, `ea-tooltip--${this.tooltipPosition()}`);\n this.renderer.setAttribute(this.tooltipEl, 'role', 'tooltip');\n this.renderer.setAttribute(this.tooltipEl, 'id', this.tooltipId);\n this.tooltipEl!.textContent = this.eaTooltip();\n\n this.renderer.appendChild(document.body, this.tooltipEl);\n this.appendDescribedBy();\n this.positionTooltip();\n this.attachRepositionListeners();\n }\n\n private hide(): void {\n this.detachRepositionListeners();\n if (this.rafId !== null) {\n cancelAnimationFrame(this.rafId);\n this.rafId = null;\n }\n if (this.tooltipEl) {\n this.tooltipEl.remove();\n this.tooltipEl = null;\n this.removeDescribedBy();\n }\n }\n\n private attachRepositionListeners(): void {\n /* Guard against server-side rendering: ngOnDestroy can fire during SSR\n teardown and reach here even though the tooltip never actually shows. */\n if (typeof window === 'undefined') return;\n window.addEventListener('resize', this.repositionHandler);\n /* `capture: true` so we catch scrolls on any ancestor (modal body, sidebar,\n overflow:auto wrappers), not just the window. */\n window.addEventListener('scroll', this.repositionHandler, this.scrollListenerOptions);\n if (typeof ResizeObserver !== 'undefined') {\n this.resizeObserver = new ResizeObserver(this.repositionHandler);\n this.resizeObserver.observe(this.el.nativeElement);\n /* Body observer catches layout shifts that don't move the trigger\n (sibling content loads pushing the viewport's bottom around). */\n this.resizeObserver.observe(document.body);\n }\n }\n\n private detachRepositionListeners(): void {\n if (typeof window === 'undefined') return;\n window.removeEventListener('resize', this.repositionHandler);\n window.removeEventListener(\n 'scroll',\n this.repositionHandler,\n this.scrollListenerOptions,\n );\n this.resizeObserver?.disconnect();\n this.resizeObserver = null;\n }\n\n private appendDescribedBy(): void {\n const native = this.el.nativeElement;\n const existing = (native.getAttribute('aria-describedby') ?? '').trim();\n const tokens = existing ? existing.split(/\\s+/) : [];\n if (!tokens.includes(this.tooltipId)) tokens.push(this.tooltipId);\n this.renderer.setAttribute(native, 'aria-describedby', tokens.join(' '));\n }\n\n private removeDescribedBy(): void {\n const native = this.el.nativeElement;\n const existing = (native.getAttribute('aria-describedby') ?? '').trim();\n const tokens = existing.split(/\\s+/).filter((t: string) => t && t !== this.tooltipId);\n if (tokens.length) {\n this.renderer.setAttribute(native, 'aria-describedby', tokens.join(' '));\n } else {\n this.renderer.removeAttribute(native, 'aria-describedby');\n }\n }\n\n private positionTooltip(): void {\n if (!this.tooltipEl) return;\n\n const hostRect = this.el.nativeElement.getBoundingClientRect();\n\n /* Hide if the trigger itself has scrolled behind a sticky/fixed ancestor\n (typical app-header pattern) to keep the tooltip from tracking the\n trigger's coordinates into the header chrome. `elementFromPoint`\n ignores the tooltip (it sets `pointer-events: none`), so the hit-test\n reflects what the user actually sees at the trigger's centre. Also\n covers fully off-screen triggers without a separate viewport check.\n Feature-detected so jsdom (no `elementFromPoint`) and SSR skip the\n check rather than erroring. */\n const canHitTest = typeof document?.elementFromPoint === 'function';\n if (canHitTest) {\n const cx = hostRect.left + hostRect.width / 2;\n const cy = hostRect.top + hostRect.height / 2;\n const topmost = document.elementFromPoint(cx, cy);\n if (!topmost || !this.el.nativeElement.contains(topmost)) {\n this.hide();\n return;\n }\n }\n\n const tooltipRect = this.tooltipEl.getBoundingClientRect();\n const gap = 8;\n /* Keep at least this much breathing room between the tooltip and the\n viewport edge so the rounded corner and shadow don't kiss the chrome. */\n const edgePadding = 8;\n\n let top: number;\n let left: number;\n\n switch (this.tooltipPosition()) {\n case 'top':\n top = hostRect.top - tooltipRect.height - gap;\n left = hostRect.left + (hostRect.width - tooltipRect.width) / 2;\n break;\n case 'bottom':\n top = hostRect.bottom + gap;\n left = hostRect.left + (hostRect.width - tooltipRect.width) / 2;\n break;\n case 'left':\n top = hostRect.top + (hostRect.height - tooltipRect.height) / 2;\n left = hostRect.left - tooltipRect.width - gap;\n break;\n case 'right':\n top = hostRect.top + (hostRect.height - tooltipRect.height) / 2;\n left = hostRect.right + gap;\n break;\n }\n\n /* Clamp to the viewport so tooltips on near-edge triggers shift inward\n rather than getting clipped by the chrome. The position arrow (the small\n caret) stays centered on the host because the clamp only moves the\n bubble; we don't try to flip placement here, just nudge along the\n cross-axis. */\n const viewportWidth = document.documentElement.clientWidth;\n const viewportHeight = document.documentElement.clientHeight;\n left = Math.max(\n edgePadding,\n Math.min(left, viewportWidth - tooltipRect.width - edgePadding),\n );\n top = Math.max(\n edgePadding,\n Math.min(top, viewportHeight - tooltipRect.height - edgePadding),\n );\n\n /* Hide if the calculated bubble would render on top of a sticky/fixed\n overlay (typically the app header). Catches the case where the trigger\n is visible just below the header but a `position: top` tooltip would\n protrude into the header chrome — the previous trigger-only hit-test\n can't see this because the trigger itself is still on top. Walks the\n ancestor chain of whatever the user would see at the bubble's centre,\n looking for the first positioned (sticky / fixed) ancestor. */\n if (canHitTest) {\n const tcx = left + tooltipRect.width / 2;\n const tcy = top + tooltipRect.height / 2;\n const underBubble = document.elementFromPoint(tcx, tcy);\n if (underBubble && !this.el.nativeElement.contains(underBubble)) {\n let cursor: Element | null = underBubble;\n while (cursor && cursor !== document.body) {\n const pos = getComputedStyle(cursor).position;\n if (pos === 'fixed' || pos === 'sticky') {\n this.hide();\n return;\n }\n cursor = cursor.parentElement;\n }\n }\n }\n\n this.renderer.setStyle(this.tooltipEl, 'top', `${top + window.scrollY}px`);\n this.renderer.setStyle(this.tooltipEl, 'left', `${left + window.scrollX}px`);\n }\n}\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Injector,\n OnDestroy,\n ViewEncapsulation,\n afterNextRender,\n computed,\n effect,\n inject,\n input,\n output,\n signal,\n untracked,\n viewChild,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { CameraIconComponent } from '../icons/camera.component';\nimport { MinusIconComponent } from '../icons/minus.component';\nimport { PlusIconComponent } from '../icons/plus.component';\nimport { RotateCcwIconComponent } from '../icons/rotate-ccw.component';\nimport { TrashIconComponent } from '../icons/trash.component';\nimport { UploadIconComponent } from '../icons/upload.component';\nimport { SkeletonComponent } from '../skeleton/skeleton.component';\nimport { TooltipDirective } from '../tooltip/tooltip.directive';\n\n/** Crop mask shape applied to the exported image. */\nexport type AvatarEditorShape = 'circle' | 'square';\n\n/** Result of a successful crop, providing both a `Blob` and a data URL. */\nexport interface AvatarEditorCropEvent {\n blob: Blob;\n dataUrl: string;\n}\n\n/** Persisted pan/zoom state, suitable for restoring an in-progress edit. */\nexport interface AvatarEditorCropState {\n zoom: number;\n offsetX: number;\n offsetY: number;\n}\n\n/**\n * Canvas-based image editor for cropping avatars. Supports drag-and-drop\n * upload, mouse/touch panning, zoom via slider or scroll wheel, and exports\n * the cropped image as either a `Blob` or a data URL.\n */\n@Component({\n selector: 'ea-avatar-editor',\n imports: [\n CameraIconComponent,\n MinusIconComponent,\n NgClass,\n PlusIconComponent,\n RotateCcwIconComponent,\n SkeletonComponent,\n TooltipDirective,\n TrashIconComponent,\n UploadIconComponent,\n ],\n templateUrl: './avatar-editor.component.html',\n styleUrl: './avatar-editor.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class AvatarEditorComponent implements OnDestroy {\n readonly canvasEl = viewChild<ElementRef<HTMLCanvasElement>>('canvasEl');\n readonly fileInputEl = viewChild<ElementRef<HTMLInputElement>>('fileInputEl');\n protected readonly i18n = inject(EagamiI18nService);\n\n readonly shape = input<AvatarEditorShape>('circle');\n readonly canvasSize = input<number>(200);\n readonly currentSrc = input<string | undefined>(undefined);\n readonly loading = input<boolean>(false);\n readonly accept = input<string>('image/*');\n readonly maxFileSize = input<number>(5 * 1024 * 1024); // 5 MB\n readonly minZoom = input<number>(1);\n readonly maxZoom = input<number>(3);\n readonly exportQuality = input<number>(0.92);\n readonly exportType = input<string>('image/png');\n\n readonly cropState = input<AvatarEditorCropState | null | undefined>();\n\n /** Fires when the user finalises a crop via {@link exportCrop}; payload contains both `Blob` and data URL. */\n readonly cropped = output<AvatarEditorCropEvent>();\n /** Fires when a file is chosen from disk or dropped onto the editor. */\n readonly fileSelected = output<File>();\n /** Fires when the current image is cleared via the remove control. */\n readonly removed = output<void>();\n /** Fires with a human-readable message when validation fails (wrong type, oversized file, etc.). */\n readonly errored = output<string>();\n /** Fires whenever the user pans or zooms the image; useful for persisting in-progress crops. */\n readonly cropStateChanged = output<AvatarEditorCropState>();\n\n readonly hasImage = signal(false);\n readonly isDragOver = signal(false);\n readonly isAtOriginal = signal(false);\n readonly isLoading = computed(() => this.isFetching() || this.loading());\n readonly zoom = signal(1);\n readonly canRevert = computed(() => !this.isAtOriginal() && this.originalCaptured);\n /** True when the visible crop is darker than mid-grey; drives the `--on-light` class on the overlay so the \"Change photo\" affordance stays readable. */\n readonly isImageDark = signal(true);\n\n private image: HTMLImageElement | null = null;\n private offsetX = 0;\n private offsetY = 0;\n private dragStartX = 0;\n private dragStartY = 0;\n private isDragging = false;\n private hasDragged = false;\n private initialOffsetX = 0;\n private initialOffsetY = 0;\n private _suppressCropStateEmit = false;\n private readonly isFetching = signal(false);\n private originalCaptured = false;\n private originalImage: HTMLImageElement | null = null;\n private originalCropState: { zoom: number; offsetX: number; offsetY: number } | null =\n null;\n\n readonly hostClasses = computed(() => ({\n [`ea-avatar-editor--${this.shape()}`]: true,\n 'ea-avatar-editor--has-image': this.hasImage(),\n 'ea-avatar-editor--drag-over': this.isDragOver(),\n }));\n\n private readonly injector = inject(Injector);\n private readonly boundWheel = (e: WheelEvent) => this.onWheel(e);\n\n constructor() {\n effect(() => {\n const src = this.currentSrc();\n if (!src) {\n this.isFetching.set(false);\n if (!this.originalCaptured) {\n this.originalCaptured = true;\n this.originalImage = null;\n this.originalCropState = null;\n this.isAtOriginal.set(true);\n }\n return;\n }\n this.originalCaptured = false;\n this.originalImage = null;\n this.originalCropState = null;\n this.loadFromUrl(src, untracked(() => this.cropState()) ?? null, true);\n });\n }\n\n ngOnDestroy(): void {\n const canvas = this.canvasEl()?.nativeElement;\n canvas?.removeEventListener('wheel', this.boundWheel);\n }\n\n onDragOver(event: DragEvent): void {\n event.preventDefault();\n event.stopPropagation();\n this.isDragOver.set(true);\n }\n\n onDragLeave(event: DragEvent): void {\n event.preventDefault();\n event.stopPropagation();\n this.isDragOver.set(false);\n }\n\n onDrop(event: DragEvent): void {\n event.preventDefault();\n event.stopPropagation();\n this.isDragOver.set(false);\n\n const file = event.dataTransfer?.files[0];\n if (file) this.loadFile(file);\n }\n\n onFileSelected(event: Event): void {\n const input = event.target as HTMLInputElement;\n const file = input.files?.[0];\n if (file) this.loadFile(file);\n input.value = '';\n }\n\n /** Opens the native file picker dialog. */\n openFilePicker(): void {\n this.fileInputEl()?.nativeElement.click();\n }\n\n onMouseDown(event: MouseEvent): void {\n if (!this.hasImage()) return;\n event.preventDefault();\n this.isDragging = true;\n this.hasDragged = false;\n this.dragStartX = event.clientX;\n this.dragStartY = event.clientY;\n this.initialOffsetX = this.offsetX;\n this.initialOffsetY = this.offsetY;\n\n document.addEventListener('mousemove', this.onMouseMoveBound);\n document.addEventListener('mouseup', this.onMouseUpBound);\n }\n\n onTouchStart(event: TouchEvent): void {\n if (!this.hasImage() || event.touches.length !== 1) return;\n const touch = event.touches[0];\n this.isDragging = true;\n this.hasDragged = false;\n this.dragStartX = touch.clientX;\n this.dragStartY = touch.clientY;\n this.initialOffsetX = this.offsetX;\n this.initialOffsetY = this.offsetY;\n\n document.addEventListener('touchmove', this.onTouchMoveBound, { passive: false });\n document.addEventListener('touchend', this.onTouchEndBound);\n }\n\n private readonly onMouseMoveBound = (e: MouseEvent) => this.onMouseMove(e);\n private readonly onMouseUpBound = () => this.onMouseUp();\n private readonly onTouchMoveBound = (e: TouchEvent) => this.onTouchMove(e);\n private readonly onTouchEndBound = () => this.onTouchEnd();\n\n private onMouseMove(event: MouseEvent): void {\n if (!this.isDragging) return;\n const dx = event.clientX - this.dragStartX;\n const dy = event.clientY - this.dragStartY;\n if (Math.abs(dx) > 3 || Math.abs(dy) > 3) {\n this.hasDragged = true;\n this.isAtOriginal.set(false);\n }\n this.offsetX = this.initialOffsetX + dx;\n this.offsetY = this.initialOffsetY + dy;\n this.clampOffset();\n this.draw();\n this.emitCropStateChange();\n }\n\n private onMouseUp(): void {\n if (!this.hasDragged) this.openFilePicker();\n this.isDragging = false;\n document.removeEventListener('mousemove', this.onMouseMoveBound);\n document.removeEventListener('mouseup', this.onMouseUpBound);\n }\n\n private onTouchMove(event: TouchEvent): void {\n if (!this.isDragging || event.touches.length !== 1) return;\n event.preventDefault();\n const touch = event.touches[0];\n const dx = touch.clientX - this.dragStartX;\n const dy = touch.clientY - this.dragStartY;\n if (Math.abs(dx) > 3 || Math.abs(dy) > 3) {\n this.hasDragged = true;\n this.isAtOriginal.set(false);\n }\n this.offsetX = this.initialOffsetX + dx;\n this.offsetY = this.initialOffsetY + dy;\n this.clampOffset();\n this.draw();\n this.emitCropStateChange();\n }\n\n private onTouchEnd(): void {\n if (!this.hasDragged) this.openFilePicker();\n this.isDragging = false;\n document.removeEventListener('touchmove', this.onTouchMoveBound);\n document.removeEventListener('touchend', this.onTouchEndBound);\n }\n\n private onWheel(event: WheelEvent): void {\n if (!this.hasImage()) return;\n event.preventDefault();\n const delta = event.deltaY > 0 ? -0.1 : 0.1;\n this.setZoom(this.zoom() + delta);\n }\n\n onCanvasKeydown(event: KeyboardEvent): void {\n if (!this.hasImage() || this.isLoading()) return;\n const step = event.shiftKey ? 20 : 5;\n let handled = false;\n\n switch (event.key) {\n case 'ArrowLeft':\n this.offsetX += step;\n handled = true;\n break;\n case 'ArrowRight':\n this.offsetX -= step;\n handled = true;\n break;\n case 'ArrowUp':\n this.offsetY += step;\n handled = true;\n break;\n case 'ArrowDown':\n this.offsetY -= step;\n handled = true;\n break;\n case '+':\n case '=':\n this.setZoom(this.zoom() + 0.1);\n event.preventDefault();\n return;\n case '-':\n case '_':\n this.setZoom(this.zoom() - 0.1);\n event.preventDefault();\n return;\n }\n\n if (handled) {\n event.preventDefault();\n this.isAtOriginal.set(false);\n this.clampOffset();\n this.draw();\n this.emitCropStateChange();\n }\n }\n\n /** Sets the zoom level, clamped to the configured `minZoom`/`maxZoom` range. */\n setZoom(value: number): void {\n this.isAtOriginal.set(false);\n const clamped = Math.min(this.maxZoom(), Math.max(this.minZoom(), value));\n this.zoom.set(Math.round(clamped * 100) / 100);\n this.clampOffset();\n this.draw();\n this.emitCropStateChange();\n }\n\n onZoomInput(event: Event): void {\n const value = parseFloat((event.target as HTMLInputElement).value);\n this.setZoom(value);\n }\n\n /** Clears the loaded image and resets pan/zoom to defaults. */\n removeImage(): void {\n this.image = null;\n this.hasImage.set(false);\n this.isFetching.set(false);\n this.zoom.set(1);\n this.offsetX = 0;\n this.offsetY = 0;\n this.clearCanvas();\n this.isAtOriginal.set(this.originalCaptured && !this.originalImage);\n this.removed.emit();\n }\n\n /** Marks the current image and crop state as the baseline for {@link revertImage}. */\n captureOriginal(): void {\n this.originalCaptured = true;\n this.originalImage = this.image;\n this.originalCropState = this.image\n ? { zoom: this.zoom(), offsetX: this.offsetX, offsetY: this.offsetY }\n : null;\n this.isAtOriginal.set(true);\n }\n\n /** Restores the image and crop state captured by the most recent {@link captureOriginal}. */\n revertImage(): void {\n if (!this.originalCaptured) return;\n\n if (this.originalImage) {\n this.image = this.originalImage;\n this.hasImage.set(true);\n\n const crop = this.originalCropState;\n if (crop) {\n this.zoom.set(Math.min(this.maxZoom(), Math.max(this.minZoom(), crop.zoom)));\n this.offsetX = crop.offsetX;\n this.offsetY = crop.offsetY;\n this.clampOffset();\n } else {\n this.zoom.set(1);\n this.centerImage();\n }\n\n this.isAtOriginal.set(true);\n this.scheduleDrawAfterRender();\n } else {\n this.image = null;\n this.hasImage.set(false);\n this.zoom.set(1);\n this.offsetX = 0;\n this.offsetY = 0;\n this.clearCanvas();\n this.isAtOriginal.set(true);\n }\n }\n\n /** Renders the current crop to an offscreen canvas, emits `cropped`, and resolves with the resulting `Blob`. */\n exportCrop(): Promise<Blob> {\n return new Promise((resolve, reject) => {\n if (!this.image) {\n reject(new Error('No image loaded'));\n return;\n }\n\n const size = this.canvasSize();\n const offscreen = document.createElement('canvas');\n offscreen.width = size;\n offscreen.height = size;\n const ctx = offscreen.getContext('2d')!;\n\n if (this.shape() === 'circle') {\n ctx.beginPath();\n ctx.arc(size / 2, size / 2, size / 2, 0, Math.PI * 2);\n ctx.closePath();\n ctx.clip();\n }\n\n const { drawX, drawY, drawW, drawH } = this.getDrawParams();\n ctx.drawImage(this.image, drawX, drawY, drawW, drawH);\n\n offscreen.toBlob(\n blob => {\n if (blob) {\n const reader = new FileReader();\n reader.onloadend = () => {\n this.cropped.emit({ blob, dataUrl: reader.result as string });\n resolve(blob);\n };\n reader.readAsDataURL(blob);\n } else {\n reject(new Error('Canvas export failed'));\n }\n },\n this.exportType(),\n this.exportQuality(),\n );\n });\n }\n\n private loadFromUrl(\n url: string,\n cropState: AvatarEditorCropState | null = null,\n suppressEmit = false,\n ): void {\n this.isFetching.set(true);\n this._suppressCropStateEmit = suppressEmit;\n const img = new Image();\n img.crossOrigin = 'anonymous';\n img.onerror = () => {\n this.isFetching.set(false);\n this._suppressCropStateEmit = false;\n };\n img.onload = () => {\n this.image = img;\n this.hasImage.set(true);\n if (cropState) {\n this.zoom.set(Math.min(this.maxZoom(), Math.max(this.minZoom(), cropState.zoom)));\n this.offsetX = cropState.offsetX;\n this.offsetY = cropState.offsetY;\n this.clampOffset();\n } else {\n this.zoom.set(1);\n this.centerImage();\n }\n if (suppressEmit) {\n this.originalCaptured = true;\n this.originalImage = img;\n this.originalCropState = cropState\n ? { ...cropState }\n : { zoom: this.zoom(), offsetX: this.offsetX, offsetY: this.offsetY };\n this.isAtOriginal.set(true);\n }\n this.scheduleDrawAfterRender();\n };\n img.src = url;\n }\n\n private loadFile(file: File): void {\n if (!file.type.startsWith('image/')) {\n this.errored.emit('File must be an image');\n return;\n }\n if (file.size > this.maxFileSize()) {\n const maxMb = Math.round(this.maxFileSize() / (1024 * 1024));\n this.errored.emit(`File exceeds ${maxMb} MB limit`);\n return;\n }\n\n this.isAtOriginal.set(false);\n this.fileSelected.emit(file);\n\n const reader = new FileReader();\n reader.onload = e => {\n const img = new Image();\n img.onload = () => {\n this.image = img;\n this.hasImage.set(true);\n this.zoom.set(1);\n this.centerImage();\n this.scheduleDrawAfterRender();\n };\n img.src = e.target?.result as string;\n };\n reader.readAsDataURL(file);\n }\n\n private scheduleDrawAfterRender(): void {\n afterNextRender(\n () => {\n this.draw();\n this.isFetching.set(false);\n this._suppressCropStateEmit = false;\n const canvas = this.canvasEl()?.nativeElement;\n canvas?.removeEventListener('wheel', this.boundWheel);\n canvas?.addEventListener('wheel', this.boundWheel, { passive: false });\n },\n { injector: this.injector },\n );\n }\n\n private centerImage(): void {\n if (!this.image) return;\n const size = this.canvasSize();\n const scale = this.getScale();\n const drawW = this.image.width * scale;\n const drawH = this.image.height * scale;\n this.offsetX = (size - drawW) / 2;\n this.offsetY = (size - drawH) / 2;\n }\n\n private getScale(): number {\n if (!this.image) return 1;\n const size = this.canvasSize();\n const baseScale = Math.max(size / this.image.width, size / this.image.height);\n return baseScale * this.zoom();\n }\n\n private getDrawParams(): {\n drawX: number;\n drawY: number;\n drawW: number;\n drawH: number;\n } {\n if (!this.image) return { drawX: 0, drawY: 0, drawW: 0, drawH: 0 };\n const scale = this.getScale();\n return {\n drawX: this.offsetX,\n drawY: this.offsetY,\n drawW: this.image.width * scale,\n drawH: this.image.height * scale,\n };\n }\n\n private clampOffset(): void {\n if (!this.image) return;\n const size = this.canvasSize();\n const { drawW, drawH } = this.getDrawParams();\n\n this.offsetX = Math.min(0, Math.max(size - drawW, this.offsetX));\n this.offsetY = Math.min(0, Math.max(size - drawH, this.offsetY));\n }\n\n private draw(): void {\n const canvas = this.canvasEl()?.nativeElement;\n if (!canvas || !this.image) return;\n\n const ctx = canvas.getContext('2d')!;\n const size = this.canvasSize();\n canvas.width = size;\n canvas.height = size;\n\n ctx.clearRect(0, 0, size, size);\n\n const { drawX, drawY, drawW, drawH } = this.getDrawParams();\n ctx.drawImage(this.image, drawX, drawY, drawW, drawH);\n\n this.updateImageDarkness(ctx, size);\n\n // Draw overlay mask\n ctx.fillStyle = 'rgba(0, 0, 0, 0.5)';\n ctx.fillRect(0, 0, size, size);\n\n ctx.globalCompositeOperation = 'destination-out';\n if (this.shape() === 'circle') {\n ctx.beginPath();\n ctx.arc(size / 2, size / 2, size / 2, 0, Math.PI * 2);\n ctx.fill();\n } else {\n ctx.fillRect(0, 0, size, size);\n }\n\n ctx.globalCompositeOperation = 'destination-over';\n ctx.drawImage(this.image, drawX, drawY, drawW, drawH);\n ctx.globalCompositeOperation = 'source-over';\n }\n\n /**\n * Samples the visible crop region and stores whether it's darker than\n * mid-grey, so the hover overlay can flip its label and icon between\n * white (on dark photos) and black (on light photos).\n *\n * Restricts sampling to the inscribed circle for circle crops to ignore\n * the soon-to-be-masked corners. Uses Rec. 601 perceptual luminance\n * weights; transparent pixels and CORS-tainted canvases default to a\n * \"dark\" assumption (white ink).\n */\n private updateImageDarkness(ctx: CanvasRenderingContext2D, size: number): void {\n let data: Uint8ClampedArray;\n try {\n data = ctx.getImageData(0, 0, size, size).data;\n } catch {\n this.isImageDark.set(true);\n return;\n }\n\n const isCircle = this.shape() === 'circle';\n const cx = size / 2;\n const cy = size / 2;\n const radiusSq = cx * cx;\n\n let sum = 0;\n let count = 0;\n for (let y = 0; y < size; y++) {\n for (let x = 0; x < size; x++) {\n if (isCircle) {\n const dx = x - cx;\n const dy = y - cy;\n if (dx * dx + dy * dy > radiusSq) continue;\n }\n const i = (y * size + x) * 4;\n if (data[i + 3] === 0) continue;\n sum += 0.299 * data[i] + 0.587 * data[i + 1] + 0.114 * data[i + 2];\n count++;\n }\n }\n\n // Threshold biased above mid-grey (128) so images on the border between\n // light and dark still get the cleaner white ink; only clearly-bright\n // photos flip to black.\n if (count > 0) this.isImageDark.set(sum / count < 170);\n }\n\n private emitCropStateChange(): void {\n if (this._suppressCropStateEmit) return;\n this.cropStateChanged.emit({\n zoom: this.zoom(),\n offsetX: this.offsetX,\n offsetY: this.offsetY,\n });\n }\n\n private clearCanvas(): void {\n const canvas = this.canvasEl()?.nativeElement;\n if (!canvas) return;\n const ctx = canvas.getContext('2d')!;\n ctx.clearRect(0, 0, canvas.width, canvas.height);\n }\n}\n","<div\n class=\"ea-avatar-editor\"\n [ngClass]=\"hostClasses()\">\n <input\n #fileInputEl\n type=\"file\"\n class=\"ea-avatar-editor__file-input\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.upload\"\n [accept]=\"accept()\"\n (change)=\"onFileSelected($event)\" />\n\n @if (!hasImage() && !isLoading()) {\n <button\n type=\"button\"\n class=\"ea-avatar-editor__dropzone\"\n [style.width.px]=\"canvasSize()\"\n [style.height.px]=\"canvasSize()\"\n (click)=\"openFilePicker()\"\n (dragover)=\"onDragOver($event)\"\n (dragleave)=\"onDragLeave($event)\"\n (drop)=\"onDrop($event)\">\n <ea-icon-upload class=\"ea-avatar-editor__upload-icon\" />\n <span class=\"ea-avatar-editor__dropzone-text\">\n {{ i18n.messages().avatarEditor.dropzone }}\n </span>\n </button>\n }\n\n @if (hasImage() || isLoading()) {\n <div\n class=\"ea-avatar-editor__canvas-wrapper\"\n [style.width.px]=\"canvasSize()\"\n [style.height.px]=\"canvasSize()\"\n (dragover)=\"onDragOver($event)\"\n (dragleave)=\"onDragLeave($event)\"\n (drop)=\"onDrop($event)\">\n @if (isLoading()) {\n <ea-skeleton\n [variant]=\"shape() === 'circle' ? 'circle' : 'rect'\"\n [width]=\"canvasSize() + 'px'\"\n [height]=\"canvasSize() + 'px'\" />\n }\n\n @if (hasImage()) {\n <canvas\n #canvasEl\n class=\"ea-avatar-editor__canvas\"\n role=\"img\"\n tabindex=\"0\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.canvas\"\n [style.display]=\"isLoading() ? 'none' : 'block'\"\n [width]=\"canvasSize()\"\n [height]=\"canvasSize()\"\n (mousedown)=\"onMouseDown($event)\"\n (touchstart)=\"onTouchStart($event)\"\n (keydown)=\"onCanvasKeydown($event)\"></canvas>\n\n @if (!isLoading()) {\n <div\n class=\"ea-avatar-editor__canvas-overlay\"\n [class.ea-avatar-editor__canvas-overlay--on-light]=\"!isImageDark()\">\n <ea-icon-camera class=\"ea-avatar-editor__overlay-icon\" />\n <span>{{ i18n.messages().avatarEditor.change }}</span>\n </div>\n }\n }\n </div>\n }\n\n <div class=\"ea-avatar-editor__controls\">\n <button\n type=\"button\"\n class=\"ea-avatar-editor__icon-btn\"\n [eaTooltip]=\"i18n.messages().avatarEditor.revert\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.revert\"\n [disabled]=\"!canRevert() || isLoading()\"\n (click)=\"revertImage()\">\n <ea-icon-rotate-ccw />\n </button>\n\n <button\n type=\"button\"\n class=\"ea-avatar-editor__icon-btn\"\n [eaTooltip]=\"i18n.messages().avatarEditor.zoomOut\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.zoomOut\"\n [disabled]=\"!hasImage() || isLoading() || zoom() <= minZoom()\"\n (click)=\"setZoom(zoom() - 0.1)\">\n <ea-icon-minus />\n </button>\n\n <input\n type=\"range\"\n class=\"ea-avatar-editor__zoom-slider\"\n [min]=\"minZoom()\"\n [max]=\"maxZoom()\"\n step=\"0.01\"\n [value]=\"zoom()\"\n [disabled]=\"!hasImage() || isLoading()\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.zoom\"\n (input)=\"onZoomInput($event)\" />\n\n <button\n type=\"button\"\n class=\"ea-avatar-editor__icon-btn\"\n [eaTooltip]=\"i18n.messages().avatarEditor.zoomIn\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.zoomIn\"\n [disabled]=\"!hasImage() || isLoading() || zoom() >= maxZoom()\"\n (click)=\"setZoom(zoom() + 0.1)\">\n <ea-icon-plus />\n </button>\n\n <button\n type=\"button\"\n class=\"ea-avatar-editor__icon-btn ea-avatar-editor__icon-btn--danger\"\n [eaTooltip]=\"i18n.messages().avatarEditor.remove\"\n [attr.aria-label]=\"i18n.messages().avatarEditor.remove\"\n [disabled]=\"!hasImage() || isLoading()\"\n (click)=\"removeImage()\">\n <ea-icon-trash />\n </button>\n </div>\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-user',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2\" />\n <circle\n cx=\"12\"\n cy=\"7\"\n r=\"4\" />\n </svg>\n `,\n})\nexport class UserIconComponent extends IconComponentBase {\n static readonly slug = 'user';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'user',\n 'person',\n 'profile',\n 'account',\n 'avatar',\n 'utilisateur',\n 'personne',\n 'usuario',\n 'persona',\n 'χρήστης',\n 'άτομο',\n 'użytkownik',\n 'osoba',\n ];\n}\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\n\nimport { UserIconComponent } from '../icons/user.component';\n\n/** Diameter (or side length) preset for an avatar. */\nexport type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n/** Outline of the avatar — round or rounded-square. */\nexport type AvatarShape = 'circle' | 'square';\n\n/**\n * Compact image used to represent a user or entity. Falls back to initials\n * when no `src` is provided, then to a generic user icon when neither image\n * nor initials are available.\n */\n@Component({\n selector: 'ea-avatar',\n imports: [NgClass, UserIconComponent],\n templateUrl: './avatar.component.html',\n styleUrl: './avatar.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { style: 'display: inline-block; line-height: 0;' },\n})\nexport class AvatarComponent {\n readonly src = input<string | undefined>(undefined);\n readonly alt = input<string>('');\n readonly initials = input<string | undefined>(undefined);\n readonly size = input<AvatarSize>('md');\n readonly shape = input<AvatarShape>('circle');\n\n readonly hostClasses = computed(() => ({\n [`ea-avatar--${this.size()}`]: true,\n [`ea-avatar--${this.shape()}`]: true,\n }));\n\n readonly showImage = computed(() => !!this.src());\n readonly showInitials = computed(() => !this.src() && !!this.initials());\n readonly showFallback = computed(() => !this.src() && !this.initials());\n\n handleImageError(event: Event): void {\n (event.target as HTMLImageElement).style.display = 'none';\n }\n}\n","<div\n class=\"ea-avatar\"\n [ngClass]=\"hostClasses()\"\n [attr.aria-label]=\"alt() || initials() || null\"\n role=\"img\">\n @if (showImage()) {\n <img\n class=\"ea-avatar__image\"\n [src]=\"src()\"\n [alt]=\"alt()\"\n (error)=\"handleImageError($event)\" />\n }\n @if (showInitials()) {\n <span class=\"ea-avatar__initials\">{{ initials() }}</span>\n }\n @if (showFallback()) {\n <ea-icon-user class=\"ea-avatar__fallback\" />\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\n\n/** Semantic colour scheme of a badge. */\nexport type BadgeVariant = 'default' | 'success' | 'warning' | 'error' | 'info';\n/** Visual size of a badge. */\nexport type BadgeSize = 'sm' | 'md' | 'lg';\n\n/**\n * Compact pill-shaped indicator used to communicate status, counts, or labels\n * inline with surrounding content.\n */\n@Component({\n selector: 'ea-badge',\n imports: [NgClass],\n templateUrl: './badge.component.html',\n styleUrl: './badge.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class BadgeComponent {\n readonly variant = input<BadgeVariant>('default');\n readonly size = input<BadgeSize>('md');\n\n readonly hostClasses = computed(() => ({\n [`ea-badge--${this.variant()}`]: true,\n [`ea-badge--${this.size()}`]: true,\n }));\n}\n","<span\n class=\"ea-badge\"\n [ngClass]=\"hostClasses()\">\n <ng-content />\n</span>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-chevron-right',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"9 18 15 12 9 6\" />\n </svg>\n `,\n})\nexport class ChevronRightIconComponent extends IconComponentBase {\n static readonly slug = 'chevron-right';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'chevron-right',\n 'chevron',\n 'right',\n 'arrow',\n 'forward',\n 'next',\n 'droite',\n 'derecha',\n 'δεξιά',\n 'prawo',\n ];\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n inject,\n input,\n output,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { ChevronRightIconComponent } from '../icons/chevron-right.component';\n\n/** Visual style of the separator rendered between breadcrumb items. */\nexport type BreadcrumbsSeparator = 'chevron' | 'slash';\n\n/** Single entry in a breadcrumb trail. */\nexport interface BreadcrumbItem {\n label: string;\n href?: string;\n disabled?: boolean;\n}\n\n/** Payload emitted when a breadcrumb is activated. */\nexport interface BreadcrumbClickEvent {\n item: BreadcrumbItem;\n index: number;\n event: MouseEvent;\n}\n\n/**\n * Navigation trail that shows the user's location within a hierarchy. Items\n * with an `href` render as links, others render as buttons; the final item is\n * always treated as the current page and is non-interactive.\n */\n@Component({\n selector: 'ea-breadcrumbs',\n imports: [ChevronRightIconComponent],\n templateUrl: './breadcrumbs.component.html',\n styleUrl: './breadcrumbs.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class BreadcrumbsComponent {\n private readonly i18n = inject(EagamiI18nService);\n\n readonly items = input<BreadcrumbItem[]>([]);\n readonly separator = input<BreadcrumbsSeparator>('chevron');\n readonly ariaLabel = input<string | undefined>(undefined, {\n alias: 'aria-label',\n });\n\n /** Fires when a non-disabled, non-final breadcrumb is activated. */\n readonly clicked = output<BreadcrumbClickEvent>();\n\n /** Accessible label for the breadcrumb nav, falling back to the active locale. */\n readonly resolvedAriaLabel = computed(\n () => this.ariaLabel() ?? this.i18n.messages().breadcrumbs.label,\n );\n\n isLast(index: number): boolean {\n return index === this.items().length - 1;\n }\n\n handleClick(item: BreadcrumbItem, index: number, event: MouseEvent): void {\n if (item.disabled || this.isLast(index)) {\n event.preventDefault();\n return;\n }\n this.clicked.emit({ item, index, event });\n }\n}\n","<nav\n class=\"ea-breadcrumbs\"\n [attr.aria-label]=\"resolvedAriaLabel()\">\n <ol class=\"ea-breadcrumbs__list\">\n @for (item of items(); track $index; let i = $index; let last = $last) {\n <li class=\"ea-breadcrumbs__item\">\n @if (last) {\n <span\n class=\"ea-breadcrumbs__current\"\n aria-current=\"page\">\n {{ item.label }}\n </span>\n } @else if (item.disabled) {\n <span class=\"ea-breadcrumbs__link ea-breadcrumbs__link--disabled\">\n {{ item.label }}\n </span>\n } @else if (item.href) {\n <a\n class=\"ea-breadcrumbs__link\"\n [href]=\"item.href\"\n (click)=\"handleClick(item, i, $event)\">\n {{ item.label }}\n </a>\n } @else {\n <button\n type=\"button\"\n class=\"ea-breadcrumbs__link ea-breadcrumbs__link--button\"\n (click)=\"handleClick(item, i, $event)\">\n {{ item.label }}\n </button>\n }\n\n @if (!last) {\n @if (separator() === 'chevron') {\n <ea-icon-chevron-right\n class=\"ea-breadcrumbs__separator\"\n aria-hidden=\"true\" />\n } @else {\n <span\n class=\"ea-breadcrumbs__separator ea-breadcrumbs__separator--slash\"\n aria-hidden=\"true\">\n /\n </span>\n }\n }\n </li>\n }\n </ol>\n</nav>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n input,\n output,\n} from '@angular/core';\n\n/** Visual style of a button — drives colour and emphasis. */\nexport type ButtonVariant = 'primary' | 'secondary' | 'ghost' | 'danger';\n/** Visual size of a button. */\nexport type ButtonSize = 'sm' | 'md' | 'lg';\n/** HTML `type` attribute applied to the underlying `<button>` element. */\nexport type ButtonType = 'button' | 'submit' | 'reset';\n\n/**\n * Standard action button supporting primary, secondary, ghost, and danger\n * variants. Includes a loading state that swaps the label for a spinner while\n * preserving the rendered width.\n */\n@Component({\n selector: 'ea-button',\n templateUrl: './button.component.html',\n styleUrl: './button.component.scss',\n imports: [NgClass],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class.ea-button--full-width]': 'fullWidth()',\n },\n})\nexport class ButtonComponent {\n // Inputs\n readonly variant = input<ButtonVariant>('primary');\n readonly size = input<ButtonSize>('md');\n readonly type = input<ButtonType>('button');\n readonly disabled = input<boolean>(false);\n readonly loading = input<boolean>(false);\n readonly fullWidth = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly ariaCurrent = input<string | undefined>(undefined, { alias: 'aria-current' });\n\n // Output\n /** Fires when the button is activated; suppressed while disabled or loading. */\n readonly clicked = output<MouseEvent>();\n\n // Derived\n readonly isDisabled = computed(() => this.disabled() || this.loading());\n\n readonly hostClasses = computed(() => ({\n [`ea-button--${this.variant()}`]: true,\n [`ea-button--${this.size()}`]: true,\n 'ea-button--full-width': this.fullWidth(),\n 'ea-button--loading': this.loading(),\n 'ea-button--disabled': this.isDisabled(),\n }));\n\n handleClick(event: MouseEvent): void {\n if (this.isDisabled()) {\n event.preventDefault();\n return;\n }\n this.clicked.emit(event);\n }\n}\n","<button\n class=\"ea-button\"\n [ngClass]=\"hostClasses()\"\n [type]=\"type()\"\n [disabled]=\"isDisabled()\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-current]=\"ariaCurrent() || null\"\n [attr.aria-busy]=\"loading() || null\"\n (click)=\"handleClick($event)\">\n @if (loading()) {\n <span\n class=\"ea-button__spinner\"\n aria-hidden=\"true\">\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\"\n stroke-dasharray=\"31.4\"\n stroke-dashoffset=\"10\" />\n </svg>\n </span>\n }\n\n <span\n class=\"ea-button__content\"\n [class.ea-button__content--hidden]=\"loading()\">\n <ng-content select=\"[slot=prefix]\" />\n <span class=\"ea-button__label\">\n <ng-content />\n </span>\n <ng-content select=\"[slot=suffix]\" />\n </span>\n</button>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\n\n/** Orientation of the divider rule. */\nexport type DividerOrientation = 'horizontal' | 'vertical';\n\n/**\n * Thin separator used to visually divide content. Renders horizontally by\n * default and may include an optional centred label (e.g. \"or\").\n */\n@Component({\n selector: 'ea-divider',\n imports: [NgClass],\n templateUrl: './divider.component.html',\n styleUrl: './divider.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class DividerComponent {\n readonly orientation = input<DividerOrientation>('horizontal');\n readonly label = input<string | undefined>(undefined);\n\n readonly hostClasses = computed(() => ({\n [`ea-divider--${this.orientation()}`]: true,\n 'ea-divider--with-label': !!this.label(),\n }));\n}\n","<div\n class=\"ea-divider\"\n [ngClass]=\"hostClasses()\"\n [attr.role]=\"'separator'\"\n [attr.aria-orientation]=\"orientation()\">\n @if (label()) {\n <span class=\"ea-divider__label\">{{ label() }}</span>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n input,\n} from '@angular/core';\n\nimport { DividerComponent } from '../divider/divider.component';\n\n/** Visual style of a card surface. */\nexport type CardVariant = 'elevated' | 'outlined' | 'filled';\n/** Padding preset applied to the card's content area. */\nexport type CardPadding = 'none' | 'sm' | 'md' | 'lg' | 'xl';\n/** Horizontal alignment of card header content. */\nexport type CardHeaderAlign = 'start' | 'center' | 'end';\n\n/**\n * Surface for grouping related content. Provides optional `header` and\n * `footer` content slots and supports elevated, outlined, and filled\n * variants. The card shadow can be customised per instance via the\n * `--ea-card-shadow` CSS custom property.\n */\n@Component({\n selector: 'ea-card',\n imports: [DividerComponent, NgClass],\n templateUrl: './card.component.html',\n styleUrl: './card.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class CardComponent {\n // Inputs\n readonly variant = input<CardVariant>('elevated');\n readonly padding = input<CardPadding>('md');\n readonly fullWidth = input<boolean>(false);\n readonly headerAlign = input<CardHeaderAlign>('center');\n readonly headerDivider = input<boolean>(false);\n\n // Computed\n readonly hostClasses = computed(() => ({\n [`ea-card--${this.variant()}`]: true,\n [`ea-card--padding-${this.padding()}`]: true,\n 'ea-card--full-width': this.fullWidth(),\n }));\n}\n","<div\n class=\"ea-card\"\n [ngClass]=\"hostClasses()\">\n <div\n class=\"ea-card__header\"\n [style.text-align]=\"headerAlign()\">\n <ng-content select=\"[slot=header]\" />\n </div>\n\n @if (headerDivider()) {\n <ea-divider class=\"ea-card__divider\" />\n }\n\n <div class=\"ea-card__body\">\n <ng-content />\n </div>\n\n <div class=\"ea-card__footer\">\n <ng-content select=\"[slot=footer]\" />\n </div>\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n/** Visual size of a checkbox. */\nexport type CheckboxSize = 'sm' | 'md' | 'lg';\n\n/**\n * Boolean form control with support for an indeterminate visual state. Pairs\n * a visually hidden native input with a custom checkmark and integrates with\n * Angular forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-checkbox',\n imports: [NgClass],\n templateUrl: './checkbox.component.html',\n styleUrl: './checkbox.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CheckboxComponent),\n multi: true,\n },\n ],\n})\nexport class CheckboxComponent implements ControlValueAccessor {\n // Inputs\n readonly label = input<string | undefined>(undefined);\n /**\n * Optional supplementary value shown immediately after the label, dimmed\n * to the tertiary text token. Renders inside the same `<span>` as the\n * label so it shares the label's exact baseline and font metrics — keeps\n * \"Inbox 42\" / \"Brand (30)\" patterns aligned without a sibling element\n * fighting flex / inline-flow centring at the consumer's call site.\n */\n readonly count = input<string | number | undefined>(undefined);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly size = input<CheckboxSize>('md');\n readonly disabled = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly indeterminate = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-checkbox-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way checked binding\n readonly checked = model<boolean>(false);\n\n // Outputs\n /** Fires with the new checked state whenever the user toggles the checkbox. */\n readonly changed = output<boolean>();\n\n // Internal state\n private readonly _formDisabled = signal(false);\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly hostClasses = computed(() => ({\n [`ea-checkbox--${this.size()}`]: true,\n 'ea-checkbox--disabled': this.isDisabled(),\n 'ea-checkbox--checked': this.checked(),\n 'ea-checkbox--indeterminate': this.indeterminate(),\n 'ea-checkbox--error': this.hasError(),\n }));\n\n // ControlValueAccessor callbacks\n private onChange: (value: boolean) => void = () => {};\n private onTouched: () => void = () => {};\n\n // ControlValueAccessor\n writeValue(val: boolean): void {\n this.checked.set(!!val);\n }\n\n registerOnChange(fn: (value: boolean) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n // Handlers\n handleChange(): void {\n if (this.isDisabled()) return;\n const newValue = !this.checked();\n this.checked.set(newValue);\n this.onChange(newValue);\n this.onTouched();\n this.changed.emit(newValue);\n }\n}\n","<div class=\"ea-checkbox-field\">\n <label\n class=\"ea-checkbox\"\n [ngClass]=\"hostClasses()\"\n [for]=\"id()\">\n <input\n #inputEl\n type=\"checkbox\"\n class=\"ea-checkbox__input\"\n [id]=\"id()\"\n [checked]=\"checked()\"\n [disabled]=\"isDisabled()\"\n [required]=\"required()\"\n [indeterminate]=\"indeterminate()\"\n [attr.aria-checked]=\"indeterminate() ? 'mixed' : checked()\"\n [attr.aria-label]=\"!label() ? (ariaLabel() ?? null) : null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (change)=\"handleChange()\" />\n\n <span\n class=\"ea-checkbox__box\"\n aria-hidden=\"true\">\n @if (indeterminate()) {\n <svg\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M4 8h8\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\" />\n </svg>\n } @else if (checked()) {\n <svg\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M3.5 8.5L6.5 11.5L12.5 4.5\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\" />\n </svg>\n }\n </span>\n\n @if (label()) {\n <span\n class=\"ea-checkbox__label\"\n [class.ea-checkbox__label--required]=\"required()\">\n {{ label() }}\n @if (count() !== undefined && count() !== null) {\n <span class=\"ea-checkbox__count\">{{ count() }}</span>\n }\n </span>\n }\n </label>\n\n @if (showError()) {\n <p\n class=\"ea-checkbox-field__message ea-checkbox-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-checkbox-field__message ea-checkbox-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"5\"\n x2=\"12\"\n y2=\"19\" />\n <polyline points=\"19 12 12 19 5 12\" />\n </svg>\n `,\n})\nexport class ArrowDownIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-down';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-down',\n 'arrow',\n 'down',\n 'south',\n 'descend',\n 'flèche',\n 'bas',\n 'flecha',\n 'abajo',\n 'βέλος',\n 'κάτω',\n 'strzałka',\n 'dół',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-up',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"19\"\n x2=\"12\"\n y2=\"5\" />\n <polyline points=\"5 12 12 5 19 12\" />\n </svg>\n `,\n})\nexport class ArrowUpIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-up';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-up',\n 'arrow',\n 'up',\n 'north',\n 'ascend',\n 'flèche',\n 'haut',\n 'flecha',\n 'arriba',\n 'βέλος',\n 'πάνω',\n 'strzałka',\n 'góra',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-chevrons-up-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"7 15 12 20 17 15\" />\n <polyline points=\"17 9 12 4 7 9\" />\n </svg>\n `,\n})\nexport class ChevronsUpDownIconComponent extends IconComponentBase {\n static readonly slug = 'chevrons-up-down';\n static readonly category: IconCategory = 'eagami';\n static readonly tags: ReadonlyArray<string> = [\n 'chevrons-up-down',\n 'chevrons',\n 'up',\n 'down',\n 'sort',\n 'expand',\n 'haut',\n 'bas',\n 'arriba',\n 'abajo',\n 'πάνω',\n 'κάτω',\n 'góra',\n 'dół',\n ];\n}\n","import { NgClass, NgTemplateOutlet } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n TemplateRef,\n ViewEncapsulation,\n computed,\n contentChild,\n inject,\n input,\n model,\n output,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { ArrowDownIconComponent } from '../icons/arrow-down.component';\nimport { ArrowUpIconComponent } from '../icons/arrow-up.component';\nimport { ChevronsUpDownIconComponent } from '../icons/chevrons-up-down.component';\n\n/** Vertical density preset for table rows and header cells. */\nexport type DataTableDensity = 'compact' | 'comfortable' | 'spacious';\n\n/** Sort direction; `null` means no sort is applied. */\nexport type DataTableSortDirection = 'asc' | 'desc' | null;\n\n/** Column definition for the data table, including optional cell/header templates. */\nexport interface DataTableColumn<T = Record<string, unknown>> {\n key: string;\n label: string;\n sortable?: boolean;\n align?: 'left' | 'center' | 'right';\n width?: string;\n format?: (value: unknown) => string;\n cellTemplate?: TemplateRef<{ $implicit: T; value: unknown }>;\n headerTemplate?: TemplateRef<{ $implicit: DataTableColumn<T> }>;\n}\n\n/** Current sort state — which column is sorted and in which direction. */\nexport interface DataTableSortState {\n column: string;\n direction: DataTableSortDirection;\n}\n\n/**\n * Table for tabular data with sortable columns, sticky headers, and density\n * presets. Supports striping, borders, hoverable rows, and custom cell or\n * header templates via `ng-template`. Sort state is exposed as a two-way\n * `model()` binding.\n */\n@Component({\n selector: 'ea-data-table',\n imports: [\n ArrowDownIconComponent,\n ArrowUpIconComponent,\n ChevronsUpDownIconComponent,\n NgClass,\n NgTemplateOutlet,\n ],\n templateUrl: './data-table.component.html',\n styleUrl: './data-table.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class DataTableComponent<T = Record<string, unknown>> {\n private readonly i18n = inject(EagamiI18nService);\n\n readonly columns = input.required<DataTableColumn<T>[]>();\n readonly data = input.required<T[]>();\n readonly trackBy = input<keyof T | undefined>(undefined);\n readonly density = input<DataTableDensity>('comfortable');\n readonly stickyHeader = input<boolean>(false);\n readonly striped = input<boolean>(false);\n readonly hoverable = input<boolean>(true);\n readonly bordered = input<boolean>(false);\n readonly noDataText = input<string | undefined>(undefined);\n\n readonly sort = model<DataTableSortState>({ column: '', direction: null });\n\n /** Fires whenever the sort column or direction changes via header click. */\n readonly sorted = output<DataTableSortState>();\n\n readonly noDataTemplate = contentChild<TemplateRef<unknown>>('noData');\n\n /** Empty-state text, falling back to the active locale's translation. */\n readonly resolvedNoDataText = computed(\n () => this.noDataText() ?? this.i18n.messages().dataTable.noData,\n );\n\n readonly hostClasses = computed(() => ({\n [`ea-data-table--${this.density()}`]: true,\n 'ea-data-table--sticky': this.stickyHeader(),\n 'ea-data-table--striped': this.striped(),\n 'ea-data-table--hoverable': this.hoverable(),\n 'ea-data-table--bordered': this.bordered(),\n }));\n\n readonly sortedData = computed(() => {\n const items = this.data();\n const { column, direction } = this.sort();\n if (!column || !direction) return items;\n\n return [...items].sort((a, b) => {\n const valA = (a as Record<string, unknown>)[column];\n const valB = (b as Record<string, unknown>)[column];\n\n if (valA == null && valB == null) return 0;\n if (valA == null) return direction === 'asc' ? -1 : 1;\n if (valB == null) return direction === 'asc' ? 1 : -1;\n\n let comparison: number;\n if (typeof valA === 'number' && typeof valB === 'number') {\n comparison = valA - valB;\n } else if (typeof valA === 'string' && typeof valB === 'string') {\n comparison = valA.localeCompare(valB);\n } else {\n comparison = String(valA).localeCompare(String(valB));\n }\n\n return direction === 'asc' ? comparison : -comparison;\n });\n });\n\n getCellValue(row: T, key: string): unknown {\n return (row as Record<string, unknown>)[key];\n }\n\n onHeaderClick(col: DataTableColumn<T>): void {\n if (!col.sortable) return;\n\n const current = this.sort();\n let direction: DataTableSortDirection;\n\n if (current.column === col.key) {\n direction =\n current.direction === 'asc'\n ? 'desc'\n : current.direction === 'desc'\n ? null\n : 'asc';\n } else {\n direction = 'asc';\n }\n\n const next: DataTableSortState = { column: direction ? col.key : '', direction };\n this.sort.set(next);\n this.sorted.emit(next);\n }\n\n trackByFn(_index: number, item: T): unknown {\n const key = this.trackBy();\n return key ? (item as Record<string, unknown>)[key as string] : _index;\n }\n}\n","<div\n class=\"ea-data-table\"\n [ngClass]=\"hostClasses()\">\n <div class=\"ea-data-table__scroll\">\n <table class=\"ea-data-table__table\">\n <thead class=\"ea-data-table__head\">\n <tr class=\"ea-data-table__row ea-data-table__row--header\">\n @for (col of columns(); track col.key) {\n <th\n scope=\"col\"\n class=\"ea-data-table__cell ea-data-table__cell--header\"\n [class.ea-data-table__cell--sortable]=\"col.sortable\"\n [class.ea-data-table__cell--sorted]=\"\n sort().column === col.key && sort().direction\n \"\n [class.ea-data-table__cell--align-center]=\"col.align === 'center'\"\n [class.ea-data-table__cell--align-right]=\"col.align === 'right'\"\n [style.width]=\"col.width ?? null\"\n [attr.aria-sort]=\"\n sort().column === col.key && sort().direction === 'asc'\n ? 'ascending'\n : sort().column === col.key && sort().direction === 'desc'\n ? 'descending'\n : col.sortable\n ? 'none'\n : null\n \"\n (click)=\"onHeaderClick(col)\"\n (keydown.enter)=\"onHeaderClick(col)\"\n (keydown.space)=\"$event.preventDefault(); onHeaderClick(col)\"\n [attr.tabindex]=\"col.sortable ? 0 : null\">\n @if (col.headerTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"col.headerTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: col }\" />\n } @else {\n <span class=\"ea-data-table__header-text\">{{ col.label }}</span>\n }\n @if (col.sortable) {\n <span class=\"ea-data-table__sort-icon\">\n @if (sort().column === col.key && sort().direction === 'asc') {\n <ea-icon-arrow-up />\n } @else if (sort().column === col.key && sort().direction === 'desc') {\n <ea-icon-arrow-down />\n } @else {\n <ea-icon-chevrons-up-down />\n }\n </span>\n }\n </th>\n }\n </tr>\n </thead>\n <tbody class=\"ea-data-table__body\">\n @if (sortedData().length === 0) {\n <tr class=\"ea-data-table__row ea-data-table__row--empty\">\n <td\n class=\"ea-data-table__cell ea-data-table__cell--empty\"\n [attr.colspan]=\"columns().length\">\n @if (noDataTemplate()) {\n <ng-container [ngTemplateOutlet]=\"noDataTemplate()!\" />\n } @else {\n {{ resolvedNoDataText() }}\n }\n </td>\n </tr>\n } @else {\n @for (row of sortedData(); track trackByFn($index, row)) {\n <tr class=\"ea-data-table__row\">\n @for (col of columns(); track col.key) {\n <td\n class=\"ea-data-table__cell\"\n [class.ea-data-table__cell--align-center]=\"col.align === 'center'\"\n [class.ea-data-table__cell--align-right]=\"col.align === 'right'\">\n @if (col.cellTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"col.cellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: row,\n value: getCellValue(row, col.key),\n }\" />\n } @else if (col.format) {\n {{ col.format(getCellValue(row, col.key)) }}\n } @else {\n {{ getCellValue(row, col.key) }}\n }\n </td>\n }\n </tr>\n }\n }\n </tbody>\n </table>\n </div>\n <ng-content select=\"ea-paginator\" />\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n computed,\n forwardRef,\n inject,\n input,\n model,\n output,\n signal,\n viewChildren,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\n\n/** Visual size of each digit cell. */\nexport type CodeInputSize = 'sm' | 'md' | 'lg';\n\n/**\n * Verification code entry made up of one input per digit. Auto-advances on\n * input, supports paste of the full code at once, and integrates with Angular\n * forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-code-input',\n templateUrl: './code-input.component.html',\n styleUrl: './code-input.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CodeInputComponent),\n multi: true,\n },\n ],\n})\nexport class CodeInputComponent implements ControlValueAccessor {\n readonly digitEls = viewChildren<ElementRef<HTMLInputElement>>('digitEl');\n protected readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly label = input<string | undefined>(undefined);\n readonly placeholder = input<string>('');\n readonly length = input<number>(6);\n readonly size = input<CodeInputSize>('md');\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly id = input<string>(`ea-code-input-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way value binding\n readonly value = model<string>('');\n\n // Internal state\n readonly focusedIndex = signal<number>(-1);\n private readonly _formDisabled = signal(false);\n\n // Outputs\n /** Fires with the full code once every digit has been entered. */\n readonly completed = output<string>();\n\n // ControlValueAccessor callbacks\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly digits = computed(() => {\n const val = this.value();\n const len = this.length();\n return Array.from({ length: len }, (_, i) => val[i] ?? '');\n });\n\n readonly indices = computed(() => Array.from({ length: this.length() }, (_, i) => i));\n\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n handleInput(event: Event, index: number): void {\n if (this.readonly()) return;\n const input = event.target as HTMLInputElement;\n const char = input.value.replace(/[^0-9]/g, '').slice(-1);\n input.value = char;\n\n const current = this.value();\n const chars = current.padEnd(this.length(), ' ').split('');\n chars[index] = char;\n const newValue = chars.join('').replace(/ +$/, '');\n\n this.value.set(newValue);\n this.onChange(newValue);\n\n if (char && index < this.length() - 1) {\n this.focusDigit(index + 1);\n }\n\n if (newValue.length === this.length()) {\n this.completed.emit(newValue);\n }\n }\n\n handleKeydown(event: KeyboardEvent, index: number): void {\n const inputs = this.digitEls();\n\n if (event.key === 'Backspace') {\n if (this.readonly()) return;\n event.preventDefault();\n const current = this.value();\n const chars = current.padEnd(this.length(), ' ').split('');\n\n if (chars[index] && chars[index] !== ' ') {\n chars[index] = ' ';\n } else if (index > 0) {\n chars[index - 1] = ' ';\n this.focusDigit(index - 1);\n }\n\n const newValue = chars.join('').replace(/ +$/, '');\n this.value.set(newValue);\n this.onChange(newValue);\n } else if (event.key === 'ArrowLeft' && index > 0) {\n event.preventDefault();\n this.focusDigit(index - 1);\n } else if (event.key === 'ArrowRight' && index < inputs.length - 1) {\n event.preventDefault();\n this.focusDigit(index + 1);\n }\n }\n\n handlePaste(event: ClipboardEvent): void {\n event.preventDefault();\n if (this.readonly()) return;\n const pasted = (event.clipboardData?.getData('text') ?? '').replace(/[^0-9]/g, '');\n if (!pasted) return;\n\n const clipped = pasted.slice(0, this.length());\n this.value.set(clipped);\n this.onChange(clipped);\n\n const nextIndex = Math.min(clipped.length, this.length() - 1);\n this.focusDigit(nextIndex);\n\n if (clipped.length === this.length()) {\n this.completed.emit(clipped);\n }\n }\n\n handleFocus(index: number): void {\n this.focusedIndex.set(index);\n const input = this.digitEls()[index]?.nativeElement;\n input?.select();\n }\n\n handleBlur(): void {\n this.focusedIndex.set(-1);\n this.onTouched();\n }\n\n /** Moves keyboard focus to the next empty digit (or the last one when full). */\n focus(): void {\n const val = this.value();\n const index = Math.min(val.length, this.length() - 1);\n this.focusDigit(index);\n }\n\n private focusDigit(index: number): void {\n this.digitEls()[index]?.nativeElement.focus();\n }\n}\n","<div class=\"ea-code-input-field\">\n @if (label()) {\n <label\n class=\"ea-code-input-field__label\"\n [class.ea-code-input-field__label--required]=\"required()\"\n [id]=\"id() + '-label'\">\n {{ label() }}\n </label>\n }\n\n <div\n class=\"ea-code-input-group\"\n [class.ea-code-input-group--sm]=\"size() === 'sm'\"\n [class.ea-code-input-group--md]=\"size() === 'md'\"\n [class.ea-code-input-group--lg]=\"size() === 'lg'\"\n [class.ea-code-input-group--error]=\"hasError()\"\n [class.ea-code-input-group--disabled]=\"isDisabled()\"\n role=\"group\"\n [attr.aria-labelledby]=\"label() ? id() + '-label' : null\"\n [attr.aria-label]=\"!label() ? i18n.messages().codeInput.groupLabel(length()) : null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \">\n @for (i of indices(); track i) {\n <input\n #digitEl\n class=\"ea-code-input\"\n [class.ea-code-input--focused]=\"focusedIndex() === i\"\n [class.ea-code-input--filled]=\"digits()[i] !== ''\"\n type=\"text\"\n inputmode=\"numeric\"\n autocomplete=\"one-time-code\"\n maxlength=\"1\"\n [disabled]=\"isDisabled()\"\n [readOnly]=\"readonly()\"\n [required]=\"required()\"\n [value]=\"digits()[i]\"\n [placeholder]=\"placeholder()\"\n [attr.aria-label]=\"i18n.messages().codeInput.digitLabel(i + 1, length())\"\n [attr.aria-invalid]=\"hasError() || null\"\n (input)=\"handleInput($event, i)\"\n (keydown)=\"handleKeydown($event, i)\"\n (paste)=\"handlePaste($event)\"\n (focus)=\"handleFocus(i)\"\n (blur)=\"handleBlur()\" />\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-code-input-field__message ea-code-input-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-code-input-field__message ea-code-input-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-calendar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"4\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"16\"\n y1=\"2\"\n x2=\"16\"\n y2=\"6\" />\n <line\n x1=\"8\"\n y1=\"2\"\n x2=\"8\"\n y2=\"6\" />\n <line\n x1=\"3\"\n y1=\"10\"\n x2=\"21\"\n y2=\"10\" />\n </svg>\n `,\n})\nexport class CalendarIconComponent extends IconComponentBase {\n static readonly slug = 'calendar';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'calendar',\n 'date',\n 'schedule',\n 'event',\n 'day',\n 'month',\n 'calendrier',\n 'date',\n 'calendario',\n 'fecha',\n 'ημερολόγιο',\n 'ημερομηνία',\n 'kalendarz',\n 'data',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-chevron-left',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"15 18 9 12 15 6\" />\n </svg>\n `,\n})\nexport class ChevronLeftIconComponent extends IconComponentBase {\n static readonly slug = 'chevron-left';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'chevron-left',\n 'chevron',\n 'left',\n 'arrow',\n 'back',\n 'previous',\n 'gauche',\n 'izquierda',\n 'αριστερά',\n 'lewo',\n ];\n}\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostListener,\n Injector,\n afterNextRender,\n computed,\n forwardRef,\n inject,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { AlertCircleIconComponent } from '../icons/alert-circle.component';\nimport { CalendarIconComponent } from '../icons/calendar.component';\nimport { ChevronLeftIconComponent } from '../icons/chevron-left.component';\nimport { ChevronRightIconComponent } from '../icons/chevron-right.component';\n\n/** Visual size of the date picker trigger. */\nexport type DatePickerSize = 'sm' | 'md' | 'lg';\n/** Locale-aware date format used for the displayed value. */\nexport type DatePickerFormat = 'short' | 'medium' | 'long';\n/** First day of the week in the calendar grid (0 = Sunday, 1 = Monday). */\nexport type DatePickerWeekStart = 0 | 1;\n/** Value accepted via `writeValue` — a `Date`, ISO/parseable string, or `null`. */\nexport type DatePickerValue = Date | string | null;\n\ninterface CalendarDay {\n date: Date;\n day: number;\n isCurrentMonth: boolean;\n isToday: boolean;\n isSelected: boolean;\n isDisabled: boolean;\n isFocused: boolean;\n}\n\n/**\n * Calendar popover for selecting a single date. Supports `min`/`max` bounds,\n * configurable week start, locale-aware formatting via `Intl.DateTimeFormat`,\n * and full keyboard navigation (arrows, PageUp/PageDown, Home/End, Enter,\n * Escape). Integrates with Angular forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-date-picker',\n imports: [\n AlertCircleIconComponent,\n CalendarIconComponent,\n ChevronLeftIconComponent,\n ChevronRightIconComponent,\n NgClass,\n ],\n templateUrl: './date-picker.component.html',\n styleUrl: './date-picker.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => DatePickerComponent),\n multi: true,\n },\n ],\n})\nexport class DatePickerComponent implements ControlValueAccessor {\n private readonly hostEl = viewChild<ElementRef<HTMLElement>>('hostEl');\n private readonly triggerEl = viewChild<ElementRef<HTMLButtonElement>>('triggerEl');\n private readonly injector = inject(Injector);\n protected readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly label = input<string | undefined>(undefined);\n /** Placeholder shown when no date is selected. Defaults to the active locale's text. */\n readonly placeholder = input<string | undefined>(undefined);\n readonly size = input<DatePickerSize>('md');\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly minDate = input<Date | null>(null);\n readonly maxDate = input<Date | null>(null);\n readonly format = input<DatePickerFormat>('medium');\n readonly weekStartsOn = input<DatePickerWeekStart>(1);\n readonly locale = input<string | undefined>(undefined);\n readonly id = input<string>(`ea-date-picker-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way value binding (Date at local midnight, or null)\n readonly value = model<Date | null>(null);\n\n // Outputs\n /** Fires when the selected date changes, including when cleared. */\n readonly changed = output<Date | null>();\n\n // Internal state\n readonly isOpen = signal(false);\n readonly viewYear = signal(new Date().getFullYear());\n readonly viewMonth = signal(new Date().getMonth());\n readonly focusedDate = signal<Date | null>(null);\n private readonly _formDisabled = signal(false);\n\n // ControlValueAccessor callbacks\n private onChange: (value: Date | null) => void = () => {};\n private onTouched: () => void = () => {};\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n /** Locale used for date formatting — explicit `locale` input, else the global locale. */\n readonly effectiveLocale = computed(() => this.locale() ?? this.i18n.locale());\n\n /** Placeholder text — explicit `placeholder` input, else the active locale's default. */\n readonly resolvedPlaceholder = computed(\n () => this.placeholder() ?? this.i18n.messages().datePicker.placeholder,\n );\n\n readonly triggerClasses = computed(() => ({\n [`ea-date-picker__trigger--${this.size()}`]: true,\n 'ea-date-picker__trigger--error': this.hasError(),\n 'ea-date-picker__trigger--open': this.isOpen(),\n 'ea-date-picker__trigger--disabled': this.isDisabled(),\n }));\n\n readonly displayValue = computed(() => {\n const val = this.value();\n if (!val) return '';\n return new Intl.DateTimeFormat(this.effectiveLocale(), this.formatOptions()).format(\n val,\n );\n });\n\n readonly monthYearLabel = computed(() => {\n const date = new Date(this.viewYear(), this.viewMonth(), 1);\n return new Intl.DateTimeFormat(this.effectiveLocale(), {\n month: 'long',\n year: 'numeric',\n }).format(date);\n });\n\n readonly weekdayLabels = computed(() => {\n const start = this.weekStartsOn();\n const formatter = new Intl.DateTimeFormat(this.effectiveLocale(), {\n weekday: 'short',\n });\n const labels: string[] = [];\n // Use a known Sunday (2024-01-07) as anchor so we can offset for locale\n const base = new Date(2024, 0, 7);\n for (let i = 0; i < 7; i++) {\n const d = new Date(base);\n d.setDate(base.getDate() + ((i + start) % 7));\n labels.push(formatter.format(d));\n }\n return labels;\n });\n\n readonly weeks = computed<CalendarDay[][]>(() => {\n const year = this.viewYear();\n const month = this.viewMonth();\n const start = this.weekStartsOn();\n\n const firstOfMonth = new Date(year, month, 1);\n const dayOfWeek = firstOfMonth.getDay();\n // Offset so grid starts on weekStartsOn (0=Sun, 1=Mon)\n const leading = (dayOfWeek - start + 7) % 7;\n\n const gridStart = new Date(year, month, 1 - leading);\n const today = this.startOfDay(new Date());\n const selected = this.value();\n const focused = this.focusedDate();\n const min = this.minDate() ? this.startOfDay(this.minDate()!) : null;\n const max = this.maxDate() ? this.startOfDay(this.maxDate()!) : null;\n\n const rows: CalendarDay[][] = [];\n for (let row = 0; row < 6; row++) {\n const cells: CalendarDay[] = [];\n for (let col = 0; col < 7; col++) {\n const cellDate = new Date(gridStart);\n cellDate.setDate(gridStart.getDate() + row * 7 + col);\n cells.push({\n date: cellDate,\n day: cellDate.getDate(),\n isCurrentMonth: cellDate.getMonth() === month,\n isToday: this.isSameDay(cellDate, today),\n isSelected: selected ? this.isSameDay(cellDate, selected) : false,\n isDisabled: (min ? cellDate < min : false) || (max ? cellDate > max : false),\n isFocused: focused ? this.isSameDay(cellDate, focused) : false,\n });\n }\n rows.push(cells);\n }\n return rows;\n });\n\n // ControlValueAccessor\n writeValue(val: DatePickerValue): void {\n const date = this.toDate(val);\n this.value.set(date);\n if (date) {\n this.viewYear.set(date.getFullYear());\n this.viewMonth.set(date.getMonth());\n }\n }\n\n registerOnChange(fn: (value: Date | null) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n // Handlers\n /** Toggles the calendar popover between open and closed. */\n toggle(): void {\n if (this.isDisabled() || this.readonly()) return;\n if (this.isOpen()) {\n this.close();\n } else {\n this.open();\n }\n }\n\n /** Opens the calendar popover and moves focus to the focused day cell. */\n open(): void {\n if (this.isDisabled() || this.readonly()) return;\n const current = this.value() ?? new Date();\n this.viewYear.set(current.getFullYear());\n this.viewMonth.set(current.getMonth());\n this.focusedDate.set(this.startOfDay(current));\n this.isOpen.set(true);\n afterNextRender(() => this.focusFocusedDayCell(), { injector: this.injector });\n }\n\n /** Closes the calendar popover. */\n close(): void {\n this.isOpen.set(false);\n this.focusedDate.set(null);\n }\n\n private focusFocusedDayCell(): void {\n const host = this.hostEl()?.nativeElement;\n const focusedCell = host?.querySelector<HTMLButtonElement>(\n '.ea-date-picker__day--focused',\n );\n focusedCell?.focus();\n }\n\n /** Moves keyboard focus to the trigger button. */\n focus(): void {\n this.triggerEl()?.nativeElement.focus();\n }\n\n selectDay(day: CalendarDay): void {\n if (day.isDisabled) return;\n const date = this.startOfDay(day.date);\n this.value.set(date);\n this.onChange(date);\n this.onTouched();\n this.changed.emit(date);\n this.close();\n this.triggerEl()?.nativeElement.focus();\n }\n\n /** Clears the selected date and emits `changed` with `null`. */\n clear(event: Event): void {\n event.stopPropagation();\n if (this.isDisabled() || this.readonly()) return;\n this.value.set(null);\n this.onChange(null);\n this.onTouched();\n this.changed.emit(null);\n }\n\n goToPrevMonth(): void {\n const month = this.viewMonth();\n if (month === 0) {\n this.viewMonth.set(11);\n this.viewYear.update(y => y - 1);\n } else {\n this.viewMonth.set(month - 1);\n }\n }\n\n goToNextMonth(): void {\n const month = this.viewMonth();\n if (month === 11) {\n this.viewMonth.set(0);\n this.viewYear.update(y => y + 1);\n } else {\n this.viewMonth.set(month + 1);\n }\n }\n\n goToPrevYear(): void {\n this.viewYear.update(y => y - 1);\n }\n\n goToNextYear(): void {\n this.viewYear.update(y => y + 1);\n }\n\n goToToday(): void {\n const today = this.startOfDay(new Date());\n this.viewYear.set(today.getFullYear());\n this.viewMonth.set(today.getMonth());\n this.focusedDate.set(today);\n }\n\n handleTriggerKeydown(event: KeyboardEvent): void {\n if (this.isDisabled()) return;\n switch (event.key) {\n case 'Enter':\n case ' ':\n case 'ArrowDown':\n event.preventDefault();\n this.open();\n break;\n }\n }\n\n handleGridKeydown(event: KeyboardEvent): void {\n if (!this.isOpen()) return;\n const focused = this.focusedDate() ?? this.startOfDay(new Date());\n let next: Date | null;\n\n switch (event.key) {\n case 'ArrowLeft':\n next = this.addDays(focused, -1);\n break;\n case 'ArrowRight':\n next = this.addDays(focused, 1);\n break;\n case 'ArrowUp':\n next = this.addDays(focused, -7);\n break;\n case 'ArrowDown':\n next = this.addDays(focused, 7);\n break;\n case 'PageUp':\n next = this.addMonths(focused, event.shiftKey ? -12 : -1);\n break;\n case 'PageDown':\n next = this.addMonths(focused, event.shiftKey ? 12 : 1);\n break;\n case 'Home':\n next = this.addDays(focused, -focused.getDay() + this.weekStartsOn());\n if (next > focused) next = this.addDays(next, -7);\n break;\n case 'End': {\n const weekStart = this.weekStartsOn();\n const offset = (focused.getDay() - weekStart + 7) % 7;\n next = this.addDays(focused, 6 - offset);\n break;\n }\n case 'Enter':\n case ' ': {\n event.preventDefault();\n const current = this.focusedDate();\n if (!current) return;\n const min = this.minDate();\n const max = this.maxDate();\n if (min && current < this.startOfDay(min)) return;\n if (max && current > this.startOfDay(max)) return;\n this.selectDay({\n date: current,\n day: current.getDate(),\n isCurrentMonth: current.getMonth() === this.viewMonth(),\n isToday: false,\n isSelected: false,\n isDisabled: false,\n isFocused: false,\n });\n return;\n }\n case 'Escape':\n event.preventDefault();\n this.close();\n this.triggerEl()?.nativeElement.focus();\n return;\n default:\n return;\n }\n\n if (next) {\n event.preventDefault();\n this.focusedDate.set(next);\n this.viewYear.set(next.getFullYear());\n this.viewMonth.set(next.getMonth());\n }\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event): void {\n if (!this.isOpen()) return;\n const host = this.hostEl()?.nativeElement;\n if (host && !host.contains(event.target as Node)) {\n this.close();\n this.onTouched();\n }\n }\n\n // Internal helpers\n private formatOptions(): Intl.DateTimeFormatOptions {\n switch (this.format()) {\n case 'short':\n return { dateStyle: 'short' };\n case 'long':\n return { dateStyle: 'long' };\n case 'medium':\n default:\n return { dateStyle: 'medium' };\n }\n }\n\n private toDate(val: DatePickerValue): Date | null {\n if (!val) return null;\n if (val instanceof Date) return isNaN(val.getTime()) ? null : this.startOfDay(val);\n const parsed = new Date(val);\n return isNaN(parsed.getTime()) ? null : this.startOfDay(parsed);\n }\n\n private startOfDay(date: Date): Date {\n return new Date(date.getFullYear(), date.getMonth(), date.getDate());\n }\n\n private isSameDay(a: Date, b: Date): boolean {\n return (\n a.getFullYear() === b.getFullYear() &&\n a.getMonth() === b.getMonth() &&\n a.getDate() === b.getDate()\n );\n }\n\n private addDays(date: Date, days: number): Date {\n const result = new Date(date);\n result.setDate(date.getDate() + days);\n return result;\n }\n\n private addMonths(date: Date, months: number): Date {\n const result = new Date(date);\n result.setMonth(date.getMonth() + months);\n return result;\n }\n}\n","<div\n #hostEl\n class=\"ea-date-picker-field\">\n @if (label()) {\n <label\n class=\"ea-date-picker-field__label\"\n [for]=\"id()\"\n [class.ea-date-picker-field__label--required]=\"required()\">\n {{ label() }}\n </label>\n }\n\n <div class=\"ea-date-picker\">\n <div class=\"ea-date-picker__trigger-wrapper\">\n <button\n #triggerEl\n type=\"button\"\n class=\"ea-date-picker__trigger\"\n [ngClass]=\"triggerClasses()\"\n [id]=\"id()\"\n [disabled]=\"isDisabled()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-haspopup]=\"'dialog'\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (click)=\"toggle()\"\n (keydown)=\"handleTriggerKeydown($event)\">\n <ea-icon-calendar\n class=\"ea-date-picker__trigger-icon\"\n aria-hidden=\"true\" />\n <span\n class=\"ea-date-picker__trigger-value\"\n [class.ea-date-picker__trigger-value--placeholder]=\"!displayValue()\">\n {{ displayValue() || resolvedPlaceholder() }}\n </span>\n </button>\n @if (value() && !isDisabled() && !readonly()) {\n <button\n type=\"button\"\n class=\"ea-date-picker__clear\"\n [attr.aria-label]=\"i18n.messages().datePicker.clear\"\n (click)=\"clear($event)\">\n <span aria-hidden=\"true\">×</span>\n </button>\n }\n </div>\n\n @if (isOpen()) {\n <div\n class=\"ea-date-picker__popover\"\n role=\"dialog\"\n [attr.aria-labelledby]=\"id() + '-label'\"\n (keydown)=\"handleGridKeydown($event)\">\n <div class=\"ea-date-picker__header\">\n <button\n type=\"button\"\n class=\"ea-date-picker__nav-btn\"\n [attr.aria-label]=\"i18n.messages().datePicker.previousYear\"\n (click)=\"goToPrevYear()\">\n <ea-icon-chevron-left aria-hidden=\"true\" />\n <ea-icon-chevron-left aria-hidden=\"true\" />\n </button>\n <button\n type=\"button\"\n class=\"ea-date-picker__nav-btn\"\n [attr.aria-label]=\"i18n.messages().datePicker.previousMonth\"\n (click)=\"goToPrevMonth()\">\n <ea-icon-chevron-left aria-hidden=\"true\" />\n </button>\n <span\n class=\"ea-date-picker__month-label\"\n [id]=\"id() + '-label'\"\n aria-live=\"polite\">\n {{ monthYearLabel() }}\n </span>\n <button\n type=\"button\"\n class=\"ea-date-picker__nav-btn\"\n [attr.aria-label]=\"i18n.messages().datePicker.nextMonth\"\n (click)=\"goToNextMonth()\">\n <ea-icon-chevron-right aria-hidden=\"true\" />\n </button>\n <button\n type=\"button\"\n class=\"ea-date-picker__nav-btn\"\n [attr.aria-label]=\"i18n.messages().datePicker.nextYear\"\n (click)=\"goToNextYear()\">\n <ea-icon-chevron-right aria-hidden=\"true\" />\n <ea-icon-chevron-right aria-hidden=\"true\" />\n </button>\n </div>\n\n <div\n class=\"ea-date-picker__grid\"\n role=\"grid\">\n <div\n class=\"ea-date-picker__weekday-row\"\n role=\"row\">\n @for (label of weekdayLabels(); track label) {\n <div\n class=\"ea-date-picker__weekday\"\n role=\"columnheader\">\n {{ label }}\n </div>\n }\n </div>\n @for (week of weeks(); track $index) {\n <div\n class=\"ea-date-picker__week\"\n role=\"row\">\n @for (day of week; track day.date.getTime()) {\n <button\n type=\"button\"\n class=\"ea-date-picker__day\"\n role=\"gridcell\"\n [class.ea-date-picker__day--outside]=\"!day.isCurrentMonth\"\n [class.ea-date-picker__day--today]=\"day.isToday\"\n [class.ea-date-picker__day--selected]=\"day.isSelected\"\n [class.ea-date-picker__day--focused]=\"day.isFocused\"\n [class.ea-date-picker__day--disabled]=\"day.isDisabled\"\n [disabled]=\"day.isDisabled\"\n [attr.aria-selected]=\"day.isSelected\"\n [attr.aria-current]=\"day.isToday ? 'date' : null\"\n [attr.tabindex]=\"day.isFocused ? 0 : -1\"\n (click)=\"selectDay(day)\">\n {{ day.day }}\n </button>\n }\n </div>\n }\n </div>\n\n <div class=\"ea-date-picker__footer\">\n <button\n type=\"button\"\n class=\"ea-date-picker__today-btn\"\n (click)=\"goToToday()\">\n {{ i18n.messages().datePicker.today }}\n </button>\n </div>\n </div>\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-date-picker-field__message ea-date-picker-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n <ea-icon-alert-circle class=\"ea-date-picker-field__message-icon\" />\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-date-picker-field__message ea-date-picker-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n ViewEncapsulation,\n computed,\n effect,\n inject,\n input,\n model,\n output,\n viewChild,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { XIconComponent } from '../icons/x.component';\n\n/** Width preset of the dialog panel. */\nexport type DialogSize = 'sm' | 'md' | 'lg' | 'full';\n\n/**\n * Modal dialog backed by the native `<dialog>` element. Uses `showModal()`\n * for browser-managed focus trapping, supports backdrop and Escape dismissal,\n * and exposes `header`, default, and `footer` content slots. The `open` state\n * is a two-way `model()` binding.\n */\n@Component({\n selector: 'ea-dialog',\n imports: [NgClass, XIconComponent],\n templateUrl: './dialog.component.html',\n styleUrl: './dialog.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class DialogComponent {\n private readonly dialogEl = viewChild<ElementRef<HTMLDialogElement>>('dialogEl');\n private previouslyFocused: HTMLElement | null = null;\n protected readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly size = input<DialogSize>('md');\n readonly closeOnBackdrop = input<boolean>(true);\n readonly closeOnEscape = input<boolean>(true);\n readonly showClose = input<boolean>(true);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-dialog-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way open binding\n readonly open = model<boolean>(false);\n\n // Outputs\n /** Fires once the dialog has been shown via `showModal()`. */\n readonly opened = output<void>();\n /** Fires when the dialog closes (via close button, backdrop, or Escape). */\n readonly closed = output<void>();\n\n // Computed\n readonly panelClasses = computed(() => ({\n [`ea-dialog__panel--${this.size()}`]: true,\n }));\n\n constructor() {\n effect(() => {\n const dialogRef = this.dialogEl()?.nativeElement;\n if (!dialogRef) return;\n\n if (this.open()) {\n if (!dialogRef.open) {\n this.previouslyFocused = document.activeElement as HTMLElement | null;\n dialogRef.showModal();\n this.opened.emit();\n }\n } else {\n if (dialogRef.open) {\n dialogRef.close();\n this.previouslyFocused?.focus?.();\n this.previouslyFocused = null;\n }\n }\n });\n }\n\n handleClose(): void {\n this.open.set(false);\n this.closed.emit();\n }\n\n handleBackdropClick(event: MouseEvent): void {\n if (!this.closeOnBackdrop()) return;\n const dialogRef = this.dialogEl()?.nativeElement;\n if (event.target === dialogRef) {\n this.handleClose();\n }\n }\n\n handleCancel(event: Event): void {\n if (!this.closeOnEscape()) {\n event.preventDefault();\n return;\n }\n this.handleClose();\n }\n}\n","<dialog\n #dialogEl\n class=\"ea-dialog\"\n [id]=\"id()\"\n [attr.aria-label]=\"ariaLabel() ?? null\"\n [attr.aria-labelledby]=\"!ariaLabel() ? id() + '-header' : null\"\n (click)=\"handleBackdropClick($event)\"\n (cancel)=\"handleCancel($event)\">\n <div\n class=\"ea-dialog__panel\"\n [ngClass]=\"panelClasses()\">\n @if (showClose()) {\n <button\n type=\"button\"\n class=\"ea-dialog__close\"\n [attr.aria-label]=\"i18n.messages().dialog.close\"\n (click)=\"handleClose()\">\n <ea-icon-x />\n </button>\n }\n\n <div\n class=\"ea-dialog__header\"\n [id]=\"id() + '-header'\">\n <ng-content select=\"[slot=header]\" />\n </div>\n\n <div class=\"ea-dialog__body\">\n <ng-content />\n </div>\n\n <div class=\"ea-dialog__footer\">\n <ng-content select=\"[slot=footer]\" />\n </div>\n </div>\n</dialog>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n ViewEncapsulation,\n computed,\n effect,\n inject,\n input,\n model,\n output,\n viewChild,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { XIconComponent } from '../icons/x.component';\n\n/** Edge of the viewport from which the drawer slides in. */\nexport type DrawerPosition = 'left' | 'right' | 'top' | 'bottom';\n/** Size of the drawer panel along its primary axis. */\nexport type DrawerSize = 'sm' | 'md' | 'lg' | 'full';\n\n/**\n * Side panel backed by the native `<dialog>` element for browser-managed\n * focus trapping. Slides in from a configurable edge, supports backdrop and\n * Escape dismissal, and exposes `header`, default, and `footer` content\n * slots. The `open` state is a two-way `model()` binding.\n */\n@Component({\n selector: 'ea-drawer',\n imports: [NgClass, XIconComponent],\n templateUrl: './drawer.component.html',\n styleUrl: './drawer.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class DrawerComponent {\n private readonly drawerEl = viewChild<ElementRef<HTMLDialogElement>>('drawerEl');\n private previouslyFocused: HTMLElement | null = null;\n protected readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly position = input<DrawerPosition>('right');\n readonly size = input<DrawerSize>('md');\n readonly closeOnBackdrop = input<boolean>(true);\n readonly closeOnEscape = input<boolean>(true);\n readonly showClose = input<boolean>(true);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-drawer-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way open binding\n readonly open = model<boolean>(false);\n\n // Outputs\n /** Fires once the drawer has been shown via `showModal()`. */\n readonly opened = output<void>();\n /** Fires when the drawer closes (via close button, backdrop, or Escape). */\n readonly closed = output<void>();\n\n // Computed\n readonly panelClasses = computed(() => ({\n [`ea-drawer__panel--${this.position()}`]: true,\n [`ea-drawer__panel--${this.size()}`]: true,\n }));\n\n constructor() {\n effect(() => {\n const drawerRef = this.drawerEl()?.nativeElement;\n if (!drawerRef) return;\n\n if (this.open()) {\n if (!drawerRef.open) {\n this.previouslyFocused = document.activeElement as HTMLElement | null;\n drawerRef.showModal();\n this.opened.emit();\n }\n } else {\n if (drawerRef.open) {\n drawerRef.close();\n this.previouslyFocused?.focus?.();\n this.previouslyFocused = null;\n }\n }\n });\n }\n\n handleClose(): void {\n this.open.set(false);\n this.closed.emit();\n }\n\n handleBackdropClick(event: MouseEvent): void {\n if (!this.closeOnBackdrop()) return;\n const drawerRef = this.drawerEl()?.nativeElement;\n if (event.target === drawerRef) {\n this.handleClose();\n }\n }\n\n handleCancel(event: Event): void {\n if (!this.closeOnEscape()) {\n event.preventDefault();\n return;\n }\n this.handleClose();\n }\n}\n","<dialog\n #drawerEl\n class=\"ea-drawer\"\n [id]=\"id()\"\n [attr.aria-label]=\"ariaLabel() ?? null\"\n [attr.aria-labelledby]=\"!ariaLabel() ? id() + '-header' : null\"\n (click)=\"handleBackdropClick($event)\"\n (cancel)=\"handleCancel($event)\">\n <div\n class=\"ea-drawer__panel\"\n [ngClass]=\"panelClasses()\">\n @if (showClose()) {\n <button\n type=\"button\"\n class=\"ea-drawer__close\"\n [attr.aria-label]=\"i18n.messages().drawer.close\"\n (click)=\"handleClose()\">\n <ea-icon-x />\n </button>\n }\n\n <div\n class=\"ea-drawer__header\"\n [id]=\"id() + '-header'\">\n <ng-content select=\"[slot=header]\" />\n </div>\n\n <div class=\"ea-drawer__body\">\n <ng-content />\n </div>\n\n <div class=\"ea-drawer__footer\">\n <ng-content select=\"[slot=footer]\" />\n </div>\n </div>\n</dialog>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n DestroyRef,\n ElementRef,\n HostListener,\n computed,\n effect,\n forwardRef,\n inject,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { ChevronDownIconComponent } from '../icons/chevron-down.component';\nimport { SelectOption } from '../select-option';\n\n/** Visual size of the dropdown trigger. */\nexport type DropdownSize = 'sm' | 'md' | 'lg';\n\n/**\n * Single-select dropdown with a custom popup list. Supports keyboard\n * navigation (arrow keys, Enter/Space to select, Escape to close), closes\n * on outside click or viewport scroll/resize, and integrates with Angular\n * forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-dropdown',\n imports: [ChevronDownIconComponent, NgClass],\n templateUrl: './dropdown.component.html',\n styleUrl: './dropdown.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => DropdownComponent),\n multi: true,\n },\n ],\n})\nexport class DropdownComponent implements ControlValueAccessor {\n private readonly elRef = viewChild<ElementRef<HTMLElement>>('triggerEl');\n private readonly menuEl = viewChild<ElementRef<HTMLElement>>('menuEl');\n private readonly destroyRef = inject(DestroyRef);\n private readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly label = input<string | undefined>(undefined);\n readonly placeholder = input<string | undefined>(undefined);\n readonly options = input<SelectOption[]>([]);\n readonly size = input<DropdownSize>('md');\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly id = input<string>(`ea-dropdown-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way value binding\n readonly value = model<string>('');\n\n // Outputs\n /** Fires with the new value when the user selects an option. */\n readonly changed = output<string>();\n\n // Internal state\n readonly isOpen = signal(false);\n readonly focusedIndex = signal(-1);\n private readonly _formDisabled = signal(false);\n\n // ControlValueAccessor callbacks\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly selectedLabel = computed(() => {\n const opt = this.options().find(o => o.value === this.value());\n return opt?.label ?? '';\n });\n\n /** Placeholder text, falling back to the active locale's translation. */\n readonly resolvedPlaceholder = computed(\n () => this.placeholder() ?? this.i18n.messages().dropdown.placeholder,\n );\n\n readonly triggerClasses = computed(() => ({\n [`ea-dropdown__trigger--${this.size()}`]: true,\n 'ea-dropdown__trigger--error': this.hasError(),\n 'ea-dropdown__trigger--open': this.isOpen(),\n 'ea-dropdown__trigger--disabled': this.isDisabled(),\n }));\n\n constructor() {\n effect(() => {\n const menu = this.menuEl()?.nativeElement;\n const trigger = this.elRef()?.nativeElement;\n if (!menu || !trigger || !this.isOpen()) return;\n const rect = trigger.getBoundingClientRect();\n menu.style.top = `${rect.bottom + 4}px`;\n menu.style.left = `${rect.left}px`;\n menu.style.minWidth = `${rect.width}px`;\n });\n\n const closeOnViewportChange = (): void => {\n if (this.isOpen()) this.close();\n };\n window.addEventListener('scroll', closeOnViewportChange, {\n capture: true,\n passive: true,\n });\n window.addEventListener('resize', closeOnViewportChange);\n this.destroyRef.onDestroy(() => {\n window.removeEventListener('scroll', closeOnViewportChange, { capture: true });\n window.removeEventListener('resize', closeOnViewportChange);\n });\n }\n\n // ControlValueAccessor\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n // Handlers\n /** Toggles the dropdown list between open and closed. */\n toggle(): void {\n if (this.isDisabled() || this.readonly()) return;\n this.isOpen.set(!this.isOpen());\n if (this.isOpen()) {\n const idx = this.options().findIndex(o => o.value === this.value());\n this.focusedIndex.set(idx >= 0 ? idx : 0);\n }\n }\n\n /** Programmatically selects the given option, closing the list. */\n select(option: SelectOption): void {\n if (option.disabled || this.isDisabled() || this.readonly()) return;\n this.value.set(option.value);\n this.onChange(option.value);\n this.onTouched();\n this.changed.emit(option.value);\n this.close();\n }\n\n /** Closes the dropdown list without changing the current value. */\n close(): void {\n this.isOpen.set(false);\n this.focusedIndex.set(-1);\n }\n\n /** Moves keyboard focus to the dropdown trigger. */\n focus(): void {\n this.elRef()?.nativeElement.focus();\n }\n\n handleKeydown(event: KeyboardEvent): void {\n if (this.isDisabled() || this.readonly()) return;\n\n switch (event.key) {\n case 'Enter':\n case ' ':\n event.preventDefault();\n if (this.isOpen()) {\n const opts = this.options();\n const idx = this.focusedIndex();\n if (idx >= 0 && idx < opts.length && !opts[idx].disabled) {\n this.select(opts[idx]);\n }\n } else {\n this.toggle();\n }\n break;\n case 'ArrowDown':\n event.preventDefault();\n if (!this.isOpen()) {\n this.toggle();\n } else {\n this.moveFocus(1);\n }\n break;\n case 'ArrowUp':\n event.preventDefault();\n if (this.isOpen()) {\n this.moveFocus(-1);\n }\n break;\n case 'Escape':\n if (this.isOpen()) {\n event.preventDefault();\n this.close();\n this.elRef()?.nativeElement.focus();\n }\n break;\n }\n }\n\n private moveFocus(delta: number): void {\n const opts = this.options();\n let idx = this.focusedIndex() + delta;\n while (idx >= 0 && idx < opts.length && opts[idx].disabled) {\n idx += delta;\n }\n if (idx >= 0 && idx < opts.length) {\n this.focusedIndex.set(idx);\n }\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event): void {\n if (!this.isOpen()) return;\n const el = event.target as Node;\n const host = this.elRef()?.nativeElement.closest('ea-dropdown');\n if (host && !host.contains(el)) {\n this.close();\n this.onTouched();\n }\n }\n}\n","<div class=\"ea-dropdown-field\">\n @if (label()) {\n <label\n class=\"ea-dropdown-field__label\"\n [for]=\"id()\"\n [id]=\"id() + '-label'\"\n [class.ea-dropdown-field__label--required]=\"required()\">\n {{ label() }}\n </label>\n }\n\n <div class=\"ea-dropdown\">\n <button\n #triggerEl\n type=\"button\"\n class=\"ea-dropdown__trigger\"\n [ngClass]=\"triggerClasses()\"\n [id]=\"id()\"\n [disabled]=\"isDisabled()\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-haspopup]=\"'listbox'\"\n [attr.aria-controls]=\"isOpen() ? id() + '-listbox' : null\"\n [attr.aria-activedescendant]=\"\n isOpen() && focusedIndex() >= 0 ? id() + '-option-' + focusedIndex() : null\n \"\n [attr.aria-labelledby]=\"label() ? id() + '-label' : null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (click)=\"toggle()\"\n (keydown)=\"handleKeydown($event)\">\n <span\n class=\"ea-dropdown__value\"\n [class.ea-dropdown__value--placeholder]=\"!selectedLabel()\">\n {{ selectedLabel() || resolvedPlaceholder() }}\n </span>\n <ea-icon-chevron-down\n class=\"ea-dropdown__chevron\"\n [class.ea-dropdown__chevron--open]=\"isOpen()\" />\n </button>\n\n @if (isOpen()) {\n <ul\n #menuEl\n class=\"ea-dropdown__menu\"\n role=\"listbox\"\n [id]=\"id() + '-listbox'\">\n @for (option of options(); track option.value; let i = $index) {\n <li\n class=\"ea-dropdown__option\"\n [class.ea-dropdown__option--selected]=\"option.value === value()\"\n [class.ea-dropdown__option--focused]=\"i === focusedIndex()\"\n [class.ea-dropdown__option--disabled]=\"option.disabled\"\n [id]=\"id() + '-option-' + i\"\n role=\"option\"\n [attr.aria-selected]=\"option.value === value()\"\n [attr.aria-disabled]=\"option.disabled || null\"\n (click)=\"select(option)\"\n (mouseenter)=\"focusedIndex.set(i)\">\n {{ option.label }}\n </li>\n }\n </ul>\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-dropdown-field__message ea-dropdown-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-dropdown-field__message ea-dropdown-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-eagami',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 1962.34 1962.34\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <g>\n <polygon\n fill=\"#718e99\"\n points=\"843.82 1872.78 800.19 1873.73 747.86 1550.57 798.02 1579.39 843.82 1872.78\" />\n <polygon\n fill=\"#72808c\"\n points=\"798.01 1579.39 747.85 1550.57 735.89 1503.54 790.69 1529.94 798.01 1579.39\" />\n <path\n fill=\"#3c6c90\"\n d=\"M1369.61,147.98l-105.89-6.22s-.05,0-.07-.01c-1.06-.1-1.75-.11-1.94-.11h-.06l-187.74-15.4,147.76-37.63,147.94,59.38Z\" />\n <polygon\n fill=\"#46293f\"\n points=\"1242.39 201.49 1023.2 236.73 1000.3 239.43 1005.76 200.7 1073.91 126.23 1242.39 201.49\" />\n <polygon\n fill=\"#653f54\"\n points=\"1144.89 343.97 1140.97 360.09 1034.47 456.62 978.85 341.04 1000.3 239.43 1023.2 236.73 1144.89 343.97\" />\n <polygon\n fill=\"#46293f\"\n points=\"1149.33 499.16 1034.47 456.62 1140.97 360.09 1149.33 499.16\" />\n <polygon\n fill=\"#331b2a\"\n points=\"1318.72 563.47 1130.07 532.19 1149.33 499.16 1318.72 563.47\" />\n <polygon\n fill=\"#4b273c\"\n points=\"1318.72 563.47 1076.63 609.03 1130.07 532.19 1318.72 563.47\" />\n <polygon\n fill=\"#4b2f3f\"\n points=\"1066 741.83 1066 693.01 1035.47 664.68 1003.57 571.56 1076.63 609.03 1083.18 790.66 1059.73 811.84 1066 741.83\" />\n <polygon\n fill=\"#3c6c90\"\n points=\"667.69 998.55 555.65 1178.36 470.69 1211.06 590.27 1015.47 667.69 998.55\" />\n <polygon\n fill=\"#2a445f\"\n points=\"832.91 957.82 705.13 1117.7 555.65 1178.36 667.69 998.55 832.91 957.82\" />\n <polygon\n fill=\"#11253c\"\n points=\"725.23 1109.29 780.56 1088.46 751.67 1105.48 709.41 1120.01 687.32 1156.44 680.06 1168.82 419.79 1252.33 319.47 1293.93 458.32 1053.08 202.43 1176.77 237.68 1130.08 567.1 877.57 346 1256.78 470.69 1211.06 555.65 1178.36 705.13 1117.7 832.91 957.82 841.09 956.88 725.23 1109.29\" />\n <polygon\n fill=\"#72808c\"\n points=\"917.67 1070.61 873.26 1105.96 667.34 1192.96 680.06 1168.82 687.32 1156.44 901.06 1071.66 917.67 1070.61\" />\n <path\n fill=\"#bbcbd2\"\n d=\"M1038.72,1696.39l-46.05,2.39-55.25-98.11-146.73-70.72-54.8-26.4-164.16-79.11-25.44-51.12s112.32-146.39,121.05-180.36l205.92-87-119.96,97.64-58.34,44.77-80.69,118.59,14.17,37.15,93.25,43.58,61.72,33.13,195.9,95.94,59.41,119.62Z\" />\n <polygon\n fill=\"#254b71\"\n points=\"458.32 1053.08 319.47 1293.93 290.75 1344.73 190.85 1368.4 136.63 1381.25 114.46 1290.44 202.43 1176.77 458.32 1053.08\" />\n <polygon\n fill=\"#2a445f\"\n points=\"940.14 614.9 567.1 877.57 237.68 1130.08 490.22 786.13 940.14 614.9\" />\n <polygon\n fill=\"#3c6c90\"\n points=\"1003.57 571.56 940.14 614.9 490.22 786.13 865.63 537.27 1003.57 571.56\" />\n <polygon\n fill=\"#808d97\"\n points=\"1379.25 231.73 1163.33 267.92 1212.39 225.78 1379.25 231.73\" />\n <polygon\n fill=\"#3a0a23\"\n points=\"1090.1 267.24 1023.2 236.73 1163.33 267.92 1156.18 297.37 1090.1 267.24 1090.1 267.24\" />\n <polygon\n fill=\"#4d1832\"\n points=\"1156.18 297.37 1150.7 320 1023.2 236.73 1156.18 297.37\" />\n <polygon\n fill=\"#594b6e\"\n points=\"1150.7 320 1144.89 343.97 1023.2 236.73 1150.7 320\" />\n <polygon\n fill=\"#4f1730\"\n points=\"1276.02 379.71 1236.58 373.98 1140.97 360.09 1248.38 360.09 1276.02 379.71\" />\n <polygon\n fill=\"#d8dee3\"\n points=\"1341.26 475.03 1295.08 447.72 1295.07 447.71 1292.55 435.34 1236.58 373.98 1276.02 379.71 1336.29 447.7 1336.3 447.71 1341.26 475.03\" />\n <polygon\n fill=\"#6c2741\"\n points=\"1336.29 447.7 1276.02 379.71 1328.9 417.25 1335.44 442.96 1336.29 447.7\" />\n <polygon\n fill=\"#9fb1b7\"\n points=\"1346.71 505.52 1320.36 490.59 1298.63 465.1 1295.08 447.72 1341.26 475.03 1346.71 505.52\" />\n <polygon\n fill=\"#bbcbd2\"\n points=\"1356.16 554.73 1311.09 698.25 1240.75 757.31 1318.72 563.47 1298.63 465.1 1320.36 490.59 1356.16 554.73\" />\n <polygon\n fill=\"#72808c\"\n points=\"1279.46 804.94 1174.42 902.74 1240.75 757.31 1279.46 804.94\" />\n <polygon\n fill=\"#3c4d5e\"\n points=\"1240.75 757.31 1174.42 902.74 1068.04 1002.02 1081.79 810.12 1240.75 757.31\" />\n <polygon\n fill=\"#04111b\"\n points=\"1083.18 790.66 1081.79 810.12 1068.04 1002.02 1062.82 1006.89 1062.82 941.16 1059.73 811.84 1083.18 790.66\" />\n <polygon\n fill=\"#11253c\"\n points=\"1062.82 941.16 928.32 1062.14 917.68 1070.61 917.67 1070.61 901.06 1071.66 880.35 1049.28 911.78 1034.51 999.93 921 1059.73 811.84 1062.82 941.16\" />\n <polygon\n fill=\"#72808c\"\n points=\"873.26 1105.96 817.64 1235.99 812.19 1254.56 741.3 1304.8 753.3 1203.59 873.26 1105.96\" />\n <polygon\n fill=\"#8b9da8\"\n points=\"778.38 1446.98 783.4 1480.82 721.68 1447.69 741.3 1304.8 812.19 1254.56 778.38 1446.98\" />\n <polygon\n fill=\"#8b9da8\"\n points=\"1311.09 698.25 1279.46 804.94 1240.75 757.31 1311.09 698.25\" />\n <polygon\n fill=\"#9ea4bc\"\n points=\"1847.88 236.73 1837.25 237.12 1670.95 211.49 1325.63 194.03 1363.79 169.1 1387.06 154.33 1717.11 201.01 1847.88 236.73\" />\n <polygon\n fill=\"#0d2533\"\n points=\"1837.25 237.12 1710.47 241.73 1696.44 241.3 1325.63 194.03 1670.95 211.49 1837.25 237.12\" />\n <polygon\n fill=\"#04111b\"\n points=\"901.06 1071.66 687.32 1156.44 709.41 1120.01 751.67 1105.48 780.56 1088.46 880.35 1049.28 901.06 1071.66\" />\n <polygon\n fill=\"#3c6c90\"\n points=\"956.32 929.73 880.35 1049.28 780.56 1088.46 725.23 1109.29 841.09 956.88 956.32 929.73\" />\n <polygon\n fill=\"#2a445f\"\n points=\"999.93 921 911.78 1034.51 880.35 1049.28 956.32 929.73 999.93 921\" />\n <polygon\n fill=\"#2f567a\"\n points=\"1066 741.83 1059.73 811.84 999.93 921 956.32 929.73 841.09 956.88 832.91 957.82 667.69 998.55 590.27 1015.47 470.69 1211.06 346 1256.78 567.1 877.57 1066 741.83\" />\n <polygon\n fill=\"#3c6c90\"\n points=\"1066 693.01 1066 741.83 567.1 877.57 961.31 626.09 1035.47 664.68 1066 693.01\" />\n <polygon\n fill=\"#182f44\"\n points=\"961.31 626.09 567.1 877.57 940.14 614.9 961.31 626.09\" />\n <polygon\n fill=\"#40374f\"\n points=\"1035.47 664.68 961.31 626.09 940.14 614.9 1003.57 571.56 1035.47 664.68\" />\n <polygon\n fill=\"#444e77\"\n points=\"1318.72 563.47 1240.75 757.31 1081.79 810.12 1083.18 790.66 1318.72 563.47\" />\n <polygon\n fill=\"#11365c\"\n points=\"419.79 1252.33 248.23 1407.29 190.85 1368.4 290.75 1344.73 319.47 1293.93 419.79 1252.33\" />\n <polygon\n fill=\"#594b6e\"\n points=\"1318.72 563.47 1149.33 499.16 1140.97 360.09 1292.55 435.34 1295.07 447.71 1295.08 447.72 1298.63 465.1 1318.72 563.47\" />\n <polygon\n fill=\"#653f54\"\n points=\"1318.72 563.47 1083.18 790.66 1076.63 609.03 1318.72 563.47\" />\n <polygon\n fill=\"#6d1f44\"\n points=\"1356.16 554.73 1320.36 490.59 1346.71 505.52 1356.16 554.73\" />\n <polygon\n fill=\"#aeb9bc\"\n points=\"1292.55 435.34 1140.97 360.09 1236.58 373.98 1292.55 435.34\" />\n <polygon\n fill=\"#541730\"\n points=\"1242.39 201.49 1212.39 225.78 1163.33 267.92 1023.2 236.73 1242.39 201.49\" />\n <polygon\n fill=\"#d8dee3\"\n points=\"1379.25 231.73 1212.4 225.78 1242.39 201.49 1325.63 194.03 1379.25 231.73\" />\n <polygon\n fill=\"#7a929c\"\n points=\"1696.44 241.3 1379.25 231.73 1325.63 194.03 1696.44 241.3\" />\n <polygon\n fill=\"#d8dee3\"\n points=\"1387.06 154.34 1325.63 194.03 1293.1 167.67 1280.37 157.13 1261.66 141.64 1358.76 172.62 1387.06 154.34\" />\n <polygon\n fill=\"#628ead\"\n points=\"1387.06 154.34 1358.76 172.62 1261.66 141.64 1369.61 147.98 1387.06 154.34\" />\n <polygon\n fill=\"#285175\"\n points=\"1325.63 194.03 1242.39 201.49 1255.66 186.41 1280.37 157.13 1293.1 167.67 1325.63 194.03\" />\n <polygon\n fill=\"#2a445f\"\n points=\"1280.37 157.13 1255.66 186.41 1242.39 201.49 1073.91 126.23 1261.66 141.64 1280.37 157.13\" />\n </g>\n <polygon\n fill=\"#8b9da8\"\n points=\"628.44 1404.11 546.3 1373.32 614.27 1366.96 628.44 1404.11\" />\n <polygon\n fill=\"#8b9da8\"\n points=\"937.42 1600.66 979.31 1576.77 1038.72 1696.39 992.67 1698.78 937.42 1600.66\" />\n </svg>\n `,\n})\nexport class EagamiIconComponent extends IconComponentBase {\n static readonly slug = 'eagami';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = ['logo', 'mark'];\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { EagamiIconComponent } from '../icons/eagami.component';\n\n/** Variant of the wordmark: 1 is \"eagami\", 2 is \"handcrafted by eagami\", 3 is \"eagami\" with tagline. */\nexport type EagamiWordmarkVariant = 1 | 2 | 3;\n/** Layout of the wordmark: `stacked` for multi-line, `inline` for a single line with em-dash separators. */\nexport type EagamiWordmarkLayout = 'stacked' | 'inline';\n\n/**\n * Branded eagami wordmark logo. Scales continuously from a single `size`\n * pixel value and supports three content variants paired with stacked or\n * inline layouts.\n */\n@Component({\n selector: 'ea-eagami-wordmark',\n imports: [EagamiIconComponent],\n templateUrl: './eagami-wordmark.component.html',\n styleUrl: './eagami-wordmark.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[style.--_size]': 'size()',\n },\n})\nexport class EagamiWordmarkComponent {\n protected readonly i18n = inject(EagamiI18nService);\n\n /**\n * The wordmark variant to render. `4` is accepted as a backwards-compatible\n * alias for `3` after the original \"eagami design system\" variant (the old\n * `3`) was retired in v1.3.0; it renders identically to `3` and will be\n * removed in v2.0.0.\n */\n readonly variant = input<EagamiWordmarkVariant | 4>(1);\n readonly layout = input<EagamiWordmarkLayout>('stacked');\n readonly size = input<number>(32);\n\n /* Collapse the deprecated `4` alias to `3` once so every downstream computed\n can switch on `EagamiWordmarkVariant` without re-handling the alias. */\n private readonly resolvedVariant = computed<EagamiWordmarkVariant>(() => {\n const v = this.variant();\n return v === 4 ? 3 : v;\n });\n\n protected readonly showOverline = computed(() => this.resolvedVariant() === 2);\n\n protected readonly showTagline = computed(() => this.resolvedVariant() === 3);\n\n protected readonly brandText = computed(() => 'eagami');\n\n // The brand name itself stays untranslated; only the descriptive overline\n // and tagline localize.\n protected readonly ariaLabel = computed(() => {\n const messages = this.i18n.messages().wordmark;\n switch (this.resolvedVariant()) {\n case 1:\n return 'eagami';\n case 2:\n return `${messages.overline} eagami`;\n case 3:\n return `eagami — ${messages.tagline}`;\n }\n });\n}\n","<a\n class=\"ea-eagami-wordmark\"\n [class.ea-eagami-wordmark--inline]=\"layout() === 'inline'\"\n href=\"https://eagami.com\"\n target=\"_blank\"\n rel=\"noopener\"\n [attr.aria-label]=\"ariaLabel()\">\n <ea-icon-eagami\n class=\"ea-eagami-wordmark__logo\"\n aria-hidden=\"true\" />\n\n <span class=\"ea-eagami-wordmark__text\">\n @if (showOverline()) {\n <span class=\"ea-eagami-wordmark__overline\">\n {{ i18n.messages().wordmark.overline }}\n </span>\n }\n <span class=\"ea-eagami-wordmark__brand\">{{ brandText() }}</span>\n @if (showTagline()) {\n @if (layout() === 'inline') {\n <span\n class=\"ea-eagami-wordmark__separator\"\n aria-hidden=\"true\">\n —\n </span>\n }\n <span class=\"ea-eagami-wordmark__tagline\">\n {{ i18n.messages().wordmark.tagline }}\n </span>\n }\n </span>\n</a>\n","import { NgClass } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\n\n/** Visual size of the empty-state block. */\nexport type EmptyStateSize = 'sm' | 'md' | 'lg';\n/** Heading level used for the title so it fits the surrounding document outline. */\nexport type EmptyStateHeadingLevel = 'h2' | 'h3' | 'h4' | 'h5' | 'h6';\n\n/**\n * Pattern for \"no results\" or \"nothing here yet\" screens. Combines an\n * optional title and description with `[slot=media]` (icon or illustration)\n * and `[slot=actions]` (follow-up buttons) content slots.\n */\n@Component({\n selector: 'ea-empty-state',\n templateUrl: './empty-state.component.html',\n styleUrl: './empty-state.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n})\nexport class EmptyStateComponent {\n readonly title = input<string | undefined>(undefined);\n readonly description = input<string | undefined>(undefined);\n readonly size = input<EmptyStateSize>('md');\n readonly headingLevel = input<EmptyStateHeadingLevel>('h2');\n\n readonly hostClasses = computed(() => ({\n [`ea-empty-state--${this.size()}`]: true,\n }));\n}\n","<div\n class=\"ea-empty-state\"\n [ngClass]=\"hostClasses()\">\n <div class=\"ea-empty-state__media\">\n <ng-content select=\"[slot=media]\" />\n </div>\n\n @if (title()) {\n @switch (headingLevel()) {\n @case ('h2') {\n <h2 class=\"ea-empty-state__title\">{{ title() }}</h2>\n }\n @case ('h3') {\n <h3 class=\"ea-empty-state__title\">{{ title() }}</h3>\n }\n @case ('h4') {\n <h4 class=\"ea-empty-state__title\">{{ title() }}</h4>\n }\n @case ('h5') {\n <h5 class=\"ea-empty-state__title\">{{ title() }}</h5>\n }\n @case ('h6') {\n <h6 class=\"ea-empty-state__title\">{{ title() }}</h6>\n }\n @default {\n <h2 class=\"ea-empty-state__title\">{{ title() }}</h2>\n }\n }\n }\n\n @if (description()) {\n <p class=\"ea-empty-state__description\">{{ description() }}</p>\n }\n\n <div class=\"ea-empty-state__actions\">\n <ng-content select=\"[slot=actions]\" />\n </div>\n</div>\n","import { IconComponentType } from './icon-category';\n\n/**\n * Casing overrides for icons whose canonical brand or acronym name doesn't\n * match a naive `slug -> Title Case` derivation. Add new entries here so every\n * consumer (the reference page, the sandbox, downstream catalogues) renders\n * the same label.\n */\nconst DISPLAY_NAME_OVERRIDES: Record<string, string> = {\n codepen: 'CodePen',\n codesandbox: 'CodeSandbox',\n cpu: 'CPU',\n github: 'GitHub',\n 'github-2': 'GitHub 2',\n gitlab: 'GitLab',\n linkedin: 'LinkedIn',\n 'linkedin-2': 'LinkedIn 2',\n mongodb: 'MongoDB',\n npm: 'npm',\n paypal: 'PayPal',\n rss: 'RSS',\n tv: 'TV',\n 'x-twitter': 'X (Twitter)',\n youtube: 'YouTube',\n 'youtube-2': 'YouTube 2',\n};\n\n/**\n * Resolves an icon's human-readable display name. Pass the component class\n * (`iconDisplayName(GithubIconComponent)` -> `'GitHub'`) or its slug\n * (`iconDisplayName('github')` -> `'GitHub'`). Falls back to a generic\n * `slug -> Title Case` derivation when no override is defined.\n */\nexport function iconDisplayName(iconOrSlug: IconComponentType | string): string {\n const slug = typeof iconOrSlug === 'string' ? iconOrSlug : iconOrSlug.slug;\n return DISPLAY_NAME_OVERRIDES[slug] ?? toTitleCase(slug);\n}\n\nfunction toTitleCase(slug: string): string {\n return slug\n .split('-')\n .map(word => word.charAt(0).toUpperCase() + word.slice(1))\n .join(' ');\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-activity',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"22 12 18 12 15 21 9 3 6 12 2 12\" />\n </svg>\n `,\n})\nexport class ActivityIconComponent extends IconComponentBase {\n static readonly slug = 'activity';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'activity',\n 'pulse',\n 'heartbeat',\n 'health',\n 'fitness',\n 'activité',\n 'pouls',\n 'actividad',\n 'pulso',\n 'δραστηριότητα',\n 'παλμός',\n 'aktywność',\n 'puls',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-airplay',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M5 17H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-1\" />\n <polygon points=\"12 15 17 21 7 21 12 15\" />\n </svg>\n `,\n})\nexport class AirplayIconComponent extends IconComponentBase {\n static readonly slug = 'airplay';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'airplay',\n 'cast',\n 'stream',\n 'mirror',\n 'screen',\n 'diffusion',\n 'transmisión',\n 'μετάδοση',\n 'transmisja',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-alert-octagon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon\n points=\"7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2\" />\n <line\n x1=\"12\"\n y1=\"8\"\n x2=\"12\"\n y2=\"12\" />\n <line\n x1=\"12\"\n y1=\"16\"\n x2=\"12.01\"\n y2=\"16\" />\n </svg>\n `,\n})\nexport class AlertOctagonIconComponent extends IconComponentBase {\n static readonly slug = 'alert-octagon';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'alert-octagon',\n 'alert',\n 'octagon',\n 'warning',\n 'stop',\n 'danger',\n 'alerte',\n 'octogone',\n 'alerta',\n 'octágono',\n 'ειδοποίηση',\n 'οκτάγωνο',\n 'alarm',\n 'ostrzeżenie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-alert-triangle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z\" />\n <line\n x1=\"12\"\n y1=\"9\"\n x2=\"12\"\n y2=\"13\" />\n <line\n x1=\"12\"\n y1=\"17\"\n x2=\"12.01\"\n y2=\"17\" />\n </svg>\n `,\n})\nexport class AlertTriangleIconComponent extends IconComponentBase {\n static readonly slug = 'alert-triangle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'alert-triangle',\n 'alert',\n 'triangle',\n 'warning',\n 'caution',\n 'danger',\n 'alerte',\n 'triángulo',\n 'alerta',\n 'ειδοποίηση',\n 'τρίγωνο',\n 'alarm',\n 'ostrzeżenie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-align-center',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"18\"\n y1=\"10\"\n x2=\"6\"\n y2=\"10\" />\n <line\n x1=\"21\"\n y1=\"6\"\n x2=\"3\"\n y2=\"6\" />\n <line\n x1=\"21\"\n y1=\"14\"\n x2=\"3\"\n y2=\"14\" />\n <line\n x1=\"18\"\n y1=\"18\"\n x2=\"6\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class AlignCenterIconComponent extends IconComponentBase {\n static readonly slug = 'align-center';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'align-center',\n 'align',\n 'center',\n 'centre',\n 'text',\n 'format',\n 'paragraph',\n 'centrer',\n 'centrado',\n 'στοίχιση',\n 'κέντρο',\n 'wyśrodkuj',\n 'środek',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-align-justify',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"21\"\n y1=\"10\"\n x2=\"3\"\n y2=\"10\" />\n <line\n x1=\"21\"\n y1=\"6\"\n x2=\"3\"\n y2=\"6\" />\n <line\n x1=\"21\"\n y1=\"14\"\n x2=\"3\"\n y2=\"14\" />\n <line\n x1=\"21\"\n y1=\"18\"\n x2=\"3\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class AlignJustifyIconComponent extends IconComponentBase {\n static readonly slug = 'align-justify';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'align-justify',\n 'align',\n 'justify',\n 'text',\n 'format',\n 'paragraph',\n 'justifier',\n 'justificar',\n 'πλήρης στοίχιση',\n 'wyjustuj',\n 'justowanie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-align-left',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"17\"\n y1=\"10\"\n x2=\"3\"\n y2=\"10\" />\n <line\n x1=\"21\"\n y1=\"6\"\n x2=\"3\"\n y2=\"6\" />\n <line\n x1=\"21\"\n y1=\"14\"\n x2=\"3\"\n y2=\"14\" />\n <line\n x1=\"17\"\n y1=\"18\"\n x2=\"3\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class AlignLeftIconComponent extends IconComponentBase {\n static readonly slug = 'align-left';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'align-left',\n 'align',\n 'left',\n 'text',\n 'format',\n 'paragraph',\n 'gauche',\n 'izquierda',\n 'αριστερά',\n 'στοίχιση',\n 'lewo',\n 'wyrównaj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-align-right',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"21\"\n y1=\"10\"\n x2=\"7\"\n y2=\"10\" />\n <line\n x1=\"21\"\n y1=\"6\"\n x2=\"3\"\n y2=\"6\" />\n <line\n x1=\"21\"\n y1=\"14\"\n x2=\"3\"\n y2=\"14\" />\n <line\n x1=\"21\"\n y1=\"18\"\n x2=\"7\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class AlignRightIconComponent extends IconComponentBase {\n static readonly slug = 'align-right';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'align-right',\n 'align',\n 'right',\n 'text',\n 'format',\n 'paragraph',\n 'droite',\n 'derecha',\n 'δεξιά',\n 'στοίχιση',\n 'prawo',\n 'wyrównaj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-anchor',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"5\"\n r=\"3\" />\n <line\n x1=\"12\"\n y1=\"22\"\n x2=\"12\"\n y2=\"8\" />\n <path d=\"M5 12H2a10 10 0 0 0 20 0h-3\" />\n </svg>\n `,\n})\nexport class AnchorIconComponent extends IconComponentBase {\n static readonly slug = 'anchor';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'anchor',\n 'ship',\n 'boat',\n 'marine',\n 'ancre',\n 'bateau',\n 'ancla',\n 'barco',\n 'άγκυρα',\n 'πλοίο',\n 'kotwica',\n 'statek',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-aperture',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"14.31\"\n y1=\"8\"\n x2=\"20.05\"\n y2=\"17.94\" />\n <line\n x1=\"9.69\"\n y1=\"8\"\n x2=\"21.17\"\n y2=\"8\" />\n <line\n x1=\"7.38\"\n y1=\"12\"\n x2=\"13.12\"\n y2=\"2.06\" />\n <line\n x1=\"9.69\"\n y1=\"16\"\n x2=\"3.95\"\n y2=\"6.06\" />\n <line\n x1=\"14.31\"\n y1=\"16\"\n x2=\"2.83\"\n y2=\"16\" />\n <line\n x1=\"16.62\"\n y1=\"12\"\n x2=\"10.88\"\n y2=\"21.94\" />\n </svg>\n `,\n})\nexport class ApertureIconComponent extends IconComponentBase {\n static readonly slug = 'aperture';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'aperture',\n 'camera',\n 'lens',\n 'photo',\n 'photography',\n 'ouverture',\n 'objectif',\n 'apertura',\n 'lente',\n 'διάφραγμα',\n 'φακός',\n 'przysłona',\n 'obiektyw',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-archive',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"21 8 21 21 3 21 3 8\" />\n <rect\n x=\"1\"\n y=\"3\"\n width=\"22\"\n height=\"5\" />\n <line\n x1=\"10\"\n y1=\"12\"\n x2=\"14\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class ArchiveIconComponent extends IconComponentBase {\n static readonly slug = 'archive';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'archive',\n 'storage',\n 'box',\n 'save',\n 'backup',\n 'archiver',\n 'archivar',\n 'almacenar',\n 'αρχείο',\n 'αρχειοθέτηση',\n 'archiwum',\n 'archiwizuj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-down-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <polyline points=\"8 12 12 16 16 12\" />\n <line\n x1=\"12\"\n y1=\"8\"\n x2=\"12\"\n y2=\"16\" />\n </svg>\n `,\n})\nexport class ArrowDownCircleIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-down-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-down-circle',\n 'arrow',\n 'down',\n 'circle',\n 'south',\n 'descend',\n 'flèche',\n 'bas',\n 'flecha',\n 'abajo',\n 'βέλος',\n 'κάτω',\n 'strzałka',\n 'dół',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-down-left',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"17\"\n y1=\"7\"\n x2=\"7\"\n y2=\"17\" />\n <polyline points=\"17 17 7 17 7 7\" />\n </svg>\n `,\n})\nexport class ArrowDownLeftIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-down-left';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-down-left',\n 'arrow',\n 'down',\n 'left',\n 'southwest',\n 'flèche',\n 'bas',\n 'gauche',\n 'flecha',\n 'abajo',\n 'izquierda',\n 'βέλος',\n 'κάτω',\n 'αριστερά',\n 'strzałka',\n 'dół',\n 'lewo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-down-right',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"7\"\n y1=\"7\"\n x2=\"17\"\n y2=\"17\" />\n <polyline points=\"17 7 17 17 7 17\" />\n </svg>\n `,\n})\nexport class ArrowDownRightIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-down-right';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-down-right',\n 'arrow',\n 'down',\n 'right',\n 'southeast',\n 'flèche',\n 'bas',\n 'droite',\n 'flecha',\n 'abajo',\n 'derecha',\n 'βέλος',\n 'κάτω',\n 'δεξιά',\n 'strzałka',\n 'dół',\n 'prawo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-left-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <polyline points=\"12 8 8 12 12 16\" />\n <line\n x1=\"16\"\n y1=\"12\"\n x2=\"8\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class ArrowLeftCircleIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-left-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-left-circle',\n 'arrow',\n 'left',\n 'circle',\n 'west',\n 'back',\n 'previous',\n 'flèche',\n 'gauche',\n 'flecha',\n 'izquierda',\n 'βέλος',\n 'αριστερά',\n 'strzałka',\n 'lewo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-left',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"19\"\n y1=\"12\"\n x2=\"5\"\n y2=\"12\" />\n <polyline points=\"12 19 5 12 12 5\" />\n </svg>\n `,\n})\nexport class ArrowLeftIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-left';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-left',\n 'arrow',\n 'left',\n 'west',\n 'back',\n 'previous',\n 'flèche',\n 'gauche',\n 'flecha',\n 'izquierda',\n 'βέλος',\n 'αριστερά',\n 'strzałka',\n 'lewo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-right-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <polyline points=\"12 16 16 12 12 8\" />\n <line\n x1=\"8\"\n y1=\"12\"\n x2=\"16\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class ArrowRightCircleIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-right-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-right-circle',\n 'arrow',\n 'right',\n 'circle',\n 'east',\n 'forward',\n 'next',\n 'flèche',\n 'droite',\n 'flecha',\n 'derecha',\n 'βέλος',\n 'δεξιά',\n 'strzałka',\n 'prawo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-right',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"5\"\n y1=\"12\"\n x2=\"19\"\n y2=\"12\" />\n <polyline points=\"12 5 19 12 12 19\" />\n </svg>\n `,\n})\nexport class ArrowRightIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-right';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-right',\n 'arrow',\n 'right',\n 'east',\n 'forward',\n 'next',\n 'flèche',\n 'droite',\n 'flecha',\n 'derecha',\n 'βέλος',\n 'δεξιά',\n 'strzałka',\n 'prawo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-up-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <polyline points=\"16 12 12 8 8 12\" />\n <line\n x1=\"12\"\n y1=\"16\"\n x2=\"12\"\n y2=\"8\" />\n </svg>\n `,\n})\nexport class ArrowUpCircleIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-up-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-up-circle',\n 'arrow',\n 'up',\n 'circle',\n 'north',\n 'ascend',\n 'flèche',\n 'haut',\n 'flecha',\n 'arriba',\n 'βέλος',\n 'πάνω',\n 'strzałka',\n 'góra',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-up-left',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"17\"\n y1=\"17\"\n x2=\"7\"\n y2=\"7\" />\n <polyline points=\"7 17 7 7 17 7\" />\n </svg>\n `,\n})\nexport class ArrowUpLeftIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-up-left';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-up-left',\n 'arrow',\n 'up',\n 'left',\n 'northwest',\n 'flèche',\n 'haut',\n 'gauche',\n 'flecha',\n 'arriba',\n 'izquierda',\n 'βέλος',\n 'πάνω',\n 'αριστερά',\n 'strzałka',\n 'góra',\n 'lewo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-arrow-up-right',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"7\"\n y1=\"17\"\n x2=\"17\"\n y2=\"7\" />\n <polyline points=\"7 7 17 7 17 17\" />\n </svg>\n `,\n})\nexport class ArrowUpRightIconComponent extends IconComponentBase {\n static readonly slug = 'arrow-up-right';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'arrow-up-right',\n 'arrow',\n 'up',\n 'right',\n 'northeast',\n 'flèche',\n 'haut',\n 'droite',\n 'flecha',\n 'arriba',\n 'derecha',\n 'βέλος',\n 'πάνω',\n 'δεξιά',\n 'strzałka',\n 'góra',\n 'prawo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-at-sign',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"4\" />\n <path d=\"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-3.92 7.94\" />\n </svg>\n `,\n})\nexport class AtSignIconComponent extends IconComponentBase {\n static readonly slug = 'at-sign';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'at-sign',\n 'at',\n 'sign',\n 'email',\n 'mention',\n 'arobase',\n 'arroba',\n 'παπάκι',\n 'małpa',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-award',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"8\"\n r=\"7\" />\n <polyline points=\"8.21 13.89 7 23 12 20 17 23 15.79 13.88\" />\n </svg>\n `,\n})\nexport class AwardIconComponent extends IconComponentBase {\n static readonly slug = 'award';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'award',\n 'medal',\n 'prize',\n 'trophy',\n 'achievement',\n 'badge',\n 'récompense',\n 'médaille',\n 'premio',\n 'medalla',\n 'βραβείο',\n 'μετάλλιο',\n 'nagroda',\n 'medal',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-bar-chart-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"18\"\n y1=\"20\"\n x2=\"18\"\n y2=\"10\" />\n <line\n x1=\"12\"\n y1=\"20\"\n x2=\"12\"\n y2=\"4\" />\n <line\n x1=\"6\"\n y1=\"20\"\n x2=\"6\"\n y2=\"14\" />\n </svg>\n `,\n})\nexport class BarChart2IconComponent extends IconComponentBase {\n static readonly slug = 'bar-chart-2';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'bar-chart-2',\n 'bar',\n 'chart',\n '2',\n 'graph',\n 'statistics',\n 'analytics',\n 'graphique',\n 'gráfico',\n 'estadísticas',\n 'γράφημα',\n 'στατιστικά',\n 'wykres',\n 'statystyki',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-bar-chart',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"20\"\n x2=\"12\"\n y2=\"10\" />\n <line\n x1=\"18\"\n y1=\"20\"\n x2=\"18\"\n y2=\"4\" />\n <line\n x1=\"6\"\n y1=\"20\"\n x2=\"6\"\n y2=\"16\" />\n </svg>\n `,\n})\nexport class BarChartIconComponent extends IconComponentBase {\n static readonly slug = 'bar-chart';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'bar-chart',\n 'bar',\n 'chart',\n 'graph',\n 'statistics',\n 'analytics',\n 'graphique',\n 'gráfico',\n 'estadísticas',\n 'γράφημα',\n 'στατιστικά',\n 'wykres',\n 'statystyki',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-battery-charging',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M5 18H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3.19M15 6h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-3.19\" />\n <line\n x1=\"23\"\n y1=\"13\"\n x2=\"23\"\n y2=\"11\" />\n <polyline points=\"11 6 7 12 13 12 9 18\" />\n </svg>\n `,\n})\nexport class BatteryChargingIconComponent extends IconComponentBase {\n static readonly slug = 'battery-charging';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'battery-charging',\n 'battery',\n 'charging',\n 'power',\n 'energy',\n 'charge',\n 'batterie',\n 'charge',\n 'batería',\n 'cargando',\n 'μπαταρία',\n 'φόρτιση',\n 'bateria',\n 'ładowanie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-battery',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"1\"\n y=\"6\"\n width=\"18\"\n height=\"12\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"23\"\n y1=\"13\"\n x2=\"23\"\n y2=\"11\" />\n </svg>\n `,\n})\nexport class BatteryIconComponent extends IconComponentBase {\n static readonly slug = 'battery';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'battery',\n 'power',\n 'energy',\n 'charge',\n 'batterie',\n 'batería',\n 'energía',\n 'μπαταρία',\n 'ενέργεια',\n 'bateria',\n 'energia',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-bell-off',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M13.73 21a2 2 0 0 1-3.46 0\" />\n <path d=\"M18.63 13A17.89 17.89 0 0 1 18 8\" />\n <path d=\"M6.26 6.26A5.86 5.86 0 0 0 6 8c0 7-3 9-3 9h14\" />\n <path d=\"M18 8a6 6 0 0 0-9.33-5\" />\n <line\n x1=\"1\"\n y1=\"1\"\n x2=\"23\"\n y2=\"23\" />\n </svg>\n `,\n})\nexport class BellOffIconComponent extends IconComponentBase {\n static readonly slug = 'bell-off';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'bell-off',\n 'bell',\n 'off',\n 'mute',\n 'silent',\n 'notification',\n 'silence',\n 'silencio',\n 'mudo',\n 'σίγαση',\n 'wyciszony',\n 'cisza',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-bell',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9\" />\n <path d=\"M13.73 21a2 2 0 0 1-3.46 0\" />\n </svg>\n `,\n})\nexport class BellIconComponent extends IconComponentBase {\n static readonly slug = 'bell';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'bell',\n 'notification',\n 'alert',\n 'ring',\n 'reminder',\n 'cloche',\n 'notification',\n 'campana',\n 'notificación',\n 'καμπάνα',\n 'ειδοποίηση',\n 'dzwonek',\n 'powiadomienie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-bluetooth',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"6.5 6.5 17.5 17.5 12 23 12 1 17.5 6.5 6.5 17.5\" />\n </svg>\n `,\n})\nexport class BluetoothIconComponent extends IconComponentBase {\n static readonly slug = 'bluetooth';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'bluetooth',\n 'wireless',\n 'connection',\n 'connect',\n 'sans-fil',\n 'inalámbrico',\n 'ασύρματο',\n 'σύνδεση',\n 'bezprzewodowy',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-bold',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M6 4h8a4 4 0 0 1 4 4 4 4 0 0 1-4 4H6z\" />\n <path d=\"M6 12h9a4 4 0 0 1 4 4 4 4 0 0 1-4 4H6z\" />\n </svg>\n `,\n})\nexport class BoldIconComponent extends IconComponentBase {\n static readonly slug = 'bold';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'bold',\n 'text',\n 'format',\n 'strong',\n 'weight',\n 'gras',\n 'negrita',\n 'έντονα',\n 'pogrubienie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-book-open',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z\" />\n <path d=\"M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z\" />\n </svg>\n `,\n})\nexport class BookOpenIconComponent extends IconComponentBase {\n static readonly slug = 'book-open';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'book-open',\n 'book',\n 'open',\n 'read',\n 'literature',\n 'study',\n 'livre',\n 'ouvert',\n 'libro',\n 'abierto',\n 'βιβλίο',\n 'ανοιχτό',\n 'książka',\n 'otwarta',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-book',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\" />\n <path d=\"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\" />\n </svg>\n `,\n})\nexport class BookIconComponent extends IconComponentBase {\n static readonly slug = 'book';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'book',\n 'read',\n 'library',\n 'literature',\n 'study',\n 'livre',\n 'lecture',\n 'libro',\n 'leer',\n 'βιβλίο',\n 'ανάγνωση',\n 'książka',\n 'czytać',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-bookmark',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z\" />\n </svg>\n `,\n})\nexport class BookmarkIconComponent extends IconComponentBase {\n static readonly slug = 'bookmark';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'bookmark',\n 'save',\n 'favorite',\n 'mark',\n 'tag',\n 'marque-page',\n 'favori',\n 'marcador',\n 'favorito',\n 'σελιδοδείκτης',\n 'αγαπημένο',\n 'zakładka',\n 'ulubione',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-bottle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M10 2h4v4l2 3v11a2 2 0 0 1-2 2h-4a2 2 0 0 1-2-2V9l2-3z\" />\n <line\n x1=\"9\"\n y1=\"14\"\n x2=\"15\"\n y2=\"14\" />\n </svg>\n `,\n})\nexport class BottleIconComponent extends IconComponentBase {\n static readonly slug = 'bottle';\n static readonly category: IconCategory = 'eagami';\n static readonly tags: ReadonlyArray<string> = [\n 'bottle',\n 'drink',\n 'water',\n 'beverage',\n 'container',\n 'bouteille',\n 'botella',\n 'agua',\n 'μπουκάλι',\n 'νερό',\n 'butelka',\n 'woda',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-box',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z\" />\n <polyline points=\"3.27 6.96 12 12.01 20.73 6.96\" />\n <line\n x1=\"12\"\n y1=\"22.08\"\n x2=\"12\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class BoxIconComponent extends IconComponentBase {\n static readonly slug = 'box';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'box',\n 'package',\n 'parcel',\n 'cube',\n 'container',\n 'boîte',\n 'colis',\n 'caja',\n 'paquete',\n 'κουτί',\n 'πακέτο',\n 'pudełko',\n 'paczka',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-briefcase',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"2\"\n y=\"7\"\n width=\"20\"\n height=\"14\"\n rx=\"2\"\n ry=\"2\" />\n <path d=\"M16 21V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16\" />\n </svg>\n `,\n})\nexport class BriefcaseIconComponent extends IconComponentBase {\n static readonly slug = 'briefcase';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'briefcase',\n 'work',\n 'business',\n 'job',\n 'office',\n 'mallette',\n 'travail',\n 'maletín',\n 'trabajo',\n 'χαρτοφύλακας',\n 'εργασία',\n 'teczka',\n 'praca',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-camera-off',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"1\"\n y1=\"1\"\n x2=\"23\"\n y2=\"23\" />\n <path\n d=\"M21 21H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3m3-3h6l2 3h4a2 2 0 0 1 2 2v9.34m-7.72-2.06a4 4 0 1 1-5.56-5.56\" />\n </svg>\n `,\n})\nexport class CameraOffIconComponent extends IconComponentBase {\n static readonly slug = 'camera-off';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'camera-off',\n 'camera',\n 'off',\n 'disabled',\n 'photo',\n 'mute',\n 'appareil photo',\n 'désactivé',\n 'cámara',\n 'apagado',\n 'κάμερα',\n 'απενεργοποιημένη',\n 'aparat',\n 'wyłączony',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-candle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M12 2c2 2 2 4 0 6-2-2-2-4 0-6z\" />\n <path d=\"M8 10h8v11a1 1 0 0 1-1 1H9a1 1 0 0 1-1-1z\" />\n </svg>\n `,\n})\nexport class CandleIconComponent extends IconComponentBase {\n static readonly slug = 'candle';\n static readonly category: IconCategory = 'eagami';\n static readonly tags: ReadonlyArray<string> = [\n 'candle',\n 'light',\n 'flame',\n 'wax',\n 'bougie',\n 'flamme',\n 'vela',\n 'llama',\n 'κερί',\n 'φλόγα',\n 'świeca',\n 'płomień',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-cast',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M2 16.1A5 5 0 0 1 5.9 20M2 12.05A9 9 0 0 1 9.95 20M2 8V6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-6\" />\n <line\n x1=\"2\"\n y1=\"20\"\n x2=\"2.01\"\n y2=\"20\" />\n </svg>\n `,\n})\nexport class CastIconComponent extends IconComponentBase {\n static readonly slug = 'cast';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'cast',\n 'stream',\n 'broadcast',\n 'chromecast',\n 'screen',\n 'mirror',\n 'diffusion',\n 'transmettre',\n 'transmisión',\n 'transmitir',\n 'μετάδοση',\n 'αναμετάδοση',\n 'transmisja',\n 'nadawanie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-check-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M22 11.08V12a10 10 0 1 1-5.93-9.14\" />\n <polyline points=\"22 4 12 14.01 9 11.01\" />\n </svg>\n `,\n})\nexport class CheckCircleIconComponent extends IconComponentBase {\n static readonly slug = 'check-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'check-circle',\n 'check',\n 'circle',\n 'tick',\n 'confirm',\n 'done',\n 'success',\n 'validé',\n 'coche',\n 'confirmar',\n 'éxito',\n 'επιτυχία',\n 'επιβεβαίωση',\n 'sukces',\n 'potwierdzono',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-check-square',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"9 11 12 14 22 4\" />\n <path d=\"M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11\" />\n </svg>\n `,\n})\nexport class CheckSquareIconComponent extends IconComponentBase {\n static readonly slug = 'check-square';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'check-square',\n 'check',\n 'square',\n 'tick',\n 'confirm',\n 'done',\n 'checkbox',\n 'coche',\n 'valider',\n 'marca',\n 'confirmar',\n 'τσεκ',\n 'επιβεβαίωση',\n 'zaznacz',\n 'potwierdź',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-chevron-up',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"18 15 12 9 6 15\" />\n </svg>\n `,\n})\nexport class ChevronUpIconComponent extends IconComponentBase {\n static readonly slug = 'chevron-up';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'chevron-up',\n 'chevron',\n 'up',\n 'arrow',\n 'collapse',\n 'haut',\n 'arriba',\n 'πάνω',\n 'góra',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-chevrons-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"7 13 12 18 17 13\" />\n <polyline points=\"7 6 12 11 17 6\" />\n </svg>\n `,\n})\nexport class ChevronsDownIconComponent extends IconComponentBase {\n static readonly slug = 'chevrons-down';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'chevrons-down',\n 'chevrons',\n 'down',\n 'arrow',\n 'expand',\n 'double',\n 'bas',\n 'abajo',\n 'κάτω',\n 'dół',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-chevrons-left',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"11 17 6 12 11 7\" />\n <polyline points=\"18 17 13 12 18 7\" />\n </svg>\n `,\n})\nexport class ChevronsLeftIconComponent extends IconComponentBase {\n static readonly slug = 'chevrons-left';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'chevrons-left',\n 'chevrons',\n 'left',\n 'arrow',\n 'back',\n 'previous',\n 'double',\n 'gauche',\n 'izquierda',\n 'αριστερά',\n 'lewo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-chevrons-right',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"13 17 18 12 13 7\" />\n <polyline points=\"6 17 11 12 6 7\" />\n </svg>\n `,\n})\nexport class ChevronsRightIconComponent extends IconComponentBase {\n static readonly slug = 'chevrons-right';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'chevrons-right',\n 'chevrons',\n 'right',\n 'arrow',\n 'forward',\n 'next',\n 'double',\n 'droite',\n 'derecha',\n 'δεξιά',\n 'prawo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-chevrons-up',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"17 11 12 6 7 11\" />\n <polyline points=\"17 18 12 13 7 18\" />\n </svg>\n `,\n})\nexport class ChevronsUpIconComponent extends IconComponentBase {\n static readonly slug = 'chevrons-up';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'chevrons-up',\n 'chevrons',\n 'up',\n 'arrow',\n 'collapse',\n 'double',\n 'haut',\n 'arriba',\n 'πάνω',\n 'góra',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-chrome',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"4\" />\n <line\n x1=\"21.17\"\n y1=\"8\"\n x2=\"12\"\n y2=\"8\" />\n <line\n x1=\"3.95\"\n y1=\"6.06\"\n x2=\"8.54\"\n y2=\"14\" />\n <line\n x1=\"10.88\"\n y1=\"21.94\"\n x2=\"15.46\"\n y2=\"14\" />\n </svg>\n `,\n})\nexport class ChromeIconComponent extends IconComponentBase {\n static readonly slug = 'chrome';\n static readonly category: IconCategory = 'feather';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'chrome',\n 'browser',\n 'google',\n 'web',\n 'navigateur',\n 'navegador',\n 'περιηγητής',\n 'przeglądarka',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n </svg>\n `,\n})\nexport class CircleIconComponent extends IconComponentBase {\n static readonly slug = 'circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'circle',\n 'round',\n 'oval',\n 'disc',\n 'shape',\n 'cercle',\n 'círculo',\n 'κύκλος',\n 'okrąg',\n 'koło',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-clipboard',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2\" />\n <rect\n x=\"8\"\n y=\"2\"\n width=\"8\"\n height=\"4\"\n rx=\"1\"\n ry=\"1\" />\n </svg>\n `,\n})\nexport class ClipboardIconComponent extends IconComponentBase {\n static readonly slug = 'clipboard';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'clipboard',\n 'copy',\n 'paste',\n 'notes',\n 'list',\n 'presse-papiers',\n 'portapapeles',\n 'πρόχειρο',\n 'schowek',\n 'notatki',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-clock',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <polyline points=\"12 6 12 12 16 14\" />\n </svg>\n `,\n})\nexport class ClockIconComponent extends IconComponentBase {\n static readonly slug = 'clock';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'clock',\n 'time',\n 'watch',\n 'hour',\n 'horloge',\n 'temps',\n 'reloj',\n 'tiempo',\n 'ρολόι',\n 'ώρα',\n 'zegar',\n 'czas',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-cloud-drizzle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"8\"\n y1=\"19\"\n x2=\"8\"\n y2=\"21\" />\n <line\n x1=\"8\"\n y1=\"13\"\n x2=\"8\"\n y2=\"15\" />\n <line\n x1=\"16\"\n y1=\"19\"\n x2=\"16\"\n y2=\"21\" />\n <line\n x1=\"16\"\n y1=\"13\"\n x2=\"16\"\n y2=\"15\" />\n <line\n x1=\"12\"\n y1=\"21\"\n x2=\"12\"\n y2=\"23\" />\n <line\n x1=\"12\"\n y1=\"15\"\n x2=\"12\"\n y2=\"17\" />\n <path d=\"M20 16.58A5 5 0 0 0 18 7h-1.26A8 8 0 1 0 4 15.25\" />\n </svg>\n `,\n})\nexport class CloudDrizzleIconComponent extends IconComponentBase {\n static readonly slug = 'cloud-drizzle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'cloud-drizzle',\n 'cloud',\n 'drizzle',\n 'rain',\n 'weather',\n 'shower',\n 'bruine',\n 'pluie',\n 'llovizna',\n 'ψιχάλισμα',\n 'βροχή',\n 'mżawka',\n 'deszcz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-cloud-lightning',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M19 16.9A5 5 0 0 0 18 7h-1.26a8 8 0 1 0-11.62 9\" />\n <polyline points=\"13 11 9 17 15 17 11 23\" />\n </svg>\n `,\n})\nexport class CloudLightningIconComponent extends IconComponentBase {\n static readonly slug = 'cloud-lightning';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'cloud-lightning',\n 'cloud',\n 'lightning',\n 'storm',\n 'thunder',\n 'weather',\n 'bolt',\n 'éclair',\n 'orage',\n 'relámpago',\n 'tormenta',\n 'αστραπή',\n 'καταιγίδα',\n 'błyskawica',\n 'burza',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-cloud-off',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M22.61 16.95A5 5 0 0 0 18 10h-1.26a8 8 0 0 0-7.05-6M5 5a8 8 0 0 0 4 15h9a5 5 0 0 0 1.7-.3\" />\n <line\n x1=\"1\"\n y1=\"1\"\n x2=\"23\"\n y2=\"23\" />\n </svg>\n `,\n})\nexport class CloudOffIconComponent extends IconComponentBase {\n static readonly slug = 'cloud-off';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'cloud-off',\n 'cloud',\n 'off',\n 'offline',\n 'disconnected',\n 'disabled',\n 'nuage',\n 'déconnecté',\n 'nube',\n 'desconectado',\n 'σύννεφο',\n 'εκτός σύνδεσης',\n 'chmura',\n 'wyłączony',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-cloud-rain',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"16\"\n y1=\"13\"\n x2=\"16\"\n y2=\"21\" />\n <line\n x1=\"8\"\n y1=\"13\"\n x2=\"8\"\n y2=\"21\" />\n <line\n x1=\"12\"\n y1=\"15\"\n x2=\"12\"\n y2=\"23\" />\n <path d=\"M20 16.58A5 5 0 0 0 18 7h-1.26A8 8 0 1 0 4 15.25\" />\n </svg>\n `,\n})\nexport class CloudRainIconComponent extends IconComponentBase {\n static readonly slug = 'cloud-rain';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'cloud-rain',\n 'cloud',\n 'rain',\n 'weather',\n 'shower',\n 'storm',\n 'pluie',\n 'météo',\n 'lluvia',\n 'tiempo',\n 'βροχή',\n 'καιρός',\n 'deszcz',\n 'pogoda',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-cloud-snow',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M20 17.58A5 5 0 0 0 18 8h-1.26A8 8 0 1 0 4 16.25\" />\n <line\n x1=\"8\"\n y1=\"16\"\n x2=\"8.01\"\n y2=\"16\" />\n <line\n x1=\"8\"\n y1=\"20\"\n x2=\"8.01\"\n y2=\"20\" />\n <line\n x1=\"12\"\n y1=\"18\"\n x2=\"12.01\"\n y2=\"18\" />\n <line\n x1=\"12\"\n y1=\"22\"\n x2=\"12.01\"\n y2=\"22\" />\n <line\n x1=\"16\"\n y1=\"16\"\n x2=\"16.01\"\n y2=\"16\" />\n <line\n x1=\"16\"\n y1=\"20\"\n x2=\"16.01\"\n y2=\"20\" />\n </svg>\n `,\n})\nexport class CloudSnowIconComponent extends IconComponentBase {\n static readonly slug = 'cloud-snow';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'cloud-snow',\n 'cloud',\n 'snow',\n 'weather',\n 'winter',\n 'blizzard',\n 'neige',\n 'hiver',\n 'nieve',\n 'invierno',\n 'χιόνι',\n 'χειμώνας',\n 'śnieg',\n 'zima',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-cloud',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M18 10h-1.26A8 8 0 1 0 9 20h9a5 5 0 0 0 0-10z\" />\n </svg>\n `,\n})\nexport class CloudIconComponent extends IconComponentBase {\n static readonly slug = 'cloud';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'cloud',\n 'weather',\n 'sky',\n 'storage',\n 'nuage',\n 'météo',\n 'nube',\n 'tiempo',\n 'σύννεφο',\n 'καιρός',\n 'chmura',\n 'pogoda',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-cloudflare',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M16.36 17.36a.5.5 0 0 0 .49-.6l-.34-1.6a1.97 1.97 0 0 0-1.93-1.6h-8.7a.2.2 0 0 1-.2-.27.27.27 0 0 1 .23-.18l8.78-.11a3.13 3.13 0 0 0 2.84-2.32l.36-1.37a.18.18 0 0 0 0-.08 6.27 6.27 0 0 0-12.04-.65 2.81 2.81 0 0 0-4.44 2.94 4 4 0 0 0-3.9 4 .19.19 0 0 0 .19.18Z\"\n fill=\"#F38020\" />\n <path\n d=\"M19.04 8.62a4.41 4.41 0 0 0-.78.07.14.14 0 0 0-.1.1l-.53 1.85a1.97 1.97 0 0 1-1.93 1.6l-1.84.04a.06.06 0 0 0-.04.1.27.27 0 0 0 .12.09l1.91.09a3.13 3.13 0 0 1 2.84 2.32l.13.46a.13.13 0 0 0 .13.1c2.21 0 4-1.79 4-4s-1.79-4.82-4-4.82Z\"\n fill=\"#FAAE40\" />\n </svg>\n `,\n})\nexport class CloudflareIconComponent extends IconComponentBase {\n static readonly slug = 'cloudflare';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'cloudflare',\n 'cdn',\n 'cloud',\n 'hosting',\n 'dns',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-code',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"16 18 22 12 16 6\" />\n <polyline points=\"8 6 2 12 8 18\" />\n </svg>\n `,\n})\nexport class CodeIconComponent extends IconComponentBase {\n static readonly slug = 'code';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'code',\n 'programming',\n 'developer',\n 'syntax',\n 'brackets',\n 'script',\n 'programmation',\n 'développement',\n 'código',\n 'programación',\n 'κώδικας',\n 'προγραμματισμός',\n 'kod',\n 'programowanie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-codepen',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"12 2 22 8.5 22 15.5 12 22 2 15.5 2 8.5 12 2\" />\n <line\n x1=\"12\"\n y1=\"22\"\n x2=\"12\"\n y2=\"15.5\" />\n <polyline points=\"22 8.5 12 15.5 2 8.5\" />\n <polyline points=\"2 15.5 12 8.5 22 15.5\" />\n <line\n x1=\"12\"\n y1=\"2\"\n x2=\"12\"\n y2=\"8.5\" />\n </svg>\n `,\n})\nexport class CodepenIconComponent extends IconComponentBase {\n static readonly slug = 'codepen';\n static readonly category: IconCategory = 'feather';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'codepen',\n 'code',\n 'editor',\n 'sandbox',\n 'frontend',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-codesandbox',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z\" />\n <polyline points=\"7.5 4.21 12 6.81 16.5 4.21\" />\n <polyline points=\"7.5 19.79 7.5 14.6 3 12\" />\n <polyline points=\"21 12 16.5 14.6 16.5 19.79\" />\n <polyline points=\"3.27 6.96 12 12.01 20.73 6.96\" />\n <line\n x1=\"12\"\n y1=\"22.08\"\n x2=\"12\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class CodesandboxIconComponent extends IconComponentBase {\n static readonly slug = 'codesandbox';\n static readonly category: IconCategory = 'feather';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'codesandbox',\n 'sandbox',\n 'code',\n 'editor',\n 'frontend',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-coffee',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M18 8h1a4 4 0 0 1 0 8h-1\" />\n <path d=\"M2 8h16v9a4 4 0 0 1-4 4H6a4 4 0 0 1-4-4z\" />\n <line\n x1=\"6\"\n y1=\"1\"\n x2=\"6\"\n y2=\"4\" />\n <line\n x1=\"10\"\n y1=\"1\"\n x2=\"10\"\n y2=\"4\" />\n <line\n x1=\"14\"\n y1=\"1\"\n x2=\"14\"\n y2=\"4\" />\n </svg>\n `,\n})\nexport class CoffeeIconComponent extends IconComponentBase {\n static readonly slug = 'coffee';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'coffee',\n 'drink',\n 'cup',\n 'cafe',\n 'mug',\n 'café',\n 'taza',\n 'καφές',\n 'κούπα',\n 'kawa',\n 'kubek',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-columns',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M12 3h7a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-7m0-18H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h7m0-18v18\" />\n </svg>\n `,\n})\nexport class ColumnsIconComponent extends IconComponentBase {\n static readonly slug = 'columns';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'columns',\n 'layout',\n 'split',\n 'grid',\n 'panel',\n 'colonnes',\n 'columnas',\n 'στήλες',\n 'διάταξη',\n 'kolumny',\n 'układ',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-command',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z\" />\n </svg>\n `,\n})\nexport class CommandIconComponent extends IconComponentBase {\n static readonly slug = 'command';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'command',\n 'keyboard',\n 'shortcut',\n 'cmd',\n 'mac',\n 'commande',\n 'comando',\n 'εντολή',\n 'πληκτρολόγιο',\n 'komenda',\n 'klawisz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-compass',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <polygon points=\"16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76\" />\n </svg>\n `,\n})\nexport class CompassIconComponent extends IconComponentBase {\n static readonly slug = 'compass';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'compass',\n 'navigation',\n 'direction',\n 'map',\n 'north',\n 'boussole',\n 'brújula',\n 'navegación',\n 'πυξίδα',\n 'πλοήγηση',\n 'kompas',\n 'nawigacja',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-copy',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"9\"\n y=\"9\"\n width=\"13\"\n height=\"13\"\n rx=\"2\"\n ry=\"2\" />\n <path d=\"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1\" />\n </svg>\n `,\n})\nexport class CopyIconComponent extends IconComponentBase {\n static readonly slug = 'copy';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'copy',\n 'duplicate',\n 'clone',\n 'paste',\n 'clipboard',\n 'copier',\n 'copiar',\n 'duplicar',\n 'αντιγραφή',\n 'kopiuj',\n 'duplikuj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-corner-down-left',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"9 10 4 15 9 20\" />\n <path d=\"M20 4v7a4 4 0 0 1-4 4H4\" />\n </svg>\n `,\n})\nexport class CornerDownLeftIconComponent extends IconComponentBase {\n static readonly slug = 'corner-down-left';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'corner-down-left',\n 'corner',\n 'down',\n 'left',\n 'arrow',\n 'return',\n 'enter',\n 'coin',\n 'bas',\n 'gauche',\n 'esquina',\n 'abajo',\n 'izquierda',\n 'γωνία',\n 'κάτω',\n 'αριστερά',\n 'róg',\n 'dół',\n 'lewo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-corner-down-right',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"15 10 20 15 15 20\" />\n <path d=\"M4 4v7a4 4 0 0 0 4 4h12\" />\n </svg>\n `,\n})\nexport class CornerDownRightIconComponent extends IconComponentBase {\n static readonly slug = 'corner-down-right';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'corner-down-right',\n 'corner',\n 'down',\n 'right',\n 'arrow',\n 'coin',\n 'bas',\n 'droite',\n 'esquina',\n 'abajo',\n 'derecha',\n 'γωνία',\n 'κάτω',\n 'δεξιά',\n 'róg',\n 'dół',\n 'prawo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-corner-left-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"14 15 9 20 4 15\" />\n <path d=\"M20 4h-7a4 4 0 0 0-4 4v12\" />\n </svg>\n `,\n})\nexport class CornerLeftDownIconComponent extends IconComponentBase {\n static readonly slug = 'corner-left-down';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'corner-left-down',\n 'corner',\n 'left',\n 'down',\n 'arrow',\n 'coin',\n 'gauche',\n 'bas',\n 'esquina',\n 'izquierda',\n 'abajo',\n 'γωνία',\n 'αριστερά',\n 'κάτω',\n 'róg',\n 'lewo',\n 'dół',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-corner-left-up',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"14 9 9 4 4 9\" />\n <path d=\"M20 20h-7a4 4 0 0 1-4-4V4\" />\n </svg>\n `,\n})\nexport class CornerLeftUpIconComponent extends IconComponentBase {\n static readonly slug = 'corner-left-up';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'corner-left-up',\n 'corner',\n 'left',\n 'up',\n 'arrow',\n 'coin',\n 'gauche',\n 'haut',\n 'esquina',\n 'izquierda',\n 'arriba',\n 'γωνία',\n 'αριστερά',\n 'πάνω',\n 'róg',\n 'lewo',\n 'góra',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-corner-right-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"10 15 15 20 20 15\" />\n <path d=\"M4 4h7a4 4 0 0 1 4 4v12\" />\n </svg>\n `,\n})\nexport class CornerRightDownIconComponent extends IconComponentBase {\n static readonly slug = 'corner-right-down';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'corner-right-down',\n 'corner',\n 'right',\n 'down',\n 'arrow',\n 'coin',\n 'droite',\n 'bas',\n 'esquina',\n 'derecha',\n 'abajo',\n 'γωνία',\n 'δεξιά',\n 'κάτω',\n 'róg',\n 'prawo',\n 'dół',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-corner-right-up',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"10 9 15 4 20 9\" />\n <path d=\"M4 20h7a4 4 0 0 0 4-4V4\" />\n </svg>\n `,\n})\nexport class CornerRightUpIconComponent extends IconComponentBase {\n static readonly slug = 'corner-right-up';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'corner-right-up',\n 'corner',\n 'right',\n 'up',\n 'arrow',\n 'coin',\n 'droite',\n 'haut',\n 'esquina',\n 'derecha',\n 'arriba',\n 'γωνία',\n 'δεξιά',\n 'πάνω',\n 'róg',\n 'prawo',\n 'góra',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-corner-up-left',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"9 14 4 9 9 4\" />\n <path d=\"M20 20v-7a4 4 0 0 0-4-4H4\" />\n </svg>\n `,\n})\nexport class CornerUpLeftIconComponent extends IconComponentBase {\n static readonly slug = 'corner-up-left';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'corner-up-left',\n 'corner',\n 'up',\n 'left',\n 'arrow',\n 'undo',\n 'coin',\n 'haut',\n 'gauche',\n 'esquina',\n 'arriba',\n 'izquierda',\n 'γωνία',\n 'πάνω',\n 'αριστερά',\n 'róg',\n 'góra',\n 'lewo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-corner-up-right',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"15 14 20 9 15 4\" />\n <path d=\"M4 20v-7a4 4 0 0 1 4-4h12\" />\n </svg>\n `,\n})\nexport class CornerUpRightIconComponent extends IconComponentBase {\n static readonly slug = 'corner-up-right';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'corner-up-right',\n 'corner',\n 'up',\n 'right',\n 'arrow',\n 'redo',\n 'coin',\n 'haut',\n 'droite',\n 'esquina',\n 'arriba',\n 'derecha',\n 'γωνία',\n 'πάνω',\n 'δεξιά',\n 'róg',\n 'góra',\n 'prawo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-cpu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"4\"\n y=\"4\"\n width=\"16\"\n height=\"16\"\n rx=\"2\"\n ry=\"2\" />\n <rect\n x=\"9\"\n y=\"9\"\n width=\"6\"\n height=\"6\" />\n <line\n x1=\"9\"\n y1=\"1\"\n x2=\"9\"\n y2=\"4\" />\n <line\n x1=\"15\"\n y1=\"1\"\n x2=\"15\"\n y2=\"4\" />\n <line\n x1=\"9\"\n y1=\"20\"\n x2=\"9\"\n y2=\"23\" />\n <line\n x1=\"15\"\n y1=\"20\"\n x2=\"15\"\n y2=\"23\" />\n <line\n x1=\"20\"\n y1=\"9\"\n x2=\"23\"\n y2=\"9\" />\n <line\n x1=\"20\"\n y1=\"14\"\n x2=\"23\"\n y2=\"14\" />\n <line\n x1=\"1\"\n y1=\"9\"\n x2=\"4\"\n y2=\"9\" />\n <line\n x1=\"1\"\n y1=\"14\"\n x2=\"4\"\n y2=\"14\" />\n </svg>\n `,\n})\nexport class CpuIconComponent extends IconComponentBase {\n static readonly slug = 'cpu';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'cpu',\n 'processor',\n 'chip',\n 'computer',\n 'hardware',\n 'processeur',\n 'puce',\n 'procesador',\n 'chip',\n 'επεξεργαστής',\n 'τσιπ',\n 'procesor',\n 'układ',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-credit-card',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"1\"\n y=\"4\"\n width=\"22\"\n height=\"16\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"1\"\n y1=\"10\"\n x2=\"23\"\n y2=\"10\" />\n </svg>\n `,\n})\nexport class CreditCardIconComponent extends IconComponentBase {\n static readonly slug = 'credit-card';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'credit-card',\n 'credit',\n 'card',\n 'payment',\n 'money',\n 'bank',\n 'carte',\n 'paiement',\n 'tarjeta',\n 'pago',\n 'κάρτα',\n 'πληρωμή',\n 'karta',\n 'płatność',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-crop',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M6.13 1L6 16a2 2 0 0 0 2 2h15\" />\n <path d=\"M1 6.13L16 6a2 2 0 0 1 2 2v15\" />\n </svg>\n `,\n})\nexport class CropIconComponent extends IconComponentBase {\n static readonly slug = 'crop';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'crop',\n 'image',\n 'cut',\n 'trim',\n 'edit',\n 'recadrer',\n 'rogner',\n 'recortar',\n 'περικοπή',\n 'κόψιμο',\n 'kadruj',\n 'przytnij',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-crosshair',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"22\"\n y1=\"12\"\n x2=\"18\"\n y2=\"12\" />\n <line\n x1=\"6\"\n y1=\"12\"\n x2=\"2\"\n y2=\"12\" />\n <line\n x1=\"12\"\n y1=\"6\"\n x2=\"12\"\n y2=\"2\" />\n <line\n x1=\"12\"\n y1=\"22\"\n x2=\"12\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class CrosshairIconComponent extends IconComponentBase {\n static readonly slug = 'crosshair';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'crosshair',\n 'target',\n 'aim',\n 'focus',\n 'precision',\n 'cible',\n 'mira',\n 'objetivo',\n 'στόχος',\n 'σταυρόνημα',\n 'celownik',\n 'cel',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-database',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <ellipse\n cx=\"12\"\n cy=\"5\"\n rx=\"9\"\n ry=\"3\" />\n <path d=\"M21 12c0 1.66-4 3-9 3s-9-1.34-9-3\" />\n <path d=\"M3 5v14c0 1.66 4 3 9 3s9-1.34 9-3V5\" />\n </svg>\n `,\n})\nexport class DatabaseIconComponent extends IconComponentBase {\n static readonly slug = 'database';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'database',\n 'storage',\n 'data',\n 'server',\n 'sql',\n 'base de données',\n 'données',\n 'base de datos',\n 'datos',\n 'βάση δεδομένων',\n 'δεδομένα',\n 'baza danych',\n 'dane',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-delete',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21 4H8l-7 8 7 8h13a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z\" />\n <line\n x1=\"18\"\n y1=\"9\"\n x2=\"12\"\n y2=\"15\" />\n <line\n x1=\"12\"\n y1=\"9\"\n x2=\"18\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class DeleteIconComponent extends IconComponentBase {\n static readonly slug = 'delete';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'delete',\n 'remove',\n 'erase',\n 'backspace',\n 'clear',\n 'supprimer',\n 'effacer',\n 'eliminar',\n 'borrar',\n 'διαγραφή',\n 'usuń',\n 'kasuj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-disc',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"3\" />\n </svg>\n `,\n})\nexport class DiscIconComponent extends IconComponentBase {\n static readonly slug = 'disc';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'disc',\n 'cd',\n 'dvd',\n 'record',\n 'music',\n 'album',\n 'disque',\n 'disco',\n 'δίσκος',\n 'μουσική',\n 'płyta',\n 'dysk',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-discord',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#5865F2' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M20.317 4.37a19.79 19.79 0 0 0-4.885-1.515.07.07 0 0 0-.074.034c-.21.375-.444.864-.608 1.25a18.27 18.27 0 0 0-5.487 0 12.5 12.5 0 0 0-.617-1.25.077.077 0 0 0-.075-.034A19.74 19.74 0 0 0 3.677 4.37a.07.07 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 0 0 .031.057 19.9 19.9 0 0 0 5.993 3.03.078.078 0 0 0 .084-.028 14.2 14.2 0 0 0 1.226-1.994.076.076 0 0 0-.041-.106 13.1 13.1 0 0 1-1.872-.892.077.077 0 0 1-.008-.128c.126-.094.252-.192.372-.291a.074.074 0 0 1 .078-.01c3.927 1.793 8.18 1.793 12.061 0a.074.074 0 0 1 .079.009c.12.099.246.198.373.292a.077.077 0 0 1-.006.127 12.3 12.3 0 0 1-1.873.892.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 0 0 .084.028 19.84 19.84 0 0 0 6.002-3.03.077.077 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 0 0-.031-.028ZM8.02 15.331c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418Zm7.974 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418Z\" />\n </svg>\n `,\n})\nexport class DiscordIconComponent extends IconComponentBase {\n static readonly slug = 'discord';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'discord',\n 'chat',\n 'messaging',\n 'gaming',\n 'community',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-divide-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"8\"\n y1=\"12\"\n x2=\"16\"\n y2=\"12\" />\n <line\n x1=\"12\"\n y1=\"16\"\n x2=\"12\"\n y2=\"16\" />\n <line\n x1=\"12\"\n y1=\"8\"\n x2=\"12\"\n y2=\"8\" />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n </svg>\n `,\n})\nexport class DivideCircleIconComponent extends IconComponentBase {\n static readonly slug = 'divide-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'divide-circle',\n 'divide',\n 'circle',\n 'division',\n 'math',\n 'split',\n 'diviser',\n 'dividir',\n 'matemáticas',\n 'διαίρεση',\n 'μαθηματικά',\n 'dzielenie',\n 'matematyka',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-divide-square',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"3\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"8\"\n y1=\"12\"\n x2=\"16\"\n y2=\"12\" />\n <line\n x1=\"12\"\n y1=\"16\"\n x2=\"12\"\n y2=\"16\" />\n <line\n x1=\"12\"\n y1=\"8\"\n x2=\"12\"\n y2=\"8\" />\n </svg>\n `,\n})\nexport class DivideSquareIconComponent extends IconComponentBase {\n static readonly slug = 'divide-square';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'divide-square',\n 'divide',\n 'square',\n 'division',\n 'math',\n 'split',\n 'diviser',\n 'dividir',\n 'matemáticas',\n 'διαίρεση',\n 'μαθηματικά',\n 'dzielenie',\n 'matematyka',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-divide',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"6\"\n r=\"2\" />\n <line\n x1=\"5\"\n y1=\"12\"\n x2=\"19\"\n y2=\"12\" />\n <circle\n cx=\"12\"\n cy=\"18\"\n r=\"2\" />\n </svg>\n `,\n})\nexport class DivideIconComponent extends IconComponentBase {\n static readonly slug = 'divide';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'divide',\n 'division',\n 'math',\n 'split',\n 'diviser',\n 'mathématiques',\n 'dividir',\n 'matemáticas',\n 'διαίρεση',\n 'μαθηματικά',\n 'dzielenie',\n 'matematyka',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-docker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#2496ED' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M13.983 11.078h2.119a.186.186 0 0 0 .186-.185V9.006a.186.186 0 0 0-.186-.186h-2.12a.185.185 0 0 0-.185.185v1.888c0 .102.083.185.186.185m-2.954-5.43h2.118a.186.186 0 0 0 .186-.186V3.574a.186.186 0 0 0-.186-.185h-2.118a.185.185 0 0 0-.185.185v1.888c0 .102.083.186.185.186m0 2.716h2.118a.187.187 0 0 0 .186-.186V6.29a.186.186 0 0 0-.186-.185h-2.118a.185.185 0 0 0-.185.185v1.887c0 .102.083.186.185.186m-2.93 0h2.12a.186.186 0 0 0 .184-.186V6.29a.185.185 0 0 0-.185-.185H8.1a.185.185 0 0 0-.186.185v1.887c0 .102.084.186.186.186m-2.964 0h2.119a.186.186 0 0 0 .185-.186V6.29a.185.185 0 0 0-.185-.185H5.136a.186.186 0 0 0-.186.185v1.887c0 .102.084.186.186.186m5.893 2.715h2.118a.186.186 0 0 0 .186-.185V9.006a.186.186 0 0 0-.186-.186h-2.118a.185.185 0 0 0-.185.185v1.888c0 .102.083.185.185.185m-2.93 0h2.12a.185.185 0 0 0 .184-.185V9.006a.185.185 0 0 0-.185-.186H8.1a.185.185 0 0 0-.186.186v1.887c0 .102.084.185.186.185m-2.964 0h2.119a.185.185 0 0 0 .185-.185V9.006a.185.185 0 0 0-.185-.186H5.136a.186.186 0 0 0-.186.186v1.887c0 .102.084.185.186.185m-2.92 0h2.12a.185.185 0 0 0 .184-.185V9.006a.185.185 0 0 0-.185-.186H2.216a.185.185 0 0 0-.185.186v1.887c0 .102.083.185.185.185m21.54-.077c-.066-.05-.633-.479-1.81-.479-.31 0-.624.027-.93.082-.225-1.55-1.516-2.305-1.572-2.34l-.314-.18-.205.297a4.247 4.247 0 0 0-.547 1.282c-.21.882-.082 1.71.353 2.418-.521.293-1.366.366-1.537.371H.564a.564.564 0 0 0-.563.563c-.029 1.546.232 3.07.776 4.504.622 1.582 1.55 2.747 2.755 3.46 1.353.8 3.557 1.258 6.052 1.258 1.128 0 2.255-.103 3.36-.305a14.04 14.04 0 0 0 4.378-1.594 11.985 11.985 0 0 0 2.987-2.444c1.45-1.654 2.314-3.494 2.957-5.129H24c.276 0 .521-.169.621-.426l.379-1.084-.244-.254Z\" />\n </svg>\n `,\n})\nexport class DockerIconComponent extends IconComponentBase {\n static readonly slug = 'docker';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'docker',\n 'container',\n 'devops',\n 'image',\n 'virtualization',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-dollar-sign',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"1\"\n x2=\"12\"\n y2=\"23\" />\n <path d=\"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6\" />\n </svg>\n `,\n})\nexport class DollarSignIconComponent extends IconComponentBase {\n static readonly slug = 'dollar-sign';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'dollar-sign',\n 'dollar',\n 'sign',\n 'money',\n 'currency',\n 'usd',\n 'price',\n 'argent',\n 'devise',\n 'dinero',\n 'moneda',\n 'δολάριο',\n 'χρήμα',\n 'dolar',\n 'pieniądze',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-download-cloud',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"8 17 12 21 16 17\" />\n <line\n x1=\"12\"\n y1=\"12\"\n x2=\"12\"\n y2=\"21\" />\n <path d=\"M20.88 18.09A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.29\" />\n </svg>\n `,\n})\nexport class DownloadCloudIconComponent extends IconComponentBase {\n static readonly slug = 'download-cloud';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'download-cloud',\n 'download',\n 'cloud',\n 'save',\n 'sync',\n 'télécharger',\n 'nuage',\n 'descargar',\n 'nube',\n 'λήψη',\n 'σύννεφο',\n 'pobierz',\n 'chmura',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-download',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\" />\n <polyline points=\"7 10 12 15 17 10\" />\n <line\n x1=\"12\"\n y1=\"15\"\n x2=\"12\"\n y2=\"3\" />\n </svg>\n `,\n})\nexport class DownloadIconComponent extends IconComponentBase {\n static readonly slug = 'download';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'download',\n 'save',\n 'arrow',\n 'get',\n 'install',\n 'télécharger',\n 'descargar',\n 'bajar',\n 'λήψη',\n 'κατέβασμα',\n 'pobierz',\n 'ściągnij',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-dribbble',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <path\n d=\"M8.56 2.75c4.37 6.03 6.02 9.42 8.03 17.72m2.54-15.38c-3.72 4.35-8.94 5.66-16.88 5.85m19.5 1.9c-3.5-.93-6.63-.82-8.94 0-2.58.92-5.01 2.86-7.44 6.32\" />\n </svg>\n `,\n})\nexport class DribbbleIconComponent extends IconComponentBase {\n static readonly slug = 'dribbble';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'dribbble',\n 'design',\n 'designer',\n 'portfolio',\n 'community',\n 'social',\n 'creative',\n 'basketball',\n 'ball',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-dropbox',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#0061FF' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M6 1.807 0 5.629l6 3.822 6-3.822-6-3.822Zm12 0-6 3.822 6 3.822 6-3.822-6-3.822ZM0 13.274l6 3.822 6-3.822-6-3.822-6 3.822Zm18-3.822-6 3.822 6 3.822 6-3.822-6-3.822ZM6 18.371l6 3.822 6-3.822-6-3.822-6 3.822Z\" />\n </svg>\n `,\n})\nexport class DropboxIconComponent extends IconComponentBase {\n static readonly slug = 'dropbox';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'dropbox',\n 'storage',\n 'cloud',\n 'files',\n 'sync',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-droplet',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M12 2.69l5.66 5.66a8 8 0 1 1-11.31 0z\" />\n </svg>\n `,\n})\nexport class DropletIconComponent extends IconComponentBase {\n static readonly slug = 'droplet';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'droplet',\n 'water',\n 'drop',\n 'liquid',\n 'rain',\n 'goutte',\n 'eau',\n 'gota',\n 'agua',\n 'σταγόνα',\n 'νερό',\n 'kropla',\n 'woda',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-edit-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z\" />\n </svg>\n `,\n})\nexport class Edit2IconComponent extends IconComponentBase {\n static readonly slug = 'edit-2';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'edit-2',\n 'edit',\n '2',\n 'pencil',\n 'modify',\n 'write',\n 'éditer',\n 'crayon',\n 'editar',\n 'lápiz',\n 'επεξεργασία',\n 'μολύβι',\n 'edytuj',\n 'ołówek',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-edit-3',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M12 20h9\" />\n <path d=\"M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z\" />\n </svg>\n `,\n})\nexport class Edit3IconComponent extends IconComponentBase {\n static readonly slug = 'edit-3';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'edit-3',\n 'edit',\n '3',\n 'pencil',\n 'modify',\n 'write',\n 'éditer',\n 'crayon',\n 'editar',\n 'lápiz',\n 'επεξεργασία',\n 'μολύβι',\n 'edytuj',\n 'ołówek',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-edit',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\" />\n <path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\" />\n </svg>\n `,\n})\nexport class EditIconComponent extends IconComponentBase {\n static readonly slug = 'edit';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'edit',\n 'pencil',\n 'modify',\n 'change',\n 'write',\n 'éditer',\n 'modifier',\n 'editar',\n 'modificar',\n 'επεξεργασία',\n 'τροποποίηση',\n 'edytuj',\n 'zmień',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-external-link',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\" />\n <polyline points=\"15 3 21 3 21 9\" />\n <line\n x1=\"10\"\n y1=\"14\"\n x2=\"21\"\n y2=\"3\" />\n </svg>\n `,\n})\nexport class ExternalLinkIconComponent extends IconComponentBase {\n static readonly slug = 'external-link';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'external-link',\n 'external',\n 'link',\n 'open',\n 'new',\n 'tab',\n 'lien',\n 'externe',\n 'enlace',\n 'externo',\n 'εξωτερικός',\n 'σύνδεσμος',\n 'zewnętrzny',\n 'link',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-eye-off',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24\" />\n <line\n x1=\"1\"\n y1=\"1\"\n x2=\"23\"\n y2=\"23\" />\n </svg>\n `,\n})\nexport class EyeOffIconComponent extends IconComponentBase {\n static readonly slug = 'eye-off';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'eye-off',\n 'eye',\n 'off',\n 'hide',\n 'hidden',\n 'invisible',\n 'caché',\n 'masquer',\n 'oculto',\n 'esconder',\n 'κρυφό',\n 'απόκρυψη',\n 'ukryj',\n 'niewidoczne',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-eye',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8Z\" />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"3\" />\n </svg>\n `,\n})\nexport class EyeIconComponent extends IconComponentBase {\n static readonly slug = 'eye';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'eye',\n 'view',\n 'see',\n 'visible',\n 'show',\n 'watch',\n 'œil',\n 'voir',\n 'ojo',\n 'ver',\n 'μάτι',\n 'δες',\n 'oko',\n 'pokaż',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * Facebook brand mark (Eagami brand-filled).\n *\n * @remarks\n * Up to v1.3 this design shipped as `FacebookIconComponent` at slug\n * `ea-icon-facebook`. v1.4 reassigns the canonical slug to Feather's outline\n * and moves the brand-filled mark here. Set the `brand` input to render in\n * the official brand colour.\n */\n@Component({\n selector: 'ea-icon-facebook-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#1877F2' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073\" />\n </svg>\n `,\n})\nexport class Facebook2IconComponent extends IconComponentBase {\n static readonly slug = 'facebook-2';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'facebook-2',\n 'facebook',\n 'social',\n 'meta',\n 'network',\n 'mark',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * Facebook icon (Feather outline).\n *\n * @remarks\n * Prior to v1.4 this slug rendered Eagami's brand-filled Facebook mark. v1.4\n * aligns the canonical slug with Feather Icons, so `FacebookIconComponent` now\n * renders Feather's outline. The brand-filled mark that previously shipped\n * here has moved to `<ea-icon-facebook-2>` / `Facebook2IconComponent`.\n */\n@Component({\n selector: 'ea-icon-facebook',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z\" />\n </svg>\n `,\n})\nexport class FacebookIconComponent extends IconComponentBase {\n static readonly slug = 'facebook';\n static readonly category: IconCategory = 'feather';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = ['facebook', 'social', 'meta', 'network'];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-fast-forward',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"13 19 22 12 13 5 13 19\" />\n <polygon points=\"2 19 11 12 2 5 2 19\" />\n </svg>\n `,\n})\nexport class FastForwardIconComponent extends IconComponentBase {\n static readonly slug = 'fast-forward';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'fast-forward',\n 'fast',\n 'forward',\n 'play',\n 'skip',\n 'speed',\n 'avance rapide',\n 'rápido',\n 'γρήγορη μετάβαση',\n 'μπροστά',\n 'przewiń',\n 'do przodu',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-feather',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M20.24 12.24a6 6 0 0 0-8.49-8.49L5 10.5V19h8.5z\" />\n <line\n x1=\"16\"\n y1=\"8\"\n x2=\"2\"\n y2=\"22\" />\n <line\n x1=\"17.5\"\n y1=\"15\"\n x2=\"9\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class FeatherIconComponent extends IconComponentBase {\n static readonly slug = 'feather';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'light',\n 'write',\n 'quill',\n 'plume',\n 'pluma',\n 'φτερό',\n 'πένα',\n 'pióro',\n 'lekki',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * Figma brand mark (Eagami brand-filled).\n *\n * @remarks\n * Up to v1.3 this design shipped as `FigmaIconComponent` at slug\n * `ea-icon-figma`. v1.4 reassigns the canonical slug to Feather's outline\n * and moves the brand-filled mark here. Set the `brand` input to render in\n * the official brand colour.\n */\n@Component({\n selector: 'ea-icon-figma-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M8 24c2.21 0 4-1.79 4-4v-4H8c-2.21 0-4 1.79-4 4s1.79 4 4 4Z\"\n fill=\"#0ACF83\" />\n <path\n d=\"M4 12c0-2.21 1.79-4 4-4h4v8H8c-2.21 0-4-1.79-4-4Z\"\n fill=\"#A259FF\" />\n <path\n d=\"M4 4c0-2.21 1.79-4 4-4h4v8H8C5.79 8 4 6.21 4 4Z\"\n fill=\"#F24E1E\" />\n <path\n d=\"M12 0h4c2.21 0 4 1.79 4 4s-1.79 4-4 4h-4V0Z\"\n fill=\"#FF7262\" />\n <path\n d=\"M20 12c0 2.21-1.79 4-4 4s-4-1.79-4-4 1.79-4 4-4 4 1.79 4 4Z\"\n fill=\"#1ABCFE\" />\n </svg>\n `,\n})\nexport class Figma2IconComponent extends IconComponentBase {\n static readonly slug = 'figma-2';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'figma-2',\n 'figma',\n 'design',\n 'ui',\n 'tool',\n 'mark',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * Figma icon (Feather outline).\n *\n * @remarks\n * Prior to v1.4 this slug rendered Eagami's brand-filled Figma mark. v1.4\n * aligns the canonical slug with Feather Icons, so `FigmaIconComponent` now\n * renders Feather's outline. The brand-filled mark that previously shipped\n * here has moved to `<ea-icon-figma-2>` / `Figma2IconComponent`.\n */\n@Component({\n selector: 'ea-icon-figma',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M5 5.5A3.5 3.5 0 0 1 8.5 2H12v7H8.5A3.5 3.5 0 0 1 5 5.5z\" />\n <path d=\"M12 2h3.5a3.5 3.5 0 1 1 0 7H12V2z\" />\n <path d=\"M12 12.5a3.5 3.5 0 1 1 7 0 3.5 3.5 0 1 1-7 0z\" />\n <path d=\"M5 19.5A3.5 3.5 0 0 1 8.5 16H12v3.5a3.5 3.5 0 1 1-7 0z\" />\n <path d=\"M5 12.5A3.5 3.5 0 0 1 8.5 9H12v7H8.5A3.5 3.5 0 0 1 5 12.5z\" />\n </svg>\n `,\n})\nexport class FigmaIconComponent extends IconComponentBase {\n static readonly slug = 'figma';\n static readonly category: IconCategory = 'feather';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = ['figma', 'design', 'ui', 'tool'];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-file-minus',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\" />\n <polyline points=\"14 2 14 8 20 8\" />\n <line\n x1=\"9\"\n y1=\"15\"\n x2=\"15\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class FileMinusIconComponent extends IconComponentBase {\n static readonly slug = 'file-minus';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'file-minus',\n 'file',\n 'minus',\n 'remove',\n 'delete',\n 'document',\n 'fichier',\n 'archivo',\n 'eliminar',\n 'αρχείο',\n 'αφαίρεση',\n 'plik',\n 'usuń',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-file-plus',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\" />\n <polyline points=\"14 2 14 8 20 8\" />\n <line\n x1=\"12\"\n y1=\"18\"\n x2=\"12\"\n y2=\"12\" />\n <line\n x1=\"9\"\n y1=\"15\"\n x2=\"15\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class FilePlusIconComponent extends IconComponentBase {\n static readonly slug = 'file-plus';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'file-plus',\n 'file',\n 'plus',\n 'add',\n 'new',\n 'create',\n 'document',\n 'fichier',\n 'nouveau',\n 'archivo',\n 'nuevo',\n 'αρχείο',\n 'νέο',\n 'plik',\n 'nowy',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-file-text',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\" />\n <polyline points=\"14 2 14 8 20 8\" />\n <line\n x1=\"16\"\n y1=\"13\"\n x2=\"8\"\n y2=\"13\" />\n <line\n x1=\"16\"\n y1=\"17\"\n x2=\"8\"\n y2=\"17\" />\n <polyline points=\"10 9 9 9 8 9\" />\n </svg>\n `,\n})\nexport class FileTextIconComponent extends IconComponentBase {\n static readonly slug = 'file-text';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'file-text',\n 'file',\n 'text',\n 'document',\n 'page',\n 'fichier',\n 'texte',\n 'archivo',\n 'texto',\n 'αρχείο',\n 'κείμενο',\n 'plik',\n 'tekst',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-file',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z\" />\n <polyline points=\"13 2 13 9 20 9\" />\n </svg>\n `,\n})\nexport class FileIconComponent extends IconComponentBase {\n static readonly slug = 'file';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'file',\n 'document',\n 'paper',\n 'page',\n 'fichier',\n 'document',\n 'archivo',\n 'documento',\n 'αρχείο',\n 'έγγραφο',\n 'plik',\n 'dokument',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-film',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"2\"\n y=\"2\"\n width=\"20\"\n height=\"20\"\n rx=\"2.18\"\n ry=\"2.18\" />\n <line\n x1=\"7\"\n y1=\"2\"\n x2=\"7\"\n y2=\"22\" />\n <line\n x1=\"17\"\n y1=\"2\"\n x2=\"17\"\n y2=\"22\" />\n <line\n x1=\"2\"\n y1=\"12\"\n x2=\"22\"\n y2=\"12\" />\n <line\n x1=\"2\"\n y1=\"7\"\n x2=\"7\"\n y2=\"7\" />\n <line\n x1=\"2\"\n y1=\"17\"\n x2=\"7\"\n y2=\"17\" />\n <line\n x1=\"17\"\n y1=\"17\"\n x2=\"22\"\n y2=\"17\" />\n <line\n x1=\"17\"\n y1=\"7\"\n x2=\"22\"\n y2=\"7\" />\n </svg>\n `,\n})\nexport class FilmIconComponent extends IconComponentBase {\n static readonly slug = 'film';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'film',\n 'movie',\n 'video',\n 'cinema',\n 'reel',\n 'película',\n 'cine',\n 'ταινία',\n 'σινεμά',\n 'kino',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-filter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3\" />\n </svg>\n `,\n})\nexport class FilterIconComponent extends IconComponentBase {\n static readonly slug = 'filter';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'filter',\n 'funnel',\n 'sort',\n 'refine',\n 'filtre',\n 'entonnoir',\n 'filtro',\n 'embudo',\n 'φίλτρο',\n 'χωνί',\n 'filtr',\n 'lejek',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-flag',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z\" />\n <line\n x1=\"4\"\n y1=\"22\"\n x2=\"4\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class FlagIconComponent extends IconComponentBase {\n static readonly slug = 'flag';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'flag',\n 'mark',\n 'report',\n 'country',\n 'banner',\n 'drapeau',\n 'bandera',\n 'σημαία',\n 'flaga',\n 'oznacz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-folder-minus',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z\" />\n <line\n x1=\"9\"\n y1=\"14\"\n x2=\"15\"\n y2=\"14\" />\n </svg>\n `,\n})\nexport class FolderMinusIconComponent extends IconComponentBase {\n static readonly slug = 'folder-minus';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'folder-minus',\n 'folder',\n 'minus',\n 'remove',\n 'delete',\n 'directory',\n 'dossier',\n 'supprimer',\n 'carpeta',\n 'eliminar',\n 'φάκελος',\n 'αφαίρεση',\n 'usuń',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-folder-plus',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z\" />\n <line\n x1=\"12\"\n y1=\"11\"\n x2=\"12\"\n y2=\"17\" />\n <line\n x1=\"9\"\n y1=\"14\"\n x2=\"15\"\n y2=\"14\" />\n </svg>\n `,\n})\nexport class FolderPlusIconComponent extends IconComponentBase {\n static readonly slug = 'folder-plus';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'folder-plus',\n 'folder',\n 'plus',\n 'add',\n 'new',\n 'create',\n 'directory',\n 'dossier',\n 'nouveau',\n 'carpeta',\n 'nuevo',\n 'φάκελος',\n 'νέο',\n 'nowy',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-folder',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z\" />\n </svg>\n `,\n})\nexport class FolderIconComponent extends IconComponentBase {\n static readonly slug = 'folder';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'folder',\n 'directory',\n 'files',\n 'storage',\n 'dossier',\n 'répertoire',\n 'carpeta',\n 'directorio',\n 'φάκελος',\n 'κατάλογος',\n 'folder',\n 'katalog',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-framer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M5 16V9h14V2H5l14 14h-7m-7 0l7 7v-7m-7 0h7\" />\n </svg>\n `,\n})\nexport class FramerIconComponent extends IconComponentBase {\n static readonly slug = 'framer';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'framer',\n 'design',\n 'prototype',\n 'ui',\n 'tool',\n 'animation',\n 'motion',\n 'web',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-frown',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <path d=\"M16 16s-1.5-2-4-2-4 2-4 2\" />\n <line\n x1=\"9\"\n y1=\"9\"\n x2=\"9.01\"\n y2=\"9\" />\n <line\n x1=\"15\"\n y1=\"9\"\n x2=\"15.01\"\n y2=\"9\" />\n </svg>\n `,\n})\nexport class FrownIconComponent extends IconComponentBase {\n static readonly slug = 'frown';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'frown',\n 'sad',\n 'unhappy',\n 'emoji',\n 'face',\n 'triste',\n 'mécontent',\n 'enfadado',\n 'cara',\n 'λυπημένος',\n 'πρόσωπο',\n 'smutny',\n 'twarz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-gift',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"20 12 20 22 4 22 4 12\" />\n <rect\n x=\"2\"\n y=\"7\"\n width=\"20\"\n height=\"5\" />\n <line\n x1=\"12\"\n y1=\"22\"\n x2=\"12\"\n y2=\"7\" />\n <path d=\"M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z\" />\n <path d=\"M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z\" />\n </svg>\n `,\n})\nexport class GiftIconComponent extends IconComponentBase {\n static readonly slug = 'gift';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'gift',\n 'present',\n 'birthday',\n 'box',\n 'reward',\n 'cadeau',\n 'regalo',\n 'sorpresa',\n 'δώρο',\n 'έκπληξη',\n 'prezent',\n 'podarunek',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-git-branch',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"6\"\n y1=\"3\"\n x2=\"6\"\n y2=\"15\" />\n <circle\n cx=\"18\"\n cy=\"6\"\n r=\"3\" />\n <circle\n cx=\"6\"\n cy=\"18\"\n r=\"3\" />\n <path d=\"M18 9a9 9 0 0 1-9 9\" />\n </svg>\n `,\n})\nexport class GitBranchIconComponent extends IconComponentBase {\n static readonly slug = 'git-branch';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'git-branch',\n 'git',\n 'branch',\n 'version',\n 'control',\n 'fork',\n 'branche',\n 'rama',\n 'κλάδος',\n 'gałąź',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-git-commit',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"4\" />\n <line\n x1=\"1.05\"\n y1=\"12\"\n x2=\"7\"\n y2=\"12\" />\n <line\n x1=\"17.01\"\n y1=\"12\"\n x2=\"22.96\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class GitCommitIconComponent extends IconComponentBase {\n static readonly slug = 'git-commit';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'git-commit',\n 'git',\n 'commit',\n 'version',\n 'control',\n 'change',\n 'commit',\n 'cambio',\n 'υποβολή',\n 'commit',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-git-merge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"18\"\n cy=\"18\"\n r=\"3\" />\n <circle\n cx=\"6\"\n cy=\"6\"\n r=\"3\" />\n <path d=\"M6 21V9a9 9 0 0 0 9 9\" />\n </svg>\n `,\n})\nexport class GitMergeIconComponent extends IconComponentBase {\n static readonly slug = 'git-merge';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'git-merge',\n 'git',\n 'merge',\n 'version',\n 'control',\n 'combine',\n 'fusion',\n 'fusionner',\n 'fusión',\n 'συγχώνευση',\n 'scalanie',\n 'merge',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-git-pull-request',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"18\"\n cy=\"18\"\n r=\"3\" />\n <circle\n cx=\"6\"\n cy=\"6\"\n r=\"3\" />\n <path d=\"M13 6h3a2 2 0 0 1 2 2v7\" />\n <line\n x1=\"6\"\n y1=\"9\"\n x2=\"6\"\n y2=\"21\" />\n </svg>\n `,\n})\nexport class GitPullRequestIconComponent extends IconComponentBase {\n static readonly slug = 'git-pull-request';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'git-pull-request',\n 'git',\n 'pull',\n 'request',\n 'pr',\n 'version',\n 'control',\n 'review',\n 'demande',\n 'solicitud',\n 'αίτημα',\n 'prośba',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * GitHub brand mark (Eagami brand-filled).\n *\n * @remarks\n * Up to v1.3 this design shipped as `GithubIconComponent` at slug\n * `ea-icon-github`. v1.4 reassigns the canonical slug to Feather's outline\n * and moves the brand-filled mark here. Set the `brand` input to render in\n * the official brand colour.\n */\n@Component({\n selector: 'ea-icon-github-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#181717' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12\" />\n </svg>\n `,\n})\nexport class Github2IconComponent extends IconComponentBase {\n static readonly slug = 'github-2';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'github-2',\n 'github',\n 'git',\n 'repository',\n 'repo',\n 'source code',\n 'version control',\n 'mark',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * GitHub icon (Feather outline).\n *\n * @remarks\n * Prior to v1.4 this slug rendered Eagami's brand-filled GitHub mark. v1.4\n * aligns the canonical slug with Feather Icons, so `GithubIconComponent` now\n * renders Feather's outline. The brand-filled mark that previously shipped\n * here has moved to `<ea-icon-github-2>` / `Github2IconComponent`.\n */\n@Component({\n selector: 'ea-icon-github',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22\" />\n </svg>\n `,\n})\nexport class GithubIconComponent extends IconComponentBase {\n static readonly slug = 'github';\n static readonly category: IconCategory = 'feather';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'github',\n 'git',\n 'repository',\n 'repo',\n 'source code',\n 'version control',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-gitlab',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#FC6D26' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M22.65 14.39L12 22.13 1.35 14.39a.84.84 0 0 1-.3-.94l1.22-3.78 2.44-7.51A.42.42 0 0 1 4.82 2a.43.43 0 0 1 .58 0 .42.42 0 0 1 .11.18l2.44 7.49h8.1l2.44-7.51A.42.42 0 0 1 18.6 2a.43.43 0 0 1 .58 0 .42.42 0 0 1 .11.18l2.44 7.51L23 13.45a.84.84 0 0 1-.35.94z\" />\n </svg>\n `,\n})\nexport class GitlabIconComponent extends IconComponentBase {\n static readonly slug = 'gitlab';\n static readonly category: IconCategory = 'feather';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'gitlab',\n 'git',\n 'repository',\n 'repo',\n 'source code',\n 'version control',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-globe',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"2\"\n y1=\"12\"\n x2=\"22\"\n y2=\"12\" />\n <path\n d=\"M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z\" />\n </svg>\n `,\n})\nexport class GlobeIconComponent extends IconComponentBase {\n static readonly slug = 'globe';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'globe',\n 'world',\n 'earth',\n 'international',\n 'language',\n 'web',\n 'monde',\n 'terre',\n 'mundo',\n 'tierra',\n 'κόσμος',\n 'γη',\n 'świat',\n 'ziemia',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-google',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92a5.06 5.06 0 0 1-2.2 3.32v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.1z\"\n fill=\"#4285F4\" />\n <path\n d=\"M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z\"\n fill=\"#34A853\" />\n <path\n d=\"M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18A10.96 10.96 0 0 0 1 12c0 1.77.42 3.45 1.18 4.93l3.66-2.84z\"\n fill=\"#FBBC05\" />\n <path\n d=\"M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z\"\n fill=\"#EA4335\" />\n </svg>\n `,\n})\nexport class GoogleIconComponent extends IconComponentBase {\n static readonly slug = 'google';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = ['google', 'search', 'web'];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-grid',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"3\"\n width=\"7\"\n height=\"7\" />\n <rect\n x=\"14\"\n y=\"3\"\n width=\"7\"\n height=\"7\" />\n <rect\n x=\"14\"\n y=\"14\"\n width=\"7\"\n height=\"7\" />\n <rect\n x=\"3\"\n y=\"14\"\n width=\"7\"\n height=\"7\" />\n </svg>\n `,\n})\nexport class GridIconComponent extends IconComponentBase {\n static readonly slug = 'grid';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'grid',\n 'layout',\n 'tiles',\n 'gallery',\n 'cells',\n 'grille',\n 'cuadrícula',\n 'πλέγμα',\n 'siatka',\n 'układ',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-hard-drive',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"22\"\n y1=\"12\"\n x2=\"2\"\n y2=\"12\" />\n <path\n d=\"M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z\" />\n <line\n x1=\"6\"\n y1=\"16\"\n x2=\"6.01\"\n y2=\"16\" />\n <line\n x1=\"10\"\n y1=\"16\"\n x2=\"10.01\"\n y2=\"16\" />\n </svg>\n `,\n})\nexport class HardDriveIconComponent extends IconComponentBase {\n static readonly slug = 'hard-drive';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'hard-drive',\n 'hard',\n 'drive',\n 'storage',\n 'disk',\n 'memory',\n 'disque dur',\n 'almacenamiento',\n 'disco duro',\n 'σκληρός δίσκος',\n 'αποθήκευση',\n 'dysk twardy',\n 'pamięć',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-hash',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"4\"\n y1=\"9\"\n x2=\"20\"\n y2=\"9\" />\n <line\n x1=\"4\"\n y1=\"15\"\n x2=\"20\"\n y2=\"15\" />\n <line\n x1=\"10\"\n y1=\"3\"\n x2=\"8\"\n y2=\"21\" />\n <line\n x1=\"16\"\n y1=\"3\"\n x2=\"14\"\n y2=\"21\" />\n </svg>\n `,\n})\nexport class HashIconComponent extends IconComponentBase {\n static readonly slug = 'hash';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'hash',\n 'hashtag',\n 'pound',\n 'number',\n 'tag',\n 'dièse',\n 'numeral',\n 'almohadilla',\n 'δίεση',\n 'κατακερματισμός',\n 'krzyżyk',\n 'hasztag',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-headphones',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M3 18v-6a9 9 0 0 1 18 0v6\" />\n <path\n d=\"M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3zM3 19a2 2 0 0 0 2 2h1a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H3z\" />\n </svg>\n `,\n})\nexport class HeadphonesIconComponent extends IconComponentBase {\n static readonly slug = 'headphones';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'headphones',\n 'audio',\n 'music',\n 'listen',\n 'sound',\n 'casque',\n 'écouteurs',\n 'auriculares',\n 'ακουστικά',\n 'μουσική',\n 'słuchawki',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-heart',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z\" />\n </svg>\n `,\n})\nexport class HeartIconComponent extends IconComponentBase {\n static readonly slug = 'heart';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'heart',\n 'love',\n 'like',\n 'favorite',\n 'romance',\n 'cœur',\n 'amour',\n 'corazón',\n 'amor',\n 'καρδιά',\n 'αγάπη',\n 'serce',\n 'miłość',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-help-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <path d=\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3\" />\n <line\n x1=\"12\"\n y1=\"17\"\n x2=\"12.01\"\n y2=\"17\" />\n </svg>\n `,\n})\nexport class HelpCircleIconComponent extends IconComponentBase {\n static readonly slug = 'help-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'help-circle',\n 'help',\n 'circle',\n 'question',\n 'support',\n 'info',\n 'aide',\n 'question',\n 'ayuda',\n 'pregunta',\n 'βοήθεια',\n 'ερώτηση',\n 'pomoc',\n 'pytanie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-heptagon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon\n points=\"12 2 19.82 5.77 21.75 14.22 16.34 21.01 7.66 21.01 2.25 14.22 4.18 5.77\" />\n </svg>\n `,\n})\nexport class HeptagonIconComponent extends IconComponentBase {\n static readonly slug = 'heptagon';\n static readonly category: IconCategory = 'eagami';\n static readonly tags: ReadonlyArray<string> = [\n 'heptagon',\n 'seven-sided',\n 'polygon',\n 'shape',\n 'heptagone',\n 'heptágono',\n 'επτάγωνο',\n 'siedmiokąt',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-hexagon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"12 2 20.66 7 20.66 17 12 22 3.34 17 3.34 7\" />\n </svg>\n `,\n})\nexport class HexagonIconComponent extends IconComponentBase {\n static readonly slug = 'hexagon';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'hexagon',\n 'six-sided',\n 'polygon',\n 'shape',\n 'hexagone',\n 'hexágono',\n 'εξάγωνο',\n 'sześciokąt',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-home',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z\" />\n <polyline points=\"9 22 9 12 15 12 15 22\" />\n </svg>\n `,\n})\nexport class HomeIconComponent extends IconComponentBase {\n static readonly slug = 'home';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'home',\n 'house',\n 'main',\n 'start',\n 'dashboard',\n 'accueil',\n 'maison',\n 'inicio',\n 'casa',\n 'αρχική',\n 'σπίτι',\n 'dom',\n 'początek',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-image',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"3\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n <circle\n cx=\"8.5\"\n cy=\"8.5\"\n r=\"1.5\" />\n <polyline points=\"21 15 16 10 5 21\" />\n </svg>\n `,\n})\nexport class ImageIconComponent extends IconComponentBase {\n static readonly slug = 'image';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'image',\n 'picture',\n 'photo',\n 'gallery',\n 'visual',\n 'photo',\n 'imagen',\n 'foto',\n 'εικόνα',\n 'φωτογραφία',\n 'obraz',\n 'zdjęcie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-inbox',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"22 12 16 12 14 15 10 15 8 12 2 12\" />\n <path\n d=\"M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z\" />\n </svg>\n `,\n})\nexport class InboxIconComponent extends IconComponentBase {\n static readonly slug = 'inbox';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'inbox',\n 'mail',\n 'messages',\n 'tray',\n 'email',\n 'boîte de réception',\n 'bandeja',\n 'entrada',\n 'εισερχόμενα',\n 'skrzynka',\n 'odbiorcze',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-instagram',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"2\"\n y=\"2\"\n width=\"20\"\n height=\"20\"\n rx=\"5\"\n ry=\"5\" />\n <path d=\"M16 11.37A4 4 0 1 1 12.63 8 4 4 0 0 1 16 11.37z\" />\n <line\n x1=\"17.5\"\n y1=\"6.5\"\n x2=\"17.51\"\n y2=\"6.5\" />\n </svg>\n `,\n})\nexport class InstagramIconComponent extends IconComponentBase {\n static readonly slug = 'instagram';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'instagram',\n 'social',\n 'network',\n 'meta',\n 'photo',\n 'camera',\n 'story',\n 'reels',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-italic',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"19\"\n y1=\"4\"\n x2=\"10\"\n y2=\"4\" />\n <line\n x1=\"14\"\n y1=\"20\"\n x2=\"5\"\n y2=\"20\" />\n <line\n x1=\"15\"\n y1=\"4\"\n x2=\"9\"\n y2=\"20\" />\n </svg>\n `,\n})\nexport class ItalicIconComponent extends IconComponentBase {\n static readonly slug = 'italic';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'italic',\n 'text',\n 'format',\n 'slant',\n 'style',\n 'italique',\n 'cursiva',\n 'πλάγια',\n 'kursywa',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-key',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M21 2l-2 2m-7.61 7.61a5.5 5.5 0 1 1-7.778 7.778 5.5 5.5 0 0 1 7.777-7.777zm0 0L15.5 7.5m0 0l3 3L22 7l-3-3m-3.5 3.5L19 4\" />\n </svg>\n `,\n})\nexport class KeyIconComponent extends IconComponentBase {\n static readonly slug = 'key';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'key',\n 'lock',\n 'password',\n 'security',\n 'access',\n 'clé',\n 'mot de passe',\n 'llave',\n 'clave',\n 'κλειδί',\n 'κωδικός',\n 'klucz',\n 'hasło',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-kubernetes',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#326CE5' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M12 0a1.74 1.74 0 0 0-.776.187l-8.81 4.211a1.74 1.74 0 0 0-.943 1.18L.247 14.97a1.74 1.74 0 0 0 .337 1.48l6.094 7.575a1.74 1.74 0 0 0 1.36.65h9.722a1.74 1.74 0 0 0 1.36-.65l6.093-7.575a1.74 1.74 0 0 0 .337-1.48L23.53 5.578a1.74 1.74 0 0 0-.944-1.18L13.776.187A1.74 1.74 0 0 0 12 0Zm-.05 4.054a.39.39 0 0 1 .39.39v1.91a.388.388 0 0 0 .312.382 6.6 6.6 0 0 1 3.972 2.293c.073.087.197.11.295.052l1.654-.955a.39.39 0 0 1 .54.158.392.392 0 0 1-.144.526l-1.655.955a.388.388 0 0 0-.143.514 6.55 6.55 0 0 1 .748 4.466.388.388 0 0 0 .265.452l1.85.55a.39.39 0 0 1 .256.491.39.39 0 0 1-.486.252l-1.847-.55a.388.388 0 0 0-.473.224 6.6 6.6 0 0 1-3.297 3.297.388.388 0 0 0-.224.473l.55 1.847a.39.39 0 0 1-.252.486.39.39 0 0 1-.49-.256l-.55-1.85a.388.388 0 0 0-.453-.265 6.55 6.55 0 0 1-4.466-.748.388.388 0 0 0-.514.143l-.955 1.655a.392.392 0 0 1-.526.144.39.39 0 0 1-.158-.54l.955-1.654a.388.388 0 0 0-.052-.295 6.6 6.6 0 0 1-2.293-3.972.388.388 0 0 0-.382-.312H2.99a.39.39 0 0 1 0-.78h1.91a.388.388 0 0 0 .382-.312 6.6 6.6 0 0 1 2.293-3.972.388.388 0 0 0 .052-.295L6.672 6.85a.39.39 0 0 1 .158-.54.392.392 0 0 1 .526.144l.955 1.655a.388.388 0 0 0 .514.143 6.55 6.55 0 0 1 4.466-.748.388.388 0 0 0 .453-.265l.55-1.85a.39.39 0 0 1 .49-.256.39.39 0 0 1 .252.486l-.55 1.847a.388.388 0 0 0 .224.473 6.6 6.6 0 0 1 .92.46.39.39 0 0 1-.39-.39v-1.91a.39.39 0 0 1 .39-.39Zm.05 5.7a2.246 2.246 0 1 0 0 4.492 2.246 2.246 0 0 0 0-4.492Z\" />\n </svg>\n `,\n})\nexport class KubernetesIconComponent extends IconComponentBase {\n static readonly slug = 'kubernetes';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'kubernetes',\n 'k8s',\n 'container',\n 'devops',\n 'orchestration',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-lamp',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M8 2h8l3 10H5z\" />\n <line\n x1=\"12\"\n y1=\"12\"\n x2=\"12\"\n y2=\"22\" />\n <line\n x1=\"7\"\n y1=\"22\"\n x2=\"17\"\n y2=\"22\" />\n </svg>\n `,\n})\nexport class LampIconComponent extends IconComponentBase {\n static readonly slug = 'lamp';\n static readonly category: IconCategory = 'eagami';\n static readonly tags: ReadonlyArray<string> = [\n 'lamp',\n 'light',\n 'bulb',\n 'lighting',\n 'lampe',\n 'lumière',\n 'lámpara',\n 'luz',\n 'λάμπα',\n 'φως',\n 'lampa',\n 'światło',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-layers',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"12 2 2 7 12 12 22 7 12 2\" />\n <polyline points=\"2 17 12 22 22 17\" />\n <polyline points=\"2 12 12 17 22 12\" />\n </svg>\n `,\n})\nexport class LayersIconComponent extends IconComponentBase {\n static readonly slug = 'layers';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'layers',\n 'stack',\n 'levels',\n 'design',\n 'overlay',\n 'calques',\n 'capas',\n 'στρώματα',\n 'επίπεδα',\n 'warstwy',\n 'stos',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-layout',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"3\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"3\"\n y1=\"9\"\n x2=\"21\"\n y2=\"9\" />\n <line\n x1=\"9\"\n y1=\"21\"\n x2=\"9\"\n y2=\"9\" />\n </svg>\n `,\n})\nexport class LayoutIconComponent extends IconComponentBase {\n static readonly slug = 'layout';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'layout',\n 'grid',\n 'design',\n 'structure',\n 'template',\n 'mise en page',\n 'diseño',\n 'plantilla',\n 'διάταξη',\n 'σχέδιο',\n 'układ',\n 'szablon',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-life-buoy',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"4\" />\n <line\n x1=\"4.93\"\n y1=\"4.93\"\n x2=\"9.17\"\n y2=\"9.17\" />\n <line\n x1=\"14.83\"\n y1=\"14.83\"\n x2=\"19.07\"\n y2=\"19.07\" />\n <line\n x1=\"14.83\"\n y1=\"9.17\"\n x2=\"19.07\"\n y2=\"4.93\" />\n <line\n x1=\"14.83\"\n y1=\"9.17\"\n x2=\"18.36\"\n y2=\"5.64\" />\n <line\n x1=\"4.93\"\n y1=\"19.07\"\n x2=\"9.17\"\n y2=\"14.83\" />\n </svg>\n `,\n})\nexport class LifeBuoyIconComponent extends IconComponentBase {\n static readonly slug = 'life-buoy';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'life-buoy',\n 'life',\n 'buoy',\n 'help',\n 'support',\n 'rescue',\n 'bouée',\n 'sauvetage',\n 'salvavidas',\n 'ayuda',\n 'σωσίβιο',\n 'βοήθεια',\n 'koło ratunkowe',\n 'pomoc',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-link-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3\" />\n <line\n x1=\"8\"\n y1=\"12\"\n x2=\"16\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class Link2IconComponent extends IconComponentBase {\n static readonly slug = 'link-2';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'link-2',\n 'link',\n '2',\n 'chain',\n 'url',\n 'connect',\n 'hyperlink',\n 'lien',\n 'enlace',\n 'σύνδεσμος',\n 'link',\n 'połączenie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-link',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71\" />\n <path d=\"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71\" />\n </svg>\n `,\n})\nexport class LinkIconComponent extends IconComponentBase {\n static readonly slug = 'link';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'link',\n 'chain',\n 'url',\n 'connect',\n 'hyperlink',\n 'lien',\n 'chaîne',\n 'enlace',\n 'cadena',\n 'σύνδεσμος',\n 'αλυσίδα',\n 'link',\n 'połączenie',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * LinkedIn brand mark (Eagami brand-filled).\n *\n * @remarks\n * Up to v1.3 this design shipped as `LinkedinIconComponent` at slug\n * `ea-icon-linkedin`. v1.4 reassigns the canonical slug to Feather's outline\n * and moves the brand-filled mark here. Set the `brand` input to render in\n * the official brand colour.\n */\n@Component({\n selector: 'ea-icon-linkedin-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#0A66C2' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M20.45 20.45h-3.55v-5.57c0-1.33-.03-3.04-1.85-3.04-1.86 0-2.14 1.45-2.14 2.94v5.67H9.36V9h3.41v1.56h.05a3.74 3.74 0 0 1 3.37-1.85c3.6 0 4.27 2.37 4.27 5.46v6.28ZM5.34 7.43a2.06 2.06 0 1 1 0-4.12 2.06 2.06 0 0 1 0 4.12ZM7.12 20.45H3.56V9h3.56v11.45ZM22.22 0H1.77C.79 0 0 .77 0 1.72v20.56C0 23.23.79 24 1.77 24h20.45c.98 0 1.78-.77 1.78-1.72V1.72C24 .77 23.2 0 22.22 0Z\" />\n </svg>\n `,\n})\nexport class Linkedin2IconComponent extends IconComponentBase {\n static readonly slug = 'linkedin-2';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'linkedin-2',\n 'linkedin',\n 'social',\n 'network',\n 'professional',\n 'job',\n 'mark',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * LinkedIn icon (Feather outline).\n *\n * @remarks\n * Prior to v1.4 this slug rendered Eagami's brand-filled LinkedIn mark. v1.4\n * aligns the canonical slug with Feather Icons, so `LinkedinIconComponent` now\n * renders Feather's outline. The brand-filled mark that previously shipped\n * here has moved to `<ea-icon-linkedin-2>` / `Linkedin2IconComponent`.\n */\n@Component({\n selector: 'ea-icon-linkedin',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z\" />\n <rect\n x=\"2\"\n y=\"9\"\n width=\"4\"\n height=\"12\" />\n <circle\n cx=\"4\"\n cy=\"4\"\n r=\"2\" />\n </svg>\n `,\n})\nexport class LinkedinIconComponent extends IconComponentBase {\n static readonly slug = 'linkedin';\n static readonly category: IconCategory = 'feather';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'linkedin',\n 'social',\n 'network',\n 'professional',\n 'job',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-list',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"8\"\n y1=\"6\"\n x2=\"21\"\n y2=\"6\" />\n <line\n x1=\"8\"\n y1=\"12\"\n x2=\"21\"\n y2=\"12\" />\n <line\n x1=\"8\"\n y1=\"18\"\n x2=\"21\"\n y2=\"18\" />\n <line\n x1=\"3\"\n y1=\"6\"\n x2=\"3.01\"\n y2=\"6\" />\n <line\n x1=\"3\"\n y1=\"12\"\n x2=\"3.01\"\n y2=\"12\" />\n <line\n x1=\"3\"\n y1=\"18\"\n x2=\"3.01\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class ListIconComponent extends IconComponentBase {\n static readonly slug = 'list';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'list',\n 'menu',\n 'items',\n 'bullets',\n 'todo',\n 'liste',\n 'lista',\n 'menú',\n 'λίστα',\n 'κατάλογος',\n 'lista',\n 'spis',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-loader',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"12\"\n y1=\"2\"\n x2=\"12\"\n y2=\"6\" />\n <line\n x1=\"12\"\n y1=\"18\"\n x2=\"12\"\n y2=\"22\" />\n <line\n x1=\"4.93\"\n y1=\"4.93\"\n x2=\"7.76\"\n y2=\"7.76\" />\n <line\n x1=\"16.24\"\n y1=\"16.24\"\n x2=\"19.07\"\n y2=\"19.07\" />\n <line\n x1=\"2\"\n y1=\"12\"\n x2=\"6\"\n y2=\"12\" />\n <line\n x1=\"18\"\n y1=\"12\"\n x2=\"22\"\n y2=\"12\" />\n <line\n x1=\"4.93\"\n y1=\"19.07\"\n x2=\"7.76\"\n y2=\"16.24\" />\n <line\n x1=\"16.24\"\n y1=\"7.76\"\n x2=\"19.07\"\n y2=\"4.93\" />\n </svg>\n `,\n})\nexport class LoaderIconComponent extends IconComponentBase {\n static readonly slug = 'loader';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'loader',\n 'loading',\n 'spinner',\n 'wait',\n 'progress',\n 'chargement',\n 'cargando',\n 'cargador',\n 'φόρτωση',\n 'αναμονή',\n 'ładowanie',\n 'wczytywanie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-lock',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"11\"\n width=\"18\"\n height=\"11\"\n rx=\"2\"\n ry=\"2\" />\n <path d=\"M7 11V7a5 5 0 0 1 10 0v4\" />\n </svg>\n `,\n})\nexport class LockIconComponent extends IconComponentBase {\n static readonly slug = 'lock';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'lock',\n 'secure',\n 'password',\n 'private',\n 'closed',\n 'verrou',\n 'cadenas',\n 'candado',\n 'cerrado',\n 'κλειδαριά',\n 'ασφαλές',\n 'kłódka',\n 'zamknij',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-log-in',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4\" />\n <polyline points=\"10 17 15 12 10 7\" />\n <line\n x1=\"15\"\n y1=\"12\"\n x2=\"3\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class LogInIconComponent extends IconComponentBase {\n static readonly slug = 'log-in';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'log-in',\n 'log',\n 'in',\n 'login',\n 'sign in',\n 'enter',\n 'access',\n 'connexion',\n 'iniciar sesión',\n 'entrar',\n 'σύνδεση',\n 'είσοδος',\n 'logowanie',\n 'zaloguj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-log-out',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4\" />\n <polyline points=\"16 17 21 12 16 7\" />\n <line\n x1=\"21\"\n y1=\"12\"\n x2=\"9\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class LogOutIconComponent extends IconComponentBase {\n static readonly slug = 'log-out';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'log-out',\n 'log',\n 'out',\n 'logout',\n 'sign out',\n 'exit',\n 'leave',\n 'déconnexion',\n 'cerrar sesión',\n 'salir',\n 'αποσύνδεση',\n 'έξοδος',\n 'wylogowanie',\n 'wyjdź',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-mail',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z\" />\n <polyline points=\"22 6 12 13 2 6\" />\n </svg>\n `,\n})\nexport class MailIconComponent extends IconComponentBase {\n static readonly slug = 'mail';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'mail',\n 'email',\n 'message',\n 'envelope',\n 'letter',\n 'courrier',\n 'enveloppe',\n 'correo',\n 'mensaje',\n 'αλληλογραφία',\n 'φάκελος',\n 'poczta',\n 'wiadomość',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-map-pin',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z\" />\n <circle\n cx=\"12\"\n cy=\"10\"\n r=\"3\" />\n </svg>\n `,\n})\nexport class MapPinIconComponent extends IconComponentBase {\n static readonly slug = 'map-pin';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'map-pin',\n 'map',\n 'pin',\n 'location',\n 'marker',\n 'place',\n 'épingle',\n 'marqueur',\n 'ubicación',\n 'marcador',\n 'καρφίτσα',\n 'τοποθεσία',\n 'pinezka',\n 'lokalizacja',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-map',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"1 6 1 22 8 18 16 22 23 18 23 2 16 6 8 2 1 6\" />\n <line\n x1=\"8\"\n y1=\"2\"\n x2=\"8\"\n y2=\"18\" />\n <line\n x1=\"16\"\n y1=\"6\"\n x2=\"16\"\n y2=\"22\" />\n </svg>\n `,\n})\nexport class MapIconComponent extends IconComponentBase {\n static readonly slug = 'map';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'map',\n 'location',\n 'navigation',\n 'directions',\n 'geography',\n 'carte',\n 'mapa',\n 'ubicación',\n 'χάρτης',\n 'τοποθεσία',\n 'mapa',\n 'lokalizacja',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-mastercard',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"9\"\n cy=\"12\"\n r=\"7\"\n fill=\"#EB001B\" />\n <circle\n cx=\"15\"\n cy=\"12\"\n r=\"7\"\n fill=\"#F79E1B\" />\n <path\n d=\"M12 6.764A6.984 6.984 0 0 1 14.5 12 6.984 6.984 0 0 1 12 17.236 6.984 6.984 0 0 1 9.5 12 6.984 6.984 0 0 1 12 6.764Z\"\n fill=\"#FF5F00\" />\n </svg>\n `,\n})\nexport class MastercardIconComponent extends IconComponentBase {\n static readonly slug = 'mastercard';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'mastercard',\n 'card',\n 'payment',\n 'credit',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-maximize-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"15 3 21 3 21 9\" />\n <polyline points=\"9 21 3 21 3 15\" />\n <line\n x1=\"21\"\n y1=\"3\"\n x2=\"14\"\n y2=\"10\" />\n <line\n x1=\"3\"\n y1=\"21\"\n x2=\"10\"\n y2=\"14\" />\n </svg>\n `,\n})\nexport class Maximize2IconComponent extends IconComponentBase {\n static readonly slug = 'maximize-2';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'maximize-2',\n 'maximize',\n '2',\n 'expand',\n 'fullscreen',\n 'enlarge',\n 'agrandir',\n 'maximizar',\n 'μεγιστοποίηση',\n 'maksymalizuj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-maximize',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M8 3H5a2 2 0 0 0-2 2v3\" />\n <path d=\"M21 8V5a2 2 0 0 0-2-2h-3\" />\n <path d=\"M3 16v3a2 2 0 0 0 2 2h3\" />\n <path d=\"M16 21h3a2 2 0 0 0 2-2v-3\" />\n </svg>\n `,\n})\nexport class MaximizeIconComponent extends IconComponentBase {\n static readonly slug = 'maximize';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'maximize',\n 'expand',\n 'fullscreen',\n 'enlarge',\n 'agrandir',\n 'plein écran',\n 'maximizar',\n 'pantalla completa',\n 'μεγιστοποίηση',\n 'πλήρης οθόνη',\n 'maksymalizuj',\n 'pełny ekran',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-meh',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"8\"\n y1=\"15\"\n x2=\"16\"\n y2=\"15\" />\n <line\n x1=\"9\"\n y1=\"9\"\n x2=\"9.01\"\n y2=\"9\" />\n <line\n x1=\"15\"\n y1=\"9\"\n x2=\"15.01\"\n y2=\"9\" />\n </svg>\n `,\n})\nexport class MehIconComponent extends IconComponentBase {\n static readonly slug = 'meh';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'meh',\n 'neutral',\n 'face',\n 'emoji',\n 'indifferent',\n 'neutre',\n 'visage',\n 'neutral',\n 'cara',\n 'ουδέτερος',\n 'πρόσωπο',\n 'obojętny',\n 'twarz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-menu',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"3\"\n y1=\"6\"\n x2=\"21\"\n y2=\"6\" />\n <line\n x1=\"3\"\n y1=\"12\"\n x2=\"21\"\n y2=\"12\" />\n <line\n x1=\"3\"\n y1=\"18\"\n x2=\"21\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class MenuIconComponent extends IconComponentBase {\n static readonly slug = 'menu';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'menu',\n 'hamburger',\n 'list',\n 'navigation',\n 'bars',\n 'menú',\n 'lista',\n 'μενού',\n 'navigacja',\n 'lista',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-message-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z\" />\n </svg>\n `,\n})\nexport class MessageCircleIconComponent extends IconComponentBase {\n static readonly slug = 'message-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'message-circle',\n 'message',\n 'circle',\n 'chat',\n 'comment',\n 'bubble',\n 'talk',\n 'messagerie',\n 'mensaje',\n 'comentario',\n 'μήνυμα',\n 'συνομιλία',\n 'wiadomość',\n 'czat',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-message-square',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\" />\n </svg>\n `,\n})\nexport class MessageSquareIconComponent extends IconComponentBase {\n static readonly slug = 'message-square';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'message-square',\n 'message',\n 'square',\n 'chat',\n 'comment',\n 'bubble',\n 'talk',\n 'messagerie',\n 'mensaje',\n 'comentario',\n 'μήνυμα',\n 'συνομιλία',\n 'wiadomość',\n 'czat',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-mic-off',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"1\"\n y1=\"1\"\n x2=\"23\"\n y2=\"23\" />\n <path d=\"M9 9v3a3 3 0 0 0 5.12 2.12M15 9.34V4a3 3 0 0 0-5.94-.6\" />\n <path d=\"M17 16.95A7 7 0 0 1 5 12v-2m14 0v2a7 7 0 0 1-.11 1.23\" />\n <line\n x1=\"12\"\n y1=\"19\"\n x2=\"12\"\n y2=\"23\" />\n <line\n x1=\"8\"\n y1=\"23\"\n x2=\"16\"\n y2=\"23\" />\n </svg>\n `,\n})\nexport class MicOffIconComponent extends IconComponentBase {\n static readonly slug = 'mic-off';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'mic-off',\n 'mic',\n 'off',\n 'mute',\n 'microphone',\n 'silent',\n 'muet',\n 'silencio',\n 'mudo',\n 'σίγαση',\n 'wyciszony',\n 'mikrofon',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-mic',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z\" />\n <path d=\"M19 10v2a7 7 0 0 1-14 0v-2\" />\n <line\n x1=\"12\"\n y1=\"19\"\n x2=\"12\"\n y2=\"23\" />\n <line\n x1=\"8\"\n y1=\"23\"\n x2=\"16\"\n y2=\"23\" />\n </svg>\n `,\n})\nexport class MicIconComponent extends IconComponentBase {\n static readonly slug = 'mic';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'mic',\n 'microphone',\n 'audio',\n 'record',\n 'voice',\n 'sound',\n 'micro',\n 'micrófono',\n 'voz',\n 'μικρόφωνο',\n 'φωνή',\n 'mikrofon',\n 'głos',\n 'music',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-microsoft',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"1\"\n y=\"1\"\n width=\"10\"\n height=\"10\"\n fill=\"#F25022\" />\n <rect\n x=\"13\"\n y=\"1\"\n width=\"10\"\n height=\"10\"\n fill=\"#7FBA00\" />\n <rect\n x=\"1\"\n y=\"13\"\n width=\"10\"\n height=\"10\"\n fill=\"#00A4EF\" />\n <rect\n x=\"13\"\n y=\"13\"\n width=\"10\"\n height=\"10\"\n fill=\"#FFB900\" />\n </svg>\n `,\n})\nexport class MicrosoftIconComponent extends IconComponentBase {\n static readonly slug = 'microsoft';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = ['microsoft', 'windows', 'company'];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-minimize-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"4 14 10 14 10 20\" />\n <polyline points=\"20 10 14 10 14 4\" />\n <line\n x1=\"14\"\n y1=\"10\"\n x2=\"21\"\n y2=\"3\" />\n <line\n x1=\"3\"\n y1=\"21\"\n x2=\"10\"\n y2=\"14\" />\n </svg>\n `,\n})\nexport class Minimize2IconComponent extends IconComponentBase {\n static readonly slug = 'minimize-2';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'minimize-2',\n 'minimize',\n '2',\n 'shrink',\n 'reduce',\n 'collapse',\n 'réduire',\n 'minimizar',\n 'ελαχιστοποίηση',\n 'minimalizuj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-minimize',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M8 3v3a2 2 0 0 1-2 2H3\" />\n <path d=\"M21 8h-3a2 2 0 0 1-2-2V3\" />\n <path d=\"M3 16h3a2 2 0 0 1 2 2v3\" />\n <path d=\"M16 21v-3a2 2 0 0 1 2-2h3\" />\n </svg>\n `,\n})\nexport class MinimizeIconComponent extends IconComponentBase {\n static readonly slug = 'minimize';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'minimize',\n 'shrink',\n 'reduce',\n 'collapse',\n 'réduire',\n 'minimizar',\n 'reducir',\n 'ελαχιστοποίηση',\n 'σμίκρυνση',\n 'minimalizuj',\n 'zmniejsz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-minus-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"8\"\n y1=\"12\"\n x2=\"16\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class MinusCircleIconComponent extends IconComponentBase {\n static readonly slug = 'minus-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'minus-circle',\n 'minus',\n 'circle',\n 'remove',\n 'subtract',\n 'delete',\n 'moins',\n 'menos',\n 'eliminar',\n 'μείον',\n 'αφαίρεση',\n 'minus',\n 'usuń',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-minus-square',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"3\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"8\"\n y1=\"12\"\n x2=\"16\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class MinusSquareIconComponent extends IconComponentBase {\n static readonly slug = 'minus-square';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'minus-square',\n 'minus',\n 'square',\n 'remove',\n 'subtract',\n 'delete',\n 'moins',\n 'menos',\n 'eliminar',\n 'μείον',\n 'αφαίρεση',\n 'minus',\n 'usuń',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-mongodb',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#47A248' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M17.193 9.555c-1.264-5.58-4.252-7.414-4.573-8.115-.28-.394-.53-.954-.735-1.44-.036.495-.055.685-.523 1.184-.723.566-4.438 3.682-4.74 10.02-.282 5.912 4.27 9.435 4.888 9.884l.07.05A73.49 73.49 0 0 1 11.91 24h.481c.114-1.032.284-2.056.51-3.07.417-.296.604-.463.85-.693a11.342 11.342 0 0 0 3.639-8.464c.01-.814-.103-1.662-.197-2.218zm-5.336 8.195s0-8.291.275-8.29c.213 0 .49 10.695.49 10.695-.381-.045-.765-1.76-.765-2.405z\" />\n </svg>\n `,\n})\nexport class MongodbIconComponent extends IconComponentBase {\n static readonly slug = 'mongodb';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = ['mongodb', 'database', 'nosql', 'mongo'];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-monitor',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"2\"\n y=\"3\"\n width=\"20\"\n height=\"14\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"8\"\n y1=\"21\"\n x2=\"16\"\n y2=\"21\" />\n <line\n x1=\"12\"\n y1=\"17\"\n x2=\"12\"\n y2=\"21\" />\n </svg>\n `,\n})\nexport class MonitorIconComponent extends IconComponentBase {\n static readonly slug = 'monitor';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'monitor',\n 'screen',\n 'display',\n 'computer',\n 'desktop',\n 'écran',\n 'pantalla',\n 'οθόνη',\n 'monitor',\n 'ekran',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-moon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z\" />\n </svg>\n `,\n})\nexport class MoonIconComponent extends IconComponentBase {\n static readonly slug = 'moon';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'moon',\n 'night',\n 'dark',\n 'theme',\n 'sleep',\n 'lune',\n 'nuit',\n 'luna',\n 'noche',\n 'φεγγάρι',\n 'νύχτα',\n 'księżyc',\n 'noc',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-more-horizontal',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"1\" />\n <circle\n cx=\"19\"\n cy=\"12\"\n r=\"1\" />\n <circle\n cx=\"5\"\n cy=\"12\"\n r=\"1\" />\n </svg>\n `,\n})\nexport class MoreHorizontalIconComponent extends IconComponentBase {\n static readonly slug = 'more-horizontal';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'more-horizontal',\n 'more',\n 'horizontal',\n 'ellipsis',\n 'menu',\n 'dots',\n 'options',\n 'plus',\n 'más',\n 'περισσότερα',\n 'więcej',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-more-vertical',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"1\" />\n <circle\n cx=\"12\"\n cy=\"5\"\n r=\"1\" />\n <circle\n cx=\"12\"\n cy=\"19\"\n r=\"1\" />\n </svg>\n `,\n})\nexport class MoreVerticalIconComponent extends IconComponentBase {\n static readonly slug = 'more-vertical';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'more-vertical',\n 'more',\n 'vertical',\n 'ellipsis',\n 'menu',\n 'dots',\n 'options',\n 'plus',\n 'más',\n 'περισσότερα',\n 'więcej',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-mouse-pointer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M3 3l7.07 16.97 2.51-7.39 7.39-2.51L3 3z\" />\n <path d=\"M13 13l6 6\" />\n </svg>\n `,\n})\nexport class MousePointerIconComponent extends IconComponentBase {\n static readonly slug = 'mouse-pointer';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'mouse-pointer',\n 'mouse',\n 'pointer',\n 'cursor',\n 'click',\n 'arrow',\n 'souris',\n 'curseur',\n 'ratón',\n 'cursor',\n 'ποντίκι',\n 'δείκτης',\n 'mysz',\n 'kursor',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-move',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"5 9 2 12 5 15\" />\n <polyline points=\"9 5 12 2 15 5\" />\n <polyline points=\"15 19 12 22 9 19\" />\n <polyline points=\"19 9 22 12 19 15\" />\n <line\n x1=\"2\"\n y1=\"12\"\n x2=\"22\"\n y2=\"12\" />\n <line\n x1=\"12\"\n y1=\"2\"\n x2=\"12\"\n y2=\"22\" />\n </svg>\n `,\n})\nexport class MoveIconComponent extends IconComponentBase {\n static readonly slug = 'move';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'move',\n 'drag',\n 'arrows',\n 'reposition',\n 'shift',\n 'déplacer',\n 'mover',\n 'μετακίνηση',\n 'przenieś',\n 'przesuń',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-music',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M9 18V5l12-2v13\" />\n <circle\n cx=\"6\"\n cy=\"18\"\n r=\"3\" />\n <circle\n cx=\"18\"\n cy=\"16\"\n r=\"3\" />\n </svg>\n `,\n})\nexport class MusicIconComponent extends IconComponentBase {\n static readonly slug = 'music';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'music',\n 'note',\n 'audio',\n 'song',\n 'sound',\n 'musique',\n 'música',\n 'canción',\n 'μουσική',\n 'τραγούδι',\n 'muzyka',\n 'piosenka',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-navigation-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"12 2 19 21 12 17 5 21 12 2\" />\n </svg>\n `,\n})\nexport class Navigation2IconComponent extends IconComponentBase {\n static readonly slug = 'navigation-2';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'navigation-2',\n 'navigation',\n '2',\n 'compass',\n 'direction',\n 'gps',\n 'arrow',\n 'navegación',\n 'πλοήγηση',\n 'nawigacja',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-navigation',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"3 11 22 2 13 21 11 13 3 11\" />\n </svg>\n `,\n})\nexport class NavigationIconComponent extends IconComponentBase {\n static readonly slug = 'navigation';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'navigation',\n 'compass',\n 'direction',\n 'gps',\n 'arrow',\n 'navegación',\n 'πλοήγηση',\n 'nawigacja',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-netlify',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"4 4 16 16\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"m13.4 13.144-.71-.71 4.474-4.474 1.86 1.07a.39.39 0 0 1 .15.378l-.69 4.31-5.084-.574Zm-2.8 0L5.516 13.72l-.69-4.31a.39.39 0 0 1 .15-.379l1.86-1.07 4.474 4.474-.71.71Zm.71-2.04L7.05 6.694l.71-.71L12 9.604l4.24-3.62.71.71-4.26 4.41-.71-.71-.67.71Zm.69 6.91-4.24-3.62-.71.71 4.26 4.41.71-.71 4.24-3.62-.71-.71-3.55 3.54Z\"\n fill=\"#00C7B7\" />\n </svg>\n `,\n})\nexport class NetlifyIconComponent extends IconComponentBase {\n static readonly slug = 'netlify';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'netlify',\n 'hosting',\n 'deploy',\n 'jamstack',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-notion',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#000000' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M4.459 4.208c.746.606 1.026.56 2.428.466l13.215-.793c.28 0 .047-.28-.046-.327L17.86 1.874c-.42-.326-.981-.7-2.055-.607L3.01 2.146c-.466.046-.56.28-.374.466Zm.793 3.08v13.904c0 .747.373 1.027 1.214.98l14.523-.84c.841-.046.935-.56.935-1.167V6.354c0-.606-.233-.933-.748-.887l-15.177.887c-.56.047-.747.327-.747.933Zm14.337.745c.093.42 0 .84-.42.888l-.7.14v10.264c-.608.327-1.168.514-1.635.514-.748 0-.935-.234-1.495-.933l-4.577-7.186v6.952l1.448.327s0 .84-1.168.84l-3.222.187c-.093-.187 0-.653.327-.746l.84-.234V9.854L7.822 9.76c-.094-.42.14-1.026.793-1.073l3.456-.233 4.764 7.279V9.295l-1.215-.14c-.093-.514.28-.887.747-.933ZM2.69.84 16.041 0c1.635-.14 2.055-.046 3.082.7l4.256 2.986c.7.513.934.654.934 1.213v16.378c0 1.026-.373 1.634-1.681 1.728l-15.504.933c-.98.047-1.448-.094-1.962-.747l-3.129-4.06C.467 18.484.234 17.83.234 17.084V2.846C.234 2.006.607 1.307 2.69.84Z\" />\n </svg>\n `,\n})\nexport class NotionIconComponent extends IconComponentBase {\n static readonly slug = 'notion';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'notion',\n 'notes',\n 'productivity',\n 'workspace',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-npm',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#CB3837' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M0 7.334v8h6.666v1.332H12v-1.332h12v-8H0Zm6.666 6.664H5.334v-4H3.999v4H1.335V8.667h5.331v5.331Zm4 0v1.336H8v-6.667h5.333v5.331h-2.667Zm12.001 0h-1.33v-4h-1.336v4h-1.335v-4h-1.33v4h-2.671V8.667h8.002v5.331ZM10.665 10H12v2.667h-1.335V10Z\" />\n </svg>\n `,\n})\nexport class NpmIconComponent extends IconComponentBase {\n static readonly slug = 'npm';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'npm',\n 'node',\n 'package',\n 'registry',\n 'javascript',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-octagon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon\n points=\"7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2\" />\n </svg>\n `,\n})\nexport class OctagonIconComponent extends IconComponentBase {\n static readonly slug = 'octagon';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'octagon',\n 'shape',\n 'stop',\n 'sign',\n 'eight',\n 'octogone',\n 'octágono',\n 'οκτάγωνο',\n 'σχήμα',\n 'ośmiokąt',\n 'kształt',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-package',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"16.5\"\n y1=\"9.4\"\n x2=\"7.5\"\n y2=\"4.21\" />\n <path\n d=\"M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z\" />\n <polyline points=\"3.27 6.96 12 12.01 20.73 6.96\" />\n <line\n x1=\"12\"\n y1=\"22.08\"\n x2=\"12\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class PackageIconComponent extends IconComponentBase {\n static readonly slug = 'package';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'package',\n 'box',\n 'parcel',\n 'delivery',\n 'shipping',\n 'paquet',\n 'colis',\n 'paquete',\n 'caja',\n 'πακέτο',\n 'κουτί',\n 'paczka',\n 'pudełko',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-paperclip',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48\" />\n </svg>\n `,\n})\nexport class PaperclipIconComponent extends IconComponentBase {\n static readonly slug = 'paperclip';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'paperclip',\n 'attach',\n 'attachment',\n 'clip',\n 'file',\n 'trombone',\n 'pièce jointe',\n 'clip',\n 'adjunto',\n 'συνδετήρας',\n 'συνημμένο',\n 'spinacz',\n 'załącznik',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-pause-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"10\"\n y1=\"15\"\n x2=\"10\"\n y2=\"9\" />\n <line\n x1=\"14\"\n y1=\"15\"\n x2=\"14\"\n y2=\"9\" />\n </svg>\n `,\n})\nexport class PauseCircleIconComponent extends IconComponentBase {\n static readonly slug = 'pause-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'pause-circle',\n 'pause',\n 'circle',\n 'stop',\n 'media',\n 'player',\n 'pausa',\n 'παύση',\n 'pauza',\n 'wstrzymaj',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-pause',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"6\"\n y=\"4\"\n width=\"4\"\n height=\"16\" />\n <rect\n x=\"14\"\n y=\"4\"\n width=\"4\"\n height=\"16\" />\n </svg>\n `,\n})\nexport class PauseIconComponent extends IconComponentBase {\n static readonly slug = 'pause';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'pause',\n 'stop',\n 'media',\n 'player',\n 'wait',\n 'pausa',\n 'παύση',\n 'pauza',\n 'wstrzymaj',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-paypal',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M7.076 21.337H2.47a.641.641 0 0 1-.633-.74L4.944 1.186A.641.641 0 0 1 5.577.643h7.46c2.57 0 4.578.543 5.69 1.81 1.01 1.15 1.34 2.825.985 5.118-.027.17-.062.34-.103.518-.69 3.564-3.084 4.788-6.149 4.788H11.93c-.376 0-.696.273-.755.643l-.83 5.25-.302 1.909a.426.426 0 0 1-.42.358H7.076v-1.43Z\"\n fill=\"#003087\" />\n <path\n d=\"M19.612 7.572c-.027.17-.062.34-.103.518-.69 3.564-3.084 4.788-6.149 4.788H11.93c-.376 0-.696.273-.755.643L9.96 21.337l-.302 1.91a.426.426 0 0 0 .42.494h4.158a.561.561 0 0 0 .555-.473l.023-.119.783-4.954.05-.273a.561.561 0 0 1 .555-.473h.349c2.687 0 4.79-1.07 5.405-4.198.257-1.31.123-2.402-.55-3.171a2.628 2.628 0 0 0-.794-.508Z\"\n fill=\"#0070BA\" />\n <path\n d=\"M18.83 7.265a5.485 5.485 0 0 0-.677-.15 8.605 8.605 0 0 0-1.367-.1H10.94a.561.561 0 0 0-.555.474L9.1 15.665l-.038.235a.642.642 0 0 1 .633-.543h1.745c3.065 0 5.46-1.224 6.149-4.788.04-.178.075-.348.103-.518.146-.96.07-1.617-.862-2.286Z\"\n fill=\"#001C64\" />\n </svg>\n `,\n})\nexport class PaypalIconComponent extends IconComponentBase {\n static readonly slug = 'paypal';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'paypal',\n 'payment',\n 'money',\n 'checkout',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-pen-tool',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M12 19l7-7 3 3-7 7-3-3z\" />\n <path d=\"M18 13l-1.5-7.5L2 2l3.5 14.5L13 18l5-5z\" />\n <path d=\"M2 2l7.586 7.586\" />\n <circle\n cx=\"11\"\n cy=\"11\"\n r=\"2\" />\n </svg>\n `,\n})\nexport class PenToolIconComponent extends IconComponentBase {\n static readonly slug = 'pen-tool';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'pen-tool',\n 'pen',\n 'tool',\n 'vector',\n 'draw',\n 'bezier',\n 'design',\n 'stylo',\n 'dessiner',\n 'pluma',\n 'dibujar',\n 'στυλό',\n 'σχέδιο',\n 'pióro',\n 'rysować',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-pentagon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"12 2 21.51 8.91 17.88 20.09 6.12 20.09 2.49 8.91\" />\n </svg>\n `,\n})\nexport class PentagonIconComponent extends IconComponentBase {\n static readonly slug = 'pentagon';\n static readonly category: IconCategory = 'eagami';\n static readonly tags: ReadonlyArray<string> = [\n 'pentagon',\n 'five-sided',\n 'polygon',\n 'shape',\n 'pentagone',\n 'pentágono',\n 'πεντάγωνο',\n 'pięciokąt',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-percent',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"19\"\n y1=\"5\"\n x2=\"5\"\n y2=\"19\" />\n <circle\n cx=\"6.5\"\n cy=\"6.5\"\n r=\"2.5\" />\n <circle\n cx=\"17.5\"\n cy=\"17.5\"\n r=\"2.5\" />\n </svg>\n `,\n})\nexport class PercentIconComponent extends IconComponentBase {\n static readonly slug = 'percent';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'percent',\n 'percentage',\n 'discount',\n 'sale',\n 'math',\n 'pourcentage',\n 'porcentaje',\n 'descuento',\n 'ποσοστό',\n 'έκπτωση',\n 'procent',\n 'zniżka',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-phone-call',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M15.05 5A5 5 0 0 1 19 8.95M15.05 1A9 9 0 0 1 23 8.94m-1 7.98v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z\" />\n </svg>\n `,\n})\nexport class PhoneCallIconComponent extends IconComponentBase {\n static readonly slug = 'phone-call';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'phone-call',\n 'phone',\n 'call',\n 'telephone',\n 'contact',\n 'dial',\n 'téléphone',\n 'appel',\n 'teléfono',\n 'llamada',\n 'τηλέφωνο',\n 'κλήση',\n 'telefon',\n 'połączenie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-phone-forwarded',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"19 1 23 5 19 9\" />\n <line\n x1=\"15\"\n y1=\"5\"\n x2=\"23\"\n y2=\"5\" />\n <path\n d=\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z\" />\n </svg>\n `,\n})\nexport class PhoneForwardedIconComponent extends IconComponentBase {\n static readonly slug = 'phone-forwarded';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'phone-forwarded',\n 'phone',\n 'forwarded',\n 'call',\n 'redirect',\n 'transfer',\n 'téléphone',\n 'transféré',\n 'teléfono',\n 'desviado',\n 'τηλέφωνο',\n 'προώθηση',\n 'telefon',\n 'przekierowane',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-phone-incoming',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"16 2 16 8 22 8\" />\n <line\n x1=\"23\"\n y1=\"1\"\n x2=\"16\"\n y2=\"8\" />\n <path\n d=\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z\" />\n </svg>\n `,\n})\nexport class PhoneIncomingIconComponent extends IconComponentBase {\n static readonly slug = 'phone-incoming';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'phone-incoming',\n 'phone',\n 'incoming',\n 'call',\n 'inbound',\n 'received',\n 'téléphone',\n 'entrant',\n 'teléfono',\n 'entrante',\n 'τηλέφωνο',\n 'εισερχόμενη',\n 'telefon',\n 'przychodzące',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-phone-missed',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"23\"\n y1=\"1\"\n x2=\"17\"\n y2=\"7\" />\n <line\n x1=\"17\"\n y1=\"1\"\n x2=\"23\"\n y2=\"7\" />\n <path\n d=\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z\" />\n </svg>\n `,\n})\nexport class PhoneMissedIconComponent extends IconComponentBase {\n static readonly slug = 'phone-missed';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'phone-missed',\n 'phone',\n 'missed',\n 'call',\n 'unanswered',\n 'rejected',\n 'téléphone',\n 'manqué',\n 'teléfono',\n 'perdida',\n 'τηλέφωνο',\n 'αναπάντητη',\n 'telefon',\n 'nieodebrane',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-phone-off',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M10.68 13.31a16 16 0 0 0 3.41 2.6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7 2 2 0 0 1 1.72 2v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.42 19.42 0 0 1-3.33-2.67m-2.67-3.34a19.79 19.79 0 0 1-3.07-8.63A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91\" />\n <line\n x1=\"23\"\n y1=\"1\"\n x2=\"1\"\n y2=\"23\" />\n </svg>\n `,\n})\nexport class PhoneOffIconComponent extends IconComponentBase {\n static readonly slug = 'phone-off';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'phone-off',\n 'phone',\n 'off',\n 'call',\n 'hang up',\n 'end',\n 'disabled',\n 'téléphone',\n 'raccroché',\n 'teléfono',\n 'colgado',\n 'τηλέφωνο',\n 'τερματισμός',\n 'telefon',\n 'rozłączony',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-phone-outgoing',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"23 7 23 1 17 1\" />\n <line\n x1=\"16\"\n y1=\"8\"\n x2=\"23\"\n y2=\"1\" />\n <path\n d=\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z\" />\n </svg>\n `,\n})\nexport class PhoneOutgoingIconComponent extends IconComponentBase {\n static readonly slug = 'phone-outgoing';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'phone-outgoing',\n 'phone',\n 'outgoing',\n 'call',\n 'outbound',\n 'dial',\n 'téléphone',\n 'sortant',\n 'teléfono',\n 'saliente',\n 'τηλέφωνο',\n 'εξερχόμενη',\n 'telefon',\n 'wychodzące',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-phone',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z\" />\n </svg>\n `,\n})\nexport class PhoneIconComponent extends IconComponentBase {\n static readonly slug = 'phone';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'phone',\n 'call',\n 'telephone',\n 'contact',\n 'mobile',\n 'téléphone',\n 'appel',\n 'teléfono',\n 'llamada',\n 'τηλέφωνο',\n 'κλήση',\n 'telefon',\n 'połączenie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-pie-chart',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21.21 15.89A10 10 0 1 1 8 2.83\" />\n <path d=\"M22 12A10 10 0 0 0 12 2v10z\" />\n </svg>\n `,\n})\nexport class PieChartIconComponent extends IconComponentBase {\n static readonly slug = 'pie-chart';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'pie-chart',\n 'pie',\n 'chart',\n 'graph',\n 'statistics',\n 'analytics',\n 'circulaire',\n 'gráfico',\n 'circular',\n 'γράφημα',\n 'πίτα',\n 'wykres',\n 'kołowy',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-play-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <polygon points=\"10 8 16 12 10 16 10 8\" />\n </svg>\n `,\n})\nexport class PlayCircleIconComponent extends IconComponentBase {\n static readonly slug = 'play-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'play-circle',\n 'play',\n 'circle',\n 'start',\n 'media',\n 'video',\n 'lecture',\n 'reproducir',\n 'αναπαραγωγή',\n 'odtwórz',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-play',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"5 3 19 12 5 21 5 3\" />\n </svg>\n `,\n})\nexport class PlayIconComponent extends IconComponentBase {\n static readonly slug = 'play';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'play',\n 'start',\n 'media',\n 'player',\n 'video',\n 'lecture',\n 'reproducir',\n 'iniciar',\n 'αναπαραγωγή',\n 'παίξε',\n 'odtwórz',\n 'graj',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-plus-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"12\"\n y1=\"8\"\n x2=\"12\"\n y2=\"16\" />\n <line\n x1=\"8\"\n y1=\"12\"\n x2=\"16\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class PlusCircleIconComponent extends IconComponentBase {\n static readonly slug = 'plus-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'plus-circle',\n 'plus',\n 'circle',\n 'add',\n 'new',\n 'create',\n 'ajouter',\n 'añadir',\n 'agregar',\n 'συν',\n 'προσθήκη',\n 'dodaj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-plus-square',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"3\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"12\"\n y1=\"8\"\n x2=\"12\"\n y2=\"16\" />\n <line\n x1=\"8\"\n y1=\"12\"\n x2=\"16\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class PlusSquareIconComponent extends IconComponentBase {\n static readonly slug = 'plus-square';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'plus-square',\n 'plus',\n 'square',\n 'add',\n 'new',\n 'create',\n 'ajouter',\n 'añadir',\n 'agregar',\n 'συν',\n 'προσθήκη',\n 'dodaj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-pocket',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M4 3h16a2 2 0 0 1 2 2v6a10 10 0 0 1-10 10A10 10 0 0 1 2 11V5a2 2 0 0 1 2-2z\" />\n <polyline points=\"8 10 12 14 16 10\" />\n </svg>\n `,\n})\nexport class PocketIconComponent extends IconComponentBase {\n static readonly slug = 'pocket';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'pocket',\n 'save',\n 'read',\n 'later',\n 'bookmark',\n 'poche',\n 'bolsillo',\n 'τσέπη',\n 'kieszeń',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-power',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M18.36 6.64a9 9 0 1 1-12.73 0\" />\n <line\n x1=\"12\"\n y1=\"2\"\n x2=\"12\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class PowerIconComponent extends IconComponentBase {\n static readonly slug = 'power';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'power',\n 'on',\n 'off',\n 'shutdown',\n 'energy',\n 'switch',\n 'alimentation',\n 'encender',\n 'apagar',\n 'τροφοδοσία',\n 'ενέργεια',\n 'zasilanie',\n 'włącz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-printer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"6 9 6 2 18 2 18 9\" />\n <path\n d=\"M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2\" />\n <rect\n x=\"6\"\n y=\"14\"\n width=\"12\"\n height=\"8\" />\n </svg>\n `,\n})\nexport class PrinterIconComponent extends IconComponentBase {\n static readonly slug = 'printer';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'printer',\n 'print',\n 'document',\n 'paper',\n 'office',\n 'imprimante',\n 'imprimir',\n 'impresora',\n 'εκτυπωτής',\n 'εκτύπωση',\n 'drukarka',\n 'drukuj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-radio',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"2\" />\n <path\n d=\"M16.24 7.76a6 6 0 0 1 0 8.49m-8.48-.01a6 6 0 0 1 0-8.49m11.31-2.82a10 10 0 0 1 0 14.14m-14.14 0a10 10 0 0 1 0-14.14\" />\n </svg>\n `,\n})\nexport class RadioIconComponent extends IconComponentBase {\n static readonly slug = 'radio';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'radio',\n 'broadcast',\n 'wireless',\n 'signal',\n 'music',\n 'señal',\n 'ραδιόφωνο',\n 'σήμα',\n 'radio',\n 'sygnał',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-rectangle-horizontal',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"2\"\n y=\"6\"\n width=\"20\"\n height=\"12\"\n rx=\"2\"\n ry=\"2\" />\n </svg>\n `,\n})\nexport class RectangleHorizontalIconComponent extends IconComponentBase {\n static readonly slug = 'rectangle-horizontal';\n static readonly category: IconCategory = 'eagami';\n static readonly tags: ReadonlyArray<string> = [\n 'rectangle-horizontal',\n 'rectangle',\n 'horizontal',\n 'landscape',\n 'shape',\n 'paysage',\n 'horizontal',\n 'apaisado',\n 'οριζόντιο',\n 'ορθογώνιο',\n 'prostokąt',\n 'poziomy',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-rectangle-vertical',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"6\"\n y=\"2\"\n width=\"12\"\n height=\"20\"\n rx=\"2\"\n ry=\"2\" />\n </svg>\n `,\n})\nexport class RectangleVerticalIconComponent extends IconComponentBase {\n static readonly slug = 'rectangle-vertical';\n static readonly category: IconCategory = 'eagami';\n static readonly tags: ReadonlyArray<string> = [\n 'rectangle-vertical',\n 'rectangle',\n 'vertical',\n 'portrait',\n 'shape',\n 'portrait',\n 'vertical',\n 'κατακόρυφο',\n 'ορθογώνιο',\n 'prostokąt',\n 'pionowy',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-reddit',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#FF4500' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M12 0a12 12 0 1 0 12 12A12 12 0 0 0 12 0Zm5.01 4.744c.688 0 1.25.561 1.25 1.249a1.25 1.25 0 0 1-2.498.056l-2.597-.547-.8 3.747c1.824.07 3.48.632 4.674 1.488.308-.309.73-.491 1.207-.491.974 0 1.764.79 1.764 1.764 0 .715-.423 1.33-1.035 1.612a3.32 3.32 0 0 1 .045.516c0 2.652-3.086 4.802-6.888 4.802-3.803 0-6.889-2.15-6.889-4.802 0-.176.016-.348.045-.516a1.77 1.77 0 0 1-1.035-1.612c0-.974.79-1.764 1.764-1.764.477 0 .898.182 1.207.49 1.207-.868 2.88-1.43 4.728-1.487l.898-4.21a.342.342 0 0 1 .42-.255l2.922.617a1.25 1.25 0 0 1 1.118-.694Zm-8.626 7.844a1.249 1.249 0 0 0 0 2.498 1.249 1.249 0 0 0 0-2.498Zm7.232 0a1.249 1.249 0 1 0 0 2.498 1.249 1.249 0 0 0 0-2.498Zm-3.62 5.226c-1.146 0-2.222-.04-3.319.097a.252.252 0 0 0-.169.353c.477.892 1.797 1.519 3.488 1.519 1.69 0 3.01-.627 3.488-1.519a.249.249 0 0 0-.166-.355c-1.097-.135-2.176-.095-3.322-.095Z\" />\n </svg>\n `,\n})\nexport class RedditIconComponent extends IconComponentBase {\n static readonly slug = 'reddit';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'reddit',\n 'social',\n 'forum',\n 'community',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-refresh-ccw',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"1 4 1 10 7 10\" />\n <polyline points=\"23 20 23 14 17 14\" />\n <path d=\"M20.49 9A9 9 0 0 0 5.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 0 1 3.51 15\" />\n </svg>\n `,\n})\nexport class RefreshCcwIconComponent extends IconComponentBase {\n static readonly slug = 'refresh-ccw';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'refresh-ccw',\n 'refresh',\n 'ccw',\n 'reload',\n 'sync',\n 'update',\n 'rotate',\n 'actualiser',\n 'actualizar',\n 'recargar',\n 'ανανέωση',\n 'odśwież',\n 'załaduj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-refresh-cw',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"23 4 23 10 17 10\" />\n <polyline points=\"1 20 1 14 7 14\" />\n <path d=\"M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15\" />\n </svg>\n `,\n})\nexport class RefreshCwIconComponent extends IconComponentBase {\n static readonly slug = 'refresh-cw';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'refresh-cw',\n 'refresh',\n 'cw',\n 'reload',\n 'sync',\n 'update',\n 'rotate',\n 'actualiser',\n 'actualizar',\n 'recargar',\n 'ανανέωση',\n 'odśwież',\n 'załaduj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-repeat',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"17 1 21 5 17 9\" />\n <path d=\"M3 11V9a4 4 0 0 1 4-4h14\" />\n <polyline points=\"7 23 3 19 7 15\" />\n <path d=\"M21 13v2a4 4 0 0 1-4 4H3\" />\n </svg>\n `,\n})\nexport class RepeatIconComponent extends IconComponentBase {\n static readonly slug = 'repeat';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'repeat',\n 'loop',\n 'cycle',\n 'replay',\n 'again',\n 'répéter',\n 'repetir',\n 'επανάληψη',\n 'powtórz',\n 'powtarzaj',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-rewind',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"11 19 2 12 11 5 11 19\" />\n <polygon points=\"22 19 13 12 22 5 22 19\" />\n </svg>\n `,\n})\nexport class RewindIconComponent extends IconComponentBase {\n static readonly slug = 'rewind';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'rewind',\n 'back',\n 'reverse',\n 'media',\n 'player',\n 'retour',\n 'rebobinar',\n 'πίσω',\n 'cofnij',\n 'przewiń',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-rotate-cw',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"23 4 23 10 17 10\" />\n <path d=\"M20.49 15a9 9 0 1 1-2.12-9.36L23 10\" />\n </svg>\n `,\n})\nexport class RotateCwIconComponent extends IconComponentBase {\n static readonly slug = 'rotate-cw';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'rotate-cw',\n 'rotate',\n 'cw',\n 'clockwise',\n 'redo',\n 'turn',\n 'tourner',\n 'girar',\n 'περιστροφή',\n 'obróć',\n 'ponów',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-rss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M4 11a9 9 0 0 1 9 9\" />\n <path d=\"M4 4a16 16 0 0 1 16 16\" />\n <circle\n cx=\"5\"\n cy=\"19\"\n r=\"1\" />\n </svg>\n `,\n})\nexport class RssIconComponent extends IconComponentBase {\n static readonly slug = 'rss';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'rss',\n 'feed',\n 'subscribe',\n 'news',\n 'syndication',\n 'flux',\n 'noticias',\n 'τροφοδοσία',\n 'kanał',\n 'subskrybuj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-save',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z\" />\n <polyline points=\"17 21 17 13 7 13 7 21\" />\n <polyline points=\"7 3 7 8 15 8\" />\n </svg>\n `,\n})\nexport class SaveIconComponent extends IconComponentBase {\n static readonly slug = 'save';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'save',\n 'disk',\n 'store',\n 'floppy',\n 'download',\n 'enregistrer',\n 'guardar',\n 'almacenar',\n 'αποθήκευση',\n 'zapisz',\n 'dysk',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-scissors',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"6\"\n cy=\"6\"\n r=\"3\" />\n <circle\n cx=\"6\"\n cy=\"18\"\n r=\"3\" />\n <line\n x1=\"20\"\n y1=\"4\"\n x2=\"8.12\"\n y2=\"15.88\" />\n <line\n x1=\"14.47\"\n y1=\"14.48\"\n x2=\"20\"\n y2=\"20\" />\n <line\n x1=\"8.12\"\n y1=\"8.12\"\n x2=\"12\"\n y2=\"12\" />\n </svg>\n `,\n})\nexport class ScissorsIconComponent extends IconComponentBase {\n static readonly slug = 'scissors';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'scissors',\n 'cut',\n 'snip',\n 'clip',\n 'shears',\n 'ciseaux',\n 'couper',\n 'tijeras',\n 'cortar',\n 'ψαλίδι',\n 'κοπή',\n 'nożyczki',\n 'tnij',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-search',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"11\"\n cy=\"11\"\n r=\"8\" />\n <path d=\"m21 21-4.35-4.35\" />\n </svg>\n `,\n})\nexport class SearchIconComponent extends IconComponentBase {\n static readonly slug = 'search';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'search',\n 'find',\n 'magnify',\n 'lookup',\n 'query',\n 'recherche',\n 'chercher',\n 'buscar',\n 'búsqueda',\n 'αναζήτηση',\n 'βρες',\n 'szukaj',\n 'wyszukaj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-send',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"22\"\n y1=\"2\"\n x2=\"11\"\n y2=\"13\" />\n <polygon points=\"22 2 15 22 11 13 2 9 22 2\" />\n </svg>\n `,\n})\nexport class SendIconComponent extends IconComponentBase {\n static readonly slug = 'send';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'send',\n 'submit',\n 'message',\n 'plane',\n 'mail',\n 'envoyer',\n 'enviar',\n 'αποστολή',\n 'στείλε',\n 'wyślij',\n 'nadaj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-server',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"2\"\n y=\"2\"\n width=\"20\"\n height=\"8\"\n rx=\"2\"\n ry=\"2\" />\n <rect\n x=\"2\"\n y=\"14\"\n width=\"20\"\n height=\"8\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"6\"\n y1=\"6\"\n x2=\"6.01\"\n y2=\"6\" />\n <line\n x1=\"6\"\n y1=\"18\"\n x2=\"6.01\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class ServerIconComponent extends IconComponentBase {\n static readonly slug = 'server';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'server',\n 'database',\n 'host',\n 'hardware',\n 'cloud',\n 'serveur',\n 'servidor',\n 'διακομιστής',\n 'εξυπηρετητής',\n 'serwer',\n 'host',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-settings',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"3\" />\n <path\n d=\"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06A1.65 1.65 0 0 0 9 4.68a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z\" />\n </svg>\n `,\n})\nexport class SettingsIconComponent extends IconComponentBase {\n static readonly slug = 'settings';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'settings',\n 'gear',\n 'cog',\n 'preferences',\n 'config',\n 'options',\n 'paramètres',\n 'réglages',\n 'ajustes',\n 'configuración',\n 'ρυθμίσεις',\n 'παράμετροι',\n 'ustawienia',\n 'opcje',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-share-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"18\"\n cy=\"5\"\n r=\"3\" />\n <circle\n cx=\"6\"\n cy=\"12\"\n r=\"3\" />\n <circle\n cx=\"18\"\n cy=\"19\"\n r=\"3\" />\n <line\n x1=\"8.59\"\n y1=\"13.51\"\n x2=\"15.42\"\n y2=\"17.49\" />\n <line\n x1=\"15.41\"\n y1=\"6.51\"\n x2=\"8.59\"\n y2=\"10.49\" />\n </svg>\n `,\n})\nexport class Share2IconComponent extends IconComponentBase {\n static readonly slug = 'share-2';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'share-2',\n 'share',\n '2',\n 'send',\n 'network',\n 'social',\n 'partager',\n 'compartir',\n 'κοινοποίηση',\n 'udostępnij',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-share',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"18\"\n cy=\"5\"\n r=\"3\" />\n <circle\n cx=\"6\"\n cy=\"12\"\n r=\"3\" />\n <circle\n cx=\"18\"\n cy=\"19\"\n r=\"3\" />\n <line\n x1=\"8.59\"\n y1=\"13.51\"\n x2=\"15.42\"\n y2=\"17.49\" />\n <line\n x1=\"15.41\"\n y1=\"6.51\"\n x2=\"8.59\"\n y2=\"10.49\" />\n </svg>\n `,\n})\nexport class ShareIconComponent extends IconComponentBase {\n static readonly slug = 'share';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'share',\n 'send',\n 'network',\n 'social',\n 'export',\n 'partager',\n 'compartir',\n 'κοινοποίηση',\n 'μοιραστείτε',\n 'udostępnij',\n 'wyślij',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-shield-off',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M19.69 14a6.9 6.9 0 0 0 .31-2V5l-8-3-3.16 1.18\" />\n <path d=\"M4.73 4.73L4 5v7c0 6 8 10 8 10a20.29 20.29 0 0 0 5.62-4.38\" />\n <line\n x1=\"1\"\n y1=\"1\"\n x2=\"23\"\n y2=\"23\" />\n </svg>\n `,\n})\nexport class ShieldOffIconComponent extends IconComponentBase {\n static readonly slug = 'shield-off';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'shield-off',\n 'shield',\n 'off',\n 'unprotected',\n 'unsafe',\n 'disabled',\n 'bouclier',\n 'escudo',\n 'ασπίδα',\n 'tarcza',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-shield',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z\" />\n </svg>\n `,\n})\nexport class ShieldIconComponent extends IconComponentBase {\n static readonly slug = 'shield';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'shield',\n 'security',\n 'protect',\n 'safe',\n 'guard',\n 'bouclier',\n 'protection',\n 'escudo',\n 'seguridad',\n 'ασπίδα',\n 'προστασία',\n 'tarcza',\n 'ochrona',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-shopping-bag',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M6 2L3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z\" />\n <line\n x1=\"3\"\n y1=\"6\"\n x2=\"21\"\n y2=\"6\" />\n <path d=\"M16 10a4 4 0 0 1-8 0\" />\n </svg>\n `,\n})\nexport class ShoppingBagIconComponent extends IconComponentBase {\n static readonly slug = 'shopping-bag';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'shopping-bag',\n 'shopping',\n 'bag',\n 'store',\n 'purchase',\n 'buy',\n 'sac',\n 'achats',\n 'bolsa',\n 'compras',\n 'τσάντα',\n 'αγορές',\n 'torba',\n 'zakupy',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-shopping-cart',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"9\"\n cy=\"21\"\n r=\"1\" />\n <circle\n cx=\"20\"\n cy=\"21\"\n r=\"1\" />\n <path d=\"M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6\" />\n </svg>\n `,\n})\nexport class ShoppingCartIconComponent extends IconComponentBase {\n static readonly slug = 'shopping-cart';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'shopping-cart',\n 'shopping',\n 'cart',\n 'store',\n 'checkout',\n 'buy',\n 'panier',\n 'caddie',\n 'carrito',\n 'compras',\n 'καλάθι',\n 'αγορές',\n 'koszyk',\n 'zakupy',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-shuffle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"16 3 21 3 21 8\" />\n <line\n x1=\"4\"\n y1=\"20\"\n x2=\"21\"\n y2=\"3\" />\n <polyline points=\"21 16 21 21 16 21\" />\n <line\n x1=\"15\"\n y1=\"15\"\n x2=\"21\"\n y2=\"21\" />\n <line\n x1=\"4\"\n y1=\"4\"\n x2=\"9\"\n y2=\"9\" />\n </svg>\n `,\n})\nexport class ShuffleIconComponent extends IconComponentBase {\n static readonly slug = 'shuffle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'shuffle',\n 'random',\n 'mix',\n 'media',\n 'aléatoire',\n 'aleatorio',\n 'mezclar',\n 'τυχαία',\n 'ανακάτεμα',\n 'losowo',\n 'tasuj',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-sidebar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"3\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"9\"\n y1=\"3\"\n x2=\"9\"\n y2=\"21\" />\n </svg>\n `,\n})\nexport class SidebarIconComponent extends IconComponentBase {\n static readonly slug = 'sidebar';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'sidebar',\n 'panel',\n 'navigation',\n 'layout',\n 'menu',\n 'barre latérale',\n 'panneau',\n 'barra lateral',\n 'panel',\n 'πλευρική μπάρα',\n 'panel boczny',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-skip-back',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"19 20 9 12 19 4 19 20\" />\n <line\n x1=\"5\"\n y1=\"19\"\n x2=\"5\"\n y2=\"5\" />\n </svg>\n `,\n})\nexport class SkipBackIconComponent extends IconComponentBase {\n static readonly slug = 'skip-back';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'skip-back',\n 'skip',\n 'back',\n 'previous',\n 'media',\n 'player',\n 'précédent',\n 'anterior',\n 'προηγούμενο',\n 'poprzedni',\n 'cofnij',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-skip-forward',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"5 4 15 12 5 20 5 4\" />\n <line\n x1=\"19\"\n y1=\"5\"\n x2=\"19\"\n y2=\"19\" />\n </svg>\n `,\n})\nexport class SkipForwardIconComponent extends IconComponentBase {\n static readonly slug = 'skip-forward';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'skip-forward',\n 'skip',\n 'forward',\n 'next',\n 'media',\n 'player',\n 'suivant',\n 'siguiente',\n 'επόμενο',\n 'następny',\n 'do przodu',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * Slack brand mark (Eagami brand-filled).\n *\n * @remarks\n * Up to v1.3 this design shipped as `SlackIconComponent` at slug\n * `ea-icon-slack`. v1.4 reassigns the canonical slug to Feather's outline\n * and moves the brand-filled mark here. Set the `brand` input to render in\n * the official brand colour.\n */\n@Component({\n selector: 'ea-icon-slack-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M5.042 15.165a2.528 2.528 0 0 1-2.52 2.523A2.528 2.528 0 0 1 0 15.165a2.527 2.527 0 0 1 2.522-2.52h2.52v2.52ZM6.313 15.165a2.527 2.527 0 0 1 2.521-2.52 2.527 2.527 0 0 1 2.521 2.52v6.313A2.528 2.528 0 0 1 8.834 24a2.528 2.528 0 0 1-2.521-2.522v-6.313Z\"\n fill=\"#E01E5A\" />\n <path\n d=\"M8.834 5.042a2.528 2.528 0 0 1-2.521-2.52A2.528 2.528 0 0 1 8.834 0a2.528 2.528 0 0 1 2.521 2.522v2.52H8.834ZM8.834 6.313a2.528 2.528 0 0 1 2.521 2.521 2.528 2.528 0 0 1-2.521 2.521H2.522A2.528 2.528 0 0 1 0 8.834a2.528 2.528 0 0 1 2.522-2.521h6.312Z\"\n fill=\"#36C5F0\" />\n <path\n d=\"M18.956 8.834a2.528 2.528 0 0 1 2.522-2.521A2.528 2.528 0 0 1 24 8.834a2.528 2.528 0 0 1-2.522 2.521h-2.522v-2.521ZM17.688 8.834a2.528 2.528 0 0 1-2.523 2.521 2.527 2.527 0 0 1-2.52-2.521V2.522A2.527 2.527 0 0 1 15.165 0a2.528 2.528 0 0 1 2.523 2.522v6.312Z\"\n fill=\"#2EB67D\" />\n <path\n d=\"M15.165 18.956a2.528 2.528 0 0 1 2.523 2.522A2.528 2.528 0 0 1 15.165 24a2.527 2.527 0 0 1-2.52-2.522v-2.522h2.52ZM15.165 17.688a2.527 2.527 0 0 1-2.52-2.523 2.526 2.526 0 0 1 2.52-2.52h6.313A2.527 2.527 0 0 1 24 15.165a2.528 2.528 0 0 1-2.522 2.523h-6.313Z\"\n fill=\"#ECB22E\" />\n </svg>\n `,\n})\nexport class Slack2IconComponent extends IconComponentBase {\n static readonly slug = 'slack-2';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'slack-2',\n 'slack',\n 'chat',\n 'messaging',\n 'workspace',\n 'team',\n 'mark',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * Slack icon (Feather outline).\n *\n * @remarks\n * Prior to v1.4 this slug rendered Eagami's brand-filled Slack mark. v1.4\n * aligns the canonical slug with Feather Icons, so `SlackIconComponent` now\n * renders Feather's outline. The brand-filled mark that previously shipped\n * here has moved to `<ea-icon-slack-2>` / `Slack2IconComponent`.\n */\n@Component({\n selector: 'ea-icon-slack',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M14.5 10c-.83 0-1.5-.67-1.5-1.5v-5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5v5c0 .83-.67 1.5-1.5 1.5z\" />\n <path d=\"M20.5 10H19V8.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5-.67 1.5-1.5 1.5z\" />\n <path\n d=\"M9.5 14c.83 0 1.5.67 1.5 1.5v5c0 .83-.67 1.5-1.5 1.5S8 21.33 8 20.5v-5c0-.83.67-1.5 1.5-1.5z\" />\n <path d=\"M3.5 14H5v1.5c0 .83-.67 1.5-1.5 1.5S2 16.33 2 15.5 2.67 14 3.5 14z\" />\n <path\n d=\"M14 14.5c0-.83.67-1.5 1.5-1.5h5c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5h-5c-.83 0-1.5-.67-1.5-1.5z\" />\n <path d=\"M15.5 19H14v1.5c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5-.67-1.5-1.5-1.5z\" />\n <path\n d=\"M10 9.5C10 8.67 9.33 8 8.5 8h-5C2.67 8 2 8.67 2 9.5S2.67 11 3.5 11h5c.83 0 1.5-.67 1.5-1.5z\" />\n <path d=\"M8.5 5H10V3.5C10 2.67 9.33 2 8.5 2S7 2.67 7 3.5 7.67 5 8.5 5z\" />\n </svg>\n `,\n})\nexport class SlackIconComponent extends IconComponentBase {\n static readonly slug = 'slack';\n static readonly category: IconCategory = 'feather';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'slack',\n 'chat',\n 'messaging',\n 'workspace',\n 'team',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-slash',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"4.93\"\n y1=\"4.93\"\n x2=\"19.07\"\n y2=\"19.07\" />\n </svg>\n `,\n})\nexport class SlashIconComponent extends IconComponentBase {\n static readonly slug = 'slash';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'slash',\n 'cancel',\n 'forbidden',\n 'no',\n 'disabled',\n 'barre',\n 'barra',\n 'πλάγια',\n 'ukośnik',\n 'zakaz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-sliders',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"4\"\n y1=\"21\"\n x2=\"4\"\n y2=\"14\" />\n <line\n x1=\"4\"\n y1=\"10\"\n x2=\"4\"\n y2=\"3\" />\n <line\n x1=\"12\"\n y1=\"21\"\n x2=\"12\"\n y2=\"12\" />\n <line\n x1=\"12\"\n y1=\"8\"\n x2=\"12\"\n y2=\"3\" />\n <line\n x1=\"20\"\n y1=\"21\"\n x2=\"20\"\n y2=\"16\" />\n <line\n x1=\"20\"\n y1=\"12\"\n x2=\"20\"\n y2=\"3\" />\n <line\n x1=\"1\"\n y1=\"14\"\n x2=\"7\"\n y2=\"14\" />\n <line\n x1=\"9\"\n y1=\"8\"\n x2=\"15\"\n y2=\"8\" />\n <line\n x1=\"17\"\n y1=\"16\"\n x2=\"23\"\n y2=\"16\" />\n </svg>\n `,\n})\nexport class SlidersIconComponent extends IconComponentBase {\n static readonly slug = 'sliders';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'sliders',\n 'controls',\n 'settings',\n 'adjust',\n 'mixer',\n 'equalizer',\n 'curseurs',\n 'réglages',\n 'controles',\n 'ajustes',\n 'ρυθμιστικά',\n 'έλεγχοι',\n 'suwaki',\n 'regulacja',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-smartphone',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"5\"\n y=\"2\"\n width=\"14\"\n height=\"20\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"12\"\n y1=\"18\"\n x2=\"12.01\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class SmartphoneIconComponent extends IconComponentBase {\n static readonly slug = 'smartphone';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'smartphone',\n 'phone',\n 'mobile',\n 'device',\n 'cell',\n 'téléphone',\n 'móvil',\n 'celular',\n 'κινητό',\n 'συσκευή',\n 'smartfon',\n 'komórka',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-smile',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <path d=\"M8 14s1.5 2 4 2 4-2 4-2\" />\n <line\n x1=\"9\"\n y1=\"9\"\n x2=\"9.01\"\n y2=\"9\" />\n <line\n x1=\"15\"\n y1=\"9\"\n x2=\"15.01\"\n y2=\"9\" />\n </svg>\n `,\n})\nexport class SmileIconComponent extends IconComponentBase {\n static readonly slug = 'smile';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'smile',\n 'happy',\n 'face',\n 'emoji',\n 'positive',\n 'sourire',\n 'visage',\n 'sonrisa',\n 'feliz',\n 'cara',\n 'χαμόγελο',\n 'χαρούμενος',\n 'uśmiech',\n 'twarz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-soccer-ball',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon\n points=\"12 2 17.88 3.91 21.51 8.91 21.51 15.09 17.88 20.09 12 22 6.12 20.09 2.49 15.09 2.49 8.91 6.12 3.91\" />\n <polygon points=\"12 7 16.755 10.455 14.939 16.045 9.061 16.045 7.245 10.455\" />\n <line\n x1=\"12\"\n y1=\"7\"\n x2=\"12\"\n y2=\"3\" />\n <line\n x1=\"16.755\"\n y1=\"10.455\"\n x2=\"20.56\"\n y2=\"9.22\" />\n <line\n x1=\"14.939\"\n y1=\"16.045\"\n x2=\"17.29\"\n y2=\"19.28\" />\n <line\n x1=\"9.061\"\n y1=\"16.045\"\n x2=\"6.71\"\n y2=\"19.28\" />\n <line\n x1=\"7.245\"\n y1=\"10.455\"\n x2=\"3.44\"\n y2=\"9.22\" />\n </svg>\n `,\n})\nexport class SoccerBallIconComponent extends IconComponentBase {\n static readonly slug = 'soccer-ball';\n static readonly category: IconCategory = 'eagami';\n static readonly tags: ReadonlyArray<string> = [\n 'soccer-ball',\n 'soccer',\n 'ball',\n 'football',\n 'sport',\n 'futbol',\n 'fútbol',\n 'pelota',\n 'ποδόσφαιρο',\n 'μπάλα',\n 'piłka',\n 'nożna',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-speaker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"4\"\n y=\"2\"\n width=\"16\"\n height=\"20\"\n rx=\"2\"\n ry=\"2\" />\n <circle\n cx=\"12\"\n cy=\"14\"\n r=\"4\" />\n <line\n x1=\"12\"\n y1=\"6\"\n x2=\"12.01\"\n y2=\"6\" />\n </svg>\n `,\n})\nexport class SpeakerIconComponent extends IconComponentBase {\n static readonly slug = 'speaker';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'speaker',\n 'audio',\n 'sound',\n 'music',\n 'volume',\n 'haut-parleur',\n 'altavoz',\n 'sonido',\n 'ηχείο',\n 'ήχος',\n 'głośnik',\n 'dźwięk',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-spotify',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#1DB954' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M12 0a12 12 0 1 0 12 12A12 12 0 0 0 12 0Zm5.5 17.32a.748.748 0 0 1-1.029.249c-2.818-1.721-6.366-2.111-10.546-1.156a.748.748 0 0 1-.331-1.458c4.575-1.045 8.498-.594 11.658 1.336a.748.748 0 0 1 .248 1.029Zm1.468-3.265a.935.935 0 0 1-1.286.308c-3.227-1.984-8.146-2.558-11.965-1.4a.935.935 0 1 1-.542-1.79c4.362-1.323 9.782-.682 13.485 1.595a.935.935 0 0 1 .308 1.287Zm.126-3.4c-3.869-2.298-10.252-2.51-13.946-1.39a1.121 1.121 0 1 1-.652-2.146c4.241-1.286 11.288-1.038 15.74 1.605a1.121 1.121 0 0 1-1.142 1.93Z\" />\n </svg>\n `,\n})\nexport class SpotifyIconComponent extends IconComponentBase {\n static readonly slug = 'spotify';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'spotify',\n 'music',\n 'streaming',\n 'audio',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-square',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"3\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n </svg>\n `,\n})\nexport class SquareIconComponent extends IconComponentBase {\n static readonly slug = 'square';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'square',\n 'shape',\n 'box',\n 'rectangle',\n 'carré',\n 'cuadrado',\n 'τετράγωνο',\n 'σχήμα',\n 'kwadrat',\n 'kształt',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-star',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon\n points=\"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2\" />\n </svg>\n `,\n})\nexport class StarIconComponent extends IconComponentBase {\n static readonly slug = 'star';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'star',\n 'favorite',\n 'rating',\n 'bookmark',\n 'like',\n 'étoile',\n 'favori',\n 'estrella',\n 'favorito',\n 'αστέρι',\n 'αγαπημένο',\n 'gwiazda',\n 'ulubione',\n 'shape',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-stop-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <rect\n x=\"9\"\n y=\"9\"\n width=\"6\"\n height=\"6\" />\n </svg>\n `,\n})\nexport class StopCircleIconComponent extends IconComponentBase {\n static readonly slug = 'stop-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'stop-circle',\n 'stop',\n 'circle',\n 'media',\n 'player',\n 'end',\n 'arrêter',\n 'detener',\n 'parar',\n 'σταμάτημα',\n 'τέλος',\n 'zatrzymaj',\n 'stop',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-stripe',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#635BFF' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M13.479 9.883c-1.626-.604-2.512-1.067-2.512-1.803 0-.622.511-.977 1.422-.977 1.667 0 3.379.642 4.558 1.22l.666-4.111c-.935-.446-2.847-1.177-5.49-1.177-1.87 0-3.425.488-4.534 1.4-1.156.953-1.752 2.346-1.752 4.026 0 3.045 1.86 4.353 4.882 5.45 1.949.704 2.6 1.207 2.6 1.98 0 .751-.643 1.184-1.81 1.184-1.469 0-3.876-.72-5.444-1.642l-.666 4.158C6.738 20.213 9.099 21 11.553 21 13.532 21 15.182 20.53 16.3 19.643c1.246-.992 1.886-2.46 1.886-4.36 0-3.114-1.9-4.41-4.706-5.4Z\" />\n </svg>\n `,\n})\nexport class StripeIconComponent extends IconComponentBase {\n static readonly slug = 'stripe';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'stripe',\n 'payment',\n 'checkout',\n 'money',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-sun',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"5\" />\n <line\n x1=\"12\"\n y1=\"1\"\n x2=\"12\"\n y2=\"3\" />\n <line\n x1=\"12\"\n y1=\"21\"\n x2=\"12\"\n y2=\"23\" />\n <line\n x1=\"4.22\"\n y1=\"4.22\"\n x2=\"5.64\"\n y2=\"5.64\" />\n <line\n x1=\"18.36\"\n y1=\"18.36\"\n x2=\"19.78\"\n y2=\"19.78\" />\n <line\n x1=\"1\"\n y1=\"12\"\n x2=\"3\"\n y2=\"12\" />\n <line\n x1=\"21\"\n y1=\"12\"\n x2=\"23\"\n y2=\"12\" />\n <line\n x1=\"4.22\"\n y1=\"19.78\"\n x2=\"5.64\"\n y2=\"18.36\" />\n <line\n x1=\"18.36\"\n y1=\"5.64\"\n x2=\"19.78\"\n y2=\"4.22\" />\n </svg>\n `,\n})\nexport class SunIconComponent extends IconComponentBase {\n static readonly slug = 'sun';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'sun',\n 'light',\n 'day',\n 'theme',\n 'weather',\n 'soleil',\n 'sol',\n 'día',\n 'ήλιος',\n 'φως',\n 'słońce',\n 'dzień',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-sunrise',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M17 18a5 5 0 0 0-10 0\" />\n <line\n x1=\"12\"\n y1=\"2\"\n x2=\"12\"\n y2=\"9\" />\n <line\n x1=\"4.22\"\n y1=\"10.22\"\n x2=\"5.64\"\n y2=\"11.64\" />\n <line\n x1=\"1\"\n y1=\"18\"\n x2=\"3\"\n y2=\"18\" />\n <line\n x1=\"21\"\n y1=\"18\"\n x2=\"23\"\n y2=\"18\" />\n <line\n x1=\"18.36\"\n y1=\"11.64\"\n x2=\"19.78\"\n y2=\"10.22\" />\n <line\n x1=\"23\"\n y1=\"22\"\n x2=\"1\"\n y2=\"22\" />\n <polyline points=\"8 6 12 2 16 6\" />\n </svg>\n `,\n})\nexport class SunriseIconComponent extends IconComponentBase {\n static readonly slug = 'sunrise';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'sunrise',\n 'sun',\n 'morning',\n 'dawn',\n 'weather',\n 'lever du soleil',\n 'amanecer',\n 'aurora',\n 'ανατολή',\n 'πρωί',\n 'wschód',\n 'poranek',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-sunset',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M17 18a5 5 0 0 0-10 0\" />\n <line\n x1=\"12\"\n y1=\"9\"\n x2=\"12\"\n y2=\"2\" />\n <line\n x1=\"4.22\"\n y1=\"10.22\"\n x2=\"5.64\"\n y2=\"11.64\" />\n <line\n x1=\"1\"\n y1=\"18\"\n x2=\"3\"\n y2=\"18\" />\n <line\n x1=\"21\"\n y1=\"18\"\n x2=\"23\"\n y2=\"18\" />\n <line\n x1=\"18.36\"\n y1=\"11.64\"\n x2=\"19.78\"\n y2=\"10.22\" />\n <line\n x1=\"23\"\n y1=\"22\"\n x2=\"1\"\n y2=\"22\" />\n <polyline points=\"16 5 12 9 8 5\" />\n </svg>\n `,\n})\nexport class SunsetIconComponent extends IconComponentBase {\n static readonly slug = 'sunset';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'sunset',\n 'sun',\n 'evening',\n 'dusk',\n 'weather',\n 'coucher du soleil',\n 'atardecer',\n 'puesta',\n 'δύση',\n 'σούρουπο',\n 'zachód',\n 'wieczór',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-table',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18\" />\n </svg>\n `,\n})\nexport class TableIconComponent extends IconComponentBase {\n static readonly slug = 'table';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'table',\n 'grid',\n 'data',\n 'spreadsheet',\n 'rows',\n 'columns',\n 'tableau',\n 'grille',\n 'tabla',\n 'cuadrícula',\n 'πίνακας',\n 'πλέγμα',\n 'tabela',\n 'siatka',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-tablet',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"4\"\n y=\"2\"\n width=\"16\"\n height=\"20\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"12\"\n y1=\"18\"\n x2=\"12.01\"\n y2=\"18\" />\n </svg>\n `,\n})\nexport class TabletIconComponent extends IconComponentBase {\n static readonly slug = 'tablet';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'tablet',\n 'device',\n 'ipad',\n 'screen',\n 'mobile',\n 'tableta',\n 'tableta',\n 'ταμπλέτα',\n 'συσκευή',\n 'tablet',\n 'urządzenie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-tag',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z\" />\n <line\n x1=\"7\"\n y1=\"7\"\n x2=\"7.01\"\n y2=\"7\" />\n </svg>\n `,\n})\nexport class TagIconComponent extends IconComponentBase {\n static readonly slug = 'tag';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'tag',\n 'label',\n 'price',\n 'category',\n 'sticker',\n 'étiquette',\n 'etiqueta',\n 'ετικέτα',\n 'κατηγορία',\n 'etykieta',\n 'metka',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-target',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"6\" />\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"2\" />\n </svg>\n `,\n})\nexport class TargetIconComponent extends IconComponentBase {\n static readonly slug = 'target';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'target',\n 'aim',\n 'goal',\n 'focus',\n 'bullseye',\n 'cible',\n 'objectif',\n 'objetivo',\n 'diana',\n 'στόχος',\n 'σκοπός',\n 'cel',\n 'tarcza',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-terminal',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"4 17 10 11 4 5\" />\n <line\n x1=\"12\"\n y1=\"19\"\n x2=\"20\"\n y2=\"19\" />\n </svg>\n `,\n})\nexport class TerminalIconComponent extends IconComponentBase {\n static readonly slug = 'terminal';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'terminal',\n 'console',\n 'command',\n 'shell',\n 'prompt',\n 'developer',\n 'terminal',\n 'consola',\n 'τερματικό',\n 'κονσόλα',\n 'konsola',\n 'wiersz poleceń',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-thermometer',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M14 14.76V3.5a2.5 2.5 0 0 0-5 0v11.26a4.5 4.5 0 1 0 5 0z\" />\n </svg>\n `,\n})\nexport class ThermometerIconComponent extends IconComponentBase {\n static readonly slug = 'thermometer';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'thermometer',\n 'temperature',\n 'weather',\n 'hot',\n 'cold',\n 'thermomètre',\n 'température',\n 'termómetro',\n 'temperatura',\n 'θερμόμετρο',\n 'θερμοκρασία',\n 'termometr',\n 'temperatura',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-thumbs-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M10 15v4a3 3 0 0 0 3 3l4-9V2H5.72a2 2 0 0 0-2 1.7l-1.38 9a2 2 0 0 0 2 2.3zm7-13h2.67A2.31 2.31 0 0 1 22 4v7a2.31 2.31 0 0 1-2.33 2H17\" />\n </svg>\n `,\n})\nexport class ThumbsDownIconComponent extends IconComponentBase {\n static readonly slug = 'thumbs-down';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'thumbs-down',\n 'thumbs',\n 'down',\n 'dislike',\n 'no',\n 'negative',\n 'pouce',\n 'bas',\n 'pulgar',\n 'abajo',\n 'no me gusta',\n 'αντίχειρας',\n 'κάτω',\n 'kciuk',\n 'dół',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-thumbs-up',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9a2 2 0 0 0-2-2.3zM7 22H4a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2h3\" />\n </svg>\n `,\n})\nexport class ThumbsUpIconComponent extends IconComponentBase {\n static readonly slug = 'thumbs-up';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'thumbs-up',\n 'thumbs',\n 'up',\n 'like',\n 'yes',\n 'approve',\n 'positive',\n 'pouce',\n 'haut',\n 'pulgar',\n 'arriba',\n 'me gusta',\n 'αντίχειρας',\n 'πάνω',\n 'kciuk',\n 'góra',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-toggle-left',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"1\"\n y=\"5\"\n width=\"22\"\n height=\"14\"\n rx=\"7\"\n ry=\"7\" />\n <circle\n cx=\"8\"\n cy=\"12\"\n r=\"3\" />\n </svg>\n `,\n})\nexport class ToggleLeftIconComponent extends IconComponentBase {\n static readonly slug = 'toggle-left';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'toggle-left',\n 'toggle',\n 'left',\n 'switch',\n 'off',\n 'interrupteur',\n 'gauche',\n 'interruptor',\n 'izquierda',\n 'διακόπτης',\n 'αριστερά',\n 'przełącznik',\n 'lewo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-toggle-right',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"1\"\n y=\"5\"\n width=\"22\"\n height=\"14\"\n rx=\"7\"\n ry=\"7\" />\n <circle\n cx=\"16\"\n cy=\"12\"\n r=\"3\" />\n </svg>\n `,\n})\nexport class ToggleRightIconComponent extends IconComponentBase {\n static readonly slug = 'toggle-right';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'toggle-right',\n 'toggle',\n 'right',\n 'switch',\n 'on',\n 'interrupteur',\n 'droite',\n 'interruptor',\n 'derecha',\n 'διακόπτης',\n 'δεξιά',\n 'przełącznik',\n 'prawo',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-tool',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z\" />\n </svg>\n `,\n})\nexport class ToolIconComponent extends IconComponentBase {\n static readonly slug = 'tool';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'tool',\n 'wrench',\n 'fix',\n 'repair',\n 'settings',\n 'outil',\n 'clé',\n 'herramienta',\n 'llave',\n 'εργαλείο',\n 'κλειδί',\n 'narzędzie',\n 'klucz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-trash-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"3 6 5 6 21 6\" />\n <path\n d=\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\" />\n <line\n x1=\"10\"\n y1=\"11\"\n x2=\"10\"\n y2=\"17\" />\n <line\n x1=\"14\"\n y1=\"11\"\n x2=\"14\"\n y2=\"17\" />\n </svg>\n `,\n})\nexport class Trash2IconComponent extends IconComponentBase {\n static readonly slug = 'trash-2';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'trash-2',\n 'trash',\n '2',\n 'delete',\n 'remove',\n 'bin',\n 'garbage',\n 'poubelle',\n 'basura',\n 'eliminar',\n 'κάδος',\n 'διαγραφή',\n 'kosz',\n 'usuń',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-trello',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"3\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n <rect\n x=\"7\"\n y=\"7\"\n width=\"3\"\n height=\"9\" />\n <rect\n x=\"14\"\n y=\"7\"\n width=\"3\"\n height=\"5\" />\n </svg>\n `,\n})\nexport class TrelloIconComponent extends IconComponentBase {\n static readonly slug = 'trello';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'trello',\n 'board',\n 'kanban',\n 'project',\n 'task',\n 'productivity',\n 'atlassian',\n 'cards',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-trending-down',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"23 18 13.5 8.5 8.5 13.5 1 6\" />\n <polyline points=\"17 18 23 18 23 12\" />\n </svg>\n `,\n})\nexport class TrendingDownIconComponent extends IconComponentBase {\n static readonly slug = 'trending-down';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'trending-down',\n 'trending',\n 'down',\n 'decrease',\n 'graph',\n 'arrow',\n 'statistics',\n 'tendance',\n 'baisse',\n 'tendencia',\n 'bajada',\n 'τάση',\n 'κάτω',\n 'trend',\n 'spadek',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-trending-up',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"23 6 13.5 15.5 8.5 10.5 1 18\" />\n <polyline points=\"17 6 23 6 23 12\" />\n </svg>\n `,\n})\nexport class TrendingUpIconComponent extends IconComponentBase {\n static readonly slug = 'trending-up';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'trending-up',\n 'trending',\n 'up',\n 'increase',\n 'graph',\n 'arrow',\n 'statistics',\n 'tendance',\n 'hausse',\n 'tendencia',\n 'subida',\n 'τάση',\n 'πάνω',\n 'trend',\n 'wzrost',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-triangle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z\" />\n </svg>\n `,\n})\nexport class TriangleIconComponent extends IconComponentBase {\n static readonly slug = 'triangle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'triangle',\n 'shape',\n 'arrow',\n 'play',\n 'three',\n 'triangle',\n 'triángulo',\n 'τρίγωνο',\n 'σχήμα',\n 'trójkąt',\n 'kształt',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-trophy',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M8 2h8v6a4 4 0 0 1-8 0z\" />\n <path d=\"M8 4H5v3a3 3 0 0 0 3 3\" />\n <path d=\"M16 4h3v3a3 3 0 0 1-3 3\" />\n <line\n x1=\"12\"\n y1=\"12\"\n x2=\"12\"\n y2=\"16\" />\n <path d=\"M7 22h10l-1-6H8z\" />\n </svg>\n `,\n})\nexport class TrophyIconComponent extends IconComponentBase {\n static readonly slug = 'trophy';\n static readonly category: IconCategory = 'eagami';\n static readonly tags: ReadonlyArray<string> = [\n 'trophy',\n 'award',\n 'prize',\n 'cup',\n 'winner',\n 'sport',\n 'champion',\n 'trophée',\n 'récompense',\n 'trofeo',\n 'premio',\n 'τρόπαιο',\n 'βραβείο',\n 'puchar',\n 'nagroda',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-truck',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"1\"\n y=\"3\"\n width=\"15\"\n height=\"13\" />\n <polygon points=\"16 8 20 8 23 11 23 16 16 16 16 8\" />\n <circle\n cx=\"5.5\"\n cy=\"18.5\"\n r=\"2.5\" />\n <circle\n cx=\"18.5\"\n cy=\"18.5\"\n r=\"2.5\" />\n </svg>\n `,\n})\nexport class TruckIconComponent extends IconComponentBase {\n static readonly slug = 'truck';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'truck',\n 'delivery',\n 'shipping',\n 'vehicle',\n 'transport',\n 'camion',\n 'livraison',\n 'camión',\n 'envío',\n 'φορτηγό',\n 'παράδοση',\n 'ciężarówka',\n 'dostawa',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-tv',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"2\"\n y=\"7\"\n width=\"20\"\n height=\"15\"\n rx=\"2\"\n ry=\"2\" />\n <polyline points=\"17 2 12 7 7 2\" />\n </svg>\n `,\n})\nexport class TvIconComponent extends IconComponentBase {\n static readonly slug = 'tv';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'tv',\n 'television',\n 'screen',\n 'display',\n 'monitor',\n 'télévision',\n 'televisión',\n 'τηλεόραση',\n 'οθόνη',\n 'telewizor',\n 'telewizja',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * Twitch brand mark (Eagami brand-filled).\n *\n * @remarks\n * Up to v1.3 this design shipped as `TwitchIconComponent` at slug\n * `ea-icon-twitch`. v1.4 reassigns the canonical slug to Feather's outline\n * and moves the brand-filled mark here. Set the `brand` input to render in\n * the official brand colour.\n */\n@Component({\n selector: 'ea-icon-twitch-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#9146FF' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M11.571 4.714h1.715v5.143H11.57Zm4.715 0H18v5.143h-1.714ZM6 0 1.714 4.286v15.428h5.143V24l4.286-4.286h3.428L22.286 12V0Zm14.571 11.143-3.428 3.428h-3.429l-3 3v-3H6.857V1.714h13.714Z\" />\n </svg>\n `,\n})\nexport class Twitch2IconComponent extends IconComponentBase {\n static readonly slug = 'twitch-2';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'twitch-2',\n 'twitch',\n 'streaming',\n 'gaming',\n 'video',\n 'mark',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * Twitch icon (Feather outline).\n *\n * @remarks\n * Prior to v1.4 this slug rendered Eagami's brand-filled Twitch mark. v1.4\n * aligns the canonical slug with Feather Icons, so `TwitchIconComponent` now\n * renders Feather's outline. The brand-filled mark that previously shipped\n * here has moved to `<ea-icon-twitch-2>` / `Twitch2IconComponent`.\n */\n@Component({\n selector: 'ea-icon-twitch',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M21 2H3v16h5v4l4-4h5l4-4V2zm-10 9V7m5 4V7\" />\n </svg>\n `,\n})\nexport class TwitchIconComponent extends IconComponentBase {\n static readonly slug = 'twitch';\n static readonly category: IconCategory = 'feather';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'twitch',\n 'streaming',\n 'gaming',\n 'video',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-twitter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M23 3a10.9 10.9 0 0 1-3.14 1.53 4.48 4.48 0 0 0-7.86 3v1A10.66 10.66 0 0 1 3 4s-4 9 5 13a11.64 11.64 0 0 1-7 2c9 5 20 0 20-11.5a4.5 4.5 0 0 0-.08-.83A7.72 7.72 0 0 0 23 3z\" />\n </svg>\n `,\n})\nexport class TwitterIconComponent extends IconComponentBase {\n static readonly slug = 'twitter';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'twitter',\n 'social',\n 'network',\n 'tweet',\n 'bird',\n 'x',\n 'microblog',\n 'feed',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-type',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"4 7 4 4 20 4 20 7\" />\n <line\n x1=\"9\"\n y1=\"20\"\n x2=\"15\"\n y2=\"20\" />\n <line\n x1=\"12\"\n y1=\"4\"\n x2=\"12\"\n y2=\"20\" />\n </svg>\n `,\n})\nexport class TypeIconComponent extends IconComponentBase {\n static readonly slug = 'type';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'type',\n 'text',\n 'font',\n 'typography',\n 'letter',\n 'texte',\n 'police',\n 'fuente',\n 'texto',\n 'γραμματοσειρά',\n 'κείμενο',\n 'czcionka',\n 'tekst',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-umbrella',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M23 12a11.05 11.05 0 0 0-22 0zm-5 7a3 3 0 0 1-6 0v-7\" />\n </svg>\n `,\n})\nexport class UmbrellaIconComponent extends IconComponentBase {\n static readonly slug = 'umbrella';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'umbrella',\n 'rain',\n 'weather',\n 'protection',\n 'parapluie',\n 'pluie',\n 'paraguas',\n 'lluvia',\n 'ομπρέλα',\n 'βροχή',\n 'parasol',\n 'deszcz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-underline',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M6 3v7a6 6 0 0 0 6 6 6 6 0 0 0 6-6V3\" />\n <line\n x1=\"4\"\n y1=\"21\"\n x2=\"20\"\n y2=\"21\" />\n </svg>\n `,\n})\nexport class UnderlineIconComponent extends IconComponentBase {\n static readonly slug = 'underline';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'underline',\n 'text',\n 'format',\n 'style',\n 'souligné',\n 'subrayado',\n 'υπογράμμιση',\n 'podkreślenie',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-unlock',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"11\"\n width=\"18\"\n height=\"11\"\n rx=\"2\"\n ry=\"2\" />\n <path d=\"M7 11V7a5 5 0 0 1 9.9-1\" />\n </svg>\n `,\n})\nexport class UnlockIconComponent extends IconComponentBase {\n static readonly slug = 'unlock';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'unlock',\n 'open',\n 'security',\n 'access',\n 'password',\n 'déverrouiller',\n 'desbloquear',\n 'abierto',\n 'ξεκλείδωμα',\n 'άνοιγμα',\n 'odblokuj',\n 'otwórz',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-upload-cloud',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"16 16 12 12 8 16\" />\n <line\n x1=\"12\"\n y1=\"12\"\n x2=\"12\"\n y2=\"21\" />\n <path d=\"M20.39 18.39A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.3\" />\n <polyline points=\"16 16 12 12 8 16\" />\n </svg>\n `,\n})\nexport class UploadCloudIconComponent extends IconComponentBase {\n static readonly slug = 'upload-cloud';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'upload-cloud',\n 'upload',\n 'cloud',\n 'send',\n 'sync',\n 'backup',\n 'téléverser',\n 'nuage',\n 'subir',\n 'nube',\n 'μεταφόρτωση',\n 'σύννεφο',\n 'prześlij',\n 'chmura',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-user-check',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\" />\n <circle\n cx=\"8.5\"\n cy=\"7\"\n r=\"4\" />\n <polyline points=\"17 11 19 13 23 9\" />\n </svg>\n `,\n})\nexport class UserCheckIconComponent extends IconComponentBase {\n static readonly slug = 'user-check';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'user-check',\n 'user',\n 'check',\n 'verified',\n 'approved',\n 'confirm',\n 'utilisateur',\n 'usuario',\n 'verificado',\n 'χρήστης',\n 'επιβεβαίωση',\n 'użytkownik',\n 'zatwierdź',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-user-minus',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\" />\n <circle\n cx=\"8.5\"\n cy=\"7\"\n r=\"4\" />\n <line\n x1=\"23\"\n y1=\"11\"\n x2=\"17\"\n y2=\"11\" />\n </svg>\n `,\n})\nexport class UserMinusIconComponent extends IconComponentBase {\n static readonly slug = 'user-minus';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'user-minus',\n 'user',\n 'minus',\n 'remove',\n 'delete',\n 'unfollow',\n 'utilisateur',\n 'usuario',\n 'eliminar',\n 'χρήστης',\n 'αφαίρεση',\n 'użytkownik',\n 'usuń',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-user-plus',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\" />\n <circle\n cx=\"8.5\"\n cy=\"7\"\n r=\"4\" />\n <line\n x1=\"20\"\n y1=\"8\"\n x2=\"20\"\n y2=\"14\" />\n <line\n x1=\"23\"\n y1=\"11\"\n x2=\"17\"\n y2=\"11\" />\n </svg>\n `,\n})\nexport class UserPlusIconComponent extends IconComponentBase {\n static readonly slug = 'user-plus';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'user-plus',\n 'user',\n 'plus',\n 'add',\n 'new',\n 'invite',\n 'follow',\n 'utilisateur',\n 'usuario',\n 'añadir',\n 'χρήστης',\n 'προσθήκη',\n 'użytkownik',\n 'dodaj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-user-x',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\" />\n <circle\n cx=\"8.5\"\n cy=\"7\"\n r=\"4\" />\n <line\n x1=\"18\"\n y1=\"8\"\n x2=\"23\"\n y2=\"13\" />\n <line\n x1=\"23\"\n y1=\"8\"\n x2=\"18\"\n y2=\"13\" />\n </svg>\n `,\n})\nexport class UserXIconComponent extends IconComponentBase {\n static readonly slug = 'user-x';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'user-x',\n 'user',\n 'x',\n 'remove',\n 'delete',\n 'block',\n 'utilisateur',\n 'usuario',\n 'bloquear',\n 'χρήστης',\n 'αποκλεισμός',\n 'użytkownik',\n 'zablokuj',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-users',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\" />\n <circle\n cx=\"9\"\n cy=\"7\"\n r=\"4\" />\n <path d=\"M23 21v-2a4 4 0 0 0-3-3.87\" />\n <path d=\"M16 3.13a4 4 0 0 1 0 7.75\" />\n </svg>\n `,\n})\nexport class UsersIconComponent extends IconComponentBase {\n static readonly slug = 'users';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'users',\n 'people',\n 'group',\n 'team',\n 'community',\n 'utilisateurs',\n 'personnes',\n 'usuarios',\n 'personas',\n 'grupo',\n 'χρήστες',\n 'άτομα',\n 'ομάδα',\n 'użytkownicy',\n 'grupa',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-vercel',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#000000' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M12 2 24 22H0Z\" />\n </svg>\n `,\n})\nexport class VercelIconComponent extends IconComponentBase {\n static readonly slug = 'vercel';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = ['vercel', 'hosting', 'deploy', 'nextjs'];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-video-off',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M16 16v1a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h2m5.66 0H14a2 2 0 0 1 2 2v3.34l1 1L23 7v10\" />\n <line\n x1=\"1\"\n y1=\"1\"\n x2=\"23\"\n y2=\"23\" />\n </svg>\n `,\n})\nexport class VideoOffIconComponent extends IconComponentBase {\n static readonly slug = 'video-off';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'video-off',\n 'video',\n 'off',\n 'camera',\n 'disabled',\n 'mute',\n 'vidéo',\n 'vídeo',\n 'cámara',\n 'βίντεο',\n 'κάμερα',\n 'wideo',\n 'wyłączone',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-video',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"23 7 16 12 23 17 23 7\" />\n <rect\n x=\"1\"\n y=\"5\"\n width=\"15\"\n height=\"14\"\n rx=\"2\"\n ry=\"2\" />\n </svg>\n `,\n})\nexport class VideoIconComponent extends IconComponentBase {\n static readonly slug = 'video';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'video',\n 'camera',\n 'film',\n 'movie',\n 'record',\n 'vidéo',\n 'caméra',\n 'vídeo',\n 'cámara',\n 'βίντεο',\n 'κάμερα',\n 'wideo',\n 'kamera',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-voicemail',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"5.5\"\n cy=\"11.5\"\n r=\"4.5\" />\n <circle\n cx=\"18.5\"\n cy=\"11.5\"\n r=\"4.5\" />\n <line\n x1=\"5.5\"\n y1=\"16\"\n x2=\"18.5\"\n y2=\"16\" />\n </svg>\n `,\n})\nexport class VoicemailIconComponent extends IconComponentBase {\n static readonly slug = 'voicemail';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'voicemail',\n 'message',\n 'voice',\n 'phone',\n 'recording',\n 'messagerie',\n 'buzón',\n 'voz',\n 'τηλεφωνητής',\n 'φωνή',\n 'poczta',\n 'głosowa',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-volume-1',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"11 5 6 9 2 9 2 15 6 15 11 19 11 5\" />\n <path d=\"M15.54 8.46a5 5 0 0 1 0 7.07\" />\n </svg>\n `,\n})\nexport class Volume1IconComponent extends IconComponentBase {\n static readonly slug = 'volume-1';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'volume-1',\n 'volume',\n '1',\n 'sound',\n 'audio',\n 'low',\n 'son',\n 'sonido',\n 'ένταση',\n 'ήχος',\n 'głośność',\n 'dźwięk',\n 'music',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-volume-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"11 5 6 9 2 9 2 15 6 15 11 19 11 5\" />\n <path d=\"M19.07 4.93a10 10 0 0 1 0 14.14M15.54 8.46a5 5 0 0 1 0 7.07\" />\n </svg>\n `,\n})\nexport class Volume2IconComponent extends IconComponentBase {\n static readonly slug = 'volume-2';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'volume-2',\n 'volume',\n '2',\n 'sound',\n 'audio',\n 'high',\n 'son',\n 'sonido',\n 'ένταση',\n 'ήχος',\n 'głośność',\n 'dźwięk',\n 'music',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-volume-x',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"11 5 6 9 2 9 2 15 6 15 11 19 11 5\" />\n <line\n x1=\"23\"\n y1=\"9\"\n x2=\"17\"\n y2=\"15\" />\n <line\n x1=\"17\"\n y1=\"9\"\n x2=\"23\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class VolumeXIconComponent extends IconComponentBase {\n static readonly slug = 'volume-x';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'volume-x',\n 'volume',\n 'x',\n 'mute',\n 'silent',\n 'off',\n 'sound',\n 'muet',\n 'silencio',\n 'mudo',\n 'σίγαση',\n 'wyciszony',\n 'cisza',\n 'music',\n 'audio',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-volume',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"11 5 6 9 2 9 2 15 6 15 11 19 11 5\" />\n </svg>\n `,\n})\nexport class VolumeIconComponent extends IconComponentBase {\n static readonly slug = 'volume';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'volume',\n 'sound',\n 'audio',\n 'speaker',\n 'mute',\n 'son',\n 'sonido',\n 'altavoz',\n 'ένταση',\n 'ήχος',\n 'głośność',\n 'dźwięk',\n 'music',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-watch',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"7\" />\n <polyline points=\"12 9 12 12 13.5 13.5\" />\n <path\n d=\"M16.51 17.35l-.35 3.83a2 2 0 0 1-2 1.82H9.83a2 2 0 0 1-2-1.82l-.35-3.83m.01-10.7l.35-3.83A2 2 0 0 1 9.83 1h4.35a2 2 0 0 1 2 1.82l.35 3.83\" />\n </svg>\n `,\n})\nexport class WatchIconComponent extends IconComponentBase {\n static readonly slug = 'watch';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'watch',\n 'time',\n 'clock',\n 'wristwatch',\n 'smartwatch',\n 'montre',\n 'reloj',\n 'ρολόι',\n 'ώρα',\n 'zegarek',\n 'czas',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-wifi-off',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <line\n x1=\"1\"\n y1=\"1\"\n x2=\"23\"\n y2=\"23\" />\n <path d=\"M16.72 11.06A10.94 10.94 0 0 1 19 12.55\" />\n <path d=\"M5 12.55a10.94 10.94 0 0 1 5.17-2.39\" />\n <path d=\"M10.71 5.05A16 16 0 0 1 22.58 9\" />\n <path d=\"M1.42 9a15.91 15.91 0 0 1 4.7-2.88\" />\n <path d=\"M8.53 16.11a6 6 0 0 1 6.95 0\" />\n <line\n x1=\"12\"\n y1=\"20\"\n x2=\"12.01\"\n y2=\"20\" />\n </svg>\n `,\n})\nexport class WifiOffIconComponent extends IconComponentBase {\n static readonly slug = 'wifi-off';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'wifi-off',\n 'wifi',\n 'off',\n 'wireless',\n 'disabled',\n 'offline',\n 'sans-fil',\n 'inalámbrico',\n 'ασύρματο',\n 'εκτός',\n 'bezprzewodowy',\n 'wyłączone',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-wifi',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M5 12.55a11 11 0 0 1 14.08 0\" />\n <path d=\"M1.42 9a16 16 0 0 1 21.16 0\" />\n <path d=\"M8.53 16.11a6 6 0 0 1 6.95 0\" />\n <line\n x1=\"12\"\n y1=\"20\"\n x2=\"12.01\"\n y2=\"20\" />\n </svg>\n `,\n})\nexport class WifiIconComponent extends IconComponentBase {\n static readonly slug = 'wifi';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'wifi',\n 'wireless',\n 'internet',\n 'signal',\n 'network',\n 'sans-fil',\n 'inalámbrico',\n 'señal',\n 'ασύρματο',\n 'σήμα',\n 'bezprzewodowy',\n 'sygnał',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-wind',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M9.59 4.59A2 2 0 1 1 11 8H2m10.59 11.41A2 2 0 1 0 14 16H2m15.73-8.27A2.5 2.5 0 1 1 19.5 12H2\" />\n </svg>\n `,\n})\nexport class WindIconComponent extends IconComponentBase {\n static readonly slug = 'wind';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'wind',\n 'air',\n 'weather',\n 'breeze',\n 'storm',\n 'vent',\n 'viento',\n 'aire',\n 'άνεμος',\n 'αέρας',\n 'wiatr',\n 'powietrze',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-x-circle',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\" />\n <line\n x1=\"15\"\n y1=\"9\"\n x2=\"9\"\n y2=\"15\" />\n <line\n x1=\"9\"\n y1=\"9\"\n x2=\"15\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class XCircleIconComponent extends IconComponentBase {\n static readonly slug = 'x-circle';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'x-circle',\n 'x',\n 'circle',\n 'close',\n 'cancel',\n 'remove',\n 'error',\n 'fermer',\n 'cerrar',\n 'cancelar',\n 'κλείσιμο',\n 'σφάλμα',\n 'zamknij',\n 'błąd',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-x-octagon',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon\n points=\"7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2\" />\n <line\n x1=\"15\"\n y1=\"9\"\n x2=\"9\"\n y2=\"15\" />\n <line\n x1=\"9\"\n y1=\"9\"\n x2=\"15\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class XOctagonIconComponent extends IconComponentBase {\n static readonly slug = 'x-octagon';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'x-octagon',\n 'x',\n 'octagon',\n 'close',\n 'stop',\n 'cancel',\n 'error',\n 'fermer',\n 'detener',\n 'κλείσιμο',\n 'στοπ',\n 'zatrzymaj',\n 'błąd',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-x-square',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <rect\n x=\"3\"\n y=\"3\"\n width=\"18\"\n height=\"18\"\n rx=\"2\"\n ry=\"2\" />\n <line\n x1=\"9\"\n y1=\"9\"\n x2=\"15\"\n y2=\"15\" />\n <line\n x1=\"15\"\n y1=\"9\"\n x2=\"9\"\n y2=\"15\" />\n </svg>\n `,\n})\nexport class XSquareIconComponent extends IconComponentBase {\n static readonly slug = 'x-square';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'x-square',\n 'x',\n 'square',\n 'close',\n 'cancel',\n 'remove',\n 'fermer',\n 'cerrar',\n 'cancelar',\n 'κλείσιμο',\n 'άκυρο',\n 'zamknij',\n 'anuluj',\n ];\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-x-twitter',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#000000' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M18.901 1.153h3.68l-8.04 9.19L24 22.846h-7.406l-5.8-7.584-6.638 7.584H.474l8.6-9.83L0 1.154h7.594l5.243 6.932ZM17.61 20.644h2.039L6.486 3.24H4.298Z\" />\n </svg>\n `,\n})\nexport class XTwitterIconComponent extends IconComponentBase {\n static readonly slug = 'x-twitter';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'x-twitter',\n 'x',\n 'twitter',\n 'social',\n 'tweet',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * YouTube brand mark (Eagami brand-filled).\n *\n * @remarks\n * Up to v1.3 this design shipped as `YoutubeIconComponent` at slug\n * `ea-icon-youtube`. v1.4 reassigns the canonical slug to Feather's outline\n * and moves the brand-filled mark here. Set the `brand` input to render in\n * the official brand colour.\n */\n@Component({\n selector: 'ea-icon-youtube-2',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#FF0000' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814ZM9.546 15.568V8.432L15.818 12l-6.272 3.568Z\" />\n </svg>\n `,\n})\nexport class Youtube2IconComponent extends IconComponentBase {\n static readonly slug = 'youtube-2';\n static readonly category: IconCategory = 'eagami';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'youtube-2',\n 'youtube',\n 'video',\n 'streaming',\n 'social',\n 'mark',\n ];\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * YouTube icon (Feather outline).\n *\n * @remarks\n * Prior to v1.4 this slug rendered Eagami's brand-filled YouTube mark. v1.4\n * aligns the canonical slug with Feather Icons, so `YoutubeIconComponent` now\n * renders Feather's outline. The brand-filled mark that previously shipped\n * here has moved to `<ea-icon-youtube-2>` / `Youtube2IconComponent`.\n */\n@Component({\n selector: 'ea-icon-youtube',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M22.54 6.42a2.78 2.78 0 0 0-1.94-2C18.88 4 12 4 12 4s-6.88 0-8.6.46a2.78 2.78 0 0 0-1.94 2A29 29 0 0 0 1 11.75a29 29 0 0 0 .46 5.33A2.78 2.78 0 0 0 3.4 19c1.72.46 8.6.46 8.6.46s6.88 0 8.6-.46a2.78 2.78 0 0 0 1.94-2 29 29 0 0 0 .46-5.25 29 29 0 0 0-.46-5.33z\" />\n <polygon points=\"9.75 15.02 15.5 11.75 9.75 8.48 9.75 15.02\" />\n </svg>\n `,\n})\nexport class YoutubeIconComponent extends IconComponentBase {\n static readonly slug = 'youtube';\n static readonly category: IconCategory = 'feather';\n static readonly isBrand = true;\n static readonly tags: ReadonlyArray<string> = [\n 'youtube',\n 'video',\n 'streaming',\n 'social',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-zap-off',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polyline points=\"12.41 6.75 13 2 10.57 4.92\" />\n <polyline points=\"18.57 12.91 21 10 15.66 10\" />\n <polyline points=\"8 8 3 14 12 14 11 22 16 16\" />\n <line\n x1=\"1\"\n y1=\"1\"\n x2=\"23\"\n y2=\"23\" />\n </svg>\n `,\n})\nexport class ZapOffIconComponent extends IconComponentBase {\n static readonly slug = 'zap-off';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'zap-off',\n 'zap',\n 'off',\n 'lightning',\n 'disabled',\n 'no power',\n 'éclair',\n 'rayo',\n 'αστραπή',\n 'błyskawica',\n 'wyłączone',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-zap',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <polygon points=\"13 2 3 14 12 14 11 22 21 10 12 10 13 2\" />\n </svg>\n `,\n})\nexport class ZapIconComponent extends IconComponentBase {\n static readonly slug = 'zap';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'zap',\n 'lightning',\n 'bolt',\n 'flash',\n 'electric',\n 'power',\n 'éclair',\n 'foudre',\n 'rayo',\n 'relámpago',\n 'αστραπή',\n 'κεραυνός',\n 'błyskawica',\n 'piorun',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-zoom-in',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"11\"\n cy=\"11\"\n r=\"8\" />\n <line\n x1=\"21\"\n y1=\"21\"\n x2=\"16.65\"\n y2=\"16.65\" />\n <line\n x1=\"11\"\n y1=\"8\"\n x2=\"11\"\n y2=\"14\" />\n <line\n x1=\"8\"\n y1=\"11\"\n x2=\"14\"\n y2=\"11\" />\n </svg>\n `,\n})\nexport class ZoomInIconComponent extends IconComponentBase {\n static readonly slug = 'zoom-in';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'zoom-in',\n 'zoom',\n 'in',\n 'magnify',\n 'enlarge',\n 'closer',\n 'agrandir',\n 'acercar',\n 'ampliar',\n 'μεγέθυνση',\n 'εστίαση',\n 'powiększ',\n 'przybliż',\n ];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n@Component({\n selector: 'ea-icon-zoom-out',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <circle\n cx=\"11\"\n cy=\"11\"\n r=\"8\" />\n <line\n x1=\"21\"\n y1=\"21\"\n x2=\"16.65\"\n y2=\"16.65\" />\n <line\n x1=\"8\"\n y1=\"11\"\n x2=\"14\"\n y2=\"11\" />\n </svg>\n `,\n})\nexport class ZoomOutIconComponent extends IconComponentBase {\n static readonly slug = 'zoom-out';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'zoom-out',\n 'zoom',\n 'out',\n 'shrink',\n 'reduce',\n 'farther',\n 'réduire',\n 'alejar',\n 'reducir',\n 'σμίκρυνση',\n 'απομάκρυνση',\n 'pomniejsz',\n 'oddal',\n ];\n}\n","import { ActivityIconComponent } from './activity.component';\nimport { AirplayIconComponent } from './airplay.component';\nimport { AlertCircleIconComponent } from './alert-circle.component';\nimport { AlertOctagonIconComponent } from './alert-octagon.component';\nimport { AlertTriangleIconComponent } from './alert-triangle.component';\nimport { AlignCenterIconComponent } from './align-center.component';\nimport { AlignJustifyIconComponent } from './align-justify.component';\nimport { AlignLeftIconComponent } from './align-left.component';\nimport { AlignRightIconComponent } from './align-right.component';\nimport { AnchorIconComponent } from './anchor.component';\nimport { ApertureIconComponent } from './aperture.component';\nimport { ArchiveIconComponent } from './archive.component';\nimport { ArrowDownCircleIconComponent } from './arrow-down-circle.component';\nimport { ArrowDownLeftIconComponent } from './arrow-down-left.component';\nimport { ArrowDownRightIconComponent } from './arrow-down-right.component';\nimport { ArrowDownIconComponent } from './arrow-down.component';\nimport { ArrowLeftCircleIconComponent } from './arrow-left-circle.component';\nimport { ArrowLeftIconComponent } from './arrow-left.component';\nimport { ArrowRightCircleIconComponent } from './arrow-right-circle.component';\nimport { ArrowRightIconComponent } from './arrow-right.component';\nimport { ArrowUpCircleIconComponent } from './arrow-up-circle.component';\nimport { ArrowUpLeftIconComponent } from './arrow-up-left.component';\nimport { ArrowUpRightIconComponent } from './arrow-up-right.component';\nimport { ArrowUpIconComponent } from './arrow-up.component';\nimport { AtSignIconComponent } from './at-sign.component';\nimport { AwardIconComponent } from './award.component';\nimport { BarChart2IconComponent } from './bar-chart-2.component';\nimport { BarChartIconComponent } from './bar-chart.component';\nimport { BatteryChargingIconComponent } from './battery-charging.component';\nimport { BatteryIconComponent } from './battery.component';\nimport { BellOffIconComponent } from './bell-off.component';\nimport { BellIconComponent } from './bell.component';\nimport { BluetoothIconComponent } from './bluetooth.component';\nimport { BoldIconComponent } from './bold.component';\nimport { BookOpenIconComponent } from './book-open.component';\nimport { BookIconComponent } from './book.component';\nimport { BookmarkIconComponent } from './bookmark.component';\nimport { BottleIconComponent } from './bottle.component';\nimport { BoxIconComponent } from './box.component';\nimport { BriefcaseIconComponent } from './briefcase.component';\nimport { CalendarIconComponent } from './calendar.component';\nimport { CameraOffIconComponent } from './camera-off.component';\nimport { CameraIconComponent } from './camera.component';\nimport { CandleIconComponent } from './candle.component';\nimport { CastIconComponent } from './cast.component';\nimport { CheckCircleIconComponent } from './check-circle.component';\nimport { CheckSquareIconComponent } from './check-square.component';\nimport { CheckIconComponent } from './check.component';\nimport { ChevronDownIconComponent } from './chevron-down.component';\nimport { ChevronLeftIconComponent } from './chevron-left.component';\nimport { ChevronRightIconComponent } from './chevron-right.component';\nimport { ChevronUpIconComponent } from './chevron-up.component';\nimport { ChevronsDownIconComponent } from './chevrons-down.component';\nimport { ChevronsLeftIconComponent } from './chevrons-left.component';\nimport { ChevronsRightIconComponent } from './chevrons-right.component';\nimport { ChevronsUpDownIconComponent } from './chevrons-up-down.component';\nimport { ChevronsUpIconComponent } from './chevrons-up.component';\nimport { ChromeIconComponent } from './chrome.component';\nimport { CircleIconComponent } from './circle.component';\nimport { ClipboardIconComponent } from './clipboard.component';\nimport { ClockIconComponent } from './clock.component';\nimport { CloudDrizzleIconComponent } from './cloud-drizzle.component';\nimport { CloudLightningIconComponent } from './cloud-lightning.component';\nimport { CloudOffIconComponent } from './cloud-off.component';\nimport { CloudRainIconComponent } from './cloud-rain.component';\nimport { CloudSnowIconComponent } from './cloud-snow.component';\nimport { CloudIconComponent } from './cloud.component';\nimport { CloudflareIconComponent } from './cloudflare.component';\nimport { CodeIconComponent } from './code.component';\nimport { CodepenIconComponent } from './codepen.component';\nimport { CodesandboxIconComponent } from './codesandbox.component';\nimport { CoffeeIconComponent } from './coffee.component';\nimport { ColumnsIconComponent } from './columns.component';\nimport { CommandIconComponent } from './command.component';\nimport { CompassIconComponent } from './compass.component';\nimport { CopyIconComponent } from './copy.component';\nimport { CornerDownLeftIconComponent } from './corner-down-left.component';\nimport { CornerDownRightIconComponent } from './corner-down-right.component';\nimport { CornerLeftDownIconComponent } from './corner-left-down.component';\nimport { CornerLeftUpIconComponent } from './corner-left-up.component';\nimport { CornerRightDownIconComponent } from './corner-right-down.component';\nimport { CornerRightUpIconComponent } from './corner-right-up.component';\nimport { CornerUpLeftIconComponent } from './corner-up-left.component';\nimport { CornerUpRightIconComponent } from './corner-up-right.component';\nimport { CpuIconComponent } from './cpu.component';\nimport { CreditCardIconComponent } from './credit-card.component';\nimport { CropIconComponent } from './crop.component';\nimport { CrosshairIconComponent } from './crosshair.component';\nimport { DatabaseIconComponent } from './database.component';\nimport { DeleteIconComponent } from './delete.component';\nimport { DiscIconComponent } from './disc.component';\nimport { DiscordIconComponent } from './discord.component';\nimport { DivideCircleIconComponent } from './divide-circle.component';\nimport { DivideSquareIconComponent } from './divide-square.component';\nimport { DivideIconComponent } from './divide.component';\nimport { DockerIconComponent } from './docker.component';\nimport { DollarSignIconComponent } from './dollar-sign.component';\nimport { DownloadCloudIconComponent } from './download-cloud.component';\nimport { DownloadIconComponent } from './download.component';\nimport { DribbbleIconComponent } from './dribbble.component';\nimport { DropboxIconComponent } from './dropbox.component';\nimport { DropletIconComponent } from './droplet.component';\nimport { EagamiIconComponent } from './eagami.component';\nimport { Edit2IconComponent } from './edit-2.component';\nimport { Edit3IconComponent } from './edit-3.component';\nimport { EditIconComponent } from './edit.component';\nimport { ExternalLinkIconComponent } from './external-link.component';\nimport { EyeOffIconComponent } from './eye-off.component';\nimport { EyeIconComponent } from './eye.component';\nimport { Facebook2IconComponent } from './facebook-2.component';\nimport { FacebookIconComponent } from './facebook.component';\nimport { FastForwardIconComponent } from './fast-forward.component';\nimport { FeatherIconComponent } from './feather.component';\nimport { Figma2IconComponent } from './figma-2.component';\nimport { FigmaIconComponent } from './figma.component';\nimport { FileMinusIconComponent } from './file-minus.component';\nimport { FilePlusIconComponent } from './file-plus.component';\nimport { FileTextIconComponent } from './file-text.component';\nimport { FileIconComponent } from './file.component';\nimport { FilmIconComponent } from './film.component';\nimport { FilterIconComponent } from './filter.component';\nimport { FlagIconComponent } from './flag.component';\nimport { FolderMinusIconComponent } from './folder-minus.component';\nimport { FolderPlusIconComponent } from './folder-plus.component';\nimport { FolderIconComponent } from './folder.component';\nimport { FramerIconComponent } from './framer.component';\nimport { FrownIconComponent } from './frown.component';\nimport { GiftIconComponent } from './gift.component';\nimport { GitBranchIconComponent } from './git-branch.component';\nimport { GitCommitIconComponent } from './git-commit.component';\nimport { GitMergeIconComponent } from './git-merge.component';\nimport { GitPullRequestIconComponent } from './git-pull-request.component';\nimport { Github2IconComponent } from './github-2.component';\nimport { GithubIconComponent } from './github.component';\nimport { GitlabIconComponent } from './gitlab.component';\nimport { GlobeIconComponent } from './globe.component';\nimport { GoogleIconComponent } from './google.component';\nimport { GridIconComponent } from './grid.component';\nimport { HardDriveIconComponent } from './hard-drive.component';\nimport { HashIconComponent } from './hash.component';\nimport { HeadphonesIconComponent } from './headphones.component';\nimport { HeartIconComponent } from './heart.component';\nimport { HelpCircleIconComponent } from './help-circle.component';\nimport { HeptagonIconComponent } from './heptagon.component';\nimport { HexagonIconComponent } from './hexagon.component';\nimport { HomeIconComponent } from './home.component';\nimport { IconComponentType } from './icon-category';\nimport { ImageIconComponent } from './image.component';\nimport { InboxIconComponent } from './inbox.component';\nimport { InfoIconComponent } from './info.component';\nimport { InstagramIconComponent } from './instagram.component';\nimport { ItalicIconComponent } from './italic.component';\nimport { KeyIconComponent } from './key.component';\nimport { KubernetesIconComponent } from './kubernetes.component';\nimport { LampIconComponent } from './lamp.component';\nimport { LayersIconComponent } from './layers.component';\nimport { LayoutIconComponent } from './layout.component';\nimport { LifeBuoyIconComponent } from './life-buoy.component';\nimport { Link2IconComponent } from './link-2.component';\nimport { LinkIconComponent } from './link.component';\nimport { Linkedin2IconComponent } from './linkedin-2.component';\nimport { LinkedinIconComponent } from './linkedin.component';\nimport { ListIconComponent } from './list.component';\nimport { LoaderIconComponent } from './loader.component';\nimport { LockIconComponent } from './lock.component';\nimport { LogInIconComponent } from './log-in.component';\nimport { LogOutIconComponent } from './log-out.component';\nimport { MailIconComponent } from './mail.component';\nimport { MapPinIconComponent } from './map-pin.component';\nimport { MapIconComponent } from './map.component';\nimport { MastercardIconComponent } from './mastercard.component';\nimport { Maximize2IconComponent } from './maximize-2.component';\nimport { MaximizeIconComponent } from './maximize.component';\nimport { MehIconComponent } from './meh.component';\nimport { MenuIconComponent } from './menu.component';\nimport { MessageCircleIconComponent } from './message-circle.component';\nimport { MessageSquareIconComponent } from './message-square.component';\nimport { MicOffIconComponent } from './mic-off.component';\nimport { MicIconComponent } from './mic.component';\nimport { MicrosoftIconComponent } from './microsoft.component';\nimport { Minimize2IconComponent } from './minimize-2.component';\nimport { MinimizeIconComponent } from './minimize.component';\nimport { MinusCircleIconComponent } from './minus-circle.component';\nimport { MinusSquareIconComponent } from './minus-square.component';\nimport { MinusIconComponent } from './minus.component';\nimport { MongodbIconComponent } from './mongodb.component';\nimport { MonitorIconComponent } from './monitor.component';\nimport { MoonIconComponent } from './moon.component';\nimport { MoreHorizontalIconComponent } from './more-horizontal.component';\nimport { MoreVerticalIconComponent } from './more-vertical.component';\nimport { MousePointerIconComponent } from './mouse-pointer.component';\nimport { MoveIconComponent } from './move.component';\nimport { MusicIconComponent } from './music.component';\nimport { Navigation2IconComponent } from './navigation-2.component';\nimport { NavigationIconComponent } from './navigation.component';\nimport { NetlifyIconComponent } from './netlify.component';\nimport { NotionIconComponent } from './notion.component';\nimport { NpmIconComponent } from './npm.component';\nimport { OctagonIconComponent } from './octagon.component';\nimport { PackageIconComponent } from './package.component';\nimport { PaperclipIconComponent } from './paperclip.component';\nimport { PauseCircleIconComponent } from './pause-circle.component';\nimport { PauseIconComponent } from './pause.component';\nimport { PaypalIconComponent } from './paypal.component';\nimport { PenToolIconComponent } from './pen-tool.component';\nimport { PentagonIconComponent } from './pentagon.component';\nimport { PercentIconComponent } from './percent.component';\nimport { PhoneCallIconComponent } from './phone-call.component';\nimport { PhoneForwardedIconComponent } from './phone-forwarded.component';\nimport { PhoneIncomingIconComponent } from './phone-incoming.component';\nimport { PhoneMissedIconComponent } from './phone-missed.component';\nimport { PhoneOffIconComponent } from './phone-off.component';\nimport { PhoneOutgoingIconComponent } from './phone-outgoing.component';\nimport { PhoneIconComponent } from './phone.component';\nimport { PieChartIconComponent } from './pie-chart.component';\nimport { PlayCircleIconComponent } from './play-circle.component';\nimport { PlayIconComponent } from './play.component';\nimport { PlusCircleIconComponent } from './plus-circle.component';\nimport { PlusSquareIconComponent } from './plus-square.component';\nimport { PlusIconComponent } from './plus.component';\nimport { PocketIconComponent } from './pocket.component';\nimport { PowerIconComponent } from './power.component';\nimport { PrinterIconComponent } from './printer.component';\nimport { RadioIconComponent } from './radio.component';\nimport { RectangleHorizontalIconComponent } from './rectangle-horizontal.component';\nimport { RectangleVerticalIconComponent } from './rectangle-vertical.component';\nimport { RedditIconComponent } from './reddit.component';\nimport { RefreshCcwIconComponent } from './refresh-ccw.component';\nimport { RefreshCwIconComponent } from './refresh-cw.component';\nimport { RepeatIconComponent } from './repeat.component';\nimport { RewindIconComponent } from './rewind.component';\nimport { RotateCcwIconComponent } from './rotate-ccw.component';\nimport { RotateCwIconComponent } from './rotate-cw.component';\nimport { RssIconComponent } from './rss.component';\nimport { SaveIconComponent } from './save.component';\nimport { ScissorsIconComponent } from './scissors.component';\nimport { SearchIconComponent } from './search.component';\nimport { SendIconComponent } from './send.component';\nimport { ServerIconComponent } from './server.component';\nimport { SettingsIconComponent } from './settings.component';\nimport { Share2IconComponent } from './share-2.component';\nimport { ShareIconComponent } from './share.component';\nimport { ShieldOffIconComponent } from './shield-off.component';\nimport { ShieldIconComponent } from './shield.component';\nimport { ShoppingBagIconComponent } from './shopping-bag.component';\nimport { ShoppingCartIconComponent } from './shopping-cart.component';\nimport { ShuffleIconComponent } from './shuffle.component';\nimport { SidebarIconComponent } from './sidebar.component';\nimport { SkipBackIconComponent } from './skip-back.component';\nimport { SkipForwardIconComponent } from './skip-forward.component';\nimport { Slack2IconComponent } from './slack-2.component';\nimport { SlackIconComponent } from './slack.component';\nimport { SlashIconComponent } from './slash.component';\nimport { SlidersIconComponent } from './sliders.component';\nimport { SmartphoneIconComponent } from './smartphone.component';\nimport { SmileIconComponent } from './smile.component';\nimport { SoccerBallIconComponent } from './soccer-ball.component';\nimport { SpeakerIconComponent } from './speaker.component';\nimport { SpotifyIconComponent } from './spotify.component';\nimport { SquareIconComponent } from './square.component';\nimport { StarIconComponent } from './star.component';\nimport { StopCircleIconComponent } from './stop-circle.component';\nimport { StripeIconComponent } from './stripe.component';\nimport { SunIconComponent } from './sun.component';\nimport { SunriseIconComponent } from './sunrise.component';\nimport { SunsetIconComponent } from './sunset.component';\nimport { TableIconComponent } from './table.component';\nimport { TabletIconComponent } from './tablet.component';\nimport { TagIconComponent } from './tag.component';\nimport { TargetIconComponent } from './target.component';\nimport { TerminalIconComponent } from './terminal.component';\nimport { ThermometerIconComponent } from './thermometer.component';\nimport { ThumbsDownIconComponent } from './thumbs-down.component';\nimport { ThumbsUpIconComponent } from './thumbs-up.component';\nimport { ToggleLeftIconComponent } from './toggle-left.component';\nimport { ToggleRightIconComponent } from './toggle-right.component';\nimport { ToolIconComponent } from './tool.component';\nimport { Trash2IconComponent } from './trash-2.component';\nimport { TrashIconComponent } from './trash.component';\nimport { TrelloIconComponent } from './trello.component';\nimport { TrendingDownIconComponent } from './trending-down.component';\nimport { TrendingUpIconComponent } from './trending-up.component';\nimport { TriangleIconComponent } from './triangle.component';\nimport { TrophyIconComponent } from './trophy.component';\nimport { TruckIconComponent } from './truck.component';\nimport { TvIconComponent } from './tv.component';\nimport { Twitch2IconComponent } from './twitch-2.component';\nimport { TwitchIconComponent } from './twitch.component';\nimport { TwitterIconComponent } from './twitter.component';\nimport { TypeIconComponent } from './type.component';\nimport { UmbrellaIconComponent } from './umbrella.component';\nimport { UnderlineIconComponent } from './underline.component';\nimport { UnlockIconComponent } from './unlock.component';\nimport { UploadCloudIconComponent } from './upload-cloud.component';\nimport { UploadIconComponent } from './upload.component';\nimport { UserCheckIconComponent } from './user-check.component';\nimport { UserMinusIconComponent } from './user-minus.component';\nimport { UserPlusIconComponent } from './user-plus.component';\nimport { UserXIconComponent } from './user-x.component';\nimport { UserIconComponent } from './user.component';\nimport { UsersIconComponent } from './users.component';\nimport { VercelIconComponent } from './vercel.component';\nimport { VideoOffIconComponent } from './video-off.component';\nimport { VideoIconComponent } from './video.component';\nimport { VoicemailIconComponent } from './voicemail.component';\nimport { Volume1IconComponent } from './volume-1.component';\nimport { Volume2IconComponent } from './volume-2.component';\nimport { VolumeXIconComponent } from './volume-x.component';\nimport { VolumeIconComponent } from './volume.component';\nimport { WatchIconComponent } from './watch.component';\nimport { WifiOffIconComponent } from './wifi-off.component';\nimport { WifiIconComponent } from './wifi.component';\nimport { WindIconComponent } from './wind.component';\nimport { XCircleIconComponent } from './x-circle.component';\nimport { XOctagonIconComponent } from './x-octagon.component';\nimport { XSquareIconComponent } from './x-square.component';\nimport { XTwitterIconComponent } from './x-twitter.component';\nimport { XIconComponent } from './x.component';\nimport { Youtube2IconComponent } from './youtube-2.component';\nimport { YoutubeIconComponent } from './youtube.component';\nimport { ZapOffIconComponent } from './zap-off.component';\nimport { ZapIconComponent } from './zap.component';\nimport { ZoomInIconComponent } from './zoom-in.component';\nimport { ZoomOutIconComponent } from './zoom-out.component';\n\n/**\n * Flat list of every non-deprecated icon component shipped by Eagami UI,\n * sorted by `slug` so that consumers iterating it (the `/ui/icons` reference\n * page, the sandbox gallery, downstream pickers) get a stable alphabetical\n * order where a base icon always precedes its `-2` variant (e.g. `facebook`\n * before `facebook-2`). The literal order below is left in class-name order\n * for diff-friendliness; the `.sort()` at the bottom is the source of truth.\n *\n * Bundle-size note: importing this constant brings every icon component into\n * the consuming bundle, which is the right trade-off when you actually want\n * the full set. For single-icon usage import the component directly (e.g.\n * `import { HomeIconComponent } from '@eagami/ui'`) and the bundler will\n * tree-shake `ICONS` away.\n *\n * Deprecated aliases (e.g. `PencilIconComponent`) are intentionally excluded\n * so they don't surface in generated catalogues.\n */\nexport const ICONS: ReadonlyArray<IconComponentType> = (\n [\n ActivityIconComponent,\n AirplayIconComponent,\n AlertCircleIconComponent,\n AlertOctagonIconComponent,\n AlertTriangleIconComponent,\n AlignCenterIconComponent,\n AlignJustifyIconComponent,\n AlignLeftIconComponent,\n AlignRightIconComponent,\n AnchorIconComponent,\n ApertureIconComponent,\n ArchiveIconComponent,\n ArrowDownCircleIconComponent,\n ArrowDownLeftIconComponent,\n ArrowDownRightIconComponent,\n ArrowDownIconComponent,\n ArrowLeftCircleIconComponent,\n ArrowLeftIconComponent,\n ArrowRightCircleIconComponent,\n ArrowRightIconComponent,\n ArrowUpCircleIconComponent,\n ArrowUpLeftIconComponent,\n ArrowUpRightIconComponent,\n ArrowUpIconComponent,\n AtSignIconComponent,\n AwardIconComponent,\n BarChart2IconComponent,\n BarChartIconComponent,\n BatteryChargingIconComponent,\n BatteryIconComponent,\n BellOffIconComponent,\n BellIconComponent,\n BluetoothIconComponent,\n BoldIconComponent,\n BookOpenIconComponent,\n BookIconComponent,\n BookmarkIconComponent,\n BottleIconComponent,\n BoxIconComponent,\n BriefcaseIconComponent,\n CalendarIconComponent,\n CameraOffIconComponent,\n CameraIconComponent,\n CandleIconComponent,\n CastIconComponent,\n CheckCircleIconComponent,\n CheckSquareIconComponent,\n CheckIconComponent,\n ChevronDownIconComponent,\n ChevronLeftIconComponent,\n ChevronRightIconComponent,\n ChevronUpIconComponent,\n ChevronsDownIconComponent,\n ChevronsLeftIconComponent,\n ChevronsRightIconComponent,\n ChevronsUpDownIconComponent,\n ChevronsUpIconComponent,\n ChromeIconComponent,\n CircleIconComponent,\n ClipboardIconComponent,\n ClockIconComponent,\n CloudDrizzleIconComponent,\n CloudLightningIconComponent,\n CloudOffIconComponent,\n CloudRainIconComponent,\n CloudSnowIconComponent,\n CloudIconComponent,\n CloudflareIconComponent,\n CodeIconComponent,\n CodepenIconComponent,\n CodesandboxIconComponent,\n CoffeeIconComponent,\n ColumnsIconComponent,\n CommandIconComponent,\n CompassIconComponent,\n CopyIconComponent,\n CornerDownLeftIconComponent,\n CornerDownRightIconComponent,\n CornerLeftDownIconComponent,\n CornerLeftUpIconComponent,\n CornerRightDownIconComponent,\n CornerRightUpIconComponent,\n CornerUpLeftIconComponent,\n CornerUpRightIconComponent,\n CpuIconComponent,\n CreditCardIconComponent,\n CropIconComponent,\n CrosshairIconComponent,\n DatabaseIconComponent,\n DeleteIconComponent,\n DiscIconComponent,\n DiscordIconComponent,\n DivideCircleIconComponent,\n DivideSquareIconComponent,\n DivideIconComponent,\n DockerIconComponent,\n DollarSignIconComponent,\n DownloadCloudIconComponent,\n DownloadIconComponent,\n DribbbleIconComponent,\n DropboxIconComponent,\n DropletIconComponent,\n EagamiIconComponent,\n Edit2IconComponent,\n Edit3IconComponent,\n EditIconComponent,\n ExternalLinkIconComponent,\n EyeOffIconComponent,\n EyeIconComponent,\n Facebook2IconComponent,\n FacebookIconComponent,\n FastForwardIconComponent,\n FeatherIconComponent,\n Figma2IconComponent,\n FigmaIconComponent,\n FileMinusIconComponent,\n FilePlusIconComponent,\n FileTextIconComponent,\n FileIconComponent,\n FilmIconComponent,\n FilterIconComponent,\n FlagIconComponent,\n FolderMinusIconComponent,\n FolderPlusIconComponent,\n FolderIconComponent,\n FramerIconComponent,\n FrownIconComponent,\n GiftIconComponent,\n GitBranchIconComponent,\n GitCommitIconComponent,\n GitMergeIconComponent,\n GitPullRequestIconComponent,\n Github2IconComponent,\n GithubIconComponent,\n GitlabIconComponent,\n GlobeIconComponent,\n GoogleIconComponent,\n GridIconComponent,\n HardDriveIconComponent,\n HashIconComponent,\n HeadphonesIconComponent,\n HeartIconComponent,\n HelpCircleIconComponent,\n HeptagonIconComponent,\n HexagonIconComponent,\n HomeIconComponent,\n ImageIconComponent,\n InboxIconComponent,\n InfoIconComponent,\n InstagramIconComponent,\n ItalicIconComponent,\n KeyIconComponent,\n KubernetesIconComponent,\n LampIconComponent,\n LayersIconComponent,\n LayoutIconComponent,\n LifeBuoyIconComponent,\n Link2IconComponent,\n LinkIconComponent,\n Linkedin2IconComponent,\n LinkedinIconComponent,\n ListIconComponent,\n LoaderIconComponent,\n LockIconComponent,\n LogInIconComponent,\n LogOutIconComponent,\n MailIconComponent,\n MapPinIconComponent,\n MapIconComponent,\n MastercardIconComponent,\n Maximize2IconComponent,\n MaximizeIconComponent,\n MehIconComponent,\n MenuIconComponent,\n MessageCircleIconComponent,\n MessageSquareIconComponent,\n MicOffIconComponent,\n MicIconComponent,\n MicrosoftIconComponent,\n Minimize2IconComponent,\n MinimizeIconComponent,\n MinusCircleIconComponent,\n MinusSquareIconComponent,\n MinusIconComponent,\n MongodbIconComponent,\n MonitorIconComponent,\n MoonIconComponent,\n MoreHorizontalIconComponent,\n MoreVerticalIconComponent,\n MousePointerIconComponent,\n MoveIconComponent,\n MusicIconComponent,\n Navigation2IconComponent,\n NavigationIconComponent,\n NetlifyIconComponent,\n NotionIconComponent,\n NpmIconComponent,\n OctagonIconComponent,\n PackageIconComponent,\n PaperclipIconComponent,\n PauseCircleIconComponent,\n PauseIconComponent,\n PaypalIconComponent,\n PenToolIconComponent,\n PentagonIconComponent,\n PercentIconComponent,\n PhoneCallIconComponent,\n PhoneForwardedIconComponent,\n PhoneIncomingIconComponent,\n PhoneMissedIconComponent,\n PhoneOffIconComponent,\n PhoneOutgoingIconComponent,\n PhoneIconComponent,\n PieChartIconComponent,\n PlayCircleIconComponent,\n PlayIconComponent,\n PlusCircleIconComponent,\n PlusSquareIconComponent,\n PlusIconComponent,\n PocketIconComponent,\n PowerIconComponent,\n PrinterIconComponent,\n RadioIconComponent,\n RectangleHorizontalIconComponent,\n RectangleVerticalIconComponent,\n RedditIconComponent,\n RefreshCcwIconComponent,\n RefreshCwIconComponent,\n RepeatIconComponent,\n RewindIconComponent,\n RotateCcwIconComponent,\n RotateCwIconComponent,\n RssIconComponent,\n SaveIconComponent,\n ScissorsIconComponent,\n SearchIconComponent,\n SendIconComponent,\n ServerIconComponent,\n SettingsIconComponent,\n Share2IconComponent,\n ShareIconComponent,\n ShieldOffIconComponent,\n ShieldIconComponent,\n ShoppingBagIconComponent,\n ShoppingCartIconComponent,\n ShuffleIconComponent,\n SidebarIconComponent,\n SkipBackIconComponent,\n SkipForwardIconComponent,\n Slack2IconComponent,\n SlackIconComponent,\n SlashIconComponent,\n SlidersIconComponent,\n SmartphoneIconComponent,\n SmileIconComponent,\n SoccerBallIconComponent,\n SpeakerIconComponent,\n SpotifyIconComponent,\n SquareIconComponent,\n StarIconComponent,\n StopCircleIconComponent,\n StripeIconComponent,\n SunIconComponent,\n SunriseIconComponent,\n SunsetIconComponent,\n TableIconComponent,\n TabletIconComponent,\n TagIconComponent,\n TargetIconComponent,\n TerminalIconComponent,\n ThermometerIconComponent,\n ThumbsDownIconComponent,\n ThumbsUpIconComponent,\n ToggleLeftIconComponent,\n ToggleRightIconComponent,\n ToolIconComponent,\n Trash2IconComponent,\n TrashIconComponent,\n TrelloIconComponent,\n TrendingDownIconComponent,\n TrendingUpIconComponent,\n TriangleIconComponent,\n TrophyIconComponent,\n TruckIconComponent,\n TvIconComponent,\n Twitch2IconComponent,\n TwitchIconComponent,\n TwitterIconComponent,\n TypeIconComponent,\n UmbrellaIconComponent,\n UnderlineIconComponent,\n UnlockIconComponent,\n UploadCloudIconComponent,\n UploadIconComponent,\n UserCheckIconComponent,\n UserMinusIconComponent,\n UserPlusIconComponent,\n UserXIconComponent,\n UserIconComponent,\n UsersIconComponent,\n VercelIconComponent,\n VideoOffIconComponent,\n VideoIconComponent,\n VoicemailIconComponent,\n Volume1IconComponent,\n Volume2IconComponent,\n VolumeXIconComponent,\n VolumeIconComponent,\n WatchIconComponent,\n WifiOffIconComponent,\n WifiIconComponent,\n WindIconComponent,\n XCircleIconComponent,\n XOctagonIconComponent,\n XSquareIconComponent,\n XTwitterIconComponent,\n XIconComponent,\n Youtube2IconComponent,\n YoutubeIconComponent,\n ZapOffIconComponent,\n ZapIconComponent,\n ZoomInIconComponent,\n ZoomOutIconComponent,\n ] as IconComponentType[]\n).sort((a, b) => a.slug.localeCompare(b.slug));\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nimport { IconComponentBase } from './icon-category';\n\n/**\n * @deprecated Will be removed in v2.0.0. The icon depicts Apple Inc.'s logo,\n * which is more strictly protected than other brand marks. Source the asset\n * directly from Apple per their brand guidelines for use cases like \"Sign in\n * with Apple\".\n */\n@Component({\n selector: 'ea-icon-apple',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { '[style.color]': \"brand() ? '#000000' : null\" },\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"currentColor\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path\n d=\"M17.05 20.28c-.98.95-2.05.88-3.08.4-1.09-.5-2.08-.48-3.24 0-1.44.62-2.2.44-3.06-.4C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.8 1.18-.24 2.31-.93 3.57-.84 1.51.12 2.65.72 3.4 1.8-3.12 1.87-2.38 5.98.48 7.13-.57 1.5-1.31 2.99-2.54 4.09ZM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.32 2.32-1.55 4.3-3.74 4.25Z\" />\n </svg>\n `,\n})\nexport class AppleIconComponent extends IconComponentBase {\n readonly brand = input<boolean>(false);\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\nimport { IconCategory, IconComponentBase } from './icon-category';\n\n/**\n * @deprecated Will be removed in v2.0.0. The `pencil` icon depicts the same\n * mark as Feather's canonical `edit-2` (with a marginally different cap\n * curvature) and is being retired as redundant. Switch to `<ea-icon-edit-2>`\n * / `Edit2IconComponent`.\n */\n@Component({\n selector: 'ea-icon-pencil',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <svg\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n width=\"100%\"\n height=\"100%\">\n <path d=\"M17 3a2.83 2.83 0 0 1 4 4L7.5 20.5 2 22l1.5-5.5Z\" />\n </svg>\n `,\n})\nexport class PencilIconComponent extends IconComponentBase {\n static readonly slug = 'pencil';\n static readonly category: IconCategory = 'feather';\n static readonly tags: ReadonlyArray<string> = [\n 'edit-2',\n 'edit',\n '2',\n 'pencil',\n 'modify',\n 'write',\n 'éditer',\n 'crayon',\n 'editar',\n 'lápiz',\n 'επεξεργασία',\n 'μολύβι',\n 'edytuj',\n 'ołówek',\n ];\n}\n","import { NgClass } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n computed,\n forwardRef,\n inject,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { AlertCircleIconComponent } from '../icons/alert-circle.component';\nimport { EyeOffIconComponent } from '../icons/eye-off.component';\nimport { EyeIconComponent } from '../icons/eye.component';\n\n/** Visual size of the input. */\nexport type InputSize = 'sm' | 'md' | 'lg';\n/** HTML `type` attribute applied to the underlying `<input>`. */\nexport type InputType =\n | 'text'\n | 'email'\n | 'password'\n | 'number'\n | 'search'\n | 'tel'\n | 'url';\n\n/**\n * Single-line text field with label, hint, and error message support.\n * Includes a built-in show/hide toggle for `password` inputs and integrates\n * with Angular forms via `ControlValueAccessor`. Prefix and suffix content\n * can be projected via the `prefix` and `suffix` slots.\n */\n@Component({\n selector: 'ea-input',\n templateUrl: './input.component.html',\n styleUrl: './input.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AlertCircleIconComponent, EyeIconComponent, EyeOffIconComponent, NgClass],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => InputComponent),\n multi: true,\n },\n ],\n})\nexport class InputComponent implements ControlValueAccessor, AfterViewInit {\n readonly inputEl = viewChild<ElementRef<HTMLInputElement>>('inputEl');\n protected readonly i18n = inject(EagamiI18nService);\n\n // Inputs\n readonly label = input<string | undefined>(undefined);\n readonly type = input<InputType>('text');\n readonly placeholder = input<string>('');\n readonly size = input<InputSize>('md');\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly autocomplete = input<string | undefined>(undefined);\n readonly autofocus = input<boolean>(false);\n readonly showPasswordToggle = input<boolean>(true);\n readonly id = input<string>(`ea-input-${Math.random().toString(36).slice(2, 9)}`);\n\n // Two-way value binding\n readonly value = model<string>('');\n\n // Internal state\n readonly isFocused = signal(false);\n readonly passwordVisible = signal(false);\n private readonly _formDisabled = signal(false);\n\n // Outputs\n /** Fires when the input receives focus. */\n readonly focused = output<FocusEvent>();\n /** Fires when the input loses focus. */\n readonly blurred = output<FocusEvent>();\n\n // ControlValueAccessor callbacks\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly effectiveType = computed<InputType>(() =>\n this.type() === 'password' && this.passwordVisible() ? 'text' : this.type(),\n );\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly wrapperClasses = computed(() => ({\n [`ea-input-wrapper--${this.size()}`]: true,\n 'ea-input-wrapper--error': this.hasError(),\n 'ea-input-wrapper--focused': this.isFocused(),\n 'ea-input-wrapper--disabled': this.isDisabled(),\n 'ea-input-wrapper--readonly': this.readonly(),\n }));\n\n ngAfterViewInit(): void {\n if (this.autofocus()) {\n setTimeout(() => this.inputEl()?.nativeElement.focus());\n }\n }\n\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n // Handlers\n handleInput(event: Event): void {\n const value = (event.target as HTMLInputElement).value;\n this.value.set(value);\n this.onChange(value);\n }\n\n handleFocus(event: FocusEvent): void {\n this.isFocused.set(true);\n this.focused.emit(event);\n }\n\n handleBlur(event: FocusEvent): void {\n this.isFocused.set(false);\n this.onTouched();\n this.blurred.emit(event);\n }\n\n /** Toggles the password reveal state for `type=\"password\"` inputs. */\n togglePasswordVisibility(): void {\n this.passwordVisible.update(value => !value);\n }\n\n /** Moves keyboard focus to the underlying native input element. */\n focus(): void {\n this.inputEl()?.nativeElement.focus();\n }\n}\n","<div class=\"ea-input-field\">\n @if (label()) {\n <label\n class=\"ea-input-field__label\"\n [for]=\"id()\"\n [class.ea-input-field__label--required]=\"required()\">\n {{ label() }}\n </label>\n }\n\n <div\n class=\"ea-input-wrapper\"\n [ngClass]=\"wrapperClasses()\">\n <!-- Prefix slot (icon or text) -->\n <span class=\"ea-input-wrapper__prefix\">\n <ng-content select=\"[slot=prefix]\" />\n </span>\n\n <input\n #inputEl\n class=\"ea-input\"\n [id]=\"id()\"\n [type]=\"effectiveType()\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"isDisabled()\"\n [readOnly]=\"readonly()\"\n [required]=\"required()\"\n [value]=\"value()\"\n [attr.autocomplete]=\"autocomplete() ?? null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (input)=\"handleInput($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\" />\n\n <!-- Suffix slot (icon, clear button, etc.) -->\n <span class=\"ea-input-wrapper__suffix\">\n <ng-content select=\"[slot=suffix]\" />\n </span>\n\n <!-- Built-in password visibility toggle -->\n @if (type() === 'password' && showPasswordToggle()) {\n <button\n type=\"button\"\n class=\"ea-input-wrapper__password-toggle\"\n [attr.aria-label]=\"\n passwordVisible()\n ? i18n.messages().input.hidePassword\n : i18n.messages().input.showPassword\n \"\n [attr.aria-pressed]=\"passwordVisible()\"\n (click)=\"togglePasswordVisibility()\">\n @if (passwordVisible()) {\n <ea-icon-eye-off />\n } @else {\n <ea-icon-eye />\n }\n </button>\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-input-field__message ea-input-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n <ea-icon-alert-circle class=\"ea-input-field__message-icon\" />\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-input-field__message ea-input-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostListener,\n Injector,\n afterNextRender,\n computed,\n inject,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\n\n/** Placement of the menu list relative to its trigger. */\nexport type MenuPlacement = 'bottom-start' | 'bottom-end' | 'top-start' | 'top-end';\n\n/**\n * Popup action menu attached to any focusable element via the\n * `[eaMenuTrigger]` directive. Supports keyboard navigation\n * (arrow keys, Home/End), closes on outside click or Escape, and restores\n * focus to the trigger on close.\n */\n@Component({\n selector: 'ea-menu',\n imports: [NgClass],\n templateUrl: './menu.component.html',\n styleUrl: './menu.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MenuComponent {\n private readonly injector = inject(Injector);\n private readonly i18n = inject(EagamiI18nService);\n private readonly listEl = viewChild<ElementRef<HTMLElement>>('listEl');\n\n readonly placement = input<MenuPlacement>('bottom-start');\n readonly disabled = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined, {\n alias: 'aria-label',\n });\n readonly id = input<string>(`ea-menu-${Math.random().toString(36).slice(2, 9)}`);\n\n /** Accessible label for the menu, falling back to the active locale. */\n readonly resolvedAriaLabel = computed(\n () => this.ariaLabel() ?? this.i18n.messages().menu.label,\n );\n\n readonly open = model<boolean>(false);\n /** Fires when the menu opens. */\n readonly opened = output<void>();\n /** Fires when the menu closes. */\n readonly closed = output<void>();\n\n private triggerEl: HTMLElement | null = null;\n private readonly triggerRect = signal<DOMRect | null>(null);\n\n readonly listClasses = computed(() => ({\n [`ea-menu__list--${this.placement()}`]: true,\n }));\n\n readonly listStyle = computed<Record<string, string>>(() => {\n const rect = this.triggerRect();\n if (!rect) return {};\n const placement = this.placement();\n const gap = 4;\n const style: Record<string, string> = {};\n\n if (placement === 'bottom-start' || placement === 'bottom-end') {\n style['top'] = `${rect.bottom + gap}px`;\n } else {\n style['bottom'] = `${window.innerHeight - rect.top + gap}px`;\n }\n\n if (placement === 'bottom-start' || placement === 'top-start') {\n style['left'] = `${rect.left}px`;\n } else {\n style['right'] = `${window.innerWidth - rect.right}px`;\n }\n\n return style;\n });\n\n /** Toggles the menu open state, anchoring it to the given trigger element. */\n toggleAt(triggerEl: HTMLElement): void {\n if (this.disabled()) return;\n if (this.open()) {\n this.close();\n } else {\n this.openAt(triggerEl);\n }\n }\n\n /** Opens the menu anchored to the given trigger element and focuses the first item. */\n openAt(triggerEl: HTMLElement): void {\n if (this.disabled()) return;\n this.triggerEl = triggerEl;\n this.triggerRect.set(triggerEl.getBoundingClientRect());\n this.open.set(true);\n this.opened.emit();\n afterNextRender(() => this.focusFirstItem(), { injector: this.injector });\n }\n\n /**\n * Closes the menu if it is open. Pass `restoreFocus: true` to return focus\n * to the trigger element (used when closing via Escape or item activation;\n * not used on outside click, where the user has chosen a new focus target).\n */\n close(restoreFocus = false): void {\n if (!this.open()) return;\n this.open.set(false);\n this.closed.emit();\n if (restoreFocus) this.triggerEl?.focus();\n }\n\n private getEnabledItems(): HTMLButtonElement[] {\n const list = this.listEl()?.nativeElement;\n if (!list) return [];\n return Array.from(\n list.querySelectorAll<HTMLButtonElement>('[role=\"menuitem\"]:not([disabled])'),\n );\n }\n\n private focusFirstItem(): void {\n this.getEnabledItems()[0]?.focus();\n }\n\n @HostListener('document:keydown', ['$event'])\n onKeydown(event: KeyboardEvent): void {\n if (!this.open()) return;\n const list = this.listEl()?.nativeElement;\n const active = document.activeElement as HTMLElement | null;\n if (!list || !active || !list.contains(active)) return;\n const items = this.getEnabledItems();\n if (items.length === 0) return;\n\n const current = items.indexOf(active as HTMLButtonElement);\n let next = -1;\n\n switch (event.key) {\n case 'ArrowDown':\n event.preventDefault();\n next = current < items.length - 1 ? current + 1 : 0;\n break;\n case 'ArrowUp':\n event.preventDefault();\n next = current > 0 ? current - 1 : items.length - 1;\n break;\n case 'Home':\n event.preventDefault();\n next = 0;\n break;\n case 'End':\n event.preventDefault();\n next = items.length - 1;\n break;\n }\n\n if (next >= 0) items[next].focus();\n }\n\n @HostListener('document:click', ['$event'])\n onDocumentClick(event: Event): void {\n if (!this.open()) return;\n const target = event.target as Node;\n if (this.triggerEl?.contains(target)) return;\n if (this.listEl()?.nativeElement.contains(target)) return;\n this.close();\n }\n\n @HostListener('document:keydown.escape')\n onEscape(): void {\n if (!this.open()) return;\n this.close(true);\n }\n\n @HostListener('window:resize')\n @HostListener('window:scroll')\n onViewportChange(): void {\n if (!this.open() || !this.triggerEl) return;\n this.triggerRect.set(this.triggerEl.getBoundingClientRect());\n }\n}\n","@if (open()) {\n <div\n #listEl\n class=\"ea-menu__list\"\n role=\"menu\"\n [id]=\"id()\"\n [ngClass]=\"listClasses()\"\n [style]=\"listStyle()\"\n [attr.aria-label]=\"resolvedAriaLabel()\">\n <ng-content />\n </div>\n}\n","import { ChangeDetectionStrategy, Component, inject, input, output } from '@angular/core';\n\nimport { MenuComponent } from './menu.component';\n\n/** Visual style of a menu item — `danger` for destructive actions. */\nexport type MenuItemVariant = 'default' | 'danger';\n\n/**\n * Selectable row inside an `ea-menu`. Supports leading icons via the `icon`\n * content slot, a disabled state, and a `danger` variant for destructive\n * actions. Activating an item closes its parent menu.\n */\n@Component({\n selector: 'ea-menu-item',\n templateUrl: './menu-item.component.html',\n styleUrl: './menu-item.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MenuItemComponent {\n private readonly menu = inject(MenuComponent, { optional: true });\n\n // Inputs\n readonly disabled = input<boolean>(false);\n readonly variant = input<MenuItemVariant>('default');\n\n // Outputs\n /** Fires when the item is activated; the parent menu closes immediately afterwards. */\n readonly clicked = output<MouseEvent>();\n\n handleClick(event: MouseEvent): void {\n if (this.disabled()) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n this.clicked.emit(event);\n this.menu?.close(true);\n }\n}\n","<button\n type=\"button\"\n class=\"ea-menu-item\"\n role=\"menuitem\"\n [class.ea-menu-item--disabled]=\"disabled()\"\n [class.ea-menu-item--danger]=\"variant() === 'danger'\"\n [disabled]=\"disabled()\"\n (click)=\"handleClick($event)\">\n <span class=\"ea-menu-item__icon\">\n <ng-content select=\"[slot=icon]\" />\n </span>\n <span class=\"ea-menu-item__label\">\n <ng-content />\n </span>\n</button>\n","import { Directive, ElementRef, inject, input } from '@angular/core';\n\nimport { MenuComponent } from './menu.component';\n\n/**\n * Wires a focusable host element (typically a button) to an `ea-menu`,\n * handling click and keyboard activation (ArrowDown/Enter/Space to open,\n * Escape to close) and applying the appropriate ARIA attributes.\n */\n@Directive({\n selector: '[eaMenuTrigger]',\n host: {\n '[attr.aria-haspopup]': '\"menu\"',\n '[attr.aria-expanded]': 'menu()?.open() ?? false',\n '[attr.aria-controls]': 'menu()?.id() ?? null',\n '(click)': 'handleClick()',\n '(keydown)': 'handleKeydown($event)',\n },\n})\nexport class MenuTriggerDirective {\n private readonly el = inject(ElementRef<HTMLElement>);\n\n readonly menu = input.required<MenuComponent>({ alias: 'eaMenuTrigger' });\n\n handleClick(): void {\n const m = this.menu();\n if (m.disabled()) return;\n m.toggleAt(this.el.nativeElement);\n }\n\n handleKeydown(event: KeyboardEvent): void {\n const m = this.menu();\n if (m.disabled()) return;\n\n if (event.key === 'ArrowDown' || event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n if (!m.open()) m.openAt(this.el.nativeElement);\n } else if (event.key === 'Escape' && m.open()) {\n event.preventDefault();\n m.close();\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n inject,\n input,\n model,\n output,\n} from '@angular/core';\n\nimport { ButtonComponent } from '../button/button.component';\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { ChevronLeftIconComponent } from '../icons/chevron-left.component';\nimport { ChevronRightIconComponent } from '../icons/chevron-right.component';\n\n/** Horizontal alignment of paginator controls within their container. */\nexport type PaginatorAlign = 'left' | 'center' | 'right';\n\n/** Snapshot of the paginator's page and page size. */\nexport interface PaginatorState {\n page: number;\n pageSize: number;\n}\n\n/**\n * Page navigation control with previous/next buttons, numbered page jumps,\n * an optional page-size selector, and a range label. Exposes `page` and\n * `pageSize` as two-way `model()` bindings and emits a single `changed`\n * event whenever either changes.\n */\n@Component({\n selector: 'ea-paginator',\n imports: [ButtonComponent, ChevronLeftIconComponent, ChevronRightIconComponent],\n templateUrl: './paginator.component.html',\n styleUrl: './paginator.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class PaginatorComponent {\n protected readonly i18n = inject(EagamiI18nService);\n\n readonly totalItems = input.required<number>();\n readonly pageSizeOptions = input<number[]>([10, 25, 50, 100]);\n readonly showPageSizeSelector = input<boolean>(true);\n readonly showRangeLabel = input<boolean>(true);\n readonly align = input<PaginatorAlign>('right');\n readonly disabled = input<boolean>(false);\n\n readonly page = model<number>(1);\n readonly pageSize = model<number>(10);\n\n /** Fires when the user changes either the current page or the page size. */\n readonly changed = output<PaginatorState>();\n\n readonly totalPages = computed(() =>\n Math.max(1, Math.ceil(this.totalItems() / this.pageSize())),\n );\n\n readonly rangeStart = computed(() =>\n this.totalItems() === 0 ? 0 : (this.page() - 1) * this.pageSize() + 1,\n );\n\n readonly rangeEnd = computed(() =>\n Math.min(this.page() * this.pageSize(), this.totalItems()),\n );\n\n readonly canGoPrev = computed(() => this.page() > 1);\n\n readonly canGoNext = computed(() => this.page() < this.totalPages());\n\n readonly visiblePages = computed(() => {\n const total = this.totalPages();\n const current = this.page();\n const pages: (number | 'ellipsis')[] = [];\n\n if (total <= 7) {\n for (let i = 1; i <= total; i++) pages.push(i);\n return pages;\n }\n\n pages.push(1);\n\n if (current > 3) {\n pages.push('ellipsis');\n }\n\n const start = Math.max(2, current - 1);\n const end = Math.min(total - 1, current + 1);\n for (let i = start; i <= end; i++) {\n pages.push(i);\n }\n\n if (current < total - 2) {\n pages.push('ellipsis');\n }\n\n pages.push(total);\n return pages;\n });\n\n /** Navigates to the given page, clamped into the valid range. */\n goToPage(page: number): void {\n if (this.disabled()) return;\n const clamped = Math.max(1, Math.min(page, this.totalPages()));\n if (clamped === this.page()) return;\n this.page.set(clamped);\n this.changed.emit({ page: clamped, pageSize: this.pageSize() });\n }\n\n /** Navigates to the previous page if one exists. */\n prevPage(): void {\n if (this.canGoPrev()) this.goToPage(this.page() - 1);\n }\n\n /** Navigates to the next page if one exists. */\n nextPage(): void {\n if (this.canGoNext()) this.goToPage(this.page() + 1);\n }\n\n onPageSizeChange(event: Event): void {\n if (this.disabled()) return;\n const newSize = Number((event.target as HTMLSelectElement).value);\n this.pageSize.set(newSize);\n this.page.set(1);\n this.changed.emit({ page: 1, pageSize: newSize });\n }\n}\n","<div\n class=\"ea-paginator\"\n [class.ea-paginator--left]=\"align() === 'left'\"\n [class.ea-paginator--center]=\"align() === 'center'\"\n [class.ea-paginator--disabled]=\"disabled()\"\n role=\"navigation\"\n [attr.aria-label]=\"i18n.messages().paginator.label\">\n @if (showPageSizeSelector()) {\n <div class=\"ea-paginator__page-size\">\n <label\n class=\"ea-paginator__label\"\n for=\"ea-paginator-size\">\n {{ i18n.messages().paginator.rowsPerPage }}\n </label>\n <select\n class=\"ea-paginator__select\"\n id=\"ea-paginator-size\"\n [disabled]=\"disabled()\"\n (change)=\"onPageSizeChange($event)\">\n @for (size of pageSizeOptions(); track size) {\n <option\n [value]=\"size\"\n [selected]=\"size === pageSize()\">\n {{ size }}\n </option>\n }\n </select>\n </div>\n }\n\n @if (showRangeLabel()) {\n <span class=\"ea-paginator__range\">\n {{ i18n.messages().paginator.range(rangeStart(), rangeEnd(), totalItems()) }}\n </span>\n }\n\n <div class=\"ea-paginator__controls\">\n <ea-button\n variant=\"ghost\"\n size=\"sm\"\n [disabled]=\"disabled() || !canGoPrev()\"\n [aria-label]=\"i18n.messages().paginator.previousPage\"\n (clicked)=\"prevPage()\">\n <ea-icon-chevron-left />\n </ea-button>\n\n @for (p of visiblePages(); track $index) {\n @if (p === 'ellipsis') {\n <span class=\"ea-paginator__ellipsis\">…</span>\n } @else {\n <ea-button\n class=\"ea-paginator__page-btn\"\n [class.ea-paginator__page-btn--active]=\"p === page()\"\n variant=\"ghost\"\n size=\"sm\"\n [disabled]=\"disabled()\"\n [aria-current]=\"p === page() ? 'page' : undefined\"\n (clicked)=\"goToPage(p)\">\n {{ p }}\n </ea-button>\n }\n }\n\n <ea-button\n variant=\"ghost\"\n size=\"sm\"\n [disabled]=\"disabled() || !canGoNext()\"\n [aria-label]=\"i18n.messages().paginator.nextPage\"\n (clicked)=\"nextPage()\">\n <ea-icon-chevron-right />\n </ea-button>\n </div>\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\n\n/** Semantic colour scheme of the progress bar. */\nexport type ProgressBarVariant = 'default' | 'success' | 'warning' | 'error' | 'info';\n/** Visual height of the progress bar. */\nexport type ProgressBarSize = 'sm' | 'md' | 'lg';\n\n/**\n * Linear progress indicator supporting both determinate (driven by `value`\n * and `max`) and indeterminate modes. Optionally renders an inline label\n * and/or the current percentage.\n */\n@Component({\n selector: 'ea-progress-bar',\n imports: [NgClass],\n templateUrl: './progress-bar.component.html',\n styleUrl: './progress-bar.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ProgressBarComponent {\n protected readonly i18n = inject(EagamiI18nService);\n\n readonly value = input<number>(0);\n readonly max = input<number>(100);\n readonly variant = input<ProgressBarVariant>('default');\n readonly size = input<ProgressBarSize>('md');\n readonly label = input<string | undefined>(undefined);\n readonly showValue = input<boolean>(false);\n readonly indeterminate = input<boolean>(false);\n\n readonly percentage = computed(() => {\n const max = this.max();\n if (max <= 0) return 0;\n return Math.min(100, Math.max(0, (this.value() / max) * 100));\n });\n\n readonly percentageRounded = computed(() => Math.round(this.percentage()));\n\n readonly hostClasses = computed(() => ({\n [`ea-progress-bar--${this.variant()}`]: true,\n [`ea-progress-bar--${this.size()}`]: true,\n 'ea-progress-bar--indeterminate': this.indeterminate(),\n }));\n}\n","<div\n class=\"ea-progress-bar\"\n [ngClass]=\"hostClasses()\">\n @if (label() || showValue()) {\n <div class=\"ea-progress-bar__header\">\n @if (label()) {\n <span class=\"ea-progress-bar__label\">{{ label() }}</span>\n }\n @if (showValue() && !indeterminate()) {\n <span class=\"ea-progress-bar__value\">{{ percentageRounded() }}%</span>\n }\n </div>\n }\n <div\n class=\"ea-progress-bar__track\"\n role=\"progressbar\"\n [attr.aria-valuenow]=\"indeterminate() ? null : percentageRounded()\"\n aria-valuemin=\"0\"\n aria-valuemax=\"100\"\n [attr.aria-busy]=\"indeterminate() || null\"\n [attr.aria-label]=\"label() || i18n.messages().progressBar.label\">\n <div\n class=\"ea-progress-bar__fill\"\n [style.width]=\"indeterminate() ? null : percentage() + '%'\"></div>\n </div>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n/** Visual size shared by all radios in the group. */\nexport type RadioSize = 'sm' | 'md' | 'lg';\n/** Layout direction for radios within the group. */\nexport type RadioOrientation = 'vertical' | 'horizontal';\n\n/**\n * Composite single-select control made up of `ea-radio` children. Manages\n * shared state (name, size, disabled) for its options and integrates with\n * Angular forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-radio-group',\n templateUrl: './radio-group.component.html',\n styleUrl: './radio-group.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => RadioGroupComponent),\n multi: true,\n },\n ],\n})\nexport class RadioGroupComponent implements ControlValueAccessor {\n // Inputs\n readonly id = input<string>(`ea-radio-group-${Math.random().toString(36).slice(2, 9)}`);\n readonly name = input<string>(`ea-radio-${Math.random().toString(36).slice(2, 9)}`);\n readonly size = input<RadioSize>('md');\n readonly orientation = input<RadioOrientation>('vertical');\n readonly disabled = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly label = input<string | undefined>(undefined);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n\n // Two-way value binding\n readonly value = model<string>('');\n\n // Output\n /** Fires with the new value when an option is selected. */\n readonly changed = output<string>();\n\n // Internal state\n private readonly _formDisabled = signal(false);\n\n // Computed\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n // ControlValueAccessor callbacks\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n // ControlValueAccessor\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n /** Programmatically selects the option with the given value. */\n select(val: string): void {\n if (this.isDisabled()) return;\n this.value.set(val);\n this.onChange(val);\n this.onTouched();\n this.changed.emit(val);\n }\n}\n","<div class=\"ea-radio-group-field\">\n @if (label()) {\n <span\n class=\"ea-radio-group-field__label\"\n [id]=\"id() + '-label'\"\n [class.ea-radio-group-field__label--required]=\"required()\">\n {{ label() }}\n </span>\n }\n\n <div\n class=\"ea-radio-group\"\n [class.ea-radio-group--horizontal]=\"orientation() === 'horizontal'\"\n [class.ea-radio-group--vertical]=\"orientation() === 'vertical'\"\n role=\"radiogroup\"\n [id]=\"id()\"\n [attr.aria-labelledby]=\"label() ? id() + '-label' : null\"\n [attr.aria-label]=\"!label() ? (ariaLabel() ?? null) : null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \">\n <ng-content />\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-radio-group-field__message ea-radio-group-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-radio-group-field__message ea-radio-group-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { RadioGroupComponent } from './radio-group.component';\n\n/**\n * Single radio option used inside an `ea-radio-group`. Inherits its size and\n * disabled state from the parent group and selecting it updates the group's\n * value.\n */\n@Component({\n selector: 'ea-radio',\n templateUrl: './radio.component.html',\n styleUrl: './radio.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n})\nexport class RadioComponent {\n private readonly group = inject(RadioGroupComponent);\n\n // Inputs\n readonly value = input.required<string>();\n readonly label = input<string | undefined>(undefined);\n readonly disabled = input<boolean>(false);\n readonly id = input<string>(`ea-radio-opt-${Math.random().toString(36).slice(2, 9)}`);\n\n // Computed\n readonly isChecked = computed(() => this.group.value() === this.value());\n readonly isDisabled = computed(() => this.disabled() || this.group.isDisabled());\n readonly name = computed(() => this.group.name());\n readonly size = computed(() => this.group.size());\n\n readonly hostClasses = computed(() => ({\n [`ea-radio--${this.size()}`]: true,\n 'ea-radio--disabled': this.isDisabled(),\n 'ea-radio--checked': this.isChecked(),\n }));\n\n handleChange(): void {\n if (this.isDisabled()) return;\n this.group.select(this.value());\n }\n}\n","<label\n class=\"ea-radio\"\n [ngClass]=\"hostClasses()\"\n [for]=\"id()\">\n <input\n type=\"radio\"\n class=\"ea-radio__input\"\n [id]=\"id()\"\n [name]=\"name()\"\n [value]=\"value()\"\n [checked]=\"isChecked()\"\n [disabled]=\"isDisabled()\"\n (change)=\"handleChange()\" />\n\n <span\n class=\"ea-radio__circle\"\n aria-hidden=\"true\">\n </span>\n\n @if (label()) {\n <span class=\"ea-radio__label\">{{ label() }}</span>\n }\n</label>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n viewChildren,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { SelectOption } from '../select-option';\n\n/** Visual size of the segmented control. */\nexport type SegmentedSize = 'sm' | 'md' | 'lg';\n\n/**\n * Compact toggle button group for picking one of a small set of options\n * (e.g. List/Grid/Kanban or Light/Dark). Implements `radiogroup` semantics\n * and `ControlValueAccessor`, with full keyboard support\n * (arrow keys, Home/End, Enter/Space).\n */\n@Component({\n selector: 'ea-segmented',\n templateUrl: './segmented.component.html',\n styleUrl: './segmented.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SegmentedComponent),\n multi: true,\n },\n ],\n})\nexport class SegmentedComponent implements ControlValueAccessor {\n readonly buttonEls = viewChildren<ElementRef<HTMLButtonElement>>('optionEl');\n\n readonly options = input.required<SelectOption[]>();\n readonly label = input<string | undefined>(undefined);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly size = input<SegmentedSize>('md');\n readonly disabled = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly fullWidth = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-segmented-${Math.random().toString(36).slice(2, 9)}`);\n\n readonly value = model<string>('');\n /** Fires with the new value when the user selects a different option. */\n readonly changed = output<string>();\n\n private readonly _formDisabled = signal(false);\n\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly enabledOptions = computed(() => this.options().filter(opt => !opt.disabled));\n\n readonly hostClasses = computed(() => ({\n [`ea-segmented--${this.size()}`]: true,\n 'ea-segmented--full-width': this.fullWidth(),\n 'ea-segmented--disabled': this.isDisabled(),\n 'ea-segmented--error': this.hasError(),\n }));\n\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n isSelected(option: SelectOption): boolean {\n return this.value() === option.value;\n }\n\n isOptionDisabled(option: SelectOption): boolean {\n return this.isDisabled() || !!option.disabled;\n }\n\n /** Programmatically selects the given option. */\n select(option: SelectOption): void {\n if (this.isOptionDisabled(option)) return;\n if (this.value() === option.value) {\n this.onTouched();\n return;\n }\n this.value.set(option.value);\n this.onChange(option.value);\n this.onTouched();\n this.changed.emit(option.value);\n }\n\n handleKeydown(event: KeyboardEvent, index: number): void {\n if (this.isDisabled()) return;\n\n const enabled = this.enabledOptions();\n if (enabled.length === 0) return;\n\n let targetValue: string | null = null;\n\n switch (event.key) {\n case 'ArrowRight':\n case 'ArrowDown': {\n const current = enabled.findIndex(o => o.value === this.value());\n const nextIndex = (current + 1 + enabled.length) % enabled.length;\n targetValue = enabled[nextIndex].value;\n break;\n }\n case 'ArrowLeft':\n case 'ArrowUp': {\n const current = enabled.findIndex(o => o.value === this.value());\n const prevIndex = (current - 1 + enabled.length) % enabled.length;\n targetValue = enabled[prevIndex].value;\n break;\n }\n case 'Home':\n targetValue = enabled[0].value;\n break;\n case 'End':\n targetValue = enabled[enabled.length - 1].value;\n break;\n case ' ':\n case 'Enter': {\n const opt = this.options()[index];\n if (opt) this.select(opt);\n event.preventDefault();\n return;\n }\n default:\n return;\n }\n\n if (targetValue !== null) {\n event.preventDefault();\n const opt = this.options().find(o => o.value === targetValue);\n if (opt) {\n this.select(opt);\n const targetIndex = this.options().findIndex(o => o.value === targetValue);\n queueMicrotask(() => this.buttonEls()[targetIndex]?.nativeElement.focus());\n }\n }\n }\n}\n","<div class=\"ea-segmented-field\">\n @if (label()) {\n <span\n class=\"ea-segmented-field__label\"\n [id]=\"id() + '-label'\"\n [class.ea-segmented-field__label--required]=\"required()\">\n {{ label() }}\n </span>\n }\n\n <div\n class=\"ea-segmented\"\n role=\"radiogroup\"\n [ngClass]=\"hostClasses()\"\n [attr.aria-labelledby]=\"label() ? id() + '-label' : null\"\n [attr.aria-label]=\"!label() ? (ariaLabel() ?? null) : null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-disabled]=\"isDisabled() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \">\n @for (option of options(); track option.value; let i = $index) {\n <button\n #optionEl\n type=\"button\"\n class=\"ea-segmented__option\"\n role=\"radio\"\n [class.ea-segmented__option--selected]=\"isSelected(option)\"\n [class.ea-segmented__option--disabled]=\"isOptionDisabled(option)\"\n [attr.aria-checked]=\"isSelected(option)\"\n [attr.aria-disabled]=\"isOptionDisabled(option) || null\"\n [disabled]=\"isOptionDisabled(option)\"\n [attr.tabindex]=\"isSelected(option) || (!value() && i === 0) ? 0 : -1\"\n (click)=\"select(option)\"\n (keydown)=\"handleKeydown($event, i)\">\n {{ option.label }}\n </button>\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-segmented-field__message ea-segmented-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-segmented-field__message ea-segmented-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n/** Visual size of the slider track and thumb. */\nexport type SliderSize = 'sm' | 'md' | 'lg';\n\n/**\n * Single-value range input controlled with pointer drag or full keyboard\n * navigation (arrows, PageUp/PageDown, Home/End). Supports configurable\n * `min`, `max`, and `step`, optional value display, and integrates with\n * Angular forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-slider',\n templateUrl: './slider.component.html',\n styleUrl: './slider.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [NgClass],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SliderComponent),\n multi: true,\n },\n ],\n})\nexport class SliderComponent implements ControlValueAccessor {\n readonly trackEl = viewChild<ElementRef<HTMLDivElement>>('trackEl');\n\n readonly label = input<string | undefined>(undefined);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly min = input<number>(0);\n readonly max = input<number>(100);\n readonly step = input<number>(1);\n readonly size = input<SliderSize>('md');\n readonly disabled = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly showValue = input<boolean>(false);\n readonly showMinMaxLabels = input<boolean>(false);\n readonly formatValue = input<(value: number) => string>(value => `${value}`);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-slider-${Math.random().toString(36).slice(2, 9)}`);\n\n readonly value = model<number>(0);\n /** Fires with the new (snapped, clamped) numeric value whenever the slider moves. */\n readonly changed = output<number>();\n\n private readonly _formDisabled = signal(false);\n readonly dragging = signal(false);\n\n private onChange: (value: number) => void = () => {};\n private onTouched: () => void = () => {};\n\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n\n readonly clampedValue = computed(() => {\n const v = this.value();\n return Math.min(this.max(), Math.max(this.min(), v));\n });\n\n readonly percent = computed(() => {\n const range = this.max() - this.min();\n if (range <= 0) return 0;\n return ((this.clampedValue() - this.min()) / range) * 100;\n });\n\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly hostClasses = computed(() => ({\n [`ea-slider--${this.size()}`]: true,\n 'ea-slider--error': this.hasError(),\n 'ea-slider--disabled': this.isDisabled(),\n 'ea-slider--dragging': this.dragging(),\n }));\n\n writeValue(val: number): void {\n this.value.set(typeof val === 'number' && !isNaN(val) ? val : this.min());\n }\n\n registerOnChange(fn: (value: number) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n handleKeydown(event: KeyboardEvent): void {\n if (this.isDisabled()) return;\n\n const step = this.step();\n const bigStep = Math.max(step * 10, (this.max() - this.min()) / 10);\n let next: number;\n\n switch (event.key) {\n case 'ArrowRight':\n case 'ArrowUp':\n next = this.clampedValue() + step;\n break;\n case 'ArrowLeft':\n case 'ArrowDown':\n next = this.clampedValue() - step;\n break;\n case 'PageUp':\n next = this.clampedValue() + bigStep;\n break;\n case 'PageDown':\n next = this.clampedValue() - bigStep;\n break;\n case 'Home':\n next = this.min();\n break;\n case 'End':\n next = this.max();\n break;\n default:\n return;\n }\n\n event.preventDefault();\n this.commitValue(next);\n }\n\n handlePointerDown(event: PointerEvent): void {\n if (this.isDisabled()) return;\n const track = this.trackEl()?.nativeElement;\n if (!track) return;\n\n (event.target as HTMLElement).setPointerCapture?.(event.pointerId);\n this.dragging.set(true);\n this.updateFromPointer(event, track);\n }\n\n handlePointerMove(event: PointerEvent): void {\n if (!this.dragging() || this.isDisabled()) return;\n const track = this.trackEl()?.nativeElement;\n if (!track) return;\n this.updateFromPointer(event, track);\n }\n\n handlePointerUp(event: PointerEvent): void {\n if (!this.dragging()) return;\n (event.target as HTMLElement).releasePointerCapture?.(event.pointerId);\n this.dragging.set(false);\n this.onTouched();\n }\n\n handleBlur(): void {\n this.onTouched();\n }\n\n private updateFromPointer(event: PointerEvent, track: HTMLDivElement): void {\n const rect = track.getBoundingClientRect();\n const ratio = Math.min(1, Math.max(0, (event.clientX - rect.left) / rect.width));\n const range = this.max() - this.min();\n const raw = this.min() + ratio * range;\n this.commitValue(raw);\n }\n\n private commitValue(raw: number): void {\n const step = this.step();\n const min = this.min();\n const max = this.max();\n const snapped = Math.round((raw - min) / step) * step + min;\n const clamped = Math.min(max, Math.max(min, snapped));\n const rounded = Number(clamped.toFixed(10));\n if (rounded === this.value()) return;\n this.value.set(rounded);\n this.onChange(rounded);\n this.changed.emit(rounded);\n }\n}\n","<div\n class=\"ea-slider-field\"\n [ngClass]=\"hostClasses()\">\n @if (label()) {\n <span\n class=\"ea-slider-field__label\"\n [id]=\"id() + '-label'\"\n [class.ea-slider-field__label--required]=\"required()\">\n {{ label() }}\n @if (showValue()) {\n <span class=\"ea-slider-field__value\">{{ formatValue()(clampedValue()) }}</span>\n }\n </span>\n }\n\n <div class=\"ea-slider\">\n <div\n #trackEl\n class=\"ea-slider__track\"\n (pointerdown)=\"handlePointerDown($event)\"\n (pointermove)=\"handlePointerMove($event)\"\n (pointerup)=\"handlePointerUp($event)\"\n (pointercancel)=\"handlePointerUp($event)\">\n <div\n class=\"ea-slider__fill\"\n [style.width.%]=\"percent()\">\n </div>\n <div\n class=\"ea-slider__thumb\"\n role=\"slider\"\n tabindex=\"0\"\n [id]=\"id()\"\n [attr.aria-labelledby]=\"label() ? id() + '-label' : null\"\n [attr.aria-label]=\"!label() ? (ariaLabel() ?? null) : null\"\n [attr.aria-valuemin]=\"min()\"\n [attr.aria-valuemax]=\"max()\"\n [attr.aria-valuenow]=\"clampedValue()\"\n [attr.aria-valuetext]=\"formatValue()(clampedValue())\"\n [attr.aria-disabled]=\"isDisabled() || null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n [style.left.%]=\"percent()\"\n (keydown)=\"handleKeydown($event)\"\n (blur)=\"handleBlur()\">\n </div>\n </div>\n\n @if (showMinMaxLabels()) {\n <div class=\"ea-slider__minmax\">\n <span class=\"ea-slider__minmax-label\">{{ formatValue()(min()) }}</span>\n <span class=\"ea-slider__minmax-label\">{{ formatValue()(max()) }}</span>\n </div>\n }\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-slider-field__message ea-slider-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-slider-field__message ea-slider-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\n\n/** Visual size of the spinner. */\nexport type SpinnerSize = 'sm' | 'md' | 'lg';\n\n/**\n * SVG loading indicator with an accessible `role=\"status\"`. The `label` input\n * overrides the accessible name announced to assistive technology; when unset\n * it falls back to the active locale's translation.\n */\n@Component({\n selector: 'ea-spinner',\n imports: [NgClass],\n templateUrl: './spinner.component.html',\n styleUrl: './spinner.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class SpinnerComponent {\n private readonly i18n = inject(EagamiI18nService);\n\n readonly size = input<SpinnerSize>('md');\n readonly label = input<string | undefined>(undefined);\n\n /** Accessible label, falling back to the active locale's translation. */\n readonly resolvedLabel = computed(\n () => this.label() ?? this.i18n.messages().spinner.label,\n );\n\n readonly hostClasses = computed(() => ({\n [`ea-spinner--${this.size()}`]: true,\n }));\n}\n","<div\n class=\"ea-spinner\"\n [ngClass]=\"hostClasses()\"\n role=\"status\">\n <svg\n class=\"ea-spinner__circle\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n aria-hidden=\"true\">\n <circle\n cx=\"12\"\n cy=\"12\"\n r=\"10\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n opacity=\"0.25\" />\n <path\n d=\"M12 2a10 10 0 0 1 10 10\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\" />\n </svg>\n <span class=\"ea-spinner__label\">{{ resolvedLabel() }}</span>\n</div>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\n/** Visual size of the switch. */\nexport type SwitchSize = 'sm' | 'md' | 'lg';\n\n/**\n * On/off toggle styled as a sliding switch. Backed by a visually hidden\n * native checkbox and integrates with Angular forms via\n * `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-switch',\n imports: [NgClass],\n templateUrl: './switch.component.html',\n styleUrl: './switch.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => SwitchComponent),\n multi: true,\n },\n ],\n})\nexport class SwitchComponent implements ControlValueAccessor {\n readonly label = input<string | undefined>(undefined);\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly size = input<SwitchSize>('md');\n readonly disabled = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly ariaLabel = input<string | undefined>(undefined, { alias: 'aria-label' });\n readonly id = input<string>(`ea-switch-${Math.random().toString(36).slice(2, 9)}`);\n\n readonly checked = model<boolean>(false);\n /** Fires with the new checked state whenever the user toggles the switch. */\n readonly changed = output<boolean>();\n\n private readonly _formDisabled = signal(false);\n\n private onChange: (value: boolean) => void = () => {};\n private onTouched: () => void = () => {};\n\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly hostClasses = computed(() => ({\n [`ea-switch--${this.size()}`]: true,\n 'ea-switch--checked': this.checked(),\n 'ea-switch--disabled': this.isDisabled(),\n 'ea-switch--error': this.hasError(),\n }));\n\n writeValue(val: boolean): void {\n this.checked.set(!!val);\n }\n\n registerOnChange(fn: (value: boolean) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n handleChange(): void {\n if (this.isDisabled()) return;\n const newValue = !this.checked();\n this.checked.set(newValue);\n this.onChange(newValue);\n this.onTouched();\n this.changed.emit(newValue);\n }\n}\n","<div class=\"ea-switch-field\">\n <label\n class=\"ea-switch\"\n [ngClass]=\"hostClasses()\">\n <input\n class=\"ea-switch__input\"\n type=\"checkbox\"\n role=\"switch\"\n [id]=\"id()\"\n [checked]=\"checked()\"\n [disabled]=\"isDisabled()\"\n [required]=\"required()\"\n [attr.aria-checked]=\"checked()\"\n [attr.aria-label]=\"!label() ? (ariaLabel() ?? null) : null\"\n [attr.aria-required]=\"required() || null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (change)=\"handleChange()\" />\n <span class=\"ea-switch__track\">\n <span class=\"ea-switch__thumb\"></span>\n </span>\n @if (label()) {\n <span\n class=\"ea-switch__label\"\n [class.ea-switch__label--required]=\"required()\">\n {{ label() }}\n </span>\n }\n </label>\n\n @if (showError()) {\n <p\n class=\"ea-switch-field__message ea-switch-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-switch-field__message ea-switch-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n model,\n output,\n signal,\n} from '@angular/core';\n\nimport { TabComponent } from './tab.component';\n\n/** Visual style of the tab bar. */\nexport type TabsVariant = 'underline' | 'filled';\n/** Visual size of the tabs. */\nexport type TabsSize = 'sm' | 'md' | 'lg';\n\n/**\n * Tab bar paired with content panels. Child `ea-tab` components register\n * themselves automatically and the active panel is shown based on the\n * `activeTab` two-way binding. Supports keyboard navigation\n * (arrow keys, Home/End).\n */\n@Component({\n selector: 'ea-tabs',\n templateUrl: './tabs.component.html',\n styleUrl: './tabs.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TabsComponent {\n readonly registeredTabs = signal<TabComponent[]>([]);\n\n readonly variant = input<TabsVariant>('underline');\n readonly size = input<TabsSize>('md');\n\n readonly activeTab = model<string>('');\n\n /** Fires with the value of the newly active tab. */\n readonly changed = output<string>();\n\n /** Registers a child tab so it appears in the tab bar; called automatically by `ea-tab`. */\n registerTab(tab: TabComponent): void {\n this.registeredTabs.update(tabs => [...tabs, tab]);\n }\n\n /** Removes a previously registered child tab; called automatically by `ea-tab`. */\n unregisterTab(tab: TabComponent): void {\n this.registeredTabs.update(tabs => tabs.filter(t => t !== tab));\n }\n\n /** Programmatically activates the tab with the given value. */\n selectTab(value: string): void {\n this.activeTab.set(value);\n this.changed.emit(value);\n }\n\n handleKeydown(event: KeyboardEvent): void {\n const tabList = this.registeredTabs().filter(t => !t.disabled());\n const currentIndex = tabList.findIndex(t => t.value() === this.activeTab());\n let nextIndex = -1;\n\n if (event.key === 'ArrowRight') {\n event.preventDefault();\n nextIndex = currentIndex < tabList.length - 1 ? currentIndex + 1 : 0;\n } else if (event.key === 'ArrowLeft') {\n event.preventDefault();\n nextIndex = currentIndex > 0 ? currentIndex - 1 : tabList.length - 1;\n } else if (event.key === 'Home') {\n event.preventDefault();\n nextIndex = 0;\n } else if (event.key === 'End') {\n event.preventDefault();\n nextIndex = tabList.length - 1;\n }\n\n if (nextIndex >= 0) {\n const tab = tabList[nextIndex];\n this.selectTab(tab.value());\n const buttons = (\n event.currentTarget as HTMLElement\n ).querySelectorAll<HTMLButtonElement>('[role=\"tab\"]:not([disabled])');\n buttons[nextIndex]?.focus();\n }\n }\n}\n","<div class=\"ea-tabs\">\n <div\n class=\"ea-tabs__list\"\n [class.ea-tabs__list--underline]=\"variant() === 'underline'\"\n [class.ea-tabs__list--filled]=\"variant() === 'filled'\"\n [class.ea-tabs__list--sm]=\"size() === 'sm'\"\n [class.ea-tabs__list--md]=\"size() === 'md'\"\n [class.ea-tabs__list--lg]=\"size() === 'lg'\"\n role=\"tablist\"\n (keydown)=\"handleKeydown($event)\">\n @for (tab of registeredTabs(); track tab.value()) {\n <button\n class=\"ea-tabs__trigger\"\n [class.ea-tabs__trigger--active]=\"tab.isActive()\"\n type=\"button\"\n role=\"tab\"\n [id]=\"tab.id() + '-tab'\"\n [attr.aria-selected]=\"tab.isActive()\"\n [attr.aria-controls]=\"tab.id() + '-panel'\"\n [disabled]=\"tab.disabled()\"\n [tabindex]=\"tab.isActive() ? 0 : -1\"\n (click)=\"selectTab(tab.value())\">\n {{ tab.label() }}\n </button>\n }\n </div>\n <ng-content />\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n OnDestroy,\n OnInit,\n computed,\n inject,\n input,\n} from '@angular/core';\n\nimport { TabsComponent } from './tabs.component';\n\n/**\n * Single tab within an `ea-tabs` group. Registers itself with the parent on\n * init, exposes its `value` and `label`, and shows its projected content\n * when active.\n */\n@Component({\n selector: 'ea-tab',\n host: { '[style.display]': 'isActive() ? null : \"none\"' },\n template: `\n @if (isActive()) {\n <div\n class=\"ea-tab__panel\"\n role=\"tabpanel\"\n [id]=\"id() + '-panel'\"\n [attr.aria-labelledby]=\"id() + '-tab'\"\n tabindex=\"0\">\n <ng-content />\n </div>\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TabComponent implements OnInit, OnDestroy {\n private readonly tabs = inject(TabsComponent);\n\n readonly value = input.required<string>();\n readonly label = input.required<string>();\n readonly disabled = input<boolean>(false);\n readonly id = input<string>(`ea-tab-${Math.random().toString(36).slice(2, 9)}`);\n\n readonly isActive = computed(() => this.tabs.activeTab() === this.value());\n\n ngOnInit(): void {\n this.tabs.registerTab(this);\n }\n\n ngOnDestroy(): void {\n this.tabs.unregisterTab(this);\n }\n}\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n computed,\n inject,\n input,\n output,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { XIconComponent } from '../icons/x.component';\n\n/** Semantic colour scheme of a tag. */\nexport type TagVariant = 'default' | 'success' | 'warning' | 'error' | 'info';\n/** Visual size of a tag. */\nexport type TagSize = 'sm' | 'md' | 'lg';\n\n/**\n * Inline label commonly used to represent filters, categories, or selected\n * items. When `removable`, renders a close button that emits `removed`; the\n * accessible name of that button is configurable via `removeLabel` and\n * otherwise falls back to the active locale's translation.\n */\n@Component({\n selector: 'ea-tag',\n imports: [NgClass, XIconComponent],\n templateUrl: './tag.component.html',\n styleUrl: './tag.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class TagComponent {\n private readonly i18n = inject(EagamiI18nService);\n\n readonly variant = input<TagVariant>('default');\n readonly size = input<TagSize>('md');\n readonly removable = input<boolean>(false);\n readonly disabled = input<boolean>(false);\n readonly removeLabel = input<string | undefined>(undefined);\n\n /** Fires when the user activates the remove button on a `removable` tag. */\n readonly removed = output<void>();\n\n /** Accessible label for the remove button, falling back to the active locale. */\n readonly resolvedRemoveLabel = computed(\n () => this.removeLabel() ?? this.i18n.messages().tag.remove,\n );\n\n readonly hostClasses = computed(() => ({\n [`ea-tag--${this.variant()}`]: true,\n [`ea-tag--${this.size()}`]: true,\n 'ea-tag--disabled': this.disabled(),\n }));\n\n onRemove(event: MouseEvent): void {\n event.stopPropagation();\n this.removed.emit();\n }\n}\n","<span\n class=\"ea-tag\"\n [ngClass]=\"hostClasses()\">\n <ng-content />\n @if (removable()) {\n <button\n type=\"button\"\n class=\"ea-tag__remove\"\n [disabled]=\"disabled() || null\"\n [attr.aria-label]=\"resolvedRemoveLabel()\"\n (click)=\"onRemove($event)\">\n <ea-icon-x />\n </button>\n }\n</span>\n","import { NgClass } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n computed,\n forwardRef,\n input,\n model,\n output,\n signal,\n viewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { AlertCircleIconComponent } from '../icons/alert-circle.component';\n\n/** Visual size of the textarea. */\nexport type TextareaSize = 'sm' | 'md' | 'lg';\n/** Axis along which the user is allowed to resize the textarea. */\nexport type TextareaResize = 'none' | 'vertical' | 'horizontal' | 'both';\n\n/**\n * Multiline text field that mirrors the `ea-input` API. Supports configurable\n * `rows`, `resize` direction, and `maxlength`, and integrates with Angular\n * forms via `ControlValueAccessor`.\n */\n@Component({\n selector: 'ea-textarea',\n imports: [AlertCircleIconComponent, NgClass],\n templateUrl: './textarea.component.html',\n styleUrl: './textarea.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => TextareaComponent),\n multi: true,\n },\n ],\n})\nexport class TextareaComponent implements ControlValueAccessor {\n readonly textareaEl = viewChild<ElementRef<HTMLTextAreaElement>>('textareaEl');\n\n readonly label = input<string | undefined>(undefined);\n readonly placeholder = input<string>('');\n readonly size = input<TextareaSize>('md');\n readonly hint = input<string | undefined>(undefined);\n readonly errorMsg = input<string | undefined>(undefined);\n readonly disabled = input<boolean>(false);\n readonly readonly = input<boolean>(false);\n readonly required = input<boolean>(false);\n readonly rows = input<number>(3);\n readonly resize = input<TextareaResize>('vertical');\n readonly maxlength = input<number | undefined>(undefined);\n readonly id = input<string>(`ea-textarea-${Math.random().toString(36).slice(2, 9)}`);\n\n readonly value = model<string>('');\n\n readonly isFocused = signal(false);\n private readonly _formDisabled = signal(false);\n\n /** Fires when the textarea receives focus. */\n readonly focused = output<FocusEvent>();\n /** Fires when the textarea loses focus. */\n readonly blurred = output<FocusEvent>();\n\n private onChange: (value: string) => void = () => {};\n private onTouched: () => void = () => {};\n\n readonly isDisabled = computed(() => this.disabled() || this._formDisabled());\n readonly hasError = computed(() => !!this.errorMsg());\n readonly showError = this.hasError;\n readonly showHint = computed(() => !!this.hint() && !this.hasError());\n\n readonly wrapperClasses = computed(() => ({\n [`ea-textarea-wrapper--${this.size()}`]: true,\n 'ea-textarea-wrapper--error': this.hasError(),\n 'ea-textarea-wrapper--focused': this.isFocused(),\n 'ea-textarea-wrapper--disabled': this.isDisabled(),\n 'ea-textarea-wrapper--readonly': this.readonly(),\n }));\n\n writeValue(val: string): void {\n this.value.set(val ?? '');\n }\n\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n setDisabledState(isDisabled: boolean): void {\n this._formDisabled.set(isDisabled);\n }\n\n handleInput(event: Event): void {\n const value = (event.target as HTMLTextAreaElement).value;\n this.value.set(value);\n this.onChange(value);\n }\n\n handleFocus(event: FocusEvent): void {\n this.isFocused.set(true);\n this.focused.emit(event);\n }\n\n handleBlur(event: FocusEvent): void {\n this.isFocused.set(false);\n this.onTouched();\n this.blurred.emit(event);\n }\n\n /** Moves keyboard focus to the underlying native textarea element. */\n focus(): void {\n this.textareaEl()?.nativeElement.focus();\n }\n}\n","<div class=\"ea-textarea-field\">\n @if (label()) {\n <label\n class=\"ea-textarea-field__label\"\n [for]=\"id()\"\n [class.ea-textarea-field__label--required]=\"required()\">\n {{ label() }}\n </label>\n }\n\n <div\n class=\"ea-textarea-wrapper\"\n [ngClass]=\"wrapperClasses()\">\n <textarea\n #textareaEl\n class=\"ea-textarea\"\n [id]=\"id()\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"isDisabled()\"\n [readOnly]=\"readonly()\"\n [required]=\"required()\"\n [rows]=\"rows()\"\n [value]=\"value()\"\n [style.resize]=\"resize()\"\n [attr.maxlength]=\"maxlength() ?? null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n showError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (input)=\"handleInput($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\"></textarea>\n </div>\n\n @if (showError()) {\n <p\n class=\"ea-textarea-field__message ea-textarea-field__message--error\"\n [id]=\"id() + '-error'\"\n role=\"alert\">\n <ea-icon-alert-circle class=\"ea-textarea-field__message-icon\" />\n {{ errorMsg() }}\n </p>\n }\n\n @if (showHint()) {\n <p\n class=\"ea-textarea-field__message ea-textarea-field__message--hint\"\n [id]=\"id() + '-hint'\">\n {{ hint() }}\n </p>\n }\n</div>\n","import { Injectable, signal } from '@angular/core';\n\n/** Semantic colour scheme of a toast. */\nexport type ToastVariant = 'default' | 'success' | 'warning' | 'error' | 'info';\n\n/** A single live toast notification rendered by `ea-toast`. */\nexport interface Toast {\n id: number;\n message: string;\n variant: ToastVariant;\n duration: number;\n}\n\n/** Optional configuration for a toast — defaults to `default` variant and 4s duration. */\nexport interface ToastOptions {\n variant?: ToastVariant;\n duration?: number;\n}\n\n/**\n * Application-wide notification service. Use the convenience methods\n * (`success`, `error`, `warning`, `info`) to push a toast, or call\n * {@link show} for full control. A single `<ea-toast />` outlet must be\n * present in the app for toasts to appear.\n */\n@Injectable({ providedIn: 'root' })\nexport class ToastService {\n private nextId = 0;\n\n readonly toasts = signal<Toast[]>([]);\n\n /** Shows a toast and returns its id; pass `duration: 0` to disable auto-dismiss. */\n show(message: string, options: ToastOptions = {}): number {\n const id = this.nextId++;\n const toast: Toast = {\n id,\n message,\n variant: options.variant ?? 'default',\n duration: options.duration ?? 4000,\n };\n\n this.toasts.update(list => [...list, toast]);\n\n if (toast.duration > 0) {\n setTimeout(() => this.dismiss(id), toast.duration);\n }\n\n return id;\n }\n\n /** Shows a `success` toast and returns its id. */\n success(message: string, duration?: number): number {\n return this.show(message, { variant: 'success', duration });\n }\n\n /** Shows an `error` toast and returns its id. */\n error(message: string, duration?: number): number {\n return this.show(message, { variant: 'error', duration });\n }\n\n /** Shows a `warning` toast and returns its id. */\n warning(message: string, duration?: number): number {\n return this.show(message, { variant: 'warning', duration });\n }\n\n /** Shows an `info` toast and returns its id. */\n info(message: string, duration?: number): number {\n return this.show(message, { variant: 'info', duration });\n }\n\n /** Removes the toast with the given id, if it is still active. */\n dismiss(id: number): void {\n this.toasts.update(list => list.filter(t => t.id !== id));\n }\n\n /** Removes all currently visible toasts. */\n clear(): void {\n this.toasts.set([]);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewEncapsulation,\n inject,\n} from '@angular/core';\n\nimport { EagamiI18nService } from '../i18n/i18n.service';\nimport { XIconComponent } from '../icons/x.component';\nimport { Toast, ToastService } from './toast.service';\n\n/**\n * Outlet that renders the stack of active toasts produced by\n * {@link ToastService}. Place a single `<ea-toast />` once in the root\n * template so toasts created from anywhere in the app are surfaced.\n */\n@Component({\n selector: 'ea-toast',\n imports: [XIconComponent],\n templateUrl: './toast.component.html',\n styleUrl: './toast.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class ToastComponent {\n protected readonly toastService = inject(ToastService);\n protected readonly i18n = inject(EagamiI18nService);\n\n protected getRole(toast: Toast): 'alert' | 'status' {\n return toast.variant === 'error' || toast.variant === 'warning' ? 'alert' : 'status';\n }\n}\n","@if (toastService.toasts().length) {\n <div\n class=\"ea-toast-container\"\n aria-live=\"polite\"\n aria-atomic=\"false\">\n @for (toast of toastService.toasts(); track toast.id) {\n <div\n class=\"ea-toast ea-toast--{{ toast.variant }}\"\n [attr.role]=\"getRole(toast)\"\n [attr.aria-live]=\"getRole(toast) === 'alert' ? 'assertive' : 'polite'\">\n <span class=\"ea-toast__message\">{{ toast.message }}</span>\n <button\n class=\"ea-toast__close\"\n type=\"button\"\n [attr.aria-label]=\"i18n.messages().toast.dismiss\"\n (click)=\"toastService.dismiss(toast.id)\">\n <ea-icon-x />\n </button>\n </div>\n }\n </div>\n}\n","// =============================================================================\n// EAGAMI UI — Public API\n// =============================================================================\n\n// Internationalization\nexport * from './lib/i18n';\n\n// Components\nexport * from './lib/accordion/accordion.component';\nexport * from './lib/accordion/accordion-item.component';\nexport * from './lib/alert/alert.component';\nexport * from './lib/autocomplete/autocomplete.component';\nexport * from './lib/avatar-editor/avatar-editor.component';\nexport * from './lib/avatar/avatar.component';\nexport * from './lib/badge/badge.component';\nexport * from './lib/breadcrumbs/breadcrumbs.component';\nexport * from './lib/button/button.component';\nexport * from './lib/card/card.component';\nexport * from './lib/checkbox/checkbox.component';\nexport * from './lib/data-table/data-table.component';\nexport * from './lib/code-input/code-input.component';\nexport * from './lib/date-picker/date-picker.component';\nexport * from './lib/dialog/dialog.component';\nexport * from './lib/divider/divider.component';\nexport * from './lib/drawer/drawer.component';\nexport * from './lib/dropdown/dropdown.component';\nexport * from './lib/eagami-wordmark/eagami-wordmark.component';\nexport * from './lib/empty-state/empty-state.component';\nexport * from './lib/icons/icon-category';\nexport * from './lib/icons/icon-display-name';\nexport * from './lib/icons/icons-catalogue';\nexport * from './lib/icons/activity.component';\nexport * from './lib/icons/airplay.component';\nexport * from './lib/icons/alert-circle.component';\nexport * from './lib/icons/alert-octagon.component';\nexport * from './lib/icons/alert-triangle.component';\nexport * from './lib/icons/align-center.component';\nexport * from './lib/icons/align-justify.component';\nexport * from './lib/icons/align-left.component';\nexport * from './lib/icons/align-right.component';\nexport * from './lib/icons/anchor.component';\nexport * from './lib/icons/aperture.component';\nexport * from './lib/icons/apple.component';\nexport * from './lib/icons/archive.component';\nexport * from './lib/icons/arrow-down.component';\nexport * from './lib/icons/arrow-down-circle.component';\nexport * from './lib/icons/arrow-down-left.component';\nexport * from './lib/icons/arrow-down-right.component';\nexport * from './lib/icons/arrow-left.component';\nexport * from './lib/icons/arrow-left-circle.component';\nexport * from './lib/icons/arrow-right.component';\nexport * from './lib/icons/arrow-right-circle.component';\nexport * from './lib/icons/arrow-up.component';\nexport * from './lib/icons/arrow-up-circle.component';\nexport * from './lib/icons/arrow-up-left.component';\nexport * from './lib/icons/arrow-up-right.component';\nexport * from './lib/icons/at-sign.component';\nexport * from './lib/icons/award.component';\nexport * from './lib/icons/bar-chart.component';\nexport * from './lib/icons/bar-chart-2.component';\nexport * from './lib/icons/battery.component';\nexport * from './lib/icons/battery-charging.component';\nexport * from './lib/icons/bell.component';\nexport * from './lib/icons/bell-off.component';\nexport * from './lib/icons/bluetooth.component';\nexport * from './lib/icons/bold.component';\nexport * from './lib/icons/book.component';\nexport * from './lib/icons/book-open.component';\nexport * from './lib/icons/bookmark.component';\nexport * from './lib/icons/bottle.component';\nexport * from './lib/icons/box.component';\nexport * from './lib/icons/briefcase.component';\nexport * from './lib/icons/calendar.component';\nexport * from './lib/icons/camera.component';\nexport * from './lib/icons/camera-off.component';\nexport * from './lib/icons/candle.component';\nexport * from './lib/icons/cast.component';\nexport * from './lib/icons/check.component';\nexport * from './lib/icons/check-circle.component';\nexport * from './lib/icons/check-square.component';\nexport * from './lib/icons/chevron-down.component';\nexport * from './lib/icons/chevron-left.component';\nexport * from './lib/icons/chevron-right.component';\nexport * from './lib/icons/chevron-up.component';\nexport * from './lib/icons/chevrons-down.component';\nexport * from './lib/icons/chevrons-left.component';\nexport * from './lib/icons/chevrons-right.component';\nexport * from './lib/icons/chevrons-up.component';\nexport * from './lib/icons/chevrons-up-down.component';\nexport * from './lib/icons/chrome.component';\nexport * from './lib/icons/circle.component';\nexport * from './lib/icons/clipboard.component';\nexport * from './lib/icons/clock.component';\nexport * from './lib/icons/cloud.component';\nexport * from './lib/icons/cloud-drizzle.component';\nexport * from './lib/icons/cloud-lightning.component';\nexport * from './lib/icons/cloud-off.component';\nexport * from './lib/icons/cloud-rain.component';\nexport * from './lib/icons/cloud-snow.component';\nexport * from './lib/icons/cloudflare.component';\nexport * from './lib/icons/code.component';\nexport * from './lib/icons/codepen.component';\nexport * from './lib/icons/codesandbox.component';\nexport * from './lib/icons/coffee.component';\nexport * from './lib/icons/columns.component';\nexport * from './lib/icons/command.component';\nexport * from './lib/icons/compass.component';\nexport * from './lib/icons/copy.component';\nexport * from './lib/icons/corner-down-left.component';\nexport * from './lib/icons/corner-down-right.component';\nexport * from './lib/icons/corner-left-down.component';\nexport * from './lib/icons/corner-left-up.component';\nexport * from './lib/icons/corner-right-down.component';\nexport * from './lib/icons/corner-right-up.component';\nexport * from './lib/icons/corner-up-left.component';\nexport * from './lib/icons/corner-up-right.component';\nexport * from './lib/icons/cpu.component';\nexport * from './lib/icons/credit-card.component';\nexport * from './lib/icons/crop.component';\nexport * from './lib/icons/crosshair.component';\nexport * from './lib/icons/database.component';\nexport * from './lib/icons/delete.component';\nexport * from './lib/icons/disc.component';\nexport * from './lib/icons/discord.component';\nexport * from './lib/icons/divide.component';\nexport * from './lib/icons/divide-circle.component';\nexport * from './lib/icons/divide-square.component';\nexport * from './lib/icons/docker.component';\nexport * from './lib/icons/dollar-sign.component';\nexport * from './lib/icons/download.component';\nexport * from './lib/icons/download-cloud.component';\nexport * from './lib/icons/dribbble.component';\nexport * from './lib/icons/dropbox.component';\nexport * from './lib/icons/droplet.component';\nexport * from './lib/icons/eagami.component';\nexport * from './lib/icons/edit.component';\nexport * from './lib/icons/edit-2.component';\nexport * from './lib/icons/edit-3.component';\nexport * from './lib/icons/external-link.component';\nexport * from './lib/icons/eye.component';\nexport * from './lib/icons/eye-off.component';\nexport * from './lib/icons/facebook.component';\nexport * from './lib/icons/facebook-2.component';\nexport * from './lib/icons/fast-forward.component';\nexport * from './lib/icons/feather.component';\nexport * from './lib/icons/figma.component';\nexport * from './lib/icons/figma-2.component';\nexport * from './lib/icons/file.component';\nexport * from './lib/icons/file-minus.component';\nexport * from './lib/icons/file-plus.component';\nexport * from './lib/icons/file-text.component';\nexport * from './lib/icons/film.component';\nexport * from './lib/icons/filter.component';\nexport * from './lib/icons/flag.component';\nexport * from './lib/icons/folder.component';\nexport * from './lib/icons/folder-minus.component';\nexport * from './lib/icons/folder-plus.component';\nexport * from './lib/icons/framer.component';\nexport * from './lib/icons/frown.component';\nexport * from './lib/icons/gift.component';\nexport * from './lib/icons/git-branch.component';\nexport * from './lib/icons/git-commit.component';\nexport * from './lib/icons/git-merge.component';\nexport * from './lib/icons/git-pull-request.component';\nexport * from './lib/icons/github.component';\nexport * from './lib/icons/github-2.component';\nexport * from './lib/icons/gitlab.component';\nexport * from './lib/icons/globe.component';\nexport * from './lib/icons/google.component';\nexport * from './lib/icons/grid.component';\nexport * from './lib/icons/hard-drive.component';\nexport * from './lib/icons/hash.component';\nexport * from './lib/icons/headphones.component';\nexport * from './lib/icons/heart.component';\nexport * from './lib/icons/help-circle.component';\nexport * from './lib/icons/heptagon.component';\nexport * from './lib/icons/hexagon.component';\nexport * from './lib/icons/home.component';\nexport * from './lib/icons/image.component';\nexport * from './lib/icons/inbox.component';\nexport * from './lib/icons/info.component';\nexport * from './lib/icons/instagram.component';\nexport * from './lib/icons/italic.component';\nexport * from './lib/icons/key.component';\nexport * from './lib/icons/kubernetes.component';\nexport * from './lib/icons/lamp.component';\nexport * from './lib/icons/layers.component';\nexport * from './lib/icons/layout.component';\nexport * from './lib/icons/life-buoy.component';\nexport * from './lib/icons/link.component';\nexport * from './lib/icons/link-2.component';\nexport * from './lib/icons/linkedin.component';\nexport * from './lib/icons/linkedin-2.component';\nexport * from './lib/icons/list.component';\nexport * from './lib/icons/loader.component';\nexport * from './lib/icons/lock.component';\nexport * from './lib/icons/log-in.component';\nexport * from './lib/icons/log-out.component';\nexport * from './lib/icons/mail.component';\nexport * from './lib/icons/map.component';\nexport * from './lib/icons/map-pin.component';\nexport * from './lib/icons/mastercard.component';\nexport * from './lib/icons/maximize.component';\nexport * from './lib/icons/maximize-2.component';\nexport * from './lib/icons/meh.component';\nexport * from './lib/icons/menu.component';\nexport * from './lib/icons/message-circle.component';\nexport * from './lib/icons/message-square.component';\nexport * from './lib/icons/mic.component';\nexport * from './lib/icons/mic-off.component';\nexport * from './lib/icons/microsoft.component';\nexport * from './lib/icons/minimize.component';\nexport * from './lib/icons/minimize-2.component';\nexport * from './lib/icons/minus.component';\nexport * from './lib/icons/minus-circle.component';\nexport * from './lib/icons/minus-square.component';\nexport * from './lib/icons/mongodb.component';\nexport * from './lib/icons/monitor.component';\nexport * from './lib/icons/moon.component';\nexport * from './lib/icons/more-horizontal.component';\nexport * from './lib/icons/more-vertical.component';\nexport * from './lib/icons/mouse-pointer.component';\nexport * from './lib/icons/move.component';\nexport * from './lib/icons/music.component';\nexport * from './lib/icons/navigation.component';\nexport * from './lib/icons/navigation-2.component';\nexport * from './lib/icons/netlify.component';\nexport * from './lib/icons/notion.component';\nexport * from './lib/icons/npm.component';\nexport * from './lib/icons/octagon.component';\nexport * from './lib/icons/package.component';\nexport * from './lib/icons/paperclip.component';\nexport * from './lib/icons/pause.component';\nexport * from './lib/icons/pause-circle.component';\nexport * from './lib/icons/paypal.component';\nexport * from './lib/icons/pen-tool.component';\nexport * from './lib/icons/pencil.component';\nexport * from './lib/icons/pentagon.component';\nexport * from './lib/icons/percent.component';\nexport * from './lib/icons/phone.component';\nexport * from './lib/icons/phone-call.component';\nexport * from './lib/icons/phone-forwarded.component';\nexport * from './lib/icons/phone-incoming.component';\nexport * from './lib/icons/phone-missed.component';\nexport * from './lib/icons/phone-off.component';\nexport * from './lib/icons/phone-outgoing.component';\nexport * from './lib/icons/pie-chart.component';\nexport * from './lib/icons/play.component';\nexport * from './lib/icons/play-circle.component';\nexport * from './lib/icons/plus.component';\nexport * from './lib/icons/plus-circle.component';\nexport * from './lib/icons/plus-square.component';\nexport * from './lib/icons/pocket.component';\nexport * from './lib/icons/power.component';\nexport * from './lib/icons/printer.component';\nexport * from './lib/icons/radio.component';\nexport * from './lib/icons/rectangle-horizontal.component';\nexport * from './lib/icons/rectangle-vertical.component';\nexport * from './lib/icons/reddit.component';\nexport * from './lib/icons/refresh-ccw.component';\nexport * from './lib/icons/refresh-cw.component';\nexport * from './lib/icons/repeat.component';\nexport * from './lib/icons/rewind.component';\nexport * from './lib/icons/rotate-ccw.component';\nexport * from './lib/icons/rotate-cw.component';\nexport * from './lib/icons/rss.component';\nexport * from './lib/icons/save.component';\nexport * from './lib/icons/scissors.component';\nexport * from './lib/icons/search.component';\nexport * from './lib/icons/send.component';\nexport * from './lib/icons/server.component';\nexport * from './lib/icons/settings.component';\nexport * from './lib/icons/share.component';\nexport * from './lib/icons/share-2.component';\nexport * from './lib/icons/shield.component';\nexport * from './lib/icons/shield-off.component';\nexport * from './lib/icons/shopping-bag.component';\nexport * from './lib/icons/shopping-cart.component';\nexport * from './lib/icons/shuffle.component';\nexport * from './lib/icons/sidebar.component';\nexport * from './lib/icons/skip-back.component';\nexport * from './lib/icons/skip-forward.component';\nexport * from './lib/icons/slack.component';\nexport * from './lib/icons/slack-2.component';\nexport * from './lib/icons/slash.component';\nexport * from './lib/icons/sliders.component';\nexport * from './lib/icons/smartphone.component';\nexport * from './lib/icons/smile.component';\nexport * from './lib/icons/soccer-ball.component';\nexport * from './lib/icons/speaker.component';\nexport * from './lib/icons/spotify.component';\nexport * from './lib/icons/square.component';\nexport * from './lib/icons/star.component';\nexport * from './lib/icons/stop-circle.component';\nexport * from './lib/icons/stripe.component';\nexport * from './lib/icons/sun.component';\nexport * from './lib/icons/sunrise.component';\nexport * from './lib/icons/sunset.component';\nexport * from './lib/icons/table.component';\nexport * from './lib/icons/tablet.component';\nexport * from './lib/icons/tag.component';\nexport * from './lib/icons/target.component';\nexport * from './lib/icons/terminal.component';\nexport * from './lib/icons/thermometer.component';\nexport * from './lib/icons/thumbs-down.component';\nexport * from './lib/icons/thumbs-up.component';\nexport * from './lib/icons/toggle-left.component';\nexport * from './lib/icons/toggle-right.component';\nexport * from './lib/icons/tool.component';\nexport * from './lib/icons/trash.component';\nexport * from './lib/icons/trash-2.component';\nexport * from './lib/icons/trello.component';\nexport * from './lib/icons/trending-down.component';\nexport * from './lib/icons/trending-up.component';\nexport * from './lib/icons/triangle.component';\nexport * from './lib/icons/trophy.component';\nexport * from './lib/icons/truck.component';\nexport * from './lib/icons/tv.component';\nexport * from './lib/icons/twitch.component';\nexport * from './lib/icons/twitch-2.component';\nexport * from './lib/icons/twitter.component';\nexport * from './lib/icons/type.component';\nexport * from './lib/icons/umbrella.component';\nexport * from './lib/icons/underline.component';\nexport * from './lib/icons/unlock.component';\nexport * from './lib/icons/upload.component';\nexport * from './lib/icons/upload-cloud.component';\nexport * from './lib/icons/user.component';\nexport * from './lib/icons/user-check.component';\nexport * from './lib/icons/user-minus.component';\nexport * from './lib/icons/user-plus.component';\nexport * from './lib/icons/user-x.component';\nexport * from './lib/icons/users.component';\nexport * from './lib/icons/vercel.component';\nexport * from './lib/icons/video.component';\nexport * from './lib/icons/video-off.component';\nexport * from './lib/icons/voicemail.component';\nexport * from './lib/icons/volume.component';\nexport * from './lib/icons/volume-1.component';\nexport * from './lib/icons/volume-2.component';\nexport * from './lib/icons/volume-x.component';\nexport * from './lib/icons/watch.component';\nexport * from './lib/icons/wifi.component';\nexport * from './lib/icons/wifi-off.component';\nexport * from './lib/icons/wind.component';\nexport * from './lib/icons/x.component';\nexport * from './lib/icons/x-circle.component';\nexport * from './lib/icons/x-octagon.component';\nexport * from './lib/icons/x-square.component';\nexport * from './lib/icons/x-twitter.component';\nexport * from './lib/icons/youtube.component';\nexport * from './lib/icons/youtube-2.component';\nexport * from './lib/icons/zap.component';\nexport * from './lib/icons/zap-off.component';\nexport * from './lib/icons/zoom-in.component';\nexport * from './lib/icons/zoom-out.component';\nexport * from './lib/input/input.component';\nexport * from './lib/menu/menu.component';\nexport * from './lib/menu/menu-item.component';\nexport * from './lib/menu/menu-trigger.directive';\nexport * from './lib/paginator/paginator.component';\nexport * from './lib/progress-bar/progress-bar.component';\nexport * from './lib/radio/radio-group.component';\nexport * from './lib/radio/radio.component';\nexport * from './lib/segmented/segmented.component';\nexport * from './lib/select-option';\nexport * from './lib/skeleton/skeleton.component';\nexport * from './lib/slider/slider.component';\nexport * from './lib/spinner/spinner.component';\nexport * from './lib/switch/switch.component';\nexport * from './lib/tabs/tabs.component';\nexport * from './lib/tabs/tab.component';\nexport * from './lib/tag/tag.component';\nexport * from './lib/textarea/textarea.component';\nexport * from './lib/toast/toast.component';\nexport * from './lib/toast/toast.service';\nexport * from './lib/tooltip/tooltip.directive';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;AAAA;AACA;AACA;AAQA;AACO,MAAM,cAAc,GAA4B;IACrD,IAAI;IACJ,OAAO;IACP,IAAI;IACJ,IAAI;IACJ,OAAO;;;ACRT;MACa,kBAAkB,GAAG,IAAI,cAAc,CAClD,oBAAoB;AAGtB;;;;;;;;;;;;AAYG;AACG,SAAU,eAAe,CAAC,MAAA,GAA2B,EAAE,EAAA;AAC3D,IAAA,OAAO,wBAAwB,CAAC,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;AACtF;;AC1BA;AACO,MAAM,EAAE,GAAmB;AAChC,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,UAAU;AACpB,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,KAAK,EAAE,2BAA2B;AACnC,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,MAAM,EAAE,qBAAqB;AAC7B,QAAA,QAAQ,EAAE,kDAAkD;AAC5D,QAAA,MAAM,EACJ,+FAA+F;AACjG,QAAA,MAAM,EAAE,oBAAoB;AAC5B,QAAA,MAAM,EAAE,sBAAsB;AAC9B,QAAA,OAAO,EAAE,WAAW;AACpB,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,MAAM,EAAE,WAAW;AACnB,QAAA,MAAM,EAAE,kBAAkB;AAC3B,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,oBAAoB;AAC5B,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,UAAU,EAAE,MAAM,IAAI,CAAA,qBAAA,EAAwB,MAAM,CAAA,MAAA,CAAQ;AAC5D,QAAA,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAA,MAAA,EAAS,KAAK,CAAA,KAAA,EAAQ,MAAM,CAAA,CAAE;AAC9D,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,MAAM,EAAE,iCAAiC;AAC1C,KAAA;AACD,IAAA,UAAU,EAAE;AACV,QAAA,WAAW,EAAE,sBAAsB;AACnC,QAAA,KAAK,EAAE,wBAAwB;AAC/B,QAAA,YAAY,EAAE,kBAAkB;AAChC,QAAA,aAAa,EAAE,oBAAoB;AACnC,QAAA,SAAS,EAAE,gBAAgB;AAC3B,QAAA,QAAQ,EAAE,cAAc;AACxB,QAAA,KAAK,EAAE,QAAQ;AAChB,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,6BAA6B;AACrC,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,iBAAiB;AACzB,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,WAAW,EAAE,WAAW;AACzB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,YAAY,EAAE,4BAA4B;AAC1C,QAAA,YAAY,EAAE,4BAA4B;AAC3C,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,KAAK,EAAE,OAAO;AACf,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,KAAK,EAAE,cAAc;AACrB,QAAA,WAAW,EAAE,qBAAqB;AAClC,QAAA,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,KAAK,CAAA,CAAA,EAAI,GAAG,CAAA,KAAA,EAAQ,KAAK,CAAA,CAAE;AAC5D,QAAA,YAAY,EAAE,oBAAoB;AAClC,QAAA,QAAQ,EAAE,gBAAgB;AAC3B,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,SAAS;AACjB,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,KAAK,EAAE,SAAS;AACjB,KAAA;AACD,IAAA,GAAG,EAAE;AACH,QAAA,MAAM,EAAE,UAAU;AACnB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,UAAU;AACpB,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,QAAQ,EAAE,yBAAyB;AACnC,QAAA,OAAO,EAAE,yBAAyB;AACnC,KAAA;;;AC7EH;AACO,MAAM,EAAE,GAAmB;AAChC,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,SAAS;AACnB,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,KAAK,EAAE,YAAY;AACpB,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,MAAM,EAAE,cAAc;AACtB,QAAA,QAAQ,EAAE,+BAA+B;AACzC,QAAA,MAAM,EAAE,8DAA8D;AACtE,QAAA,MAAM,EAAE,cAAc;AACtB,QAAA,MAAM,EAAE,oBAAoB;AAC5B,QAAA,OAAO,EAAE,UAAU;AACnB,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,MAAM,EAAE,cAAc;AACvB,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,YAAY;AACpB,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,UAAU,EAAE,MAAM,IAAI,CAAA,mBAAA,EAAsB,MAAM,CAAA,OAAA,CAAS;AAC3D,QAAA,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAA,MAAA,EAAS,KAAK,CAAA,IAAA,EAAO,MAAM,CAAA,CAAE;AAC7D,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,MAAM,EAAE,mBAAmB;AAC5B,KAAA;AACD,IAAA,UAAU,EAAE;AACV,QAAA,WAAW,EAAE,cAAc;AAC3B,QAAA,KAAK,EAAE,YAAY;AACnB,QAAA,YAAY,EAAE,eAAe;AAC7B,QAAA,aAAa,EAAE,gBAAgB;AAC/B,QAAA,SAAS,EAAE,YAAY;AACvB,QAAA,QAAQ,EAAE,WAAW;AACrB,QAAA,KAAK,EAAE,OAAO;AACf,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,cAAc;AACtB,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,aAAa;AACrB,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,WAAW,EAAE,SAAS;AACvB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,YAAY,EAAE,eAAe;AAC7B,QAAA,YAAY,EAAE,eAAe;AAC9B,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,KAAK,EAAE,MAAM;AACd,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,KAAK,EAAE,YAAY;AACnB,QAAA,WAAW,EAAE,gBAAgB;AAC7B,QAAA,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,KAAK,CAAA,CAAA,EAAI,GAAG,CAAA,IAAA,EAAO,KAAK,CAAA,CAAE;AAC3D,QAAA,YAAY,EAAE,eAAe;AAC7B,QAAA,QAAQ,EAAE,WAAW;AACtB,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,UAAU;AAClB,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,KAAK,EAAE,SAAS;AACjB,KAAA;AACD,IAAA,GAAG,EAAE;AACH,QAAA,MAAM,EAAE,QAAQ;AACjB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,SAAS;AACnB,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,QAAQ,EAAE,gBAAgB;AAC1B,QAAA,OAAO,EAAE,oBAAoB;AAC9B,KAAA;;;AC5EH;AACO,MAAM,IAAI,GAAmB;AAClC,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,WAAW;AACrB,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,KAAK,EAAE,gBAAgB;AACxB,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,MAAM,EAAE,cAAc;AACtB,QAAA,QAAQ,EAAE,yCAAyC;AACnD,QAAA,MAAM,EACJ,0GAA0G;AAC5G,QAAA,MAAM,EAAE,cAAc;AACtB,QAAA,MAAM,EAAE,sBAAsB;AAC9B,QAAA,OAAO,EAAE,QAAQ;AACjB,QAAA,IAAI,EAAE,YAAY;AAClB,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,MAAM,EAAE,iBAAiB;AAC1B,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,oBAAoB;AAC5B,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,UAAU,EAAE,MAAM,IAAI,CAAA,wBAAA,EAA2B,MAAM,CAAA,QAAA,CAAU;AACjE,QAAA,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAA,OAAA,EAAU,KAAK,CAAA,IAAA,EAAO,MAAM,CAAA,CAAE;AAC9D,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,MAAM,EAAE,0BAA0B;AACnC,KAAA;AACD,IAAA,UAAU,EAAE;AACV,QAAA,WAAW,EAAE,oBAAoB;AACjC,QAAA,KAAK,EAAE,cAAc;AACrB,QAAA,YAAY,EAAE,cAAc;AAC5B,QAAA,aAAa,EAAE,cAAc;AAC7B,QAAA,SAAS,EAAE,eAAe;AAC1B,QAAA,QAAQ,EAAE,eAAe;AACzB,QAAA,KAAK,EAAE,KAAK;AACb,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,gBAAgB;AACxB,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,cAAc;AACtB,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,WAAW,EAAE,cAAc;AAC5B,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,YAAY,EAAE,oBAAoB;AAClC,QAAA,YAAY,EAAE,oBAAoB;AACnC,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,KAAK,EAAE,MAAM;AACd,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,KAAK,EAAE,YAAY;AACnB,QAAA,WAAW,EAAE,mBAAmB;AAChC,QAAA,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,KAAK,CAAA,CAAA,EAAI,GAAG,CAAA,IAAA,EAAO,KAAK,CAAA,CAAE;AAC3D,QAAA,YAAY,EAAE,iBAAiB;AAC/B,QAAA,QAAQ,EAAE,kBAAkB;AAC7B,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,UAAU;AAClB,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,KAAK,EAAE,UAAU;AAClB,KAAA;AACD,IAAA,GAAG,EAAE;AACH,QAAA,MAAM,EAAE,UAAU;AACnB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,WAAW;AACrB,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,QAAQ,EAAE,kBAAkB;AAC5B,QAAA,OAAO,EAAE,qBAAqB;AAC/B,KAAA;;;AC7EH;AACO,MAAM,IAAI,GAAmB;AAClC,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,QAAQ;AAClB,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,KAAK,EAAE,gBAAgB;AACxB,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,MAAM,EAAE,sBAAsB;AAC9B,QAAA,QAAQ,EAAE,8CAA8C;AACxD,QAAA,MAAM,EACJ,iGAAiG;AACnG,QAAA,MAAM,EAAE,kBAAkB;AAC1B,QAAA,MAAM,EAAE,sBAAsB;AAC9B,QAAA,OAAO,EAAE,UAAU;AACnB,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,MAAM,EAAE,QAAQ;AAChB,QAAA,MAAM,EAAE,mBAAmB;AAC5B,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,cAAc;AACtB,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,UAAU,EAAE,MAAM,IAAI,CAAA,sBAAA,EAAyB,MAAM,CAAA,SAAA,CAAW;AAChE,QAAA,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAA,QAAA,EAAW,KAAK,CAAA,KAAA,EAAQ,MAAM,CAAA,CAAE;AAChE,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,MAAM,EAAE,0BAA0B;AACnC,KAAA;AACD,IAAA,UAAU,EAAE;AACV,QAAA,WAAW,EAAE,wBAAwB;AACrC,QAAA,KAAK,EAAE,iBAAiB;AACxB,QAAA,YAAY,EAAE,kBAAkB;AAChC,QAAA,aAAa,EAAE,gBAAgB;AAC/B,QAAA,SAAS,EAAE,cAAc;AACzB,QAAA,QAAQ,EAAE,gBAAgB;AAC1B,QAAA,KAAK,EAAE,aAAa;AACrB,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,6BAA6B;AACrC,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,mBAAmB;AAC3B,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,WAAW,EAAE,eAAe;AAC7B,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,YAAY,EAAE,0BAA0B;AACxC,QAAA,YAAY,EAAE,yBAAyB;AACxC,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,KAAK,EAAE,MAAM;AACd,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,KAAK,EAAE,YAAY;AACnB,QAAA,WAAW,EAAE,mBAAmB;AAChC,QAAA,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,KAAK,CAAA,CAAA,EAAI,GAAG,CAAA,KAAA,EAAQ,KAAK,CAAA,CAAE;AAC5D,QAAA,YAAY,EAAE,iBAAiB;AAC/B,QAAA,QAAQ,EAAE,eAAe;AAC1B,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,aAAa;AACrB,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,KAAK,EAAE,YAAY;AACpB,KAAA;AACD,IAAA,GAAG,EAAE;AACH,QAAA,MAAM,EAAE,WAAW;AACpB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,QAAQ;AAClB,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,QAAQ,EAAE,qBAAqB;AAC/B,QAAA,OAAO,EAAE,oBAAoB;AAC9B,KAAA;;;AC7EH;AACO,MAAM,EAAE,GAAmB;AAChC,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,SAAS;AACnB,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,KAAK,EAAE,cAAc;AACtB,KAAA;AACD,IAAA,YAAY,EAAE;AACZ,QAAA,MAAM,EAAE,gBAAgB;AACxB,QAAA,QAAQ,EAAE,uCAAuC;AACjD,QAAA,MAAM,EACJ,sFAAsF;AACxF,QAAA,MAAM,EAAE,eAAe;AACvB,QAAA,MAAM,EAAE,mBAAmB;AAC3B,QAAA,OAAO,EAAE,WAAW;AACpB,QAAA,IAAI,EAAE,cAAc;AACpB,QAAA,MAAM,EAAE,UAAU;AAClB,QAAA,MAAM,EAAE,YAAY;AACrB,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,mBAAmB;AAC3B,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,UAAU,EAAE,MAAM,IAAI,CAAA,mBAAA,EAAsB,MAAM,CAAA,KAAA,CAAO;AACzD,QAAA,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,CAAA,MAAA,EAAS,KAAK,CAAA,GAAA,EAAM,MAAM,CAAA,CAAE;AAC5D,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,MAAM,EAAE,wBAAwB;AACjC,KAAA;AACD,IAAA,UAAU,EAAE;AACV,QAAA,WAAW,EAAE,eAAe;AAC5B,QAAA,KAAK,EAAE,cAAc;AACrB,QAAA,YAAY,EAAE,eAAe;AAC7B,QAAA,aAAa,EAAE,mBAAmB;AAClC,QAAA,SAAS,EAAE,kBAAkB;AAC7B,QAAA,QAAQ,EAAE,cAAc;AACxB,QAAA,KAAK,EAAE,SAAS;AACjB,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,wBAAwB;AAChC,KAAA;AACD,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,eAAe;AACvB,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,WAAW,EAAE,UAAU;AACxB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,YAAY,EAAE,aAAa;AAC3B,QAAA,YAAY,EAAE,aAAa;AAC5B,KAAA;AACD,IAAA,IAAI,EAAE;AACJ,QAAA,KAAK,EAAE,MAAM;AACd,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,WAAW,EAAE,oBAAoB;AACjC,QAAA,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,KAAK,CAAA,CAAA,EAAI,GAAG,CAAA,GAAA,EAAM,KAAK,CAAA,CAAE;AAC1D,QAAA,YAAY,EAAE,mBAAmB;AACjC,QAAA,QAAQ,EAAE,iBAAiB;AAC5B,KAAA;AACD,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,QAAQ;AAChB,KAAA;AACD,IAAA,OAAO,EAAE;AACP,QAAA,KAAK,EAAE,WAAW;AACnB,KAAA;AACD,IAAA,GAAG,EAAE;AACH,QAAA,MAAM,EAAE,MAAM;AACf,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,OAAO,EAAE,SAAS;AACnB,KAAA;AACD,IAAA,QAAQ,EAAE;AACR,QAAA,QAAQ,EAAE,wBAAwB;AAClC,QAAA,OAAO,EAAE,yBAAyB;AACnC,KAAA;;;ACtEH;AACO,MAAM,eAAe,GAAyC;IACnE,EAAE;AACF,IAAA,OAAO,EAAE,IAAI;IACb,EAAE;IACF,EAAE;AACF,IAAA,OAAO,EAAE,IAAI;;;ACTf;AACA,SAAS,cAAc,CACrB,IAAoB,EACpB,SAAiC,EAAA;IAEjC,MAAM,MAAM,GAAG,EAAoB;IACnC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAA6B,EAAE;AAC/D,QAAA,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,EAA2B;IAC5E;AACA,IAAA,OAAO,MAAM;AACf;AAEA;;;;;AAKG;MAEU,iBAAiB,CAAA;IACX,MAAM,GAAG,MAAM,CAAC,kBAAkB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAEvD,OAAO,GAAG,MAAM,CAAe,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,IAAI,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,SAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;AAGnE,IAAA,MAAM,GAAyB,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;;AAGxD,IAAA,QAAQ,GAA2B,QAAQ,CAAC,MAAK;QACxD,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE;AAClD,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,QAAQ;AACvC,QAAA,OAAO,SAAS,GAAG,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,IAAI;AAC3D,IAAA,CAAC,+EAAC;;AAGF,IAAA,SAAS,CAAC,MAAoB,EAAA;AAC5B,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3D;wGAlBW,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,cADJ,MAAM,EAAA,CAAA;;4FACnB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACxBlC;AACA;AACA;AAEA;AACA;AACA;AACA;AACA,MAAM,uBAAuB,GAAG,aAAa;AAE7C;AACA;AACA,MAAM,0BAA0B,GAAG,OAAO;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;AAyBG;AACG,SAAU,aAAa,CAAC,IAAY,EAAA;AACxC,IAAA,OAAO;AACJ,SAAA,OAAO,CAAC,uBAAuB,EAAE,KAAK;AACtC,SAAA,OAAO,CAAC,0BAA0B,EAAE,KAAK,CAAC;AAC/C;;AC5CA;AACA;AACA;;ACAA;;;;AAIG;MAOU,kBAAkB,CAAA;AACpB,IAAA,KAAK,GAAG,KAAK,CAAU,KAAK,4EAAC;AAE7B,IAAA,aAAa,GAAG,MAAM,CAAc,IAAI,GAAG,EAAE,oFAAC;AAEvD,IAAA,MAAM,CAAC,KAAa,EAAA;AAClB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE;AACpC,QAAA,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC;AAE7B,QAAA,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;AACnB,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QACpB;aAAO;AACL,YAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE;gBACjB,IAAI,CAAC,KAAK,EAAE;YACd;AACA,YAAA,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;QACjB;AAEA,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;IAC9B;AAEA,IAAA,UAAU,CAAC,KAAa,EAAA;QACtB,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC;IACxC;wGAvBW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,4MAJnB,CAAA,gDAAA,CAAkD,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,sKAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAIjD,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAN9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,EAAA,QAAA,EACd,CAAA,gDAAA,CAAkD,EAAA,eAAA,EAE3C,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,sKAAA,CAAA,EAAA;;;ACuBjD;;;;;;;AAOG;MAEmB,iBAAiB,CAAA;IACE,OAAO,GAAG,aAAa;IACzB,KAAK,GAAG,KAAK;IACZ,MAAM,GAAG,KAAK;wGAHhC,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,eAAA,EAAA,cAAA,EAAA,aAAA,EAAA,YAAA,EAAA,cAAA,EAAA,aAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBADtC;;sBAEE,WAAW;uBAAC,eAAe;;sBAC3B,WAAW;uBAAC,aAAa;;sBACzB,WAAW;uBAAC,cAAc;;;ACxBvB,MAAO,wBAAyB,SAAQ,iBAAiB,CAAA;AAC7D,IAAA,OAAgB,IAAI,GAAG,cAAc;AACrC,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,cAAc;QACd,SAAS;QACT,MAAM;QACN,OAAO;QACP,QAAQ;QACR,UAAU;QACV,KAAK;QACL,OAAO;QACP,MAAM;QACN,KAAK;KACN;wGAdU,wBAAwB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAxB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAfzB;;;;;;;;;;;;;AAaT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAlBpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;oBAChC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;AAaT,EAAA,CAAA;AACF,iBAAA;;;ACVD;;;;AAIG;MAQU,sBAAsB,CAAA;AAChB,IAAA,SAAS,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAE9C,IAAA,KAAK,GAAG,KAAK,CAAC,QAAQ,2EAAU;AAChC,IAAA,KAAK,GAAG,KAAK,CAAC,QAAQ,2EAAU;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;IAChC,EAAE,GAAG,KAAK,CACjB,CAAA,kBAAA,EAAqB,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAC9D;AAEQ,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,iFAAC;IAE7E,MAAM,GAAA;QACJ,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE;QACrB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACrC;wGAfW,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECvBnC,szBA2BA,EAAA,MAAA,EAAA,CAAA,svCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDTY,wBAAwB,EAAA,QAAA,EAAA,sBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAKvB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAPlC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,mBAAmB,WACpB,CAAC,wBAAwB,CAAC,EAAA,eAAA,EAGlB,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,szBAAA,EAAA,MAAA,EAAA,CAAA,svCAAA,CAAA,EAAA;;;AEF3C,MAAO,wBAAyB,SAAQ,iBAAiB,CAAA;AAC7D,IAAA,OAAgB,IAAI,GAAG,cAAc;AACrC,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,cAAc;QACd,OAAO;QACP,QAAQ;QACR,SAAS;QACT,SAAS;QACT,cAAc;QACd,QAAQ;QACR,eAAe;QACf,QAAQ;QACR,OAAO;QACP,YAAY;QACZ,SAAS;QACT,OAAO;QACP,aAAa;KACd;wGAlBU,wBAAwB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAxB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAZzB;;;;;;;;;;AAUT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAfpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;oBAChC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;AAUT,EAAA,CAAA;AACF,iBAAA;;;ACIK,MAAO,kBAAmB,SAAQ,iBAAiB,CAAA;AACvD,IAAA,OAAgB,IAAI,GAAG,OAAO;AAC9B,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,OAAO;QACP,MAAM;QACN,SAAS;QACT,MAAM;QACN,IAAI;QACJ,KAAK;QACL,OAAO;QACP,SAAS;QACT,OAAO;QACP,WAAW;QACX,MAAM;QACN,aAAa;QACb,SAAS;QACT,WAAW;KACZ;wGAlBU,kBAAkB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAfnB;;;;;;;;;;;;;AAaT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAlB9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;oBACzB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;AAaT,EAAA,CAAA;AACF,iBAAA;;;ACcK,MAAO,iBAAkB,SAAQ,iBAAiB,CAAA;AACtD,IAAA,OAAgB,IAAI,GAAG,MAAM;AAC7B,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,MAAM;QACN,aAAa;QACb,MAAM;QACN,OAAO;QACP,SAAS;QACT,aAAa;QACb,aAAa;QACb,aAAa;QACb,YAAY;KACb;wGAbU,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EA5BlB;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBA/B7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;oBACxB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BT,EAAA,CAAA;AACF,iBAAA;;;ACHK,MAAO,cAAe,SAAQ,iBAAiB,CAAA;AACnD,IAAA,OAAgB,IAAI,GAAG,GAAG;AAC1B,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,GAAG;QACH,OAAO;QACP,QAAQ;QACR,OAAO;QACP,QAAQ;QACR,MAAM;QACN,QAAQ;QACR,QAAQ;QACR,UAAU;QACV,OAAO;QACP,SAAS;QACT,QAAQ;KACT;wGAhBU,cAAc,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAxBf;;;;;;;;;;;;;;;;;;;;;;AAsBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,cAAc,EAAA,UAAA,EAAA,CAAA;kBA3B1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,WAAW;oBACrB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;AAsBT,EAAA,CAAA;AACF,iBAAA;;;ACXD;;;;AAIG;MAaU,cAAc,CAAA;AACN,IAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAE1C,IAAA,OAAO,GAAG,KAAK,CAAe,SAAS,8EAAC;AACxC,IAAA,WAAW,GAAG,KAAK,CAAU,KAAK,kFAAC;AACnC,IAAA,OAAO,GAAG,KAAK,CAAU,IAAI,8EAAC;;IAG9B,SAAS,GAAG,MAAM,EAAQ;AAE1B,IAAA,YAAY,GAAG,QAAQ,CAAC,OAAO;QACtC,CAAC,CAAA,UAAA,EAAa,IAAI,CAAC,OAAO,EAAE,CAAA,CAAE,GAAG,IAAI;AACtC,KAAA,CAAC,mFAAC;AAEM,IAAA,IAAI,GAAG,QAAQ,CAAC,MAAK;AAC5B,QAAA,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE;AACxB,QAAA,OAAO,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,SAAS,GAAG,OAAO,GAAG,QAAQ;AAC9D,IAAA,CAAC,2EAAC;;IAGF,OAAO,GAAA;AACL,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;AACvB,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;IACvB;wGAvBW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,eAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECpC3B,yoCA4CA,EAAA,MAAA,EAAA,CAAA,41DAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDdI,wBAAwB,iEACxB,kBAAkB,EAAA,QAAA,EAAA,eAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAClB,iBAAiB,EAAA,QAAA,EAAA,cAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACjB,cAAc,EAAA,QAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAGL,cAAc,EAAA,UAAA,EAAA,CAAA;kBAZ1B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,UAAU,EAAA,eAAA,EAGH,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC;wBACP,wBAAwB;wBACxB,kBAAkB;wBAClB,iBAAiB;wBACjB,cAAc;AACf,qBAAA,EAAA,QAAA,EAAA,yoCAAA,EAAA,MAAA,EAAA,CAAA,41DAAA,CAAA,EAAA;;;AEXH;;;;;AAKG;MAeU,qBAAqB,CAAA;AACf,IAAA,OAAO,GAAG,SAAS,CAA+B,SAAS,8EAAC;AAC5D,IAAA,MAAM,GAAG,SAAS,CAA0B,QAAQ,6EAAC;AACrD,IAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC;;AAGxC,IAAA,KAAK,GAAG,KAAK,CAAqB,SAAS,4EAAC;AAC5C,IAAA,WAAW,GAAG,KAAK,CAAS,EAAE,kFAAC;AAC/B,IAAA,OAAO,GAAG,KAAK,CAAiB,EAAE,8EAAC;AACnC,IAAA,IAAI,GAAG,KAAK,CAAmB,IAAI,2EAAC;AACpC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,IAAI,GAAG,KAAK,CAAqB,SAAS,2EAAC;AAC3C,IAAA,QAAQ,GAAG,KAAK,CAAqB,SAAS,+EAAC;AAC/C,IAAA,SAAS,GAAG,KAAK,CAAS,CAAC,gFAAC;AAC5B,IAAA,UAAU,GAAG,KAAK,CAAS,EAAE,iFAAC;AAC9B,IAAA,YAAY,GAAG,KAAK,CAAqB,SAAS,mFAAC;IACnD,EAAE,GAAG,KAAK,CACjB,CAAA,gBAAA,EAAmB,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAC5D;;AAGQ,IAAA,KAAK,GAAG,KAAK,CAAS,EAAE,4EAAC;;;IAIzB,QAAQ,GAAG,MAAM,EAAgB;;IAEjC,OAAO,GAAG,MAAM,EAAU;;IAE1B,OAAO,GAAG,MAAM,EAAc;;IAE9B,OAAO,GAAG,MAAM,EAAc;;AAG9B,IAAA,MAAM,GAAG,MAAM,CAAC,KAAK,6EAAC;AACtB,IAAA,SAAS,GAAG,MAAM,CAAC,KAAK,gFAAC;AACzB,IAAA,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,mFAAC;AACjB,IAAA,aAAa,GAAG,MAAM,CAAC,KAAK,oFAAC;IACtC,YAAY,GAAG,KAAK;;AAGpB,IAAA,QAAQ,GAA4B,MAAK,EAAE,CAAC;AAC5C,IAAA,SAAS,GAAe,MAAK,EAAE,CAAC;;AAG/B,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,iFAAC;AAEpE,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,+EAAC;AAC5C,IAAA,SAAS,GAAG,IAAI,CAAC,QAAQ;AACzB,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,+EAAC;AAE5D,IAAA,eAAe,GAAG,QAAQ,CAAiB,MAAK;AACvD,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;AAC/C,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE;AACjC,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE;AAE7B,QAAA,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE;AAAE,YAAA,OAAO,EAAE;QAE9C,MAAM,OAAO,GAAG;cACZ,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;cAC5D,UAAU;QAEd,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;AAC9B,IAAA,CAAC,sFAAC;IAEO,QAAQ,GAAG,QAAQ,CAC1B,MAAM,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,UAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAC/D;IAEQ,SAAS,GAAG,QAAQ,CAC3B,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC,MAAM,KAAK,CAAC,gFAC7D;;IAGQ,oBAAoB,GAAG,QAAQ,CACtC,MAAM,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,YAAY,CAAC,KAAK,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,sBAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CACrE;AAEQ,IAAA,cAAc,GAAG,QAAQ,CAAC,OAAO;QACxC,CAAC,CAAA,0BAAA,EAA6B,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,IAAI;AAClD,QAAA,iCAAiC,EAAE,IAAI,CAAC,QAAQ,EAAE;AAClD,QAAA,mCAAmC,EAAE,IAAI,CAAC,SAAS,EAAE;AACrD,QAAA,oCAAoC,EAAE,IAAI,CAAC,UAAU,EAAE;AACxD,KAAA,CAAC,qFAAC;;AAGH,IAAA,UAAU,CAAC,GAAW,EAAA;QACpB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;IAC3B;AAEA,IAAA,gBAAgB,CAAC,EAA2B,EAAA;AAC1C,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;IACpB;AAEA,IAAA,iBAAiB,CAAC,EAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACrB;AAEA,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAClC,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC;IACpC;;AAGA,IAAA,WAAW,CAAC,KAAY,EAAA;AACtB,QAAA,MAAM,IAAI,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK;AACrD,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;AACvB,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;QACrB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3B;AAEA,IAAA,WAAW,CAAC,KAAiB,EAAA;AAC3B,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;AACxB,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK;YACzB;QACF;AACA,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;AAC3C,YAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;QACvB;IACF;AAEA,IAAA,UAAU,CAAC,KAAiB,EAAA;AAC1B,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,SAAS,EAAE;AAChB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;IAC1B;AAEA,IAAA,aAAa,CAAC,KAAoB,EAAA;QAChC,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE;AAE1C,QAAA,QAAQ,KAAK,CAAC,GAAG;AACf,YAAA,KAAK,WAAW;gBACd,KAAK,CAAC,cAAc,EAAE;AACtB,gBAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;AAClB,oBAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;gBACvB;qBAAO;AACL,oBAAA,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;gBACnB;gBACA;AACF,YAAA,KAAK,SAAS;gBACZ,KAAK,CAAC,cAAc,EAAE;gBACtB,IAAI,IAAI,CAAC,MAAM,EAAE;AAAE,oBAAA,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACrC;YACF,KAAK,OAAO,EAAE;AACZ,gBAAA,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE;AACnC,gBAAA,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE;gBAC/B,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;oBACzE,KAAK,CAAC,cAAc,EAAE;oBACtB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC9B;gBACA;YACF;AACA,YAAA,KAAK,QAAQ;AACX,gBAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;oBACjB,KAAK,CAAC,cAAc,EAAE;oBACtB,IAAI,CAAC,KAAK,EAAE;gBACd;gBACA;;IAEN;;AAGA,IAAA,YAAY,CAAC,MAAoB,EAAA;AAC/B,QAAA,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE;YAAE;QAC1C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;AAC5B,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;AAC/B,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;AAC1B,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI;QACxB,IAAI,CAAC,KAAK,EAAE;QACZ,IAAI,CAAC,OAAO,EAAE,EAAE,aAAa,CAAC,KAAK,EAAE;IACvC;;IAGA,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;QACtB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3B;;IAGA,KAAK,GAAA;QACH,IAAI,CAAC,OAAO,EAAE,EAAE,aAAa,CAAC,KAAK,EAAE;IACvC;AAEQ,IAAA,SAAS,CAAC,KAAa,EAAA;AAC7B,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE;AACnC,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE;QACvB,IAAI,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,KAAK;AACrC,QAAA,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;YAC1D,GAAG,IAAI,KAAK;QACd;QACA,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM;YAAE;AACnC,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC;IAC5B;AAGA,IAAA,eAAe,CAAC,KAAY,EAAA;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAAE;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,aAAa;AACzC,QAAA,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,EAAE;YAChD,IAAI,CAAC,KAAK,EAAE;QACd;IACF;wGA/MW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,gBAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,SAAA,EARrB;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,qBAAqB,CAAC;AACpD,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;SACF,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,SAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,QAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECzCH,21FAmGA,guGDpEY,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAYN,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAdjC,SAAS;+BACE,iBAAiB,EAAA,OAAA,EAClB,CAAC,OAAO,CAAC,mBAGD,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,2BAA2B,CAAC;AACpD,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,21FAAA,EAAA,MAAA,EAAA,CAAA,wqGAAA,CAAA,EAAA;AAGkE,SAAA,CAAA,EAAA,cAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CAAA,SAAS,gEACf,QAAQ,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,IAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,CAAA;sBAsMpE,YAAY;uBAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC;;;AExNtC,MAAO,mBAAoB,SAAQ,iBAAiB,CAAA;AACxD,IAAA,OAAgB,IAAI,GAAG,QAAQ;AAC/B,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,QAAQ;QACR,OAAO;QACP,aAAa;QACb,SAAS;QACT,UAAU;QACV,gBAAgB;QAChB,QAAQ;QACR,MAAM;QACN,QAAQ;QACR,YAAY;QACZ,QAAQ;QACR,SAAS;KACV;wGAhBU,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAnB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EApBpB;;;;;;;;;;;;;;;;;;AAkBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAvB/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;oBAC1B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;AAkBT,EAAA,CAAA;AACF,iBAAA;;;ACAK,MAAO,kBAAmB,SAAQ,iBAAiB,CAAA;AACvD,IAAA,OAAgB,IAAI,GAAG,OAAO;AAC9B,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,OAAO;QACP,UAAU;QACV,QAAQ;QACR,MAAM;QACN,UAAU;QACV,OAAO;QACP,OAAO;QACP,QAAQ;QACR,OAAO;QACP,UAAU;QACV,OAAO;QACP,SAAS;KACV;wGAhBU,kBAAkB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAnBnB;;;;;;;;;;;;;;;;;AAiBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAtB9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;oBACzB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;AAiBT,EAAA,CAAA;AACF,iBAAA;;;ACMK,MAAO,iBAAkB,SAAQ,iBAAiB,CAAA;AACtD,IAAA,OAAgB,IAAI,GAAG,MAAM;AAC7B,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,MAAM;QACN,KAAK;QACL,KAAK;QACL,QAAQ;QACR,UAAU;QACV,SAAS;QACT,QAAQ;QACR,SAAS;QACT,KAAK;QACL,UAAU;QACV,OAAO;QACP,MAAM;KACP;wGAhBU,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAxBlB;;;;;;;;;;;;;;;;;;;;;;AAsBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBA3B7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;oBACxB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;AAsBT,EAAA,CAAA;AACF,iBAAA;;;ACPK,MAAO,sBAAuB,SAAQ,iBAAiB,CAAA;AAC3D,IAAA,OAAgB,IAAI,GAAG,YAAY;AACnC,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,YAAY;QACZ,QAAQ;QACR,KAAK;QACL,kBAAkB;QAClB,MAAM;QACN,MAAM;QACN,SAAS;QACT,OAAO;QACP,YAAY;QACZ,OAAO;QACP,QAAQ;KACT;wGAfU,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAtB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAhBvB;;;;;;;;;;;;;;AAcT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAnBlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;oBAC9B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;AAcT,EAAA,CAAA;AACF,iBAAA;;;ACEK,MAAO,kBAAmB,SAAQ,iBAAiB,CAAA;AACvD,IAAA,OAAgB,IAAI,GAAG,OAAO;AAC9B,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,KAAK;QACL,SAAS;QACT,OAAO;QACP,UAAU;QACV,WAAW;QACX,QAAQ;QACR,UAAU;QACV,OAAO;QACP,UAAU;QACV,MAAM;QACN,MAAM;KACP;wGAlBU,kBAAkB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAjBnB;;;;;;;;;;;;;;;AAeT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBApB9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;oBACzB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;AAeT,EAAA,CAAA;AACF,iBAAA;;;ACKK,MAAO,mBAAoB,SAAQ,iBAAiB,CAAA;AACxD,IAAA,OAAgB,IAAI,GAAG,QAAQ;AAC/B,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,QAAQ;QACR,MAAM;QACN,OAAO;QACP,OAAO;QACP,QAAQ;QACR,YAAY;QACZ,SAAS;QACT,OAAO;QACP,QAAQ;QACR,aAAa;QACb,UAAU;QACV,UAAU;QACV,OAAO;KACR;wGAjBU,mBAAmB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAnB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EArBpB;;;;;;;;;;;;;;;;;;;AAmBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAxB/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,gBAAgB;oBAC1B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;AAmBT,EAAA,CAAA;AACF,iBAAA;;;ACtBD;;;;AAIG;MAOU,iBAAiB,CAAA;AACnB,IAAA,OAAO,GAAG,KAAK,CAAkB,MAAM,8EAAC;AACxC,IAAA,KAAK,GAAG,KAAK,CAAqB,SAAS,4EAAC;AAC5C,IAAA,MAAM,GAAG,KAAK,CAAqB,SAAS,6EAAC;AAC7C,IAAA,QAAQ,GAAG,KAAK,CAAU,IAAI,+EAAC;AAE/B,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAK;QAClC,MAAM,MAAM,GAA2B,EAAE;QACzC,IAAI,IAAI,CAAC,KAAK,EAAE;YAAE,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,EAAG;QACjD,IAAI,IAAI,CAAC,MAAM,EAAE;YAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,MAAM,EAAG;AACpD,QAAA,OAAO,MAAM;AACf,IAAA,CAAC,iFAAC;AAEO,IAAA,WAAW,GAAG,QAAQ,CAAC,OAAO;QACrC,CAAC,CAAA,aAAA,EAAgB,IAAI,CAAC,OAAO,EAAE,CAAA,CAAE,GAAG,IAAI;AACxC,QAAA,uBAAuB,EAAE,IAAI,CAAC,QAAQ,EAAE;AACzC,KAAA,CAAC,kFAAC;wGAhBQ,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,qkBChB9B,oTASA,EAAA,MAAA,EAAA,CAAA,ggBAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FDOa,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAN7B,SAAS;+BACE,aAAa,EAAA,eAAA,EAGN,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,oTAAA,EAAA,MAAA,EAAA,CAAA,ggBAAA,CAAA,EAAA;;;AEFjD;;;;AAIG;MAIU,gBAAgB,CAAA;AACV,IAAA,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;AACvB,IAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;AAEpC,IAAA,SAAS,GAAG,KAAK,CAAC,QAAQ,+EAAU;AACpC,IAAA,eAAe,GAAG,KAAK,CAAkB,KAAK,sFAAC;IAEhD,SAAS,GAAuB,IAAI;AAC3B,IAAA,SAAS,GAAG,CAAA,WAAA,EAAc,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;;;;;;IAOlE,QAAQ,GACvB,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK;AAC5D,UAAE,MAAM,CAAC,UAAU,CAAC,gBAAgB;UAClC,IAAI;IAEO,WAAW,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE;IAC/B,WAAW,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE;AAChD;;;AAGyC;AACxB,IAAA,oBAAoB,GACnC,OAAO,GAAG,KAAK,WAAW,IAAI,GAAG,CAAC,QAAQ,GAAG,0BAA0B,CAAC,KAAK,IAAI;AACnF;;;;;AAKyC;IACxB,YAAY,GAAG,MAAK;AACnC,QAAA,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;YACjF,IAAI,CAAC,IAAI,EAAE;QACb;AACF,IAAA,CAAC;AACgB,IAAA,cAAc,GAAG,CAAC,KAAoB,KAAI;QACzD,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;YAC5C,IAAI,CAAC,IAAI,EAAE;QACb;AACF,IAAA,CAAC;AACgB,IAAA,kBAAkB,GAAG,CAAC,KAA0B,KAC/D,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,OAAO,CAAC;AAC1C;;AAE4E;IACpE,KAAK,GAAkB,IAAI;IAClB,iBAAiB,GAAG,MAAK;QACxC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YAAE;AAC5C,QAAA,IAAI,CAAC,KAAK,GAAG,qBAAqB,CAAC,MAAK;AACtC,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI;YACjB,IAAI,IAAI,CAAC,SAAS;gBAAE,IAAI,CAAC,eAAe,EAAE;AAC5C,QAAA,CAAC,CAAC;AACJ,IAAA,CAAC;AACD;AAC2E;AAC1D,IAAA,qBAAqB,GAA4B;AAChE,QAAA,OAAO,EAAE,IAAI;AACb,QAAA,OAAO,EAAE,IAAI;KACd;AACD;AACkE;IAC1D,cAAc,GAA0B,IAAI;AAEpD,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa;;QAEpC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC;QACnD,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC;QACjD,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC;QAEvD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,IAAI,IAAI,CAAC;QACzD,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC;IACpE;IAEA,WAAW,GAAA;AACT,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa;QACpC,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC;QAC1D,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC;QAC1D,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC;QACtD,MAAM,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC;QACpD,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC;QAC1D,IAAI,CAAC,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC;QACrE,IAAI,CAAC,IAAI,EAAE;IACb;AAEQ,IAAA,oBAAoB,CAAC,QAAiB,EAAA;AAC5C,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa;;;QAGpC,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC;QAC1D,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC;QAC1D,IAAI,QAAQ,EAAE;YACZ,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC;YACvD,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,IAAI,CAAC,WAAW,CAAC;QACzD;aAAO;YACL,IAAI,CAAC,IAAI,EAAE;QACb;IACF;IAEQ,IAAI,GAAA;QACV,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YAAE;QAEzC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;QACnD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC;AACpD,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAA,YAAA,EAAe,IAAI,CAAC,eAAe,EAAE,CAAA,CAAE,CAAC;AAC/E,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC;AAC7D,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;QAChE,IAAI,CAAC,SAAU,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE;AAE9C,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;QACxD,IAAI,CAAC,iBAAiB,EAAE;QACxB,IAAI,CAAC,eAAe,EAAE;QACtB,IAAI,CAAC,yBAAyB,EAAE;IAClC;IAEQ,IAAI,GAAA;QACV,IAAI,CAAC,yBAAyB,EAAE;AAChC,QAAA,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;AACvB,YAAA,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC;AAChC,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI;QACnB;AACA,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,YAAA,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;AACvB,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI;YACrB,IAAI,CAAC,iBAAiB,EAAE;QAC1B;IACF;IAEQ,yBAAyB,GAAA;AAC/B;AAC2E;QAC3E,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE;QACnC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC;AACzD;AACmD;AACnD,QAAA,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,qBAAqB,CAAC;AACrF,QAAA,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE;YACzC,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,iBAAiB,CAAC;YAChE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC;AAClD;AACmE;YACnE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC5C;IACF;IAEQ,yBAAyB,GAAA;QAC/B,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE;QACnC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC;AAC5D,QAAA,MAAM,CAAC,mBAAmB,CACxB,QAAQ,EACR,IAAI,CAAC,iBAAiB,EACtB,IAAI,CAAC,qBAAqB,CAC3B;AACD,QAAA,IAAI,CAAC,cAAc,EAAE,UAAU,EAAE;AACjC,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI;IAC5B;IAEQ,iBAAiB,GAAA;AACvB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa;AACpC,QAAA,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE;AACvE,QAAA,MAAM,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE;QACpD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;AAAE,YAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;AACjE,QAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,kBAAkB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1E;IAEQ,iBAAiB,GAAA;AACvB,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa;AACpC,QAAA,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE;QACvE,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAS,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC;AACrF,QAAA,IAAI,MAAM,CAAC,MAAM,EAAE;AACjB,YAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,kBAAkB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1E;aAAO;YACL,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,kBAAkB,CAAC;QAC3D;IACF;IAEQ,eAAe,GAAA;QACrB,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE;QAErB,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,qBAAqB,EAAE;AAE9D;;;;;;;AAOiC;QACjC,MAAM,UAAU,GAAG,OAAO,QAAQ,EAAE,gBAAgB,KAAK,UAAU;QACnE,IAAI,UAAU,EAAE;YACd,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,GAAG,QAAQ,CAAC,KAAK,GAAG,CAAC;YAC7C,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC;YAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,CAAC;AACjD,YAAA,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBACxD,IAAI,CAAC,IAAI,EAAE;gBACX;YACF;QACF;QAEA,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,qBAAqB,EAAE;QAC1D,MAAM,GAAG,GAAG,CAAC;AACb;AAC2E;QAC3E,MAAM,WAAW,GAAG,CAAC;AAErB,QAAA,IAAI,GAAW;AACf,QAAA,IAAI,IAAY;AAEhB,QAAA,QAAQ,IAAI,CAAC,eAAe,EAAE;AAC5B,YAAA,KAAK,KAAK;gBACR,GAAG,GAAG,QAAQ,CAAC,GAAG,GAAG,WAAW,CAAC,MAAM,GAAG,GAAG;AAC7C,gBAAA,IAAI,GAAG,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,CAAC;gBAC/D;AACF,YAAA,KAAK,QAAQ;AACX,gBAAA,GAAG,GAAG,QAAQ,CAAC,MAAM,GAAG,GAAG;AAC3B,gBAAA,IAAI,GAAG,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,CAAC;gBAC/D;AACF,YAAA,KAAK,MAAM;AACT,gBAAA,GAAG,GAAG,QAAQ,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,IAAI,CAAC;gBAC/D,IAAI,GAAG,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,GAAG,GAAG;gBAC9C;AACF,YAAA,KAAK,OAAO;AACV,gBAAA,GAAG,GAAG,QAAQ,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,IAAI,CAAC;AAC/D,gBAAA,IAAI,GAAG,QAAQ,CAAC,KAAK,GAAG,GAAG;gBAC3B;;AAGJ;;;;AAIiB;AACjB,QAAA,MAAM,aAAa,GAAG,QAAQ,CAAC,eAAe,CAAC,WAAW;AAC1D,QAAA,MAAM,cAAc,GAAG,QAAQ,CAAC,eAAe,CAAC,YAAY;QAC5D,IAAI,GAAG,IAAI,CAAC,GAAG,CACb,WAAW,EACX,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,GAAG,WAAW,CAAC,KAAK,GAAG,WAAW,CAAC,CAChE;QACD,GAAG,GAAG,IAAI,CAAC,GAAG,CACZ,WAAW,EACX,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,cAAc,GAAG,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC,CACjE;AAED;;;;;;AAMiE;QACjE,IAAI,UAAU,EAAE;YACd,MAAM,GAAG,GAAG,IAAI,GAAG,WAAW,CAAC,KAAK,GAAG,CAAC;YACxC,MAAM,GAAG,GAAG,GAAG,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC;YACxC,MAAM,WAAW,GAAG,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC;AACvD,YAAA,IAAI,WAAW,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;gBAC/D,IAAI,MAAM,GAAmB,WAAW;gBACxC,OAAO,MAAM,IAAI,MAAM,KAAK,QAAQ,CAAC,IAAI,EAAE;oBACzC,MAAM,GAAG,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,QAAQ;oBAC7C,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,QAAQ,EAAE;wBACvC,IAAI,CAAC,IAAI,EAAE;wBACX;oBACF;AACA,oBAAA,MAAM,GAAG,MAAM,CAAC,aAAa;gBAC/B;YACF;QACF;AAEA,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,CAAA,EAAG,GAAG,GAAG,MAAM,CAAC,OAAO,CAAA,EAAA,CAAI,CAAC;AAC1E,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAA,EAAG,IAAI,GAAG,MAAM,CAAC,OAAO,CAAA,EAAA,CAAI,CAAC;IAC9E;wGAlRW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,aAAa;AACxB,iBAAA;;;AC0BD;;;;AAIG;MAmBU,qBAAqB,CAAA;AACvB,IAAA,QAAQ,GAAG,SAAS,CAAgC,UAAU,+EAAC;AAC/D,IAAA,WAAW,GAAG,SAAS,CAA+B,aAAa,kFAAC;AAC1D,IAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAE1C,IAAA,KAAK,GAAG,KAAK,CAAoB,QAAQ,4EAAC;AAC1C,IAAA,UAAU,GAAG,KAAK,CAAS,GAAG,iFAAC;AAC/B,IAAA,UAAU,GAAG,KAAK,CAAqB,SAAS,iFAAC;AACjD,IAAA,OAAO,GAAG,KAAK,CAAU,KAAK,8EAAC;AAC/B,IAAA,MAAM,GAAG,KAAK,CAAS,SAAS,6EAAC;IACjC,WAAW,GAAG,KAAK,CAAS,CAAC,GAAG,IAAI,GAAG,IAAI,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,aAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC,CAAC;AAC7C,IAAA,OAAO,GAAG,KAAK,CAAS,CAAC,8EAAC;AAC1B,IAAA,OAAO,GAAG,KAAK,CAAS,CAAC,8EAAC;AAC1B,IAAA,aAAa,GAAG,KAAK,CAAS,IAAI,oFAAC;AACnC,IAAA,UAAU,GAAG,KAAK,CAAS,WAAW,iFAAC;IAEvC,SAAS,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAA4C;;IAG7D,OAAO,GAAG,MAAM,EAAyB;;IAEzC,YAAY,GAAG,MAAM,EAAQ;;IAE7B,OAAO,GAAG,MAAM,EAAQ;;IAExB,OAAO,GAAG,MAAM,EAAU;;IAE1B,gBAAgB,GAAG,MAAM,EAAyB;AAElD,IAAA,QAAQ,GAAG,MAAM,CAAC,KAAK,+EAAC;AACxB,IAAA,UAAU,GAAG,MAAM,CAAC,KAAK,iFAAC;AAC1B,IAAA,YAAY,GAAG,MAAM,CAAC,KAAK,mFAAC;AAC5B,IAAA,SAAS,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,gFAAC;AAC/D,IAAA,IAAI,GAAG,MAAM,CAAC,CAAC,2EAAC;AAChB,IAAA,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,gBAAgB,gFAAC;;AAEzE,IAAA,WAAW,GAAG,MAAM,CAAC,IAAI,kFAAC;IAE3B,KAAK,GAA4B,IAAI;IACrC,OAAO,GAAG,CAAC;IACX,OAAO,GAAG,CAAC;IACX,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,CAAC;IACd,UAAU,GAAG,KAAK;IAClB,UAAU,GAAG,KAAK;IAClB,cAAc,GAAG,CAAC;IAClB,cAAc,GAAG,CAAC;IAClB,sBAAsB,GAAG,KAAK;AACrB,IAAA,UAAU,GAAG,MAAM,CAAC,KAAK,iFAAC;IACnC,gBAAgB,GAAG,KAAK;IACxB,aAAa,GAA4B,IAAI;IAC7C,iBAAiB,GACvB,IAAI;AAEG,IAAA,WAAW,GAAG,QAAQ,CAAC,OAAO;QACrC,CAAC,CAAA,kBAAA,EAAqB,IAAI,CAAC,KAAK,EAAE,CAAA,CAAE,GAAG,IAAI;AAC3C,QAAA,6BAA6B,EAAE,IAAI,CAAC,QAAQ,EAAE;AAC9C,QAAA,6BAA6B,EAAE,IAAI,CAAC,UAAU,EAAE;AACjD,KAAA,CAAC,kFAAC;AAEc,IAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC3B,IAAA,UAAU,GAAG,CAAC,CAAa,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AAEhE,IAAA,WAAA,GAAA;QACE,MAAM,CAAC,MAAK;AACV,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,EAAE;YAC7B,IAAI,CAAC,GAAG,EAAE;AACR,gBAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1B,gBAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;AAC1B,oBAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI;AAC5B,oBAAA,IAAI,CAAC,aAAa,GAAG,IAAI;AACzB,oBAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;AAC7B,oBAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;gBAC7B;gBACA;YACF;AACA,YAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK;AAC7B,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI;AACzB,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;YAC7B,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,SAAS,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,IAAI,EAAE,IAAI,CAAC;AACxE,QAAA,CAAC,CAAC;IACJ;IAEA,WAAW,GAAA;QACT,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa;QAC7C,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC;IACvD;AAEA,IAAA,UAAU,CAAC,KAAgB,EAAA;QACzB,KAAK,CAAC,cAAc,EAAE;QACtB,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;IAC3B;AAEA,IAAA,WAAW,CAAC,KAAgB,EAAA;QAC1B,KAAK,CAAC,cAAc,EAAE;QACtB,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;IAC5B;AAEA,IAAA,MAAM,CAAC,KAAgB,EAAA;QACrB,KAAK,CAAC,cAAc,EAAE;QACtB,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;QAE1B,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;AACzC,QAAA,IAAI,IAAI;AAAE,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC/B;AAEA,IAAA,cAAc,CAAC,KAAY,EAAA;AACzB,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,MAA0B;QAC9C,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;AAC7B,QAAA,IAAI,IAAI;AAAE,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;AAC7B,QAAA,KAAK,CAAC,KAAK,GAAG,EAAE;IAClB;;IAGA,cAAc,GAAA;QACZ,IAAI,CAAC,WAAW,EAAE,EAAE,aAAa,CAAC,KAAK,EAAE;IAC3C;AAEA,IAAA,WAAW,CAAC,KAAiB,EAAA;AAC3B,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAAE;QACtB,KAAK,CAAC,cAAc,EAAE;AACtB,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AACtB,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK;AACvB,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,OAAO;AAC/B,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,OAAO;AAC/B,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO;AAClC,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO;QAElC,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC;QAC7D,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC;IAC3D;AAEA,IAAA,YAAY,CAAC,KAAiB,EAAA;AAC5B,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE;QACpD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9B,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AACtB,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK;AACvB,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,OAAO;AAC/B,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,OAAO;AAC/B,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO;AAClC,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO;AAElC,QAAA,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACjF,QAAQ,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC;IAC7D;AAEiB,IAAA,gBAAgB,GAAG,CAAC,CAAa,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IACzD,cAAc,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE;AACvC,IAAA,gBAAgB,GAAG,CAAC,CAAa,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IACzD,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE;AAElD,IAAA,WAAW,CAAC,KAAiB,EAAA;QACnC,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE;QACtB,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU;QAC1C,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU;AAC1C,QAAA,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE;AACxC,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AACtB,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC;QAC9B;QACA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;QACvC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;QACvC,IAAI,CAAC,WAAW,EAAE;QAClB,IAAI,CAAC,IAAI,EAAE;QACX,IAAI,CAAC,mBAAmB,EAAE;IAC5B;IAEQ,SAAS,GAAA;QACf,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,cAAc,EAAE;AAC3C,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK;QACvB,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC;QAChE,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC;IAC9D;AAEQ,IAAA,WAAW,CAAC,KAAiB,EAAA;QACnC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE;QACpD,KAAK,CAAC,cAAc,EAAE;QACtB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC9B,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU;QAC1C,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU;AAC1C,QAAA,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE;AACxC,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AACtB,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC;QAC9B;QACA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;QACvC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;QACvC,IAAI,CAAC,WAAW,EAAE;QAClB,IAAI,CAAC,IAAI,EAAE;QACX,IAAI,CAAC,mBAAmB,EAAE;IAC5B;IAEQ,UAAU,GAAA;QAChB,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,cAAc,EAAE;AAC3C,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK;QACvB,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC;QAChE,QAAQ,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC;IAChE;AAEQ,IAAA,OAAO,CAAC,KAAiB,EAAA;AAC/B,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAAE;QACtB,KAAK,CAAC,cAAc,EAAE;AACtB,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG;QAC3C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC;IACnC;AAEA,IAAA,eAAe,CAAC,KAAoB,EAAA;QAClC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE;YAAE;AAC1C,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC;QACpC,IAAI,OAAO,GAAG,KAAK;AAEnB,QAAA,QAAQ,KAAK,CAAC,GAAG;AACf,YAAA,KAAK,WAAW;AACd,gBAAA,IAAI,CAAC,OAAO,IAAI,IAAI;gBACpB,OAAO,GAAG,IAAI;gBACd;AACF,YAAA,KAAK,YAAY;AACf,gBAAA,IAAI,CAAC,OAAO,IAAI,IAAI;gBACpB,OAAO,GAAG,IAAI;gBACd;AACF,YAAA,KAAK,SAAS;AACZ,gBAAA,IAAI,CAAC,OAAO,IAAI,IAAI;gBACpB,OAAO,GAAG,IAAI;gBACd;AACF,YAAA,KAAK,WAAW;AACd,gBAAA,IAAI,CAAC,OAAO,IAAI,IAAI;gBACpB,OAAO,GAAG,IAAI;gBACd;AACF,YAAA,KAAK,GAAG;AACR,YAAA,KAAK,GAAG;gBACN,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC;gBAC/B,KAAK,CAAC,cAAc,EAAE;gBACtB;AACF,YAAA,KAAK,GAAG;AACR,YAAA,KAAK,GAAG;gBACN,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC;gBAC/B,KAAK,CAAC,cAAc,EAAE;gBACtB;;QAGJ,IAAI,OAAO,EAAE;YACX,KAAK,CAAC,cAAc,EAAE;AACtB,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC;YAC5B,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,IAAI,EAAE;YACX,IAAI,CAAC,mBAAmB,EAAE;QAC5B;IACF;;AAGA,IAAA,OAAO,CAAC,KAAa,EAAA;AACnB,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;AACzE,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC9C,IAAI,CAAC,WAAW,EAAE;QAClB,IAAI,CAAC,IAAI,EAAE;QACX,IAAI,CAAC,mBAAmB,EAAE;IAC5B;AAEA,IAAA,WAAW,CAAC,KAAY,EAAA;QACtB,MAAM,KAAK,GAAG,UAAU,CAAE,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;AAClE,QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;IACrB;;IAGA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;AACjB,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;AACxB,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAChB,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC;AAChB,QAAA,IAAI,CAAC,OAAO,GAAG,CAAC;QAChB,IAAI,CAAC,WAAW,EAAE;AAClB,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;AACnE,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;IACrB;;IAGA,eAAe,GAAA;AACb,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI;AAC5B,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,KAAK;AAC/B,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;cAC1B,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO;cACjE,IAAI;AACR,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;IAC7B;;IAGA,WAAW,GAAA;QACT,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE;AAE5B,QAAA,IAAI,IAAI,CAAC,aAAa,EAAE;AACtB,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa;AAC/B,YAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;AAEvB,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB;YACnC,IAAI,IAAI,EAAE;AACR,gBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5E,gBAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO;AAC3B,gBAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO;gBAC3B,IAAI,CAAC,WAAW,EAAE;YACpB;iBAAO;AACL,gBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,WAAW,EAAE;YACpB;AAEA,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;YAC3B,IAAI,CAAC,uBAAuB,EAAE;QAChC;aAAO;AACL,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI;AACjB,YAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;AACxB,YAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAChB,YAAA,IAAI,CAAC,OAAO,GAAG,CAAC;AAChB,YAAA,IAAI,CAAC,OAAO,GAAG,CAAC;YAChB,IAAI,CAAC,WAAW,EAAE;AAClB,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;QAC7B;IACF;;IAGA,UAAU,GAAA;QACR,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;AACrC,YAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;AACf,gBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBACpC;YACF;AAEA,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE;YAC9B,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;AAClD,YAAA,SAAS,CAAC,KAAK,GAAG,IAAI;AACtB,YAAA,SAAS,CAAC,MAAM,GAAG,IAAI;YACvB,MAAM,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAE;AAEvC,YAAA,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,QAAQ,EAAE;gBAC7B,GAAG,CAAC,SAAS,EAAE;gBACf,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;gBACrD,GAAG,CAAC,SAAS,EAAE;gBACf,GAAG,CAAC,IAAI,EAAE;YACZ;AAEA,YAAA,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE;AAC3D,YAAA,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AAErD,YAAA,SAAS,CAAC,MAAM,CACd,IAAI,IAAG;gBACL,IAAI,IAAI,EAAE;AACR,oBAAA,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE;AAC/B,oBAAA,MAAM,CAAC,SAAS,GAAG,MAAK;AACtB,wBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,MAAgB,EAAE,CAAC;wBAC7D,OAAO,CAAC,IAAI,CAAC;AACf,oBAAA,CAAC;AACD,oBAAA,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;gBAC5B;qBAAO;AACL,oBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;gBAC3C;YACF,CAAC,EACD,IAAI,CAAC,UAAU,EAAE,EACjB,IAAI,CAAC,aAAa,EAAE,CACrB;AACH,QAAA,CAAC,CAAC;IACJ;IAEQ,WAAW,CACjB,GAAW,EACX,SAAA,GAA0C,IAAI,EAC9C,YAAY,GAAG,KAAK,EAAA;AAEpB,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;AACzB,QAAA,IAAI,CAAC,sBAAsB,GAAG,YAAY;AAC1C,QAAA,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE;AACvB,QAAA,GAAG,CAAC,WAAW,GAAG,WAAW;AAC7B,QAAA,GAAG,CAAC,OAAO,GAAG,MAAK;AACjB,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1B,YAAA,IAAI,CAAC,sBAAsB,GAAG,KAAK;AACrC,QAAA,CAAC;AACD,QAAA,GAAG,CAAC,MAAM,GAAG,MAAK;AAChB,YAAA,IAAI,CAAC,KAAK,GAAG,GAAG;AAChB,YAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;YACvB,IAAI,SAAS,EAAE;AACb,gBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AACjF,gBAAA,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO;AAChC,gBAAA,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO;gBAChC,IAAI,CAAC,WAAW,EAAE;YACpB;iBAAO;AACL,gBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,WAAW,EAAE;YACpB;YACA,IAAI,YAAY,EAAE;AAChB,gBAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI;AAC5B,gBAAA,IAAI,CAAC,aAAa,GAAG,GAAG;gBACxB,IAAI,CAAC,iBAAiB,GAAG;AACvB,sBAAE,EAAE,GAAG,SAAS;sBACd,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;AACvE,gBAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;YAC7B;YACA,IAAI,CAAC,uBAAuB,EAAE;AAChC,QAAA,CAAC;AACD,QAAA,GAAG,CAAC,GAAG,GAAG,GAAG;IACf;AAEQ,IAAA,QAAQ,CAAC,IAAU,EAAA;QACzB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;AACnC,YAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC;YAC1C;QACF;QACA,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,EAAE;AAClC,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC;YAC5D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA,aAAA,EAAgB,KAAK,CAAA,SAAA,CAAW,CAAC;YACnD;QACF;AAEA,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC;AAC5B,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;AAE5B,QAAA,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE;AAC/B,QAAA,MAAM,CAAC,MAAM,GAAG,CAAC,IAAG;AAClB,YAAA,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE;AACvB,YAAA,GAAG,CAAC,MAAM,GAAG,MAAK;AAChB,gBAAA,IAAI,CAAC,KAAK,GAAG,GAAG;AAChB,gBAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;AACvB,gBAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAChB,IAAI,CAAC,WAAW,EAAE;gBAClB,IAAI,CAAC,uBAAuB,EAAE;AAChC,YAAA,CAAC;YACD,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,EAAE,MAAgB;AACtC,QAAA,CAAC;AACD,QAAA,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;IAC5B;IAEQ,uBAAuB,GAAA;QAC7B,eAAe,CACb,MAAK;YACH,IAAI,CAAC,IAAI,EAAE;AACX,YAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;AAC1B,YAAA,IAAI,CAAC,sBAAsB,GAAG,KAAK;YACnC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa;YAC7C,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC;AACrD,YAAA,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACxE,CAAC,EACD,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAC5B;IACH;IAEQ,WAAW,GAAA;QACjB,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE;AACjB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE;AAC9B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK;QACvC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,GAAG,KAAK,IAAI,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,GAAG,KAAK,IAAI,CAAC;IACnC;IAEQ,QAAQ,GAAA;QACd,IAAI,CAAC,IAAI,CAAC,KAAK;AAAE,YAAA,OAAO,CAAC;AACzB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;AAC7E,QAAA,OAAO,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE;IAChC;IAEQ,aAAa,GAAA;QAMnB,IAAI,CAAC,IAAI,CAAC,KAAK;AAAE,YAAA,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;AAClE,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE;QAC7B,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,OAAO;YACnB,KAAK,EAAE,IAAI,CAAC,OAAO;AACnB,YAAA,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK;AAC/B,YAAA,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK;SACjC;IACH;IAEQ,WAAW,GAAA;QACjB,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE;AACjB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE;QAC9B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE;QAE7C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAChE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAClE;IAEQ,IAAI,GAAA;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa;AAC7C,QAAA,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE;QAE5B,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAE;AACpC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE;AAC9B,QAAA,MAAM,CAAC,KAAK,GAAG,IAAI;AACnB,QAAA,MAAM,CAAC,MAAM,GAAG,IAAI;QAEpB,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;AAE/B,QAAA,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE;AAC3D,QAAA,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AAErD,QAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC;;AAGnC,QAAA,GAAG,CAAC,SAAS,GAAG,oBAAoB;QACpC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;AAE9B,QAAA,GAAG,CAAC,wBAAwB,GAAG,iBAAiB;AAChD,QAAA,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,QAAQ,EAAE;YAC7B,GAAG,CAAC,SAAS,EAAE;YACf,GAAG,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;YACrD,GAAG,CAAC,IAAI,EAAE;QACZ;aAAO;YACL,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC;QAChC;AAEA,QAAA,GAAG,CAAC,wBAAwB,GAAG,kBAAkB;AACjD,QAAA,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AACrD,QAAA,GAAG,CAAC,wBAAwB,GAAG,aAAa;IAC9C;AAEA;;;;;;;;;AASG;IACK,mBAAmB,CAAC,GAA6B,EAAE,IAAY,EAAA;AACrE,QAAA,IAAI,IAAuB;AAC3B,QAAA,IAAI;AACF,YAAA,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,IAAI;QAChD;AAAE,QAAA,MAAM;AACN,YAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;YAC1B;QACF;QAEA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,QAAQ;AAC1C,QAAA,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC;AACnB,QAAA,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC;AACnB,QAAA,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE;QAExB,IAAI,GAAG,GAAG,CAAC;QACX,IAAI,KAAK,GAAG,CAAC;AACb,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;AAC7B,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;gBAC7B,IAAI,QAAQ,EAAE;AACZ,oBAAA,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE;AACjB,oBAAA,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE;oBACjB,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,QAAQ;wBAAE;gBACpC;gBACA,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC;AAC5B,gBAAA,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;oBAAE;gBACvB,GAAG,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AAClE,gBAAA,KAAK,EAAE;YACT;QACF;;;;QAKA,IAAI,KAAK,GAAG,CAAC;YAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,GAAG,GAAG,CAAC;IACxD;IAEQ,mBAAmB,GAAA;QACzB,IAAI,IAAI,CAAC,sBAAsB;YAAE;AACjC,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC;AACzB,YAAA,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;AACtB,SAAA,CAAC;IACJ;IAEQ,WAAW,GAAA;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa;AAC7C,QAAA,IAAI,CAAC,MAAM;YAAE;QACb,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAE;AACpC,QAAA,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;IAClD;wGApkBW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,w2DCpElC,wgIA0HA,EAAA,MAAA,EAAA,CAAA,qpIAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDrEI,mBAAmB,EAAA,QAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACnB,kBAAkB,0DAClB,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACP,iBAAiB,EAAA,QAAA,EAAA,cAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACjB,sBAAsB,+DACtB,iBAAiB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACjB,gBAAgB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,EAAA,iBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChB,kBAAkB,0DAClB,mBAAmB,EAAA,QAAA,EAAA,gBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;4FAOV,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAlBjC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,kBAAkB,EAAA,OAAA,EACnB;wBACP,mBAAmB;wBACnB,kBAAkB;wBAClB,OAAO;wBACP,iBAAiB;wBACjB,sBAAsB;wBACtB,iBAAiB;wBACjB,gBAAgB;wBAChB,kBAAkB;wBAClB,mBAAmB;AACpB,qBAAA,EAAA,eAAA,EAGgB,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,wgIAAA,EAAA,MAAA,EAAA,CAAA,qpIAAA,CAAA,EAAA;AAGwB,SAAA,CAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CAAA,UAAU,qEACR,aAAa,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,eAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,gBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AE5CxE,MAAO,iBAAkB,SAAQ,iBAAiB,CAAA;AACtD,IAAA,OAAgB,IAAI,GAAG,MAAM;AAC7B,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,MAAM;QACN,QAAQ;QACR,SAAS;QACT,SAAS;QACT,QAAQ;QACR,aAAa;QACb,UAAU;QACV,SAAS;QACT,SAAS;QACT,SAAS;QACT,OAAO;QACP,YAAY;QACZ,OAAO;KACR;wGAjBU,iBAAiB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAnBlB;;;;;;;;;;;;;;;;;AAiBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAtB7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,cAAc;oBACxB,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;AAiBT,EAAA,CAAA;AACF,iBAAA;;;ACTD;;;;AAIG;MAUU,eAAe,CAAA;AACjB,IAAA,GAAG,GAAG,KAAK,CAAqB,SAAS,0EAAC;AAC1C,IAAA,GAAG,GAAG,KAAK,CAAS,EAAE,0EAAC;AACvB,IAAA,QAAQ,GAAG,KAAK,CAAqB,SAAS,+EAAC;AAC/C,IAAA,IAAI,GAAG,KAAK,CAAa,IAAI,2EAAC;AAC9B,IAAA,KAAK,GAAG,KAAK,CAAc,QAAQ,4EAAC;AAEpC,IAAA,WAAW,GAAG,QAAQ,CAAC,OAAO;QACrC,CAAC,CAAA,WAAA,EAAc,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,IAAI;QACnC,CAAC,CAAA,WAAA,EAAc,IAAI,CAAC,KAAK,EAAE,CAAA,CAAE,GAAG,IAAI;AACrC,KAAA,CAAC,kFAAC;AAEM,IAAA,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,gFAAC;AACxC,IAAA,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,mFAAC;AAC/D,IAAA,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,mFAAC;AAEvE,IAAA,gBAAgB,CAAC,KAAY,EAAA;QAC1B,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM;IAC3D;wGAlBW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,GAAA,EAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,UAAA,EAAA,KAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,wCAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC9B5B,oeAmBA,EAAA,MAAA,EAAA,CAAA,g6BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDIY,OAAO,oFAAE,iBAAiB,EAAA,QAAA,EAAA,cAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;4FAOzB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAT3B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,WACZ,CAAC,OAAO,EAAE,iBAAiB,CAAC,mBAGpB,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,IAAA,EAC/B,EAAE,KAAK,EAAE,wCAAwC,EAAE,EAAA,QAAA,EAAA,oeAAA,EAAA,MAAA,EAAA,CAAA,g6BAAA,CAAA,EAAA;;;AEd3D;;;AAGG;MASU,cAAc,CAAA;AAChB,IAAA,OAAO,GAAG,KAAK,CAAe,SAAS,8EAAC;AACxC,IAAA,IAAI,GAAG,KAAK,CAAY,IAAI,2EAAC;AAE7B,IAAA,WAAW,GAAG,QAAQ,CAAC,OAAO;QACrC,CAAC,CAAA,UAAA,EAAa,IAAI,CAAC,OAAO,EAAE,CAAA,CAAE,GAAG,IAAI;QACrC,CAAC,CAAA,UAAA,EAAa,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,IAAI;AACnC,KAAA,CAAC,kFAAC;wGAPQ,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC1B3B,0FAKA,EAAA,MAAA,EAAA,CAAA,66BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDeY,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;4FAMN,cAAc,EAAA,UAAA,EAAA,CAAA;kBAR1B,SAAS;+BACE,UAAU,EAAA,OAAA,EACX,CAAC,OAAO,CAAC,EAAA,eAAA,EAGD,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,0FAAA,EAAA,MAAA,EAAA,CAAA,66BAAA,CAAA,EAAA;;;AEFjC,MAAO,yBAA0B,SAAQ,iBAAiB,CAAA;AAC9D,IAAA,OAAgB,IAAI,GAAG,eAAe;AACtC,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,eAAe;QACf,SAAS;QACT,OAAO;QACP,OAAO;QACP,SAAS;QACT,MAAM;QACN,QAAQ;QACR,SAAS;QACT,OAAO;QACP,OAAO;KACR;wGAdU,yBAAyB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAzB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAf1B;;;;;;;;;;;;;AAaT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAlBrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,uBAAuB;oBACjC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;AAaT,EAAA,CAAA;AACF,iBAAA;;;ACSD;;;;AAIG;MASU,oBAAoB,CAAA;AACd,IAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAExC,IAAA,KAAK,GAAG,KAAK,CAAmB,EAAE,4EAAC;AACnC,IAAA,SAAS,GAAG,KAAK,CAAuB,SAAS,gFAAC;IAClD,SAAS,GAAG,KAAK,CAAqB,SAAS,iFACtD,KAAK,EAAE,YAAY,EAAA,CACnB;;IAGO,OAAO,GAAG,MAAM,EAAwB;;IAGxC,iBAAiB,GAAG,QAAQ,CACnC,MAAM,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,KAAK,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,mBAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CACjE;AAED,IAAA,MAAM,CAAC,KAAa,EAAA;QAClB,OAAO,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,GAAG,CAAC;IAC1C;AAEA,IAAA,WAAW,CAAC,IAAoB,EAAE,KAAa,EAAE,KAAiB,EAAA;QAChE,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;YACvC,KAAK,CAAC,cAAc,EAAE;YACtB;QACF;AACA,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC3C;wGA3BW,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3CjC,g/CAiDA,EAAA,MAAA,EAAA,CAAA,g1CAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDZY,yBAAyB,EAAA,QAAA,EAAA,uBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;4FAMxB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBARhC,SAAS;+BACE,gBAAgB,EAAA,OAAA,EACjB,CAAC,yBAAyB,CAAC,EAAA,eAAA,EAGnB,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,g/CAAA,EAAA,MAAA,EAAA,CAAA,g1CAAA,CAAA,EAAA;;;AEzBvC;;;;AAIG;MAWU,eAAe,CAAA;;AAEjB,IAAA,OAAO,GAAG,KAAK,CAAgB,SAAS,8EAAC;AACzC,IAAA,IAAI,GAAG,KAAK,CAAa,IAAI,2EAAC;AAC9B,IAAA,IAAI,GAAG,KAAK,CAAa,QAAQ,2EAAC;AAClC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,OAAO,GAAG,KAAK,CAAU,KAAK,8EAAC;AAC/B,IAAA,SAAS,GAAG,KAAK,CAAU,KAAK,gFAAC;IACjC,SAAS,GAAG,KAAK,CAAqB,SAAS,iFAAI,KAAK,EAAE,YAAY,EAAA,CAAG;IACzE,WAAW,GAAG,KAAK,CAAqB,SAAS,mFAAI,KAAK,EAAE,cAAc,EAAA,CAAG;;;IAI7E,OAAO,GAAG,MAAM,EAAc;;AAG9B,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,iFAAC;AAE9D,IAAA,WAAW,GAAG,QAAQ,CAAC,OAAO;QACrC,CAAC,CAAA,WAAA,EAAc,IAAI,CAAC,OAAO,EAAE,CAAA,CAAE,GAAG,IAAI;QACtC,CAAC,CAAA,WAAA,EAAc,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,IAAI;AACnC,QAAA,uBAAuB,EAAE,IAAI,CAAC,SAAS,EAAE;AACzC,QAAA,oBAAoB,EAAE,IAAI,CAAC,OAAO,EAAE;AACpC,QAAA,qBAAqB,EAAE,IAAI,CAAC,UAAU,EAAE;AACzC,KAAA,CAAC,kFAAC;AAEH,IAAA,WAAW,CAAC,KAAiB,EAAA;AAC3B,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACrB,KAAK,CAAC,cAAc,EAAE;YACtB;QACF;AACA,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;IAC1B;wGAhCW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,6BAAA,EAAA,aAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC/B5B,yiCAwCA,EAAA,MAAA,EAAA,CAAA,6jGAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDfY,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAMN,eAAe,EAAA,UAAA,EAAA,CAAA;kBAV3B,SAAS;+BACE,WAAW,EAAA,OAAA,EAGZ,CAAC,OAAO,CAAC,mBACD,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACJ,wBAAA,+BAA+B,EAAE,aAAa;AAC/C,qBAAA,EAAA,QAAA,EAAA,yiCAAA,EAAA,MAAA,EAAA,CAAA,6jGAAA,CAAA,EAAA;;;AEjBH;;;AAGG;MASU,gBAAgB,CAAA;AAClB,IAAA,WAAW,GAAG,KAAK,CAAqB,YAAY,kFAAC;AACrD,IAAA,KAAK,GAAG,KAAK,CAAqB,SAAS,4EAAC;AAE5C,IAAA,WAAW,GAAG,QAAQ,CAAC,OAAO;QACrC,CAAC,CAAA,YAAA,EAAe,IAAI,CAAC,WAAW,EAAE,CAAA,CAAE,GAAG,IAAI;AAC3C,QAAA,wBAAwB,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;AACzC,KAAA,CAAC,kFAAC;wGAPQ,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECxB7B,wOASA,EAAA,MAAA,EAAA,CAAA,2rBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDSY,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;4FAMN,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAR5B,SAAS;+BACE,YAAY,EAAA,OAAA,EACb,CAAC,OAAO,CAAC,EAAA,eAAA,EAGD,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,wOAAA,EAAA,MAAA,EAAA,CAAA,2rBAAA,CAAA,EAAA;;;AEJvC;;;;;AAKG;MASU,aAAa,CAAA;;AAEf,IAAA,OAAO,GAAG,KAAK,CAAc,UAAU,8EAAC;AACxC,IAAA,OAAO,GAAG,KAAK,CAAc,IAAI,8EAAC;AAClC,IAAA,SAAS,GAAG,KAAK,CAAU,KAAK,gFAAC;AACjC,IAAA,WAAW,GAAG,KAAK,CAAkB,QAAQ,kFAAC;AAC9C,IAAA,aAAa,GAAG,KAAK,CAAU,KAAK,oFAAC;;AAGrC,IAAA,WAAW,GAAG,QAAQ,CAAC,OAAO;QACrC,CAAC,CAAA,SAAA,EAAY,IAAI,CAAC,OAAO,EAAE,CAAA,CAAE,GAAG,IAAI;QACpC,CAAC,CAAA,iBAAA,EAAoB,IAAI,CAAC,OAAO,EAAE,CAAA,CAAE,GAAG,IAAI;AAC5C,QAAA,qBAAqB,EAAE,IAAI,CAAC,SAAS,EAAE;AACxC,KAAA,CAAC,kFAAC;wGAbQ,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAb,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EChC1B,4bAqBA,EAAA,MAAA,EAAA,CAAA,yjFAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDKY,gBAAgB,yFAAE,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;4FAMxB,aAAa,EAAA,UAAA,EAAA,CAAA;kBARzB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAS,EAAA,OAAA,EACV,CAAC,gBAAgB,EAAE,OAAO,CAAC,EAAA,eAAA,EAGnB,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,4bAAA,EAAA,MAAA,EAAA,CAAA,yjFAAA,CAAA,EAAA;;;AEdvC;;;;AAIG;MAeU,iBAAiB,CAAA;;AAEnB,IAAA,KAAK,GAAG,KAAK,CAAqB,SAAS,4EAAC;AACrD;;;;;;AAMG;AACM,IAAA,KAAK,GAAG,KAAK,CAA8B,SAAS,4EAAC;AACrD,IAAA,IAAI,GAAG,KAAK,CAAqB,SAAS,2EAAC;AAC3C,IAAA,QAAQ,GAAG,KAAK,CAAqB,SAAS,+EAAC;AAC/C,IAAA,IAAI,GAAG,KAAK,CAAe,IAAI,2EAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,aAAa,GAAG,KAAK,CAAU,KAAK,oFAAC;IACrC,SAAS,GAAG,KAAK,CAAqB,SAAS,iFAAI,KAAK,EAAE,YAAY,EAAA,CAAG;IACzE,EAAE,GAAG,KAAK,CAAS,CAAA,YAAA,EAAe,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;AAG3E,IAAA,OAAO,GAAG,KAAK,CAAU,KAAK,8EAAC;;;IAI/B,OAAO,GAAG,MAAM,EAAW;;AAGnB,IAAA,aAAa,GAAG,MAAM,CAAC,KAAK,oFAAC;;AAGrC,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,iFAAC;AACpE,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,+EAAC;AAC5C,IAAA,SAAS,GAAG,IAAI,CAAC,QAAQ;AACzB,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,+EAAC;AAE5D,IAAA,WAAW,GAAG,QAAQ,CAAC,OAAO;QACrC,CAAC,CAAA,aAAA,EAAgB,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,IAAI;AACrC,QAAA,uBAAuB,EAAE,IAAI,CAAC,UAAU,EAAE;AAC1C,QAAA,sBAAsB,EAAE,IAAI,CAAC,OAAO,EAAE;AACtC,QAAA,4BAA4B,EAAE,IAAI,CAAC,aAAa,EAAE;AAClD,QAAA,oBAAoB,EAAE,IAAI,CAAC,QAAQ,EAAE;AACtC,KAAA,CAAC,kFAAC;;AAGK,IAAA,QAAQ,GAA6B,MAAK,EAAE,CAAC;AAC7C,IAAA,SAAS,GAAe,MAAK,EAAE,CAAC;;AAGxC,IAAA,UAAU,CAAC,GAAY,EAAA;QACrB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACzB;AAEA,IAAA,gBAAgB,CAAC,EAA4B,EAAA;AAC3C,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;IACpB;AAEA,IAAA,iBAAiB,CAAC,EAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACrB;AAEA,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAClC,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC;IACpC;;IAGA,YAAY,GAAA;QACV,IAAI,IAAI,CAAC,UAAU,EAAE;YAAE;AACvB,QAAA,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE;AAChC,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC1B,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACvB,IAAI,CAAC,SAAS,EAAE;AAChB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC7B;wGAzEW,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,eAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,SAAA,EARjB;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,iBAAiB,CAAC;AAChD,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;SACF,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECjCH,wvEAiFA,20ED1DY,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAYN,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAd7B,SAAS;+BACE,aAAa,EAAA,OAAA,EACd,CAAC,OAAO,CAAC,mBAGD,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,uBAAuB,CAAC;AAChD,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,wvEAAA,EAAA,MAAA,EAAA,CAAA,mxEAAA,CAAA,EAAA;;;AENG,MAAO,sBAAuB,SAAQ,iBAAiB,CAAA;AAC3D,IAAA,OAAgB,IAAI,GAAG,YAAY;AACnC,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,YAAY;QACZ,OAAO;QACP,MAAM;QACN,OAAO;QACP,SAAS;QACT,QAAQ;QACR,KAAK;QACL,QAAQ;QACR,OAAO;QACP,OAAO;QACP,MAAM;QACN,UAAU;QACV,KAAK;KACN;wGAjBU,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAtB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EApBvB;;;;;;;;;;;;;;;;;;AAkBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAvBlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;oBAC9B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;AAkBT,EAAA,CAAA;AACF,iBAAA;;;ACCK,MAAO,oBAAqB,SAAQ,iBAAiB,CAAA;AACzD,IAAA,OAAgB,IAAI,GAAG,UAAU;AACjC,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,UAAU;QACV,OAAO;QACP,IAAI;QACJ,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,MAAM;QACN,QAAQ;QACR,QAAQ;QACR,OAAO;QACP,MAAM;QACN,UAAU;QACV,MAAM;KACP;wGAjBU,oBAAoB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAApB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EApBrB;;;;;;;;;;;;;;;;;;AAkBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAvBhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;oBAC5B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;AAkBT,EAAA,CAAA;AACF,iBAAA;;;ACHK,MAAO,2BAA4B,SAAQ,iBAAiB,CAAA;AAChE,IAAA,OAAgB,IAAI,GAAG,kBAAkB;AACzC,IAAA,OAAgB,QAAQ,GAAiB,QAAQ;IACjD,OAAgB,IAAI,GAA0B;QAC5C,kBAAkB;QAClB,UAAU;QACV,IAAI;QACJ,MAAM;QACN,MAAM;QACN,QAAQ;QACR,MAAM;QACN,KAAK;QACL,QAAQ;QACR,OAAO;QACP,MAAM;QACN,MAAM;QACN,MAAM;QACN,KAAK;KACN;wGAlBU,2BAA2B,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA3B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAhB5B;;;;;;;;;;;;;;AAcT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAnBvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0BAA0B;oBACpC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;AAcT,EAAA,CAAA;AACF,iBAAA;;;ACqBD;;;;;AAKG;MAeU,kBAAkB,CAAA;AACZ,IAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAExC,IAAA,OAAO,GAAG,KAAK,CAAC,QAAQ,6EAAwB;AAChD,IAAA,IAAI,GAAG,KAAK,CAAC,QAAQ,0EAAO;AAC5B,IAAA,OAAO,GAAG,KAAK,CAAsB,SAAS,8EAAC;AAC/C,IAAA,OAAO,GAAG,KAAK,CAAmB,aAAa,8EAAC;AAChD,IAAA,YAAY,GAAG,KAAK,CAAU,KAAK,mFAAC;AACpC,IAAA,OAAO,GAAG,KAAK,CAAU,KAAK,8EAAC;AAC/B,IAAA,SAAS,GAAG,KAAK,CAAU,IAAI,gFAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,UAAU,GAAG,KAAK,CAAqB,SAAS,iFAAC;AAEjD,IAAA,IAAI,GAAG,KAAK,CAAqB,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,2EAAC;;IAGjE,MAAM,GAAG,MAAM,EAAsB;AAErC,IAAA,cAAc,GAAG,YAAY,CAAuB,QAAQ,qFAAC;;IAG7D,kBAAkB,GAAG,QAAQ,CACpC,MAAM,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,MAAM,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,oBAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CACjE;AAEQ,IAAA,WAAW,GAAG,QAAQ,CAAC,OAAO;QACrC,CAAC,CAAA,eAAA,EAAkB,IAAI,CAAC,OAAO,EAAE,CAAA,CAAE,GAAG,IAAI;AAC1C,QAAA,uBAAuB,EAAE,IAAI,CAAC,YAAY,EAAE;AAC5C,QAAA,wBAAwB,EAAE,IAAI,CAAC,OAAO,EAAE;AACxC,QAAA,0BAA0B,EAAE,IAAI,CAAC,SAAS,EAAE;AAC5C,QAAA,yBAAyB,EAAE,IAAI,CAAC,QAAQ,EAAE;AAC3C,KAAA,CAAC,kFAAC;AAEM,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAK;AAClC,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE;QACzB,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE;AACzC,QAAA,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS;AAAE,YAAA,OAAO,KAAK;AAEvC,QAAA,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;AAC9B,YAAA,MAAM,IAAI,GAAI,CAA6B,CAAC,MAAM,CAAC;AACnD,YAAA,MAAM,IAAI,GAAI,CAA6B,CAAC,MAAM,CAAC;AAEnD,YAAA,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI;AAAE,gBAAA,OAAO,CAAC;YAC1C,IAAI,IAAI,IAAI,IAAI;AAAE,gBAAA,OAAO,SAAS,KAAK,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC;YACrD,IAAI,IAAI,IAAI,IAAI;AAAE,gBAAA,OAAO,SAAS,KAAK,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;AAErD,YAAA,IAAI,UAAkB;YACtB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;AACxD,gBAAA,UAAU,GAAG,IAAI,GAAG,IAAI;YAC1B;iBAAO,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;AAC/D,gBAAA,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YACvC;iBAAO;AACL,gBAAA,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACvD;AAEA,YAAA,OAAO,SAAS,KAAK,KAAK,GAAG,UAAU,GAAG,CAAC,UAAU;AACvD,QAAA,CAAC,CAAC;AACJ,IAAA,CAAC,iFAAC;IAEF,YAAY,CAAC,GAAM,EAAE,GAAW,EAAA;AAC9B,QAAA,OAAQ,GAA+B,CAAC,GAAG,CAAC;IAC9C;AAEA,IAAA,aAAa,CAAC,GAAuB,EAAA;QACnC,IAAI,CAAC,GAAG,CAAC,QAAQ;YAAE;AAEnB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE;AAC3B,QAAA,IAAI,SAAiC;QAErC,IAAI,OAAO,CAAC,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE;YAC9B,SAAS;gBACP,OAAO,CAAC,SAAS,KAAK;AACpB,sBAAE;AACF,sBAAE,OAAO,CAAC,SAAS,KAAK;AACtB,0BAAE;0BACA,KAAK;QACf;aAAO;YACL,SAAS,GAAG,KAAK;QACnB;AAEA,QAAA,MAAM,IAAI,GAAuB,EAAE,MAAM,EAAE,SAAS,GAAG,GAAG,CAAC,GAAG,GAAG,EAAE,EAAE,SAAS,EAAE;AAChF,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;IACxB;IAEA,SAAS,CAAC,MAAc,EAAE,IAAO,EAAA;AAC/B,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE;AAC1B,QAAA,OAAO,GAAG,GAAI,IAAgC,CAAC,GAAa,CAAC,GAAG,MAAM;IACxE;wGAxFW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;4FAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,YAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,QAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC/D/B,g9HAgGA,EAAA,MAAA,EAAA,CAAA,syGAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,ED5CI,sBAAsB,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACtB,oBAAoB,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACpB,2BAA2B,EAAA,QAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAC3B,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACP,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;4FAOP,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAd9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,EAAA,OAAA,EAChB;wBACP,sBAAsB;wBACtB,oBAAoB;wBACpB,2BAA2B;wBAC3B,OAAO;wBACP,gBAAgB;AACjB,qBAAA,EAAA,eAAA,EAGgB,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,g9HAAA,EAAA,MAAA,EAAA,CAAA,syGAAA,CAAA,EAAA;+lCAoBwB,QAAQ,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AE7DvE;;;;AAIG;MAcU,kBAAkB,CAAA;AACpB,IAAA,QAAQ,GAAG,YAAY,CAA+B,SAAS,+EAAC;AACtD,IAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC;;AAG1C,IAAA,KAAK,GAAG,KAAK,CAAqB,SAAS,4EAAC;AAC5C,IAAA,WAAW,GAAG,KAAK,CAAS,EAAE,kFAAC;AAC/B,IAAA,MAAM,GAAG,KAAK,CAAS,CAAC,6EAAC;AACzB,IAAA,IAAI,GAAG,KAAK,CAAgB,IAAI,2EAAC;AACjC,IAAA,IAAI,GAAG,KAAK,CAAqB,SAAS,2EAAC;AAC3C,IAAA,QAAQ,GAAG,KAAK,CAAqB,SAAS,+EAAC;AAC/C,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;IAChC,EAAE,GAAG,KAAK,CAAS,CAAA,cAAA,EAAiB,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;AAG7E,IAAA,KAAK,GAAG,KAAK,CAAS,EAAE,4EAAC;;AAGzB,IAAA,YAAY,GAAG,MAAM,CAAS,CAAC,CAAC,mFAAC;AACzB,IAAA,aAAa,GAAG,MAAM,CAAC,KAAK,oFAAC;;;IAIrC,SAAS,GAAG,MAAM,EAAU;;AAG7B,IAAA,QAAQ,GAA4B,MAAK,EAAE,CAAC;AAC5C,IAAA,SAAS,GAAe,MAAK,EAAE,CAAC;;AAG/B,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,iFAAC;AAEpE,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,+EAAC;AAC5C,IAAA,SAAS,GAAG,IAAI,CAAC,QAAQ;AACzB,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,+EAAC;AAE5D,IAAA,MAAM,GAAG,QAAQ,CAAC,MAAK;AAC9B,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE;AACxB,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE;QACzB,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC5D,IAAA,CAAC,6EAAC;AAEO,IAAA,OAAO,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,8EAAC;AAErF,IAAA,UAAU,CAAC,GAAW,EAAA;QACpB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;IAC3B;AAEA,IAAA,gBAAgB,CAAC,EAA2B,EAAA;AAC1C,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;IACpB;AAEA,IAAA,iBAAiB,CAAC,EAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACrB;AAEA,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAClC,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC;IACpC;IAEA,WAAW,CAAC,KAAY,EAAE,KAAa,EAAA;QACrC,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE;AACrB,QAAA,MAAM,KAAK,GAAG,KAAK,CAAC,MAA0B;AAC9C,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACzD,QAAA,KAAK,CAAC,KAAK,GAAG,IAAI;AAElB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE;AAC5B,QAAA,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AAC1D,QAAA,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI;AACnB,QAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;AAElD,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;AACxB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAEvB,IAAI,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE;AACrC,YAAA,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC;QAC5B;QAEA,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,EAAE;AACrC,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC/B;IACF;IAEA,aAAa,CAAC,KAAoB,EAAE,KAAa,EAAA;AAC/C,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE;AAE9B,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,WAAW,EAAE;YAC7B,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAAE;YACrB,KAAK,CAAC,cAAc,EAAE;AACtB,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE;AAC5B,YAAA,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AAE1D,YAAA,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE;AACxC,gBAAA,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG;YACpB;AAAO,iBAAA,IAAI,KAAK,GAAG,CAAC,EAAE;AACpB,gBAAA,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,GAAG;AACtB,gBAAA,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC;YAC5B;AAEA,YAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;AAClD,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;AACxB,YAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACzB;aAAO,IAAI,KAAK,CAAC,GAAG,KAAK,WAAW,IAAI,KAAK,GAAG,CAAC,EAAE;YACjD,KAAK,CAAC,cAAc,EAAE;AACtB,YAAA,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC;QAC5B;AAAO,aAAA,IAAI,KAAK,CAAC,GAAG,KAAK,YAAY,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YAClE,KAAK,CAAC,cAAc,EAAE;AACtB,YAAA,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC;QAC5B;IACF;AAEA,IAAA,WAAW,CAAC,KAAqB,EAAA;QAC/B,KAAK,CAAC,cAAc,EAAE;QACtB,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE;QACrB,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;AAClF,QAAA,IAAI,CAAC,MAAM;YAAE;AAEb,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;AAC9C,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;AACvB,QAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;AAEtB,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC7D,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAE1B,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,EAAE;AACpC,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC;QAC9B;IACF;AAEA,IAAA,WAAW,CAAC,KAAa,EAAA;AACvB,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,aAAa;QACnD,KAAK,EAAE,MAAM,EAAE;IACjB;IAEA,UAAU,GAAA;QACR,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,SAAS,EAAE;IAClB;;IAGA,KAAK,GAAA;AACH,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE;AACxB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AACrD,QAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;IACxB;AAEQ,IAAA,UAAU,CAAC,KAAa,EAAA;QAC9B,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,KAAK,EAAE;IAC/C;wGAvJW,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,SAAA,EARlB;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,kBAAkB,CAAC;AACjD,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;AACF,SAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,SAAA,EAAA,CAAA,SAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECpCH,mnEAiEA,EAAA,MAAA,EAAA,CAAA,gsEAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FD3Ba,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAb9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,EAAA,eAAA,EAGR,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,wBAAwB,CAAC;AACjD,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,mnEAAA,EAAA,MAAA,EAAA,CAAA,gsEAAA,CAAA,EAAA;yEAG8D,SAAS,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,IAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,WAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AEIpE,MAAO,qBAAsB,SAAQ,iBAAiB,CAAA;AAC1D,IAAA,OAAgB,IAAI,GAAG,UAAU;AACjC,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,UAAU;QACV,MAAM;QACN,UAAU;QACV,OAAO;QACP,KAAK;QACL,OAAO;QACP,YAAY;QACZ,MAAM;QACN,YAAY;QACZ,OAAO;QACP,YAAY;QACZ,YAAY;QACZ,WAAW;QACX,MAAM;KACP;wGAlBU,qBAAqB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EApCtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAvCjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,kBAAkB;oBAC5B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCT,EAAA,CAAA;AACF,iBAAA;;;ACpBK,MAAO,wBAAyB,SAAQ,iBAAiB,CAAA;AAC7D,IAAA,OAAgB,IAAI,GAAG,cAAc;AACrC,IAAA,OAAgB,QAAQ,GAAiB,SAAS;IAClD,OAAgB,IAAI,GAA0B;QAC5C,cAAc;QACd,SAAS;QACT,MAAM;QACN,OAAO;QACP,MAAM;QACN,UAAU;QACV,QAAQ;QACR,WAAW;QACX,UAAU;QACV,MAAM;KACP;wGAdU,wBAAwB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAxB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAfzB;;;;;;;;;;;;;AAaT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAEU,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAlBpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,sBAAsB;oBAChC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;;;;;;;;;;;;AAaT,EAAA,CAAA;AACF,iBAAA;;;ACuBD;;;;;AAKG;MAqBU,mBAAmB,CAAA;AACb,IAAA,MAAM,GAAG,SAAS,CAA0B,QAAQ,6EAAC;AACrD,IAAA,SAAS,GAAG,SAAS,CAAgC,WAAW,gFAAC;AACjE,IAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AACzB,IAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC;;AAG1C,IAAA,KAAK,GAAG,KAAK,CAAqB,SAAS,4EAAC;;AAE5C,IAAA,WAAW,GAAG,KAAK,CAAqB,SAAS,kFAAC;AAClD,IAAA,IAAI,GAAG,KAAK,CAAiB,IAAI,2EAAC;AAClC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,IAAI,GAAG,KAAK,CAAqB,SAAS,2EAAC;AAC3C,IAAA,QAAQ,GAAG,KAAK,CAAqB,SAAS,+EAAC;AAC/C,IAAA,OAAO,GAAG,KAAK,CAAc,IAAI,8EAAC;AAClC,IAAA,OAAO,GAAG,KAAK,CAAc,IAAI,8EAAC;AAClC,IAAA,MAAM,GAAG,KAAK,CAAmB,QAAQ,6EAAC;AAC1C,IAAA,YAAY,GAAG,KAAK,CAAsB,CAAC,mFAAC;AAC5C,IAAA,MAAM,GAAG,KAAK,CAAqB,SAAS,6EAAC;IAC7C,EAAE,GAAG,KAAK,CAAS,CAAA,eAAA,EAAkB,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;AAG9E,IAAA,KAAK,GAAG,KAAK,CAAc,IAAI,4EAAC;;;IAIhC,OAAO,GAAG,MAAM,EAAe;;AAG/B,IAAA,MAAM,GAAG,MAAM,CAAC,KAAK,6EAAC;IACtB,QAAQ,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,UAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;IAC3C,SAAS,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,QAAQ,EAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,WAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;AACzC,IAAA,WAAW,GAAG,MAAM,CAAc,IAAI,kFAAC;AAC/B,IAAA,aAAa,GAAG,MAAM,CAAC,KAAK,oFAAC;;AAGtC,IAAA,QAAQ,GAAiC,MAAK,EAAE,CAAC;AACjD,IAAA,SAAS,GAAe,MAAK,EAAE,CAAC;;AAG/B,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,iFAAC;AAEpE,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,+EAAC;AAC5C,IAAA,SAAS,GAAG,IAAI,CAAC,QAAQ;AACzB,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,+EAAC;;AAG5D,IAAA,eAAe,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,sFAAC;;IAGrE,mBAAmB,GAAG,QAAQ,CACrC,MAAM,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,WAAW,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,qBAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CACxE;AAEQ,IAAA,cAAc,GAAG,QAAQ,CAAC,OAAO;QACxC,CAAC,CAAA,yBAAA,EAA4B,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,IAAI;AACjD,QAAA,gCAAgC,EAAE,IAAI,CAAC,QAAQ,EAAE;AACjD,QAAA,+BAA+B,EAAE,IAAI,CAAC,MAAM,EAAE;AAC9C,QAAA,mCAAmC,EAAE,IAAI,CAAC,UAAU,EAAE;AACvD,KAAA,CAAC,qFAAC;AAEM,IAAA,YAAY,GAAG,QAAQ,CAAC,MAAK;AACpC,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE;AACxB,QAAA,IAAI,CAAC,GAAG;AAAE,YAAA,OAAO,EAAE;QACnB,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,MAAM,CACjF,GAAG,CACJ;AACH,IAAA,CAAC,mFAAC;AAEO,IAAA,cAAc,GAAG,QAAQ,CAAC,MAAK;AACtC,QAAA,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC3D,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE;AACrD,YAAA,KAAK,EAAE,MAAM;AACb,YAAA,IAAI,EAAE,SAAS;AAChB,SAAA,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;AACjB,IAAA,CAAC,qFAAC;AAEO,IAAA,aAAa,GAAG,QAAQ,CAAC,MAAK;AACrC,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE;QACjC,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE;AAChE,YAAA,OAAO,EAAE,OAAO;AACjB,SAAA,CAAC;QACF,MAAM,MAAM,GAAa,EAAE;;QAE3B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;AACjC,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;AAC1B,YAAA,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;AACxB,YAAA,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAClC;AACA,QAAA,OAAO,MAAM;AACf,IAAA,CAAC,oFAAC;AAEO,IAAA,KAAK,GAAG,QAAQ,CAAkB,MAAK;AAC9C,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE;AAC5B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE;AAC9B,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE;QAEjC,MAAM,YAAY,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7C,QAAA,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,EAAE;;QAEvC,MAAM,OAAO,GAAG,CAAC,SAAS,GAAG,KAAK,GAAG,CAAC,IAAI,CAAC;AAE3C,QAAA,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC;QACpD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;AACzC,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE;AAC7B,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAG,CAAC,GAAG,IAAI;QACpE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAG,CAAC,GAAG,IAAI;QAEpE,MAAM,IAAI,GAAoB,EAAE;AAChC,QAAA,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE;YAChC,MAAM,KAAK,GAAkB,EAAE;AAC/B,YAAA,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE;AAChC,gBAAA,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC;AACpC,gBAAA,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;gBACrD,KAAK,CAAC,IAAI,CAAC;AACT,oBAAA,IAAI,EAAE,QAAQ;AACd,oBAAA,GAAG,EAAE,QAAQ,CAAC,OAAO,EAAE;AACvB,oBAAA,cAAc,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,KAAK;oBAC7C,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC;AACxC,oBAAA,UAAU,EAAE,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,KAAK;oBACjE,UAAU,EAAE,CAAC,GAAG,GAAG,QAAQ,GAAG,GAAG,GAAG,KAAK,MAAM,GAAG,GAAG,QAAQ,GAAG,GAAG,GAAG,KAAK,CAAC;AAC5E,oBAAA,SAAS,EAAE,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,KAAK;AAC/D,iBAAA,CAAC;YACJ;AACA,YAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAClB;AACA,QAAA,OAAO,IAAI;AACb,IAAA,CAAC,4EAAC;;AAGF,IAAA,UAAU,CAAC,GAAoB,EAAA;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;AAC7B,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;QACpB,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACrC;IACF;AAEA,IAAA,gBAAgB,CAAC,EAAgC,EAAA;AAC/C,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;IACpB;AAEA,IAAA,iBAAiB,CAAC,EAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACrB;AAEA,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAClC,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC;IACpC;;;IAIA,MAAM,GAAA;QACJ,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE;AAC1C,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;YACjB,IAAI,CAAC,KAAK,EAAE;QACd;aAAO;YACL,IAAI,CAAC,IAAI,EAAE;QACb;IACF;;IAGA,IAAI,GAAA;QACF,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,EAAE;QAC1C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;AACtC,QAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC9C,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;AACrB,QAAA,eAAe,CAAC,MAAM,IAAI,CAAC,mBAAmB,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;IAChF;;IAGA,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;AACtB,QAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;IAC5B;IAEQ,mBAAmB,GAAA;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,aAAa;QACzC,MAAM,WAAW,GAAG,IAAI,EAAE,aAAa,CACrC,+BAA+B,CAChC;QACD,WAAW,EAAE,KAAK,EAAE;IACtB;;IAGA,KAAK,GAAA;QACH,IAAI,CAAC,SAAS,EAAE,EAAE,aAAa,CAAC,KAAK,EAAE;IACzC;AAEA,IAAA,SAAS,CAAC,GAAgB,EAAA;QACxB,IAAI,GAAG,CAAC,UAAU;YAAE;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC;AACtC,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACnB,IAAI,CAAC,SAAS,EAAE;AAChB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,EAAE;QACZ,IAAI,CAAC,SAAS,EAAE,EAAE,aAAa,CAAC,KAAK,EAAE;IACzC;;AAGA,IAAA,KAAK,CAAC,KAAY,EAAA;QAChB,KAAK,CAAC,eAAe,EAAE;QACvB,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE;AAC1C,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;AACpB,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QACnB,IAAI,CAAC,SAAS,EAAE;AAChB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;IACzB;IAEA,aAAa,GAAA;AACX,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE;AAC9B,QAAA,IAAI,KAAK,KAAK,CAAC,EAAE;AACf,YAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;AACtB,YAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClC;aAAO;YACL,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;QAC/B;IACF;IAEA,aAAa,GAAA;AACX,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE;AAC9B,QAAA,IAAI,KAAK,KAAK,EAAE,EAAE;AAChB,YAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;AACrB,YAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClC;aAAO;YACL,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;QAC/B;IACF;IAEA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClC;IAEA,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClC;IAEA,SAAS,GAAA;QACP,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;QACzC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACtC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;AACpC,QAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC;IAC7B;AAEA,IAAA,oBAAoB,CAAC,KAAoB,EAAA;QACvC,IAAI,IAAI,CAAC,UAAU,EAAE;YAAE;AACvB,QAAA,QAAQ,KAAK,CAAC,GAAG;AACf,YAAA,KAAK,OAAO;AACZ,YAAA,KAAK,GAAG;AACR,YAAA,KAAK,WAAW;gBACd,KAAK,CAAC,cAAc,EAAE;gBACtB,IAAI,CAAC,IAAI,EAAE;gBACX;;IAEN;AAEA,IAAA,iBAAiB,CAAC,KAAoB,EAAA;AACpC,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAAE;AACpB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;AACjE,QAAA,IAAI,IAAiB;AAErB,QAAA,QAAQ,KAAK,CAAC,GAAG;AACf,YAAA,KAAK,WAAW;gBACd,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBAChC;AACF,YAAA,KAAK,YAAY;gBACf,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC/B;AACF,YAAA,KAAK,SAAS;gBACZ,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBAChC;AACF,YAAA,KAAK,WAAW;gBACd,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC/B;AACF,YAAA,KAAK,QAAQ;gBACX,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBACzD;AACF,YAAA,KAAK,UAAU;AACb,gBAAA,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvD;AACF,YAAA,KAAK,MAAM;AACT,gBAAA,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBACrE,IAAI,IAAI,GAAG,OAAO;oBAAE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBACjD;YACF,KAAK,KAAK,EAAE;AACV,gBAAA,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE;AACrC,gBAAA,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,GAAG,CAAC,IAAI,CAAC;gBACrD,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC;gBACxC;YACF;AACA,YAAA,KAAK,OAAO;YACZ,KAAK,GAAG,EAAE;gBACR,KAAK,CAAC,cAAc,EAAE;AACtB,gBAAA,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE;AAClC,gBAAA,IAAI,CAAC,OAAO;oBAAE;AACd,gBAAA,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE;AAC1B,gBAAA,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE;gBAC1B,IAAI,GAAG,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE;gBAC3C,IAAI,GAAG,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE;gBAC3C,IAAI,CAAC,SAAS,CAAC;AACb,oBAAA,IAAI,EAAE,OAAO;AACb,oBAAA,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE;oBACtB,cAAc,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,SAAS,EAAE;AACvD,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,UAAU,EAAE,KAAK;AACjB,oBAAA,UAAU,EAAE,KAAK;AACjB,oBAAA,SAAS,EAAE,KAAK;AACjB,iBAAA,CAAC;gBACF;YACF;AACA,YAAA,KAAK,QAAQ;gBACX,KAAK,CAAC,cAAc,EAAE;gBACtB,IAAI,CAAC,KAAK,EAAE;gBACZ,IAAI,CAAC,SAAS,EAAE,EAAE,aAAa,CAAC,KAAK,EAAE;gBACvC;AACF,YAAA;gBACE;;QAGJ,IAAI,IAAI,EAAE;YACR,KAAK,CAAC,cAAc,EAAE;AACtB,YAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;YAC1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACrC;IACF;AAGA,IAAA,eAAe,CAAC,KAAY,EAAA;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAAE;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,aAAa;AACzC,QAAA,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAc,CAAC,EAAE;YAChD,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,SAAS,EAAE;QAClB;IACF;;IAGQ,aAAa,GAAA;AACnB,QAAA,QAAQ,IAAI,CAAC,MAAM,EAAE;AACnB,YAAA,KAAK,OAAO;AACV,gBAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE;AAC/B,YAAA,KAAK,MAAM;AACT,gBAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE;AAC9B,YAAA,KAAK,QAAQ;AACb,YAAA;AACE,gBAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE;;IAEpC;AAEQ,IAAA,MAAM,CAAC,GAAoB,EAAA;AACjC,QAAA,IAAI,CAAC,GAAG;AAAE,YAAA,OAAO,IAAI;QACrB,IAAI,GAAG,YAAY,IAAI;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;AAClF,QAAA,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;QAC5B,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IACjE;AAEQ,IAAA,UAAU,CAAC,IAAU,EAAA;AAC3B,QAAA,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;IACtE;IAEQ,SAAS,CAAC,CAAO,EAAE,CAAO,EAAA;QAChC,QACE,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE;AACnC,YAAA,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,QAAQ,EAAE;YAC7B,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,OAAO,EAAE;IAE/B;IAEQ,OAAO,CAAC,IAAU,EAAE,IAAY,EAAA;AACtC,QAAA,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;QAC7B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;AACrC,QAAA,OAAO,MAAM;IACf;IAEQ,SAAS,CAAC,IAAU,EAAE,MAAc,EAAA;AAC1C,QAAA,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;QAC7B,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC;AACzC,QAAA,OAAO,MAAM;IACf;wGAnYW,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAnB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,gBAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,SAAA,EARnB;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,mBAAmB,CAAC;AAClD,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;SACF,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,QAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,WAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECpEH,mnLAqKA,EAAA,MAAA,EAAA,CAAA,wwMAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDhHI,wBAAwB,EAAA,QAAA,EAAA,sBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACxB,qBAAqB,6DACrB,wBAAwB,EAAA,QAAA,EAAA,sBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACxB,yBAAyB,EAAA,QAAA,EAAA,uBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACzB,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAaE,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBApB/B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gBAAgB,EAAA,OAAA,EACjB;wBACP,wBAAwB;wBACxB,qBAAqB;wBACrB,wBAAwB;wBACxB,yBAAyB;wBACzB,OAAO;qBACR,EAAA,eAAA,EAGgB,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,yBAAyB,CAAC;AAClD,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,mnLAAA,EAAA,MAAA,EAAA,CAAA,wwMAAA,CAAA,EAAA;AAG4D,SAAA,CAAA,EAAA,cAAA,EAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CAAA,QAAQ,mEACC,WAAW,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,IAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,CAAA;sBA6UhF,YAAY;uBAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC;;;AEhY5C;;;;;AAKG;MASU,eAAe,CAAA;AACT,IAAA,QAAQ,GAAG,SAAS,CAAgC,UAAU,+EAAC;IACxE,iBAAiB,GAAuB,IAAI;AACjC,IAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC;;AAG1C,IAAA,IAAI,GAAG,KAAK,CAAa,IAAI,2EAAC;AAC9B,IAAA,eAAe,GAAG,KAAK,CAAU,IAAI,sFAAC;AACtC,IAAA,aAAa,GAAG,KAAK,CAAU,IAAI,oFAAC;AACpC,IAAA,SAAS,GAAG,KAAK,CAAU,IAAI,gFAAC;IAChC,SAAS,GAAG,KAAK,CAAqB,SAAS,iFAAI,KAAK,EAAE,YAAY,EAAA,CAAG;IACzE,EAAE,GAAG,KAAK,CAAS,CAAA,UAAA,EAAa,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;AAGzE,IAAA,IAAI,GAAG,KAAK,CAAU,KAAK,2EAAC;;;IAI5B,MAAM,GAAG,MAAM,EAAQ;;IAEvB,MAAM,GAAG,MAAM,EAAQ;;AAGvB,IAAA,YAAY,GAAG,QAAQ,CAAC,OAAO;QACtC,CAAC,CAAA,kBAAA,EAAqB,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,IAAI;AAC3C,KAAA,CAAC,mFAAC;AAEH,IAAA,WAAA,GAAA;QACE,MAAM,CAAC,MAAK;YACV,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa;AAChD,YAAA,IAAI,CAAC,SAAS;gBAAE;AAEhB,YAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;AACf,gBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;AACnB,oBAAA,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,aAAmC;oBACrE,SAAS,CAAC,SAAS,EAAE;AACrB,oBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;gBACpB;YACF;iBAAO;AACL,gBAAA,IAAI,SAAS,CAAC,IAAI,EAAE;oBAClB,SAAS,CAAC,KAAK,EAAE;AACjB,oBAAA,IAAI,CAAC,iBAAiB,EAAE,KAAK,IAAI;AACjC,oBAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;gBAC/B;YACF;AACF,QAAA,CAAC,CAAC;IACJ;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;AACpB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;IACpB;AAEA,IAAA,mBAAmB,CAAC,KAAiB,EAAA;AACnC,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YAAE;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa;AAChD,QAAA,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE;YAC9B,IAAI,CAAC,WAAW,EAAE;QACpB;IACF;AAEA,IAAA,YAAY,CAAC,KAAY,EAAA;AACvB,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE;YACzB,KAAK,CAAC,cAAc,EAAE;YACtB;QACF;QACA,IAAI,CAAC,WAAW,EAAE;IACpB;wGAnEW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,YAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECnC5B,g5BAoCA,EAAA,MAAA,EAAA,CAAA,sxDAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDPY,OAAO,oFAAE,cAAc,EAAA,QAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;4FAMtB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAR3B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,EAAA,OAAA,EACZ,CAAC,OAAO,EAAE,cAAc,CAAC,EAAA,eAAA,EAGjB,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,g5BAAA,EAAA,MAAA,EAAA,CAAA,sxDAAA,CAAA,EAAA;gGAGgC,UAAU,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,eAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,IAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,YAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AEbjF;;;;;AAKG;MASU,eAAe,CAAA;AACT,IAAA,QAAQ,GAAG,SAAS,CAAgC,UAAU,+EAAC;IACxE,iBAAiB,GAAuB,IAAI;AACjC,IAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC;;AAG1C,IAAA,QAAQ,GAAG,KAAK,CAAiB,OAAO,+EAAC;AACzC,IAAA,IAAI,GAAG,KAAK,CAAa,IAAI,2EAAC;AAC9B,IAAA,eAAe,GAAG,KAAK,CAAU,IAAI,sFAAC;AACtC,IAAA,aAAa,GAAG,KAAK,CAAU,IAAI,oFAAC;AACpC,IAAA,SAAS,GAAG,KAAK,CAAU,IAAI,gFAAC;IAChC,SAAS,GAAG,KAAK,CAAqB,SAAS,iFAAI,KAAK,EAAE,YAAY,EAAA,CAAG;IACzE,EAAE,GAAG,KAAK,CAAS,CAAA,UAAA,EAAa,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;AAGzE,IAAA,IAAI,GAAG,KAAK,CAAU,KAAK,2EAAC;;;IAI5B,MAAM,GAAG,MAAM,EAAQ;;IAEvB,MAAM,GAAG,MAAM,EAAQ;;AAGvB,IAAA,YAAY,GAAG,QAAQ,CAAC,OAAO;QACtC,CAAC,CAAA,kBAAA,EAAqB,IAAI,CAAC,QAAQ,EAAE,CAAA,CAAE,GAAG,IAAI;QAC9C,CAAC,CAAA,kBAAA,EAAqB,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,IAAI;AAC3C,KAAA,CAAC,mFAAC;AAEH,IAAA,WAAA,GAAA;QACE,MAAM,CAAC,MAAK;YACV,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa;AAChD,YAAA,IAAI,CAAC,SAAS;gBAAE;AAEhB,YAAA,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE;AACf,gBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;AACnB,oBAAA,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC,aAAmC;oBACrE,SAAS,CAAC,SAAS,EAAE;AACrB,oBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;gBACpB;YACF;iBAAO;AACL,gBAAA,IAAI,SAAS,CAAC,IAAI,EAAE;oBAClB,SAAS,CAAC,KAAK,EAAE;AACjB,oBAAA,IAAI,CAAC,iBAAiB,EAAE,KAAK,IAAI;AACjC,oBAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI;gBAC/B;YACF;AACF,QAAA,CAAC,CAAC;IACJ;IAEA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;AACpB,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;IACpB;AAEA,IAAA,mBAAmB,CAAC,KAAiB,EAAA;AACnC,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YAAE;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa;AAChD,QAAA,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE;YAC9B,IAAI,CAAC,WAAW,EAAE;QACpB;IACF;AAEA,IAAA,YAAY,CAAC,KAAY,EAAA;AACvB,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE;YACzB,KAAK,CAAC,cAAc,EAAE;YACtB;QACF;QACA,IAAI,CAAC,WAAW,EAAE;IACpB;wGArEW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAf,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,YAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,UAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrC5B,g5BAoCA,EAAA,MAAA,EAAA,CAAA,0wFAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDLY,OAAO,oFAAE,cAAc,EAAA,QAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA;;4FAMtB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAR3B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,EAAA,OAAA,EACZ,CAAC,OAAO,EAAE,cAAc,CAAC,EAAA,eAAA,EAGjB,uBAAuB,CAAC,MAAM,EAAA,aAAA,EAChC,iBAAiB,CAAC,IAAI,EAAA,QAAA,EAAA,g5BAAA,EAAA,MAAA,EAAA,CAAA,0wFAAA,CAAA,EAAA;gGAGgC,UAAU,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,eAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,IAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,YAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AEZjF;;;;;AAKG;MAeU,iBAAiB,CAAA;AACX,IAAA,KAAK,GAAG,SAAS,CAA0B,WAAW,4EAAC;AACvD,IAAA,MAAM,GAAG,SAAS,CAA0B,QAAQ,6EAAC;AACrD,IAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;AAC/B,IAAA,IAAI,GAAG,MAAM,CAAC,iBAAiB,CAAC;;AAGxC,IAAA,KAAK,GAAG,KAAK,CAAqB,SAAS,4EAAC;AAC5C,IAAA,WAAW,GAAG,KAAK,CAAqB,SAAS,kFAAC;AAClD,IAAA,OAAO,GAAG,KAAK,CAAiB,EAAE,8EAAC;AACnC,IAAA,IAAI,GAAG,KAAK,CAAe,IAAI,2EAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,QAAQ,GAAG,KAAK,CAAU,KAAK,+EAAC;AAChC,IAAA,IAAI,GAAG,KAAK,CAAqB,SAAS,2EAAC;AAC3C,IAAA,QAAQ,GAAG,KAAK,CAAqB,SAAS,+EAAC;IAC/C,EAAE,GAAG,KAAK,CAAS,CAAA,YAAA,EAAe,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;AAG3E,IAAA,KAAK,GAAG,KAAK,CAAS,EAAE,4EAAC;;;IAIzB,OAAO,GAAG,MAAM,EAAU;;AAG1B,IAAA,MAAM,GAAG,MAAM,CAAC,KAAK,6EAAC;AACtB,IAAA,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,mFAAC;AACjB,IAAA,aAAa,GAAG,MAAM,CAAC,KAAK,oFAAC;;AAGtC,IAAA,QAAQ,GAA4B,MAAK,EAAE,CAAC;AAC5C,IAAA,SAAS,GAAe,MAAK,EAAE,CAAC;;AAG/B,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,aAAa,EAAE,iFAAC;AAEpE,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,+EAAC;AAC5C,IAAA,SAAS,GAAG,IAAI,CAAC,QAAQ;AACzB,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,+EAAC;AAE5D,IAAA,aAAa,GAAG,QAAQ,CAAC,MAAK;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;AAC9D,QAAA,OAAO,GAAG,EAAE,KAAK,IAAI,EAAE;AACzB,IAAA,CAAC,oFAAC;;IAGO,mBAAmB,GAAG,QAAQ,CACrC,MAAM,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,qBAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CACtE;AAEQ,IAAA,cAAc,GAAG,QAAQ,CAAC,OAAO;QACxC,CAAC,CAAA,sBAAA,EAAyB,IAAI,CAAC,IAAI,EAAE,CAAA,CAAE,GAAG,IAAI;AAC9C,QAAA,6BAA6B,EAAE,IAAI,CAAC,QAAQ,EAAE;AAC9C,QAAA,4BAA4B,EAAE,IAAI,CAAC,MAAM,EAAE;AAC3C,QAAA,gCAAgC,EAAE,IAAI,CAAC,UAAU,EAAE;AACpD,KAAA,CAAC,qFAAC;AAEH,IAAA,WAAA,GAAA;QACE,MAAM,CAAC,MAAK;YACV,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,aAAa;YACzC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,aAAa;YAC3C,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBAAE;AACzC,YAAA,MAAM,IAAI,GAAG,OAAO,CAAC,qBAAqB,EAAE;AAC5C,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAA,EAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA,EAAA,CAAI;YACvC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,CAAA,EAAA,CAAI;YAClC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,IAAI,CAAC,KAAK,CAAA,EAAA,CAAI;AACzC,QAAA,CAAC,CAAC;QAEF,MAAM,qBAAqB,GAAG,MAAW;YACvC,IAAI,IAAI,CAAC,MAAM,EAAE;gBAAE,IAAI,CAAC,KAAK,EAAE;AACjC,QAAA,CAAC;AACD,QAAA,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,EAAE;AACvD,YAAA,OAAO,EAAE,IAAI;AACb,YAAA,OAAO,EAAE,IAAI;AACd,SAAA,CAAC;AACF,QAAA,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,CAAC;AACxD,QAAA,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,MAAK;AAC7B,YAAA,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,qBAAqB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC9E,YAAA,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,qBAAqB,CAAC;AAC7D,QAAA,CAAC,CAAC;IACJ;;AAGA,IAAA,UAAU,CAAC,GAAW,EAAA;QACpB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;IAC3B;AAEA,IAAA,gBAAgB,CAAC,EAA2B,EAAA;AAC1C,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;IACpB;AAEA,IAAA,iBAAiB,CAAC,EAAc,EAAA;AAC9B,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACrB;AAEA,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAClC,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC;IACpC;;;IAIA,MAAM,GAAA;QACJ,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE;QAC1C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;AAC/B,QAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;YACjB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;AACnE,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;QAC3C;IACF;;AAGA,IAAA,MAAM,CAAC,MAAoB,EAAA;AACzB,QAAA,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE;QAC7D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;AAC5B,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,SAAS,EAAE;QAChB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAC/B,IAAI,CAAC,KAAK,EAAE;IACd;;IAGA,KAAK,GAAA;AACH,QAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;QACtB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3B;;IAGA,KAAK,GAAA;QACH,IAAI,CAAC,KAAK,EAAE,EAAE,aAAa,CAAC,KAAK,EAAE;IACrC;AAEA,IAAA,aAAa,CAAC,KAAoB,EAAA;QAChC,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE;YAAE;AAE1C,QAAA,QAAQ,KAAK,CAAC,GAAG;AACf,YAAA,KAAK,OAAO;AACZ,YAAA,KAAK,GAAG;gBACN,KAAK,CAAC,cAAc,EAAE;AACtB,gBAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;AACjB,oBAAA,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE;AAC3B,oBAAA,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE;AAC/B,oBAAA,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;wBACxD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACxB;gBACF;qBAAO;oBACL,IAAI,CAAC,MAAM,EAAE;gBACf;gBACA;AACF,YAAA,KAAK,WAAW;gBACd,KAAK,CAAC,cAAc,EAAE;AACtB,gBAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;oBAClB,IAAI,CAAC,MAAM,EAAE;gBACf;qBAAO;AACL,oBAAA,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;gBACnB;gBACA;AACF,YAAA,KAAK,SAAS;gBACZ,KAAK,CAAC,cAAc,EAAE;AACtB,gBAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;AACjB,oBAAA,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBACpB;gBACA;AACF,YAAA,KAAK,QAAQ;AACX,gBAAA,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;oBACjB,KAAK,CAAC,cAAc,EAAE;oBACtB,IAAI,CAAC,KAAK,EAAE;oBACZ,IAAI,CAAC,KAAK,EAAE,EAAE,aAAa,CAAC,KAAK,EAAE;gBACrC;gBACA;;IAEN;AAEQ,IAAA,SAAS,CAAC,KAAa,EAAA;AAC7B,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE;QAC3B,IAAI,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,KAAK;AACrC,QAAA,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;YAC1D,GAAG,IAAI,KAAK;QACd;QACA,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE;AACjC,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC;QAC5B;IACF;AAGA,IAAA,eAAe,CAAC,KAAY,EAAA;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAAE;AACpB,QAAA,MAAM,EAAE,GAAG,KAAK,CAAC,MAAc;AAC/B,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC;QAC/D,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;YAC9B,IAAI,CAAC,KAAK,EAAE;YACZ,IAAI,CAAC,SAAS,EAAE;QAClB;IACF;wGAjMW,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,gBAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,SAAA,EARjB;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,iBAAiB;AAC1B,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,iBAAiB,CAAC;AAChD,gBAAA,KAAK,EAAE,IAAI;AACZ,aAAA;AACF,SAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,WAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,QAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC5CH,6rFAqFA,EAAA,MAAA,EAAA,CAAA,u9FAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDnDY,wBAAwB,EAAA,QAAA,EAAA,sBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;4FAYhC,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAd7B,SAAS;+BACE,aAAa,EAAA,OAAA,EACd,CAAC,wBAAwB,EAAE,OAAO,CAAC,EAAA,eAAA,EAG3B,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,iBAAiB;AAC1B,4BAAA,WAAW,EAAE,UAAU,CAAC,uBAAuB,CAAC;AAChD,4BAAA,KAAK,EAAE,IAAI;AACZ,yBAAA;AACF,qBAAA,EAAA,QAAA,EAAA,6rFAAA,EAAA,MAAA,EAAA,CAAA,u9FAAA,CAAA,EAAA;AAG2D,SAAA,CAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,SAAA,EAAA,IAAA,EAAA,CAAA,WAAW,gEACV,QAAQ,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,SAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,IAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAA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CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,MAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,QAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,SAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,WAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,IAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,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"}