@siemens/element-ng 49.0.0 → 49.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/siemens-element-ng-accordion.mjs +2 -2
- package/fesm2022/siemens-element-ng-accordion.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-application-header.mjs +12 -4
- package/fesm2022/siemens-element-ng-application-header.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-chat-messages.mjs +5 -5
- package/fesm2022/siemens-element-ng-chat-messages.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-common.mjs +2 -2
- package/fesm2022/siemens-element-ng-common.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-dashboard.mjs +16 -20
- package/fesm2022/siemens-element-ng-dashboard.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-datatable.mjs +2 -1
- package/fesm2022/siemens-element-ng-datatable.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-datepicker.mjs +1 -1
- package/fesm2022/siemens-element-ng-datepicker.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-file-uploader.mjs +0 -1
- package/fesm2022/siemens-element-ng-file-uploader.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-filtered-search.mjs +94 -103
- package/fesm2022/siemens-element-ng-filtered-search.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-formly.mjs +2 -2
- package/fesm2022/siemens-element-ng-formly.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-landing-page.mjs +19 -5
- package/fesm2022/siemens-element-ng-landing-page.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar-vertical.mjs +2 -2
- package/fesm2022/siemens-element-ng-navbar-vertical.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-select.mjs +2 -2
- package/fesm2022/siemens-element-ng-select.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-side-panel.mjs +2 -2
- package/fesm2022/siemens-element-ng-side-panel.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tabs.mjs +67 -5
- package/fesm2022/siemens-element-ng-tabs.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-translate.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-typeahead.mjs +83 -23
- package/fesm2022/siemens-element-ng-typeahead.mjs.map +1 -1
- package/package.json +4 -4
- package/schematics/utils/ts-compiler-host.js +3 -0
- package/template-i18n.json +2 -0
- package/types/siemens-element-ng-application-header.d.ts +1 -0
- package/types/siemens-element-ng-common.d.ts +1 -1
- package/types/siemens-element-ng-dashboard.d.ts +13 -14
- package/types/siemens-element-ng-datatable.d.ts +1 -0
- package/types/siemens-element-ng-file-uploader.d.ts +2 -2
- package/types/siemens-element-ng-filtered-search.d.ts +3 -9
- package/types/siemens-element-ng-form.d.ts +1 -1
- package/types/siemens-element-ng-landing-page.d.ts +6 -0
- package/types/siemens-element-ng-tabs.d.ts +51 -2
- package/types/siemens-element-ng-translate.d.ts +2 -0
- package/types/siemens-element-ng-typeahead.d.ts +36 -4
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@siemens/element-ng",
|
|
3
3
|
"description": "Element Angular component library, implementing the Siemens Design Language",
|
|
4
|
-
"version": "49.
|
|
4
|
+
"version": "49.2.0",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -43,9 +43,9 @@
|
|
|
43
43
|
"@ngx-formly/bootstrap": "^6.2.2",
|
|
44
44
|
"@ngx-formly/core": "^6.2.2",
|
|
45
45
|
"@siemens/element-icons": "1",
|
|
46
|
-
"@siemens/element-translate-ng": "49.
|
|
47
|
-
"@siemens/element-theme": "49.
|
|
48
|
-
"@siemens/ngx-datatable": "
|
|
46
|
+
"@siemens/element-translate-ng": "49.2.0",
|
|
47
|
+
"@siemens/element-theme": "49.2.0",
|
|
48
|
+
"@siemens/ngx-datatable": "22 - 26",
|
|
49
49
|
"ag-grid-community": "^34.3.1",
|
|
50
50
|
"flag-icons": "^7.3.2",
|
|
51
51
|
"google-libphonenumber": "^3.2.40",
|
|
@@ -44,6 +44,9 @@ export const createTreeAwareCompilerHost = (tree, options) => {
|
|
|
44
44
|
host.directoryExists = path => {
|
|
45
45
|
const treePath = toTreePath(path);
|
|
46
46
|
if (treePath) {
|
|
47
|
+
if (tree.exists(treePath) && tree.get(treePath) !== null) {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
47
50
|
const dir = tree.getDir(treePath);
|
|
48
51
|
if (dir.subfiles.length || dir.subdirs.length) {
|
|
49
52
|
return true;
|
package/template-i18n.json
CHANGED
|
@@ -161,9 +161,11 @@
|
|
|
161
161
|
"SI_LIST_WIDGET.SORT_DESCENDING": "Sort descending",
|
|
162
162
|
"SI_LOADING_SPINNER.LABEL": "Loading",
|
|
163
163
|
"SI_LOGIN_BASIC.BACK": "Back",
|
|
164
|
+
"SI_LOGIN_BASIC.FORGOT_PASSWORD": "Forgot password",
|
|
164
165
|
"SI_LOGIN_BASIC.LOGIN": "Login",
|
|
165
166
|
"SI_LOGIN_BASIC.NEXT": "Next",
|
|
166
167
|
"SI_LOGIN_BASIC.PASSWORD": "Password",
|
|
168
|
+
"SI_LOGIN_BASIC.REGISTER_NOW": "Register now",
|
|
167
169
|
"SI_LOGIN_BASIC.USERNAME": "Username",
|
|
168
170
|
"SI_LOGIN_SINGLE-SIGN-ON.LOGIN_SIGN_UP": "Login / Sign un",
|
|
169
171
|
"SI_MAIN_DETAIL_CONTAINER.BACK": "Back",
|
|
@@ -367,6 +367,7 @@ declare class SiLaunchpadFactoryComponent {
|
|
|
367
367
|
protected toggleFavorite(app: App, favorite: boolean): void;
|
|
368
368
|
protected escape(): void;
|
|
369
369
|
protected isCategories(items: App[] | AppCategory[]): items is AppCategory[];
|
|
370
|
+
protected isFavoriteToggleDisabled(app: App): boolean;
|
|
370
371
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SiLaunchpadFactoryComponent, never>;
|
|
371
372
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiLaunchpadFactoryComponent, "si-launchpad-factory", never, { "closeText": { "alias": "closeText"; "required": false; "isSignal": true; }; "titleText": { "alias": "titleText"; "required": false; "isSignal": true; }; "subtitleText": { "alias": "subtitleText"; "required": false; "isSignal": true; }; "apps": { "alias": "apps"; "required": true; "isSignal": true; }; "enableFavorites": { "alias": "enableFavorites"; "required": false; "isSignal": true; }; "favoriteAppsText": { "alias": "favoriteAppsText"; "required": false; "isSignal": true; }; "showMoreAppsText": { "alias": "showMoreAppsText"; "required": false; "isSignal": true; }; "showLessAppsText": { "alias": "showLessAppsText"; "required": false; "isSignal": true; }; }, { "favoriteChange": "favoriteChange"; }, never, never, true, never>;
|
|
372
373
|
}
|
|
@@ -3,7 +3,7 @@ import * as i0 from '@angular/core';
|
|
|
3
3
|
import { InjectionToken, Type, Provider, ElementRef } from '@angular/core';
|
|
4
4
|
import { Link } from '@siemens/element-ng/link';
|
|
5
5
|
import { TranslatableString } from '@siemens/element-translate-ng/translate';
|
|
6
|
-
import { ConnectionPositionPair,
|
|
6
|
+
import { ConnectionPositionPair, ConnectedOverlayPositionChange, Overlay, OverlayRef, FlexibleConnectedPositionStrategy, PositionStrategy } from '@angular/cdk/overlay';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* A global blink pulse generator for synchronized blinking patterns across an entire application.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as _siemens_element_ng_content_action_bar from '@siemens/element-ng/content-action-bar';
|
|
2
2
|
import { ContentActionBarMainItem } from '@siemens/element-ng/content-action-bar';
|
|
3
3
|
import * as _angular_core from '@angular/core';
|
|
4
|
-
import { OnDestroy, ElementRef, OnChanges, AfterViewInit, SimpleChanges, OnInit
|
|
4
|
+
import { OnDestroy, ElementRef, OnChanges, AfterViewInit, SimpleChanges, OnInit } from '@angular/core';
|
|
5
5
|
import * as _siemens_element_translate_ng_translate from '@siemens/element-translate-ng/translate';
|
|
6
6
|
import { TranslatableString } from '@siemens/element-translate-ng/translate';
|
|
7
7
|
import { SiCardComponent } from '@siemens/element-ng/card';
|
|
@@ -185,13 +185,13 @@ declare class SiDashboardService {
|
|
|
185
185
|
}
|
|
186
186
|
|
|
187
187
|
/**
|
|
188
|
-
* The
|
|
188
|
+
* The SiWidgetBaseDirective<T> implements the timing for the skeleton loading
|
|
189
189
|
* indicator of widgets. It supports a generic value input property that represents
|
|
190
190
|
* the main value to be displayed by a widget. When the value is not set, the `showLoadingIndicator`
|
|
191
191
|
* changes after the `initialLoadingIndicatorDebounceTime` delay to `true` and subclasses
|
|
192
192
|
* should show the skeleton loading indicator.
|
|
193
193
|
*/
|
|
194
|
-
declare abstract class
|
|
194
|
+
declare abstract class SiWidgetBaseDirective<T> implements OnInit, OnChanges {
|
|
195
195
|
/**
|
|
196
196
|
* The main value to be displayed. If no value is set,
|
|
197
197
|
* the skeleton indicates the loading of the value. Disable
|
|
@@ -219,19 +219,18 @@ declare abstract class SiWidgetBaseComponent<T> implements OnInit, OnChanges {
|
|
|
219
219
|
* @defaultValue 300
|
|
220
220
|
*/
|
|
221
221
|
readonly initialLoadingIndicatorDebounceTime: _angular_core.InputSignal<number>;
|
|
222
|
-
protected cdRef: ChangeDetectorRef;
|
|
223
222
|
protected loadingTimer?: ReturnType<typeof setTimeout>;
|
|
224
223
|
ngOnChanges(changes: SimpleChanges): void;
|
|
225
224
|
ngOnInit(): void;
|
|
226
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<
|
|
227
|
-
static
|
|
225
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SiWidgetBaseDirective<any>, never>;
|
|
226
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SiWidgetBaseDirective<any>, never, never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "disableAutoLoadingIndicator": { "alias": "disableAutoLoadingIndicator"; "required": false; "isSignal": true; }; "showLoadingIndicatorInput": { "alias": "showLoadingIndicator"; "required": false; "isSignal": true; }; "initialLoadingIndicatorDebounceTime": { "alias": "initialLoadingIndicatorDebounceTime"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
228
227
|
}
|
|
229
228
|
|
|
230
229
|
/**
|
|
231
230
|
* The `<si-link-widget>` supports an easy composition of links and actions
|
|
232
231
|
* with support for skeleton loading indicator.
|
|
233
232
|
*/
|
|
234
|
-
declare class SiLinkWidgetComponent extends
|
|
233
|
+
declare class SiLinkWidgetComponent extends SiWidgetBaseDirective<Link[]> {
|
|
235
234
|
/**
|
|
236
235
|
* Option to enable trailing link arrow icons for each link.
|
|
237
236
|
*
|
|
@@ -276,7 +275,7 @@ interface SiListWidgetItem {
|
|
|
276
275
|
* The `<si-link-widget>` supports an easy composition of links and actions
|
|
277
276
|
* with support for skeleton loading indicator.
|
|
278
277
|
*/
|
|
279
|
-
declare class SiListWidgetItemComponent extends
|
|
278
|
+
declare class SiListWidgetItemComponent extends SiWidgetBaseDirective<SiListWidgetItem> {
|
|
280
279
|
protected readonly isLink: _angular_core.Signal<boolean>;
|
|
281
280
|
protected readonly badgeColor: _angular_core.Signal<string>;
|
|
282
281
|
protected readonly link: _angular_core.Signal<Link>;
|
|
@@ -292,7 +291,7 @@ type SortOrder = 'ASC' | 'DSC';
|
|
|
292
291
|
* The `<si-list-widget-body>` implements the body of the <si-list-widget> that can be
|
|
293
292
|
* used for composition within other components.
|
|
294
293
|
*/
|
|
295
|
-
declare class SiListWidgetBodyComponent extends
|
|
294
|
+
declare class SiListWidgetBodyComponent extends SiWidgetBaseDirective<SiListWidgetItem[]> implements OnChanges {
|
|
296
295
|
/** Optional footer link for the list widget */
|
|
297
296
|
readonly link: _angular_core.InputSignal<Link | undefined>;
|
|
298
297
|
/**
|
|
@@ -380,7 +379,7 @@ declare class SiListWidgetBodyComponent extends SiWidgetBaseComponent<SiListWidg
|
|
|
380
379
|
* The `<si-list-widget>` supports an easy composition of links and actions
|
|
381
380
|
* with support for skeleton loading indicator, wrapped in a card.
|
|
382
381
|
*/
|
|
383
|
-
declare class SiListWidgetComponent extends
|
|
382
|
+
declare class SiListWidgetComponent extends SiWidgetBaseDirective<SiListWidgetItem[]> implements OnChanges {
|
|
384
383
|
protected readonly icons: Record<"elementRight2" | "elementSortDown" | "elementSortUp", string>;
|
|
385
384
|
/** List widget heading. */
|
|
386
385
|
readonly heading: _angular_core.InputSignal<TranslatableString | undefined>;
|
|
@@ -569,7 +568,7 @@ interface SiTimelineWidgetItem {
|
|
|
569
568
|
/**
|
|
570
569
|
* The items of the `<si-timeline-widget>`.
|
|
571
570
|
*/
|
|
572
|
-
declare class SiTimelineWidgetItemComponent extends
|
|
571
|
+
declare class SiTimelineWidgetItemComponent extends SiWidgetBaseDirective<SiTimelineWidgetItem> implements OnInit, OnChanges {
|
|
573
572
|
/**
|
|
574
573
|
* Whether to show or hide the description row during skeleton progress indication.
|
|
575
574
|
*
|
|
@@ -585,7 +584,7 @@ declare class SiTimelineWidgetItemComponent extends SiWidgetBaseComponent<SiTime
|
|
|
585
584
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiTimelineWidgetItemComponent, "si-timeline-widget-item", never, { "showDescription": { "alias": "showDescription"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
586
585
|
}
|
|
587
586
|
|
|
588
|
-
declare class SiTimelineWidgetComponent extends
|
|
587
|
+
declare class SiTimelineWidgetComponent extends SiWidgetBaseDirective<SiTimelineWidgetItem[]> implements OnChanges {
|
|
589
588
|
/**
|
|
590
589
|
* Timeline widget header text.
|
|
591
590
|
*/
|
|
@@ -630,7 +629,7 @@ declare class SiTimelineWidgetComponent extends SiWidgetBaseComponent<SiTimeline
|
|
|
630
629
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiTimelineWidgetComponent, "si-timeline-widget", never, { "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "primaryActions": { "alias": "primaryActions"; "required": false; "isSignal": true; }; "secondaryActions": { "alias": "secondaryActions"; "required": false; "isSignal": true; }; "link": { "alias": "link"; "required": false; "isSignal": true; }; "numberOfItems": { "alias": "numberOfItems"; "required": false; "isSignal": true; }; "showDescription": { "alias": "showDescription"; "required": false; "isSignal": true; }; "accentLine": { "alias": "accentLine"; "required": false; "isSignal": true; }; }, {}, never, ["[empty-state]"], true, never>;
|
|
631
630
|
}
|
|
632
631
|
|
|
633
|
-
declare class SiTimelineWidgetBodyComponent extends
|
|
632
|
+
declare class SiTimelineWidgetBodyComponent extends SiWidgetBaseDirective<SiTimelineWidgetItem[]> {
|
|
634
633
|
/**
|
|
635
634
|
* Number of skeleton progress indication items.
|
|
636
635
|
*
|
|
@@ -652,7 +651,7 @@ declare class SiTimelineWidgetBodyComponent extends SiWidgetBaseComponent<SiTime
|
|
|
652
651
|
/**
|
|
653
652
|
* The body of the `<si-value-widget>`. Useful for compositions.
|
|
654
653
|
*/
|
|
655
|
-
declare class SiValueWidgetBodyComponent extends
|
|
654
|
+
declare class SiValueWidgetBodyComponent extends SiWidgetBaseDirective<TranslatableString> implements OnInit {
|
|
656
655
|
/**
|
|
657
656
|
* The unit of the value (e.g. kWh or users). Only visible if `value` is available.
|
|
658
657
|
*/
|
|
@@ -2,7 +2,7 @@ import * as _siemens_element_translate_ng_translate from '@siemens/element-trans
|
|
|
2
2
|
import { TranslatableString } from '@siemens/element-translate-ng/translate';
|
|
3
3
|
import * as _angular_core from '@angular/core';
|
|
4
4
|
import { OnChanges, SimpleChanges } from '@angular/core';
|
|
5
|
-
import {
|
|
5
|
+
import { HttpHeaders, HttpRequest, HttpEvent, HttpResponse } from '@angular/common/http';
|
|
6
6
|
import { Observable, Subscription } from 'rxjs';
|
|
7
7
|
|
|
8
8
|
/**
|
|
@@ -486,7 +486,7 @@ declare class SiFileUploaderComponent implements OnChanges {
|
|
|
486
486
|
protected readonly icons: Record<"elementCancel" | "elementDelete" | "elementDocument" | "elementRedo", string>;
|
|
487
487
|
protected files: ExtUploadFile[];
|
|
488
488
|
protected pending: number;
|
|
489
|
-
|
|
489
|
+
private uploading;
|
|
490
490
|
protected uploadEnabled: boolean;
|
|
491
491
|
protected maxFilesReached: boolean;
|
|
492
492
|
private readonly dropZone;
|
|
@@ -371,11 +371,11 @@ declare class SiFilteredSearchComponent implements OnInit, OnChanges {
|
|
|
371
371
|
private readonly valueComponents;
|
|
372
372
|
protected dataSource: Observable<InternalCriterionDefinition[]>;
|
|
373
373
|
protected autoEditCriteria: boolean;
|
|
374
|
-
protected values: {
|
|
374
|
+
protected readonly values: _angular_core.WritableSignal<{
|
|
375
375
|
config: InternalCriterionDefinition;
|
|
376
376
|
value: CriterionValue;
|
|
377
|
-
}[]
|
|
378
|
-
protected searchValue: string
|
|
377
|
+
}[]>;
|
|
378
|
+
protected readonly searchValue: _angular_core.WritableSignal<string>;
|
|
379
379
|
/** Internal criteria model */
|
|
380
380
|
protected internalCriterionDefinitions: InternalCriterionDefinition[];
|
|
381
381
|
protected readonly icons: Record<"elementCancel" | "elementSearch", string>;
|
|
@@ -387,11 +387,6 @@ declare class SiFilteredSearchComponent implements OnInit, OnChanges {
|
|
|
387
387
|
private readonly cdRef;
|
|
388
388
|
private readonly translateService;
|
|
389
389
|
private readonly locale;
|
|
390
|
-
/**
|
|
391
|
-
* The cache is used to control when the interceptDisplayedCriteria event needs to be called.
|
|
392
|
-
* Every time a criteria gain the focus we have to reset the cache to call the interceptor.
|
|
393
|
-
*/
|
|
394
|
-
private allowedCriteriaCache?;
|
|
395
390
|
protected readonly allowFreeTextCache: _angular_core.WritableSignal<boolean>;
|
|
396
391
|
private lastEmittedSearchCriteria?;
|
|
397
392
|
protected readonly isStrictOrOnlySelectValue: _angular_core.Signal<boolean>;
|
|
@@ -428,7 +423,6 @@ declare class SiFilteredSearchComponent implements OnInit, OnChanges {
|
|
|
428
423
|
private addCriterion;
|
|
429
424
|
/**
|
|
430
425
|
* Get criteria list to be shown in typeahead.
|
|
431
|
-
* @param token - input field value.
|
|
432
426
|
* @returns list of criteria to be shown in typeahead.
|
|
433
427
|
*/
|
|
434
428
|
private getFilteredTypeaheadCriteria;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { DoCheck,
|
|
2
|
+
import { DoCheck, InjectionToken, Signal, AfterContentInit, AfterContentChecked, OnChanges, OnInit, OnDestroy, ElementRef, SimpleChanges, ModuleWithProviders, Provider } from '@angular/core';
|
|
3
3
|
import * as _angular_forms from '@angular/forms';
|
|
4
4
|
import { AbstractControl, FormGroup, NgControl, RequiredValidator } from '@angular/forms';
|
|
5
5
|
import { Breakpoints } from '@siemens/element-ng/resize-observer';
|
|
@@ -212,10 +212,12 @@ declare class SiLoginBasicComponent implements OnInit {
|
|
|
212
212
|
readonly passwordLabel: _angular_core.InputSignal<_siemens_element_translate_ng_translate.TranslatableString>;
|
|
213
213
|
/**
|
|
214
214
|
* Config for Forgot Password link.
|
|
215
|
+
* If `title` is omitted, a default translated label is used.
|
|
215
216
|
*/
|
|
216
217
|
readonly forgotPasswordLink: _angular_core.InputSignal<Link | undefined>;
|
|
217
218
|
/**
|
|
218
219
|
* Config for Register Now link.
|
|
220
|
+
* If `title` is omitted, a default translated label is used.
|
|
219
221
|
*/
|
|
220
222
|
readonly registerNowLink: _angular_core.InputSignal<Link | undefined>;
|
|
221
223
|
/**
|
|
@@ -278,6 +280,10 @@ declare class SiLoginBasicComponent implements OnInit {
|
|
|
278
280
|
private destroyRef;
|
|
279
281
|
protected readonly secondStepVisible: _angular_core.WritableSignal<boolean>;
|
|
280
282
|
protected readonly loadingNext: _angular_core.WritableSignal<boolean>;
|
|
283
|
+
private readonly defaultForgotPasswordTitle;
|
|
284
|
+
private readonly defaultRegisterNowTitle;
|
|
285
|
+
protected readonly effectiveForgotPasswordLink: _angular_core.Signal<Link>;
|
|
286
|
+
protected readonly effectiveRegisterNowLink: _angular_core.Signal<Link>;
|
|
281
287
|
private readonly index;
|
|
282
288
|
protected usernameId: string;
|
|
283
289
|
protected passwordId: string;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { OnDestroy, Signal, ElementRef, TemplateRef } from '@angular/core';
|
|
3
3
|
import { FocusableOption, FocusKeyManager } from '@angular/cdk/a11y';
|
|
4
|
+
import { DomPortal } from '@angular/cdk/portal';
|
|
4
5
|
import * as _siemens_element_ng_tabs from '@siemens/element-ng/tabs';
|
|
5
6
|
import { TranslatableString } from '@siemens/element-translate-ng/translate';
|
|
6
7
|
import * as i1 from '@angular/router';
|
|
@@ -101,7 +102,20 @@ declare class SiTabLinkComponent extends SiTabBaseDirective {
|
|
|
101
102
|
* Can either be used with {@link SiTabLinkComponent} or {@link SiTabComponent} components.
|
|
102
103
|
*/
|
|
103
104
|
declare class SiTabsetComponent {
|
|
105
|
+
/**
|
|
106
|
+
* When set, the overflowing content inside the tab will automatically scroll
|
|
107
|
+
* @defaultValue false
|
|
108
|
+
**/
|
|
109
|
+
readonly contentOverflowAuto: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
104
110
|
protected readonly icons: Record<"elementOptions", string>;
|
|
111
|
+
private readonly contentNode;
|
|
112
|
+
/**
|
|
113
|
+
* A `DomPortal` wrapping the tab panel container. Used by {@link SiTabPortalComponent}
|
|
114
|
+
* to render the active tab's content at a remote location in the DOM.
|
|
115
|
+
*
|
|
116
|
+
* @internal
|
|
117
|
+
*/
|
|
118
|
+
readonly contentPortal: _angular_core.Signal<DomPortal<unknown>>;
|
|
105
119
|
/** @internal */
|
|
106
120
|
readonly activeTab: _angular_core.Signal<SiTabBaseDirective | undefined>;
|
|
107
121
|
/** @internal */
|
|
@@ -117,7 +131,7 @@ declare class SiTabsetComponent {
|
|
|
117
131
|
protected resizeContainer(width: number, scrollWidth: number): void;
|
|
118
132
|
protected keydown(event: KeyboardEvent): void;
|
|
119
133
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SiTabsetComponent, never>;
|
|
120
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiTabsetComponent, "si-tabset", never, {}, {}, ["tabPanels"], ["*", "router-outlet"], true, never>;
|
|
134
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiTabsetComponent, "si-tabset", never, { "contentOverflowAuto": { "alias": "contentOverflowAuto"; "required": false; "isSignal": true; }; }, {}, ["tabPanels"], ["*", "router-outlet"], true, never>;
|
|
121
135
|
}
|
|
122
136
|
|
|
123
137
|
/**
|
|
@@ -158,4 +172,39 @@ declare class SiTabComponent extends SiTabBaseDirective implements OnDestroy {
|
|
|
158
172
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiTabComponent, "si-tab", never, { "active": { "alias": "active"; "required": false; "isSignal": true; }; "canActivate": { "alias": "canActivate"; "required": false; "isSignal": true; }; "canDeactivate": { "alias": "canDeactivate"; "required": false; "isSignal": true; }; }, { "active": "activeChange"; }, never, ["*"], true, never>;
|
|
159
173
|
}
|
|
160
174
|
|
|
161
|
-
|
|
175
|
+
/**
|
|
176
|
+
* A component that renders the active tab's content at a remote
|
|
177
|
+
* location in the DOM using an Angular CDK `DomPortal`.
|
|
178
|
+
*
|
|
179
|
+
* This component **automatically** renders the content of the currently
|
|
180
|
+
* active `si-tab`, including the `role="tabpanel"` container with proper
|
|
181
|
+
* ARIA attributes linked to the active tab.
|
|
182
|
+
*
|
|
183
|
+
* @example
|
|
184
|
+
* ```html
|
|
185
|
+
* <si-tabset #tabset>
|
|
186
|
+
* <si-tab heading="Overview" [active]="true">
|
|
187
|
+
* overview content
|
|
188
|
+
* </si-tab>
|
|
189
|
+
* <si-tab heading="History">
|
|
190
|
+
* history content
|
|
191
|
+
* </si-tab>
|
|
192
|
+
* </si-tabset>
|
|
193
|
+
*
|
|
194
|
+
* <si-tab-portal [tabset]="tabset" />
|
|
195
|
+
* ```
|
|
196
|
+
*/
|
|
197
|
+
declare class SiTabPortalComponent {
|
|
198
|
+
/**
|
|
199
|
+
* Reference to the {@link SiTabsetComponent} whose active tab content
|
|
200
|
+
* this component renders via a `DomPortal`.
|
|
201
|
+
*
|
|
202
|
+
* The tabset's tab panel container, including the `role="tabpanel"` element
|
|
203
|
+
* with proper ARIA attributes, is transported to this component's location.
|
|
204
|
+
*/
|
|
205
|
+
readonly tabset: _angular_core.InputSignal<SiTabsetComponent>;
|
|
206
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SiTabPortalComponent, never>;
|
|
207
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SiTabPortalComponent, "si-tab-portal", never, { "tabset": { "alias": "tabset"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
export { SiTabComponent, SiTabLinkComponent, SiTabPortalComponent, SiTabsetComponent };
|
|
@@ -164,9 +164,11 @@ interface SiTranslatableKeys {
|
|
|
164
164
|
'SI_LIST_WIDGET.SORT_DESCENDING'?: string;
|
|
165
165
|
'SI_LOADING_SPINNER.LABEL'?: string;
|
|
166
166
|
'SI_LOGIN_BASIC.BACK'?: string;
|
|
167
|
+
'SI_LOGIN_BASIC.FORGOT_PASSWORD'?: string;
|
|
167
168
|
'SI_LOGIN_BASIC.LOGIN'?: string;
|
|
168
169
|
'SI_LOGIN_BASIC.NEXT'?: string;
|
|
169
170
|
'SI_LOGIN_BASIC.PASSWORD'?: string;
|
|
171
|
+
'SI_LOGIN_BASIC.REGISTER_NOW'?: string;
|
|
170
172
|
'SI_LOGIN_BASIC.USERNAME'?: string;
|
|
171
173
|
'SI_LOGIN_SINGLE-SIGN-ON.LOGIN_SIGN_UP'?: string;
|
|
172
174
|
'SI_MAIN_DETAIL_CONTAINER.BACK'?: string;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { OnChanges, OnDestroy, TemplateRef, SimpleChanges } from '@angular/core';
|
|
3
|
-
import { ConnectionPositionPair } from '@angular/cdk/overlay';
|
|
3
|
+
import { ConnectionPositionPair, ScrollStrategy } from '@angular/cdk/overlay';
|
|
4
4
|
import { TranslatableString } from '@siemens/element-translate-ng/translate';
|
|
5
5
|
import { Observable } from 'rxjs';
|
|
6
6
|
import * as i1 from '@siemens/element-ng/autocomplete';
|
|
@@ -37,10 +37,22 @@ type TypeaheadArray = TypeaheadOption[];
|
|
|
37
37
|
* An observable of a {@link TypeaheadArray} (array of {@link TypeaheadOption}).
|
|
38
38
|
*/
|
|
39
39
|
type TypeaheadObservable = Observable<TypeaheadArray>;
|
|
40
|
+
/**
|
|
41
|
+
* Defines a source of options for the {@link SiTypeaheadDirective}.
|
|
42
|
+
* Use it for server-side pre-filtering.
|
|
43
|
+
*
|
|
44
|
+
* This function will be called, whenever the search value is updated by the user.
|
|
45
|
+
*
|
|
46
|
+
* A loading indicator is shown when this function was called
|
|
47
|
+
* until the Observable completes.
|
|
48
|
+
*
|
|
49
|
+
* @experimental
|
|
50
|
+
*/
|
|
51
|
+
type TypeaheadOptionSource = (search: string) => Observable<TypeaheadArray>;
|
|
40
52
|
/**
|
|
41
53
|
* Either a {@link TypeaheadObservable} (observable of a {@link TypeaheadArray}) or a {@link TypeaheadArray}.
|
|
42
54
|
*/
|
|
43
|
-
type Typeahead = TypeaheadArray | TypeaheadObservable;
|
|
55
|
+
type Typeahead = TypeaheadArray | TypeaheadObservable | TypeaheadOptionSource;
|
|
44
56
|
/**
|
|
45
57
|
* A segment of a {@link TypeaheadMatch}, which is a matching or non-matching segment of a typeahead option.
|
|
46
58
|
*/
|
|
@@ -207,6 +219,11 @@ declare class SiTypeaheadDirective implements OnChanges, OnDestroy {
|
|
|
207
219
|
* @defaultValue false
|
|
208
220
|
*/
|
|
209
221
|
readonly typeaheadFullWidth: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
222
|
+
/**
|
|
223
|
+
* Optional CDK scroll strategy used for the typeahead overlay.
|
|
224
|
+
* If not provided, no strategy is set explicitly and CDK will apply its default behavior.
|
|
225
|
+
*/
|
|
226
|
+
readonly typeaheadScrollStrategy: _angular_core.InputSignal<ScrollStrategy | undefined>;
|
|
210
227
|
/**
|
|
211
228
|
* This option will be shown at the end of the typeahead.
|
|
212
229
|
* Use it to allow users to create new options on the fly.
|
|
@@ -294,6 +311,16 @@ declare class SiTypeaheadDirective implements OnChanges, OnDestroy {
|
|
|
294
311
|
private sourceSubscription?;
|
|
295
312
|
private matchSorter;
|
|
296
313
|
private overlayRef?;
|
|
314
|
+
private loadingSubscription?;
|
|
315
|
+
/**
|
|
316
|
+
* Indicates whether the typeahead is currently loading.
|
|
317
|
+
* When using {@link TypeaheadOptionSource}, this is controlled by the `isLoading()` method
|
|
318
|
+
* or automatically set to `true` while fetching options.
|
|
319
|
+
*
|
|
320
|
+
* @internal
|
|
321
|
+
* @defaultValue false
|
|
322
|
+
*/
|
|
323
|
+
readonly typeaheadLoading: _angular_core.WritableSignal<boolean>;
|
|
297
324
|
/**
|
|
298
325
|
* Indicates that the typeahead can be potentially open.
|
|
299
326
|
* This signal is typically `true` when the input is focussed.
|
|
@@ -312,6 +339,11 @@ declare class SiTypeaheadDirective implements OnChanges, OnDestroy {
|
|
|
312
339
|
protected onInput(event: Event): void;
|
|
313
340
|
protected onKeydownEscape(): void;
|
|
314
341
|
ngOnDestroy(): void;
|
|
342
|
+
/**
|
|
343
|
+
* Handles TypeaheadOptionSource by subscribing to query changes and fetching options.
|
|
344
|
+
* Manages loading state automatically or uses custom isLoading() observable if provided.
|
|
345
|
+
*/
|
|
346
|
+
private handleTypeaheadOptionSource;
|
|
315
347
|
private loadComponent;
|
|
316
348
|
/**
|
|
317
349
|
* Extracts the display value from a typeahead option.
|
|
@@ -344,7 +376,7 @@ declare class SiTypeaheadDirective implements OnChanges, OnDestroy {
|
|
|
344
376
|
private clearTimer;
|
|
345
377
|
private escapeRegex;
|
|
346
378
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SiTypeaheadDirective, never>;
|
|
347
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SiTypeaheadDirective, "[siTypeahead]", ["si-typeahead"], { "siTypeahead": { "alias": "siTypeahead"; "required": true; "isSignal": true; }; "typeaheadProcess": { "alias": "typeaheadProcess"; "required": false; "isSignal": true; }; "typeaheadScrollable": { "alias": "typeaheadScrollable"; "required": false; "isSignal": true; }; "typeaheadOptionsInScrollableView": { "alias": "typeaheadOptionsInScrollableView"; "required": false; "isSignal": true; }; "typeaheadOptionsLimit": { "alias": "typeaheadOptionsLimit"; "required": false; "isSignal": true; }; "typeaheadScrollableAdditionalHeight": { "alias": "typeaheadScrollableAdditionalHeight"; "required": false; "isSignal": true; }; "typeaheadAutoSelectIndex": { "alias": "typeaheadAutoSelectIndex"; "required": false; "isSignal": true; }; "typeaheadCloseOnEsc": { "alias": "typeaheadCloseOnEsc"; "required": false; "isSignal": true; }; "typeaheadClearValueOnSelect": { "alias": "typeaheadClearValueOnSelect"; "required": false; "isSignal": true; }; "typeaheadWaitMs": { "alias": "typeaheadWaitMs"; "required": false; "isSignal": true; }; "typeaheadMinLength": { "alias": "typeaheadMinLength"; "required": false; "isSignal": true; }; "typeaheadOptionField": { "alias": "typeaheadOptionField"; "required": false; "isSignal": true; }; "typeaheadMultiSelect": { "alias": "typeaheadMultiSelect"; "required": false; "isSignal": true; }; "typeaheadTokenize": { "alias": "typeaheadTokenize"; "required": false; "isSignal": true; }; "typeaheadMatchAllTokens": { "alias": "typeaheadMatchAllTokens"; "required": false; "isSignal": true; }; "typeaheadItemTemplate": { "alias": "typeaheadItemTemplate"; "required": false; "isSignal": true; }; "typeaheadSkipSortingMatches": { "alias": "typeaheadSkipSortingMatches"; "required": false; "isSignal": true; }; "typeaheadAutocompleteListLabel": { "alias": "typeaheadAutocompleteListLabel"; "required": false; "isSignal": true; }; "typeaheadFullWidth": { "alias": "typeaheadFullWidth"; "required": false; "isSignal": true; }; "typeaheadCreateOption": { "alias": "typeaheadCreateOption"; "required": false; "isSignal": true; }; }, { "typeaheadOnInput": "typeaheadOnInput"; "typeaheadOnSelect": "typeaheadOnSelect"; "typeaheadOnFullMatch": "typeaheadOnFullMatch"; "typeaheadOpenChange": "typeaheadOpenChange"; "typeaheadOnCreateOption": "typeaheadOnCreateOption"; }, never, never, true, [{ directive: typeof i1.SiAutocompleteDirective; inputs: {}; outputs: {}; }]>;
|
|
379
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SiTypeaheadDirective, "[siTypeahead]", ["si-typeahead"], { "siTypeahead": { "alias": "siTypeahead"; "required": true; "isSignal": true; }; "typeaheadProcess": { "alias": "typeaheadProcess"; "required": false; "isSignal": true; }; "typeaheadScrollable": { "alias": "typeaheadScrollable"; "required": false; "isSignal": true; }; "typeaheadOptionsInScrollableView": { "alias": "typeaheadOptionsInScrollableView"; "required": false; "isSignal": true; }; "typeaheadOptionsLimit": { "alias": "typeaheadOptionsLimit"; "required": false; "isSignal": true; }; "typeaheadScrollableAdditionalHeight": { "alias": "typeaheadScrollableAdditionalHeight"; "required": false; "isSignal": true; }; "typeaheadAutoSelectIndex": { "alias": "typeaheadAutoSelectIndex"; "required": false; "isSignal": true; }; "typeaheadCloseOnEsc": { "alias": "typeaheadCloseOnEsc"; "required": false; "isSignal": true; }; "typeaheadClearValueOnSelect": { "alias": "typeaheadClearValueOnSelect"; "required": false; "isSignal": true; }; "typeaheadWaitMs": { "alias": "typeaheadWaitMs"; "required": false; "isSignal": true; }; "typeaheadMinLength": { "alias": "typeaheadMinLength"; "required": false; "isSignal": true; }; "typeaheadOptionField": { "alias": "typeaheadOptionField"; "required": false; "isSignal": true; }; "typeaheadMultiSelect": { "alias": "typeaheadMultiSelect"; "required": false; "isSignal": true; }; "typeaheadTokenize": { "alias": "typeaheadTokenize"; "required": false; "isSignal": true; }; "typeaheadMatchAllTokens": { "alias": "typeaheadMatchAllTokens"; "required": false; "isSignal": true; }; "typeaheadItemTemplate": { "alias": "typeaheadItemTemplate"; "required": false; "isSignal": true; }; "typeaheadSkipSortingMatches": { "alias": "typeaheadSkipSortingMatches"; "required": false; "isSignal": true; }; "typeaheadAutocompleteListLabel": { "alias": "typeaheadAutocompleteListLabel"; "required": false; "isSignal": true; }; "typeaheadFullWidth": { "alias": "typeaheadFullWidth"; "required": false; "isSignal": true; }; "typeaheadScrollStrategy": { "alias": "typeaheadScrollStrategy"; "required": false; "isSignal": true; }; "typeaheadCreateOption": { "alias": "typeaheadCreateOption"; "required": false; "isSignal": true; }; }, { "typeaheadOnInput": "typeaheadOnInput"; "typeaheadOnSelect": "typeaheadOnSelect"; "typeaheadOnFullMatch": "typeaheadOnFullMatch"; "typeaheadOpenChange": "typeaheadOpenChange"; "typeaheadOnCreateOption": "typeaheadOnCreateOption"; }, never, never, true, [{ directive: typeof i1.SiAutocompleteDirective; inputs: {}; outputs: {}; }]>;
|
|
348
380
|
}
|
|
349
381
|
|
|
350
382
|
declare class SiTypeaheadItemTemplateDirective {
|
|
@@ -360,4 +392,4 @@ declare class SiTypeaheadModule {
|
|
|
360
392
|
}
|
|
361
393
|
|
|
362
394
|
export { SiTypeaheadDirective, SiTypeaheadItemTemplateDirective, SiTypeaheadModule };
|
|
363
|
-
export type { MatchSegment, Typeahead, TypeaheadArray, TypeaheadMatch, TypeaheadObservable, TypeaheadOption, TypeaheadOptionItemContext };
|
|
395
|
+
export type { MatchSegment, Typeahead, TypeaheadArray, TypeaheadMatch, TypeaheadObservable, TypeaheadOption, TypeaheadOptionItemContext, TypeaheadOptionSource };
|