@senior-ease/ui 0.1.4 → 0.1.6

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.
@@ -3,7 +3,7 @@ import * as i0 from '@angular/core';
3
3
  import { Input, Component, EventEmitter, Output, inject, signal, effect, Injectable } from '@angular/core';
4
4
  import * as i1 from '@fortawesome/angular-fontawesome';
5
5
  import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
6
- import { faUser, faEnvelope, faHouse, faClock, faCheck, faChartLine, faCalendarDay, faBookOpen, faBell } from '@fortawesome/free-solid-svg-icons';
6
+ import { faUniversalAccess, faUser, faEnvelope, faHouse, faClock, faCheck, faChartLine, faCalendarDay, faBookOpen, faBell } from '@fortawesome/free-solid-svg-icons';
7
7
  import { RouterLink, RouterLinkActive } from '@angular/router';
8
8
 
9
9
  class AvatarComponent {
@@ -117,6 +117,7 @@ class IconComponent {
117
117
  home: faHouse,
118
118
  message: faEnvelope,
119
119
  user: faUser,
120
+ accessibility: faUniversalAccess
120
121
  };
121
122
  get resolvedIcon() {
122
123
  return this.icon ?? this.iconMap[nameOrFallback(this.name)];
@@ -206,11 +207,11 @@ class NavItemComponent {
206
207
  return typeof this.icon === 'string' ? null : this.icon;
207
208
  }
208
209
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: NavItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
209
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: NavItemComponent, isStandalone: true, selector: "ui-nav-item", inputs: { label: "label", icon: "icon", description: "description", active: "active", disabled: "disabled", ariaLabel: "ariaLabel", routerLink: "routerLink" }, ngImport: i0, template: "@if (routerLink && !disabled) {\n <a\n class=\"ui-nav-item\"\n [routerLink]=\"routerLink\"\n routerLinkActive=\"ui-nav-item--active\"\n [class.ui-nav-item--active]=\"active\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </a>\n} @else {\n <button\n class=\"ui-nav-item\"\n type=\"button\"\n [disabled]=\"disabled\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n [class.ui-nav-item--active]=\"active\"\n [class.ui-nav-item--disabled]=\"disabled\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </button>\n}\n", styles: [":host{display:block}.ui-nav-item{align-items:center;background:transparent;border:var(--ui-border-width) solid transparent;border-radius:var(--ui-radius-md);color:var(--ui-color-text);cursor:pointer;display:grid;gap:var(--ui-space-3);grid-template-columns:auto minmax(0,1fr);padding:var(--ui-space-3);text-align:left;text-decoration:none;transition:background-color .16s ease,border-color .16s ease,color .16s ease;width:100%}.ui-nav-item:not(.ui-nav-item--disabled):hover{background:var(--ui-color-surface-muted)}.ui-nav-item:focus-visible{outline:.1875rem solid var(--ui-color-focus-ring);outline-offset:.125rem}.ui-nav-item--active{background:var(--ui-color-primary-soft);border-color:var(--ui-color-primary);color:var(--ui-color-primary-strong)}.ui-nav-item__icon{align-items:center;background:var(--ui-color-surface);border-radius:var(--ui-radius-round);color:inherit;display:inline-flex;height:var(--ui-space-8);justify-content:center;width:var(--ui-space-8)}.ui-nav-item--active .ui-nav-item__icon{background:var(--ui-color-text-inverse)}.ui-nav-item__copy{display:grid;gap:var(--ui-space-1)}.ui-nav-item--disabled{cursor:not-allowed;opacity:.5}:host-context(.ui-theme-high-contrast) .ui-nav-item,:host-context(.theme-high-contrast) .ui-nav-item{border-color:var(--ui-color-border)}:host-context(.ui-theme-high-contrast) .ui-nav-item:not(.ui-nav-item--disabled):hover,:host-context(.theme-high-contrast) .ui-nav-item:not(.ui-nav-item--disabled):hover{background:#1a1a00;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-nav-item--active,:host-context(.theme-high-contrast) .ui-nav-item--active{background:#1a1a00;border-color:#ff0;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-nav-item__icon,:host-context(.theme-high-contrast) .ui-nav-item__icon{background:#000;border:var(--ui-border-width) solid #3a3a3a}:host-context(.ui-theme-high-contrast) .ui-nav-item--active .ui-nav-item__icon,:host-context(.theme-high-contrast) .ui-nav-item--active .ui-nav-item__icon{background:#000;border-color:#ff0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["name", "icon", "decorative", "ariaLabel"] }, { kind: "component", type: TextComponent, selector: "ui-text", inputs: ["element", "tone", "weight", "size"] }] });
210
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: NavItemComponent, isStandalone: true, selector: "ui-nav-item", inputs: { label: "label", icon: "icon", description: "description", active: "active", disabled: "disabled", ariaLabel: "ariaLabel", routerLink: "routerLink" }, ngImport: i0, template: "@if (routerLink && !disabled) {\n <a\n class=\"ui-nav-item\"\n [routerLink]=\"routerLink\"\n routerLinkActive=\"ui-nav-item--active\"\n [class.ui-nav-item--active]=\"active\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </a>\n} @else {\n <button\n class=\"ui-nav-item\"\n type=\"button\"\n [disabled]=\"disabled\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n [class.ui-nav-item--active]=\"active\"\n [class.ui-nav-item--disabled]=\"disabled\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </button>\n}\n", styles: [":host{display:block}.ui-nav-item{align-items:center;background:transparent;border:var(--ui-border-width) solid transparent;border-radius:var(--ui-radius-md);color:var(--ui-color-text);cursor:pointer;display:grid;gap:var(--ui-space-3);grid-template-columns:auto minmax(0,1fr);padding:var(--ui-space-3);text-align:left;text-decoration:none;transition:background-color .16s ease,border-color .16s ease,color .16s ease;width:100%}.ui-nav-item:not(.ui-nav-item--disabled):hover{background:var(--ui-color-surface-muted)}.ui-nav-item:focus-visible{outline:.1875rem solid var(--ui-color-focus-ring);outline-offset:.125rem}.ui-nav-item--active{background:var(--ui-color-primary-soft);border-color:var(--ui-color-primary);color:var(--ui-color-primary-strong)}.ui-nav-item__icon{align-items:center;background:var(--ui-color-surface);border-radius:var(--ui-radius-round);color:inherit;display:inline-flex;height:var(--ui-space-8);justify-content:center;width:var(--ui-space-8)}.ui-nav-item--active .ui-nav-item__icon{background:var(--ui-color-text-inverse)}.ui-nav-item__copy{display:grid;gap:var(--ui-space-1)}.ui-nav-item--disabled{cursor:not-allowed;opacity:.5}:host-context(.ui-theme-high-contrast) .ui-nav-item,:host-context(.theme-high-contrast) .ui-nav-item{border-color:transparent}:host-context(.ui-theme-high-contrast) .ui-nav-item:not(.ui-nav-item--disabled):hover,:host-context(.theme-high-contrast) .ui-nav-item:not(.ui-nav-item--disabled):hover{background:#1a1a00;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-nav-item--active,:host-context(.theme-high-contrast) .ui-nav-item--active{background:#1a1a00;border-color:transparent;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-nav-item__icon,:host-context(.theme-high-contrast) .ui-nav-item__icon{background:#000;border:0}:host-context(.ui-theme-high-contrast) .ui-nav-item--active .ui-nav-item__icon,:host-context(.theme-high-contrast) .ui-nav-item--active .ui-nav-item__icon{background:#000;border:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["name", "icon", "decorative", "ariaLabel"] }, { kind: "component", type: TextComponent, selector: "ui-text", inputs: ["element", "tone", "weight", "size"] }] });
210
211
  }
211
212
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: NavItemComponent, decorators: [{
212
213
  type: Component,
213
- args: [{ selector: 'ui-nav-item', standalone: true, imports: [CommonModule, RouterLink, RouterLinkActive, IconComponent, TextComponent], template: "@if (routerLink && !disabled) {\n <a\n class=\"ui-nav-item\"\n [routerLink]=\"routerLink\"\n routerLinkActive=\"ui-nav-item--active\"\n [class.ui-nav-item--active]=\"active\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </a>\n} @else {\n <button\n class=\"ui-nav-item\"\n type=\"button\"\n [disabled]=\"disabled\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n [class.ui-nav-item--active]=\"active\"\n [class.ui-nav-item--disabled]=\"disabled\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </button>\n}\n", styles: [":host{display:block}.ui-nav-item{align-items:center;background:transparent;border:var(--ui-border-width) solid transparent;border-radius:var(--ui-radius-md);color:var(--ui-color-text);cursor:pointer;display:grid;gap:var(--ui-space-3);grid-template-columns:auto minmax(0,1fr);padding:var(--ui-space-3);text-align:left;text-decoration:none;transition:background-color .16s ease,border-color .16s ease,color .16s ease;width:100%}.ui-nav-item:not(.ui-nav-item--disabled):hover{background:var(--ui-color-surface-muted)}.ui-nav-item:focus-visible{outline:.1875rem solid var(--ui-color-focus-ring);outline-offset:.125rem}.ui-nav-item--active{background:var(--ui-color-primary-soft);border-color:var(--ui-color-primary);color:var(--ui-color-primary-strong)}.ui-nav-item__icon{align-items:center;background:var(--ui-color-surface);border-radius:var(--ui-radius-round);color:inherit;display:inline-flex;height:var(--ui-space-8);justify-content:center;width:var(--ui-space-8)}.ui-nav-item--active .ui-nav-item__icon{background:var(--ui-color-text-inverse)}.ui-nav-item__copy{display:grid;gap:var(--ui-space-1)}.ui-nav-item--disabled{cursor:not-allowed;opacity:.5}:host-context(.ui-theme-high-contrast) .ui-nav-item,:host-context(.theme-high-contrast) .ui-nav-item{border-color:var(--ui-color-border)}:host-context(.ui-theme-high-contrast) .ui-nav-item:not(.ui-nav-item--disabled):hover,:host-context(.theme-high-contrast) .ui-nav-item:not(.ui-nav-item--disabled):hover{background:#1a1a00;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-nav-item--active,:host-context(.theme-high-contrast) .ui-nav-item--active{background:#1a1a00;border-color:#ff0;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-nav-item__icon,:host-context(.theme-high-contrast) .ui-nav-item__icon{background:#000;border:var(--ui-border-width) solid #3a3a3a}:host-context(.ui-theme-high-contrast) .ui-nav-item--active .ui-nav-item__icon,:host-context(.theme-high-contrast) .ui-nav-item--active .ui-nav-item__icon{background:#000;border-color:#ff0}\n"] }]
214
+ args: [{ selector: 'ui-nav-item', standalone: true, imports: [CommonModule, RouterLink, RouterLinkActive, IconComponent, TextComponent], template: "@if (routerLink && !disabled) {\n <a\n class=\"ui-nav-item\"\n [routerLink]=\"routerLink\"\n routerLinkActive=\"ui-nav-item--active\"\n [class.ui-nav-item--active]=\"active\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </a>\n} @else {\n <button\n class=\"ui-nav-item\"\n type=\"button\"\n [disabled]=\"disabled\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n [class.ui-nav-item--active]=\"active\"\n [class.ui-nav-item--disabled]=\"disabled\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </button>\n}\n", styles: [":host{display:block}.ui-nav-item{align-items:center;background:transparent;border:var(--ui-border-width) solid transparent;border-radius:var(--ui-radius-md);color:var(--ui-color-text);cursor:pointer;display:grid;gap:var(--ui-space-3);grid-template-columns:auto minmax(0,1fr);padding:var(--ui-space-3);text-align:left;text-decoration:none;transition:background-color .16s ease,border-color .16s ease,color .16s ease;width:100%}.ui-nav-item:not(.ui-nav-item--disabled):hover{background:var(--ui-color-surface-muted)}.ui-nav-item:focus-visible{outline:.1875rem solid var(--ui-color-focus-ring);outline-offset:.125rem}.ui-nav-item--active{background:var(--ui-color-primary-soft);border-color:var(--ui-color-primary);color:var(--ui-color-primary-strong)}.ui-nav-item__icon{align-items:center;background:var(--ui-color-surface);border-radius:var(--ui-radius-round);color:inherit;display:inline-flex;height:var(--ui-space-8);justify-content:center;width:var(--ui-space-8)}.ui-nav-item--active .ui-nav-item__icon{background:var(--ui-color-text-inverse)}.ui-nav-item__copy{display:grid;gap:var(--ui-space-1)}.ui-nav-item--disabled{cursor:not-allowed;opacity:.5}:host-context(.ui-theme-high-contrast) .ui-nav-item,:host-context(.theme-high-contrast) .ui-nav-item{border-color:transparent}:host-context(.ui-theme-high-contrast) .ui-nav-item:not(.ui-nav-item--disabled):hover,:host-context(.theme-high-contrast) .ui-nav-item:not(.ui-nav-item--disabled):hover{background:#1a1a00;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-nav-item--active,:host-context(.theme-high-contrast) .ui-nav-item--active{background:#1a1a00;border-color:transparent;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-nav-item__icon,:host-context(.theme-high-contrast) .ui-nav-item__icon{background:#000;border:0}:host-context(.ui-theme-high-contrast) .ui-nav-item--active .ui-nav-item__icon,:host-context(.theme-high-contrast) .ui-nav-item--active .ui-nav-item__icon{background:#000;border:0}\n"] }]
214
215
  }], propDecorators: { label: [{
215
216
  type: Input
216
217
  }], icon: [{
@@ -369,7 +370,7 @@ class SidebarComponent {
369
370
  return typeof item.icon === 'string' || !item.icon ? null : item.icon;
370
371
  }
371
372
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: SidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
372
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: SidebarComponent, isStandalone: true, selector: "ui-sidebar", inputs: { brand: "brand", subtitle: "subtitle", userName: "userName", userRole: "userRole", userInitials: "userInitials", items: "items", navAriaLabel: "navAriaLabel", mobileNavAriaLabel: "mobileNavAriaLabel" }, ngImport: i0, template: "<aside class=\"ui-sidebar ui-sidebar__desktop\">\n <div class=\"ui-sidebar__brand\">\n <span class=\"ui-sidebar__mark\">SE</span>\n <div class=\"ui-sidebar__brand-copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ brand }}</ui-text>\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ subtitle }}</ui-text>\n </div>\n </div>\n\n <nav class=\"ui-sidebar__nav\" [attr.aria-label]=\"navAriaLabel\">\n <ul class=\"ui-sidebar__list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__list-item\">\n <ui-nav-item\n [label]=\"item.label\"\n [icon]=\"item.icon ?? 'home'\"\n [description]=\"item.description ?? ''\"\n [active]=\"item.active ?? false\"\n [disabled]=\"item.disabled ?? false\"\n [ariaLabel]=\"item.ariaLabel ?? item.label\"\n [routerLink]=\"item.path ?? null\"\n ></ui-nav-item>\n </li>\n }\n </ul>\n </nav>\n\n <ui-divider></ui-divider>\n\n <ui-user-info\n [name]=\"userName\"\n [role]=\"userRole\"\n [initials]=\"userInitials\"\n ariaLabel=\"Informacoes do usuario\"\n size=\"sm\"\n ></ui-user-info>\n</aside>\n\n<nav class=\"ui-sidebar__mobile-nav\" [attr.aria-label]=\"mobileNavAriaLabel\">\n <ul class=\"ui-sidebar__mobile-list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__mobile-item\">\n @if (!item.disabled && item.path) {\n <a\n class=\"ui-sidebar__mobile-link\"\n [routerLink]=\"item.path\"\n routerLinkActive=\"ui-sidebar__mobile-link--active\"\n [attr.aria-label]=\"item.ariaLabel ?? item.label\"\n >\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </a>\n } @else if (!item.disabled) {\n <button class=\"ui-sidebar__mobile-link\" type=\"button\" [attr.aria-label]=\"item.ariaLabel ?? item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </button>\n } @else {\n <span class=\"ui-sidebar__mobile-link ui-sidebar__mobile-link--disabled\" [attr.aria-label]=\"item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </span>\n }\n </li>\n }\n </ul>\n</nav>\n", styles: [":host{display:block;height:100%}.ui-sidebar{background:var(--ui-color-surface)}.ui-sidebar__desktop{border-right:var(--ui-border-width) solid var(--ui-color-border);display:grid;gap:var(--ui-space-5);grid-template-rows:auto 1fr auto auto;height:100%;padding:var(--ui-space-6)}.ui-sidebar__brand{align-items:center;display:grid;gap:var(--ui-space-3);grid-template-columns:auto minmax(0,1fr)}.ui-sidebar__mark{align-items:center;background:var(--ui-color-primary-strong);border-radius:var(--ui-radius-round);color:var(--ui-color-text-inverse);display:inline-flex;font-size:var(--ui-font-size-200);font-weight:var(--ui-font-weight-semibold);height:var(--ui-space-8);justify-content:center;width:var(--ui-space-8)}.ui-sidebar__brand-copy,.ui-sidebar__nav{display:grid;gap:var(--ui-space-2)}.ui-sidebar__list{display:grid;gap:var(--ui-space-2);list-style:none;margin:0;padding:0}.ui-sidebar__list-item{margin:0;padding:0}.ui-sidebar__mobile-nav{display:none}@media(max-width:72rem){.ui-sidebar__desktop{display:none}.ui-sidebar__mobile-nav{background:var(--ui-color-surface);border-top:var(--ui-border-width) solid var(--ui-color-border);bottom:0;display:block;left:0;padding-bottom:env(safe-area-inset-bottom);position:fixed;right:0;z-index:900}.ui-sidebar__mobile-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));height:var(--ui-layout-mobile-nav-height);list-style:none;margin:0;padding:0}.ui-sidebar__mobile-item{margin:0;padding:0}.ui-sidebar__mobile-link{align-items:center;background:transparent;border:0;color:var(--ui-color-text-muted);cursor:pointer;display:inline-flex;flex-direction:column;font-size:var(--ui-font-size-100);font-weight:var(--ui-font-weight-medium);gap:var(--ui-space-1);height:100%;justify-content:center;text-decoration:none;transition:background-color .16s ease,color .16s ease;width:100%}.ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover{background:var(--ui-color-surface-muted)}.ui-sidebar__mobile-link--active{color:var(--ui-color-primary-strong)}.ui-sidebar__mobile-link--disabled{cursor:not-allowed;opacity:.45}.ui-sidebar__mobile-link:focus-visible{outline:.1875rem solid var(--ui-color-focus-ring);outline-offset:-.1875rem}.ui-sidebar__mobile-label{line-height:1}}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-nav,:host-context(.theme-high-contrast) .ui-sidebar__mobile-nav{background:#000;border-top-color:#3a3a3a}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link{color:#f0f0f0}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover{background:#1a1a00;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link--active,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link--active{background:#1a1a00;box-shadow:inset 0 0 0 var(--ui-border-width) #ff0;color:#ff0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: DividerComponent, selector: "ui-divider", inputs: ["orientation", "ariaLabel"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["name", "icon", "decorative", "ariaLabel"] }, { kind: "component", type: NavItemComponent, selector: "ui-nav-item", inputs: ["label", "icon", "description", "active", "disabled", "ariaLabel", "routerLink"] }, { kind: "component", type: TextComponent, selector: "ui-text", inputs: ["element", "tone", "weight", "size"] }, { kind: "component", type: UserInfoComponent, selector: "ui-user-info", inputs: ["name", "role", "initials", "size", "ariaLabel"] }] });
373
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.5", type: SidebarComponent, isStandalone: true, selector: "ui-sidebar", inputs: { brand: "brand", subtitle: "subtitle", userName: "userName", userRole: "userRole", userInitials: "userInitials", items: "items", navAriaLabel: "navAriaLabel", mobileNavAriaLabel: "mobileNavAriaLabel" }, ngImport: i0, template: "<aside class=\"ui-sidebar ui-sidebar__desktop\">\n <div class=\"ui-sidebar__brand\">\n <span class=\"ui-sidebar__mark\">SE</span>\n <div class=\"ui-sidebar__brand-copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ brand }}</ui-text>\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ subtitle }}</ui-text>\n </div>\n </div>\n\n <nav class=\"ui-sidebar__nav\" [attr.aria-label]=\"navAriaLabel\">\n <ul class=\"ui-sidebar__list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__list-item\">\n <ui-nav-item\n [label]=\"item.label\"\n [icon]=\"item.icon ?? 'home'\"\n [description]=\"item.description ?? ''\"\n [active]=\"item.active ?? false\"\n [disabled]=\"item.disabled ?? false\"\n [ariaLabel]=\"item.ariaLabel ?? item.label\"\n [routerLink]=\"item.path ?? null\"\n ></ui-nav-item>\n </li>\n }\n </ul>\n </nav>\n\n <ui-divider></ui-divider>\n\n <ui-user-info\n [name]=\"userName\"\n [role]=\"userRole\"\n [initials]=\"userInitials\"\n ariaLabel=\"Informacoes do usuario\"\n size=\"sm\"\n ></ui-user-info>\n</aside>\n\n<nav class=\"ui-sidebar__mobile-nav\" [attr.aria-label]=\"mobileNavAriaLabel\">\n <ul class=\"ui-sidebar__mobile-list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__mobile-item\">\n @if (!item.disabled && item.path) {\n <a\n class=\"ui-sidebar__mobile-link\"\n [routerLink]=\"item.path\"\n routerLinkActive=\"ui-sidebar__mobile-link--active\"\n [attr.aria-label]=\"item.ariaLabel ?? item.label\"\n >\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </a>\n } @else if (!item.disabled) {\n <button class=\"ui-sidebar__mobile-link\" type=\"button\" [attr.aria-label]=\"item.ariaLabel ?? item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </button>\n } @else {\n <span class=\"ui-sidebar__mobile-link ui-sidebar__mobile-link--disabled\" [attr.aria-label]=\"item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </span>\n }\n </li>\n }\n </ul>\n</nav>\n", styles: [":host{display:block;height:100%}.ui-sidebar{background:var(--ui-color-surface)}.ui-sidebar__desktop{border-right:var(--ui-border-width) solid var(--ui-color-border);display:grid;gap:var(--ui-space-5);grid-template-rows:auto 1fr auto auto;height:100%;padding:var(--ui-space-6)}.ui-sidebar__brand{align-items:center;display:grid;gap:var(--ui-space-3);grid-template-columns:auto minmax(0,1fr)}.ui-sidebar__mark{align-items:center;background:var(--ui-color-primary-strong);border-radius:var(--ui-radius-round);color:var(--ui-color-text-inverse);display:inline-flex;font-size:var(--ui-font-size-200);font-weight:var(--ui-font-weight-semibold);height:var(--ui-space-8);justify-content:center;width:var(--ui-space-8)}.ui-sidebar__brand-copy{display:grid;gap:var(--ui-space-1)}.ui-sidebar__nav{display:flex;flex-direction:column;gap:var(--ui-space-1)}.ui-sidebar__list{display:flex;flex-direction:column;gap:var(--ui-space-1);list-style:none;margin:0;padding:0}.ui-sidebar__list-item{margin:0;padding:0}.ui-sidebar__mobile-nav{display:none}@media(max-width:72rem){.ui-sidebar__desktop{display:none}.ui-sidebar__mobile-nav{background:var(--ui-color-surface);border-top:var(--ui-border-width) solid var(--ui-color-border);bottom:0;display:block;left:0;padding-bottom:env(safe-area-inset-bottom);position:fixed;right:0;z-index:900}.ui-sidebar__mobile-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));height:var(--ui-layout-mobile-nav-height);list-style:none;margin:0;padding:0}.ui-sidebar__mobile-item{margin:0;padding:0}.ui-sidebar__mobile-link{align-items:center;background:transparent;border:0;color:var(--ui-color-text-muted);cursor:pointer;display:inline-flex;flex-direction:column;font-size:var(--ui-font-size-100);font-weight:var(--ui-font-weight-medium);gap:var(--ui-space-1);height:100%;justify-content:center;text-decoration:none;transition:background-color .16s ease,color .16s ease;width:100%}.ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover{background:var(--ui-color-surface-muted)}.ui-sidebar__mobile-link--active{color:var(--ui-color-primary-strong)}.ui-sidebar__mobile-link--disabled{cursor:not-allowed;opacity:.45}.ui-sidebar__mobile-link:focus-visible{outline:.1875rem solid var(--ui-color-focus-ring);outline-offset:-.1875rem}.ui-sidebar__mobile-label{line-height:1}}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-nav,:host-context(.theme-high-contrast) .ui-sidebar__mobile-nav{background:#000;border-top:0}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link{color:#f0f0f0}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover{background:#1a1a00;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link--active,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link--active{background:#1a1a00;box-shadow:none;color:#ff0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: DividerComponent, selector: "ui-divider", inputs: ["orientation", "ariaLabel"] }, { kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["name", "icon", "decorative", "ariaLabel"] }, { kind: "component", type: NavItemComponent, selector: "ui-nav-item", inputs: ["label", "icon", "description", "active", "disabled", "ariaLabel", "routerLink"] }, { kind: "component", type: TextComponent, selector: "ui-text", inputs: ["element", "tone", "weight", "size"] }, { kind: "component", type: UserInfoComponent, selector: "ui-user-info", inputs: ["name", "role", "initials", "size", "ariaLabel"] }] });
373
374
  }
374
375
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: SidebarComponent, decorators: [{
375
376
  type: Component,
@@ -382,7 +383,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImpor
382
383
  NavItemComponent,
383
384
  TextComponent,
384
385
  UserInfoComponent,
385
- ], template: "<aside class=\"ui-sidebar ui-sidebar__desktop\">\n <div class=\"ui-sidebar__brand\">\n <span class=\"ui-sidebar__mark\">SE</span>\n <div class=\"ui-sidebar__brand-copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ brand }}</ui-text>\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ subtitle }}</ui-text>\n </div>\n </div>\n\n <nav class=\"ui-sidebar__nav\" [attr.aria-label]=\"navAriaLabel\">\n <ul class=\"ui-sidebar__list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__list-item\">\n <ui-nav-item\n [label]=\"item.label\"\n [icon]=\"item.icon ?? 'home'\"\n [description]=\"item.description ?? ''\"\n [active]=\"item.active ?? false\"\n [disabled]=\"item.disabled ?? false\"\n [ariaLabel]=\"item.ariaLabel ?? item.label\"\n [routerLink]=\"item.path ?? null\"\n ></ui-nav-item>\n </li>\n }\n </ul>\n </nav>\n\n <ui-divider></ui-divider>\n\n <ui-user-info\n [name]=\"userName\"\n [role]=\"userRole\"\n [initials]=\"userInitials\"\n ariaLabel=\"Informacoes do usuario\"\n size=\"sm\"\n ></ui-user-info>\n</aside>\n\n<nav class=\"ui-sidebar__mobile-nav\" [attr.aria-label]=\"mobileNavAriaLabel\">\n <ul class=\"ui-sidebar__mobile-list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__mobile-item\">\n @if (!item.disabled && item.path) {\n <a\n class=\"ui-sidebar__mobile-link\"\n [routerLink]=\"item.path\"\n routerLinkActive=\"ui-sidebar__mobile-link--active\"\n [attr.aria-label]=\"item.ariaLabel ?? item.label\"\n >\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </a>\n } @else if (!item.disabled) {\n <button class=\"ui-sidebar__mobile-link\" type=\"button\" [attr.aria-label]=\"item.ariaLabel ?? item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </button>\n } @else {\n <span class=\"ui-sidebar__mobile-link ui-sidebar__mobile-link--disabled\" [attr.aria-label]=\"item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </span>\n }\n </li>\n }\n </ul>\n</nav>\n", styles: [":host{display:block;height:100%}.ui-sidebar{background:var(--ui-color-surface)}.ui-sidebar__desktop{border-right:var(--ui-border-width) solid var(--ui-color-border);display:grid;gap:var(--ui-space-5);grid-template-rows:auto 1fr auto auto;height:100%;padding:var(--ui-space-6)}.ui-sidebar__brand{align-items:center;display:grid;gap:var(--ui-space-3);grid-template-columns:auto minmax(0,1fr)}.ui-sidebar__mark{align-items:center;background:var(--ui-color-primary-strong);border-radius:var(--ui-radius-round);color:var(--ui-color-text-inverse);display:inline-flex;font-size:var(--ui-font-size-200);font-weight:var(--ui-font-weight-semibold);height:var(--ui-space-8);justify-content:center;width:var(--ui-space-8)}.ui-sidebar__brand-copy,.ui-sidebar__nav{display:grid;gap:var(--ui-space-2)}.ui-sidebar__list{display:grid;gap:var(--ui-space-2);list-style:none;margin:0;padding:0}.ui-sidebar__list-item{margin:0;padding:0}.ui-sidebar__mobile-nav{display:none}@media(max-width:72rem){.ui-sidebar__desktop{display:none}.ui-sidebar__mobile-nav{background:var(--ui-color-surface);border-top:var(--ui-border-width) solid var(--ui-color-border);bottom:0;display:block;left:0;padding-bottom:env(safe-area-inset-bottom);position:fixed;right:0;z-index:900}.ui-sidebar__mobile-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));height:var(--ui-layout-mobile-nav-height);list-style:none;margin:0;padding:0}.ui-sidebar__mobile-item{margin:0;padding:0}.ui-sidebar__mobile-link{align-items:center;background:transparent;border:0;color:var(--ui-color-text-muted);cursor:pointer;display:inline-flex;flex-direction:column;font-size:var(--ui-font-size-100);font-weight:var(--ui-font-weight-medium);gap:var(--ui-space-1);height:100%;justify-content:center;text-decoration:none;transition:background-color .16s ease,color .16s ease;width:100%}.ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover{background:var(--ui-color-surface-muted)}.ui-sidebar__mobile-link--active{color:var(--ui-color-primary-strong)}.ui-sidebar__mobile-link--disabled{cursor:not-allowed;opacity:.45}.ui-sidebar__mobile-link:focus-visible{outline:.1875rem solid var(--ui-color-focus-ring);outline-offset:-.1875rem}.ui-sidebar__mobile-label{line-height:1}}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-nav,:host-context(.theme-high-contrast) .ui-sidebar__mobile-nav{background:#000;border-top-color:#3a3a3a}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link{color:#f0f0f0}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover{background:#1a1a00;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link--active,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link--active{background:#1a1a00;box-shadow:inset 0 0 0 var(--ui-border-width) #ff0;color:#ff0}\n"] }]
386
+ ], template: "<aside class=\"ui-sidebar ui-sidebar__desktop\">\n <div class=\"ui-sidebar__brand\">\n <span class=\"ui-sidebar__mark\">SE</span>\n <div class=\"ui-sidebar__brand-copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ brand }}</ui-text>\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ subtitle }}</ui-text>\n </div>\n </div>\n\n <nav class=\"ui-sidebar__nav\" [attr.aria-label]=\"navAriaLabel\">\n <ul class=\"ui-sidebar__list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__list-item\">\n <ui-nav-item\n [label]=\"item.label\"\n [icon]=\"item.icon ?? 'home'\"\n [description]=\"item.description ?? ''\"\n [active]=\"item.active ?? false\"\n [disabled]=\"item.disabled ?? false\"\n [ariaLabel]=\"item.ariaLabel ?? item.label\"\n [routerLink]=\"item.path ?? null\"\n ></ui-nav-item>\n </li>\n }\n </ul>\n </nav>\n\n <ui-divider></ui-divider>\n\n <ui-user-info\n [name]=\"userName\"\n [role]=\"userRole\"\n [initials]=\"userInitials\"\n ariaLabel=\"Informacoes do usuario\"\n size=\"sm\"\n ></ui-user-info>\n</aside>\n\n<nav class=\"ui-sidebar__mobile-nav\" [attr.aria-label]=\"mobileNavAriaLabel\">\n <ul class=\"ui-sidebar__mobile-list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__mobile-item\">\n @if (!item.disabled && item.path) {\n <a\n class=\"ui-sidebar__mobile-link\"\n [routerLink]=\"item.path\"\n routerLinkActive=\"ui-sidebar__mobile-link--active\"\n [attr.aria-label]=\"item.ariaLabel ?? item.label\"\n >\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </a>\n } @else if (!item.disabled) {\n <button class=\"ui-sidebar__mobile-link\" type=\"button\" [attr.aria-label]=\"item.ariaLabel ?? item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </button>\n } @else {\n <span class=\"ui-sidebar__mobile-link ui-sidebar__mobile-link--disabled\" [attr.aria-label]=\"item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </span>\n }\n </li>\n }\n </ul>\n</nav>\n", styles: [":host{display:block;height:100%}.ui-sidebar{background:var(--ui-color-surface)}.ui-sidebar__desktop{border-right:var(--ui-border-width) solid var(--ui-color-border);display:grid;gap:var(--ui-space-5);grid-template-rows:auto 1fr auto auto;height:100%;padding:var(--ui-space-6)}.ui-sidebar__brand{align-items:center;display:grid;gap:var(--ui-space-3);grid-template-columns:auto minmax(0,1fr)}.ui-sidebar__mark{align-items:center;background:var(--ui-color-primary-strong);border-radius:var(--ui-radius-round);color:var(--ui-color-text-inverse);display:inline-flex;font-size:var(--ui-font-size-200);font-weight:var(--ui-font-weight-semibold);height:var(--ui-space-8);justify-content:center;width:var(--ui-space-8)}.ui-sidebar__brand-copy{display:grid;gap:var(--ui-space-1)}.ui-sidebar__nav{display:flex;flex-direction:column;gap:var(--ui-space-1)}.ui-sidebar__list{display:flex;flex-direction:column;gap:var(--ui-space-1);list-style:none;margin:0;padding:0}.ui-sidebar__list-item{margin:0;padding:0}.ui-sidebar__mobile-nav{display:none}@media(max-width:72rem){.ui-sidebar__desktop{display:none}.ui-sidebar__mobile-nav{background:var(--ui-color-surface);border-top:var(--ui-border-width) solid var(--ui-color-border);bottom:0;display:block;left:0;padding-bottom:env(safe-area-inset-bottom);position:fixed;right:0;z-index:900}.ui-sidebar__mobile-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));height:var(--ui-layout-mobile-nav-height);list-style:none;margin:0;padding:0}.ui-sidebar__mobile-item{margin:0;padding:0}.ui-sidebar__mobile-link{align-items:center;background:transparent;border:0;color:var(--ui-color-text-muted);cursor:pointer;display:inline-flex;flex-direction:column;font-size:var(--ui-font-size-100);font-weight:var(--ui-font-weight-medium);gap:var(--ui-space-1);height:100%;justify-content:center;text-decoration:none;transition:background-color .16s ease,color .16s ease;width:100%}.ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover{background:var(--ui-color-surface-muted)}.ui-sidebar__mobile-link--active{color:var(--ui-color-primary-strong)}.ui-sidebar__mobile-link--disabled{cursor:not-allowed;opacity:.45}.ui-sidebar__mobile-link:focus-visible{outline:.1875rem solid var(--ui-color-focus-ring);outline-offset:-.1875rem}.ui-sidebar__mobile-label{line-height:1}}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-nav,:host-context(.theme-high-contrast) .ui-sidebar__mobile-nav{background:#000;border-top:0}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link{color:#f0f0f0}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link:not(.ui-sidebar__mobile-link--disabled):hover{background:#1a1a00;color:#ff0}:host-context(.ui-theme-high-contrast) .ui-sidebar__mobile-link--active,:host-context(.theme-high-contrast) .ui-sidebar__mobile-link--active{background:#1a1a00;box-shadow:none;color:#ff0}\n"] }]
386
387
  }], propDecorators: { brand: [{
387
388
  type: Input
388
389
  }], subtitle: [{
@@ -1 +1 @@
1
- {"version":3,"file":"senior-ease-ui.mjs","sources":["../../../projects/ui/src/lib/atoms/avatar/component.ts","../../../projects/ui/src/lib/atoms/avatar/component.html","../../../projects/ui/src/lib/atoms/badge/component.ts","../../../projects/ui/src/lib/atoms/badge/component.html","../../../projects/ui/src/lib/atoms/button/component.ts","../../../projects/ui/src/lib/atoms/button/component.html","../../../projects/ui/src/lib/atoms/divider/component.ts","../../../projects/ui/src/lib/atoms/divider/component.html","../../../projects/ui/src/lib/atoms/icon/component.ts","../../../projects/ui/src/lib/atoms/icon/component.html","../../../projects/ui/src/lib/atoms/text/component.ts","../../../projects/ui/src/lib/atoms/text/component.html","../../../projects/ui/src/lib/molecules/list-item/component.ts","../../../projects/ui/src/lib/molecules/list-item/component.html","../../../projects/ui/src/lib/molecules/nav-item/component.ts","../../../projects/ui/src/lib/molecules/nav-item/component.html","../../../projects/ui/src/lib/molecules/stat/component.ts","../../../projects/ui/src/lib/molecules/stat/component.html","../../../projects/ui/src/lib/molecules/user-info/component.ts","../../../projects/ui/src/lib/molecules/user-info/component.html","../../../projects/ui/src/lib/organisms/agenda-list/component.ts","../../../projects/ui/src/lib/organisms/agenda-list/component.html","../../../projects/ui/src/lib/organisms/header/component.ts","../../../projects/ui/src/lib/organisms/header/component.html","../../../projects/ui/src/lib/organisms/hero-card/component.ts","../../../projects/ui/src/lib/organisms/hero-card/component.html","../../../projects/ui/src/lib/organisms/materials-list/component.ts","../../../projects/ui/src/lib/organisms/materials-list/component.html","../../../projects/ui/src/lib/organisms/sidebar/component.ts","../../../projects/ui/src/lib/organisms/sidebar/component.html","../../../projects/ui/src/lib/organisms/stats-grid/component.ts","../../../projects/ui/src/lib/organisms/stats-grid/component.html","../../../projects/ui/src/lib/templates/dashboard-layout/component.ts","../../../projects/ui/src/lib/templates/dashboard-layout/component.html","../../../projects/ui/src/lib/utils/accessibility/accessibility.service.ts","../../../projects/ui/src/senior-ease-ui.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\n\nexport type AvatarSize = 'sm' | 'md' | 'lg';\nexport type AvatarTone = 'primary' | 'accent' | 'neutral';\n\n@Component({\n selector: 'ui-avatar',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class AvatarComponent {\n @Input() initials = 'SE';\n @Input() size: AvatarSize = 'md';\n @Input() tone: AvatarTone = 'primary';\n @Input() ariaLabel = '';\n}\n","<span\n class=\"ui-avatar\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.role]=\"ariaLabel ? 'img' : null\"\n [class.ui-avatar--sm]=\"size === 'sm'\"\n [class.ui-avatar--lg]=\"size === 'lg'\"\n [class.ui-avatar--accent]=\"tone === 'accent'\"\n [class.ui-avatar--neutral]=\"tone === 'neutral'\"\n>\n <ng-content>{{ initials }}</ng-content>\n</span>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\n\nexport type BadgeVariant = 'neutral' | 'primary' | 'success' | 'warning' | 'danger';\n\n@Component({\n selector: 'ui-badge',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class BadgeComponent {\n @Input() label = '';\n @Input() variant: BadgeVariant = 'neutral';\n @Input() ariaLabel = '';\n}\n","<span\n class=\"ui-badge\"\n [attr.aria-label]=\"ariaLabel || null\"\n [class.ui-badge--primary]=\"variant === 'primary'\"\n [class.ui-badge--success]=\"variant === 'success'\"\n [class.ui-badge--warning]=\"variant === 'warning'\"\n [class.ui-badge--danger]=\"variant === 'danger'\"\n>\n <ng-content>{{ label }}</ng-content>\n</span>\n","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\n\nexport type ButtonVariant = 'primary' | 'secondary' | 'ghost';\nexport type ButtonSize = 'sm' | 'md' | 'lg';\n\n@Component({\n selector: 'ui-button',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class ButtonComponent {\n @Input() label = '';\n @Input() variant: ButtonVariant = 'primary';\n @Input() size: ButtonSize = 'md';\n @Input() disabled = false;\n @Input() ariaLabel = '';\n @Input() ariaPressed: boolean | null = null;\n @Input() ariaExpanded: boolean | null = null;\n @Input() ariaControls = '';\n @Input() ariaDescribedBy = '';\n\n @Output() buttonClick = new EventEmitter<MouseEvent>();\n\n protected emitClick(event: MouseEvent): void {\n this.buttonClick.emit(event);\n }\n}\n","<button\n class=\"ui-button\"\n type=\"button\"\n [disabled]=\"disabled\"\n (click)=\"emitClick($event)\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-pressed]=\"ariaPressed\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-controls]=\"ariaControls || null\"\n [attr.aria-describedby]=\"ariaDescribedBy || null\"\n [class.ui-button--secondary]=\"variant === 'secondary'\"\n [class.ui-button--ghost]=\"variant === 'ghost'\"\n [class.ui-button--sm]=\"size === 'sm'\"\n [class.ui-button--lg]=\"size === 'lg'\"\n>\n <ng-content>{{ label }}</ng-content>\n</button>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\n\nexport type DividerOrientation = 'horizontal' | 'vertical';\n\n@Component({\n selector: 'ui-divider',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class DividerComponent {\n @Input() orientation: DividerOrientation = 'horizontal';\n @Input() ariaLabel = '';\n}\n","<span\n class=\"ui-divider\"\n [class.ui-divider--vertical]=\"orientation === 'vertical'\"\n [attr.role]=\"ariaLabel ? 'separator' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-orientation]=\"orientation\"\n [attr.aria-hidden]=\"ariaLabel ? null : true\"\n></span>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\nimport { IconDefinition } from '@fortawesome/fontawesome-svg-core';\nimport {\n faBell,\n faBookOpen,\n faCalendarDay,\n faChartLine,\n faCheck,\n faClock,\n faEnvelope,\n faHouse,\n faUser,\n} from '@fortawesome/free-solid-svg-icons';\n\nexport type IconName =\n | 'bell'\n | 'book'\n | 'calendar'\n | 'chart'\n | 'check'\n | 'clock'\n | 'home'\n | 'message'\n | 'user';\nexport type IconValue = IconName | IconDefinition;\n\n@Component({\n selector: 'ui-icon',\n standalone: true,\n imports: [CommonModule, FontAwesomeModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class IconComponent {\n @Input() name: IconName = 'home';\n @Input() icon: IconDefinition | null = null;\n @Input() decorative = true;\n @Input() ariaLabel = '';\n\n protected readonly iconMap: Record<IconName, IconDefinition> = {\n bell: faBell,\n book: faBookOpen,\n calendar: faCalendarDay,\n chart: faChartLine,\n check: faCheck,\n clock: faClock,\n home: faHouse,\n message: faEnvelope,\n user: faUser,\n };\n\n protected get resolvedIcon(): IconDefinition {\n return this.icon ?? this.iconMap[nameOrFallback(this.name)];\n }\n}\n\nfunction nameOrFallback(name: IconName | null | undefined): IconName {\n return name ?? 'home';\n}\n","<span\n class=\"ui-icon\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? true : null\"\n [attr.aria-label]=\"decorative ? null : (ariaLabel || name)\"\n>\n <fa-icon [icon]=\"resolvedIcon\"></fa-icon>\n</span>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\n\nexport type TextElement = 'span' | 'p' | 'h1' | 'h2' | 'h3';\nexport type TextTone = 'default' | 'muted' | 'primary';\nexport type TextWeight = 'regular' | 'medium' | 'semibold';\nexport type TextSize = 'sm' | 'md' | 'lg' | 'xl';\n\n@Component({\n selector: 'ui-text',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class TextComponent {\n @Input() element: TextElement = 'span';\n @Input() tone: TextTone = 'default';\n @Input() weight: TextWeight = 'regular';\n @Input() size: TextSize = 'md';\n}\n","@switch (element) {\n @case ('p') {\n <p class=\"ui-text\" [attr.data-tone]=\"tone\" [attr.data-weight]=\"weight\" [attr.data-size]=\"size\">\n <ng-content></ng-content>\n </p>\n }\n @case ('h1') {\n <h1 class=\"ui-text\" [attr.data-tone]=\"tone\" [attr.data-weight]=\"weight\" [attr.data-size]=\"size\">\n <ng-content></ng-content>\n </h1>\n }\n @case ('h2') {\n <h2 class=\"ui-text\" [attr.data-tone]=\"tone\" [attr.data-weight]=\"weight\" [attr.data-size]=\"size\">\n <ng-content></ng-content>\n </h2>\n }\n @case ('h3') {\n <h3 class=\"ui-text\" [attr.data-tone]=\"tone\" [attr.data-weight]=\"weight\" [attr.data-size]=\"size\">\n <ng-content></ng-content>\n </h3>\n }\n @default {\n <span class=\"ui-text\" [attr.data-tone]=\"tone\" [attr.data-weight]=\"weight\" [attr.data-size]=\"size\">\n <ng-content></ng-content>\n </span>\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { BadgeComponent, BadgeVariant, IconComponent, IconName, TextComponent } from '../../atoms';\n\nexport interface ListItemData {\n title: string;\n description?: string;\n meta?: string;\n badgeLabel?: string;\n badgeVariant?: BadgeVariant;\n icon?: IconName;\n ariaLabel?: string;\n}\n\n@Component({\n selector: 'ui-list-item',\n standalone: true,\n imports: [CommonModule, BadgeComponent, IconComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class ListItemComponent {\n @Input() title = '';\n @Input() description = '';\n @Input() meta = '';\n @Input() badgeLabel = '';\n @Input() badgeVariant: BadgeVariant = 'neutral';\n @Input() icon: IconName = 'calendar';\n @Input() ariaLabel = '';\n}\n","<article class=\"ui-list-item\" [attr.aria-label]=\"ariaLabel || null\">\n <span class=\"ui-list-item__icon\">\n <ui-icon [name]=\"icon\" aria-hidden=\"true\"></ui-icon>\n </span>\n\n <div class=\"ui-list-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ title }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </div>\n\n <div class=\"ui-list-item__meta\">\n @if (meta) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ meta }}</ui-text>\n }\n\n @if (badgeLabel) {\n <ui-badge [label]=\"badgeLabel\" [variant]=\"badgeVariant\"></ui-badge>\n }\n </div>\n</article>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { RouterLink, RouterLinkActive } from '@angular/router';\nimport { IconDefinition } from '@fortawesome/fontawesome-svg-core';\nimport { IconComponent, IconName, IconValue, TextComponent } from '../../atoms';\n\nexport interface NavItemData {\n label: string;\n icon?: IconValue;\n description?: string;\n active?: boolean;\n disabled?: boolean;\n ariaLabel?: string;\n path?: string | readonly string[];\n}\n\n@Component({\n selector: 'ui-nav-item',\n standalone: true,\n imports: [CommonModule, RouterLink, RouterLinkActive, IconComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class NavItemComponent {\n @Input() label = '';\n @Input() icon: IconValue = 'home';\n @Input() description = '';\n @Input() active = false;\n @Input() disabled = false;\n @Input() ariaLabel = '';\n @Input() routerLink: string | readonly string[] | null = null;\n\n protected get iconName(): IconName {\n return typeof this.icon === 'string' ? this.icon : 'home';\n }\n\n protected get iconDefinition(): IconDefinition | null {\n return typeof this.icon === 'string' ? null : this.icon;\n }\n}\n","@if (routerLink && !disabled) {\n <a\n class=\"ui-nav-item\"\n [routerLink]=\"routerLink\"\n routerLinkActive=\"ui-nav-item--active\"\n [class.ui-nav-item--active]=\"active\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </a>\n} @else {\n <button\n class=\"ui-nav-item\"\n type=\"button\"\n [disabled]=\"disabled\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n [class.ui-nav-item--active]=\"active\"\n [class.ui-nav-item--disabled]=\"disabled\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </button>\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { TextComponent } from '../../atoms';\n\nexport type StatTone = 'primary' | 'success' | 'warning';\n\nexport interface StatItem {\n label: string;\n value: string;\n description?: string;\n tone?: StatTone;\n}\n\n@Component({\n selector: 'ui-stat',\n standalone: true,\n imports: [CommonModule, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class StatComponent {\n @Input() label = '';\n @Input() value = '';\n @Input() description = '';\n @Input() tone: StatTone = 'primary';\n}\n","<article class=\"ui-stat\" [attr.data-tone]=\"tone\">\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ label }}</ui-text>\n <ui-text element=\"h3\" size=\"lg\" weight=\"semibold\">{{ value }}</ui-text>\n @if (description) {\n <ui-text element=\"p\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n</article>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { AvatarComponent, AvatarSize, TextComponent } from '../../atoms';\n\n@Component({\n selector: 'ui-user-info',\n standalone: true,\n imports: [CommonModule, AvatarComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class UserInfoComponent {\n @Input() name = '';\n @Input() role = '';\n @Input() initials = 'SE';\n @Input() size: AvatarSize = 'md';\n @Input() ariaLabel = '';\n}\n","<div class=\"ui-user-info\" [attr.aria-label]=\"ariaLabel || null\">\n <ui-avatar [initials]=\"initials\" [size]=\"size\" tone=\"neutral\" ariaLabel=\"Avatar do usuario\"></ui-avatar>\n\n <div class=\"ui-user-info__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ name }}</ui-text>\n @if (role) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ role }}</ui-text>\n }\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { DividerComponent, TextComponent } from '../../atoms';\nimport { ListItemComponent, ListItemData } from '../../molecules';\n\n@Component({\n selector: 'ui-agenda-list',\n standalone: true,\n imports: [CommonModule, DividerComponent, ListItemComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class AgendaListComponent {\n @Input() title = 'Agenda do dia';\n @Input() items: ListItemData[] = [];\n}\n","<section class=\"ui-panel\">\n <ui-text element=\"h3\" size=\"lg\" weight=\"semibold\">{{ title }}</ui-text>\n\n <div class=\"ui-panel__list\">\n @for (item of items; track item.title; let last = $last) {\n <ui-list-item\n [title]=\"item.title\"\n [description]=\"item.description ?? ''\"\n [meta]=\"item.meta ?? ''\"\n [badgeLabel]=\"item.badgeLabel ?? ''\"\n [badgeVariant]=\"item.badgeVariant ?? 'neutral'\"\n [icon]=\"item.icon ?? 'calendar'\"\n ></ui-list-item>\n\n @if (!last) {\n <ui-divider></ui-divider>\n }\n }\n </div>\n</section>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { BadgeComponent, ButtonComponent, TextComponent } from '../../atoms';\n\n@Component({\n selector: 'ui-header',\n standalone: true,\n imports: [CommonModule, BadgeComponent, ButtonComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class HeaderComponent {\n @Input() badgeLabel = '';\n @Input() title = '';\n @Input() subtitle = '';\n @Input() actionLabel = '';\n}\n","<header class=\"ui-header\">\n <div class=\"ui-header__copy\">\n @if (badgeLabel) {\n <ui-badge [label]=\"badgeLabel\" variant=\"primary\"></ui-badge>\n }\n\n <ui-text element=\"h1\" size=\"xl\" weight=\"semibold\">{{ title }}</ui-text>\n\n @if (subtitle) {\n <ui-text element=\"p\" tone=\"muted\">{{ subtitle }}</ui-text>\n }\n </div>\n\n @if (actionLabel) {\n <ui-button [label]=\"actionLabel\" [ariaLabel]=\"actionLabel\" variant=\"secondary\"></ui-button>\n }\n</header>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { BadgeComponent, ButtonComponent, TextComponent } from '../../atoms';\n\n@Component({\n selector: 'ui-hero-card',\n standalone: true,\n imports: [CommonModule, BadgeComponent, ButtonComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class HeroCardComponent {\n @Input() eyebrow = '';\n @Input() title = '';\n @Input() description = '';\n @Input() primaryActionLabel = '';\n @Input() secondaryActionLabel = '';\n @Input() highlightLabel = '';\n @Input() highlightValue = '';\n}\n","<section class=\"ui-hero-card\">\n <div class=\"ui-hero-card__copy\">\n @if (eyebrow) {\n <ui-badge [label]=\"eyebrow\" variant=\"primary\"></ui-badge>\n }\n\n <ui-text element=\"h2\" size=\"xl\" weight=\"semibold\">{{ title }}</ui-text>\n\n @if (description) {\n <ui-text element=\"p\" tone=\"muted\">{{ description }}</ui-text>\n }\n\n <div class=\"ui-hero-card__actions\">\n @if (primaryActionLabel) {\n <ui-button [label]=\"primaryActionLabel\"></ui-button>\n }\n\n @if (secondaryActionLabel) {\n <ui-button [label]=\"secondaryActionLabel\" variant=\"ghost\"></ui-button>\n }\n </div>\n </div>\n\n <div class=\"ui-hero-card__highlight\">\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ highlightLabel }}</ui-text>\n <ui-text element=\"h3\" size=\"xl\" weight=\"semibold\">{{ highlightValue }}</ui-text>\n </div>\n</section>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { DividerComponent, TextComponent } from '../../atoms';\nimport { ListItemComponent, ListItemData } from '../../molecules';\n\n@Component({\n selector: 'ui-materials-list',\n standalone: true,\n imports: [CommonModule, DividerComponent, ListItemComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class MaterialsListComponent {\n @Input() title = 'Materiais recomendados';\n @Input() items: ListItemData[] = [];\n}\n","<section class=\"ui-panel\">\n <ui-text element=\"h3\" size=\"lg\" weight=\"semibold\">{{ title }}</ui-text>\n\n <div class=\"ui-panel__list\">\n @for (item of items; track item.title; let last = $last) {\n <ui-list-item\n [title]=\"item.title\"\n [description]=\"item.description ?? ''\"\n [meta]=\"item.meta ?? ''\"\n [badgeLabel]=\"item.badgeLabel ?? ''\"\n [badgeVariant]=\"item.badgeVariant ?? 'neutral'\"\n [icon]=\"item.icon ?? 'book'\"\n ></ui-list-item>\n\n @if (!last) {\n <ui-divider></ui-divider>\n }\n }\n </div>\n</section>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { RouterLink, RouterLinkActive } from '@angular/router';\nimport { IconDefinition } from '@fortawesome/fontawesome-svg-core';\nimport { DividerComponent, IconComponent, IconName, TextComponent } from '../../atoms';\nimport { NavItemComponent, NavItemData, UserInfoComponent } from '../../molecules';\n\n@Component({\n selector: 'ui-sidebar',\n standalone: true,\n imports: [\n CommonModule,\n RouterLink,\n RouterLinkActive,\n DividerComponent,\n IconComponent,\n NavItemComponent,\n TextComponent,\n UserInfoComponent,\n ],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class SidebarComponent {\n @Input() brand = 'Senior Ease';\n @Input() subtitle = 'Design System';\n @Input() userName = '';\n @Input() userRole = '';\n @Input() userInitials = 'SE';\n @Input() items: NavItemData[] = [];\n @Input() navAriaLabel = 'Navegacao principal';\n @Input() mobileNavAriaLabel = 'Navegacao inferior';\n\n protected iconName(item: NavItemData): IconName {\n return typeof item.icon === 'string' ? item.icon : 'home';\n }\n\n protected iconDefinition(item: NavItemData): IconDefinition | null {\n return typeof item.icon === 'string' || !item.icon ? null : item.icon;\n }\n}\n","<aside class=\"ui-sidebar ui-sidebar__desktop\">\n <div class=\"ui-sidebar__brand\">\n <span class=\"ui-sidebar__mark\">SE</span>\n <div class=\"ui-sidebar__brand-copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ brand }}</ui-text>\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ subtitle }}</ui-text>\n </div>\n </div>\n\n <nav class=\"ui-sidebar__nav\" [attr.aria-label]=\"navAriaLabel\">\n <ul class=\"ui-sidebar__list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__list-item\">\n <ui-nav-item\n [label]=\"item.label\"\n [icon]=\"item.icon ?? 'home'\"\n [description]=\"item.description ?? ''\"\n [active]=\"item.active ?? false\"\n [disabled]=\"item.disabled ?? false\"\n [ariaLabel]=\"item.ariaLabel ?? item.label\"\n [routerLink]=\"item.path ?? null\"\n ></ui-nav-item>\n </li>\n }\n </ul>\n </nav>\n\n <ui-divider></ui-divider>\n\n <ui-user-info\n [name]=\"userName\"\n [role]=\"userRole\"\n [initials]=\"userInitials\"\n ariaLabel=\"Informacoes do usuario\"\n size=\"sm\"\n ></ui-user-info>\n</aside>\n\n<nav class=\"ui-sidebar__mobile-nav\" [attr.aria-label]=\"mobileNavAriaLabel\">\n <ul class=\"ui-sidebar__mobile-list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__mobile-item\">\n @if (!item.disabled && item.path) {\n <a\n class=\"ui-sidebar__mobile-link\"\n [routerLink]=\"item.path\"\n routerLinkActive=\"ui-sidebar__mobile-link--active\"\n [attr.aria-label]=\"item.ariaLabel ?? item.label\"\n >\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </a>\n } @else if (!item.disabled) {\n <button class=\"ui-sidebar__mobile-link\" type=\"button\" [attr.aria-label]=\"item.ariaLabel ?? item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </button>\n } @else {\n <span class=\"ui-sidebar__mobile-link ui-sidebar__mobile-link--disabled\" [attr.aria-label]=\"item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </span>\n }\n </li>\n }\n </ul>\n</nav>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { StatComponent, StatItem } from '../../molecules';\n\n@Component({\n selector: 'ui-stats-grid',\n standalone: true,\n imports: [CommonModule, StatComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class StatsGridComponent {\n @Input() items: StatItem[] = [];\n}\n","<section class=\"ui-stats-grid\">\n @for (item of items; track item.label) {\n <ui-stat\n [label]=\"item.label\"\n [value]=\"item.value\"\n [description]=\"item.description ?? ''\"\n [tone]=\"item.tone ?? 'primary'\"\n ></ui-stat>\n }\n</section>\n","import { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\n\n@Component({\n selector: 'ui-dashboard-layout',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class DashboardLayoutComponent {}\n","<a class=\"ui-dashboard-layout__skip\" href=\"#ui-main-content\">Pular para conteudo principal</a>\n\n<div class=\"ui-dashboard-layout\">\n <aside class=\"ui-dashboard-layout__sidebar\">\n <ng-content select=\"[sidebar]\"></ng-content>\n </aside>\n\n <div class=\"ui-dashboard-layout__main\">\n <div class=\"ui-dashboard-layout__header\">\n <ng-content select=\"[header]\"></ng-content>\n </div>\n\n <main class=\"ui-dashboard-layout__content\" id=\"ui-main-content\" tabindex=\"-1\">\n <ng-content></ng-content>\n </main>\n </div>\n</div>\n","import { DOCUMENT } from '@angular/common';\nimport { effect, inject, Injectable, signal } from '@angular/core';\n\nexport type FontSize = 'small' | 'medium' | 'large' | 'x-large' | 'xx-large';\nexport type Theme = 'default' | 'high-contrast' | 'soft';\n\nconst FONT_CLASS_MAP: Record<FontSize, string[]> = {\n small: ['ui-font-small', 'font-small'],\n medium: [],\n large: ['ui-font-large', 'font-large'],\n 'x-large': ['ui-font-x-large', 'font-x-large'],\n 'xx-large': ['ui-font-xx-large', 'font-xx-large'],\n};\n\nconst THEME_CLASS_MAP: Record<Theme, string[]> = {\n default: [],\n 'high-contrast': ['ui-theme-high-contrast', 'theme-high-contrast'],\n soft: ['ui-theme-soft', 'theme-soft'],\n};\n\nconst FONT_CLASSES = [\n 'ui-font-small',\n 'ui-font-large',\n 'ui-font-x-large',\n 'ui-font-xx-large',\n 'font-small',\n 'font-large',\n 'font-x-large',\n 'font-xx-large',\n];\n\nconst THEME_CLASSES = ['ui-theme-high-contrast', 'ui-theme-soft', 'theme-high-contrast', 'theme-soft'];\nconst DYSLEXIA_CLASSES = ['ui-dyslexia-font', 'dyslexia-font'];\n\nconst VALID_FONTS: FontSize[] = ['small', 'medium', 'large', 'x-large', 'xx-large'];\nconst VALID_THEMES: Theme[] = ['default', 'high-contrast', 'soft'];\n\nconst FONT_KEY = 'accessibility-font-size';\nconst THEME_KEY = 'accessibility-theme';\nconst VOICE_KEY = 'accessibility-voice-reading';\nconst SPEECH_RATE_KEY = 'accessibility-speech-rate';\nconst DYSLEXIA_KEY = 'accessibility-dyslexia-font';\n\n@Injectable({ providedIn: 'root' })\nexport class AccessibilityService {\n private readonly document = inject(DOCUMENT);\n private readonly storage = getStorage();\n private readonly classList = this.document.documentElement.classList;\n\n readonly fontSize = signal<FontSize>(this.loadFont());\n readonly theme = signal<Theme>(this.loadTheme());\n readonly voiceReading = signal<boolean>(this.loadVoiceReading());\n readonly speechRate = signal<number>(this.loadSpeechRate());\n readonly dyslexiaFont = signal<boolean>(this.loadDyslexiaFont());\n\n private readonly _fontEffect = effect(() => {\n this.classList.remove(...FONT_CLASSES);\n this.classList.add(...FONT_CLASS_MAP[this.fontSize()]);\n this.storage?.setItem(FONT_KEY, this.fontSize());\n });\n\n private readonly _themeEffect = effect(() => {\n this.classList.remove(...THEME_CLASSES);\n this.classList.add(...THEME_CLASS_MAP[this.theme()]);\n this.storage?.setItem(THEME_KEY, this.theme());\n });\n\n private readonly _voiceEffect = effect(() => {\n this.storage?.setItem(VOICE_KEY, String(this.voiceReading()));\n });\n\n private readonly _speechRateEffect = effect(() => {\n this.storage?.setItem(SPEECH_RATE_KEY, String(this.speechRate()));\n });\n\n private readonly _dyslexiaEffect = effect(() => {\n const enabled = this.dyslexiaFont();\n this.classList.remove(...DYSLEXIA_CLASSES);\n if (enabled) {\n this.classList.add(...DYSLEXIA_CLASSES);\n }\n this.storage?.setItem(DYSLEXIA_KEY, String(enabled));\n });\n\n private loadFont(): FontSize {\n const stored = this.storage?.getItem(FONT_KEY) as FontSize | null;\n return stored && VALID_FONTS.includes(stored) ? stored : 'medium';\n }\n\n private loadTheme(): Theme {\n const stored = this.storage?.getItem(THEME_KEY) as Theme | null;\n return stored && VALID_THEMES.includes(stored) ? stored : 'default';\n }\n\n private loadVoiceReading(): boolean {\n return this.storage?.getItem(VOICE_KEY) === 'true';\n }\n\n private loadDyslexiaFont(): boolean {\n return this.storage?.getItem(DYSLEXIA_KEY) === 'true';\n }\n\n private loadSpeechRate(): number {\n const stored = Number.parseFloat(this.storage?.getItem(SPEECH_RATE_KEY) ?? '');\n return Number.isNaN(stored) ? 0.9 : Math.min(1.5, Math.max(0.5, stored));\n }\n}\n\nfunction getStorage(): Storage | null {\n try {\n return typeof localStorage === 'undefined' ? null : localStorage;\n } catch {\n return null;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"senior-ease-ui.mjs","sources":["../../../projects/ui/src/lib/atoms/avatar/component.ts","../../../projects/ui/src/lib/atoms/avatar/component.html","../../../projects/ui/src/lib/atoms/badge/component.ts","../../../projects/ui/src/lib/atoms/badge/component.html","../../../projects/ui/src/lib/atoms/button/component.ts","../../../projects/ui/src/lib/atoms/button/component.html","../../../projects/ui/src/lib/atoms/divider/component.ts","../../../projects/ui/src/lib/atoms/divider/component.html","../../../projects/ui/src/lib/atoms/icon/component.ts","../../../projects/ui/src/lib/atoms/icon/component.html","../../../projects/ui/src/lib/atoms/text/component.ts","../../../projects/ui/src/lib/atoms/text/component.html","../../../projects/ui/src/lib/molecules/list-item/component.ts","../../../projects/ui/src/lib/molecules/list-item/component.html","../../../projects/ui/src/lib/molecules/nav-item/component.ts","../../../projects/ui/src/lib/molecules/nav-item/component.html","../../../projects/ui/src/lib/molecules/stat/component.ts","../../../projects/ui/src/lib/molecules/stat/component.html","../../../projects/ui/src/lib/molecules/user-info/component.ts","../../../projects/ui/src/lib/molecules/user-info/component.html","../../../projects/ui/src/lib/organisms/agenda-list/component.ts","../../../projects/ui/src/lib/organisms/agenda-list/component.html","../../../projects/ui/src/lib/organisms/header/component.ts","../../../projects/ui/src/lib/organisms/header/component.html","../../../projects/ui/src/lib/organisms/hero-card/component.ts","../../../projects/ui/src/lib/organisms/hero-card/component.html","../../../projects/ui/src/lib/organisms/materials-list/component.ts","../../../projects/ui/src/lib/organisms/materials-list/component.html","../../../projects/ui/src/lib/organisms/sidebar/component.ts","../../../projects/ui/src/lib/organisms/sidebar/component.html","../../../projects/ui/src/lib/organisms/stats-grid/component.ts","../../../projects/ui/src/lib/organisms/stats-grid/component.html","../../../projects/ui/src/lib/templates/dashboard-layout/component.ts","../../../projects/ui/src/lib/templates/dashboard-layout/component.html","../../../projects/ui/src/lib/utils/accessibility/accessibility.service.ts","../../../projects/ui/src/senior-ease-ui.ts"],"sourcesContent":["import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\n\nexport type AvatarSize = 'sm' | 'md' | 'lg';\nexport type AvatarTone = 'primary' | 'accent' | 'neutral';\n\n@Component({\n selector: 'ui-avatar',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class AvatarComponent {\n @Input() initials = 'SE';\n @Input() size: AvatarSize = 'md';\n @Input() tone: AvatarTone = 'primary';\n @Input() ariaLabel = '';\n}\n","<span\n class=\"ui-avatar\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.role]=\"ariaLabel ? 'img' : null\"\n [class.ui-avatar--sm]=\"size === 'sm'\"\n [class.ui-avatar--lg]=\"size === 'lg'\"\n [class.ui-avatar--accent]=\"tone === 'accent'\"\n [class.ui-avatar--neutral]=\"tone === 'neutral'\"\n>\n <ng-content>{{ initials }}</ng-content>\n</span>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\n\nexport type BadgeVariant = 'neutral' | 'primary' | 'success' | 'warning' | 'danger';\n\n@Component({\n selector: 'ui-badge',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class BadgeComponent {\n @Input() label = '';\n @Input() variant: BadgeVariant = 'neutral';\n @Input() ariaLabel = '';\n}\n","<span\n class=\"ui-badge\"\n [attr.aria-label]=\"ariaLabel || null\"\n [class.ui-badge--primary]=\"variant === 'primary'\"\n [class.ui-badge--success]=\"variant === 'success'\"\n [class.ui-badge--warning]=\"variant === 'warning'\"\n [class.ui-badge--danger]=\"variant === 'danger'\"\n>\n <ng-content>{{ label }}</ng-content>\n</span>\n","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Input, Output } from '@angular/core';\n\nexport type ButtonVariant = 'primary' | 'secondary' | 'ghost';\nexport type ButtonSize = 'sm' | 'md' | 'lg';\n\n@Component({\n selector: 'ui-button',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class ButtonComponent {\n @Input() label = '';\n @Input() variant: ButtonVariant = 'primary';\n @Input() size: ButtonSize = 'md';\n @Input() disabled = false;\n @Input() ariaLabel = '';\n @Input() ariaPressed: boolean | null = null;\n @Input() ariaExpanded: boolean | null = null;\n @Input() ariaControls = '';\n @Input() ariaDescribedBy = '';\n\n @Output() buttonClick = new EventEmitter<MouseEvent>();\n\n protected emitClick(event: MouseEvent): void {\n this.buttonClick.emit(event);\n }\n}\n","<button\n class=\"ui-button\"\n type=\"button\"\n [disabled]=\"disabled\"\n (click)=\"emitClick($event)\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-pressed]=\"ariaPressed\"\n [attr.aria-expanded]=\"ariaExpanded\"\n [attr.aria-controls]=\"ariaControls || null\"\n [attr.aria-describedby]=\"ariaDescribedBy || null\"\n [class.ui-button--secondary]=\"variant === 'secondary'\"\n [class.ui-button--ghost]=\"variant === 'ghost'\"\n [class.ui-button--sm]=\"size === 'sm'\"\n [class.ui-button--lg]=\"size === 'lg'\"\n>\n <ng-content>{{ label }}</ng-content>\n</button>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\n\nexport type DividerOrientation = 'horizontal' | 'vertical';\n\n@Component({\n selector: 'ui-divider',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class DividerComponent {\n @Input() orientation: DividerOrientation = 'horizontal';\n @Input() ariaLabel = '';\n}\n","<span\n class=\"ui-divider\"\n [class.ui-divider--vertical]=\"orientation === 'vertical'\"\n [attr.role]=\"ariaLabel ? 'separator' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-orientation]=\"orientation\"\n [attr.aria-hidden]=\"ariaLabel ? null : true\"\n></span>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\nimport { IconDefinition } from '@fortawesome/fontawesome-svg-core';\nimport {\n faBell,\n faBookOpen,\n faCalendarDay,\n faChartLine,\n faCheck,\n faClock,\n faEnvelope,\n faHouse,\n faUniversalAccess,\n faUser,\n} from '@fortawesome/free-solid-svg-icons';\n\nexport type IconName =\n | 'bell'\n | 'book'\n | 'calendar'\n | 'chart'\n | 'check'\n | 'clock'\n | 'home'\n | 'message'\n | 'user'\n | 'accessibility'\nexport type IconValue = IconName | IconDefinition;\n\n@Component({\n selector: 'ui-icon',\n standalone: true,\n imports: [CommonModule, FontAwesomeModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class IconComponent {\n @Input() name: IconName = 'home';\n @Input() icon: IconDefinition | null = null;\n @Input() decorative = true;\n @Input() ariaLabel = '';\n\n protected readonly iconMap: Record<IconName, IconDefinition> = {\n bell: faBell,\n book: faBookOpen,\n calendar: faCalendarDay,\n chart: faChartLine,\n check: faCheck,\n clock: faClock,\n home: faHouse,\n message: faEnvelope,\n user: faUser,\n accessibility: faUniversalAccess\n };\n\n protected get resolvedIcon(): IconDefinition {\n return this.icon ?? this.iconMap[nameOrFallback(this.name)];\n }\n}\n\nfunction nameOrFallback(name: IconName | null | undefined): IconName {\n return name ?? 'home';\n}\n","<span\n class=\"ui-icon\"\n [attr.role]=\"decorative ? null : 'img'\"\n [attr.aria-hidden]=\"decorative ? true : null\"\n [attr.aria-label]=\"decorative ? null : (ariaLabel || name)\"\n>\n <fa-icon [icon]=\"resolvedIcon\"></fa-icon>\n</span>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\n\nexport type TextElement = 'span' | 'p' | 'h1' | 'h2' | 'h3';\nexport type TextTone = 'default' | 'muted' | 'primary';\nexport type TextWeight = 'regular' | 'medium' | 'semibold';\nexport type TextSize = 'sm' | 'md' | 'lg' | 'xl';\n\n@Component({\n selector: 'ui-text',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class TextComponent {\n @Input() element: TextElement = 'span';\n @Input() tone: TextTone = 'default';\n @Input() weight: TextWeight = 'regular';\n @Input() size: TextSize = 'md';\n}\n","@switch (element) {\n @case ('p') {\n <p class=\"ui-text\" [attr.data-tone]=\"tone\" [attr.data-weight]=\"weight\" [attr.data-size]=\"size\">\n <ng-content></ng-content>\n </p>\n }\n @case ('h1') {\n <h1 class=\"ui-text\" [attr.data-tone]=\"tone\" [attr.data-weight]=\"weight\" [attr.data-size]=\"size\">\n <ng-content></ng-content>\n </h1>\n }\n @case ('h2') {\n <h2 class=\"ui-text\" [attr.data-tone]=\"tone\" [attr.data-weight]=\"weight\" [attr.data-size]=\"size\">\n <ng-content></ng-content>\n </h2>\n }\n @case ('h3') {\n <h3 class=\"ui-text\" [attr.data-tone]=\"tone\" [attr.data-weight]=\"weight\" [attr.data-size]=\"size\">\n <ng-content></ng-content>\n </h3>\n }\n @default {\n <span class=\"ui-text\" [attr.data-tone]=\"tone\" [attr.data-weight]=\"weight\" [attr.data-size]=\"size\">\n <ng-content></ng-content>\n </span>\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { BadgeComponent, BadgeVariant, IconComponent, IconName, TextComponent } from '../../atoms';\n\nexport interface ListItemData {\n title: string;\n description?: string;\n meta?: string;\n badgeLabel?: string;\n badgeVariant?: BadgeVariant;\n icon?: IconName;\n ariaLabel?: string;\n}\n\n@Component({\n selector: 'ui-list-item',\n standalone: true,\n imports: [CommonModule, BadgeComponent, IconComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class ListItemComponent {\n @Input() title = '';\n @Input() description = '';\n @Input() meta = '';\n @Input() badgeLabel = '';\n @Input() badgeVariant: BadgeVariant = 'neutral';\n @Input() icon: IconName = 'calendar';\n @Input() ariaLabel = '';\n}\n","<article class=\"ui-list-item\" [attr.aria-label]=\"ariaLabel || null\">\n <span class=\"ui-list-item__icon\">\n <ui-icon [name]=\"icon\" aria-hidden=\"true\"></ui-icon>\n </span>\n\n <div class=\"ui-list-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ title }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </div>\n\n <div class=\"ui-list-item__meta\">\n @if (meta) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ meta }}</ui-text>\n }\n\n @if (badgeLabel) {\n <ui-badge [label]=\"badgeLabel\" [variant]=\"badgeVariant\"></ui-badge>\n }\n </div>\n</article>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { RouterLink, RouterLinkActive } from '@angular/router';\nimport { IconDefinition } from '@fortawesome/fontawesome-svg-core';\nimport { IconComponent, IconName, IconValue, TextComponent } from '../../atoms';\n\nexport interface NavItemData {\n label: string;\n icon?: IconValue;\n description?: string;\n active?: boolean;\n disabled?: boolean;\n ariaLabel?: string;\n path?: string | readonly string[];\n}\n\n@Component({\n selector: 'ui-nav-item',\n standalone: true,\n imports: [CommonModule, RouterLink, RouterLinkActive, IconComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class NavItemComponent {\n @Input() label = '';\n @Input() icon: IconValue = 'home';\n @Input() description = '';\n @Input() active = false;\n @Input() disabled = false;\n @Input() ariaLabel = '';\n @Input() routerLink: string | readonly string[] | null = null;\n\n protected get iconName(): IconName {\n return typeof this.icon === 'string' ? this.icon : 'home';\n }\n\n protected get iconDefinition(): IconDefinition | null {\n return typeof this.icon === 'string' ? null : this.icon;\n }\n}\n","@if (routerLink && !disabled) {\n <a\n class=\"ui-nav-item\"\n [routerLink]=\"routerLink\"\n routerLinkActive=\"ui-nav-item--active\"\n [class.ui-nav-item--active]=\"active\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </a>\n} @else {\n <button\n class=\"ui-nav-item\"\n type=\"button\"\n [disabled]=\"disabled\"\n [attr.aria-current]=\"active ? 'page' : null\"\n [attr.aria-label]=\"ariaLabel || null\"\n [class.ui-nav-item--active]=\"active\"\n [class.ui-nav-item--disabled]=\"disabled\"\n >\n <span class=\"ui-nav-item__icon\">\n <ui-icon [name]=\"iconName\" [icon]=\"iconDefinition\" [decorative]=\"true\"></ui-icon>\n </span>\n\n <span class=\"ui-nav-item__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ label }}</ui-text>\n @if (description) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n </span>\n </button>\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { TextComponent } from '../../atoms';\n\nexport type StatTone = 'primary' | 'success' | 'warning';\n\nexport interface StatItem {\n label: string;\n value: string;\n description?: string;\n tone?: StatTone;\n}\n\n@Component({\n selector: 'ui-stat',\n standalone: true,\n imports: [CommonModule, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class StatComponent {\n @Input() label = '';\n @Input() value = '';\n @Input() description = '';\n @Input() tone: StatTone = 'primary';\n}\n","<article class=\"ui-stat\" [attr.data-tone]=\"tone\">\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ label }}</ui-text>\n <ui-text element=\"h3\" size=\"lg\" weight=\"semibold\">{{ value }}</ui-text>\n @if (description) {\n <ui-text element=\"p\" size=\"sm\" tone=\"muted\">{{ description }}</ui-text>\n }\n</article>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { AvatarComponent, AvatarSize, TextComponent } from '../../atoms';\n\n@Component({\n selector: 'ui-user-info',\n standalone: true,\n imports: [CommonModule, AvatarComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class UserInfoComponent {\n @Input() name = '';\n @Input() role = '';\n @Input() initials = 'SE';\n @Input() size: AvatarSize = 'md';\n @Input() ariaLabel = '';\n}\n","<div class=\"ui-user-info\" [attr.aria-label]=\"ariaLabel || null\">\n <ui-avatar [initials]=\"initials\" [size]=\"size\" tone=\"neutral\" ariaLabel=\"Avatar do usuario\"></ui-avatar>\n\n <div class=\"ui-user-info__copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ name }}</ui-text>\n @if (role) {\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ role }}</ui-text>\n }\n </div>\n</div>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { DividerComponent, TextComponent } from '../../atoms';\nimport { ListItemComponent, ListItemData } from '../../molecules';\n\n@Component({\n selector: 'ui-agenda-list',\n standalone: true,\n imports: [CommonModule, DividerComponent, ListItemComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class AgendaListComponent {\n @Input() title = 'Agenda do dia';\n @Input() items: ListItemData[] = [];\n}\n","<section class=\"ui-panel\">\n <ui-text element=\"h3\" size=\"lg\" weight=\"semibold\">{{ title }}</ui-text>\n\n <div class=\"ui-panel__list\">\n @for (item of items; track item.title; let last = $last) {\n <ui-list-item\n [title]=\"item.title\"\n [description]=\"item.description ?? ''\"\n [meta]=\"item.meta ?? ''\"\n [badgeLabel]=\"item.badgeLabel ?? ''\"\n [badgeVariant]=\"item.badgeVariant ?? 'neutral'\"\n [icon]=\"item.icon ?? 'calendar'\"\n ></ui-list-item>\n\n @if (!last) {\n <ui-divider></ui-divider>\n }\n }\n </div>\n</section>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { BadgeComponent, ButtonComponent, TextComponent } from '../../atoms';\n\n@Component({\n selector: 'ui-header',\n standalone: true,\n imports: [CommonModule, BadgeComponent, ButtonComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class HeaderComponent {\n @Input() badgeLabel = '';\n @Input() title = '';\n @Input() subtitle = '';\n @Input() actionLabel = '';\n}\n","<header class=\"ui-header\">\n <div class=\"ui-header__copy\">\n @if (badgeLabel) {\n <ui-badge [label]=\"badgeLabel\" variant=\"primary\"></ui-badge>\n }\n\n <ui-text element=\"h1\" size=\"xl\" weight=\"semibold\">{{ title }}</ui-text>\n\n @if (subtitle) {\n <ui-text element=\"p\" tone=\"muted\">{{ subtitle }}</ui-text>\n }\n </div>\n\n @if (actionLabel) {\n <ui-button [label]=\"actionLabel\" [ariaLabel]=\"actionLabel\" variant=\"secondary\"></ui-button>\n }\n</header>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { BadgeComponent, ButtonComponent, TextComponent } from '../../atoms';\n\n@Component({\n selector: 'ui-hero-card',\n standalone: true,\n imports: [CommonModule, BadgeComponent, ButtonComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class HeroCardComponent {\n @Input() eyebrow = '';\n @Input() title = '';\n @Input() description = '';\n @Input() primaryActionLabel = '';\n @Input() secondaryActionLabel = '';\n @Input() highlightLabel = '';\n @Input() highlightValue = '';\n}\n","<section class=\"ui-hero-card\">\n <div class=\"ui-hero-card__copy\">\n @if (eyebrow) {\n <ui-badge [label]=\"eyebrow\" variant=\"primary\"></ui-badge>\n }\n\n <ui-text element=\"h2\" size=\"xl\" weight=\"semibold\">{{ title }}</ui-text>\n\n @if (description) {\n <ui-text element=\"p\" tone=\"muted\">{{ description }}</ui-text>\n }\n\n <div class=\"ui-hero-card__actions\">\n @if (primaryActionLabel) {\n <ui-button [label]=\"primaryActionLabel\"></ui-button>\n }\n\n @if (secondaryActionLabel) {\n <ui-button [label]=\"secondaryActionLabel\" variant=\"ghost\"></ui-button>\n }\n </div>\n </div>\n\n <div class=\"ui-hero-card__highlight\">\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ highlightLabel }}</ui-text>\n <ui-text element=\"h3\" size=\"xl\" weight=\"semibold\">{{ highlightValue }}</ui-text>\n </div>\n</section>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { DividerComponent, TextComponent } from '../../atoms';\nimport { ListItemComponent, ListItemData } from '../../molecules';\n\n@Component({\n selector: 'ui-materials-list',\n standalone: true,\n imports: [CommonModule, DividerComponent, ListItemComponent, TextComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class MaterialsListComponent {\n @Input() title = 'Materiais recomendados';\n @Input() items: ListItemData[] = [];\n}\n","<section class=\"ui-panel\">\n <ui-text element=\"h3\" size=\"lg\" weight=\"semibold\">{{ title }}</ui-text>\n\n <div class=\"ui-panel__list\">\n @for (item of items; track item.title; let last = $last) {\n <ui-list-item\n [title]=\"item.title\"\n [description]=\"item.description ?? ''\"\n [meta]=\"item.meta ?? ''\"\n [badgeLabel]=\"item.badgeLabel ?? ''\"\n [badgeVariant]=\"item.badgeVariant ?? 'neutral'\"\n [icon]=\"item.icon ?? 'book'\"\n ></ui-list-item>\n\n @if (!last) {\n <ui-divider></ui-divider>\n }\n }\n </div>\n</section>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { RouterLink, RouterLinkActive } from '@angular/router';\nimport { IconDefinition } from '@fortawesome/fontawesome-svg-core';\nimport { DividerComponent, IconComponent, IconName, TextComponent } from '../../atoms';\nimport { NavItemComponent, NavItemData, UserInfoComponent } from '../../molecules';\n\n@Component({\n selector: 'ui-sidebar',\n standalone: true,\n imports: [\n CommonModule,\n RouterLink,\n RouterLinkActive,\n DividerComponent,\n IconComponent,\n NavItemComponent,\n TextComponent,\n UserInfoComponent,\n ],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class SidebarComponent {\n @Input() brand = 'Senior Ease';\n @Input() subtitle = 'Design System';\n @Input() userName = '';\n @Input() userRole = '';\n @Input() userInitials = 'SE';\n @Input() items: NavItemData[] = [];\n @Input() navAriaLabel = 'Navegacao principal';\n @Input() mobileNavAriaLabel = 'Navegacao inferior';\n\n protected iconName(item: NavItemData): IconName {\n return typeof item.icon === 'string' ? item.icon : 'home';\n }\n\n protected iconDefinition(item: NavItemData): IconDefinition | null {\n return typeof item.icon === 'string' || !item.icon ? null : item.icon;\n }\n}\n","<aside class=\"ui-sidebar ui-sidebar__desktop\">\n <div class=\"ui-sidebar__brand\">\n <span class=\"ui-sidebar__mark\">SE</span>\n <div class=\"ui-sidebar__brand-copy\">\n <ui-text element=\"span\" weight=\"semibold\">{{ brand }}</ui-text>\n <ui-text element=\"span\" size=\"sm\" tone=\"muted\">{{ subtitle }}</ui-text>\n </div>\n </div>\n\n <nav class=\"ui-sidebar__nav\" [attr.aria-label]=\"navAriaLabel\">\n <ul class=\"ui-sidebar__list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__list-item\">\n <ui-nav-item\n [label]=\"item.label\"\n [icon]=\"item.icon ?? 'home'\"\n [description]=\"item.description ?? ''\"\n [active]=\"item.active ?? false\"\n [disabled]=\"item.disabled ?? false\"\n [ariaLabel]=\"item.ariaLabel ?? item.label\"\n [routerLink]=\"item.path ?? null\"\n ></ui-nav-item>\n </li>\n }\n </ul>\n </nav>\n\n <ui-divider></ui-divider>\n\n <ui-user-info\n [name]=\"userName\"\n [role]=\"userRole\"\n [initials]=\"userInitials\"\n ariaLabel=\"Informacoes do usuario\"\n size=\"sm\"\n ></ui-user-info>\n</aside>\n\n<nav class=\"ui-sidebar__mobile-nav\" [attr.aria-label]=\"mobileNavAriaLabel\">\n <ul class=\"ui-sidebar__mobile-list\" role=\"list\">\n @for (item of items; track item.label) {\n <li class=\"ui-sidebar__mobile-item\">\n @if (!item.disabled && item.path) {\n <a\n class=\"ui-sidebar__mobile-link\"\n [routerLink]=\"item.path\"\n routerLinkActive=\"ui-sidebar__mobile-link--active\"\n [attr.aria-label]=\"item.ariaLabel ?? item.label\"\n >\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </a>\n } @else if (!item.disabled) {\n <button class=\"ui-sidebar__mobile-link\" type=\"button\" [attr.aria-label]=\"item.ariaLabel ?? item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </button>\n } @else {\n <span class=\"ui-sidebar__mobile-link ui-sidebar__mobile-link--disabled\" [attr.aria-label]=\"item.label\">\n <ui-icon [name]=\"iconName(item)\" [icon]=\"iconDefinition(item)\" [decorative]=\"true\"></ui-icon>\n <span class=\"ui-sidebar__mobile-label\">{{ item.label }}</span>\n </span>\n }\n </li>\n }\n </ul>\n</nav>\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { StatComponent, StatItem } from '../../molecules';\n\n@Component({\n selector: 'ui-stats-grid',\n standalone: true,\n imports: [CommonModule, StatComponent],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class StatsGridComponent {\n @Input() items: StatItem[] = [];\n}\n","<section class=\"ui-stats-grid\">\n @for (item of items; track item.label) {\n <ui-stat\n [label]=\"item.label\"\n [value]=\"item.value\"\n [description]=\"item.description ?? ''\"\n [tone]=\"item.tone ?? 'primary'\"\n ></ui-stat>\n }\n</section>\n","import { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\n\n@Component({\n selector: 'ui-dashboard-layout',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './component.html',\n styleUrls: ['./component.scss'],\n})\nexport class DashboardLayoutComponent {}\n","<a class=\"ui-dashboard-layout__skip\" href=\"#ui-main-content\">Pular para conteudo principal</a>\n\n<div class=\"ui-dashboard-layout\">\n <aside class=\"ui-dashboard-layout__sidebar\">\n <ng-content select=\"[sidebar]\"></ng-content>\n </aside>\n\n <div class=\"ui-dashboard-layout__main\">\n <div class=\"ui-dashboard-layout__header\">\n <ng-content select=\"[header]\"></ng-content>\n </div>\n\n <main class=\"ui-dashboard-layout__content\" id=\"ui-main-content\" tabindex=\"-1\">\n <ng-content></ng-content>\n </main>\n </div>\n</div>\n","import { DOCUMENT } from '@angular/common';\nimport { effect, inject, Injectable, signal } from '@angular/core';\n\nexport type FontSize = 'small' | 'medium' | 'large' | 'x-large' | 'xx-large';\nexport type Theme = 'default' | 'high-contrast' | 'soft';\n\nconst FONT_CLASS_MAP: Record<FontSize, string[]> = {\n small: ['ui-font-small', 'font-small'],\n medium: [],\n large: ['ui-font-large', 'font-large'],\n 'x-large': ['ui-font-x-large', 'font-x-large'],\n 'xx-large': ['ui-font-xx-large', 'font-xx-large'],\n};\n\nconst THEME_CLASS_MAP: Record<Theme, string[]> = {\n default: [],\n 'high-contrast': ['ui-theme-high-contrast', 'theme-high-contrast'],\n soft: ['ui-theme-soft', 'theme-soft'],\n};\n\nconst FONT_CLASSES = [\n 'ui-font-small',\n 'ui-font-large',\n 'ui-font-x-large',\n 'ui-font-xx-large',\n 'font-small',\n 'font-large',\n 'font-x-large',\n 'font-xx-large',\n];\n\nconst THEME_CLASSES = ['ui-theme-high-contrast', 'ui-theme-soft', 'theme-high-contrast', 'theme-soft'];\nconst DYSLEXIA_CLASSES = ['ui-dyslexia-font', 'dyslexia-font'];\n\nconst VALID_FONTS: FontSize[] = ['small', 'medium', 'large', 'x-large', 'xx-large'];\nconst VALID_THEMES: Theme[] = ['default', 'high-contrast', 'soft'];\n\nconst FONT_KEY = 'accessibility-font-size';\nconst THEME_KEY = 'accessibility-theme';\nconst VOICE_KEY = 'accessibility-voice-reading';\nconst SPEECH_RATE_KEY = 'accessibility-speech-rate';\nconst DYSLEXIA_KEY = 'accessibility-dyslexia-font';\n\n@Injectable({ providedIn: 'root' })\nexport class AccessibilityService {\n private readonly document = inject(DOCUMENT);\n private readonly storage = getStorage();\n private readonly classList = this.document.documentElement.classList;\n\n readonly fontSize = signal<FontSize>(this.loadFont());\n readonly theme = signal<Theme>(this.loadTheme());\n readonly voiceReading = signal<boolean>(this.loadVoiceReading());\n readonly speechRate = signal<number>(this.loadSpeechRate());\n readonly dyslexiaFont = signal<boolean>(this.loadDyslexiaFont());\n\n private readonly _fontEffect = effect(() => {\n this.classList.remove(...FONT_CLASSES);\n this.classList.add(...FONT_CLASS_MAP[this.fontSize()]);\n this.storage?.setItem(FONT_KEY, this.fontSize());\n });\n\n private readonly _themeEffect = effect(() => {\n this.classList.remove(...THEME_CLASSES);\n this.classList.add(...THEME_CLASS_MAP[this.theme()]);\n this.storage?.setItem(THEME_KEY, this.theme());\n });\n\n private readonly _voiceEffect = effect(() => {\n this.storage?.setItem(VOICE_KEY, String(this.voiceReading()));\n });\n\n private readonly _speechRateEffect = effect(() => {\n this.storage?.setItem(SPEECH_RATE_KEY, String(this.speechRate()));\n });\n\n private readonly _dyslexiaEffect = effect(() => {\n const enabled = this.dyslexiaFont();\n this.classList.remove(...DYSLEXIA_CLASSES);\n if (enabled) {\n this.classList.add(...DYSLEXIA_CLASSES);\n }\n this.storage?.setItem(DYSLEXIA_KEY, String(enabled));\n });\n\n private loadFont(): FontSize {\n const stored = this.storage?.getItem(FONT_KEY) as FontSize | null;\n return stored && VALID_FONTS.includes(stored) ? stored : 'medium';\n }\n\n private loadTheme(): Theme {\n const stored = this.storage?.getItem(THEME_KEY) as Theme | null;\n return stored && VALID_THEMES.includes(stored) ? stored : 'default';\n }\n\n private loadVoiceReading(): boolean {\n return this.storage?.getItem(VOICE_KEY) === 'true';\n }\n\n private loadDyslexiaFont(): boolean {\n return this.storage?.getItem(DYSLEXIA_KEY) === 'true';\n }\n\n private loadSpeechRate(): number {\n const stored = Number.parseFloat(this.storage?.getItem(SPEECH_RATE_KEY) ?? '');\n return Number.isNaN(stored) ? 0.9 : Math.min(1.5, Math.max(0.5, stored));\n }\n}\n\nfunction getStorage(): Storage | null {\n try {\n return typeof localStorage === 'undefined' ? null : localStorage;\n } catch {\n return null;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;MAaa,eAAe,CAAA;IACjB,QAAQ,GAAG,IAAI;IACf,IAAI,GAAe,IAAI;IACvB,IAAI,GAAe,SAAS;IAC5B,SAAS,GAAG,EAAE;uGAJZ,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECb5B,4WAWA,EAAA,MAAA,EAAA,CAAA,+1BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDFY,YAAY,EAAA,CAAA,EAAA,CAAA;;2FAIX,eAAe,EAAA,UAAA,EAAA,CAAA;kBAP3B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,EAAA,UAAA,EACT,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,4WAAA,EAAA,MAAA,EAAA,CAAA,+1BAAA,CAAA,EAAA;;sBAKtB;;sBACA;;sBACA;;sBACA;;;MELU,cAAc,CAAA;IAChB,KAAK,GAAG,EAAE;IACV,OAAO,GAAiB,SAAS;IACjC,SAAS,GAAG,EAAE;uGAHZ,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECZ3B,wVAUA,EAAA,MAAA,EAAA,CAAA,qsBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDFY,YAAY,EAAA,CAAA,EAAA,CAAA;;2FAIX,cAAc,EAAA,UAAA,EAAA,CAAA;kBAP1B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,UAAU,EAAA,UAAA,EACR,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,wVAAA,EAAA,MAAA,EAAA,CAAA,qsBAAA,CAAA,EAAA;;sBAKtB;;sBACA;;sBACA;;;MEFU,eAAe,CAAA;IACjB,KAAK,GAAG,EAAE;IACV,OAAO,GAAkB,SAAS;IAClC,IAAI,GAAe,IAAI;IACvB,QAAQ,GAAG,KAAK;IAChB,SAAS,GAAG,EAAE;IACd,WAAW,GAAmB,IAAI;IAClC,YAAY,GAAmB,IAAI;IACnC,YAAY,GAAG,EAAE;IACjB,eAAe,GAAG,EAAE;AAEnB,IAAA,WAAW,GAAG,IAAI,YAAY,EAAc;AAE5C,IAAA,SAAS,CAAC,KAAiB,EAAA;AACnC,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;IAC9B;uGAfW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,EAAA,cAAA,EAAA,YAAA,EAAA,cAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECb5B,glBAiBA,EAAA,MAAA,EAAA,CAAA,2kCAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDRY,YAAY,EAAA,CAAA,EAAA,CAAA;;2FAIX,eAAe,EAAA,UAAA,EAAA,CAAA;kBAP3B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,WAAW,EAAA,UAAA,EACT,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,glBAAA,EAAA,MAAA,EAAA,CAAA,2kCAAA,CAAA,EAAA;;sBAKtB;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBAEA;;;MEZU,gBAAgB,CAAA;IAClB,WAAW,GAAuB,YAAY;IAC9C,SAAS,GAAG,EAAE;uGAFZ,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECZ7B,oSAQA,EAAA,MAAA,EAAA,CAAA,yNAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDAY,YAAY,EAAA,CAAA,EAAA,CAAA;;2FAIX,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,EAAA,UAAA,EACV,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,oSAAA,EAAA,MAAA,EAAA,CAAA,yNAAA,CAAA,EAAA;;sBAKtB;;sBACA;;;MEuBU,aAAa,CAAA;IACf,IAAI,GAAa,MAAM;IACvB,IAAI,GAA0B,IAAI;IAClC,UAAU,GAAG,IAAI;IACjB,SAAS,GAAG,EAAE;AAEJ,IAAA,OAAO,GAAqC;AAC7D,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,IAAI,EAAE,UAAU;AAChB,QAAA,QAAQ,EAAE,aAAa;AACvB,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,KAAK,EAAE,OAAO;AACd,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,OAAO,EAAE,UAAU;AACnB,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,aAAa,EAAE;KAChB;AAED,IAAA,IAAc,YAAY,GAAA;AACxB,QAAA,OAAO,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D;uGArBW,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAb,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,MAAA,EAAA,UAAA,EAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrC1B,0PAQA,EAAA,MAAA,EAAA,CAAA,0OAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDyBY,YAAY,8BAAE,iBAAiB,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,WAAA,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,EAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,WAAA,EAAA,UAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,YAAA,EAAA,cAAA,EAAA,eAAA,EAAA,cAAA,EAAA,cAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAI9B,aAAa,EAAA,UAAA,EAAA,CAAA;kBAPzB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAS,cACP,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,iBAAiB,CAAC,EAAA,QAAA,EAAA,0PAAA,EAAA,MAAA,EAAA,CAAA,0OAAA,CAAA,EAAA;;sBAKzC;;sBACA;;sBACA;;sBACA;;AAoBH,SAAS,cAAc,CAAC,IAAiC,EAAA;IACvD,OAAO,IAAI,IAAI,MAAM;AACvB;;MEhDa,aAAa,CAAA;IACf,OAAO,GAAgB,MAAM;IAC7B,IAAI,GAAa,SAAS;IAC1B,MAAM,GAAe,SAAS;IAC9B,IAAI,GAAa,IAAI;uGAJnB,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECf1B,44BA2BA,EAAA,MAAA,EAAA,CAAA,isBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDhBY,YAAY,EAAA,CAAA,EAAA,CAAA;;2FAIX,aAAa,EAAA,UAAA,EAAA,CAAA;kBAPzB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAS,EAAA,UAAA,EACP,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,44BAAA,EAAA,MAAA,EAAA,CAAA,isBAAA,CAAA,EAAA;;sBAKtB;;sBACA;;sBACA;;sBACA;;;MEEU,iBAAiB,CAAA;IACnB,KAAK,GAAG,EAAE;IACV,WAAW,GAAG,EAAE;IAChB,IAAI,GAAG,EAAE;IACT,UAAU,GAAG,EAAE;IACf,YAAY,GAAiB,SAAS;IACtC,IAAI,GAAa,UAAU;IAC3B,SAAS,GAAG,EAAE;uGAPZ,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,IAAA,EAAA,MAAA,EAAA,UAAA,EAAA,YAAA,EAAA,YAAA,EAAA,cAAA,EAAA,IAAA,EAAA,MAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECrB9B,usBAsBA,EAAA,MAAA,EAAA,CAAA,mpBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDLY,YAAY,+BAAE,cAAc,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,YAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAIzD,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAP7B,SAAS;+BACE,cAAc,EAAA,UAAA,EACZ,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,aAAa,CAAC,EAAA,QAAA,EAAA,usBAAA,EAAA,MAAA,EAAA,CAAA,mpBAAA,CAAA,EAAA;;sBAKpE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MELU,gBAAgB,CAAA;IAClB,KAAK,GAAG,EAAE;IACV,IAAI,GAAc,MAAM;IACxB,WAAW,GAAG,EAAE;IAChB,MAAM,GAAG,KAAK;IACd,QAAQ,GAAG,KAAK;IAChB,SAAS,GAAG,EAAE;IACd,UAAU,GAAsC,IAAI;AAE7D,IAAA,IAAc,QAAQ,GAAA;AACpB,QAAA,OAAO,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,GAAG,IAAI,CAAC,IAAI,GAAG,MAAM;IAC3D;AAEA,IAAA,IAAc,cAAc,GAAA;AAC1B,QAAA,OAAO,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI;IACzD;uGAfW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,WAAA,EAAA,aAAA,EAAA,MAAA,EAAA,QAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECvB7B,04CA0CA,EAAA,MAAA,EAAA,CAAA,m7DAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDvBY,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,UAAU,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,MAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,uBAAA,EAAA,kBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,YAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAIvE,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,EAAA,UAAA,EACX,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,CAAC,EAAA,QAAA,EAAA,04CAAA,EAAA,MAAA,EAAA,CAAA,m7DAAA,CAAA,EAAA;;sBAKlF;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MEVU,aAAa,CAAA;IACf,KAAK,GAAG,EAAE;IACV,KAAK,GAAG,EAAE;IACV,WAAW,GAAG,EAAE;IAChB,IAAI,GAAa,SAAS;uGAJxB,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAb,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECpB1B,mVAOA,EAAA,MAAA,EAAA,CAAA,+cAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDSY,YAAY,+BAAE,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAI1B,aAAa,EAAA,UAAA,EAAA,CAAA;kBAPzB,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,SAAS,cACP,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,aAAa,CAAC,EAAA,QAAA,EAAA,mVAAA,EAAA,MAAA,EAAA,CAAA,+cAAA,CAAA,EAAA;;sBAKrC;;sBACA;;sBACA;;sBACA;;;MEbU,iBAAiB,CAAA;IACnB,IAAI,GAAG,EAAE;IACT,IAAI,GAAG,EAAE;IACT,QAAQ,GAAG,IAAI;IACf,IAAI,GAAe,IAAI;IACvB,SAAS,GAAG,EAAE;uGALZ,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,4KCX9B,waAUA,EAAA,MAAA,EAAA,CAAA,4LAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDHY,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,yGAAE,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAI3C,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAP7B,SAAS;+BACE,cAAc,EAAA,UAAA,EACZ,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,eAAe,EAAE,aAAa,CAAC,EAAA,QAAA,EAAA,waAAA,EAAA,MAAA,EAAA,CAAA,4LAAA,CAAA,EAAA;;sBAKtD;;sBACA;;sBACA;;sBACA;;sBACA;;;MEJU,mBAAmB,CAAA;IACrB,KAAK,GAAG,eAAe;IACvB,KAAK,GAAmB,EAAE;uGAFxB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECZhC,+mBAoBA,EAAA,MAAA,EAAA,CAAA,2RAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDZY,YAAY,+BAAE,gBAAgB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,iBAAiB,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,aAAA,EAAA,MAAA,EAAA,YAAA,EAAA,cAAA,EAAA,MAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAI/D,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAP/B,SAAS;+BACE,gBAAgB,EAAA,UAAA,EACd,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,aAAa,CAAC,EAAA,QAAA,EAAA,+mBAAA,EAAA,MAAA,EAAA,CAAA,2RAAA,CAAA,EAAA;;sBAK1E;;sBACA;;;MEHU,eAAe,CAAA;IACjB,UAAU,GAAG,EAAE;IACf,KAAK,GAAG,EAAE;IACV,QAAQ,GAAG,EAAE;IACb,WAAW,GAAG,EAAE;uGAJd,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECX5B,8fAiBA,EAAA,MAAA,EAAA,CAAA,4PAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDVY,YAAY,+BAAE,cAAc,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,EAAA,MAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,cAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAI3D,eAAe,EAAA,UAAA,EAAA,CAAA;kBAP3B,SAAS;+BACE,WAAW,EAAA,UAAA,EACT,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,CAAC,EAAA,QAAA,EAAA,8fAAA,EAAA,MAAA,EAAA,CAAA,4PAAA,CAAA,EAAA;;sBAKtE;;sBACA;;sBACA;;sBACA;;;MEJU,iBAAiB,CAAA;IACnB,OAAO,GAAG,EAAE;IACZ,KAAK,GAAG,EAAE;IACV,WAAW,GAAG,EAAE;IAChB,kBAAkB,GAAG,EAAE;IACvB,oBAAoB,GAAG,EAAE;IACzB,cAAc,GAAG,EAAE;IACnB,cAAc,GAAG,EAAE;uGAPjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,KAAA,EAAA,OAAA,EAAA,WAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECX9B,o5BA4BA,EAAA,MAAA,EAAA,CAAA,yvBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDrBY,YAAY,+BAAE,cAAc,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,eAAe,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,EAAA,MAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,cAAA,EAAA,cAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAI3D,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAP7B,SAAS;+BACE,cAAc,EAAA,UAAA,EACZ,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,CAAC,EAAA,QAAA,EAAA,o5BAAA,EAAA,MAAA,EAAA,CAAA,yvBAAA,CAAA,EAAA;;sBAKtE;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MENU,sBAAsB,CAAA;IACxB,KAAK,GAAG,wBAAwB;IAChC,KAAK,GAAmB,EAAE;uGAFxB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECZnC,2mBAoBA,EAAA,MAAA,EAAA,CAAA,2RAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDZY,YAAY,+BAAE,gBAAgB,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,iBAAiB,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,aAAA,EAAA,MAAA,EAAA,YAAA,EAAA,cAAA,EAAA,MAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAI/D,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAPlC,SAAS;+BACE,mBAAmB,EAAA,UAAA,EACjB,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,aAAa,CAAC,EAAA,QAAA,EAAA,2mBAAA,EAAA,MAAA,EAAA,CAAA,2RAAA,CAAA,EAAA;;sBAK1E;;sBACA;;;MESU,gBAAgB,CAAA;IAClB,KAAK,GAAG,aAAa;IACrB,QAAQ,GAAG,eAAe;IAC1B,QAAQ,GAAG,EAAE;IACb,QAAQ,GAAG,EAAE;IACb,YAAY,GAAG,IAAI;IACnB,KAAK,GAAkB,EAAE;IACzB,YAAY,GAAG,qBAAqB;IACpC,kBAAkB,GAAG,oBAAoB;AAExC,IAAA,QAAQ,CAAC,IAAiB,EAAA;AAClC,QAAA,OAAO,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,GAAG,IAAI,CAAC,IAAI,GAAG,MAAM;IAC3D;AAEU,IAAA,cAAc,CAAC,IAAiB,EAAA;QACxC,OAAO,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI;IACvE;uGAhBW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,0RCvB7B,2qFAmEA,EAAA,MAAA,EAAA,CAAA,i+FAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDxDI,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACZ,UAAU,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,MAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACV,gBAAgB,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,uBAAA,EAAA,kBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChB,gBAAgB,6FAChB,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,YAAA,EAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACb,gBAAgB,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAChB,aAAa,mGACb,iBAAiB,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,WAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAKR,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAhB5B,SAAS;+BACE,YAAY,EAAA,UAAA,EACV,IAAI,EAAA,OAAA,EACP;wBACP,YAAY;wBACZ,UAAU;wBACV,gBAAgB;wBAChB,gBAAgB;wBAChB,aAAa;wBACb,gBAAgB;wBAChB,aAAa;wBACb,iBAAiB;AAClB,qBAAA,EAAA,QAAA,EAAA,2qFAAA,EAAA,MAAA,EAAA,CAAA,i+FAAA,CAAA,EAAA;;sBAKA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;sBACA;;;MEpBU,kBAAkB,CAAA;IACpB,KAAK,GAAe,EAAE;uGADpB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECX/B,sRAUA,EAAA,MAAA,EAAA,CAAA,oMAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDHY,YAAY,+BAAE,aAAa,EAAA,QAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,EAAA,aAAA,EAAA,MAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2FAI1B,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAP9B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,cACb,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,aAAa,CAAC,EAAA,QAAA,EAAA,sRAAA,EAAA,MAAA,EAAA,CAAA,oMAAA,CAAA,EAAA;;sBAKrC;;;MEFU,wBAAwB,CAAA;uGAAxB,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAxB,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECVrC,4jBAiBA,EAAA,MAAA,EAAA,CAAA,m/BAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EDXY,YAAY,EAAA,CAAA,EAAA,CAAA;;2FAIX,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAPpC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAqB,EAAA,UAAA,EACnB,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,CAAC,EAAA,QAAA,EAAA,4jBAAA,EAAA,MAAA,EAAA,CAAA,m/BAAA,CAAA,EAAA;;;AEAzB,MAAM,cAAc,GAA+B;AACjD,IAAA,KAAK,EAAE,CAAC,eAAe,EAAE,YAAY,CAAC;AACtC,IAAA,MAAM,EAAE,EAAE;AACV,IAAA,KAAK,EAAE,CAAC,eAAe,EAAE,YAAY,CAAC;AACtC,IAAA,SAAS,EAAE,CAAC,iBAAiB,EAAE,cAAc,CAAC;AAC9C,IAAA,UAAU,EAAE,CAAC,kBAAkB,EAAE,eAAe,CAAC;CAClD;AAED,MAAM,eAAe,GAA4B;AAC/C,IAAA,OAAO,EAAE,EAAE;AACX,IAAA,eAAe,EAAE,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;AAClE,IAAA,IAAI,EAAE,CAAC,eAAe,EAAE,YAAY,CAAC;CACtC;AAED,MAAM,YAAY,GAAG;IACnB,eAAe;IACf,eAAe;IACf,iBAAiB;IACjB,kBAAkB;IAClB,YAAY;IACZ,YAAY;IACZ,cAAc;IACd,eAAe;CAChB;AAED,MAAM,aAAa,GAAG,CAAC,wBAAwB,EAAE,eAAe,EAAE,qBAAqB,EAAE,YAAY,CAAC;AACtG,MAAM,gBAAgB,GAAG,CAAC,kBAAkB,EAAE,eAAe,CAAC;AAE9D,MAAM,WAAW,GAAe,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC;AACnF,MAAM,YAAY,GAAY,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,CAAC;AAElE,MAAM,QAAQ,GAAG,yBAAyB;AAC1C,MAAM,SAAS,GAAG,qBAAqB;AACvC,MAAM,SAAS,GAAG,6BAA6B;AAC/C,MAAM,eAAe,GAAG,2BAA2B;AACnD,MAAM,YAAY,GAAG,6BAA6B;MAGrC,oBAAoB,CAAA;AACd,IAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC3B,OAAO,GAAG,UAAU,EAAE;IACtB,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS;IAE3D,QAAQ,GAAG,MAAM,CAAW,IAAI,CAAC,QAAQ,EAAE,+EAAC;IAC5C,KAAK,GAAG,MAAM,CAAQ,IAAI,CAAC,SAAS,EAAE,4EAAC;IACvC,YAAY,GAAG,MAAM,CAAU,IAAI,CAAC,gBAAgB,EAAE,mFAAC;IACvD,UAAU,GAAG,MAAM,CAAS,IAAI,CAAC,cAAc,EAAE,iFAAC;IAClD,YAAY,GAAG,MAAM,CAAU,IAAI,CAAC,gBAAgB,EAAE,mFAAC;AAE/C,IAAA,WAAW,GAAG,MAAM,CAAC,MAAK;QACzC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC;AACtC,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;AACtD,QAAA,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;AAClD,IAAA,CAAC,kFAAC;AAEe,IAAA,YAAY,GAAG,MAAM,CAAC,MAAK;QAC1C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC;AACvC,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AACpD,QAAA,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;AAChD,IAAA,CAAC,mFAAC;AAEe,IAAA,YAAY,GAAG,MAAM,CAAC,MAAK;AAC1C,QAAA,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;AAC/D,IAAA,CAAC,mFAAC;AAEe,IAAA,iBAAiB,GAAG,MAAM,CAAC,MAAK;AAC/C,QAAA,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;AACnE,IAAA,CAAC,wFAAC;AAEe,IAAA,eAAe,GAAG,MAAM,CAAC,MAAK;AAC7C,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE;QACnC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,gBAAgB,CAAC;QAC1C,IAAI,OAAO,EAAE;YACX,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC;QACzC;AACA,QAAA,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;AACtD,IAAA,CAAC,sFAAC;IAEM,QAAQ,GAAA;QACd,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAoB;AACjE,QAAA,OAAO,MAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,QAAQ;IACnE;IAEQ,SAAS,GAAA;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAiB;AAC/D,QAAA,OAAO,MAAM,IAAI,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,SAAS;IACrE;IAEQ,gBAAgB,GAAA;QACtB,OAAO,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,MAAM;IACpD;IAEQ,gBAAgB,GAAA;QACtB,OAAO,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,MAAM;IACvD;IAEQ,cAAc,GAAA;AACpB,QAAA,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;AAC9E,QAAA,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC1E;uGA7DW,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAApB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,cADP,MAAM,EAAA,CAAA;;2FACnB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;AAiElC,SAAS,UAAU,GAAA;AACjB,IAAA,IAAI;AACF,QAAA,OAAO,OAAO,YAAY,KAAK,WAAW,GAAG,IAAI,GAAG,YAAY;IAClE;AAAE,IAAA,MAAM;AACN,QAAA,OAAO,IAAI;IACb;AACF;;AClHA;;AAEG;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@senior-ease/ui",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "description": "Senior Ease Angular Design System UI library (Atomic Design, standalone components, accessibility-first).",
5
5
  "keywords": [
6
6
  "angular",
@@ -24,8 +24,8 @@
24
24
  "access": "public"
25
25
  },
26
26
  "peerDependencies": {
27
- "@angular/common": "^21.2.5",
28
- "@angular/core": "^21.2.5",
27
+ "@angular/common": "^21.2.0",
28
+ "@angular/core": "^21.2.0",
29
29
  "@fortawesome/angular-fontawesome": "^4.0.0",
30
30
  "@fortawesome/fontawesome-svg-core": "^7.2.0",
31
31
  "@fortawesome/free-solid-svg-icons": "^7.2.0"
@@ -48,7 +48,7 @@ declare class DividerComponent {
48
48
  static ɵcmp: i0.ɵɵComponentDeclaration<DividerComponent, "ui-divider", never, { "orientation": { "alias": "orientation"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; }, {}, never, never, true, never>;
49
49
  }
50
50
 
51
- type IconName = 'bell' | 'book' | 'calendar' | 'chart' | 'check' | 'clock' | 'home' | 'message' | 'user';
51
+ type IconName = 'bell' | 'book' | 'calendar' | 'chart' | 'check' | 'clock' | 'home' | 'message' | 'user' | 'accessibility';
52
52
  type IconValue = IconName | IconDefinition;
53
53
  declare class IconComponent {
54
54
  name: IconName;