@eagami/ui 5.3.0 → 5.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.
@@ -519,6 +519,10 @@ const messages$e = {
519
519
  hidePassword: 'إخفاء كلمة المرور',
520
520
  clear: 'مسح',
521
521
  },
522
+ numberInput: {
523
+ increment: 'زيادة',
524
+ decrement: 'إنقاص',
525
+ },
522
526
  menu: {
523
527
  label: 'القائمة',
524
528
  },
@@ -721,6 +725,10 @@ const messages$d = {
721
725
  hidePassword: 'Passwort verbergen',
722
726
  clear: 'Löschen',
723
727
  },
728
+ numberInput: {
729
+ increment: 'Erhöhen',
730
+ decrement: 'Verringern',
731
+ },
724
732
  menu: {
725
733
  label: 'Menü',
726
734
  },
@@ -923,6 +931,10 @@ const messages$c = {
923
931
  hidePassword: 'Απόκρυψη κωδικού πρόσβασης',
924
932
  clear: 'Καθαρισμός',
925
933
  },
934
+ numberInput: {
935
+ increment: 'Αύξηση',
936
+ decrement: 'Μείωση',
937
+ },
926
938
  menu: {
927
939
  label: 'Μενού',
928
940
  },
@@ -1125,6 +1137,10 @@ const messages$b = {
1125
1137
  hidePassword: 'Hide password',
1126
1138
  clear: 'Clear',
1127
1139
  },
1140
+ numberInput: {
1141
+ increment: 'Increment',
1142
+ decrement: 'Decrement',
1143
+ },
1128
1144
  menu: {
1129
1145
  label: 'Menu',
1130
1146
  },
@@ -1327,6 +1343,10 @@ const messages$a = {
1327
1343
  hidePassword: 'Ocultar contraseña',
1328
1344
  clear: 'Borrar',
1329
1345
  },
1346
+ numberInput: {
1347
+ increment: 'Incrementar',
1348
+ decrement: 'Disminuir',
1349
+ },
1330
1350
  menu: {
1331
1351
  label: 'Menú',
1332
1352
  },
@@ -1529,6 +1549,10 @@ const messages$9 = {
1529
1549
  hidePassword: 'Masquer le mot de passe',
1530
1550
  clear: 'Effacer',
1531
1551
  },
1552
+ numberInput: {
1553
+ increment: 'Augmenter',
1554
+ decrement: 'Diminuer',
1555
+ },
1532
1556
  menu: {
1533
1557
  label: 'Menu',
1534
1558
  },
@@ -1731,6 +1755,10 @@ const messages$8 = {
1731
1755
  hidePassword: 'הסתרת סיסמה',
1732
1756
  clear: 'ניקוי',
1733
1757
  },
1758
+ numberInput: {
1759
+ increment: 'הגדלה',
1760
+ decrement: 'הקטנה',
1761
+ },
1734
1762
  menu: {
1735
1763
  label: 'תפריט',
1736
1764
  },
@@ -1933,6 +1961,10 @@ const messages$7 = {
1933
1961
  hidePassword: 'पासवर्ड छिपाएं',
1934
1962
  clear: 'साफ़ करें',
1935
1963
  },
1964
+ numberInput: {
1965
+ increment: 'बढ़ाएँ',
1966
+ decrement: 'घटाएँ',
1967
+ },
1936
1968
  menu: {
1937
1969
  label: 'मेनू',
1938
1970
  },
@@ -2135,6 +2167,10 @@ const messages$6 = {
2135
2167
  hidePassword: 'Fela lykilorð',
2136
2168
  clear: 'Hreinsa',
2137
2169
  },
2170
+ numberInput: {
2171
+ increment: 'Hækka',
2172
+ decrement: 'Lækka',
2173
+ },
2138
2174
  menu: {
2139
2175
  label: 'Valmynd',
2140
2176
  },
@@ -2337,6 +2373,10 @@ const messages$5 = {
2337
2373
  hidePassword: 'Wachtwoord verbergen',
2338
2374
  clear: 'Wissen',
2339
2375
  },
2376
+ numberInput: {
2377
+ increment: 'Verhogen',
2378
+ decrement: 'Verlagen',
2379
+ },
2340
2380
  menu: {
2341
2381
  label: 'Menu',
2342
2382
  },
@@ -2539,6 +2579,10 @@ const messages$4 = {
2539
2579
  hidePassword: 'Ukryj hasło',
2540
2580
  clear: 'Wyczyść',
2541
2581
  },
2582
+ numberInput: {
2583
+ increment: 'Zwiększ',
2584
+ decrement: 'Zmniejsz',
2585
+ },
2542
2586
  menu: {
2543
2587
  label: 'Menu',
2544
2588
  },
@@ -2741,6 +2785,10 @@ const messages$3 = {
2741
2785
  hidePassword: 'Ocultar senha',
2742
2786
  clear: 'Limpar',
2743
2787
  },
2788
+ numberInput: {
2789
+ increment: 'Aumentar',
2790
+ decrement: 'Diminuir',
2791
+ },
2744
2792
  menu: {
2745
2793
  label: 'Menu',
2746
2794
  },
@@ -2943,6 +2991,10 @@ const messages$2 = {
2943
2991
  hidePassword: 'Скрыть пароль',
2944
2992
  clear: 'Очистить',
2945
2993
  },
2994
+ numberInput: {
2995
+ increment: 'Увеличить',
2996
+ decrement: 'Уменьшить',
2997
+ },
2946
2998
  menu: {
2947
2999
  label: 'Меню',
2948
3000
  },
@@ -3145,6 +3197,10 @@ const messages$1 = {
3145
3197
  hidePassword: 'Приховати пароль',
3146
3198
  clear: 'Очистити',
3147
3199
  },
3200
+ numberInput: {
3201
+ increment: 'Збільшити',
3202
+ decrement: 'Зменшити',
3203
+ },
3148
3204
  menu: {
3149
3205
  label: 'Меню',
3150
3206
  },
@@ -3347,6 +3403,10 @@ const messages = {
3347
3403
  hidePassword: '隐藏密码',
3348
3404
  clear: '清除',
3349
3405
  },
3406
+ numberInput: {
3407
+ increment: '增加',
3408
+ decrement: '减少',
3409
+ },
3350
3410
  menu: {
3351
3411
  label: '菜单',
3352
3412
  },
