ngx-strata 0.2.0 → 0.2.2

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.
Files changed (54) hide show
  1. package/assets/styles/base.scss +4 -0
  2. package/assets/styles/components/_breadcrumb.scss +68 -0
  3. package/assets/styles/components/action-menu.scss +13 -1
  4. package/assets/styles/components/card.scss +3 -2
  5. package/assets/styles/components/icon.scss +5 -0
  6. package/assets/styles/components/item.scss +11 -1
  7. package/assets/styles/components/modal.scss +26 -0
  8. package/assets/styles/components/overlay.scss +4 -0
  9. package/assets/styles/components/segmented-control.scss +17 -2
  10. package/assets/styles/components/select.scss +16 -26
  11. package/assets/styles/components/sidemenu.scss +7 -0
  12. package/assets/styles/components/tag.scss +1 -1
  13. package/assets/styles/components/toggle.scss +40 -13
  14. package/assets/styles/public-api.scss +1 -0
  15. package/assets/styles/shadows.scss +1 -0
  16. package/assets/styles/typography.scss +0 -1
  17. package/dist/strata/strata.css +1 -1
  18. package/fesm2022/ngx-strata.mjs +947 -645
  19. package/fesm2022/ngx-strata.mjs.map +1 -1
  20. package/package.json +5 -4
  21. package/skills/ngx-strata/SKILL.md +106 -0
  22. package/skills/ngx-strata/components/accordion.md +38 -0
  23. package/skills/ngx-strata/components/action-menu.md +36 -0
  24. package/skills/ngx-strata/components/alert.md +28 -0
  25. package/skills/ngx-strata/components/avatar.md +33 -0
  26. package/skills/ngx-strata/components/breadcrumb.md +32 -0
  27. package/skills/ngx-strata/components/button.md +34 -0
  28. package/skills/ngx-strata/components/card.md +30 -0
  29. package/skills/ngx-strata/components/checkbox.md +22 -0
  30. package/skills/ngx-strata/components/divider.md +19 -0
  31. package/skills/ngx-strata/components/icon.md +21 -0
  32. package/skills/ngx-strata/components/input-field.md +29 -0
  33. package/skills/ngx-strata/components/item.md +31 -0
  34. package/skills/ngx-strata/components/kbd.md +18 -0
  35. package/skills/ngx-strata/components/message-state.md +32 -0
  36. package/skills/ngx-strata/components/modal.md +96 -0
  37. package/skills/ngx-strata/components/notification.md +46 -0
  38. package/skills/ngx-strata/components/number-display.md +26 -0
  39. package/skills/ngx-strata/components/overlay.md +20 -0
  40. package/skills/ngx-strata/components/pagination.md +23 -0
  41. package/skills/ngx-strata/components/progress.md +46 -0
  42. package/skills/ngx-strata/components/radio.md +29 -0
  43. package/skills/ngx-strata/components/segmented-control.md +38 -0
  44. package/skills/ngx-strata/components/shell.md +18 -0
  45. package/skills/ngx-strata/components/sidemenu.md +41 -0
  46. package/skills/ngx-strata/components/single-select.md +45 -0
  47. package/skills/ngx-strata/components/slider.md +24 -0
  48. package/skills/ngx-strata/components/spinner.md +17 -0
  49. package/skills/ngx-strata/components/tabs.md +27 -0
  50. package/skills/ngx-strata/components/tag.md +17 -0
  51. package/skills/ngx-strata/components/text-stack.md +21 -0
  52. package/skills/ngx-strata/components/theming.md +19 -0
  53. package/skills/ngx-strata/components/toggle.md +22 -0
  54. package/types/ngx-strata.d.ts +121 -88
@@ -1,12 +1,24 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { OnInit, OnDestroy, AfterContentInit, ElementRef, Renderer2, EnvironmentProviders, InjectionToken, Provider, OnChanges, AfterViewInit, TemplateRef, SimpleChanges, PipeTransform, QueryList, Type, ComponentRef, ViewContainerRef } from '@angular/core';
2
+ import { OnInit, OnDestroy, AfterContentInit, EnvironmentProviders, InjectionToken, Provider, ElementRef, Renderer2, AfterViewInit, TemplateRef, OnChanges, SimpleChanges, PipeTransform, QueryList, Type, ViewContainerRef } from '@angular/core';
3
3
  import { Placement } from '@floating-ui/dom';
