@siemens/element-ng 49.8.0 → 49.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/fesm2022/siemens-element-ng-application-header.mjs +4 -4
  2. package/fesm2022/siemens-element-ng-application-header.mjs.map +1 -1
  3. package/fesm2022/siemens-element-ng-avatar.mjs +2 -2
  4. package/fesm2022/siemens-element-ng-avatar.mjs.map +1 -1
  5. package/fesm2022/siemens-element-ng-breadcrumb-router.mjs +6 -2
  6. package/fesm2022/siemens-element-ng-breadcrumb-router.mjs.map +1 -1
  7. package/fesm2022/siemens-element-ng-chat-messages.mjs +43 -19
  8. package/fesm2022/siemens-element-ng-chat-messages.mjs.map +1 -1
  9. package/fesm2022/siemens-element-ng-circle-status.mjs +2 -2
  10. package/fesm2022/siemens-element-ng-circle-status.mjs.map +1 -1
  11. package/fesm2022/siemens-element-ng-color-picker.mjs +9 -4
  12. package/fesm2022/siemens-element-ng-color-picker.mjs.map +1 -1
  13. package/fesm2022/siemens-element-ng-dashboard.mjs +467 -13
  14. package/fesm2022/siemens-element-ng-dashboard.mjs.map +1 -1
  15. package/fesm2022/siemens-element-ng-datatable.mjs +10 -19
  16. package/fesm2022/siemens-element-ng-datatable.mjs.map +1 -1
  17. package/fesm2022/siemens-element-ng-date-range-filter.mjs +2 -2
  18. package/fesm2022/siemens-element-ng-date-range-filter.mjs.map +1 -1
  19. package/fesm2022/siemens-element-ng-datepicker.mjs +6 -6
  20. package/fesm2022/siemens-element-ng-datepicker.mjs.map +1 -1
  21. package/fesm2022/siemens-element-ng-file-uploader.mjs +2 -2
  22. package/fesm2022/siemens-element-ng-file-uploader.mjs.map +1 -1
  23. package/fesm2022/siemens-element-ng-form.mjs +8 -10
  24. package/fesm2022/siemens-element-ng-form.mjs.map +1 -1
  25. package/fesm2022/siemens-element-ng-header-dropdown.mjs +19 -55
  26. package/fesm2022/siemens-element-ng-header-dropdown.mjs.map +1 -1
  27. package/fesm2022/siemens-element-ng-main-detail-container.mjs +2 -2
  28. package/fesm2022/siemens-element-ng-main-detail-container.mjs.map +1 -1
  29. package/fesm2022/siemens-element-ng-menu.mjs +5 -7
  30. package/fesm2022/siemens-element-ng-menu.mjs.map +1 -1
  31. package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs +110 -51
  32. package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs.map +1 -1
  33. package/fesm2022/siemens-element-ng-navbar-vertical.mjs +25 -29
  34. package/fesm2022/siemens-element-ng-navbar-vertical.mjs.map +1 -1
  35. package/fesm2022/siemens-element-ng-notification-item.mjs +2 -2
  36. package/fesm2022/siemens-element-ng-notification-item.mjs.map +1 -1
  37. package/fesm2022/siemens-element-ng-select.mjs +455 -48
  38. package/fesm2022/siemens-element-ng-select.mjs.map +1 -1
  39. package/fesm2022/siemens-element-ng-side-panel.mjs +2 -2
  40. package/fesm2022/siemens-element-ng-side-panel.mjs.map +1 -1
  41. package/fesm2022/siemens-element-ng-slider.mjs +2 -2
  42. package/fesm2022/siemens-element-ng-slider.mjs.map +1 -1
  43. package/fesm2022/siemens-element-ng-status-toggle.mjs +2 -2
  44. package/fesm2022/siemens-element-ng-status-toggle.mjs.map +1 -1
  45. package/fesm2022/siemens-element-ng-translate.mjs.map +1 -1
  46. package/fesm2022/siemens-element-ng-tree-view.mjs +52 -30
  47. package/fesm2022/siemens-element-ng-tree-view.mjs.map +1 -1
  48. package/package.json +3 -3
  49. package/template-i18n.json +5 -0
  50. package/types/siemens-element-ng-breadcrumb-router.d.ts +6 -2
  51. package/types/siemens-element-ng-chat-messages.d.ts +6 -3
  52. package/types/siemens-element-ng-color-picker.d.ts +7 -2
  53. package/types/siemens-element-ng-dashboard.d.ts +360 -5
  54. package/types/siemens-element-ng-datatable.d.ts +0 -1
  55. package/types/siemens-element-ng-form.d.ts +1 -1
  56. package/types/siemens-element-ng-header-dropdown.d.ts +0 -8
  57. package/types/siemens-element-ng-navbar-vertical-next.d.ts +39 -9
  58. package/types/siemens-element-ng-navbar-vertical.d.ts +2 -1
  59. package/types/siemens-element-ng-select.d.ts +241 -2
  60. package/types/siemens-element-ng-translate.d.ts +5 -0
  61. package/types/siemens-element-ng-tree-view.d.ts +4 -5
