@eagami/ui 5.1.0 → 5.2.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,8 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, makeEnvironmentProviders, provideEnvironmentInitializer, signal, inject, effect, computed, Injectable, input, ChangeDetectionStrategy, Component, HostBinding, Directive, model, output, Injector, DestroyRef, afterNextRender, viewChild, ElementRef, HostListener, forwardRef, Renderer2, untracked, ViewEncapsulation, contentChild, viewChildren, PLATFORM_ID } from '@angular/core';
2
+ import { InjectionToken, makeEnvironmentProviders, provideEnvironmentInitializer, signal, inject, effect, computed, Injectable, input, ChangeDetectionStrategy, Component, HostBinding, Directive, model, output, Injector, afterNextRender, DestroyRef, viewChild, ElementRef, HostListener, forwardRef, Renderer2, untracked, ViewEncapsulation, contentChild, viewChildren, PLATFORM_ID } from '@angular/core';
3
3
  import { NgClass, NgComponentOutlet, NgTemplateOutlet, isPlatformBrowser } from '@angular/common';
4
4
  import { NgControl, NG_VALUE_ACCESSOR } from '@angular/forms';
5
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
6
5
 
7
6
  /**
8
7
  * Display name, flag, and reading direction for every built-in locale, in
@@ -4063,33 +4062,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImpo
4063
4062
  * `errorMsg`, a consumer `errorMessages` override, then the library's localized
4064
4063
  * default for the active `ValidationErrors` key. Auto-derived messages surface
4065
4064
  * only once the bound control is `invalid && touched`, matching the moment a
4066
- * user expects validation feedback.
4067
- *
4068
- * The bound `NgControl` is resolved lazily from the injector rather than via
4069
- * constructor injection: a control that provides `NG_VALUE_ACCESSOR` cannot
4070
- * also inject its own `NgControl` directly without a circular dependency.
4071
- * `afterNextRender` defers resolution to the browser, after the host directive
4072
- * (`formControl` / `ngModel`) exists, so the server render simply shows no
4073
- * error (an untouched control never does).
4065
+ * user expects validation feedback. The control arrives as a signal so callers
4066
+ * decide how it is resolved: from the host's own `NgControl` (CVA components)
4067
+ * or from projected content (`<ea-form-field>`).
4074
4068
  */
