@educarehq/solaris-components 0.2.4 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { ElementRef, TemplateRef, AfterContentInit, OnDestroy, EventEmitter, QueryList, OnChanges, SimpleChanges, AfterViewInit, WritableSignal, InjectionToken } from '@angular/core';
2
+ import { ElementRef, TemplateRef, AfterContentInit, OnDestroy, EventEmitter, QueryList, OnChanges, SimpleChanges, OnInit, AfterViewInit, WritableSignal, InjectionToken } from '@angular/core';
3
3
  import { ControlValueAccessor, Validator, ValidationErrors, AbstractControl, NgControl } from '@angular/forms';
4
4
  import * as _educarehq_solaris_components from '@educarehq/solaris-components';
5
5
  import { SolarisTranslationParams } from '@educarehq/solaris-services';
@@ -124,6 +124,76 @@ declare class SolarisBreadcrumb {
124
124
  static ɵcmp: i0.ɵɵComponentDeclaration<SolarisBreadcrumb, "solaris-breadcrumb", never, { "minItems": { "alias": "min-items"; "required": false; }; "maxItems": { "alias": "max-items"; "required": false; }; "responsive": { "alias": "responsive"; "required": false; }; "items": { "alias": "items"; "required": true; }; }, { "itemSelect": "itemSelect"; }, never, never, true, never>;
125
125
  }
126
126
 