4
+ import * as _angular_platform_browser from '@angular/platform-browser';
4
5
  import { SafeHtml, DomSanitizer } from '@angular/platform-browser';
5
6
  import { Observable } from 'rxjs';
6
7
  import { HttpClient } from '@angular/common/http';
7
8
  import { RouterLinkActive } from '@angular/router';
8
9
  import * as ngx_strata from 'ngx-strata';
9
10
 
11
+ declare class StrataActivatableDirective {
12
+ private _elementRef;
13
+ disabled: _angular_core.InputSignal<boolean>;
14
+ interactable: _angular_core.ModelSignal<boolean>;
15
+ activated: _angular_core.OutputEmitterRef<Event>;
16
+ isFocusable: _angular_core.Signal<boolean>;
17
+ onKeyDown(event: KeyboardEvent): void;
18
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataActivatableDirective, never>;
19
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<StrataActivatableDirective, "[stActivatable]", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "interactable": { "alias": "interactable"; "required": false; "isSignal": true; }; }, { "interactable": "interactableChange"; "activated": "activated"; }, never, never, true, never>;
20
+ }
21
+
10
22
  declare class StrataTooltipDirective implements OnInit, OnDestroy, AfterContentInit {
11
23
  private document;
12
24
  private element;
@@ -20,7 +32,6 @@ declare class StrataTooltipDirective implements OnInit, OnDestroy, AfterContentI
20
32
  private eventListeners;
21
33
  private autoUpdateCleanupFunction?;
22
34
  private config;
23
- constructor(document: Document, element: ElementRef, renderer: Renderer2);
24
35
  ngOnInit(): void;
25
36
  ngAfterContentInit(): void;
26
37
  doPosition(): void;
@@ -118,11 +129,13 @@ declare class StrataActionMenuItemComponent {
118
129
  private checkbox;
119
130
  private toggle;
120
131
  closeMenuOnClick: _angular_core.InputSignal<boolean>;
132
+ active: _angular_core.InputSignal<boolean>;
133
+ get isActive(): boolean;
121
134
  menuItemClicked: _angular_core.OutputEmitterRef<boolean>;
122
135
  elementRef: ElementRef<HTMLElement>;
123
136
  onHostClick(event: MouseEvent): void;
124
137
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataActionMenuItemComponent, never>;
125
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataActionMenuItemComponent, "st-action-menu-item", never, { "closeMenuOnClick": { "alias": "closeMenuOnClick"; "required": false; "isSignal": true; }; }, { "menuItemClicked": "menuItemClicked"; }, ["checkbox", "toggle"], ["[area='start']", "*", "[area='end']"], true, never>;
138
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataActionMenuItemComponent, "st-action-menu-item", never, { "closeMenuOnClick": { "alias": "closeMenuOnClick"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; }, { "menuItemClicked": "menuItemClicked"; }, ["checkbox", "toggle"], ["[area='start']", "*", "[area='end']"], true, never>;
126
139
  }
127
140
 
128
141
  declare class StrataActionMenuComponent {
@@ -147,6 +160,25 @@ declare class StrataAlertComponent {
147
160
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataAlertComponent, "st-alert", never, { "header": { "alias": "header"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": true; "isSignal": true; }; "iconName": { "alias": "iconName"; "required": false; "isSignal": true; }; "dismissible": { "alias": "dismissible"; "required": false; "isSignal": true; }; }, { "dismiss": "dismiss"; }, never, ["[actions]"], true, never>;
148
161
  }
149
162
 
163
+ declare class StrataBreadcrumbItemComponent {
164
+ text: _angular_core.InputSignal<string>;
165
+ icon: _angular_core.InputSignal<string | undefined>;
166
+ interactable: _angular_core.InputSignal<boolean>;
167
+ disabled: _angular_core.InputSignal<boolean>;
168
+ activated: _angular_core.OutputEmitterRef<Event>;
169
+ separatorIcon: _angular_core.WritableSignal<string | undefined>;
170
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataBreadcrumbItemComponent, never>;
171
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataBreadcrumbItemComponent, "st-breadcrumb-item", never, { "text": { "alias": "text"; "required": true; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "interactable": { "alias": "interactable"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "activated": "activated"; }, never, never, true, never>;
172
+ }
173
+
174
+ declare class StrataBreadcrumbComponent {
175
+ separatorIcon: _angular_core.InputSignal<string>;
176
+ items: _angular_core.Signal<readonly StrataBreadcrumbItemComponent[]>;
177
+ constructor();
178
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataBreadcrumbComponent, never>;
179
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataBreadcrumbComponent, "st-breadcrumb", never, { "separatorIcon": { "alias": "separatorIcon"; "required": false; "isSignal": true; }; }, {}, ["items"], ["*"], true, never>;
180
+ }
181
+
150
182
  declare class StrataAccordionItemComponent {
151
183
  title: _angular_core.InputSignal<string>;
152
184
  open: _angular_core.ModelSignal<boolean>;
@@ -166,26 +198,13 @@ declare class StrataAccordionGroupComponent {
166
198
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataAccordionGroupComponent, "st-accordion-group", never, { "allowMultipleOpen": { "alias": "allowMultipleOpen"; "required": false; "isSignal": true; }; }, {}, ["items"], ["*"], true, never>;
167
199
  }
168
200
 
169
- declare abstract class IconRegistry {
170
- abstract getIcon(name: string): Observable<SafeHtml>;
171
- }
172
-
173
- declare class StrataIconComponent implements OnDestroy, OnChanges {
174
- defaultIcon: string;
201
+ declare class StrataIconComponent {
202
+ private iconRegistry;
175
203
  name: _angular_core.InputSignal<string>;
176
204
  size: _angular_core.ModelSignal<IconSize>;
177
- get sizeClass(): boolean;
178
- get sizeSmClass(): boolean;
179
- get sizeMdClass(): boolean;
180
- get sizeLgClass(): boolean;
181
- svgMarkdown?: SafeHtml;
182
- private iconSubscription;
183
- iconRegistry: IconRegistry;
184
- ngOnDestroy(): void;
185
- ngOnChanges(): void;
186
- private setIcon;
205
+ svgMarkdown: _angular_core.Signal<_angular_platform_browser.SafeHtml | undefined>;
187
206
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataIconComponent, never>;
188
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataIconComponent, "st-icon", never, { "name": { "alias": "name"; "required": true; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, { "size": "sizeChange"; }, never, never, true, never>;
207
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataIconComponent, "st-icon", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, { "size": "sizeChange"; }, never, never, true, never>;
189
208
  }
190
209
 
191
210
  declare class StrataAvatarComponent implements AfterViewInit {
@@ -269,36 +288,50 @@ declare class StrataCheckboxComponent {
269
288
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataCheckboxComponent, "st-checkbox", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
270
289
  }
271
290
 
272
- declare class StrataDropdownComponent {
291
+ declare class StrataSelectItemComponent {
292
+ value: _angular_core.InputSignal<unknown>;
293
+ text: _angular_core.InputSignal<string>;
294
+ itemClicked: _angular_core.OutputEmitterRef<StrataSelectItemComponent>;
295
+ hidden: _angular_core.WritableSignal<boolean>;
296
+ elementRef: ElementRef<HTMLElement>;
297
+ get display(): string;
298
+ onClick(event: MouseEvent): void;
299
+ onMouseOver(event: MouseEvent): void;
300
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataSelectItemComponent, never>;
301
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataSelectItemComponent, "st-select-item", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "text": { "alias": "text"; "required": true; "isSignal": true; }; }, { "itemClicked": "itemClicked"; }, never, ["*"], true, never>;
302
+ }
303
+
304
+ declare class StrataSingleSelectComponent {
273
305
  open: _angular_core.WritableSignal<boolean>;
274
306
  placeholder: _angular_core.InputSignal<string>;
275
307
  placement: _angular_core.InputSignal<Placement>;
276
308
  fullWidth: _angular_core.InputSignal<boolean>;
277
309
  label: _angular_core.InputSignal<string | undefined>;
278
310
  name: _angular_core.InputSignal<string | undefined>;
279
- selected: _angular_core.ModelSignal<SelectItem | undefined>;
280
- size: _angular_core.InputSignal<DropdownSize>;
311
+ selected: _angular_core.ModelSignal<unknown>;
312
+ selectedItem: _angular_core.Signal<StrataSelectItemComponent | undefined>;
281
313
  searchable: _angular_core.InputSignal<boolean>;
282
314
  searchQuery: _angular_core.ModelSignal<string | undefined>;
283
315
  searchPlaceholder: _angular_core.InputSignal<string>;
284
- dropdownItems: _angular_core.InputSignal<SelectItem[]>;
285
- shownItems: _angular_core.Signal<SelectItem[]>;
286
- itemSelected: _angular_core.OutputEmitterRef<SelectItem>;
316
+ itemSelected: _angular_core.OutputEmitterRef<unknown>;
317
+ selectItems: _angular_core.Signal<readonly StrataSelectItemComponent[]>;
318
+ triggerTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
287
319
  private inputField;
288
- get classList(): DropdownSize[];
289
- toggleDropdown(event?: MouseEvent): void;
290
- onItemClick(item: SelectItem, mouseEvent: MouseEvent): void;
291
- onItemHover(mouseEvent: MouseEvent): void;
320
+ private destroyRef;
321
+ constructor();
322
+ onSearchChange(query: string | undefined): void;
323
+ toggle(event?: MouseEvent): void;
324
+ onItemClick(item: StrataSelectItemComponent): void;
292
325
  private show;
293
326
  private hide;
294
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataDropdownComponent, never>;
295
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataDropdownComponent, "st-dropdown", never, { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "fullWidth": { "alias": "fullWidth"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "searchQuery": { "alias": "searchQuery"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "dropdownItems": { "alias": "dropdownItems"; "required": true; "isSignal": true; }; }, { "selected": "selectedChange"; "searchQuery": "searchQueryChange"; "itemSelected": "itemSelected"; }, never, never, true, never>;
327
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataSingleSelectComponent, never>;
328
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataSingleSelectComponent, "st-single-select", never, { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "fullWidth": { "alias": "fullWidth"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "searchQuery": { "alias": "searchQuery"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; }, { "selected": "selectedChange"; "searchQuery": "searchQueryChange"; "itemSelected": "itemSelected"; }, ["selectItems", "triggerTemplate"], ["st-select-item"], true, never>;
296
329
  }
297
- interface SelectItem {
298
- text: string;
299
- id: string;
330
+
331
+ declare class StrataSelectTriggerDirective {
332
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataSelectTriggerDirective, never>;
333
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<StrataSelectTriggerDirective, "[stSelectTrigger]", never, {}, {}, never, never, true, never>;
300
334
  }
301
- type DropdownSize = 'sm' | 'md' | 'lg';
302
335
 
303
336
  declare class StrataDividerComponent {
304
337
  label: _angular_core.InputSignal<string | undefined>;
@@ -332,6 +365,10 @@ declare abstract class IconLoader {
332
365
  abstract loadSvg(url: string): Observable<SafeHtml>;
333
366
  }
334
367
 
368
+ declare abstract class IconRegistry {
369
+ abstract getIcon(name: string): Observable<SafeHtml>;
370
+ }
371
+
335
372
  declare class HttpIconLoader implements IconLoader {
336
373
  httpClient: HttpClient;
337
374
  sanitizer: DomSanitizer;
@@ -344,7 +381,6 @@ declare class IconRegistryService {
344
381
  private iconLoader;
345
382
  icons: Record<string, string>;
346
383
  svgs: Record<string, SafeHtml>;
347
- constructor(iconLoader: IconLoader);
348
384
  registerIcons(iconConfigs: IconConfig[]): void;
349
385
  registerIcon(iconConfig: IconConfig): void;
350
386
  getIconUrl(name: string): string | null;
@@ -364,12 +400,19 @@ declare class StrataItemListComponent<T> {
364
400
 
365
401
  declare class StrataItemComponent {
366
402
  private element;
367
- interactable: _angular_core.InputSignal<boolean>;
403
+ private _activatable;
404
+ private checkbox;
405
+ private toggle;
406
+ private radio;
407
+ interactable: _angular_core.ModelSignal<boolean>;
408
+ disabled: _angular_core.InputSignal<boolean>;
409
+ constructor();
368
410
  get isInteractable(): boolean;
369
- get tabIndex(): number | null;
370
- onKeyDown(event: Event): void;
411
+ get isDisabledClass(): boolean;
412
+ onHostClick(event: MouseEvent): void;
413
+ onActivated(): void;
371
414
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataItemComponent, never>;
372
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataItemComponent, "st-item", never, { "interactable": { "alias": "interactable"; "required": false; "isSignal": true; }; }, {}, never, ["[area='start']", "*", "[area='end']"], true, never>;
415
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataItemComponent, "st-item", never, {}, {}, ["checkbox", "toggle", "radio"], ["[area='start']", "*", "[area='end']"], true, [{ directive: typeof StrataActivatableDirective; inputs: { "disabled": "disabled"; "interactable": "interactable"; }; outputs: { "activated": "activated"; }; }]>;
373
416
  }
374
417
 
375
418
  declare class StrataNativeInputRefDirective {
@@ -415,6 +458,7 @@ declare class StrataOverlayDirective implements OnChanges, OnDestroy {
415
458
  private readonly viewContainerRef;
416
459
  private overlayEl?;
417
460
  private cleanup?;
461
+ private viewRef?;
418
462
  ngOnChanges(): void;
419
463
  private create;
420
464
  private updatePosition;
@@ -492,12 +536,12 @@ declare class StrataRadioComponent {
492
536
  label: _angular_core.InputSignal<string | undefined>;
493
537
  checked: _angular_core.ModelSignal<boolean>;
494
538
  disabled: _angular_core.InputSignal<boolean>;
495
- select: _angular_core.OutputEmitterRef<void>;
539
+ selected: _angular_core.OutputEmitterRef<void>;
496
540
  get isChecked(): boolean;
497
541
  get isDisabled(): boolean;
498
542
  onClick(event: MouseEvent): void;
499
543
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataRadioComponent, never>;
500
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataRadioComponent, "st-radio", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "select": "select"; }, never, never, true, never>;
544
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataRadioComponent, "st-radio", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "selected": "selected"; }, never, never, true, never>;
501
545
  }
502
546
 
503
547
  declare class StrataRadioGroupComponent {
@@ -657,13 +701,14 @@ declare class StrataTextStackComponent {
657
701
  type TextStackOverflow = 'truncate' | 'wrap';
658
702
 
659
703
  declare class StrataToggleComponent {
704
+ private _activatable;
660
705
  checked: _angular_core.ModelSignal<boolean>;
706
+ label: _angular_core.InputSignal<string | undefined>;
707
+ labelPosition: _angular_core.InputSignal<"before" | "after">;
661
708
  disabled: _angular_core.InputSignal<boolean>;
662
- get isDisabled(): boolean;
663
- get isChecked(): boolean;
664
- onCheckChanged(): void;
709
+ onCheckChanged(event?: Event): void;
665
710
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataToggleComponent, never>;
666
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataToggleComponent, "st-toggle", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; }, never, never, true, never>;
711
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataToggleComponent, "st-toggle", never, { "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "labelPosition": { "alias": "labelPosition"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; }, never, ["*"], true, [{ directive: typeof StrataActivatableDirective; inputs: { "disabled": "disabled"; }; outputs: { "activated": "activated"; }; }]>;
667
712
  }
668
713
 
669
714
  declare class StrataThemeDirective {
@@ -675,6 +720,21 @@ declare class StrataThemeDirective {
675
720
  }
676
721
  type Theme = 'brand' | 'default' | 'danger' | 'warning' | 'success' | 'info';
677
722
 
723
+ declare class StrataAlertContentComponent {
724
+ private modalService;
725
+ title: _angular_core.InputSignal<string>;
726
+ message: _angular_core.InputSignal<string | undefined>;
727
+ icon: _angular_core.InputSignal<string | undefined>;
728
+ readonly computedIcon: _angular_core.Signal<string>;
729
+ theme: _angular_core.InputSignal<Theme>;
730
+ affirmativeButton: _angular_core.InputSignal<string>;
731
+ cancelButton: _angular_core.InputSignal<string | undefined>;
732
+ onAffirmation(): void;
733
+ onCancel(): void;
734
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataAlertContentComponent, never>;
735
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataAlertContentComponent, "st-alert-content", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "theme": { "alias": "theme"; "required": false; "isSignal": true; }; "affirmativeButton": { "alias": "affirmativeButton"; "required": true; "isSignal": true; }; "cancelButton": { "alias": "cancelButton"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
736
+ }
737
+
678
738
  interface ModalConfiguration {
679
739
  title?: string;
680
740
  component: Type<unknown>;
@@ -692,56 +752,27 @@ interface AlertConfiguration {
692
752
  affirmativeButton: string;
693
753
  cancelButton?: string;
694
754
  }
695
- interface WithID {
696
- id: string;
697
- }
698
755
  type ModalSize = 'xs' | 'sm' | 'md' | 'lg';
756
+ declare abstract class StrataModalRef {
757
+ abstract close(value?: unknown): void;
758
+ }
699
759
 
700
760
  declare class ModalService {
701
- private stack;
702
- private currentModals;
761
+ private _modals;
762
+ modals: _angular_core.Signal<ModalConfiguration[]>;
763
+ private document;
764
+ constructor();
703
765
  showModal(config: ModalConfiguration): void;
704
766
  showAlert(config: AlertConfiguration, callback: (value: boolean) => void): void;
705
767
  closeCurrentModal(value?: unknown): void;
768
+ close(config: ModalConfiguration, value?: unknown): void;
706
769
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ModalService, never>;
707
770
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<ModalService>;
708
771
  }
709
772
 
710
- declare class StrataAlertContentComponent {
711
- private modalService;
712
- title: _angular_core.InputSignal<string>;
713
- message: _angular_core.InputSignal<string | undefined>;
714
- icon: _angular_core.InputSignal<string | undefined>;
715
- readonly computedIcon: _angular_core.Signal<string>;
716
- theme: _angular_core.InputSignal<Theme>;
717
- affirmativeButton: _angular_core.InputSignal<string>;
718
- cancelButton: _angular_core.InputSignal<string | undefined>;
719
- constructor(modalService: ModalService);
720
- onAffirmation(): void;
721
- onCancel(): void;
722
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataAlertContentComponent, never>;
723
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataAlertContentComponent, "st-alert-content", never, { "title": { "alias": "title"; "required": true; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "theme": { "alias": "theme"; "required": false; "isSignal": true; }; "affirmativeButton": { "alias": "affirmativeButton"; "required": true; "isSignal": true; }; "cancelButton": { "alias": "cancelButton"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
724
- }
725
-
726
- declare class Stack<T> {
727
- items: T[];
728
- push(item: T): void;
729
- pop(): T;
730
- peek(): T;
731
- empty(): boolean;
732
- size(): number;
733
- }
734
-
735
- declare class StrataModalContainerComponent implements OnDestroy {
736
- private modalService;
737
- injectedComponent: ComponentRef<unknown>;
738
- currentModal: ModalConfiguration | null;
739
- stack: Stack<ModalConfiguration & WithID>;
740
- private subscription;
741
- constructor(modalService: ModalService);
742
- ngOnDestroy(): void;
773
+ declare class StrataModalContainerComponent {
774
+ modalService: ModalService;
743
775
  onBackdropClick(event: MouseEvent): void;
744
- stackTrack(index: number, item: ModalConfiguration & WithID): string;
745
776
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<StrataModalContainerComponent, never>;
746
777
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataModalContainerComponent, "st-modal-container", never, {}, {}, never, never, true, never>;
747
778
  }
@@ -756,6 +787,8 @@ declare class StrataModalHeaderComponent {
756
787
  }
757
788
 
758
789
  declare class StrataModalComponent implements AfterViewInit {
790
+ private modalService;
791
+ private injector;
759
792
  modalContents: _angular_core.Signal<ViewContainerRef>;
760
793
  configuration: _angular_core.InputSignal<ModalConfiguration>;
761
794
  size: _angular_core.ModelSignal<ModalSize | undefined>;
@@ -836,5 +869,5 @@ declare class StrataMessageStateComponent {
836
869
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<StrataMessageStateComponent, "st-message-state", never, { "header": { "alias": "header"; "required": true; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "primaryActionText": { "alias": "primaryActionText"; "required": false; "isSignal": true; }; "primaryActionTheme": { "alias": "primaryActionTheme"; "required": false; "isSignal": true; }; "secondaryActionText": { "alias": "secondaryActionText"; "required": false; "isSignal": true; }; }, { "primaryAction": "primaryAction"; "secondaryAction": "secondaryAction"; }, never, ["*"], true, never>;
837
870
  }
838
871
 
839
- export { CapitalizePipe, DEFAULT_DURATION, DEFAULT_THEME, DarkmodeService, HotkeyService, HttpIconLoader, IconLoader, IconRegistry, IconRegistryService, ModalService, NotificationService, STRATA_CONFIG, StrataAccordionGroupComponent, StrataAccordionItemComponent, StrataActionMenuComponent, StrataActionMenuItemComponent, StrataAlertComponent, StrataAlertContentComponent, StrataAutoResizeDirective, StrataAvatarComponent, StrataAvatarStackComponent, StrataButtonDirective, StrataButtonGroupComponent, StrataCardComponent, StrataCheckboxComponent, StrataDividerComponent, StrataDropdownComponent, StrataIconComponent, StrataInputFieldComponent, StrataItemComponent, StrataItemListComponent, StrataKbdComponent, StrataMessageStateComponent, StrataModalComponent, StrataModalContainerComponent, StrataModalHeaderComponent, StrataNativeInputRefDirective, StrataNotificationComponent, StrataNotificationContainerComponent, StrataNumberDisplayComponent, StrataOverlayDirective, StrataPaginationComponent, StrataProgressLinearComponent, StrataProgressRadialComponent, StrataRadioComponent, StrataRadioGroupComponent, StrataSegmentedControlComponent, StrataSegmentedControlItemComponent, StrataShellComponent, StrataSidemenuComponent, StrataSidemenuItemDirective, StrataSidemenuItemGroupComponent, StrataSidemenuSectionComponent, StrataSliderComponent, StrataSpinnerComponent, StrataTabItemComponent, StrataTabsComponent, StrataTagComponent, StrataTextStackComponent, StrataThemeDirective, StrataToggleComponent, StrataTooltipDirective, provideBaseIcons, provideIcons, provideStrata };
840
- export type { AlertConfiguration, AvatarSize, ButtonGroupJustification, ButtonSize, ButtonVariant, CardVariant, CurrentDarkmode, DarkmodeSetting, DropdownSize, HotkeyOptions, IconConfig, IconSize, ModalConfiguration, ModalSize, NotificationConfiguration, NotificationsWithIds, PaginationItem, ProgressLinearGrowDirection, ProgressLinearLabelFormat, ProgressRadialLabelFormat, SelectItem, SpinnerSize, StrataConfig, TagSize, TextStackOverflow, Theme, TooltipPlacement, WithID };
872
+ export { CapitalizePipe, DEFAULT_DURATION, DEFAULT_THEME, DarkmodeService, HotkeyService, HttpIconLoader, IconLoader, IconRegistry, IconRegistryService, ModalService, NotificationService, STRATA_CONFIG, StrataAccordionGroupComponent, StrataAccordionItemComponent, StrataActionMenuComponent, StrataActionMenuItemComponent, StrataActivatableDirective, StrataAlertComponent, StrataAlertContentComponent, StrataAutoResizeDirective, StrataAvatarComponent, StrataAvatarStackComponent, StrataBreadcrumbComponent, StrataBreadcrumbItemComponent, StrataButtonDirective, StrataButtonGroupComponent, StrataCardComponent, StrataCheckboxComponent, StrataDividerComponent, StrataIconComponent, StrataInputFieldComponent, StrataItemComponent, StrataItemListComponent, StrataKbdComponent, StrataMessageStateComponent, StrataModalComponent, StrataModalContainerComponent, StrataModalHeaderComponent, StrataModalRef, StrataNativeInputRefDirective, StrataNotificationComponent, StrataNotificationContainerComponent, StrataNumberDisplayComponent, StrataOverlayDirective, StrataPaginationComponent, StrataProgressLinearComponent, StrataProgressRadialComponent, StrataRadioComponent, StrataRadioGroupComponent, StrataSegmentedControlComponent, StrataSegmentedControlItemComponent, StrataSelectItemComponent, StrataSelectTriggerDirective, StrataShellComponent, StrataSidemenuComponent, StrataSidemenuItemDirective, StrataSidemenuItemGroupComponent, StrataSidemenuSectionComponent, StrataSingleSelectComponent, StrataSliderComponent, StrataSpinnerComponent, StrataTabItemComponent, StrataTabsComponent, StrataTagComponent, StrataTextStackComponent, StrataThemeDirective, StrataToggleComponent, StrataTooltipDirective, provideBaseIcons, provideIcons, provideStrata };
873
+ export type { AlertConfiguration, AvatarSize, ButtonGroupJustification, ButtonSize, ButtonVariant, CardVariant, CurrentDarkmode, DarkmodeSetting, HotkeyOptions, IconConfig, IconSize, ModalConfiguration, ModalSize, NotificationConfiguration, NotificationsWithIds, PaginationItem, ProgressLinearGrowDirection, ProgressLinearLabelFormat, ProgressRadialLabelFormat, SpinnerSize, StrataConfig, TagSize, TextStackOverflow, Theme, TooltipPlacement };