4075
- function injectControlErrorState(config) {
4076
- const injector = inject(Injector);
4069
+ function controlErrorStateFrom(control, config) {
4077
4070
  const i18n = inject(EagamiI18nService);
4078
- const destroyRef = inject(DestroyRef);
4079
- const control = signal(null, ...(ngDevMode ? [{ debugName: "control" }] : /* istanbul ignore next */ []));
4080
4071
  // Bumped on every status/touched change so the computed re-reads the control.
4081
4072
  const revision = signal(0, ...(ngDevMode ? [{ debugName: "revision" }] : /* istanbul ignore next */ []));
4082
- afterNextRender(() => {
4083
- const ngControl = injector.get(NgControl, null);
4084
- const ctrl = ngControl?.control ?? null;
4073
+ effect(onCleanup => {
4074
+ const ctrl = control();
4085
4075
  if (!ctrl) {
4086
4076
  return;
4087
4077
  }
4088
- control.set(ctrl);
4089
- ctrl.events.pipe(takeUntilDestroyed(destroyRef)).subscribe(() => {
4090
- revision.update(r => r + 1);
4091
- });
4092
- }, { injector });
4078
+ const sub = ctrl.events.subscribe(() => revision.update(r => r + 1));
4079
+ onCleanup(() => sub.unsubscribe());
4080
+ });
4093
4081
  const autoError = computed(() => {
4094
4082
  revision();
4095
4083
  const ctrl = control();
@@ -4102,6 +4090,24 @@ function injectControlErrorState(config) {
4102
4090
  const hasError = computed(() => error() !== null, ...(ngDevMode ? [{ debugName: "hasError" }] : /* istanbul ignore next */ []));
4103
4091
  return { error, hasError };
4104
4092
  }
4093
+ /**
4094
+ * `controlErrorStateFrom` for a component hosting its own form directive.
4095
+ *
4096
+ * The bound `NgControl` is resolved lazily from the injector rather than via
4097
+ * constructor injection: a control that provides `NG_VALUE_ACCESSOR` cannot
4098
+ * also inject its own `NgControl` directly without a circular dependency.
4099
+ * `afterNextRender` defers resolution to the browser, after the host directive
4100
+ * (`formControl` / `ngModel`) exists, so the server render simply shows no
4101
+ * error (an untouched control never does).
4102
+ */
4103
+ function injectControlErrorState(config) {
4104
+ const injector = inject(Injector);
4105
+ const control = signal(null, ...(ngDevMode ? [{ debugName: "control" }] : /* istanbul ignore next */ []));
4106
+ afterNextRender(() => {
4107
+ control.set(injector.get(NgControl, null)?.control ?? null);
4108
+ }, { injector });
4109
+ return controlErrorStateFrom(control, config);
4110
+ }
4105
4111
  /**
4106
4112
  * Picks the first active error key and resolves its message: a consumer
4107
4113
  * override wins, otherwise the localized built-in default (interpolating the
@@ -10141,6 +10147,109 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImpo
10141
10147
  args: [{ selector: 'ea-empty-state', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgClass, NgComponentOutlet], template: "<div\n class=\"ea-empty-state\"\n [ngClass]=\"hostClasses()\">\n <div class=\"ea-empty-state__media\">\n @if (icon(); as iconComponent) {\n <ng-container *ngComponentOutlet=\"iconComponent\" />\n }\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", styles: [".ea-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75em;padding:2em 1.5em;text-align:center;font-family:var(--font-family-sans);color:var(--color-text-secondary)}.ea-empty-state--xs{font-size:var(--font-size-xs)}.ea-empty-state--sm{font-size:var(--font-size-sm)}.ea-empty-state--md{font-size:var(--font-size-md)}.ea-empty-state--lg{font-size:var(--font-size-lg)}.ea-empty-state--xl{font-size:var(--font-size-xl)}.ea-empty-state--bordered{border:var(--border-width-medium) dashed var(--color-border-default);border-radius:var(--radius-xl)}.ea-empty-state__media{display:flex;align-items:center;justify-content:center;font-size:3em;color:var(--ea-empty-state-media-color, var(--color-text-tertiary))}.ea-empty-state__media:empty{display:none}.ea-empty-state__title{margin:0;font-size:1.125em;font-weight:var(--ea-empty-state-title-font-weight, var(--font-weight-semibold));line-height:var(--line-height-tight);color:var(--ea-empty-state-title-color, var(--color-text-primary))}.ea-empty-state__description{max-width:32em;margin:0;font-size:1em;line-height:var(--line-height-normal);color:var(--ea-empty-state-description-color, var(--color-text-secondary))}.ea-empty-state__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5em;margin-top:.5em}.ea-empty-state__actions:empty{display:none}\n"] }]
10142
10148
  }], propDecorators: { title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], headingLevel: [{ type: i0.Input, args: [{ isSignal: true, alias: "headingLevel", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], bordered: [{ type: i0.Input, args: [{ isSignal: true, alias: "bordered", required: false }] }] } });
10143
10149
 
10150
+ /**
10151
+ * Wraps a projected native control (`input`, `select`, or `textarea`) in the
10152
+ * library's standard field chrome: a label with required marker, a hint, and
10153
+ * error messages, including localized validation errors auto-derived from a
10154
+ * bound reactive or template-driven control. The label's `for` and the
10155
+ * control's `aria-describedby`, `aria-invalid`, and `aria-required` are wired
10156
+ * automatically. The eagami form components render this chrome themselves; use
10157
+ * this wrapper so native or custom controls read as part of the same form.
10158
+ *
10159
+ * The label and aria wiring attach in the browser after render, since the
10160
+ * projected control can't be reached before it exists; the server ships the
10161
+ * plain markup and the associations complete on hydration.
10162
+ */
10163
+ class FormFieldComponent {
10164
+ host = inject(ElementRef);
10165
+ /** Text label rendered above the control. */
10166
+ label = input(undefined, ...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
10167
+ /** Helper text shown below the control; hidden while an error is showing. */
10168
+ hint = input(undefined, ...(ngDevMode ? [{ debugName: "hint" }] : /* istanbul ignore next */ []));
10169
+ /** Error message shown below the control; replaces the hint and flags the field invalid. */
10170
+ errorMsg = input(undefined, ...(ngDevMode ? [{ debugName: "errorMsg" }] : /* istanbul ignore next */ []));
10171
+ /** Per-validator-key message overrides for the projected form control (e.g. `{ required: '...' }`). */
10172
+ errorMessages = input(undefined, ...(ngDevMode ? [{ debugName: "errorMessages" }] : /* istanbul ignore next */ []));
10173
+ /** Marks the field as required. */
10174
+ required = input(false, ...(ngDevMode ? [{ debugName: "required" }] : /* istanbul ignore next */ []));
10175
+ /** id seed for the label and message wiring; auto-generated when omitted. */
10176
+ id = input(uniqueId('ea-form-field'), ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
10177
+ ngControl = contentChild(NgControl, ...(ngDevMode ? [{ debugName: "ngControl" }] : /* istanbul ignore next */ []));
10178
+ rendered = signal(false, ...(ngDevMode ? [{ debugName: "rendered" }] : /* istanbul ignore next */ []));
10179
+ controlEl = signal(null, ...(ngDevMode ? [{ debugName: "controlEl" }] : /* istanbul ignore next */ []));
10180
+ // The consumer's own aria-describedby, captured before this component starts
10181
+ // managing the attribute so external references survive message toggling
10182
+ baseDescribedBy = null;
10183
+ controlId = computed(() => this.controlEl()?.id, ...(ngDevMode ? [{ debugName: "controlId" }] : /* istanbul ignore next */ []));
10184
+ boundControl = computed(() => this.rendered() ? (this.ngControl()?.control ?? null) : null, ...(ngDevMode ? [{ debugName: "boundControl" }] : /* istanbul ignore next */ []));
10185
+ errorState = controlErrorStateFrom(this.boundControl, {
10186
+ errorMsg: this.errorMsg,
10187
+ errorMessages: this.errorMessages,
10188
+ });
10189
+ errorText = this.errorState.error;
10190
+ hasError = this.errorState.hasError;
10191
+ showHint = computed(() => !!this.hint() && !this.hasError(), ...(ngDevMode ? [{ debugName: "showHint" }] : /* istanbul ignore next */ []));
10192
+ constructor() {
10193
+ // Browser-only: the server render ships the plain markup and the label and
10194
+ // aria wiring attach after hydration
10195
+ afterNextRender(() => this.rendered.set(true));
10196
+ effect(() => {
10197
+ if (!this.rendered()) {
10198
+ return;
10199
+ }
10200
+ // Re-locate the control when the projected form directive swaps
10201
+ this.ngControl();
10202
+ const el = this.host.nativeElement.querySelector('input, select, textarea');
10203
+ if (el && el !== this.controlEl()) {
10204
+ this.baseDescribedBy = el.getAttribute('aria-describedby');
10205
+ if (!el.id) {
10206
+ el.id = `${this.id()}-control`;
10207
+ }
10208
+ }
10209
+ this.controlEl.set(el);
10210
+ });
10211
+ effect(() => {
10212
+ const el = this.controlEl();
10213
+ if (!el) {
10214
+ return;
10215
+ }
10216
+ const message = this.hasError()
10217
+ ? `${this.id()}-error`
10218
+ : this.showHint()
10219
+ ? `${this.id()}-hint`
10220
+ : null;
10221
+ const describedBy = [this.baseDescribedBy, message].filter(Boolean).join(' ');
10222
+ if (describedBy) {
10223
+ el.setAttribute('aria-describedby', describedBy);
10224
+ }
10225
+ else {
10226
+ el.removeAttribute('aria-describedby');
10227
+ }
10228
+ if (this.hasError()) {
10229
+ el.setAttribute('aria-invalid', 'true');
10230
+ }
10231
+ else {
10232
+ el.removeAttribute('aria-invalid');
10233
+ }
10234
+ // aria-required rather than the native attribute: the projected control
10235
+ // may already carry reactive-forms validators, so only the state is
10236
+ // conveyed, without altering native constraint validation
10237
+ if (this.required()) {
10238
+ el.setAttribute('aria-required', 'true');
10239
+ }
10240
+ else {
10241
+ el.removeAttribute('aria-required');
10242
+ }
10243
+ });
10244
+ }
10245
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: FormFieldComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
10246
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.16", type: FormFieldComponent, isStandalone: true, selector: "ea-form-field", inputs: { label: { classPropertyName: "label", publicName: "label", 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 }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "ngControl", first: true, predicate: NgControl, descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"ea-form-field\">\n @if (label(); as labelText) {\n <ea-field-label\n [text]=\"labelText\"\n [forId]=\"controlId()\"\n [required]=\"required()\" />\n }\n\n <ng-content />\n\n <ea-field-messages\n [id]=\"id()\"\n [error]=\"errorText()\"\n [hint]=\"showHint() ? hint() : null\" />\n</div>\n", styles: [".ea-form-field{display:flex;flex-direction:column;gap:var(--space-1-5);color:var(--color-text-secondary)}\n"], dependencies: [{ 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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
10247
+ }
10248
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: FormFieldComponent, decorators: [{
10249
+ type: Component,
10250
+ args: [{ selector: 'ea-form-field', changeDetection: ChangeDetectionStrategy.OnPush, imports: [FieldLabelComponent, FieldMessagesComponent], template: "<div class=\"ea-form-field\">\n @if (label(); as labelText) {\n <ea-field-label\n [text]=\"labelText\"\n [forId]=\"controlId()\"\n [required]=\"required()\" />\n }\n\n <ng-content />\n\n <ea-field-messages\n [id]=\"id()\"\n [error]=\"errorText()\"\n [hint]=\"showHint() ? hint() : null\" />\n</div>\n", styles: [".ea-form-field{display:flex;flex-direction:column;gap:var(--space-1-5);color:var(--color-text-secondary)}\n"] }]
10251
+ }], ctorParameters: () => [], propDecorators: { label: [{ type: i0.Input, args: [{ isSignal: true, alias: "label", 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 }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], ngControl: [{ type: i0.ContentChild, args: [i0.forwardRef(() => NgControl), { isSignal: true }] }] } });
10252
+
10144
10253
  class ArchiveIconComponent extends IconComponentBase {
10145
10254
  static slug = 'archive';
10146
10255
  static category = 'feather';
@@ -38137,5 +38246,5 @@ const ICONS = [
38137
38246
  * Generated bundle index. Do not edit.
38138
38247
  */
38139
38248
 
38140
- 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, 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 };
38249
+ 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 };
38141
38250
  //# sourceMappingURL=eagami-ui.mjs.map