127
+ declare class SolarisPopoverTriggerDirective {
128
+ readonly elementRef: ElementRef<HTMLElement>;
129
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisPopoverTriggerDirective, never>;
130
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisPopoverTriggerDirective, "[solaris-popover-trigger]", never, {}, {}, never, never, true, never>;
131
+ }
132
+
133
+ declare class SolarisPopoverPanelDirective {
134
+ readonly templateRef: TemplateRef<any>;
135
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisPopoverPanelDirective, never>;
136
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisPopoverPanelDirective, "ng-template[solaris-popover-panel]", never, {}, {}, never, never, true, never>;
137
+ }
138
+
139
+ type SolarisPopoverPlacement = 'bottom-start' | 'bottom' | 'bottom-end' | 'top-start' | 'top' | 'top-end' | 'right-start' | 'right' | 'right-end' | 'left-start' | 'left' | 'left-end';
140
+ interface SolarisPopoverPositionConfiguration {
141
+ placement: SolarisPopoverPlacement;
142
+ offset: number;
143
+ viewportPadding: number;
144
+ autoFlip: boolean;
145
+ autoShift: boolean;
146
+ matchWidth: boolean;
147
+ }
148
+ interface SolarisPopoverPositionResult {
149
+ x: number;
150
+ y: number;
151
+ appliedPlacement: SolarisPopoverPlacement;
152
+ }
153
+ declare function computePopoverPosition(anchorRect: DOMRect, panelRect: DOMRect, configuration: SolarisPopoverPositionConfiguration): SolarisPopoverPositionResult;
154
+
155
+ declare class SolarisPopover {
156
+ private readonly appRef;
157
+ private readonly destroyRef;
158
+ offset: number;
159
+ panelClass: string;
160
+ autoFlip: boolean;
161
+ autoShift: boolean;
162
+ matchWidth: boolean;
163
+ viewportPadding: number;
164
+ closeOnEscape: boolean;
165
+ closeOnOutsideClick: boolean;
166
+ anchorElement?: HTMLElement | null;
167
+ matchWidthElement?: HTMLElement | null;
168
+ placement: SolarisPopoverPlacement;
169
+ openChange: EventEmitter<boolean>;
170
+ private readonly _internalOpen;
171
+ private readonly _openInput;
172
+ readonly isOpen: i0.Signal<boolean>;
173
+ set open(v: boolean | null);
174
+ get open(): boolean | null;
175
+ panelDir?: SolarisPopoverPanelDirective;
176
+ triggerDir?: SolarisPopoverTriggerDirective;
177
+ private raf;
178
+ private static seq;
179
+ private _setting;
180
+ private panelHost?;
181
+ private panelView?;
182
+ private readonly _id;
183
+ get dataOpen(): "true" | null;
184
+ constructor();
185
+ toggle(): void;
186
+ setOpen(next: boolean): void;
187
+ private ensureMounted;
188
+ private show;
189
+ private hide;
190
+ private unmountHard;
191
+ private scheduleReposition;
192
+ private reposition;
193
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisPopover, never>;
194
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisPopover, "solaris-popover", never, { "offset": { "alias": "offset"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "autoFlip": { "alias": "autoFlip"; "required": false; }; "autoShift": { "alias": "autoShift"; "required": false; }; "matchWidth": { "alias": "matchWidth"; "required": false; }; "viewportPadding": { "alias": "viewportPadding"; "required": false; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; }; "closeOnOutsideClick": { "alias": "closeOnOutsideClick"; "required": false; }; "anchorElement": { "alias": "anchorElement"; "required": false; }; "matchWidthElement": { "alias": "matchWidthElement"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "open": { "alias": "open"; "required": false; }; }, { "openChange": "openChange"; }, ["panelDir", "triggerDir"], ["*"], true, never>;
195
+ }
196
+
127
197
  type TabsSize = 'sm' | 'md';
128
198
  type TabsVariant = 'underline' | 'pill';
129
199
 
@@ -190,41 +260,68 @@ declare class SolarisLoadingOverlay implements OnChanges {
190
260
  static ngAcceptInputType_lockScroll: any;
191
261
  }
192
262
 
193
- type SolarisLoadingColor = 'primary' | 'success' | 'warning' | 'error' | 'surface';
194
- type SolarisLoadingType = 'spinner' | 'spinner-dashed' | 'progress' | 'bar';
263
+ type SolarisLoadingTrail = 'forward' | 'reverse';
264
+ type SolarisLoadingSpeed = 'slow' | 'md' | 'fast';
265
+ type SolarisLoadingDashDensity = 'low' | 'md' | 'high';
195
266
  type SolarisLoadingSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
267
+ type SolarisLoadingEasing = 'linear' | 'smooth' | 'snappy';
268
+ type LoadingType = 'spinner' | 'spinner-dashed' | 'progress' | 'bar';
269
+ type SolarisLoadingColor = SolarisLoadingPresetColor | (string & {});
270
+ type SolarisLoadingPresetColor = 'primary' | 'success' | 'warning' | 'error' | 'surface';
196
271
 
197
272
  declare class SolarisLoading {
198
273
  readonly marker = "";
199
274
  label?: string;
200
275
  value: number | null;
276
+ type: LoadingType;
201
277
  size: SolarisLoadingSize;
202
- type: SolarisLoadingType;
278
+ speed: SolarisLoadingSpeed;
203
279
  color: SolarisLoadingColor;
280
+ easing: SolarisLoadingEasing;
281
+ trail: 'forward' | 'reverse';
282
+ dashDensity: SolarisLoadingDashDensity;
204
283
  indeterminate: boolean;
205
- get ariaValueNow(): number | null;
206
284
  get percent(): number;
207
- get role(): 'status' | 'progressbar';
208
285
  get ariaLabel(): string;
286
+ get dashedSpokes(): Spoke[];
287
+ get inlineColor(): string | null;
288
+ get ariaValueNow(): number | null;
289
+ get role(): 'status' | 'progressbar';
290
+ get dataColor(): SolarisLoadingPresetColor | null;
291
+ private get dashedCount();
209
292
  static ɵfac: i0.ɵɵFactoryDeclaration<SolarisLoading, never>;
210
- static ɵcmp: i0.ɵɵComponentDeclaration<SolarisLoading, "solaris-loading", never, { "label": { "alias": "label"; "required": false; }; "value": { "alias": "value"; "required": false; }; "size": { "alias": "size"; "required": false; }; "type": { "alias": "type"; "required": false; }; "color": { "alias": "color"; "required": false; }; "indeterminate": { "alias": "indeterminate"; "required": false; }; }, {}, never, never, true, never>;
293
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisLoading, "solaris-loading", never, { "label": { "alias": "label"; "required": false; }; "value": { "alias": "value"; "required": false; }; "type": { "alias": "type"; "required": false; }; "size": { "alias": "size"; "required": false; }; "speed": { "alias": "speed"; "required": false; }; "color": { "alias": "color"; "required": false; }; "easing": { "alias": "easing"; "required": false; }; "trail": { "alias": "trail"; "required": false; }; "dashDensity": { "alias": "dashDensity"; "required": false; }; "indeterminate": { "alias": "indeterminate"; "required": false; }; }, {}, never, never, true, never>;
211
294
  static ngAcceptInputType_indeterminate: any;
212
295
  }
296
+ type Spoke = {
297
+ angle: number;
298
+ opacity: number;
299
+ };
300
+
301
+ type SolarisSizePreset = 'sm' | 'md' | 'lg';
302
+ type SolarisRadiusPreset = 'none' | 'sm' | 'md' | 'lg' | 'full';
303
+ type SolarisColorPreset = 'primary' | 'surface' | 'success' | 'warning' | 'error' | 'info' | 'gradient';
213
304
 
214
- type BadgeSize = 'sm' | 'md';
215
305
  type BadgeVariant = 'solid' | 'subtle' | 'outline';
216
- type BadgeColor = 'primary' | 'success' | 'warning' | 'error' | 'info' | 'surface';
306
+ type BadgeColorInput = SolarisColorPreset | string & {
307
+ readonly __solarisCustom?: unique symbol;
308
+ };
217
309
 
218
310
  declare class SolarisBadge {
219
- hostClass: string;
220
311
  pill: boolean;
221
- size: BadgeSize;
312
+ customTextColor?: string;
222
313
  interactive: boolean;
223
- color: BadgeColor;
314
+ size: SolarisSizePreset;
224
315
  variant: BadgeVariant;
316
+ color: BadgeColorInput;
225
317
  ariaHidden: 'true' | 'false' | null;
318
+ hostClass: string;
319
+ private readonly presetColors;
320
+ get colorClass(): string;
321
+ get isCustomColor(): boolean;
322
+ get customColorValue(): string | null;
226
323
  static ɵfac: i0.ɵɵFactoryDeclaration<SolarisBadge, never>;
227
- static ɵcmp: i0.ɵɵComponentDeclaration<SolarisBadge, "solaris-badge", never, { "pill": { "alias": "pill"; "required": false; }; "size": { "alias": "size"; "required": false; }; "interactive": { "alias": "interactive"; "required": false; }; "color": { "alias": "color"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "ariaHidden": { "alias": "aria-hidden"; "required": false; }; }, {}, never, ["*"], true, never>;
324
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisBadge, "solaris-badge", never, { "pill": { "alias": "pill"; "required": false; }; "customTextColor": { "alias": "customTextColor"; "required": false; }; "interactive": { "alias": "interactive"; "required": false; }; "size": { "alias": "size"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "color": { "alias": "color"; "required": false; }; "ariaHidden": { "alias": "aria-hidden"; "required": false; }; }, {}, never, ["*"], true, never>;
228
325
  }
229
326
 
230
327
  interface SolarisSliderItem {
@@ -310,6 +407,304 @@ declare class SolarisDivider {
310
407
  static ɵcmp: i0.ɵɵComponentDeclaration<SolarisDivider, "solaris-divider", never, { "label": { "alias": "label"; "required": false; }; "inset": { "alias": "inset"; "required": false; }; "spacing": { "alias": "spacing"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "strength": { "alias": "strength"; "required": false; }; "orientation": { "alias": "orientation"; "required": false; }; "labelAlign": { "alias": "label-align"; "required": false; }; }, {}, never, never, true, never>;
311
408
  }
312
409
 
410
+ declare class SolarisDrawerHeaderDirective {
411
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisDrawerHeaderDirective, never>;
412
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisDrawerHeaderDirective, "[solaris-drawer-header]", never, {}, {}, never, never, true, never>;
413
+ }
414
+
415
+ declare class SolarisDrawerFooterDirective {
416
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisDrawerFooterDirective, never>;
417
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisDrawerFooterDirective, "[solaris-drawer-footer]", never, {}, {}, never, never, true, never>;
418
+ }
419
+
420
+ type SolarisDrawerSide = 'right' | 'left' | 'bottom';
421
+
422
+ declare class SolarisDrawer {
423
+ private readonly doc;
424
+ title: string;
425
+ titleKey: string;
426
+ panelClass: string;
427
+ backdrop: boolean;
428
+ showClose: boolean;
429
+ trapFocus: boolean;
430
+ backdropClass: string;
431
+ showHeader: boolean;
432
+ lockScroll: boolean;
433
+ restoreFocus: boolean;
434
+ closeOnEscape: boolean;
435
+ width: string;
436
+ side: SolarisDrawerSide;
437
+ height: string;
438
+ closeOnOutsideClick: boolean;
439
+ private readonly _openInput;
440
+ private readonly _internalOpen;
441
+ set open(v: boolean | null);
442
+ get open(): boolean | null;
443
+ readonly isOpen: i0.Signal<boolean>;
444
+ openChange: EventEmitter<boolean>;
445
+ headerSlot?: SolarisDrawerHeaderDirective;
446
+ footerSlot?: SolarisDrawerFooterDirective;
447
+ panelEl?: ElementRef<HTMLElement>;
448
+ private static seq;
449
+ readonly _id: string;
450
+ private static scrollLockCount;
451
+ private static prevBodyOverflow;
452
+ readonly titleId: string;
453
+ private prevFocused;
454
+ private static prevBodyPaddingRight;
455
+ get dataSide(): SolarisDrawerSide;
456
+ get dataOpen(): "true" | null;
457
+ get hasCustomHeader(): boolean;
458
+ get hasCustomFooter(): boolean;
459
+ constructor();
460
+ toggle(): void;
461
+ setOpen(next: boolean): void;
462
+ onBackdropClick(): void;
463
+ onPanelKeydown(ev: KeyboardEvent): void;
464
+ private onOpen;
465
+ private onClose;
466
+ private focusFirst;
467
+ private getFocusable;
468
+ private lockBodyScroll;
469
+ private unlockBodyScroll;
470
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisDrawer, never>;
471
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisDrawer, "solaris-drawer", never, { "title": { "alias": "title"; "required": false; }; "titleKey": { "alias": "titleKey"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "backdrop": { "alias": "backdrop"; "required": false; }; "showClose": { "alias": "showClose"; "required": false; }; "trapFocus": { "alias": "trapFocus"; "required": false; }; "backdropClass": { "alias": "backdropClass"; "required": false; }; "showHeader": { "alias": "showHeader"; "required": false; }; "lockScroll": { "alias": "lockScroll"; "required": false; }; "restoreFocus": { "alias": "restoreFocus"; "required": false; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; }; "width": { "alias": "width"; "required": false; }; "side": { "alias": "side"; "required": false; }; "height": { "alias": "height"; "required": false; }; "closeOnOutsideClick": { "alias": "closeOnOutsideClick"; "required": false; }; "open": { "alias": "open"; "required": false; }; }, { "openChange": "openChange"; }, ["headerSlot", "footerSlot"], ["[solaris-drawer-header]", "*", "[solaris-drawer-footer]"], true, never>;
472
+ }
473
+
474
+ declare class SolarisFilterPanelFooterDirective {
475
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisFilterPanelFooterDirective, never>;
476
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisFilterPanelFooterDirective, "[solaris-filter-panel-footer]", never, {}, {}, never, never, true, never>;
477
+ }
478
+
479
+ declare class SolarisTableFilters {
480
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisTableFilters, never>;
481
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisTableFilters, "solaris-table-filters", never, {}, {}, never, ["*"], true, never>;
482
+ }
483
+
484
+ declare class SolarisFilterField {
485
+ label: string;
486
+ labelKey: string;
487
+ active: boolean;
488
+ resetLabel: string;
489
+ resetLabelKey: string;
490
+ reset: EventEmitter<void>;
491
+ get showReset(): boolean;
492
+ onResetClick(ev: MouseEvent): void;
493
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisFilterField, never>;
494
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisFilterField, "solaris-filter-field", never, { "label": { "alias": "label"; "required": false; }; "labelKey": { "alias": "labelKey"; "required": false; }; "active": { "alias": "active"; "required": false; }; "resetLabel": { "alias": "resetLabel"; "required": false; }; "resetLabelKey": { "alias": "resetLabelKey"; "required": false; }; }, { "reset": "reset"; }, never, ["*"], true, never>;
495
+ }
496
+
497
+ declare class SolarisFilterPanelChipsDirective {
498
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisFilterPanelChipsDirective, never>;
499
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisFilterPanelChipsDirective, "[solaris-filter-panel-chips]", never, {}, {}, never, never, true, never>;
500
+ }
501
+
502
+ type SolarisFilterPanelRadius = 'sm' | 'md' | 'full';
503
+
504
+ declare class SolarisFilterPanel {
505
+ count: number;
506
+ labelKey: string;
507
+ titleKey: string;
508
+ disabled: boolean;
509
+ drawerSide: 'right' | 'left';
510
+ radius: SolarisFilterPanelRadius;
511
+ drawerWidth: string;
512
+ label: string;
513
+ title: string;
514
+ private readonly _internalOpen;
515
+ private readonly _openInput;
516
+ private readonly _chipsSlot;
517
+ set open(v: boolean | null);
518
+ get open(): boolean | null;
519
+ readonly isOpen: i0.Signal<boolean>;
520
+ apply: EventEmitter<void>;
521
+ clearAll: EventEmitter<void>;
522
+ openChange: EventEmitter<boolean>;
523
+ footerSlot?: SolarisFilterPanelFooterDirective;
524
+ set chipsSlot(v: SolarisFilterPanelChipsDirective | undefined);
525
+ readonly hasChips: i0.Signal<boolean>;
526
+ get hasCustomFooter(): boolean;
527
+ setOpen(next: boolean): void;
528
+ toggle(): void;
529
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisFilterPanel, never>;
530
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisFilterPanel, "solaris-filter-panel", never, { "count": { "alias": "count"; "required": false; }; "labelKey": { "alias": "labelKey"; "required": false; }; "titleKey": { "alias": "titleKey"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "drawerSide": { "alias": "drawerSide"; "required": false; }; "radius": { "alias": "radius"; "required": false; }; "drawerWidth": { "alias": "drawerWidth"; "required": false; }; "label": { "alias": "label"; "required": false; }; "title": { "alias": "title"; "required": false; }; "open": { "alias": "open"; "required": false; }; }, { "apply": "apply"; "clearAll": "clearAll"; "openChange": "openChange"; }, ["footerSlot", "chipsSlot"], ["[solarisFilterPanelChips]", "*", "[solarisFilterPanelFooter]"], true, never>;
531
+ }
532
+
533
+ declare class SolarisFilterChip {
534
+ label: string;
535
+ value: string;
536
+ labelKey: string;
537
+ valueKey: string;
538
+ disabled: boolean;
539
+ removable: boolean;
540
+ radius: SolarisRadiusPreset;
541
+ remove: EventEmitter<void>;
542
+ chipClick: EventEmitter<void>;
543
+ onRemoveClick(ev: MouseEvent): void;
544
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisFilterChip, never>;
545
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisFilterChip, "solaris-filter-chip", never, { "label": { "alias": "label"; "required": false; }; "value": { "alias": "value"; "required": false; }; "labelKey": { "alias": "labelKey"; "required": false; }; "valueKey": { "alias": "valueKey"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "removable": { "alias": "removable"; "required": false; }; "radius": { "alias": "radius"; "required": false; }; }, { "remove": "remove"; "chipClick": "chipClick"; }, never, never, true, never>;
546
+ }
547
+
548
+ declare class SolarisTableSkeleton {
549
+ rows: number;
550
+ columns: number;
551
+ selectable: boolean;
552
+ gridTemplateColumns: string;
553
+ rowsArray(): number[];
554
+ colsArray(): number[];
555
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisTableSkeleton, never>;
556
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisTableSkeleton, "solaris-table-skeleton", never, { "rows": { "alias": "rows"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "gridTemplateColumns": { "alias": "gridTemplateColumns"; "required": false; }; }, {}, never, never, true, never>;
557
+ }
558
+
559
+ declare class SolarisFilterBar {
560
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisFilterBar, never>;
561
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisFilterBar, "solaris-filter-bar", never, {}, {}, never, ["*"], true, never>;
562
+ }
563
+
564
+ declare class SolarisColumnCellDef {
565
+ readonly template: TemplateRef<any>;
566
+ constructor(template: TemplateRef<any>);
567
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisColumnCellDef, never>;
568
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisColumnCellDef, "ng-template[solaris-column-cell]", never, {}, {}, never, never, true, never>;
569
+ }
570
+ declare class SolarisColumnHeaderDef {
571
+ readonly template: TemplateRef<any>;
572
+ constructor(template: TemplateRef<any>);
573
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisColumnHeaderDef, never>;
574
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisColumnHeaderDef, "ng-template[solaris-column-header]", never, {}, {}, never, never, true, never>;
575
+ }
576
+
577
+ type SolarisTableVariant = 'grid' | 'zebra';
578
+ type SolarisAlign = 'start' | 'center' | 'end';
579
+ type SolarisSortDirection = 'asc' | 'desc';
580
+ type SolarisRowKey = string | number;
581
+ interface SolarisSort {
582
+ key: string;
583
+ order: number;
584
+ direction: SolarisSortDirection;
585
+ }
586
+ interface SolarisPageChange {
587
+ pageSize: number;
588
+ pageIndex: number;
589
+ }
590
+ interface SolarisTableI18n {
591
+ ofLabelKey: string;
592
+ goToLabelKey: string;
593
+ selectedLabelKey: string;
594
+ rowsPerPageLabelKey: string;
595
+ }
596
+
597
+ declare class SolarisTableColumn {
598
+ private readonly ids;
599
+ readonly id: string;
600
+ field?: string;
601
+ width?: string;
602
+ header?: string;
603
+ sortKey?: string;
604
+ minWidth?: string;
605
+ maxWidth?: string;
606
+ headerKey?: string;
607
+ headerIconClass?: string;
608
+ align: SolarisAlign;
609
+ grow: boolean;
610
+ resizable: boolean;
611
+ sortable: boolean;
612
+ cellDef?: SolarisColumnCellDef;
613
+ headerDef?: SolarisColumnHeaderDef;
614
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisTableColumn, never>;
615
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisTableColumn, "solaris-column", never, { "field": { "alias": "field"; "required": false; }; "width": { "alias": "width"; "required": false; }; "header": { "alias": "header"; "required": false; }; "sortKey": { "alias": "sortKey"; "required": false; }; "minWidth": { "alias": "minWidth"; "required": false; }; "maxWidth": { "alias": "maxWidth"; "required": false; }; "headerKey": { "alias": "headerKey"; "required": false; }; "headerIconClass": { "alias": "headerIconClass"; "required": false; }; "align": { "alias": "align"; "required": false; }; "grow": { "alias": "grow"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; "sortable": { "alias": "sortable"; "required": false; }; }, {}, ["cellDef", "headerDef"], never, true, never>;
616
+ static ngAcceptInputType_grow: unknown;
617
+ static ngAcceptInputType_resizable: unknown;
618
+ static ngAcceptInputType_sortable: unknown;
619
+ }
620
+
621
+ declare class SolarisTable implements AfterContentInit, OnChanges {
622
+ private readonly destroyRef;
623
+ length: number;
624
+ pageIndex: number;
625
+ pageSize: number;
626
+ rowsCount: number;
627
+ loading: boolean;
628
+ sort: SolarisSort[];
629
+ selectable: boolean;
630
+ tableDescription: string;
631
+ selection: SolarisRowKey[];
632
+ variant: SolarisTableVariant;
633
+ emptyIconClass: string;
634
+ pageSizeOptions: number[];
635
+ emptyTextKey: string;
636
+ sortChange: EventEmitter<SolarisSort[]>;
637
+ pageChange: EventEmitter<SolarisPageChange>;
638
+ selectionChange: EventEmitter<SolarisRowKey[]>;
639
+ private readonly columnQuery;
640
+ private readonly tableRoot;
641
+ readonly needsScroll: i0.WritableSignal<boolean>;
642
+ readonly measuredReady: i0.WritableSignal<boolean>;
643
+ readonly sortState: i0.WritableSignal<SolarisSort[]>;
644
+ private readonly measuredPx;
645
+ readonly columns: i0.WritableSignal<SolarisTableColumn[]>;
646
+ private readonly selectionSig;
647
+ private readonly rowKeys;
648
+ private readonly manualPx;
649
+ private readonly selectionSetSig;
650
+ readonly selectAllChecked: i0.Signal<boolean>;
651
+ readonly selectAllIndeterminate: i0.Signal<boolean>;
652
+ readonly selectedCount: i0.Signal<number>;
653
+ readonly gridTemplateColumns: i0.Signal<string>;
654
+ private rafId;
655
+ private resizeObserver?;
656
+ get rangeStart(): number;
657
+ get rangeEnd(): number;
658
+ get totalPages(): number;
659
+ ngAfterContentInit(): void;
660
+ ngOnChanges(changes: SimpleChanges): void;
661
+ private syncColumns;
662
+ private scheduleMeasure;
663
+ private measureColumns;
664
+ private measureHeaderCellWidth;
665
+ private measureBodyCellsWidth;
666
+ private measureBodyCellWidth;
667
+ private toPx;
668
+ private updateScrollFlag;
669
+ private clamp;
670
+ clearManualWidth(i: number): void;
671
+ onResizeStart(ev: PointerEvent, i: number): void;
672
+ private getHeaderCell;
673
+ private pxMinWidth;
674
+ private pxFixedWidth;
675
+ private reservedWidthExcept;
676
+ readField(row: any, path?: string): any;
677
+ private computeResizeMax;
678
+ registerRowKey(key: SolarisRowKey): void;
679
+ unregisterRowKey(key: SolarisRowKey): void;
680
+ onToggleSelectAll(checked: boolean): void;
681
+ toggleRow(key: SolarisRowKey, checked: boolean): void;
682
+ isSelected(key: SolarisRowKey): boolean;
683
+ getSortFor(col: SolarisTableColumn): SolarisSort | undefined;
684
+ onHeaderSortClick(ev: MouseEvent, col: SolarisTableColumn): void;
685
+ ariaSort(col: SolarisTableColumn): 'none' | 'ascending' | 'descending';
686
+ firstPage(): void;
687
+ prevPage(): void;
688
+ nextPage(): void;
689
+ lastPage(): void;
690
+ changePageSize(size: number): void;
691
+ private buildGridTemplateColumns;
692
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisTable, never>;
693
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisTable, "solaris-table", never, { "length": { "alias": "length"; "required": false; }; "pageIndex": { "alias": "pageIndex"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "rowsCount": { "alias": "rowsCount"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "sort": { "alias": "sort"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "tableDescription": { "alias": "tableDescription"; "required": false; }; "selection": { "alias": "selection"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "emptyIconClass": { "alias": "emptyIconClass"; "required": false; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; }; "emptyTextKey": { "alias": "emptyTextKey"; "required": false; }; }, { "sortChange": "sortChange"; "pageChange": "pageChange"; "selectionChange": "selectionChange"; }, ["columnQuery"], ["solaris-table-filters", "solaris-row"], true, never>;
694
+ }
695
+
696
+ declare class SolarisRowComponent implements OnInit {
697
+ readonly table: SolarisTable;
698
+ private readonly destroyRef;
699
+ rowKey: SolarisRowKey;
700
+ value: any;
701
+ constructor(table: SolarisTable);
702
+ ngOnInit(): void;
703
+ get isSelected(): boolean;
704
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisRowComponent, [{ optional: true; host: true; }]>;
705
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisRowComponent, "solaris-row", never, { "rowKey": { "alias": "rowKey"; "required": false; }; "value": { "alias": "value"; "required": true; }; }, {}, never, never, true, never>;
706
+ }
707
+
313
708
  declare class SolarisHeaderDirective {
314
709
  static ɵfac: i0.ɵɵFactoryDeclaration<SolarisHeaderDirective, never>;
315
710
  static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisHeaderDirective, "[solaris-header]", never, {}, {}, never, never, true, never>;
@@ -372,52 +767,119 @@ declare class SolarisPageHeader {
372
767
  static ɵcmp: i0.ɵɵComponentDeclaration<SolarisPageHeader, "solaris-page-header", never, { "layout": { "alias": "layout"; "required": false; }; "density": { "alias": "density"; "required": false; }; }, {}, ["titleSlot", "actionsSlot", "breadcrumbSlot", "descriptionSlot"], ["[solaris-page-header-breadcrumb]", "[solaris-page-header-title]", "[solaris-page-header-title-meta]", "[solaris-page-header-title-meta]", "[solaris-page-header-description]", "[solaris-page-header-actions]"], true, never>;
373
768
  }
374
769
 
375
- declare class SolarisButtonGroupDirective {
376
- readonly attr = "";
377
- static ɵfac: i0.ɵɵFactoryDeclaration<SolarisButtonGroupDirective, never>;
378
- static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisButtonGroupDirective, "[solaris-button-group]", never, {}, {}, never, never, true, never>;
770
+ type CheckboxAppearance = 'solid' | 'outline';
771
+ type CheckboxVariant = 'square' | 'round' | 'icon';
772
+ type CheckboxColorInput = SolarisColorPreset | SolarisCheckCustomString;
773
+ type SolarisCheckCustomString = string & {
774
+ readonly __solarisCustom?: unique symbol;
775
+ };
776
+
777
+ declare class SolarisCheckbox implements ControlValueAccessor {
778
+ readonly indeterminate: i0.InputSignal<boolean>;
779
+ readonly ariaLabel: i0.InputSignal<string | null>;
780
+ readonly size: i0.InputSignal<SolarisSizePreset>;
781
+ readonly variant: i0.InputSignal<CheckboxVariant>;
782
+ readonly color: i0.InputSignal<CheckboxColorInput>;
783
+ readonly inputId: i0.InputSignal<string | null>;
784
+ readonly appearance: i0.InputSignal<CheckboxAppearance>;
785
+ readonly checkColor: i0.InputSignal<CheckboxColorInput | null>;
786
+ readonly checked: i0.WritableSignal<boolean>;
787
+ readonly disabled: i0.WritableSignal<boolean>;
788
+ readonly checkedChange: i0.OutputEmitterRef<boolean>;
789
+ readonly indeterminateChange: i0.OutputEmitterRef<boolean>;
790
+ private readonly native?;
791
+ readonly customAccent: i0.Signal<string | null>;
792
+ readonly colorKey: i0.Signal<SolarisColorPreset | "custom">;
793
+ private readonly autoId;
794
+ readonly id: i0.Signal<string>;
795
+ readonly ink: i0.Signal<string | null>;
796
+ private onChange;
797
+ private onTouched;
798
+ constructor();
799
+ onNativeChange(next: boolean): void;
800
+ onBlur(): void;
801
+ writeValue(value: boolean | null): void;
802
+ registerOnTouched(fn: () => void): void;
803
+ setDisabledState(isDisabled: boolean): void;
804
+ registerOnChange(fn: (value: boolean) => void): void;
805
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisCheckbox, never>;
806
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisCheckbox, "solaris-checkbox", never, { "indeterminate": { "alias": "indeterminate"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "inputId": { "alias": "id"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "checkColor": { "alias": "checkColor"; "required": false; "isSignal": true; }; }, { "checkedChange": "checkedChange"; "indeterminateChange": "indeterminateChange"; }, never, ["*"], true, never>;
379
807
  }
380
808
 
381
- type SolarisButtonSize = 'sm' | 'md' | 'lg';
382
809
  type SolarisButtonVariant = 'solid' | 'outline' | 'ghost' | 'soft';
383
- type SolarisButtonColor = 'primary' | 'surface' | 'success' | 'warning' | 'error' | 'info' | 'gradient';
810
+ type SolarisRadiusInput = SolarisRadiusPreset | SolarisCustomString;
811
+ type SolarisButtonColorInput = SolarisColorPreset | SolarisCustomString;
812
+ type SolarisCustomString = string & {
813
+ readonly __solarisCustom?: unique symbol;
814
+ };
384
815
 
385
- declare class SolarisButtonDirective {
386
- private readonly el;
387
- private readonly isAnchor;
816
+ declare class ButtonGroupDirective {
817
+ private _radius;
818
+ set radius(v: SolarisRadiusInput | null | undefined);
819
+ readonly attr = "";
820
+ get groupRadius(): string | null;
821
+ static ɵfac: i0.ɵɵFactoryDeclaration<ButtonGroupDirective, never>;
822
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ButtonGroupDirective, "[solaris-button-group]", never, { "radius": { "alias": "radius"; "required": false; }; }, {}, never, never, true, never>;
823
+ }
824
+
825
+ declare class ButtonDirective {
826
+ private readonly elementRef;
388
827
  private readonly _loading;
389
828
  private readonly _disabled;
390
829
  private readonly _iconOnly;
391
830
  private readonly _fullWidth;
831
+ private readonly _badgeOverlay;
832
+ private readonly _textColor;
833
+ private readonly _customColor;
392
834
  private readonly _size;
393
- private readonly _color;
394
835
  private readonly _variant;
395
- set size(v: SolarisButtonSize);
396
- set color(v: SolarisButtonColor);
397
- set fullWidth(v: boolean);
836
+ private readonly _radius;
837
+ private readonly _color;
838
+ private readonly isAnchor;
839
+ set size(v: SolarisSizePreset);
398
840
  set variant(v: SolarisButtonVariant);
841
+ set color(v: SolarisButtonColorInput);
842
+ set textColor(v: string | null | undefined);
843
+ set radius(v: SolarisRadiusInput | null | undefined);
399
844
  set loading(v: boolean);
400
- set disabled(v: boolean);
401
845
  set iconOnly(v: boolean);
846
+ set disabled(v: boolean);
847
+ set fullWidth(v: boolean);
848
+ set badgeOverlay(v: boolean);
849
+ readonly attr = "";
402
850
  get tabIndex(): -1 | null;
851
+ get ariaBusy(): "true" | null;
852
+ get dataSize(): SolarisSizePreset;
853
+ get dataColor(): SolarisColorPreset | "custom";
403
854
  get nativeDisabled(): "" | null;
404
- readonly attr = "";
405
- get ariaDisabled(): "true" | null;
406
- get dataSize(): SolarisButtonSize;
407
- get dataColor(): SolarisButtonColor;
408
855
  get dataVariant(): SolarisButtonVariant;
409
- get ariaBusy(): "true" | null;
856
+ get ariaDisabled(): "true" | null;
410
857
  get dataIconOnly(): "true" | null;
411
858
  get dataFullWidth(): "true" | null;
859
+ get customColorValue(): string | null;
860
+ get dataCustomInk(): "true" | null;
861
+ get customInkValue(): string | null;
862
+ get dataBadgeOverlay(): "true" | null;
863
+ get buttonRadius(): string | null;
412
864
  onClick(ev: Event): void;
413
- static ɵfac: i0.ɵɵFactoryDeclaration<SolarisButtonDirective, never>;
414
- static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisButtonDirective, "button[solaris-button], a[solaris-button]", never, { "size": { "alias": "size"; "required": false; }; "color": { "alias": "color"; "required": false; }; "fullWidth": { "alias": "fullWidth"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "iconOnly": { "alias": "iconOnly"; "required": false; }; }, {}, never, never, true, never>;
415
- static ngAcceptInputType_fullWidth: unknown;
865
+ static ɵfac: i0.ɵɵFactoryDeclaration<ButtonDirective, never>;
866
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ButtonDirective, "button[solaris-button], a[solaris-button]", never, { "size": { "alias": "size"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "color": { "alias": "color"; "required": false; }; "textColor": { "alias": "textColor"; "required": false; }; "radius": { "alias": "radius"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "iconOnly": { "alias": "iconOnly"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "fullWidth": { "alias": "fullWidth"; "required": false; }; "badgeOverlay": { "alias": "badgeOverlay"; "required": false; }; }, {}, never, never, true, never>;
416
867
  static ngAcceptInputType_loading: unknown;
417
- static ngAcceptInputType_disabled: unknown;
418
868
  static ngAcceptInputType_iconOnly: unknown;
869
+ static ngAcceptInputType_disabled: unknown;
870
+ static ngAcceptInputType_fullWidth: unknown;
871
+ static ngAcceptInputType_badgeOverlay: unknown;
872
+ }
873
+
874
+ declare class SolarisIdGenerator {
875
+ private readonly counters;
876
+ next(prefix?: string): string;
877
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisIdGenerator, never>;
878
+ static ɵprov: i0.ɵɵInjectableDeclaration<SolarisIdGenerator>;
419
879
  }
420
880
 
881
+ declare function uniqueId(prefix: string): string;
882
+
421
883
  type Iso2 = Lowercase<string>;
422
884
  type PhoneFormat = 'e164';
423
885
 
@@ -503,7 +965,7 @@ declare class SolarisPasswordDirective implements Validator {
503
965
  validate(control: AbstractControl): ValidationErrors | null;
504
966
  registerOnValidatorChange(fn: () => void): void;
505
967
  static ɵfac: i0.ɵɵFactoryDeclaration<SolarisPasswordDirective, never>;
506
- static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisPasswordDirective, "input[solaris-password],input[solarisPassword]", never, { "minLength": { "alias": "minLength"; "required": false; }; "requireUpper": { "alias": "requireUpper"; "required": false; }; "requireLower": { "alias": "requireLower"; "required": false; }; "requireNumber": { "alias": "requireNumber"; "required": false; }; "requireSpecial": { "alias": "requireSpecial"; "required": false; }; "requireUpperKebab": { "alias": "requireUpperKebab"; "required": false; }; "requireLowerKebab": { "alias": "requireLowerKebab"; "required": false; }; "requireNumberKebab": { "alias": "requireNumberKebab"; "required": false; }; "minLengthKebab": { "alias": "minLengthKebab"; "required": false; }; "requireSpecialKebab": { "alias": "requireSpecialKebab"; "required": false; }; }, {}, never, never, true, never>;
968
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisPasswordDirective, "input[solaris-password]", never, { "minLength": { "alias": "minLength"; "required": false; }; "requireUpper": { "alias": "requireUpper"; "required": false; }; "requireLower": { "alias": "requireLower"; "required": false; }; "requireNumber": { "alias": "requireNumber"; "required": false; }; "requireSpecial": { "alias": "requireSpecial"; "required": false; }; "requireUpperKebab": { "alias": "requireUpperKebab"; "required": false; }; "requireLowerKebab": { "alias": "requireLowerKebab"; "required": false; }; "requireNumberKebab": { "alias": "requireNumberKebab"; "required": false; }; "minLengthKebab": { "alias": "minLengthKebab"; "required": false; }; "requireSpecialKebab": { "alias": "requireSpecialKebab"; "required": false; }; }, {}, never, never, true, never>;
507
969
  }
508
970
 
509
971
  declare class SolarisEmailDirective implements Validator {
@@ -555,17 +1017,6 @@ declare class SolarisControlBridgeDirective {
555
1017
  static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisControlBridgeDirective, "input[solaris-password],input[solaris-email],input[solaris-input],textarea[solaris-input]", never, {}, {}, never, never, true, never>;
556
1018
  }
557
1019
 
558
- declare class SolarisPrefixDirective {
559
- readonly attr = "";
560
- static ɵfac: i0.ɵɵFactoryDeclaration<SolarisPrefixDirective, never>;
561
- static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisPrefixDirective, "[solaris-prefix]", never, {}, {}, never, never, true, never>;
562
- }
563
-
564
- declare class SolarisSuffixDirective {
565
- static ɵfac: i0.ɵɵFactoryDeclaration<SolarisSuffixDirective, never>;
566
- static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisSuffixDirective, "[solaris-suffix]", never, {}, {}, never, never, true, never>;
567
- }
568
-
569
1020
  declare class SolarisFormFieldController {
570
1021
  features: readonly _educarehq_solaris_components.SolarisFormFieldFeature[];
571
1022
  private readonly ngForm;
@@ -597,6 +1048,17 @@ interface SolarisFormFieldFeature {
597
1048
  }
598
1049
  declare const SOLARIS_FORM_FIELD_FEATURES: InjectionToken<readonly SolarisFormFieldFeature[]>;
599
1050
 
1051
+ declare class SolarisPrefixDirective {
1052
+ readonly attr = "";
1053
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisPrefixDirective, never>;
1054
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisPrefixDirective, "[solaris-prefix]", never, {}, {}, never, never, true, never>;
1055
+ }
1056
+
1057
+ declare class SolarisSuffixDirective {
1058
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisSuffixDirective, never>;
1059
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SolarisSuffixDirective, "[solaris-suffix]", never, {}, {}, never, never, true, never>;
1060
+ }
1061
+
600
1062
  declare class FieldErrorComponent {
601
1063
  text?: string;
602
1064
  textKey?: string;
@@ -605,6 +1067,10 @@ declare class FieldErrorComponent {
605
1067
  static ɵcmp: i0.ɵɵComponentDeclaration<FieldErrorComponent, "solaris-field-error", never, { "text": { "alias": "text"; "required": false; }; "textKey": { "alias": "textKey"; "required": false; }; "textParams": { "alias": "textParams"; "required": false; }; }, {}, never, never, true, never>;
606
1068
  }
607
1069
 
1070
+ type SolarisFormFieldAppearance = 'filled' | 'outline';
1071
+ type SolarisFormFieldRadius = 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'full';
1072
+ type SolarisFormFieldShowErrors = 'dirtyOrTouched' | 'always' | 'submitted';
1073
+
608
1074
  declare class FormField {
609
1075
  protected readonly field: SolarisFormFieldController;
610
1076
  prefix?: SolarisPrefixDirective;
@@ -614,7 +1080,9 @@ declare class FormField {
614
1080
  hintKey?: string;
615
1081
  labelKey?: string;
616
1082
  invalid: boolean | null;
617
- showErrors: 'dirtyOrTouched' | 'always' | 'submitted';
1083
+ radius: SolarisFormFieldRadius;
1084
+ appearance: SolarisFormFieldAppearance;
1085
+ showErrors: SolarisFormFieldShowErrors;
618
1086
  private readonly _tick;
619
1087
  constructor();
620
1088
  get hasPrefix(): boolean;
@@ -628,8 +1096,186 @@ declare class FormField {
628
1096
  } | undefined>;
629
1097
  readonly errorKey: i0.Signal<string>;
630
1098
  static ɵfac: i0.ɵɵFactoryDeclaration<FormField, never>;
631
- static ɵcmp: i0.ɵɵComponentDeclaration<FormField, "solaris-form-field", never, { "hint": { "alias": "hint"; "required": false; }; "label": { "alias": "label"; "required": false; }; "hintKey": { "alias": "hintKey"; "required": false; }; "labelKey": { "alias": "labelKey"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "showErrors": { "alias": "showErrors"; "required": false; }; }, {}, ["prefix", "suffix"], ["[solaris-prefix]", "*", "[solaris-suffix]", "[form-field-message]"], true, never>;
1099
+ static ɵcmp: i0.ɵɵComponentDeclaration<FormField, "solaris-form-field", never, { "hint": { "alias": "hint"; "required": false; }; "label": { "alias": "label"; "required": false; }; "hintKey": { "alias": "hintKey"; "required": false; }; "labelKey": { "alias": "labelKey"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "radius": { "alias": "radius"; "required": false; }; "appearance": { "alias": "appearance"; "required": false; }; "showErrors": { "alias": "showErrors"; "required": false; }; }, {}, ["prefix", "suffix"], ["[solaris-prefix]", "*", "[solaris-suffix]", "[form-field-message]"], true, never>;
1100
+ }
1101
+
1102
+ type SolarisSelectNode<T = any> = SolarisSelectItem<T> | SolarisSelectDivider | SolarisSelectGroup<T>;
1103
+ type SelectionDisplay = 'auto' | 'list' | 'count';
1104
+ interface SolarisSelectItem<T = any> {
1105
+ kind: 'item';
1106
+ value: T;
1107
+ label?: string;
1108
+ labelKey?: string;
1109
+ description?: string;
1110
+ descriptionKey?: string;
1111
+ icon?: string;
1112
+ imageUrl?: string;
1113
+ endText?: string;
1114
+ endTextKey?: string;
1115
+ disabled?: boolean;
1116
+ children?: SolarisSelectNode<T>[];
1117
+ childrenTitle?: string;
1118
+ childrenTitleKey?: string;
1119
+ searchText?: string;
1120
+ }
1121
+ interface SolarisSelectDivider {
1122
+ kind: 'divider';
1123
+ }
1124
+ interface SolarisSelectGroup<T = any> {
1125
+ kind: 'group';
1126
+ label?: string;
1127
+ labelKey?: string;
1128
+ items: SolarisSelectNode<T>[];
1129
+ }
1130
+ type SolarisSelectRow = {
1131
+ kind: 'divider';
1132
+ key: string;
1133
+ } | {
1134
+ kind: 'group';
1135
+ key: string;
1136
+ label?: string;
1137
+ labelKey?: string;
1138
+ } | {
1139
+ kind: 'item';
1140
+ key: string;
1141
+ id: string;
1142
+ optionIndex: number;
1143
+ item: SolarisSelectItem;
1144
+ disabled: boolean;
1145
+ selected: boolean;
1146
+ hasChildren: boolean;
1147
+ selectable: boolean;
1148
+ };
1149
+ interface StackLevel {
1150
+ title?: string;
1151
+ titleKey?: string;
1152
+ nodes: SolarisSelectNode[];
1153
+ }
1154
+
1155
+ declare class SolarisSelect implements OnInit, ControlValueAccessor, AfterViewInit {
1156
+ private readonly destroyRef;
1157
+ private readonly injector;
1158
+ private readonly field;
1159
+ tokenEl?: ElementRef<HTMLElement>;
1160
+ measureSlot?: ElementRef<HTMLElement>;
1161
+ triggerWrap?: ElementRef<HTMLElement>;
1162
+ triggerInput?: ElementRef<HTMLInputElement>;
1163
+ get dataOpen(): "true" | null;
1164
+ get dataCompact(): "true" | null;
1165
+ private readonly _rootNodes;
1166
+ set items(v: SolarisSelectNode[] | null | undefined);
1167
+ private sameCvaValue;
1168
+ private _multiple;
1169
+ set multiple(v: boolean);
1170
+ get multiple(): boolean;
1171
+ valueKey?: string;
1172
+ backKey: string;
1173
+ placeholder: string;
1174
+ placeholderKey: string;
1175
+ searchable: boolean;
1176
+ selectedCountKey: string;
1177
+ selectedFirst: boolean;
1178
+ searchPlaceholder: string;
1179
+ selectedCountText: string;
1180
+ panelMaxHeight: string;
1181
+ searchPlaceholderKey: string;
1182
+ selectionSeparator: string;
1183
+ compareWith?: (a: any, b: any) => boolean;
1184
+ backText: string;
1185
+ selectionDisplay: SelectionDisplay;
1186
+ private readonly _disabled;
1187
+ set disabled(v: boolean);
1188
+ get disabled(): boolean;
1189
+ readonly open: i0.WritableSignal<boolean>;
1190
+ readonly searchTerm: i0.WritableSignal<string>;
1191
+ readonly activeIndex: i0.WritableSignal<number>;
1192
+ readonly showCount: i0.WritableSignal<boolean>;
1193
+ readonly showToken: i0.Signal<boolean>;
1194
+ readonly selectedText: i0.Signal<string>;
1195
+ readonly triggerValue: i0.Signal<string>;
1196
+ readonly activeOptionId: i0.Signal<string>;
1197
+ readonly inputPlaceholder: i0.Signal<string>;
1198
+ private readonly _value;
1199
+ readonly selectedItems: i0.Signal<SolarisSelectItem<any>[]>;
1200
+ private readonly _stack;
1201
+ readonly viewModel: i0.Signal<{
1202
+ rows: SolarisSelectRow[];
1203
+ itemRows: {
1204
+ kind: "item";
1205
+ key: string;
1206
+ id: string;
1207
+ optionIndex: number;
1208
+ item: SolarisSelectItem;
1209
+ disabled: boolean;
1210
+ selected: boolean;
1211
+ hasChildren: boolean;
1212
+ selectable: boolean;
1213
+ }[];
1214
+ }>;
1215
+ readonly rows: i0.Signal<SolarisSelectRow[]>;
1216
+ readonly canGoBack: i0.Signal<boolean>;
1217
+ readonly selectedCount: i0.Signal<number>;
1218
+ readonly isSearchMode: i0.Signal<boolean>;
1219
+ readonly itemRows: i0.Signal<{
1220
+ kind: "item";
1221
+ key: string;
1222
+ id: string;
1223
+ optionIndex: number;
1224
+ item: SolarisSelectItem;
1225
+ disabled: boolean;
1226
+ selected: boolean;
1227
+ hasChildren: boolean;
1228
+ selectable: boolean;
1229
+ }[]>;
1230
+ readonly compactInput: i0.Signal<boolean>;
1231
+ readonly currentLevel: i0.Signal<StackLevel>;
1232
+ private static seq;
1233
+ private _measureNonce;
1234
+ private resizeObs?;
1235
+ matchWidthEl: HTMLElement | null;
1236
+ private propagateTouched;
1237
+ private propagateChange;
1238
+ private resolvedNgControl;
1239
+ readonly _id: string;
1240
+ constructor();
1241
+ ngOnInit(): void;
1242
+ ngAfterViewInit(): void;
1243
+ writeValue(obj: any): void;
1244
+ registerOnChange(fn: any): void;
1245
+ registerOnTouched(fn: any): void;
1246
+ setDisabledState?(isDisabled: boolean): void;
1247
+ private eq;
1248
+ private resolveNgControlOnce;
1249
+ private itemLabel;
1250
+ private collectAllItems;
1251
+ private resetStack;
1252
+ goBack(): void;
1253
+ private enterChildren;
1254
+ private filterNodes;
1255
+ private cleanupDividers;
1256
+ private applySelectedFirst;
1257
+ private buildRows;
1258
+ isSelected(value: any): boolean;
1259
+ private setValue;
1260
+ toggleItem(value: any): void;
1261
+ selectSingle(value: any): void;
1262
+ onOptionClick(item: SolarisSelectItem): void;
1263
+ openFromTrigger(): void;
1264
+ toggleOpen(): void;
1265
+ onTriggerInput(v: string): void;
1266
+ onTriggerKeydown(ev: KeyboardEvent): void;
1267
+ onPanelKeydown(ev: KeyboardEvent): void;
1268
+ private scheduleAutoMeasure;
1269
+ private measureAuto;
1270
+ private px;
1271
+ private scheduleFocusTrigger;
1272
+ private isSelectableValue;
1273
+ private sanitizeValue;
1274
+ selectedCountLabel(): string;
1275
+ trackRow: (_: number, r: SolarisSelectRow) => string;
1276
+ static ɵfac: i0.ɵɵFactoryDeclaration<SolarisSelect, never>;
1277
+ static ɵcmp: i0.ɵɵComponentDeclaration<SolarisSelect, "solaris-select", never, { "items": { "alias": "items"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "valueKey": { "alias": "valueKey"; "required": false; }; "backKey": { "alias": "backKey"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "placeholderKey": { "alias": "placeholderKey"; "required": false; }; "searchable": { "alias": "searchable"; "required": false; }; "selectedCountKey": { "alias": "selectedCountKey"; "required": false; }; "selectedFirst": { "alias": "selectedFirst"; "required": false; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; }; "selectedCountText": { "alias": "selectedCountText"; "required": false; }; "panelMaxHeight": { "alias": "panelMaxHeight"; "required": false; }; "searchPlaceholderKey": { "alias": "searchPlaceholderKey"; "required": false; }; "selectionSeparator": { "alias": "selectionSeparator"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "backText": { "alias": "backText"; "required": false; }; "selectionDisplay": { "alias": "selectionDisplay"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, never, true, never>;
632
1278
  }
633
1279
 
634
- export { FieldErrorComponent, FormField, InputTextDirective, PasswordToggle, SOLARIS_FORM_FIELD_CONTROLLER, SOLARIS_FORM_FIELD_FEATURES, SOLARIS_INPUT, SolarisBadge, SolarisBodyDirective, SolarisBreadcrumb, SolarisButtonDirective, SolarisButtonGroupDirective, SolarisControlBridgeDirective, SolarisDivider, SolarisDropdownContent, SolarisDropdownContentPanelDirective, SolarisDropdownContentRegistry, SolarisDropdownContentTriggerDirective, SolarisEmailDirective, SolarisFooterDirective, SolarisFormFieldController, SolarisHeaderDirective, SolarisImageSliderComponent, SolarisLoading, SolarisLoadingOverlay, SolarisPage, SolarisPageHeader, SolarisPageHeaderBreadcrumbDirective, SolarisPageHeaderDescriptionDirective, SolarisPageHeaderTitle, SolarisPageHeaderTitleDirective, SolarisPasswordDirective, SolarisPhoneInput, SolarisPrefixDirective, SolarisSectionComponent, SolarisSuffixDirective, SolarisTab, SolarisTabs };
635
- export type { BadgeColor, BadgeSize, BadgeVariant, DividerLabelAlign, DividerOrientation, DividerSpacing, DividerStrength, DividerVariant, Iso2, PhoneFormat, SolarisBreadcrumbItem, SolarisBreadcrumbTarget, SolarisButtonColor, SolarisButtonSize, SolarisButtonVariant, SolarisDropdownContentInterface, SolarisDropdownWidthMode, SolarisFormFieldControllerLike, SolarisFormFieldFeature, SolarisInputApi, SolarisLoadingColor, SolarisLoadingSize, SolarisLoadingType, SolarisSliderItem, SolarisSliderOverlayContext, TabsSize, TabsVariant };
1280
+ export { ButtonDirective, ButtonGroupDirective, FieldErrorComponent, FormField, InputTextDirective, PasswordToggle, SOLARIS_FORM_FIELD_CONTROLLER, SOLARIS_FORM_FIELD_FEATURES, SOLARIS_INPUT, SolarisBadge, SolarisBodyDirective, SolarisBreadcrumb, SolarisCheckbox, SolarisColumnCellDef, SolarisColumnHeaderDef, SolarisControlBridgeDirective, SolarisDivider, SolarisDrawer, SolarisDrawerFooterDirective, SolarisDrawerHeaderDirective, SolarisDropdownContent, SolarisDropdownContentPanelDirective, SolarisDropdownContentRegistry, SolarisDropdownContentTriggerDirective, SolarisEmailDirective, SolarisFilterBar, SolarisFilterChip, SolarisFilterField, SolarisFilterPanel, SolarisFilterPanelFooterDirective, SolarisFooterDirective, SolarisFormFieldController, SolarisHeaderDirective, SolarisIdGenerator, SolarisImageSliderComponent, SolarisLoading, SolarisLoadingOverlay, SolarisPage, SolarisPageHeader, SolarisPageHeaderBreadcrumbDirective, SolarisPageHeaderDescriptionDirective, SolarisPageHeaderTitle, SolarisPageHeaderTitleDirective, SolarisPasswordDirective, SolarisPhoneInput, SolarisPopover, SolarisPopoverPanelDirective, SolarisPopoverTriggerDirective, SolarisPrefixDirective, SolarisRowComponent, SolarisSectionComponent, SolarisSelect, SolarisSuffixDirective, SolarisTab, SolarisTable, SolarisTableColumn, SolarisTableFilters, SolarisTableSkeleton, SolarisTabs, computePopoverPosition, uniqueId };
1281
+ export type { BadgeColorInput, BadgeVariant, CheckboxAppearance, CheckboxColorInput, CheckboxVariant, DividerLabelAlign, DividerOrientation, DividerSpacing, DividerStrength, DividerVariant, Iso2, LoadingType, PhoneFormat, SelectionDisplay, SolarisAlign, SolarisBreadcrumbItem, SolarisBreadcrumbTarget, SolarisButtonColorInput, SolarisButtonVariant, SolarisCheckCustomString, SolarisColorPreset, SolarisCustomString, SolarisDrawerSide, SolarisDropdownContentInterface, SolarisDropdownWidthMode, SolarisFilterPanelRadius, SolarisFormFieldAppearance, SolarisFormFieldControllerLike, SolarisFormFieldFeature, SolarisFormFieldRadius, SolarisFormFieldShowErrors, SolarisInputApi, SolarisLoadingColor, SolarisLoadingDashDensity, SolarisLoadingEasing, SolarisLoadingPresetColor, SolarisLoadingSize, SolarisLoadingSpeed, SolarisLoadingTrail, SolarisPageChange, SolarisPopoverPlacement, SolarisPopoverPositionConfiguration, SolarisPopoverPositionResult, SolarisRadiusInput, SolarisRadiusPreset, SolarisRowKey, SolarisSelectDivider, SolarisSelectGroup, SolarisSelectItem, SolarisSelectNode, SolarisSelectRow, SolarisSizePreset, SolarisSliderItem, SolarisSliderOverlayContext, SolarisSort, SolarisSortDirection, SolarisTableI18n, SolarisTableVariant, StackLevel, TabsSize, TabsVariant };