@@ -15,7 +15,7 @@ declare class SiNavbarVerticalNextItemsComponent {
15
15
 
16
16
  /** @experimental */
17
17
  declare class SiNavbarVerticalNextComponent implements OnChanges, OnInit {
18
- protected readonly icons: Record<"elementDoubleLeft" | "elementDoubleRight", string>;
18
+ protected readonly icons: Record<"elementDoubleLeft" | "elementDoubleRight" | "elementLayoutPane2" | "elementLayoutPane2Right", string>;
19
19
  /**
20
20
  * Whether the navbar-vertical is collapsed.
21
21
  *
@@ -28,6 +28,23 @@ declare class SiNavbarVerticalNextComponent implements OnChanges, OnInit {
28
28
  * @defaultValue false
29
29
  */
30
30
  readonly textOnly: _angular_core.InputSignalWithTransform<boolean, unknown>;
31
+ /**
32
+ * Enables an alternative inline-collapse behavior.
33
+ *
34
+ * When collapsed, nav content becomes inert while the toggle remains
35
+ * available in the page flow.
36
+ *
37
+ * @defaultValue false
38
+ */
39
+ readonly inlineCollapse: _angular_core.InputSignalWithTransform<boolean, unknown>;
40
+ /**
41
+ * When `true`, item-groups always open as a transient flyout panel adjacent to the
42
+ * trigger, regardless of whether the navbar is collapsed or expanded.
43
+ * Flyouts open and close on click.
44
+ *
45
+ * @defaultValue false
46
+ */
47
+ readonly alwaysFlyout: _angular_core.InputSignalWithTransform<boolean, unknown>;
31
48
  /**
32
49
  * List of vertical navigation items
33
50
  *
@@ -72,6 +89,8 @@ declare class SiNavbarVerticalNextComponent implements OnChanges, OnInit {
72
89
  readonly skipLinkMainContentLabel: _angular_core.InputSignal<_siemens_element_translate_ng_translate.TranslatableString>;
73
90
  private uiStateService;
74
91
  private breakpointObserver;
92
+ private injector;
93
+ protected readonly ready: _angular_core.WritableSignal<boolean>;
75
94
  protected readonly smallScreen: _angular_core.WritableSignal<boolean>;
76
95
  /**
77
96
  * @defaultValue
@@ -81,6 +100,7 @@ declare class SiNavbarVerticalNextComponent implements OnChanges, OnInit {
81
100
  */
82
101
  readonly uiStateExpandedItems: _angular_core.WritableSignal<Record<string, boolean>>;
83
102
  private preferCollapse;
103
+ protected readonly toggleIcon: _angular_core.Signal<string>;
84
104
  constructor();
85
105
  ngOnChanges(changes: SimpleChanges<this>): void;
86
106
  ngOnInit(): void;
@@ -95,7 +115,7 @@ declare class SiNavbarVerticalNextComponent implements OnChanges, OnInit {
95
115
  /** @internal */
96
116
  itemTriggered(): void;
97
117
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SiNavbarVerticalNextComponent, never>;
98
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiNavbarVerticalNextComponent, "si-navbar-vertical-next", never, { "collapsed": { "alias": "collapsed"; "required": false; "isSignal": true; }; "textOnly": { "alias": "textOnly"; "required": false; "isSignal": true; }; "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "toggleButtonText": { "alias": "toggleButtonText"; "required": false; "isSignal": true; }; "stateId": { "alias": "stateId"; "required": false; "isSignal": true; }; "skipLinkNavigationLabel": { "alias": "skipLinkNavigationLabel"; "required": false; "isSignal": true; }; "skipLinkMainContentLabel": { "alias": "skipLinkMainContentLabel"; "required": false; "isSignal": true; }; }, { "collapsed": "collapsedChange"; }, never, ["si-navbar-vertical-next-search", "si-navbar-vertical-next-items", "si-navbar-vertical-next-footer-items", "*"], true, never>;
118
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiNavbarVerticalNextComponent, "si-navbar-vertical-next", never, { "collapsed": { "alias": "collapsed"; "required": false; "isSignal": true; }; "textOnly": { "alias": "textOnly"; "required": false; "isSignal": true; }; "inlineCollapse": { "alias": "inlineCollapse"; "required": false; "isSignal": true; }; "alwaysFlyout": { "alias": "alwaysFlyout"; "required": false; "isSignal": true; }; "visible": { "alias": "visible"; "required": false; "isSignal": true; }; "toggleButtonText": { "alias": "toggleButtonText"; "required": false; "isSignal": true; }; "stateId": { "alias": "stateId"; "required": false; "isSignal": true; }; "skipLinkNavigationLabel": { "alias": "skipLinkNavigationLabel"; "required": false; "isSignal": true; }; "skipLinkMainContentLabel": { "alias": "skipLinkMainContentLabel"; "required": false; "isSignal": true; }; }, { "collapsed": "collapsedChange"; }, never, ["si-navbar-vertical-next-search", "si-navbar-vertical-next-items", "si-navbar-vertical-next-footer-items", "*"], true, never>;
99
119
  }
100
120
 
101
121
  /**
@@ -119,7 +139,7 @@ declare class SiNavbarVerticalNextFooterItemsComponent {
119
139
  }
120
140
 
121
141
  /** @experimental */
122
- declare class SiNavbarVerticalNextGroupTriggerDirective implements OnInit {
142
+ declare class SiNavbarVerticalNextGroupTriggerDirective {
123
143
  private static idCounter;
124
144
  /** @internal */
125
145
  readonly groupId: string;
@@ -128,27 +148,38 @@ declare class SiNavbarVerticalNextGroupTriggerDirective implements OnInit {
128
148
  readonly stateId: _angular_core.InputSignal<string | undefined>;
129
149
  /** @defaultValue false */
130
150
  readonly expanded: _angular_core.WritableSignal<boolean>;
131
- /** @internal */
151
+ /**
152
+ * Whether the group is currently rendered as a transient flyout overlay
153
+ * (true) or inline within the navbar (false). Automatically resets to
154
+ * `false` whenever the rendering mode changes.
155
+ * @internal
156
+ */
132
157
  readonly flyout: _angular_core.WritableSignal<boolean>;
133
- /** @internal */
158
+ /**
159
+ * Whether the open flyout overlay currently contains the active route.
160
+ * Reset together with `flyout` so it never lingers across mode changes.
161
+ * @internal
162
+ */
134
163
  readonly active: _angular_core.WritableSignal<boolean>;
135
164
  protected readonly navbar: _siemens_element_ng_navbar_vertical_next.SiNavbarVerticalNextComponent;
165
+ /** @internal */
166
+ readonly flyoutMode: _angular_core.Signal<boolean>;
136
167
  private flyoutOutsideClickSubscription?;
137
168
  private readonly viewContainer;
138
169
  private readonly overlay;
139
170
  private readonly injector;
140
171
  private readonly overlayRef;
141
- private groupView;
172
+ private groupView?;
142
173
  private flyoutAnchorComponentRef?;
143
174
  private readonly templatePortal;
144
175
  constructor();
145
- ngOnInit(): void;
146
176
  /** @internal */
147
177
  hideFlyout(): void;
148
178
  protected triggered(): void;
149
179
  private toggleFlyout;
150
180
  private attachInline;
151
181
  private attachFlyout;
182
+ private detachFlyout;
152
183
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<SiNavbarVerticalNextGroupTriggerDirective, never>;
153
184
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SiNavbarVerticalNextGroupTriggerDirective, "button[siNavbarVerticalNextGroupTriggerFor]", never, { "groupTemplate": { "alias": "siNavbarVerticalNextGroupTriggerFor"; "required": true; "isSignal": true; }; "stateId": { "alias": "stateId"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
154
185
  }
@@ -158,7 +189,6 @@ declare class SiNavbarVerticalNextGroupComponent {
158
189
  protected readonly navbar: _siemens_element_ng_navbar_vertical_next.SiNavbarVerticalNextComponent;
159
190
  protected readonly groupTrigger: SiNavbarVerticalNextGroupTriggerDirective;
160
191
  private readonly routerLinkActive;
161
- protected flyout: boolean;
162
192
  protected readonly visible: _angular_core.Signal<boolean>;
163
193
  constructor();
164
194
  protected close(): void;
@@ -175,7 +205,7 @@ declare class SiNavbarVerticalNextHeaderComponent {
175
205
 
176
206
  /** @experimental */
177
207
  declare class SiNavbarVerticalNextItemComponent implements OnInit {
178
- protected readonly icons: Record<"elementDown2", string>;
208
+ protected readonly icons: Record<"elementDown2" | "elementRight2", string>;
179
209
  /** Optional icon to render before the label. */
180
210
  readonly icon: _angular_core.InputSignal<string | undefined>;
181
211
  /** Badge value to display. */
@@ -199,12 +199,13 @@ declare class SiNavbarVerticalComponent implements OnChanges, OnInit {
199
199
  readonly searchEvent: _angular_core.OutputEmitterRef<string>;
200
200
  private readonly searchBar;
201
201
  protected readonly activatedRoute: ActivatedRoute | null;
202
- protected readonly ready = true;
203
202
  private uiStateService;
204
203
  private breakpointObserver;
204
+ private injector;
205
205
  private readonly navbarItems;
206
206
  private readonly navbarItemsLegacy;
207
207
  private readonly itemsToComponents;
208
+ protected readonly ready: _angular_core.WritableSignal<boolean>;
208
209
  protected readonly smallScreen: _angular_core.WritableSignal<boolean>;
209
210
  protected readonly uiStateExpandedItems: _angular_core.WritableSignal<Record<string, boolean>>;
210
211
  private preferCollapse;
@@ -546,5 +546,244 @@ declare class SiSelectListHasFilterComponent<T> extends SiSelectListBase<T> impl
546
546
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiSelectListHasFilterComponent<any>, "si-select-list-has-filter", never, { "filterPlaceholder": { "alias": "filterPlaceholder"; "required": true; "isSignal": true; }; "noResultsFoundLabel": { "alias": "noResultsFoundLabel"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
547
547
  }
548
548
 
549
- export { SiSelectActionDirective, SiSelectActionsDirective, SiSelectComponent, SiSelectGroupTemplateDirective, SiSelectLazyOptionsDirective, SiSelectListHasFilterComponent, SiSelectModule, SiSelectMultiValueDirective, SiSelectOptionTemplateDirective, SiSelectSimpleOptionsDirective, SiSelectSingleValueDirective };
550
- export type { SelectGroup, SelectItem, SelectOption, SelectOptionSource };
549
+ /**
550
+ * Possible values for the `aria-haspopup` attribute exposed by the
551
+ * combobox host of a custom select.
552
+ */
553
+ type SiSelectDropdownContentType = 'false' | 'true' | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog';
554
+ /**
555
+ * Structural directive marking the dropdown template for custom selects
556
+ * built with {@link SiCustomSelectDirective}.
557
+ *
558
+ * When placed on an `<ng-template>`, it automatically registers the template
559
+ * with the parent {@link SiCustomSelectDirective}.
560
+ *
561
+ * @example
562
+ * ```html
563
+ * <ng-template si-select-dropdown contentType="listbox">
564
+ * <!-- custom dropdown content -->
565
+ * </ng-template>
566
+ * ```
567
+ *
568
+ * @experimental
569
+ */
570
+ declare class SiSelectDropdownDirective {
571
+ /**
572
+ * Describes the kind of content rendered by the dropdown. The value is
573
+ * forwarded to the `aria-haspopup` attribute of the combobox host of
574
+ * the parent {@link SiCustomSelectDirective}.
575
+ */
576
+ readonly contentType: _angular_core.InputSignal<SiSelectDropdownContentType>;
577
+ /** @internal */
578
+ readonly templateRef: TemplateRef<void>;
579
+ constructor();
580
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SiSelectDropdownDirective, never>;
581
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SiSelectDropdownDirective, "[si-select-dropdown]", never, { "contentType": { "alias": "contentType"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
582
+ }
583
+
584
+ /**
585
+ * Host directive for building custom selects.
586
+ *
587
+ * Add this as a `hostDirective` on your component and expose the inputs/outputs you need.
588
+ * The directive handles:
589
+ * - {@link ControlValueAccessor} integration (`formControl`, `ngModel`, `[(value)]`)
590
+ * - Disabled / readonly state management
591
+ * - Overlay lifecycle for the dropdown (open/close)
592
+ * - Focus management and focus trapping in the dropdown
593
+ * - Opening the dropdown on click, Enter, Space, ArrowDown, ArrowUp
594
+ * - {@link SiFormItemControl} integration
595
+ *
596
+ * Use {@link SiSelectDropdownDirective} to mark the dropdown template in your component,
597
+ * and call {@link open}, {@link close}, {@link updateValue} from your component logic.
598
+ *
599
+ * @example
600
+ * ```ts
601
+ * @Component({
602
+ * selector: 'app-my-select',
603
+ * hostDirectives: [{
604
+ * directive: SiCustomSelectDirective,
605
+ * inputs: ['disabled', 'readonly', 'value'],
606
+ * outputs: ['valueChange']
607
+ * }],
608
+ * template: `
609
+ * <si-select-combobox>
610
+ * {{ select.value() }}
611
+ * </si-select-combobox>
612
+ * <ng-template si-select-dropdown contentType="listbox">
613
+ * <button (click)="select.updateValue('new'); select.close()">Pick</button>
614
+ * </ng-template>
615
+ * `
616
+ * })
617
+ * export class MySelectComponent {
618
+ * readonly select = inject(SiCustomSelectDirective);
619
+ * }
620
+ * ```
621
+ *
622
+ * @experimental
623
+ */
624
+ declare class SiCustomSelectDirective<T> implements ControlValueAccessor, SiFormItemControl {
625
+ private static idCounter;
626
+ /**
627
+ * Unique identifier.
628
+ *
629
+ * @defaultValue
630
+ * ```
631
+ * `__si-custom-select-${SiCustomSelectDirective.idCounter++}`
632
+ * ```
633
+ */
634
+ readonly id: _angular_core.InputSignal<string>;
635
+ /**
636
+ * Whether the select input is disabled.
637
+ *
638
+ * @defaultValue false
639
+ */
640
+ readonly disabledInput: _angular_core.InputSignalWithTransform<boolean, unknown>;
641
+ /**
642
+ * Readonly state. Similar to disabled but with higher contrast.
643
+ *
644
+ * @defaultValue false
645
+ */
646
+ readonly readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
647
+ /** Emits when the dropdown open state changes. */
648
+ readonly openChange: _angular_core.OutputEmitterRef<boolean>;
649
+ /**
650
+ * The current value, supports two-way binding via `[(value)]`.
651
+ *
652
+ * @defaultValue undefined
653
+ */
654
+ readonly value: _angular_core.ModelSignal<T | undefined>;
655
+ /**
656
+ * Whether the dropdown is currently open.
657
+ *
658
+ * @defaultValue false
659
+ */
660
+ readonly isOpen: _angular_core.WritableSignal<boolean>;
661
+ /** @internal */
662
+ readonly labelledby: _angular_core.Signal<string>;
663
+ /** @internal */
664
+ readonly comboboxLabelId: _angular_core.Signal<string>;
665
+ /** @internal */
666
+ readonly dropdownId: _angular_core.Signal<string>;
667
+ /**
668
+ * Value forwarded to the `aria-haspopup` attribute. Reflects the
669
+ * `contentType` input of the registered {@link SiSelectDropdownDirective},
670
+ * defaulting to `'listbox'` until a dropdown template is registered.
671
+ * @internal
672
+ */
673
+ readonly haspopup: _angular_core.Signal<_siemens_element_ng_select.SiSelectDropdownContentType>;
674
+ /**
675
+ * This ID will be bound to the `aria-describedby` attribute of the select.
676
+ *
677
+ * @defaultValue
678
+ * ```
679
+ * `${this.id()}-errormessage`
680
+ * ```
681
+ */
682
+ readonly errormessageId: _angular_core.InputSignal<string>;
683
+ /** Combined disabled state from input and form control. */
684
+ readonly disabled: _angular_core.Signal<boolean>;
685
+ private onTouched;
686
+ private onChange;
687
+ private readonly disabledByForm;
688
+ private readonly overlay;
689
+ private readonly focusTrapFactory;
690
+ private readonly elementRef;
691
+ private readonly viewContainerRef;
692
+ private readonly destroyRef;
693
+ private readonly isBrowser;
694
+ private overlayRef?;
695
+ private focusTrap?;
696
+ private readonly closeOverlay$;
697
+ private readonly dropdownDirective;
698
+ constructor();
699
+ /**
700
+ * Registers the dropdown directive. Called by
701
+ * {@link SiSelectDropdownDirective} when it is initialized.
702
+ * @internal
703
+ */
704
+ registerDropdown(directive: SiSelectDropdownDirective): void;
705
+ /**
706
+ * Updates the value programmatically.
707
+ * Call this from your dropdown template to set the new value.
708
+ */
709
+ updateValue(value: T | undefined): void;
710
+ /** Opens the dropdown overlay. */
711
+ open(event?: Event): void;
712
+ /** Closes the dropdown overlay and restores focus. */
713
+ close(): void;
714
+ /** @internal */
715
+ writeValue(obj: T | null): void;
716
+ /** @internal */
717
+ registerOnChange(fn: (_: T | undefined) => void): void;
718
+ /** @internal */
719
+ registerOnTouched(fn: () => void): void;
720
+ /** @internal */
721
+ setDisabledState(isDisabled: boolean): void;
722
+ private disposeOverlay;
723
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SiCustomSelectDirective<any>, never>;
724
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SiCustomSelectDirective<any>, "[siCustomSelect]", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "errormessageId": { "alias": "errormessageId"; "required": false; "isSignal": true; }; }, { "openChange": "openChange"; "value": "valueChange"; }, never, never, true, never>;
725
+ }
726
+
727
+ /**
728
+ * Visual trigger element for custom selects built with {@link SiCustomSelectDirective}.
729
+ * Renders the projected content and a dropdown caret icon.
730
+ *
731
+ * The ARIA role, focus handling, and state attributes live on the host component
732
+ * via {@link SiCustomSelectDirective} — this component is purely visual.
733
+ *
734
+ * @example
735
+ * ```html
736
+ * <si-select-combobox>
737
+ * {{ select.value() }}
738
+ * </si-select-combobox>
739
+ * ```
740
+ *
741
+ * @experimental
742
+ */
743
+ declare class SiSelectComboboxComponent {
744
+ protected readonly icons: Record<"elementDown2", string>;
745
+ protected readonly customSelect: SiCustomSelectDirective<any>;
746
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SiSelectComboboxComponent, never>;
747
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiSelectComboboxComponent, "si-select-combobox", never, {}, {}, never, ["*"], true, never>;
748
+ }
749
+
750
+ /**
751
+ * Represents a single selected value inside an {@link SiSelectComboboxComponent}.
752
+ *
753
+ * Project one `<si-select-combobox-value>` per selected entry. Optional
754
+ * `icon`, `iconColor`, `stackedIcon` and `stackedIconColor` inputs mirror the
755
+ * icon API of {@link SelectOption} and render an icon (with optional stacked
756
+ * overlay) before the projected content.
757
+ *
758
+ * Add the `comma-separated` CSS class to render a comma between adjacent
759
+ * values. Omit it when using chips, custom separators, or a single value.
760
+ *
761
+ * @example
762
+ * ```html
763
+ * <si-select-combobox>
764
+ * <si-select-combobox-value
765
+ * icon="element-face-happy"
766
+ * iconColor="status-success"
767
+ * >
768
+ * {{ select.value() }}
769
+ * </si-select-combobox-value>
770
+ * </si-select-combobox>
771
+ * ```
772
+ *
773
+ * @experimental
774
+ */
775
+ declare class SiSelectComboboxValueComponent {
776
+ /** An optional icon rendered before the projected content. */
777
+ readonly icon: _angular_core.InputSignal<string | undefined>;
778
+ /** Optional CSS color class applied to {@link icon}. */
779
+ readonly iconColor: _angular_core.InputSignal<string | undefined>;
780
+ /** Optional secondary icon stacked on top of {@link icon}. */
781
+ readonly stackedIcon: _angular_core.InputSignal<string | undefined>;
782
+ /** Optional CSS color class applied to {@link stackedIcon}. */
783
+ readonly stackedIconColor: _angular_core.InputSignal<string | undefined>;
784
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SiSelectComboboxValueComponent, never>;
785
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiSelectComboboxValueComponent, "si-select-combobox-value", never, { "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconColor": { "alias": "iconColor"; "required": false; "isSignal": true; }; "stackedIcon": { "alias": "stackedIcon"; "required": false; "isSignal": true; }; "stackedIconColor": { "alias": "stackedIconColor"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
786
+ }
787
+
788
+ export { SiCustomSelectDirective, SiSelectActionDirective, SiSelectActionsDirective, SiSelectComboboxComponent, SiSelectComboboxValueComponent, SiSelectComponent, SiSelectDropdownDirective, SiSelectGroupTemplateDirective, SiSelectLazyOptionsDirective, SiSelectListHasFilterComponent, SiSelectModule, SiSelectMultiValueDirective, SiSelectOptionTemplateDirective, SiSelectSimpleOptionsDirective, SiSelectSingleValueDirective };
789
+ export type { SelectGroup, SelectItem, SelectOption, SelectOptionSource, SiSelectDropdownContentType };
@@ -9,6 +9,7 @@ interface SiTranslatableKeys {
9
9
  'SI_APPLICATION_HEADER.TOGGLE_NAVIGATION'?: string;
10
10
  'SI_ATTACHMENT_LIST.REMOVE_ATTACHMENT'?: string;
11
11
  'SI_BREADCRUMB'?: string;
12
+ 'SI_BREADCRUMB_ROUTER_LABEL'?: string;
12
13
  'SI_CHANGE_PASSWORD.BACK'?: string;
13
14
  'SI_CHANGE_PASSWORD.CHANGE'?: string;
14
15
  'SI_CHANGE_PASSWORD.CHANGE_FACTORY_PASSWORD'?: string;
@@ -22,6 +23,7 @@ interface SiTranslatableKeys {
22
23
  'SI_CHAT_INPUT.PLACEHOLDER'?: string;
23
24
  'SI_CHAT_INPUT.SECONDARY_ACTIONS'?: string;
24
25
  'SI_CHAT_INPUT.SEND'?: string;
26
+ 'SI_COLOR_PICKER.SELECTED_LABEL'?: string;
25
27
  'SI_COLUMN_SELECTION_DIALOG.CANCEL'?: string;
26
28
  'SI_COLUMN_SELECTION_DIALOG.HIDDEN'?: string;
27
29
  'SI_COLUMN_SELECTION_DIALOG.ITEM_MOVED'?: string;
@@ -233,6 +235,9 @@ interface SiTranslatableKeys {
233
235
  'SI_TREE_VIEW.EXPAND_ALL'?: string;
234
236
  'SI_TYPEAHEAD.AUTOCOMPLETE_LIST_LABEL'?: string;
235
237
  'SI_USER_MESSAGE.SECONDARY_ACTIONS'?: string;
238
+ 'SI_WEATHER_WIDGET.FORECAST_LABEL'?: string;
239
+ 'SI_WEATHER_WIDGET.ILLUSTRATION_ALT'?: string;
240
+ 'SI_WEATHER_WIDGET.METRICS_LABEL'?: string;
236
241
  'SI_WIZARD.BACK'?: string;
237
242
  'SI_WIZARD.CANCEL'?: string;
238
243
  'SI_WIZARD.COMPLETED'?: string;
@@ -1,5 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { OnInit, OnDestroy, AfterViewInit, DoCheck, TemplateRef, OnChanges, AfterViewChecked, Signal, SimpleChanges, ElementRef } from '@angular/core';
2
+ import { OnInit, AfterViewInit, DoCheck, TemplateRef, OnChanges, OnDestroy, AfterViewChecked, Signal, SimpleChanges, ElementRef } from '@angular/core';
3
3
  import { MenuItem } from '@siemens/element-ng/common';
4
4
  import { MenuItem as MenuItem$1 } from '@siemens/element-ng/menu';
5
5
  import { TranslatableString } from '@siemens/element-translate-ng/translate';
@@ -9,10 +9,11 @@ import { FocusableOption } from '@angular/cdk/a11y';
9
9
  import { CdkMenuTrigger } from '@angular/cdk/menu';
10
10
  import { CdkDragDrop } from '@angular/cdk/drag-drop';
11
11
 
12
- declare class SiTreeViewItemComponent implements OnInit, OnDestroy, AfterViewInit, FocusableOption, DoCheck {
12
+ declare class SiTreeViewItemComponent implements OnInit, AfterViewInit, FocusableOption, DoCheck {
13
13
  private element;
14
14
  private siTreeViewService;
15
15
  private cdRef;
16
+ private destroyRef;
16
17
  protected treeItemContext: {
17
18
  record: _angular_core.IterableChangeRecord<TreeItem<any>>;
18
19
  parent: _siemens_element_ng_tree_view.SiTreeViewComponent;
@@ -39,7 +40,6 @@ declare class SiTreeViewItemComponent implements OnInit, OnDestroy, AfterViewIni
39
40
  itemExpandedLeft: string;
40
41
  }>;
41
42
  private savedElement;
42
- private subscriptions;
43
43
  private indentLevel;
44
44
  private nextSiblingElement;
45
45
  protected readonly menuTrigger: _angular_core.Signal<CdkMenuTrigger | undefined>;
@@ -53,7 +53,6 @@ declare class SiTreeViewItemComponent implements OnInit, OnDestroy, AfterViewIni
53
53
  ngOnInit(): void;
54
54
  ngDoCheck(): void;
55
55
  ngAfterViewInit(): void;
56
- ngOnDestroy(): void;
57
56
  protected readonly enableSelection: _angular_core.InputSignalWithTransform<boolean, unknown>;
58
57
  protected readonly enableContextMenuButton: _angular_core.InputSignalWithTransform<boolean, unknown>;
59
58
  protected readonly enableDataField1: _angular_core.InputSignalWithTransform<boolean, unknown>;
@@ -340,7 +339,6 @@ declare class SiTreeViewComponent implements OnInit, OnChanges, OnDestroy, After
340
339
  private manuallySelectedTreeItems;
341
340
  private latestFolderChanged?;
342
341
  private breadCrumbTreeItems;
343
- private subscriptions;
344
342
  private multiSelectionStart;
345
343
  private _multiSelectionActive;
346
344
  private domChangeObserver?;
@@ -353,6 +351,7 @@ declare class SiTreeViewComponent implements OnInit, OnChanges, OnDestroy, After
353
351
  private cdRef;
354
352
  private resizeObserver;
355
353
  private injector;
354
+ private destroyRef;
356
355
  /**
357
356
  * Create a virtual root node so there is just a single root node. This makes sure the tree
358
357
  * can be fully traversed starting from any node. This is needed e.g. for recursively