@siemens/element-ng 49.14.0 → 49.16.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-about.mjs +2 -2
- package/fesm2022/siemens-element-ng-about.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-accordion.mjs +12 -3
- package/fesm2022/siemens-element-ng-accordion.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-action-modal.mjs +64 -11
- package/fesm2022/siemens-element-ng-action-modal.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-ag-grid.mjs +7 -0
- package/fesm2022/siemens-element-ng-ag-grid.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-application-header.mjs +76 -32
- package/fesm2022/siemens-element-ng-application-header.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs +14 -8
- package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-autocomplete.mjs +17 -3
- package/fesm2022/siemens-element-ng-autocomplete.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-breadcrumb.mjs +2 -2
- package/fesm2022/siemens-element-ng-breadcrumb.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-card.mjs +21 -4
- package/fesm2022/siemens-element-ng-card.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-color-picker.mjs +11 -5
- package/fesm2022/siemens-element-ng-color-picker.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-column-selection-dialog.mjs +29 -2
- package/fesm2022/siemens-element-ng-column-selection-dialog.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-common.mjs +20 -2
- package/fesm2022/siemens-element-ng-common.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-content-action-bar.mjs +1 -0
- package/fesm2022/siemens-element-ng-content-action-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-dashboard.mjs +20 -2
- package/fesm2022/siemens-element-ng-dashboard.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-date-range-filter.mjs +36 -12
- package/fesm2022/siemens-element-ng-date-range-filter.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-datepicker.mjs +89 -24
- package/fesm2022/siemens-element-ng-datepicker.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-empty-state.mjs +2 -2
- package/fesm2022/siemens-element-ng-filter-bar.mjs +11 -4
- package/fesm2022/siemens-element-ng-filter-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-filtered-search.mjs +95 -38
- package/fesm2022/siemens-element-ng-filtered-search.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-form.mjs +2 -0
- package/fesm2022/siemens-element-ng-form.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-formly.mjs +10 -7
- package/fesm2022/siemens-element-ng-formly.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-header-dropdown.mjs +5 -3
- package/fesm2022/siemens-element-ng-header-dropdown.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-icon.mjs +1 -0
- package/fesm2022/siemens-element-ng-icon.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-ip-input.mjs +7 -11
- package/fesm2022/siemens-element-ng-ip-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-link.mjs +10 -1
- package/fesm2022/siemens-element-ng-link.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-menu.mjs +30 -4
- package/fesm2022/siemens-element-ng-menu.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs +3 -0
- package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar-vertical.mjs +11 -0
- package/fesm2022/siemens-element-ng-navbar-vertical.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar.mjs +1 -0
- package/fesm2022/siemens-element-ng-navbar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-number-input.mjs +11 -2
- package/fesm2022/siemens-element-ng-number-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-phone-number.mjs +14 -14
- package/fesm2022/siemens-element-ng-phone-number.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-pills-input.mjs +14 -19
- package/fesm2022/siemens-element-ng-pills-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-popover-legacy.mjs +13 -2
- package/fesm2022/siemens-element-ng-popover-legacy.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-popover.mjs +35 -26
- package/fesm2022/siemens-element-ng-popover.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-resize-observer.mjs +21 -3
- package/fesm2022/siemens-element-ng-resize-observer.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-result-details-list.mjs +2 -2
- package/fesm2022/siemens-element-ng-result-details-list.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-search-bar.mjs +14 -8
- package/fesm2022/siemens-element-ng-search-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-select.mjs +80 -8
- package/fesm2022/siemens-element-ng-select.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-shadow-root.mjs +31 -4
- package/fesm2022/siemens-element-ng-shadow-root.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-skip-links.mjs +5 -1
- package/fesm2022/siemens-element-ng-skip-links.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-split.mjs +10 -8
- package/fesm2022/siemens-element-ng-split.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-status-bar.mjs +30 -3
- package/fesm2022/siemens-element-ng-status-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tabs.mjs +8 -2
- package/fesm2022/siemens-element-ng-tabs.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-threshold.mjs +12 -3
- package/fesm2022/siemens-element-ng-threshold.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-toast-notification.mjs +6 -2
- package/fesm2022/siemens-element-ng-toast-notification.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tooltip.mjs +9 -4
- package/fesm2022/siemens-element-ng-tooltip.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tree-view.mjs +5 -1
- package/fesm2022/siemens-element-ng-tree-view.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-typeahead.mjs +15 -27
- package/fesm2022/siemens-element-ng-typeahead.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-wizard.mjs +45 -5
- package/fesm2022/siemens-element-ng-wizard.mjs.map +1 -1
- package/package.json +3 -3
- package/template-i18n.json +1 -1
- package/types/siemens-element-ng-accordion.d.ts +12 -3
- package/types/siemens-element-ng-application-header.d.ts +10 -9
- package/types/siemens-element-ng-auto-collapsable-list.d.ts +6 -1
- package/types/siemens-element-ng-autocomplete.d.ts +17 -3
- package/types/siemens-element-ng-card.d.ts +21 -4
- package/types/siemens-element-ng-color-picker.d.ts +8 -1
- package/types/siemens-element-ng-common.d.ts +12 -2
- package/types/siemens-element-ng-dashboard.d.ts +5 -0
- package/types/siemens-element-ng-date-range-filter.d.ts +13 -1
- package/types/siemens-element-ng-datepicker.d.ts +62 -9
- package/types/siemens-element-ng-filter-bar.d.ts +11 -4
- package/types/siemens-element-ng-filtered-search.d.ts +8 -1
- package/types/siemens-element-ng-form.d.ts +2 -0
- package/types/siemens-element-ng-formly.d.ts +3 -1
- package/types/siemens-element-ng-header-dropdown.d.ts +5 -3
- package/types/siemens-element-ng-icon.d.ts +1 -0
- package/types/siemens-element-ng-ip-input.d.ts +1 -1
- package/types/siemens-element-ng-link.d.ts +10 -1
- package/types/siemens-element-ng-menu.d.ts +17 -2
- package/types/siemens-element-ng-navbar-vertical-next.d.ts +2 -0
- package/types/siemens-element-ng-navbar.d.ts +1 -0
- package/types/siemens-element-ng-number-input.d.ts +11 -2
- package/types/siemens-element-ng-phone-number.d.ts +1 -2
- package/types/siemens-element-ng-popover.d.ts +8 -5
- package/types/siemens-element-ng-resize-observer.d.ts +21 -3
- package/types/siemens-element-ng-search-bar.d.ts +10 -2
- package/types/siemens-element-ng-select.d.ts +34 -2
- package/types/siemens-element-ng-shadow-root.d.ts +1 -0
- package/types/siemens-element-ng-split.d.ts +11 -8
- package/types/siemens-element-ng-status-bar.d.ts +30 -3
- package/types/siemens-element-ng-threshold.d.ts +8 -1
- package/types/siemens-element-ng-toast-notification.d.ts +3 -1
- package/types/siemens-element-ng-tooltip.d.ts +6 -4
- package/types/siemens-element-ng-tree-view.d.ts +5 -1
- package/types/siemens-element-ng-typeahead.d.ts +6 -4
- package/types/siemens-element-ng-wizard.d.ts +13 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { getLocaleDayPeriods, FormStyle, TranslationWidth, getLocaleId, getLocaleDateTimeFormat, FormatWidth, getLocaleTimeFormat, getLocaleDateFormat, formatDate, DatePipe, NgTemplateOutlet, getLocaleFirstDayOfWeek, WeekDay } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import { input, model, output, booleanAttribute, computed, signal, inject, LOCALE_ID,
|
|
3
|
+
import { input, model, output, booleanAttribute, computed, signal, inject, LOCALE_ID, Directive, ElementRef, viewChildren, ChangeDetectionStrategy, Component, viewChild, HostListener, HostAttributeToken, effect, ChangeDetectorRef, SimpleChange, DOCUMENT, DestroyRef, contentChild, NgModule } from '@angular/core';
|
|
4
4
|
import * as i2 from '@angular/forms';
|
|
5
5
|
import { Validators, NG_VALUE_ACCESSOR, NG_VALIDATORS, FormBuilder, ReactiveFormsModule, FormControl, FormsModule, NgControl } from '@angular/forms';
|
|
6
6
|
import { SI_FORM_ITEM_CONTROL } from '@siemens/element-ng/form';
|
|
@@ -8,7 +8,7 @@ import { MediaMatcher, BreakpointObserver } from '@angular/cdk/layout';
|
|
|
8
8
|
import { Overlay } from '@angular/cdk/overlay';
|
|
9
9
|
import { ComponentPortal } from '@angular/cdk/portal';
|
|
10
10
|
import { takeUntilDestroyed, outputToObservable } from '@angular/core/rxjs-interop';
|
|
11
|
-
import { isRTL, positionBottomCenter, positionBottomStart, positionBottomEnd, positionTopCenter, positionTopStart, positionTopEnd } from '@siemens/element-ng/common';
|
|
11
|
+
import { isRTL, defaultConnectedOverlayScrollStrategy, positionBottomCenter, positionBottomStart, positionBottomEnd, positionTopCenter, positionTopStart, positionTopEnd } from '@siemens/element-ng/common';
|
|
12
12
|
import { BOOTSTRAP_BREAKPOINTS } from '@siemens/element-ng/resize-observer';
|
|
13
13
|
import { Subject, merge, asapScheduler, filter as filter$1 } from 'rxjs';
|
|
14
14
|
import { takeUntil, skip, observeOn, map, filter, tap } from 'rxjs/operators';
|
|
@@ -882,6 +882,10 @@ class SiDateInputDirective {
|
|
|
882
882
|
onInput(event) {
|
|
883
883
|
const value = event.target.value;
|
|
884
884
|
const parsedDate = parseDate(value, this.getFormat(), this.locale);
|
|
885
|
+
// Keep dateString in sync with the raw DOM value so that a subsequent
|
|
886
|
+
// writeValue() with the same formatted string still triggers the host
|
|
887
|
+
// [value] binding and overwrites any manually entered text.
|
|
888
|
+
this.dateString.set(value);
|
|
885
889
|
// Is same date
|
|
886
890
|
const hasChanged = !(parsedDate === this.date);
|
|
887
891
|
if (hasChanged) {
|
|
@@ -1009,24 +1013,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
1009
1013
|
'[attr.readonly]': 'readonly() || null',
|
|
1010
1014
|
'[class.readonly]': 'readonly()',
|
|
1011
1015
|
'[attr.aria-describedby]': 'errormessageId()',
|
|
1012
|
-
'[value]': 'dateString()'
|
|
1016
|
+
'[value]': 'dateString()',
|
|
1017
|
+
'(input)': 'onInput($event)',
|
|
1018
|
+
'(blur)': 'onBlur($event)'
|
|
1013
1019
|
},
|
|
1014
1020
|
exportAs: 'siDateInput'
|
|
1015
1021
|
}]
|
|
1016
|
-
}], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], siDatepickerConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "siDatepickerConfig", required: false }] }, { type: i0.Output, args: ["siDatepickerConfigChange"] }], siDatepickerDisabledTime: [{ type: i0.Output, args: ["siDatepickerDisabledTime"] }], stateChange: [{ type: i0.Output, args: ["stateChange"] }], disabledInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], errormessageId: [{ type: i0.Input, args: [{ isSignal: true, alias: "errormessageId", required: false }] }], dateChange: [{ type: i0.Output, args: ["dateChange"] }]
|
|
1017
|
-
type: HostListener,
|
|
1018
|
-
args: ['input', ['$event']]
|
|
1019
|
-
}], onBlur: [{
|
|
1020
|
-
type: HostListener,
|
|
1021
|
-
args: ['blur', ['$event']]
|
|
1022
|
-
}] } });
|
|
1022
|
+
}], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], siDatepickerConfig: [{ type: i0.Input, args: [{ isSignal: true, alias: "siDatepickerConfig", required: false }] }, { type: i0.Output, args: ["siDatepickerConfigChange"] }], siDatepickerDisabledTime: [{ type: i0.Output, args: ["siDatepickerDisabledTime"] }], stateChange: [{ type: i0.Output, args: ["stateChange"] }], disabledInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], readonly: [{ type: i0.Input, args: [{ isSignal: true, alias: "readonly", required: false }] }], errormessageId: [{ type: i0.Input, args: [{ isSignal: true, alias: "errormessageId", required: false }] }], dateChange: [{ type: i0.Output, args: ["dateChange"] }] } });
|
|
1023
1023
|
|
|
1024
1024
|
/**
|
|
1025
1025
|
* Copyright (c) Siemens 2016 - 2026
|
|
1026
1026
|
* SPDX-License-Identifier: MIT
|
|
1027
1027
|
*/
|
|
1028
1028
|
class SiCalendarDateCellDirective {
|
|
1029
|
+
/** Calendar cell data used to render its state and accessible label. */
|
|
1029
1030
|
cell = input.required(...(ngDevMode ? [{ debugName: "cell" }] : []));
|
|
1031
|
+
/** Date comparison strategy used by the containing calendar view. */
|
|
1030
1032
|
compareAdapter = input.required(...(ngDevMode ? [{ debugName: "compareAdapter" }] : []));
|
|
1031
1033
|
/** @defaultValue inject(ElementRef) */
|
|
1032
1034
|
ref = inject(ElementRef);
|
|
@@ -1305,13 +1307,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
1305
1307
|
* SPDX-License-Identifier: MIT
|
|
1306
1308
|
*/
|
|
1307
1309
|
class SiCalendarDirectionButtonComponent {
|
|
1310
|
+
/** Accessible label for the button. */
|
|
1308
1311
|
ariaLabel = input.required(...(ngDevMode ? [{ debugName: "ariaLabel" }] : []));
|
|
1309
|
-
/** @defaultValue false */
|
|
1310
|
-
disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
|
|
1311
|
-
direction = input(...(ngDevMode ? [undefined, { debugName: "direction" }] : []));
|
|
1312
1312
|
/**
|
|
1313
|
-
*
|
|
1313
|
+
* Whether the button is disabled.
|
|
1314
|
+
*
|
|
1315
|
+
* @defaultValue false
|
|
1314
1316
|
*/
|
|
1317
|
+
disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
|
|
1318
|
+
/** Direction in which the button navigates. */
|
|
1319
|
+
direction = input(...(ngDevMode ? [undefined, { debugName: "direction" }] : []));
|
|
1320
|
+
/** Emits when the button is clicked. */
|
|
1315
1321
|
clicked = output();
|
|
1316
1322
|
icon = computed(() => this.direction() === 'left' ? this.icons.elementLeft2 : this.icons.elementRight2, ...(ngDevMode ? [{ debugName: "icon" }] : []));
|
|
1317
1323
|
buttonClass = computed(() => this.direction() === 'left' ? 'previous-button' : 'next-button', ...(ngDevMode ? [{ debugName: "buttonClass" }] : []));
|
|
@@ -2016,18 +2022,26 @@ class SiTimepickerComponent {
|
|
|
2016
2022
|
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
2017
2023
|
disabledInput = input(false, { ...(ngDevMode ? { debugName: "disabledInput" } : {}), alias: 'disabled' });
|
|
2018
2024
|
/**
|
|
2025
|
+
* Visible label for the hours input.
|
|
2026
|
+
*
|
|
2019
2027
|
* @defaultValue 'hh'
|
|
2020
2028
|
*/
|
|
2021
2029
|
hoursLabel = input('hh', ...(ngDevMode ? [{ debugName: "hoursLabel" }] : []));
|
|
2022
2030
|
/**
|
|
2031
|
+
* Visible label for the minutes input.
|
|
2032
|
+
*
|
|
2023
2033
|
* @defaultValue 'mm'
|
|
2024
2034
|
*/
|
|
2025
2035
|
minutesLabel = input('mm', ...(ngDevMode ? [{ debugName: "minutesLabel" }] : []));
|
|
2026
2036
|
/**
|
|
2037
|
+
* Visible label for the seconds input.
|
|
2038
|
+
*
|
|
2027
2039
|
* @defaultValue 'ss'
|
|
2028
2040
|
*/
|
|
2029
2041
|
secondsLabel = input('ss', ...(ngDevMode ? [{ debugName: "secondsLabel" }] : []));
|
|
2030
2042
|
/**
|
|
2043
|
+
* Visible label for the milliseconds input.
|
|
2044
|
+
*
|
|
2031
2045
|
* @defaultValue 'ms'
|
|
2032
2046
|
*/
|
|
2033
2047
|
millisecondsLabel = input('ms', ...(ngDevMode ? [{ debugName: "millisecondsLabel" }] : []));
|
|
@@ -2065,23 +2079,34 @@ class SiTimepickerComponent {
|
|
|
2065
2079
|
*/
|
|
2066
2080
|
millisecondsAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.MILLISECONDS:Milliseconds`), ...(ngDevMode ? [{ debugName: "millisecondsAriaLabel" }] : []));
|
|
2067
2081
|
/**
|
|
2082
|
+
* Placeholder for the hours input.
|
|
2083
|
+
*
|
|
2068
2084
|
* @defaultValue 'hh'
|
|
2069
2085
|
*/
|
|
2070
2086
|
hoursPlaceholder = input('hh', ...(ngDevMode ? [{ debugName: "hoursPlaceholder" }] : []));
|
|
2071
2087
|
/**
|
|
2088
|
+
* Placeholder for the minutes input.
|
|
2089
|
+
*
|
|
2072
2090
|
* @defaultValue 'mm'
|
|
2073
2091
|
*/
|
|
2074
2092
|
minutesPlaceholder = input('mm', ...(ngDevMode ? [{ debugName: "minutesPlaceholder" }] : []));
|
|
2075
2093
|
/**
|
|
2094
|
+
* Placeholder for the seconds input.
|
|
2095
|
+
*
|
|
2076
2096
|
* @defaultValue 'ss'
|
|
2077
2097
|
*/
|
|
2078
2098
|
secondsPlaceholder = input('ss', ...(ngDevMode ? [{ debugName: "secondsPlaceholder" }] : []));
|
|
2079
2099
|
/**
|
|
2100
|
+
* Placeholder for the milliseconds input.
|
|
2101
|
+
*
|
|
2080
2102
|
* @defaultValue 'ms'
|
|
2081
2103
|
*/
|
|
2082
2104
|
millisecondsPlaceholder = input('ms', ...(ngDevMode ? [{ debugName: "millisecondsPlaceholder" }] : []));
|
|
2105
|
+
/** Custom labels for the AM and PM options. */
|
|
2083
2106
|
meridians = input(...(ngDevMode ? [undefined, { debugName: "meridians" }] : []));
|
|
2084
2107
|
/**
|
|
2108
|
+
* Visible label for the AM/PM selector.
|
|
2109
|
+
*
|
|
2085
2110
|
* @defaultValue 'am/pm'
|
|
2086
2111
|
*/
|
|
2087
2112
|
meridiansLabel = input('am/pm', ...(ngDevMode ? [{ debugName: "meridiansLabel" }] : []));
|
|
@@ -2092,11 +2117,23 @@ class SiTimepickerComponent {
|
|
|
2092
2117
|
* ```
|
|
2093
2118
|
*/
|
|
2094
2119
|
meridiansAriaLabel = input(t(() => $localize `:@@SI_DATEPICKER.PERIOD:Period`), ...(ngDevMode ? [{ debugName: "meridiansAriaLabel" }] : []));
|
|
2095
|
-
/**
|
|
2120
|
+
/**
|
|
2121
|
+
* Whether the minutes input is displayed.
|
|
2122
|
+
*
|
|
2123
|
+
* @defaultValue true
|
|
2124
|
+
*/
|
|
2096
2125
|
showMinutes = input(true, { ...(ngDevMode ? { debugName: "showMinutes" } : {}), transform: booleanAttribute });
|
|
2097
|
-
/**
|
|
2126
|
+
/**
|
|
2127
|
+
* Whether the seconds input is displayed.
|
|
2128
|
+
*
|
|
2129
|
+
* @defaultValue false
|
|
2130
|
+
*/
|
|
2098
2131
|
showSeconds = input(false, { ...(ngDevMode ? { debugName: "showSeconds" } : {}), transform: booleanAttribute });
|
|
2099
|
-
/**
|
|
2132
|
+
/**
|
|
2133
|
+
* Whether the milliseconds input is displayed.
|
|
2134
|
+
*
|
|
2135
|
+
* @defaultValue false
|
|
2136
|
+
*/
|
|
2100
2137
|
showMilliseconds = input(false, { ...(ngDevMode ? { debugName: "showMilliseconds" } : {}), transform: booleanAttribute });
|
|
2101
2138
|
/**
|
|
2102
2139
|
* Show time in 12-hour period including the select to toggle between AM/PM.
|
|
@@ -2110,10 +2147,17 @@ class SiTimepickerComponent {
|
|
|
2110
2147
|
* A maximum time limit. The date part of the date object will be ignored.
|
|
2111
2148
|
*/
|
|
2112
2149
|
max = input(...(ngDevMode ? [undefined, { debugName: "max" }] : []));
|
|
2113
|
-
/**
|
|
2150
|
+
/**
|
|
2151
|
+
* Whether the time inputs are read-only.
|
|
2152
|
+
*
|
|
2153
|
+
* @defaultValue false
|
|
2154
|
+
*/
|
|
2114
2155
|
readonly = input(false, { ...(ngDevMode ? { debugName: "readonly" } : {}), transform: booleanAttribute });
|
|
2156
|
+
/** Emits whether the entered time components form a valid time. */
|
|
2115
2157
|
isValid = output();
|
|
2158
|
+
/** Emits the selected meridian when it changes. */
|
|
2116
2159
|
meridianChange = output();
|
|
2160
|
+
/** Emits when the user presses Enter in the final time input. */
|
|
2117
2161
|
inputCompleted = output();
|
|
2118
2162
|
inputParts = viewChildren('inputPart', ...(ngDevMode ? [{ debugName: "inputParts" }] : []));
|
|
2119
2163
|
/**
|
|
@@ -2617,7 +2661,11 @@ class SiDatepickerComponent {
|
|
|
2617
2661
|
* initialization and for bidirectional binding.
|
|
2618
2662
|
*/
|
|
2619
2663
|
dateRange = model(...(ngDevMode ? [undefined, { debugName: "dateRange" }] : []));
|
|
2620
|
-
/**
|
|
2664
|
+
/**
|
|
2665
|
+
* Role of this calendar when a date range is displayed across two calendars.
|
|
2666
|
+
*
|
|
2667
|
+
* @internal
|
|
2668
|
+
*/
|
|
2621
2669
|
dateRangeRole = input(...(ngDevMode ? [undefined, { debugName: "dateRangeRole" }] : []));
|
|
2622
2670
|
/**
|
|
2623
2671
|
* Set initial focus to calendar body.
|
|
@@ -2712,7 +2760,11 @@ class SiDatepickerComponent {
|
|
|
2712
2760
|
* @defaultValue false
|
|
2713
2761
|
*/
|
|
2714
2762
|
hideTimeToggle = input(false, ...(ngDevMode ? [{ debugName: "hideTimeToggle" }] : []));
|
|
2715
|
-
/**
|
|
2763
|
+
/**
|
|
2764
|
+
* Whether the calendar is hidden while retaining the optional timepicker.
|
|
2765
|
+
*
|
|
2766
|
+
* @internal
|
|
2767
|
+
*/
|
|
2716
2768
|
hideCalendar = input(false, ...(ngDevMode ? [{ debugName: "hideCalendar" }] : []));
|
|
2717
2769
|
/**
|
|
2718
2770
|
* Optional timepicker label.
|
|
@@ -3395,6 +3447,15 @@ class SiDatepickerOverlayDirective {
|
|
|
3395
3447
|
originY: 'top'
|
|
3396
3448
|
}
|
|
3397
3449
|
], ...(ngDevMode ? [{ debugName: "placement" }] : []));
|
|
3450
|
+
/**
|
|
3451
|
+
* Optional CDK scroll strategy used for the datepicker overlay.
|
|
3452
|
+
*
|
|
3453
|
+
* @defaultValue defaultConnectedOverlayScrollStrategy()
|
|
3454
|
+
*/
|
|
3455
|
+
scrollStrategy = input(defaultConnectedOverlayScrollStrategy(), { ...(ngDevMode ? { debugName: "scrollStrategy" } : {}),
|
|
3456
|
+
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
3457
|
+
alias: 'siDatepickerScrollStrategy' // to be aligned with the `siDatepickerClose` output
|
|
3458
|
+
});
|
|
3398
3459
|
/**
|
|
3399
3460
|
* Output event on closing datepicker e.g. by clicking backdrop or escape key.
|
|
3400
3461
|
*/
|
|
@@ -3522,6 +3583,7 @@ class SiDatepickerOverlayDirective {
|
|
|
3522
3583
|
positionStrategy: this.overlay.position().global().centerHorizontally().centerVertically(),
|
|
3523
3584
|
direction: isRTL() ? 'rtl' : 'ltr',
|
|
3524
3585
|
hasBackdrop: true,
|
|
3586
|
+
scrollStrategy: this.scrollStrategy(),
|
|
3525
3587
|
backdropClass: 'modal-backdrop'
|
|
3526
3588
|
});
|
|
3527
3589
|
}
|
|
@@ -3537,6 +3599,7 @@ class SiDatepickerOverlayDirective {
|
|
|
3537
3599
|
.withViewportMargin(4),
|
|
3538
3600
|
direction: isRTL() ? 'rtl' : 'ltr',
|
|
3539
3601
|
hasBackdrop: true,
|
|
3602
|
+
scrollStrategy: this.scrollStrategy(),
|
|
3540
3603
|
backdropClass: 'cdk-overlay-transparent-backdrop'
|
|
3541
3604
|
});
|
|
3542
3605
|
}
|
|
@@ -3553,7 +3616,7 @@ class SiDatepickerOverlayDirective {
|
|
|
3553
3616
|
map(() => CloseCause.Escape)));
|
|
3554
3617
|
}
|
|
3555
3618
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiDatepickerOverlayDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
3556
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
3619
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.8", type: SiDatepickerOverlayDirective, isStandalone: true, selector: "[siDatepickerOverlay]", inputs: { scrollStrategy: { classPropertyName: "scrollStrategy", publicName: "siDatepickerScrollStrategy", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { siDatepickerClose: "siDatepickerClose" }, exportAs: ["siDatepickerOverlay"], ngImport: i0 });
|
|
3557
3620
|
}
|
|
3558
3621
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiDatepickerOverlayDirective, decorators: [{
|
|
3559
3622
|
type: Directive,
|
|
@@ -3561,7 +3624,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
3561
3624
|
selector: '[siDatepickerOverlay]',
|
|
3562
3625
|
exportAs: 'siDatepickerOverlay'
|
|
3563
3626
|
}]
|
|
3564
|
-
}], propDecorators: { siDatepickerClose: [{ type: i0.Output, args: ["siDatepickerClose"] }] } });
|
|
3627
|
+
}], propDecorators: { scrollStrategy: [{ type: i0.Input, args: [{ isSignal: true, alias: "siDatepickerScrollStrategy", required: false }] }], siDatepickerClose: [{ type: i0.Output, args: ["siDatepickerClose"] }] } });
|
|
3565
3628
|
|
|
3566
3629
|
/**
|
|
3567
3630
|
* Copyright (c) Siemens 2016 - 2026
|
|
@@ -3675,7 +3738,7 @@ class SiDatepickerDirective extends SiDateInputDirective {
|
|
|
3675
3738
|
provide: SI_FORM_ITEM_CONTROL,
|
|
3676
3739
|
useExisting: SiDatepickerDirective
|
|
3677
3740
|
}
|
|
3678
|
-
], exportAs: ["siDatepicker"], usesInheritance: true, hostDirectives: [{ directive: SiDatepickerOverlayDirective, outputs: ["siDatepickerClose", "siDatepickerClose"] }], ngImport: i0 });
|
|
3741
|
+
], exportAs: ["siDatepicker"], usesInheritance: true, hostDirectives: [{ directive: SiDatepickerOverlayDirective, inputs: ["siDatepickerScrollStrategy", "siDatepickerScrollStrategy"], outputs: ["siDatepickerClose", "siDatepickerClose"] }], ngImport: i0 });
|
|
3679
3742
|
}
|
|
3680
3743
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiDatepickerDirective, decorators: [{
|
|
3681
3744
|
type: Directive,
|
|
@@ -3700,6 +3763,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
3700
3763
|
hostDirectives: [
|
|
3701
3764
|
{
|
|
3702
3765
|
directive: SiDatepickerOverlayDirective,
|
|
3766
|
+
inputs: ['siDatepickerScrollStrategy'],
|
|
3703
3767
|
outputs: ['siDatepickerClose']
|
|
3704
3768
|
}
|
|
3705
3769
|
],
|
|
@@ -4020,7 +4084,7 @@ class SiDateRangeComponent {
|
|
|
4020
4084
|
provide: SI_FORM_ITEM_CONTROL,
|
|
4021
4085
|
useExisting: SiDateRangeComponent
|
|
4022
4086
|
}
|
|
4023
|
-
], viewQueries: [{ propertyName: "inputDirectives", predicate: SiDateInputDirective, descendants: true, isSignal: true }, { propertyName: "startInput", first: true, predicate: ["startInput"], descendants: true, isSignal: true }, { propertyName: "endInput", first: true, predicate: ["endInput"], descendants: true, isSignal: true }, { propertyName: "button", first: true, predicate: ["button"], descendants: true, isSignal: true }], usesOnChanges: true, hostDirectives: [{ directive: SiDatepickerOverlayDirective, outputs: ["siDatepickerClose", "siDatepickerClose"] }], ngImport: i0, template: "<input\n #startInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none\"\n siDateInput\n [ngModel]=\"value()?.start ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"startDatePlaceholder() | translate\"\n [attr.aria-label]=\"startDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: $event, end: value()?.end })\"\n/>\n<span class=\"mx-3\">-</span>\n<input\n #endInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none text-end\"\n siDateInput\n [ngModel]=\"value()?.end ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"endDatePlaceholder() | translate\"\n [attr.aria-label]=\"endDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: value()?.start, end: $event })\"\n/>\n<div class=\"form-control-actions\">\n <button\n #button\n type=\"button\"\n class=\"btn btn-icon btn-tertiary btn-sm\"\n [attr.aria-label]=\"ariaLabelCalendarButton() | translate\"\n [disabled]=\"disabled() || readonly()\"\n (click)=\"show()\"\n >\n <si-icon [icon]=\"icons.elementCalendar\" />\n </button>\n</div>\n", styles: [":host{display:block;min-inline-size:237px}:host(:focus-within:has(input:focus)){outline:var(--element-button-focus-width) solid var(--element-focus-default);outline-offset:var(--element-button-focus-overlay-width)}input{flex-grow:1;background-color:transparent;min-inline-size:80px}input::placeholder{opacity:1;color:var(--element-text-secondary)}input:disabled,input[readonly]{background-color:var(--element-base-1);opacity:1}input:not([readonly]):focus::placeholder,input:focus:not([readonly]):focus::placeholder{color:transparent}.disabled,.disabled:hover,.disabled:focus{--border-color: var(--element-ui-3);color:var(--element-text-disabled)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: SiDateInputDirective, selector: "input[siDateInput]", inputs: ["id", "siDatepickerConfig", "disabled", "readonly", "errormessageId"], outputs: ["siDatepickerConfigChange", "siDatepickerDisabledTime", "stateChange", "dateChange"], exportAs: ["siDateInput"] }, { kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "ngmodule", type: A11yModule }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Default });
|
|
4087
|
+
], viewQueries: [{ propertyName: "inputDirectives", predicate: SiDateInputDirective, descendants: true, isSignal: true }, { propertyName: "startInput", first: true, predicate: ["startInput"], descendants: true, isSignal: true }, { propertyName: "endInput", first: true, predicate: ["endInput"], descendants: true, isSignal: true }, { propertyName: "button", first: true, predicate: ["button"], descendants: true, isSignal: true }], usesOnChanges: true, hostDirectives: [{ directive: SiDatepickerOverlayDirective, inputs: ["siDatepickerScrollStrategy", "scrollStrategy"], outputs: ["siDatepickerClose", "siDatepickerClose"] }], ngImport: i0, template: "<input\n #startInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none\"\n siDateInput\n [ngModel]=\"value()?.start ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"startDatePlaceholder() | translate\"\n [attr.aria-label]=\"startDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: $event, end: value()?.end })\"\n/>\n<span class=\"mx-3\">-</span>\n<input\n #endInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none text-end\"\n siDateInput\n [ngModel]=\"value()?.end ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"endDatePlaceholder() | translate\"\n [attr.aria-label]=\"endDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: value()?.start, end: $event })\"\n/>\n<div class=\"form-control-actions\">\n <button\n #button\n type=\"button\"\n class=\"btn btn-icon btn-tertiary btn-sm\"\n [attr.aria-label]=\"ariaLabelCalendarButton() | translate\"\n [disabled]=\"disabled() || readonly()\"\n (click)=\"show()\"\n >\n <si-icon [icon]=\"icons.elementCalendar\" />\n </button>\n</div>\n", styles: [":host{display:block;min-inline-size:237px}:host(:focus-within:has(input:focus)){outline:var(--element-button-focus-width) solid var(--element-focus-default);outline-offset:var(--element-button-focus-overlay-width)}input{flex-grow:1;background-color:transparent;min-inline-size:80px}input::placeholder{opacity:1;color:var(--element-text-secondary)}input:disabled,input[readonly]{background-color:var(--element-base-1);opacity:1}input:not([readonly]):focus::placeholder,input:focus:not([readonly]):focus::placeholder{color:transparent}.disabled,.disabled:hover,.disabled:focus{--border-color: var(--element-ui-3);color:var(--element-text-disabled)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: SiDateInputDirective, selector: "input[siDateInput]", inputs: ["id", "siDatepickerConfig", "disabled", "readonly", "errormessageId"], outputs: ["siDatepickerConfigChange", "siDatepickerDisabledTime", "stateChange", "dateChange"], exportAs: ["siDateInput"] }, { kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "ngmodule", type: A11yModule }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.Default });
|
|
4024
4088
|
}
|
|
4025
4089
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImport: i0, type: SiDateRangeComponent, decorators: [{
|
|
4026
4090
|
type: Component,
|
|
@@ -4048,6 +4112,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
4048
4112
|
}, hostDirectives: [
|
|
4049
4113
|
{
|
|
4050
4114
|
directive: SiDatepickerOverlayDirective,
|
|
4115
|
+
inputs: ['siDatepickerScrollStrategy: scrollStrategy'],
|
|
4051
4116
|
outputs: ['siDatepickerClose']
|
|
4052
4117
|
}
|
|
4053
4118
|
], template: "<input\n #startInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none\"\n siDateInput\n [ngModel]=\"value()?.start ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"startDatePlaceholder() | translate\"\n [attr.aria-label]=\"startDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: $event, end: value()?.end })\"\n/>\n<span class=\"mx-3\">-</span>\n<input\n #endInput=\"ngModel\"\n type=\"text\"\n class=\"border-0 p-0 focus-none text-end\"\n siDateInput\n [ngModel]=\"value()?.end ?? null\"\n [siDatepickerConfig]=\"siDatepickerConfig()\"\n [placeholder]=\"endDatePlaceholder() | translate\"\n [attr.aria-label]=\"endDatePlaceholder() | translate\"\n [errormessageId]=\"errormessageId()\"\n [disabled]=\"disabled()\"\n [readonly]=\"readonly()\"\n (ngModelChange)=\"onInputChanged({ start: value()?.start, end: $event })\"\n/>\n<div class=\"form-control-actions\">\n <button\n #button\n type=\"button\"\n class=\"btn btn-icon btn-tertiary btn-sm\"\n [attr.aria-label]=\"ariaLabelCalendarButton() | translate\"\n [disabled]=\"disabled() || readonly()\"\n (click)=\"show()\"\n >\n <si-icon [icon]=\"icons.elementCalendar\" />\n </button>\n</div>\n", styles: [":host{display:block;min-inline-size:237px}:host(:focus-within:has(input:focus)){outline:var(--element-button-focus-width) solid var(--element-focus-default);outline-offset:var(--element-button-focus-overlay-width)}input{flex-grow:1;background-color:transparent;min-inline-size:80px}input::placeholder{opacity:1;color:var(--element-text-secondary)}input:disabled,input[readonly]{background-color:var(--element-base-1);opacity:1}input:not([readonly]):focus::placeholder,input:focus:not([readonly]):focus::placeholder{color:transparent}.disabled,.disabled:hover,.disabled:focus{--border-color: var(--element-ui-3);color:var(--element-text-disabled)}\n"] }]
|