@@ -12192,6 +12252,294 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImpo
12192
12252
  ], template: "<div class=\"ea-multi-select-field\">\n @if (label(); as labelText) {\n <ea-field-label\n [text]=\"labelText\"\n [forId]=\"id()\"\n [labelId]=\"id() + '-label'\"\n [required]=\"required()\" />\n }\n\n <div class=\"ea-multi-select\">\n <div\n class=\"ea-multi-select__trigger-wrapper\"\n [ngClass]=\"wrapperClasses()\">\n <div\n #triggerEl\n class=\"ea-multi-select__trigger\"\n [ngClass]=\"triggerClasses()\"\n [id]=\"id()\"\n role=\"combobox\"\n [attr.tabindex]=\"isDisabled() ? -1 : 0\"\n [attr.aria-labelledby]=\"label() ? id() + '-label' : null\"\n [attr.aria-label]=\"label() ? null : (ariaLabel() ?? null)\"\n [attr.aria-expanded]=\"isOpen()\"\n [attr.aria-haspopup]=\"'listbox'\"\n [attr.aria-controls]=\"isOpen() ? listboxId() : null\"\n [attr.aria-activedescendant]=\"isOpen() && !searchable() ? activeOptionId() : null\"\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 (click)=\"toggle()\"\n (keydown)=\"handleTriggerKeydown($event)\">\n <span class=\"ea-multi-select__trigger-content\">\n @if (!hasValue()) {\n <span class=\"ea-multi-select__trigger-placeholder\">\n <bdi>{{ resolvedPlaceholder() }}</bdi>\n </span>\n } @else {\n @for (opt of visibleChips(); track opt.value) {\n <ea-tag\n [size]=\"size()\"\n variant=\"default\"\n [removable]=\"!isDisabled() && !readonly()\"\n [removeLabel]=\"i18n.messages().multiSelect.removeOption(opt.label)\"\n (removed)=\"removeChip(opt)\">\n <span>{{ opt.label }}</span>\n </ea-tag>\n }\n @if (hiddenChipCount() > 0) {\n <span class=\"ea-multi-select__more\">+{{ hiddenChipCount() }}</span>\n }\n }\n </span>\n </div>\n @if (hasValue() && !isDisabled() && !readonly()) {\n <button\n type=\"button\"\n class=\"ea-multi-select__clear\"\n [attr.aria-label]=\"i18n.messages().multiSelect.clearAll\"\n (click)=\"clear($event)\">\n <ea-icon-x\n class=\"ea-multi-select__clear-icon\"\n aria-hidden=\"true\" />\n </button>\n }\n <ea-icon-chevron-down\n class=\"ea-multi-select__trigger-icon\"\n aria-hidden=\"true\"\n (click)=\"toggle()\" />\n </div>\n\n <ea-popover\n [anchor]=\"triggerEl\"\n [open]=\"isOpen()\"\n placement=\"bottom-start\"\n [matchAnchorWidth]=\"true\"\n [closeOnEscape]=\"false\"\n scrollBehavior=\"reposition\"\n (closeRequested)=\"onPopoverCloseRequested()\">\n <div\n class=\"ea-multi-select__popover\"\n [ngClass]=\"menuClasses()\">\n @if (searchable()) {\n <div class=\"ea-multi-select__search\">\n <ea-icon-search\n class=\"ea-multi-select__search-icon\"\n aria-hidden=\"true\" />\n <input\n #searchEl\n type=\"text\"\n dir=\"auto\"\n class=\"ea-multi-select__search-input\"\n autocomplete=\"off\"\n [placeholder]=\"resolvedSearchPlaceholder()\"\n [value]=\"searchTerm()\"\n [attr.aria-controls]=\"listboxId()\"\n [attr.aria-activedescendant]=\"activeOptionId()\"\n (input)=\"onSearchInput($event)\"\n (keydown)=\"handlePopoverKeydown($event)\" />\n </div>\n }\n\n @if (selectAll() && filteredOptions().length > 0) {\n <div\n class=\"ea-multi-select__option ea-multi-select__option--select-all\"\n (click)=\"toggleSelectAll()\">\n <ea-checkbox\n size=\"sm\"\n [checked]=\"selectAllState() === 'all'\"\n [indeterminate]=\"selectAllState() === 'some'\"\n [ariaLabel]=\"i18n.messages().multiSelect.selectAll\" />\n <span class=\"ea-multi-select__option-label\">\n {{ i18n.messages().multiSelect.selectAll }}\n </span>\n </div>\n }\n\n <ul\n class=\"ea-multi-select__list\"\n role=\"listbox\"\n aria-multiselectable=\"true\"\n [id]=\"listboxId()\"\n [attr.aria-label]=\"label() ?? ariaLabel() ?? null\">\n @for (opt of filteredOptions(); track opt.value; let i = $index) {\n <li\n class=\"ea-multi-select__option\"\n [class.ea-multi-select__option--focused]=\"focusedIndex() === i\"\n [class.ea-multi-select__option--disabled]=\"opt.disabled\"\n [id]=\"id() + '-opt-' + i\"\n role=\"option\"\n [attr.aria-selected]=\"selectedSet().has(opt.value)\"\n [attr.aria-disabled]=\"opt.disabled || null\"\n (click)=\"onOptionClick(opt, i)\">\n <ea-checkbox\n size=\"sm\"\n inert\n aria-hidden=\"true\"\n [checked]=\"selectedSet().has(opt.value)\"\n [disabled]=\"!!opt.disabled\" />\n <span class=\"ea-multi-select__option-label\">\n {{ opt.label }}\n </span>\n </li>\n } @empty {\n <li class=\"ea-multi-select__empty\">\n {{ i18n.messages().multiSelect.searchEmpty }}\n </li>\n }\n </ul>\n </div>\n </ea-popover>\n </div>\n\n <ea-field-messages\n [id]=\"id()\"\n [error]=\"errorText()\"\n [hint]=\"showHint() ? hint() : null\" />\n</div>\n", styles: [".ea-multi-select-field{display:flex;flex-direction:column;gap:var(--space-1-5)}.ea-multi-select{position:relative}.ea-multi-select__trigger-wrapper{position:relative;display:flex;align-items:center;gap:.5em;width:100%;min-height:2.5em;padding:.375em .75em;border:var(--border-width-thin) solid var(--color-border-default);border-radius:var(--radius-md);background-color:var(--color-bg-base);color:var(--color-text-primary);transition:var(--transition-colors),var(--transition-shadow)}.ea-multi-select__trigger-wrapper--xs{font-size:var(--font-size-xs)}.ea-multi-select__trigger-wrapper--sm{font-size:var(--font-size-sm)}.ea-multi-select__trigger-wrapper--md{font-size:var(--font-size-md)}.ea-multi-select__trigger-wrapper--lg{font-size:var(--font-size-lg)}.ea-multi-select__trigger-wrapper--xl{font-size:var(--font-size-xl)}.ea-multi-select__trigger-wrapper:has(.ea-multi-select__trigger:focus-visible){box-shadow:var(--shadow-focus-ring)}@media(forced-colors:active){.ea-multi-select__trigger-wrapper:has(.ea-multi-select__trigger:focus-visible){outline:2px solid Highlight;outline-offset:2px}}.ea-multi-select__trigger-wrapper:has(.ea-multi-select__trigger--open){border-color:var(--color-border-focus);box-shadow:var(--shadow-focus-ring)}@media(forced-colors:active){.ea-multi-select__trigger-wrapper:has(.ea-multi-select__trigger--open){outline:2px solid Highlight;outline-offset:2px}}.ea-multi-select__trigger-wrapper:has(.ea-multi-select__trigger--error){border-color:var(--color-error-default)}.ea-multi-select__trigger-wrapper:has(.ea-multi-select__trigger--error.ea-multi-select__trigger--open){box-shadow:var(--shadow-focus-ring-error)}@media(forced-colors:active){.ea-multi-select__trigger-wrapper:has(.ea-multi-select__trigger--error.ea-multi-select__trigger--open){outline:2px solid Highlight;outline-offset:2px}}.ea-multi-select__trigger-wrapper:has(.ea-multi-select__trigger--disabled){background-color:var(--color-bg-muted);opacity:.6;cursor:not-allowed}.ea-multi-select__trigger{display:flex;align-items:center;flex:1;min-width:0;text-align:start;font-family:var(--font-family-sans);cursor:pointer}.ea-multi-select__trigger:focus-visible{outline:none}.ea-multi-select__trigger--disabled{cursor:not-allowed}.ea-multi-select__trigger-content{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-1);flex:1;min-width:0;overflow-x:auto;scrollbar-width:thin}.ea-multi-select__trigger-content ea-tag{flex-shrink:0}.ea-multi-select__trigger-placeholder{color:var(--color-text-tertiary)}.ea-multi-select__trigger-icon{flex-shrink:0;width:1em;height:1em;color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-transform)}.ea-multi-select__trigger-wrapper:has(.ea-multi-select__trigger--open) .ea-multi-select__trigger-icon{transform:rotate(180deg)}.ea-multi-select__more{display:inline-flex;flex-shrink:0;align-items:center;padding:0 var(--space-1-5);border-radius:var(--radius-lg);background-color:var(--color-bg-muted);font-size:.85em;font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.ea-multi-select__clear{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ea-icon-button-size, 1.75em);height:var(--ea-icon-button-size, 1.75em);padding:0;border:none;border-radius:var(--radius-sm);background:none;color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-colors)}.ea-multi-select__clear>*{font-size:1.25em}.ea-multi-select__clear:hover{background-color:var(--color-state-hover);color:var(--color-text-primary)}.ea-multi-select__clear:focus-visible{outline:none;box-shadow:var(--shadow-focus-ring)}@media(forced-colors:active){.ea-multi-select__clear:focus-visible{outline:2px solid Highlight;outline-offset:2px}}.ea-multi-select__clear:disabled{cursor:not-allowed;opacity:.5}.ea-multi-select__clear{flex-shrink:0}.ea-multi-select__clear-icon{width:1em;height:1em}.ea-multi-select__popover{display:flex;flex-direction:column;overflow:hidden;max-height:20rem;border:var(--border-width-thin) solid var(--color-border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);background-color:var(--ea-multi-select-popover-background-color, var(--color-bg-elevated))}@media(forced-colors:active){.ea-multi-select__popover{border:1px solid CanvasText}}.ea-multi-select__popover--xs{font-size:var(--font-size-xs)}.ea-multi-select__popover--sm{font-size:var(--font-size-sm)}.ea-multi-select__popover--md{font-size:var(--font-size-md)}.ea-multi-select__popover--lg{font-size:var(--font-size-lg)}.ea-multi-select__popover--xl{font-size:var(--font-size-xl)}.ea-multi-select__search{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0;padding:var(--space-2) var(--space-3);border-bottom:var(--border-width-thin) solid var(--color-border-default)}.ea-multi-select__search-icon{flex-shrink:0;width:1em;height:1em;color:var(--color-text-tertiary)}.ea-multi-select__search-input{flex:1;min-width:0;padding:0;border:none;background:none;font-family:var(--font-family-sans);font-size:inherit;color:var(--color-text-primary)}.ea-multi-select__search-input::placeholder{color:var(--color-text-tertiary);opacity:1}.ea-multi-select__search-input:focus{outline:none}.ea-multi-select__list{overflow-y:auto;overscroll-behavior:none;flex:1;margin:0;padding:var(--space-1) 0;list-style:none}.ea-multi-select__option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1-5) var(--space-3);font-size:inherit;font-family:var(--font-family-sans);color:var(--color-text-primary);cursor:pointer;transition:var(--transition-colors)}.ea-multi-select__option--focused{background-color:var(--color-state-hover)}@media(forced-colors:active){.ea-multi-select__option--focused{background-color:Highlight;color:HighlightText}}.ea-multi-select__option--disabled{color:var(--color-text-disabled);cursor:not-allowed}@media(forced-colors:active){.ea-multi-select__option--disabled{color:GrayText}}.ea-multi-select__option--select-all{border-bottom:var(--border-width-thin) solid var(--color-border-default);font-weight:var(--font-weight-medium)}.ea-multi-select__option:hover:not(.ea-multi-select__option--disabled){background-color:var(--color-state-hover)}@media(forced-colors:active){.ea-multi-select__option:hover:not(.ea-multi-select__option--disabled){background-color:Highlight;color:HighlightText}}.ea-multi-select__option ea-checkbox{pointer-events:none;display:inline-flex;align-items:center;line-height:1}.ea-multi-select__option-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ea-multi-select__empty{padding:var(--space-3);font-size:inherit;text-align:center;color:var(--color-text-tertiary);list-style:none}\n"] }]
12193
12253
  }], propDecorators: { triggerEl: [{ type: i0.ViewChild, args: ['triggerEl', { isSignal: true }] }], searchEl: [{ type: i0.ViewChild, args: ['searchEl', { isSignal: true }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "aria-label", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], searchPlaceholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchPlaceholder", required: false }] }], options: [{ type: i0.Input, args: [{ isSignal: true, alias: "options", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], hint: [{ type: i0.Input, args: [{ isSignal: true, alias: "hint", required: false }] }], errorMsg: [{ type: i0.Input, args: [{ isSignal: true, alias: "errorMsg", required: false }] }], errorMessages: [{ type: i0.Input, args: [{ isSignal: true, alias: "errorMessages", required: false }] }], searchable: [{ type: i0.Input, args: [{ isSignal: true, alias: "searchable", required: false }] }], selectAll: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectAll", required: false }] }], maxVisibleChips: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxVisibleChips", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], changed: [{ type: i0.Output, args: ["changed"] }] } });
12194
12254
 
12255
+ class ChevronUpIconComponent extends IconComponentBase {
12256
+ static slug = 'chevron-up';
12257
+ static category = 'feather';
12258
+ static tags = [
12259
+ 'chevron-up',
12260
+ 'chevron',
12261
+ 'up',
12262
+ 'arrow',
12263
+ 'collapse',
12264
+ 'haut',
12265
+ 'arriba',
12266
+ 'πάνω',
12267
+ 'góra',
12268
+ ];
12269
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ChevronUpIconComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
12270
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.16", type: ChevronUpIconComponent, isStandalone: true, selector: "ea-icon-chevron-up", usesInheritance: true, ngImport: i0, template: `
12271
+ <svg
12272
+ viewBox="0 0 24 24"
12273
+ fill="none"
12274
+ stroke="currentColor"
12275
+ [attr.stroke-width]="strokeWidth()"
12276
+ stroke-linecap="round"
12277
+ stroke-linejoin="round"
12278
+ aria-hidden="true"
12279
+ width="100%"
12280
+ height="100%">
12281
+ <polyline points="18 15 12 9 6 15" />
12282
+ </svg>
12283
+ `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
12284
+ }
12285
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ChevronUpIconComponent, decorators: [{
12286
+ type: Component,
12287
+ args: [{
12288
+ selector: 'ea-icon-chevron-up',
12289
+ changeDetection: ChangeDetectionStrategy.OnPush,
12290
+ template: `
12291
+ <svg
12292
+ viewBox="0 0 24 24"
12293
+ fill="none"
12294
+ stroke="currentColor"
12295
+ [attr.stroke-width]="strokeWidth()"
12296
+ stroke-linecap="round"
12297
+ stroke-linejoin="round"
12298
+ aria-hidden="true"
12299
+ width="100%"
12300
+ height="100%">
12301
+ <polyline points="18 15 12 9 6 15" />
12302
+ </svg>
12303
+ `,
12304
+ }]
12305
+ }] });
12306
+
12307
+ /**
12308
+ * Numeric field with increment and decrement steppers, min/max/step bounds, and
12309
+ * the standard label, hint, and error chrome. The native input carries the
12310
+ * `spinbutton` role, so arrow keys step it; the steppers are pointer
12311
+ * affordances. Integrates with Angular forms via `ControlValueAccessor`.
12312
+ */
12313
+ class NumberInputComponent {
12314
+ inputEl = viewChild('inputEl', ...(ngDevMode ? [{ debugName: "inputEl" }] : /* istanbul ignore next */ []));
12315
+ i18n = inject(EagamiI18nService);
12316
+ /** Text label rendered above the field. */
12317
+ label = input(undefined, ...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
12318
+ /** Placeholder shown while the field is empty. */
12319
+ placeholder = input('', ...(ngDevMode ? [{ debugName: "placeholder" }] : /* istanbul ignore next */ []));
12320
+ /** Visual size of the field. */
12321
+ size = input('md', ...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
12322
+ /** Helper text shown below the field; hidden while an error is showing. */
12323
+ hint = input(undefined, ...(ngDevMode ? [{ debugName: "hint" }] : /* istanbul ignore next */ []));
12324
+ /** Error message shown below the field; replaces the hint and flags the field invalid. */
12325
+ errorMsg = input(undefined, ...(ngDevMode ? [{ debugName: "errorMsg" }] : /* istanbul ignore next */ []));
12326
+ /** Per-validator-key message overrides for a bound form control (e.g. `{ required: '...' }`). */
12327
+ errorMessages = input(undefined, ...(ngDevMode ? [{ debugName: "errorMessages" }] : /* istanbul ignore next */ []));
12328
+ /** Disables the field. */
12329
+ disabled = input(false, ...(ngDevMode ? [{ debugName: "disabled" }] : /* istanbul ignore next */ []));
12330
+ /** Renders the field read-only. */
12331
+ readonly = input(false, ...(ngDevMode ? [{ debugName: "readonly" }] : /* istanbul ignore next */ []));
12332
+ /** Marks the field as required. */
12333
+ required = input(false, ...(ngDevMode ? [{ debugName: "required" }] : /* istanbul ignore next */ []));
12334
+ /** Minimum value; typed values are clamped to it on blur and the steppers respect it. */
12335
+ min = input(undefined, ...(ngDevMode ? [{ debugName: "min" }] : /* istanbul ignore next */ []));
12336
+ /** Maximum value; typed values are clamped to it on blur and the steppers respect it. */
12337
+ max = input(undefined, ...(ngDevMode ? [{ debugName: "max" }] : /* istanbul ignore next */ []));
12338
+ /** Amount each step (arrow key or stepper) adds or subtracts. */
12339
+ step = input(1, ...(ngDevMode ? [{ debugName: "step" }] : /* istanbul ignore next */ []));
12340
+ /** Whether negative values are allowed; when `false` the value floors at 0. */
12341
+ allowNegative = input(true, ...(ngDevMode ? [{ debugName: "allowNegative" }] : /* istanbul ignore next */ []));
12342
+ /** Accessible name for the field when no visible `label` is set. */
12343
+ ariaLabel = input(undefined, { ...(ngDevMode ? { debugName: "ariaLabel" } : /* istanbul ignore next */ {}), alias: 'aria-label' });
12344
+ /** `id` applied to the native input and label `for`; auto-generated when omitted. */
12345
+ id = input(uniqueId('ea-number-input'), ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
12346
+ /** Current field value; `null` when empty. Two-way bindable via `[(value)]`. */
12347
+ value = model(null, ...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
12348
+ /** Fires with the new value whenever it changes. */
12349
+ changed = output();
12350
+ /** Fires when the input receives focus. */
12351
+ focused = output();
12352
+ /** Fires when the input loses focus. */
12353
+ blurred = output();
12354
+ isFocused = signal(false, ...(ngDevMode ? [{ debugName: "isFocused" }] : /* istanbul ignore next */ []));
12355
+ _formDisabled = signal(false, ...(ngDevMode ? [{ debugName: "_formDisabled" }] : /* istanbul ignore next */ []));
12356
+ onChange = () => { };
12357
+ onTouched = () => { };
12358
+ isDisabled = computed(() => this.disabled() || this._formDisabled(), ...(ngDevMode ? [{ debugName: "isDisabled" }] : /* istanbul ignore next */ []));
12359
+ isInteractive = computed(() => !this.isDisabled() && !this.readonly(), ...(ngDevMode ? [{ debugName: "isInteractive" }] : /* istanbul ignore next */ []));
12360
+ // The lower bound actually enforced: `min` normally, but floored at 0 when
12361
+ // negatives are disallowed (even if `min` was set lower).
12362
+ effectiveMin = computed(() => {
12363
+ const min = this.min();
12364
+ if (this.allowNegative()) {
12365
+ return min;
12366
+ }
12367
+ return min == null ? 0 : Math.max(min, 0);
12368
+ }, ...(ngDevMode ? [{ debugName: "effectiveMin" }] : /* istanbul ignore next */ []));
12369
+ errorState = injectControlErrorState({
12370
+ errorMsg: this.errorMsg,
12371
+ errorMessages: this.errorMessages,
12372
+ });
12373
+ errorText = this.errorState.error;
12374
+ hasError = this.errorState.hasError;
12375
+ showHint = computed(() => !!this.hint() && !this.hasError(), ...(ngDevMode ? [{ debugName: "showHint" }] : /* istanbul ignore next */ []));
12376
+ canIncrement = computed(() => {
12377
+ if (!this.isInteractive()) {
12378
+ return false;
12379
+ }
12380
+ const max = this.max();
12381
+ return max == null || (this.value() ?? this.min() ?? 0) < max;
12382
+ }, ...(ngDevMode ? [{ debugName: "canIncrement" }] : /* istanbul ignore next */ []));
12383
+ canDecrement = computed(() => {
12384
+ if (!this.isInteractive()) {
12385
+ return false;
12386
+ }
12387
+ const min = this.effectiveMin();
12388
+ return min == null || (this.value() ?? this.max() ?? 0) > min;
12389
+ }, ...(ngDevMode ? [{ debugName: "canDecrement" }] : /* istanbul ignore next */ []));
12390
+ wrapperClasses = computed(() => ({
12391
+ [`ea-number-input-wrapper--${this.size()}`]: true,
12392
+ 'ea-number-input-wrapper--error': this.hasError(),
12393
+ 'ea-number-input-wrapper--focused': this.isFocused(),
12394
+ 'ea-number-input-wrapper--disabled': this.isDisabled(),
12395
+ 'ea-number-input-wrapper--readonly': this.readonly(),
12396
+ }), ...(ngDevMode ? [{ debugName: "wrapperClasses" }] : /* istanbul ignore next */ []));
12397
+ constructor() {
12398
+ // Reflect the model onto the native element, but only when they differ
12399
+ // NUMERICALLY: comparing text would clobber an in-progress decimal (typing
12400
+ // "42." parses to 42, and rewriting "42" would drop the trailing dot).
12401
+ effect(() => {
12402
+ const el = this.inputEl()?.nativeElement;
12403
+ if (!el) {
12404
+ return;
12405
+ }
12406
+ const model = this.value();
12407
+ const elValue = el.value === '' || Number.isNaN(el.valueAsNumber) ? null : el.valueAsNumber;
12408
+ if (elValue !== model) {
12409
+ el.value = model == null ? '' : String(model);
12410
+ }
12411
+ });
12412
+ }
12413
+ writeValue(val) {
12414
+ // Do not clamp here: a CVA writeValue cannot call onChange, so clamping now
12415
+ // would diverge the form model (unclamped) from the view. Bounds apply on
12416
+ // interaction (blur after typing, or stepping) instead.
12417
+ this.value.set(val == null || Number.isNaN(Number(val)) ? null : Number(val));
12418
+ }
12419
+ registerOnChange(fn) {
12420
+ this.onChange = fn;
12421
+ }
12422
+ registerOnTouched(fn) {
12423
+ this.onTouched = fn;
12424
+ }
12425
+ setDisabledState(isDisabled) {
12426
+ this._formDisabled.set(isDisabled);
12427
+ }
12428
+ handleInput() {
12429
+ this.commitFromElement(false);
12430
+ }
12431
+ handleFocus(event) {
12432
+ this.isFocused.set(true);
12433
+ this.focused.emit(event);
12434
+ }
12435
+ handleBlur(event) {
12436
+ this.commitFromElement(true);
12437
+ this.isFocused.set(false);
12438
+ this.onTouched();
12439
+ this.blurred.emit(event);
12440
+ }
12441
+ // A focused number input changes value on scroll by default, easy to trigger
12442
+ // by accident while scrolling the page.
12443
+ handleWheel(event) {
12444
+ if (this.isFocused()) {
12445
+ event.preventDefault();
12446
+ }
12447
+ }
12448
+ handleKeydown(event) {
12449
+ // Exponent notation breaks the numeric bounds; block it. Also block the
12450
+ // minus sign when negatives are disallowed.
12451
+ if (event.key === 'e' ||
12452
+ event.key === 'E' ||
12453
+ (!this.allowNegative() && event.key === '-')) {
12454
+ event.preventDefault();
12455
+ }
12456
+ }
12457
+ // Keeps focus in the input while the mouse presses a stepper, so the field
12458
+ // does not blur (and prematurely commit or mark touched) on each click.
12459
+ onStepMousedown(event) {
12460
+ event.preventDefault();
12461
+ }
12462
+ increment() {
12463
+ this.stepBy(el => el.stepUp());
12464
+ }
12465
+ decrement() {
12466
+ this.stepBy(el => el.stepDown());
12467
+ }
12468
+ /** Moves keyboard focus to the underlying native input element. */
12469
+ focus() {
12470
+ this.inputEl()?.nativeElement.focus();
12471
+ }
12472
+ stepBy(apply) {
12473
+ const el = this.inputEl()?.nativeElement;
12474
+ if (!el || !this.isInteractive()) {
12475
+ return;
12476
+ }
12477
+ // Delegates to the native spinbutton so bounds, step, and grid-snapping
12478
+ // match arrow-key stepping exactly.
12479
+ apply(el);
12480
+ this.commitFromElement(true);
12481
+ el.focus();
12482
+ }
12483
+ // Reads the element, optionally clamps into the effective bounds, and emits
12484
+ // only when the value actually changed (so a no-op blur does not dirty a form
12485
+ // control or fire a spurious `changed`).
12486
+ commitFromElement(clamp) {
12487
+ const el = this.inputEl()?.nativeElement;
12488
+ if (!el) {
12489
+ return;
12490
+ }
12491
+ let next = el.value === '' || Number.isNaN(el.valueAsNumber) ? null : el.valueAsNumber;
12492
+ if (clamp && next != null) {
12493
+ const clamped = this.clampToBounds(next);
12494
+ if (clamped !== next) {
12495
+ next = clamped;
12496
+ el.value = String(next);
12497
+ }
12498
+ }
12499
+ if (next === this.value()) {
12500
+ return;
12501
+ }
12502
+ this.value.set(next);
12503
+ this.onChange(next);
12504
+ this.changed.emit(next);
12505
+ }
12506
+ clampToBounds(num) {
12507
+ const min = this.effectiveMin();
12508
+ const max = this.max();
12509
+ if (min != null && num < min) {
12510
+ return min;
12511
+ }
12512
+ if (max != null && num > max) {
12513
+ return max;
12514
+ }
12515
+ return num;
12516
+ }
12517
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: NumberInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
12518
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.16", type: NumberInputComponent, isStandalone: true, selector: "ea-number-input", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: false, transformFunction: null }, errorMsg: { classPropertyName: "errorMsg", publicName: "errorMsg", isSignal: true, isRequired: false, transformFunction: null }, errorMessages: { classPropertyName: "errorMessages", publicName: "errorMessages", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, min: { classPropertyName: "min", publicName: "min", isSignal: true, isRequired: false, transformFunction: null }, max: { classPropertyName: "max", publicName: "max", isSignal: true, isRequired: false, transformFunction: null }, step: { classPropertyName: "step", publicName: "step", isSignal: true, isRequired: false, transformFunction: null }, allowNegative: { classPropertyName: "allowNegative", publicName: "allowNegative", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", changed: "changed", focused: "focused", blurred: "blurred" }, providers: [
12519
+ {
12520
+ provide: NG_VALUE_ACCESSOR,
12521
+ useExisting: forwardRef(() => NumberInputComponent),
12522
+ multi: true,
12523
+ },
12524
+ ], viewQueries: [{ propertyName: "inputEl", first: true, predicate: ["inputEl"], descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"ea-number-input-field\">\n @if (label(); as labelText) {\n <ea-field-label\n [text]=\"labelText\"\n [forId]=\"id()\"\n [required]=\"required()\" />\n }\n\n <div\n class=\"ea-number-input-wrapper\"\n [ngClass]=\"wrapperClasses()\">\n <input\n #inputEl\n type=\"number\"\n class=\"ea-number-input\"\n dir=\"auto\"\n [id]=\"id()\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"isDisabled()\"\n [readOnly]=\"readonly()\"\n [required]=\"required()\"\n [attr.min]=\"effectiveMin() ?? null\"\n [attr.max]=\"max() ?? null\"\n [attr.step]=\"step()\"\n [attr.aria-label]=\"ariaLabel() ?? null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n hasError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (input)=\"handleInput()\"\n (keydown)=\"handleKeydown($event)\"\n (wheel)=\"handleWheel($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\" />\n\n <div class=\"ea-number-input-wrapper__steppers\">\n <button\n type=\"button\"\n tabindex=\"-1\"\n class=\"ea-number-input-wrapper__step\"\n [disabled]=\"!canIncrement()\"\n [attr.aria-label]=\"i18n.messages().numberInput.increment\"\n (mousedown)=\"onStepMousedown($event)\"\n (click)=\"increment()\">\n <ea-icon-chevron-up class=\"ea-number-input-wrapper__step-icon\" />\n </button>\n <button\n type=\"button\"\n tabindex=\"-1\"\n class=\"ea-number-input-wrapper__step\"\n [disabled]=\"!canDecrement()\"\n [attr.aria-label]=\"i18n.messages().numberInput.decrement\"\n (mousedown)=\"onStepMousedown($event)\"\n (click)=\"decrement()\">\n <ea-icon-chevron-down class=\"ea-number-input-wrapper__step-icon\" />\n </button>\n </div>\n </div>\n\n <ea-field-messages\n [id]=\"id()\"\n [error]=\"errorText()\"\n [hint]=\"showHint() ? hint() : null\" />\n</div>\n", styles: [".ea-number-input-field{display:flex;flex-direction:column;gap:var(--space-1-5);color:var(--color-text-secondary)}.ea-number-input-wrapper{overflow:hidden;display:flex;align-items:center;gap:.25em;min-height:2.5em;padding-block:0;padding-inline:.75em .5em;border:var(--border-width-thin) solid var(--color-border-default);border-radius:var(--radius-md);background-color:var(--color-bg-base);color:var(--color-text-secondary);transition:var(--transition-colors),var(--transition-shadow)}.ea-number-input-wrapper--xs{font-size:var(--font-size-xs)}.ea-number-input-wrapper--sm{font-size:var(--font-size-sm)}.ea-number-input-wrapper--md{font-size:var(--font-size-md)}.ea-number-input-wrapper--lg{font-size:var(--font-size-lg)}.ea-number-input-wrapper--xl{font-size:var(--font-size-xl)}.ea-number-input-wrapper--focused{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus-ring)}@media(forced-colors:active){.ea-number-input-wrapper--focused{outline:2px solid Highlight;outline-offset:2px}}.ea-number-input-wrapper--error{border-color:var(--color-error-default)}.ea-number-input-wrapper--error.ea-number-input-wrapper--focused{box-shadow:var(--shadow-focus-ring-error)}@media(forced-colors:active){.ea-number-input-wrapper--error.ea-number-input-wrapper--focused{outline:2px solid Highlight;outline-offset:2px}}.ea-number-input-wrapper--disabled{border-color:var(--color-border-default);background-color:var(--color-bg-muted);cursor:not-allowed;opacity:.6}.ea-number-input-wrapper--disabled .ea-number-input{cursor:not-allowed}.ea-number-input-wrapper--readonly{background-color:var(--color-bg-subtle)}.ea-number-input-wrapper__steppers{display:flex;flex-direction:column;flex-shrink:0}.ea-number-input-wrapper__step{display:flex;align-items:center;justify-content:center;width:1.5em;height:1.1em;padding:0;border:none;border-radius:var(--radius-xs);background:none;color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-colors)}.ea-number-input-wrapper__step:hover:not(:disabled){background-color:var(--color-state-hover);color:var(--color-text-primary)}.ea-number-input-wrapper__step:disabled{cursor:not-allowed;opacity:.4}.ea-number-input-wrapper__step-icon{width:.875em;height:.875em;pointer-events:none}.ea-number-input{flex:1;width:100%;min-width:0;padding:.5em 0;font-family:var(--font-family-sans);line-height:var(--line-height-normal);border:none;outline:none;background:transparent;color:var(--color-text-primary);appearance:textfield;-moz-appearance:textfield}.ea-number-input::placeholder{color:var(--color-text-tertiary);opacity:1}.ea-number-input:disabled{cursor:not-allowed}.ea-number-input::-webkit-inner-spin-button,.ea-number-input::-webkit-outer-spin-button{margin:0;appearance:none;-webkit-appearance:none}\n"], dependencies: [{ kind: "component", type: ChevronDownIconComponent, selector: "ea-icon-chevron-down" }, { kind: "component", type: ChevronUpIconComponent, selector: "ea-icon-chevron-up" }, { kind: "component", type: FieldLabelComponent, selector: "ea-field-label", inputs: ["text", "forId", "required", "labelId"] }, { kind: "component", type: FieldMessagesComponent, selector: "ea-field-messages", inputs: ["id", "error", "hint"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
12525
+ }
12526
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: NumberInputComponent, decorators: [{
12527
+ type: Component,
12528
+ args: [{ selector: 'ea-number-input', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
12529
+ ChevronDownIconComponent,
12530
+ ChevronUpIconComponent,
12531
+ FieldLabelComponent,
12532
+ FieldMessagesComponent,
12533
+ NgClass,
12534
+ ], providers: [
12535
+ {
12536
+ provide: NG_VALUE_ACCESSOR,
12537
+ useExisting: forwardRef(() => NumberInputComponent),
12538
+ multi: true,
12539
+ },
12540
+ ], template: "<div class=\"ea-number-input-field\">\n @if (label(); as labelText) {\n <ea-field-label\n [text]=\"labelText\"\n [forId]=\"id()\"\n [required]=\"required()\" />\n }\n\n <div\n class=\"ea-number-input-wrapper\"\n [ngClass]=\"wrapperClasses()\">\n <input\n #inputEl\n type=\"number\"\n class=\"ea-number-input\"\n dir=\"auto\"\n [id]=\"id()\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"isDisabled()\"\n [readOnly]=\"readonly()\"\n [required]=\"required()\"\n [attr.min]=\"effectiveMin() ?? null\"\n [attr.max]=\"max() ?? null\"\n [attr.step]=\"step()\"\n [attr.aria-label]=\"ariaLabel() ?? null\"\n [attr.aria-invalid]=\"hasError() || null\"\n [attr.aria-describedby]=\"\n hasError() ? id() + '-error' : showHint() ? id() + '-hint' : null\n \"\n (input)=\"handleInput()\"\n (keydown)=\"handleKeydown($event)\"\n (wheel)=\"handleWheel($event)\"\n (focus)=\"handleFocus($event)\"\n (blur)=\"handleBlur($event)\" />\n\n <div class=\"ea-number-input-wrapper__steppers\">\n <button\n type=\"button\"\n tabindex=\"-1\"\n class=\"ea-number-input-wrapper__step\"\n [disabled]=\"!canIncrement()\"\n [attr.aria-label]=\"i18n.messages().numberInput.increment\"\n (mousedown)=\"onStepMousedown($event)\"\n (click)=\"increment()\">\n <ea-icon-chevron-up class=\"ea-number-input-wrapper__step-icon\" />\n </button>\n <button\n type=\"button\"\n tabindex=\"-1\"\n class=\"ea-number-input-wrapper__step\"\n [disabled]=\"!canDecrement()\"\n [attr.aria-label]=\"i18n.messages().numberInput.decrement\"\n (mousedown)=\"onStepMousedown($event)\"\n (click)=\"decrement()\">\n <ea-icon-chevron-down class=\"ea-number-input-wrapper__step-icon\" />\n </button>\n </div>\n </div>\n\n <ea-field-messages\n [id]=\"id()\"\n [error]=\"errorText()\"\n [hint]=\"showHint() ? hint() : null\" />\n</div>\n", styles: [".ea-number-input-field{display:flex;flex-direction:column;gap:var(--space-1-5);color:var(--color-text-secondary)}.ea-number-input-wrapper{overflow:hidden;display:flex;align-items:center;gap:.25em;min-height:2.5em;padding-block:0;padding-inline:.75em .5em;border:var(--border-width-thin) solid var(--color-border-default);border-radius:var(--radius-md);background-color:var(--color-bg-base);color:var(--color-text-secondary);transition:var(--transition-colors),var(--transition-shadow)}.ea-number-input-wrapper--xs{font-size:var(--font-size-xs)}.ea-number-input-wrapper--sm{font-size:var(--font-size-sm)}.ea-number-input-wrapper--md{font-size:var(--font-size-md)}.ea-number-input-wrapper--lg{font-size:var(--font-size-lg)}.ea-number-input-wrapper--xl{font-size:var(--font-size-xl)}.ea-number-input-wrapper--focused{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus-ring)}@media(forced-colors:active){.ea-number-input-wrapper--focused{outline:2px solid Highlight;outline-offset:2px}}.ea-number-input-wrapper--error{border-color:var(--color-error-default)}.ea-number-input-wrapper--error.ea-number-input-wrapper--focused{box-shadow:var(--shadow-focus-ring-error)}@media(forced-colors:active){.ea-number-input-wrapper--error.ea-number-input-wrapper--focused{outline:2px solid Highlight;outline-offset:2px}}.ea-number-input-wrapper--disabled{border-color:var(--color-border-default);background-color:var(--color-bg-muted);cursor:not-allowed;opacity:.6}.ea-number-input-wrapper--disabled .ea-number-input{cursor:not-allowed}.ea-number-input-wrapper--readonly{background-color:var(--color-bg-subtle)}.ea-number-input-wrapper__steppers{display:flex;flex-direction:column;flex-shrink:0}.ea-number-input-wrapper__step{display:flex;align-items:center;justify-content:center;width:1.5em;height:1.1em;padding:0;border:none;border-radius:var(--radius-xs);background:none;color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-colors)}.ea-number-input-wrapper__step:hover:not(:disabled){background-color:var(--color-state-hover);color:var(--color-text-primary)}.ea-number-input-wrapper__step:disabled{cursor:not-allowed;opacity:.4}.ea-number-input-wrapper__step-icon{width:.875em;height:.875em;pointer-events:none}.ea-number-input{flex:1;width:100%;min-width:0;padding:.5em 0;font-family:var(--font-family-sans);line-height:var(--line-height-normal);border:none;outline:none;background:transparent;color:var(--color-text-primary);appearance:textfield;-moz-appearance:textfield}.ea-number-input::placeholder{color:var(--color-text-tertiary);opacity:1}.ea-number-input:disabled{cursor:not-allowed}.ea-number-input::-webkit-inner-spin-button,.ea-number-input::-webkit-outer-spin-button{margin:0;appearance:none;-webkit-appearance:none}\n"] }]
12541
+ }], ctorParameters: () => [], propDecorators: { inputEl: [{ type: i0.ViewChild, args: ['inputEl', { isSignal: true }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], hint: [{ type: i0.Input, args: [{ isSignal: true, alias: "hint", required: false }] }], errorMsg: [{ type: i0.Input, args: [{ isSignal: true, alias: "errorMsg", required: false }] }], errorMessages: [{ type: i0.Input, args: [{ isSignal: true, alias: "errorMessages", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], min: [{ type: i0.Input, args: [{ isSignal: true, alias: "min", required: false }] }], max: [{ type: i0.Input, args: [{ isSignal: true, alias: "max", required: false }] }], step: [{ type: i0.Input, args: [{ isSignal: true, alias: "step", required: false }] }], allowNegative: [{ type: i0.Input, args: [{ isSignal: true, alias: "allowNegative", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "aria-label", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], changed: [{ type: i0.Output, args: ["changed"] }], focused: [{ type: i0.Output, args: ["focused"] }], blurred: [{ type: i0.Output, args: ["blurred"] }] } });
12542
+
12195
12543
  /** Whether the runtime's `Intl` actually has number data for `locale` rather
12196
12544
  * than silently negotiating down to a default (as reduced-ICU builds do). */
12197
12545
  function intlLocalizes(locale) {
@@ -14038,58 +14386,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImpo
14038
14386
  ], template: "<div class=\"ea-textarea-field\">\n @if (label(); as labelText) {\n <ea-field-label\n [text]=\"labelText\"\n [forId]=\"id()\"\n [required]=\"required()\" />\n }\n\n <div\n class=\"ea-textarea-wrapper\"\n [ngClass]=\"wrapperClasses()\"\n [style.resize]=\"resize()\"\n [style.min-height]=\"minHeightStyle()\"\n [style.max-height.px]=\"maxHeight() ?? null\">\n <textarea\n #textareaEl\n class=\"ea-textarea\"\n dir=\"auto\"\n [id]=\"id()\"\n [placeholder]=\"placeholder()\"\n [disabled]=\"isDisabled()\"\n [readOnly]=\"readonly()\"\n [required]=\"required()\"\n [value]=\"value()\"\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 <ea-field-messages\n [id]=\"id()\"\n [error]=\"errorText()\"\n [hint]=\"showHint() ? hint() : null\" />\n</div>\n", styles: [".ea-textarea-field{display:flex;flex-direction:column;gap:var(--space-1-5);color:var(--color-text-secondary)}.ea-textarea-wrapper{display:flex;min-width:12em;background-color:var(--color-bg-base);border:var(--border-width-thin) solid var(--color-border-default);border-radius:var(--radius-md);transition:var(--transition-colors),var(--transition-shadow);overflow:hidden}.ea-textarea-wrapper--xs{font-size:var(--font-size-xs)}.ea-textarea-wrapper--sm{font-size:var(--font-size-sm)}.ea-textarea-wrapper--md{font-size:var(--font-size-md)}.ea-textarea-wrapper--lg{font-size:var(--font-size-lg)}.ea-textarea-wrapper--xl{font-size:var(--font-size-xl)}.ea-textarea-wrapper--focused{border-color:var(--color-border-focus);box-shadow:var(--shadow-focus-ring)}@media(forced-colors:active){.ea-textarea-wrapper--focused{outline:2px solid Highlight;outline-offset:2px}}.ea-textarea-wrapper--error{border-color:var(--color-error-default)}.ea-textarea-wrapper--error.ea-textarea-wrapper--focused{box-shadow:var(--shadow-focus-ring-error)}@media(forced-colors:active){.ea-textarea-wrapper--error.ea-textarea-wrapper--focused{outline:2px solid Highlight;outline-offset:2px}}.ea-textarea-wrapper--disabled{background-color:var(--color-bg-muted);border-color:var(--color-border-default);cursor:not-allowed;opacity:.6}.ea-textarea-wrapper--disabled .ea-textarea{cursor:not-allowed}.ea-textarea-wrapper--readonly{background-color:var(--color-bg-subtle)}.ea-textarea{flex:1;width:100%;min-width:0;padding:.75em;background:transparent;border:none;outline:none;resize:none;color:var(--color-text-primary);font-family:var(--font-family-sans);line-height:var(--line-height-normal)}.ea-textarea::placeholder{color:var(--color-text-tertiary)}.ea-textarea:disabled{cursor:not-allowed}\n"] }]
14039
14387
  }], propDecorators: { textareaEl: [{ type: i0.ViewChild, args: ['textareaEl', { isSignal: true }] }], label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], hint: [{ type: i0.Input, args: [{ isSignal: true, alias: "hint", required: false }] }], errorMsg: [{ type: i0.Input, args: [{ isSignal: true, alias: "errorMsg", required: false }] }], errorMessages: [{ type: i0.Input, args: [{ isSignal: true, alias: "errorMessages", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], resize: [{ type: i0.Input, args: [{ isSignal: true, alias: "resize", required: false }] }], maxlength: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxlength", required: false }] }], maxHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "maxHeight", required: false }] }], minHeight: [{ type: i0.Input, args: [{ isSignal: true, alias: "minHeight", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], value: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }, { type: i0.Output, args: ["valueChange"] }], focused: [{ type: i0.Output, args: ["focused"] }], blurred: [{ type: i0.Output, args: ["blurred"] }] } });
14040
14388
 
14041
- class ChevronUpIconComponent extends IconComponentBase {
14042
- static slug = 'chevron-up';
14043
- static category = 'feather';
14044
- static tags = [
14045
- 'chevron-up',
14046
- 'chevron',
14047
- 'up',
14048
- 'arrow',
14049
- 'collapse',
14050
- 'haut',
14051
- 'arriba',
14052
- 'πάνω',
14053
- 'góra',
14054
- ];
14055
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ChevronUpIconComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
14056
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.16", type: ChevronUpIconComponent, isStandalone: true, selector: "ea-icon-chevron-up", usesInheritance: true, ngImport: i0, template: `
14057
- <svg
14058
- viewBox="0 0 24 24"
14059
- fill="none"
14060
- stroke="currentColor"
14061
- [attr.stroke-width]="strokeWidth()"
14062
- stroke-linecap="round"
14063
- stroke-linejoin="round"
14064
- aria-hidden="true"
14065
- width="100%"
14066
- height="100%">
14067
- <polyline points="18 15 12 9 6 15" />
14068
- </svg>
14069
- `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
14070
- }
14071
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: ChevronUpIconComponent, decorators: [{
14072
- type: Component,
14073
- args: [{
14074
- selector: 'ea-icon-chevron-up',
14075
- changeDetection: ChangeDetectionStrategy.OnPush,
14076
- template: `
14077
- <svg
14078
- viewBox="0 0 24 24"
14079
- fill="none"
14080
- stroke="currentColor"
14081
- [attr.stroke-width]="strokeWidth()"
14082
- stroke-linecap="round"
14083
- stroke-linejoin="round"
14084
- aria-hidden="true"
14085
- width="100%"
14086
- height="100%">
14087
- <polyline points="18 15 12 9 6 15" />
14088
- </svg>
14089
- `,
14090
- }]
14091
- }] });
14092
-
14093
14389
  class ClockIconComponent extends IconComponentBase {
14094
14390
  static slug = 'clock';
14095
14391
  static category = 'feather';
@@ -38260,5 +38556,5 @@ const ICONS = [
38260
38556
  * Generated bundle index. Do not edit.
38261
38557
  */
38262
38558
 
38263
- export { AccordionComponent, AccordionItemComponent, ActivityIconComponent, AirplayIconComponent, AlertCircleIconComponent, AlertComponent, AlertOctagonIconComponent, AlertTriangleIconComponent, AlignCenterIconComponent, AlignJustifyIconComponent, AlignLeftIconComponent, AlignRightIconComponent, AnchorIconComponent, AnthropicIconComponent, ApertureIconComponent, ArchiveIconComponent, ArrowDownCircleIconComponent, ArrowDownIconComponent, ArrowDownLeftIconComponent, ArrowDownRightIconComponent, ArrowLeftCircleIconComponent, ArrowLeftIconComponent, ArrowRightCircleIconComponent, ArrowRightIconComponent, ArrowUpCircleIconComponent, ArrowUpIconComponent, ArrowUpLeftIconComponent, ArrowUpRightIconComponent, AtSignIconComponent, AutocompleteComponent, AvatarComponent, AvatarEditorComponent, AwardIconComponent, BadgeCheckIconComponent, BadgeComponent, BarChart2IconComponent, BarChartIconComponent, BatteryChargingIconComponent, BatteryIconComponent, BellIconComponent, BellOffIconComponent, BitcoinIconComponent, BluetoothIconComponent, BoldIconComponent, BookIconComponent, BookOpenIconComponent, BookmarkCheckIconComponent, BookmarkIconComponent, BotIconComponent, BottleIconComponent, BoxIconComponent, BrainIconComponent, BreadcrumbsComponent, BriefcaseIconComponent, ButtonComponent, CalendarCheckIconComponent, CalendarIconComponent, CameraIconComponent, CameraOffIconComponent, CandleIconComponent, CardComponent, CastIconComponent, CheckCircleIconComponent, CheckIconComponent, CheckSquareIconComponent, CheckboxComponent, ChevronDownIconComponent, ChevronLeftIconComponent, ChevronRightIconComponent, ChevronUpIconComponent, ChevronsDownIconComponent, ChevronsLeftIconComponent, ChevronsRightIconComponent, ChevronsUpDownIconComponent, ChevronsUpIconComponent, ChromeIconComponent, CircleIconComponent, ClipboardCheckIconComponent, ClipboardIconComponent, ClockIconComponent, CloudDrizzleIconComponent, CloudIconComponent, CloudLightningIconComponent, CloudOffIconComponent, CloudRainIconComponent, CloudSnowIconComponent, CloudflareIconComponent, CodeIconComponent, CodeInputComponent, CodepenIconComponent, CodesandboxIconComponent, CoffeeIconComponent, CoinsIconComponent, ColorPickerComponent, ColumnsIconComponent, CommandIconComponent, CommandPaletteComponent, CompassIconComponent, CopyIconComponent, CornerDownLeftIconComponent, CornerDownRightIconComponent, CornerLeftDownIconComponent, CornerLeftUpIconComponent, CornerRightDownIconComponent, CornerRightUpIconComponent, CornerUpLeftIconComponent, CornerUpRightIconComponent, CpuIconComponent, CreditCardIconComponent, CropIconComponent, CrosshairIconComponent, DEFAULT_PALETTE_ROLES, DataTableComponent, DatabaseIconComponent, DatePickerComponent, DeleteIconComponent, DialogComponent, DiscIconComponent, DiscordIconComponent, DivideCircleIconComponent, DivideIconComponent, DivideSquareIconComponent, DividerComponent, DockerIconComponent, DollarSignIconComponent, DownloadCloudIconComponent, DownloadIconComponent, DrawerComponent, DribbbleIconComponent, DropboxIconComponent, DropdownComponent, DropletIconComponent, EAGAMI_ALL_LOCALES, EAGAMI_I18N_CONFIG, EAGAMI_LOCALES, EAGAMI_LOCALE_META, EagamiI18nService, EagamiIconComponent, EagamiWordmarkComponent, Edit2IconComponent, Edit3IconComponent, EditIconComponent, EmptyStateComponent, ExternalLinkIconComponent, EyeIconComponent, EyeOffIconComponent, Facebook2IconComponent, FacebookIconComponent, FastForwardIconComponent, FeatherIconComponent, FieldLabelComponent, FieldMessagesComponent, Figma2IconComponent, FigmaIconComponent, FileIconComponent, FileMinusIconComponent, FilePlusIconComponent, FileTextIconComponent, FileUploaderComponent, FilmIconComponent, FilterIconComponent, FilterXIconComponent, FingerprintIconComponent, FlagIconComponent, FlameIconComponent, FolderIconComponent, FolderMinusIconComponent, FolderPlusIconComponent, FormFieldComponent, FramerIconComponent, FrownIconComponent, GaugeIconComponent, GeminiIconComponent, GiftIconComponent, GitBranchIconComponent, GitCommitIconComponent, GitMergeIconComponent, GitPullRequestIconComponent, Github2IconComponent, GithubIconComponent, GitlabIconComponent, GlobeIconComponent, GoogleIconComponent, GridIconComponent, HalfCircleIconComponent, HalfHeartIconComponent, HardDriveIconComponent, HashIconComponent, HeadphonesIconComponent, HeartIconComponent, HelpCircleIconComponent, HeptagonIconComponent, HexagonIconComponent, HomeIconComponent, ICONS, IconComponentBase, ImageIconComponent, InboxIconComponent, InfoIconComponent, InputComponent, InstagramIconComponent, ItalicIconComponent, KeyIconComponent, KubernetesIconComponent, LampIconComponent, LayersIconComponent, LayoutIconComponent, LeafIconComponent, LeftHalfStarIconComponent, LifeBuoyIconComponent, Link2IconComponent, LinkIconComponent, Linkedin2IconComponent, LinkedinIconComponent, ListChecksIconComponent, ListIconComponent, LoaderIconComponent, LockIconComponent, LogInIconComponent, LogOutIconComponent, MailIconComponent, MapIconComponent, MapPinIconComponent, MastercardIconComponent, Maximize2IconComponent, MaximizeIconComponent, MehIconComponent, MenuComponent, MenuIconComponent, MenuItemComponent, MenuTriggerDirective, MessageCircleIconComponent, MessageSquareIconComponent, MicIconComponent, MicOffIconComponent, MicrosoftIconComponent, Minimize2IconComponent, MinimizeIconComponent, MinusCircleIconComponent, MinusIconComponent, MinusSquareIconComponent, MongodbIconComponent, MonitorIconComponent, MoonIconComponent, MoreHorizontalIconComponent, MoreVerticalIconComponent, MousePointerIconComponent, MoveIconComponent, MultiSelectComponent, MusicIconComponent, Navigation2IconComponent, NavigationIconComponent, NetlifyIconComponent, NotionIconComponent, NpmIconComponent, OctagonIconComponent, PackageIconComponent, PaginatorComponent, PaperclipIconComponent, PauseCircleIconComponent, PauseIconComponent, PaypalIconComponent, PenToolIconComponent, PentagonIconComponent, PercentIconComponent, PhoneCallIconComponent, PhoneForwardedIconComponent, PhoneIconComponent, PhoneIncomingIconComponent, PhoneMissedIconComponent, PhoneOffIconComponent, PhoneOutgoingIconComponent, PieChartIconComponent, PlayCircleIconComponent, PlayIconComponent, PlusCircleIconComponent, PlusIconComponent, PlusSquareIconComponent, PocketIconComponent, PopoverComponent, PowerIconComponent, PrinterIconComponent, ProgressBarComponent, QrCodeIconComponent, RadioComponent, RadioGroupComponent, RadioIconComponent, RangeSliderComponent, RatingComponent, ReactIconComponent, ReceiptIconComponent, RectangleHorizontalIconComponent, RectangleVerticalIconComponent, RedditIconComponent, RedoIconComponent, RefreshCcwIconComponent, RefreshCwIconComponent, RepeatIconComponent, RewindIconComponent, RightHalfStarIconComponent, RocketIconComponent, RotateCcwIconComponent, RotateCwIconComponent, RssIconComponent, SaveIconComponent, ScanIconComponent, ScissorsIconComponent, SearchIconComponent, SegmentedComponent, SendIconComponent, ServerIconComponent, SettingsIconComponent, Share2IconComponent, ShareIconComponent, ShieldIconComponent, ShieldOffIconComponent, ShoppingBagIconComponent, ShoppingCartIconComponent, ShuffleIconComponent, SidebarIconComponent, SkeletonComponent, SkipBackIconComponent, SkipForwardIconComponent, Slack2IconComponent, SlackIconComponent, SlashIconComponent, SliderComponent, SlidersIconComponent, SmartphoneIconComponent, SmileIconComponent, SnowflakeIconComponent, SoccerBallIconComponent, SparklesIconComponent, SpeakerIconComponent, SpinnerComponent, SpotifyIconComponent, SquareIconComponent, StarIconComponent, StepComponent, StepperComponent, StopCircleIconComponent, StripeIconComponent, SunIconComponent, SunriseIconComponent, SunsetIconComponent, SwitchComponent, TabComponent, TableIconComponent, TabletIconComponent, TabsComponent, TagComponent, TagIconComponent, TailwindIconComponent, TargetIconComponent, TelegramIconComponent, TerminalIconComponent, TextareaComponent, ThermometerIconComponent, ThreadsIconComponent, ThumbsDownIconComponent, ThumbsUpIconComponent, TiktokIconComponent, TimePickerComponent, ToastComponent, ToastService, ToggleLeftIconComponent, ToggleRightIconComponent, ToolIconComponent, TooltipDirective, TransferListComponent, Trash2IconComponent, TrashIconComponent, TreeComponent, TrelloIconComponent, TrendingDownIconComponent, TrendingUpIconComponent, TriangleIconComponent, TrophyIconComponent, TruckIconComponent, TvIconComponent, Twitch2IconComponent, TwitchIconComponent, TwitterIconComponent, TypeIconComponent, UmbrellaIconComponent, UnderlineIconComponent, UndoIconComponent, UnlockIconComponent, UploadCloudIconComponent, UploadIconComponent, UserCheckIconComponent, UserIconComponent, UserMinusIconComponent, UserPlusIconComponent, UserXIconComponent, UsersIconComponent, VercelIconComponent, VideoIconComponent, VideoOffIconComponent, VirtualListComponent, VoicemailIconComponent, Volume1IconComponent, Volume2IconComponent, VolumeIconComponent, VolumeXIconComponent, WCAG_AA, WalletIconComponent, WandIconComponent, WatchIconComponent, WhatsappIconComponent, WifiIconComponent, WifiOffIconComponent, WindIconComponent, XCircleIconComponent, XIconComponent, XOctagonIconComponent, XSquareIconComponent, XTwitterIconComponent, Youtube2IconComponent, YoutubeIconComponent, ZapIconComponent, ZapOffIconComponent, ZoomInIconComponent, ZoomOutIconComponent, applyPalette, computePopoverPosition, contrastRatio, de, derivePalette, el, en, esES, formatViolations, frFR, frenchSpacing, hexToOklch, iconDisplayName, is, nl, oklchToHex, pl, provideEagamiUi, ptBR, relativeLuminance, validatePalette, visibleNodeIds, walkTree, zhCN };
38559
+ export { AccordionComponent, AccordionItemComponent, ActivityIconComponent, AirplayIconComponent, AlertCircleIconComponent, AlertComponent, AlertOctagonIconComponent, AlertTriangleIconComponent, AlignCenterIconComponent, AlignJustifyIconComponent, AlignLeftIconComponent, AlignRightIconComponent, AnchorIconComponent, AnthropicIconComponent, ApertureIconComponent, ArchiveIconComponent, ArrowDownCircleIconComponent, ArrowDownIconComponent, ArrowDownLeftIconComponent, ArrowDownRightIconComponent, ArrowLeftCircleIconComponent, ArrowLeftIconComponent, ArrowRightCircleIconComponent, ArrowRightIconComponent, ArrowUpCircleIconComponent, ArrowUpIconComponent, ArrowUpLeftIconComponent, ArrowUpRightIconComponent, AtSignIconComponent, AutocompleteComponent, AvatarComponent, AvatarEditorComponent, AwardIconComponent, BadgeCheckIconComponent, BadgeComponent, BarChart2IconComponent, BarChartIconComponent, BatteryChargingIconComponent, BatteryIconComponent, BellIconComponent, BellOffIconComponent, BitcoinIconComponent, BluetoothIconComponent, BoldIconComponent, BookIconComponent, BookOpenIconComponent, BookmarkCheckIconComponent, BookmarkIconComponent, BotIconComponent, BottleIconComponent, BoxIconComponent, BrainIconComponent, BreadcrumbsComponent, BriefcaseIconComponent, ButtonComponent, CalendarCheckIconComponent, CalendarIconComponent, CameraIconComponent, CameraOffIconComponent, CandleIconComponent, CardComponent, CastIconComponent, CheckCircleIconComponent, CheckIconComponent, CheckSquareIconComponent, CheckboxComponent, ChevronDownIconComponent, ChevronLeftIconComponent, ChevronRightIconComponent, ChevronUpIconComponent, ChevronsDownIconComponent, ChevronsLeftIconComponent, ChevronsRightIconComponent, ChevronsUpDownIconComponent, ChevronsUpIconComponent, ChromeIconComponent, CircleIconComponent, ClipboardCheckIconComponent, ClipboardIconComponent, ClockIconComponent, CloudDrizzleIconComponent, CloudIconComponent, CloudLightningIconComponent, CloudOffIconComponent, CloudRainIconComponent, CloudSnowIconComponent, CloudflareIconComponent, CodeIconComponent, CodeInputComponent, CodepenIconComponent, CodesandboxIconComponent, CoffeeIconComponent, CoinsIconComponent, ColorPickerComponent, ColumnsIconComponent, CommandIconComponent, CommandPaletteComponent, CompassIconComponent, CopyIconComponent, CornerDownLeftIconComponent, CornerDownRightIconComponent, CornerLeftDownIconComponent, CornerLeftUpIconComponent, CornerRightDownIconComponent, CornerRightUpIconComponent, CornerUpLeftIconComponent, CornerUpRightIconComponent, CpuIconComponent, CreditCardIconComponent, CropIconComponent, CrosshairIconComponent, DEFAULT_PALETTE_ROLES, DataTableComponent, DatabaseIconComponent, DatePickerComponent, DeleteIconComponent, DialogComponent, DiscIconComponent, DiscordIconComponent, DivideCircleIconComponent, DivideIconComponent, DivideSquareIconComponent, DividerComponent, DockerIconComponent, DollarSignIconComponent, DownloadCloudIconComponent, DownloadIconComponent, DrawerComponent, DribbbleIconComponent, DropboxIconComponent, DropdownComponent, DropletIconComponent, EAGAMI_ALL_LOCALES, EAGAMI_I18N_CONFIG, EAGAMI_LOCALES, EAGAMI_LOCALE_META, EagamiI18nService, EagamiIconComponent, EagamiWordmarkComponent, Edit2IconComponent, Edit3IconComponent, EditIconComponent, EmptyStateComponent, ExternalLinkIconComponent, EyeIconComponent, EyeOffIconComponent, Facebook2IconComponent, FacebookIconComponent, FastForwardIconComponent, FeatherIconComponent, FieldLabelComponent, FieldMessagesComponent, Figma2IconComponent, FigmaIconComponent, FileIconComponent, FileMinusIconComponent, FilePlusIconComponent, FileTextIconComponent, FileUploaderComponent, FilmIconComponent, FilterIconComponent, FilterXIconComponent, FingerprintIconComponent, FlagIconComponent, FlameIconComponent, FolderIconComponent, FolderMinusIconComponent, FolderPlusIconComponent, FormFieldComponent, FramerIconComponent, FrownIconComponent, GaugeIconComponent, GeminiIconComponent, GiftIconComponent, GitBranchIconComponent, GitCommitIconComponent, GitMergeIconComponent, GitPullRequestIconComponent, Github2IconComponent, GithubIconComponent, GitlabIconComponent, GlobeIconComponent, GoogleIconComponent, GridIconComponent, HalfCircleIconComponent, HalfHeartIconComponent, HardDriveIconComponent, HashIconComponent, HeadphonesIconComponent, HeartIconComponent, HelpCircleIconComponent, HeptagonIconComponent, HexagonIconComponent, HomeIconComponent, ICONS, IconComponentBase, ImageIconComponent, InboxIconComponent, InfoIconComponent, InputComponent, InstagramIconComponent, ItalicIconComponent, KeyIconComponent, KubernetesIconComponent, LampIconComponent, LayersIconComponent, LayoutIconComponent, LeafIconComponent, LeftHalfStarIconComponent, LifeBuoyIconComponent, Link2IconComponent, LinkIconComponent, Linkedin2IconComponent, LinkedinIconComponent, ListChecksIconComponent, ListIconComponent, LoaderIconComponent, LockIconComponent, LogInIconComponent, LogOutIconComponent, MailIconComponent, MapIconComponent, MapPinIconComponent, MastercardIconComponent, Maximize2IconComponent, MaximizeIconComponent, MehIconComponent, MenuComponent, MenuIconComponent, MenuItemComponent, MenuTriggerDirective, MessageCircleIconComponent, MessageSquareIconComponent, MicIconComponent, MicOffIconComponent, MicrosoftIconComponent, Minimize2IconComponent, MinimizeIconComponent, MinusCircleIconComponent, MinusIconComponent, MinusSquareIconComponent, MongodbIconComponent, MonitorIconComponent, MoonIconComponent, MoreHorizontalIconComponent, MoreVerticalIconComponent, MousePointerIconComponent, MoveIconComponent, MultiSelectComponent, MusicIconComponent, Navigation2IconComponent, NavigationIconComponent, NetlifyIconComponent, NotionIconComponent, NpmIconComponent, NumberInputComponent, OctagonIconComponent, PackageIconComponent, PaginatorComponent, PaperclipIconComponent, PauseCircleIconComponent, PauseIconComponent, PaypalIconComponent, PenToolIconComponent, PentagonIconComponent, PercentIconComponent, PhoneCallIconComponent, PhoneForwardedIconComponent, PhoneIconComponent, PhoneIncomingIconComponent, PhoneMissedIconComponent, PhoneOffIconComponent, PhoneOutgoingIconComponent, PieChartIconComponent, PlayCircleIconComponent, PlayIconComponent, PlusCircleIconComponent, PlusIconComponent, PlusSquareIconComponent, PocketIconComponent, PopoverComponent, PowerIconComponent, PrinterIconComponent, ProgressBarComponent, QrCodeIconComponent, RadioComponent, RadioGroupComponent, RadioIconComponent, RangeSliderComponent, RatingComponent, ReactIconComponent, ReceiptIconComponent, RectangleHorizontalIconComponent, RectangleVerticalIconComponent, RedditIconComponent, RedoIconComponent, RefreshCcwIconComponent, RefreshCwIconComponent, RepeatIconComponent, RewindIconComponent, RightHalfStarIconComponent, RocketIconComponent, RotateCcwIconComponent, RotateCwIconComponent, RssIconComponent, SaveIconComponent, ScanIconComponent, ScissorsIconComponent, SearchIconComponent, SegmentedComponent, SendIconComponent, ServerIconComponent, SettingsIconComponent, Share2IconComponent, ShareIconComponent, ShieldIconComponent, ShieldOffIconComponent, ShoppingBagIconComponent, ShoppingCartIconComponent, ShuffleIconComponent, SidebarIconComponent, SkeletonComponent, SkipBackIconComponent, SkipForwardIconComponent, Slack2IconComponent, SlackIconComponent, SlashIconComponent, SliderComponent, SlidersIconComponent, SmartphoneIconComponent, SmileIconComponent, SnowflakeIconComponent, SoccerBallIconComponent, SparklesIconComponent, SpeakerIconComponent, SpinnerComponent, SpotifyIconComponent, SquareIconComponent, StarIconComponent, StepComponent, StepperComponent, StopCircleIconComponent, StripeIconComponent, SunIconComponent, SunriseIconComponent, SunsetIconComponent, SwitchComponent, TabComponent, TableIconComponent, TabletIconComponent, TabsComponent, TagComponent, TagIconComponent, TailwindIconComponent, TargetIconComponent, TelegramIconComponent, TerminalIconComponent, TextareaComponent, ThermometerIconComponent, ThreadsIconComponent, ThumbsDownIconComponent, ThumbsUpIconComponent, TiktokIconComponent, TimePickerComponent, ToastComponent, ToastService, ToggleLeftIconComponent, ToggleRightIconComponent, ToolIconComponent, TooltipDirective, TransferListComponent, Trash2IconComponent, TrashIconComponent, TreeComponent, TrelloIconComponent, TrendingDownIconComponent, TrendingUpIconComponent, TriangleIconComponent, TrophyIconComponent, TruckIconComponent, TvIconComponent, Twitch2IconComponent, TwitchIconComponent, TwitterIconComponent, TypeIconComponent, UmbrellaIconComponent, UnderlineIconComponent, UndoIconComponent, UnlockIconComponent, UploadCloudIconComponent, UploadIconComponent, UserCheckIconComponent, UserIconComponent, UserMinusIconComponent, UserPlusIconComponent, UserXIconComponent, UsersIconComponent, VercelIconComponent, VideoIconComponent, VideoOffIconComponent, VirtualListComponent, VoicemailIconComponent, Volume1IconComponent, Volume2IconComponent, VolumeIconComponent, VolumeXIconComponent, WCAG_AA, WalletIconComponent, WandIconComponent, WatchIconComponent, WhatsappIconComponent, WifiIconComponent, WifiOffIconComponent, WindIconComponent, XCircleIconComponent, XIconComponent, XOctagonIconComponent, XSquareIconComponent, XTwitterIconComponent, Youtube2IconComponent, YoutubeIconComponent, ZapIconComponent, ZapOffIconComponent, ZoomInIconComponent, ZoomOutIconComponent, applyPalette, computePopoverPosition, contrastRatio, de, derivePalette, el, en, esES, formatViolations, frFR, frenchSpacing, hexToOklch, iconDisplayName, is, nl, oklchToHex, pl, provideEagamiUi, ptBR, relativeLuminance, validatePalette, visibleNodeIds, walkTree, zhCN };
38264
38560
  //# sourceMappingURL=eagami-ui.mjs.map