@siemens/element-ng 47.8.0 → 48.0.0-next.1
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/about/index.d.ts +127 -3
- package/accordion/index.d.ts +152 -9
- package/action-modal/index.d.ts +92 -2
- package/application-header/index.d.ts +357 -13
- package/auto-collapsable-list/index.d.ts +114 -10
- package/autocomplete/index.d.ts +77 -8
- package/avatar/index.d.ts +83 -4
- package/badge/index.d.ts +21 -5
- package/breadcrumb/index.d.ts +90 -3
- package/breadcrumb-router/index.d.ts +104 -4
- package/card/index.d.ts +88 -6
- package/circle-status/index.d.ts +75 -6
- package/color-picker/index.d.ts +65 -5
- package/column-selection-dialog/index.d.ts +89 -2
- package/common/index.d.ts +421 -4
- package/connection-strength/index.d.ts +29 -6
- package/content-action-bar/index.d.ts +88 -3
- package/copyright-notice/index.d.ts +48 -3
- package/dashboard/index.d.ts +782 -16
- package/datatable/index.d.ts +45 -6
- package/date-range-filter/index.d.ts +333 -4
- package/datepicker/index.d.ts +1409 -11
- package/electron-titlebar/index.d.ts +84 -3
- package/empty-state/index.d.ts +27 -6
- package/fesm2022/siemens-element-ng-about.mjs +7 -7
- package/fesm2022/siemens-element-ng-about.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-accordion.mjs +17 -30
- package/fesm2022/siemens-element-ng-accordion.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-action-modal.mjs +41 -125
- package/fesm2022/siemens-element-ng-action-modal.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-application-header.mjs +69 -65
- package/fesm2022/siemens-element-ng-application-header.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs +47 -43
- package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-autocomplete.mjs +35 -35
- package/fesm2022/siemens-element-ng-autocomplete.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-avatar.mjs +6 -6
- package/fesm2022/siemens-element-ng-avatar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-badge.mjs +3 -3
- package/fesm2022/siemens-element-ng-badge.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-breadcrumb-router.mjs +10 -10
- package/fesm2022/siemens-element-ng-breadcrumb-router.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-breadcrumb.mjs +13 -13
- package/fesm2022/siemens-element-ng-breadcrumb.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-card.mjs +7 -7
- package/fesm2022/siemens-element-ng-card.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-circle-status.mjs +7 -7
- package/fesm2022/siemens-element-ng-circle-status.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-color-picker.mjs +11 -12
- package/fesm2022/siemens-element-ng-color-picker.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-column-selection-dialog.mjs +28 -31
- package/fesm2022/siemens-element-ng-column-selection-dialog.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-common.mjs +14 -14
- package/fesm2022/siemens-element-ng-common.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-connection-strength.mjs +7 -7
- package/fesm2022/siemens-element-ng-content-action-bar.mjs +13 -13
- package/fesm2022/siemens-element-ng-content-action-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-copyright-notice.mjs +7 -7
- package/fesm2022/siemens-element-ng-copyright-notice.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-dashboard.mjs +61 -61
- package/fesm2022/siemens-element-ng-dashboard.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-datatable.mjs +7 -7
- package/fesm2022/siemens-element-ng-datatable.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-date-range-filter.mjs +87 -73
- package/fesm2022/siemens-element-ng-date-range-filter.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-datepicker.mjs +104 -142
- package/fesm2022/siemens-element-ng-datepicker.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-electron-titlebar.mjs +14 -14
- package/fesm2022/siemens-element-ng-electron-titlebar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-empty-state.mjs +7 -7
- package/fesm2022/siemens-element-ng-empty-state.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-file-uploader.mjs +54 -54
- package/fesm2022/siemens-element-ng-file-uploader.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-filter-bar.mjs +18 -18
- package/fesm2022/siemens-element-ng-filter-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-filtered-search.mjs +31 -74
- package/fesm2022/siemens-element-ng-filtered-search.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-footer.mjs +7 -7
- package/fesm2022/siemens-element-ng-footer.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-form.mjs +125 -271
- package/fesm2022/siemens-element-ng-form.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-formly.mjs +78 -83
- package/fesm2022/siemens-element-ng-formly.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-header-dropdown.mjs +18 -17
- package/fesm2022/siemens-element-ng-header-dropdown.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-help-button.mjs +63 -0
- package/fesm2022/siemens-element-ng-help-button.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-icon-status.mjs +7 -7
- package/fesm2022/siemens-element-ng-icon-status.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-icon.mjs +28 -27
- package/fesm2022/siemens-element-ng-icon.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-info-page.mjs +3 -3
- package/fesm2022/siemens-element-ng-info-page.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-inline-notification.mjs +7 -7
- package/fesm2022/siemens-element-ng-inline-notification.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-ip-input.mjs +10 -9
- package/fesm2022/siemens-element-ng-ip-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-landing-page.mjs +7 -7
- package/fesm2022/siemens-element-ng-landing-page.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-language-switcher.mjs +10 -10
- package/fesm2022/siemens-element-ng-language-switcher.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-link.mjs +10 -10
- package/fesm2022/siemens-element-ng-list-details.mjs +27 -27
- package/fesm2022/siemens-element-ng-list-details.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-loading-spinner.mjs +19 -19
- package/fesm2022/siemens-element-ng-loading-spinner.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-localization.mjs +9 -9
- package/fesm2022/siemens-element-ng-localization.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-main-detail-container.mjs +10 -10
- package/fesm2022/siemens-element-ng-main-detail-container.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-menu.mjs +34 -34
- package/fesm2022/siemens-element-ng-menu.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-modal.mjs +8 -8
- package/fesm2022/siemens-element-ng-modal.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar-vertical.mjs +43 -57
- package/fesm2022/siemens-element-ng-navbar-vertical.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar.mjs +29 -29
- package/fesm2022/siemens-element-ng-navbar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-number-input.mjs +7 -7
- package/fesm2022/siemens-element-ng-number-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-pagination.mjs +14 -14
- package/fesm2022/siemens-element-ng-pagination.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-password-strength.mjs +13 -16
- package/fesm2022/siemens-element-ng-password-strength.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-password-toggle.mjs +12 -12
- package/fesm2022/siemens-element-ng-password-toggle.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-phone-number.mjs +19 -19
- package/fesm2022/siemens-element-ng-phone-number.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-photo-upload.mjs +25 -25
- package/fesm2022/siemens-element-ng-photo-upload.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-pills-input.mjs +22 -22
- package/fesm2022/siemens-element-ng-pills-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-popover-next.mjs +34 -23
- package/fesm2022/siemens-element-ng-popover-next.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-popover.mjs +10 -10
- package/fesm2022/siemens-element-ng-popover.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-progressbar.mjs +10 -10
- package/fesm2022/siemens-element-ng-progressbar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-resize-observer.mjs +13 -13
- package/fesm2022/siemens-element-ng-resize-observer.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-result-details-list.mjs +8 -20
- package/fesm2022/siemens-element-ng-result-details-list.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-search-bar.mjs +18 -15
- package/fesm2022/siemens-element-ng-search-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-select.mjs +66 -66
- package/fesm2022/siemens-element-ng-select.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-shadow-root.mjs +4 -5
- package/fesm2022/siemens-element-ng-shadow-root.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-side-panel.mjs +24 -24
- package/fesm2022/siemens-element-ng-side-panel.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-skip-links.mjs +12 -13
- package/fesm2022/siemens-element-ng-skip-links.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-slider.mjs +14 -14
- package/fesm2022/siemens-element-ng-slider.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-sort-bar.mjs +10 -10
- package/fesm2022/siemens-element-ng-sort-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-split.mjs +13 -29
- package/fesm2022/siemens-element-ng-split.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-status-bar.mjs +19 -19
- package/fesm2022/siemens-element-ng-status-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-status-toggle.mjs +7 -7
- package/fesm2022/siemens-element-ng-status-toggle.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-summary-chip.mjs +3 -3
- package/fesm2022/siemens-element-ng-summary-chip.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-summary-widget.mjs +5 -5
- package/fesm2022/siemens-element-ng-summary-widget.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-system-banner.mjs +3 -3
- package/fesm2022/siemens-element-ng-system-banner.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tabs-next.mjs +147 -176
- package/fesm2022/siemens-element-ng-tabs-next.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tabs.mjs +12 -11
- package/fesm2022/siemens-element-ng-tabs.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-theme.mjs +5 -5
- package/fesm2022/siemens-element-ng-theme.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-threshold.mjs +22 -22
- package/fesm2022/siemens-element-ng-threshold.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-toast-notification.mjs +11 -11
- package/fesm2022/siemens-element-ng-toast-notification.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tooltip.mjs +22 -16
- package/fesm2022/siemens-element-ng-tooltip.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tour.mjs +19 -19
- package/fesm2022/siemens-element-ng-tour.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-translate.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tree-view.mjs +44 -55
- package/fesm2022/siemens-element-ng-tree-view.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-typeahead.mjs +19 -36
- package/fesm2022/siemens-element-ng-typeahead.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-unauthorized-page.mjs +7 -7
- package/fesm2022/siemens-element-ng-unauthorized-page.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-wizard.mjs +76 -109
- package/fesm2022/siemens-element-ng-wizard.mjs.map +1 -1
- package/file-uploader/index.d.ts +419 -4
- package/filter-bar/index.d.ts +117 -4
- package/filtered-search/index.d.ts +433 -3
- package/footer/index.d.ts +23 -6
- package/form/index.d.ts +411 -10
- package/formly/index.d.ts +217 -2
- package/header-dropdown/index.d.ts +150 -5
- package/help-button/index.d.ts +26 -0
- package/help-button/package.json +3 -0
- package/icon/index.d.ts +210 -7
- package/icon-status/index.d.ts +33 -6
- package/index.d.ts +5 -3
- package/info-page/index.d.ts +39 -3
- package/inline-notification/index.d.ts +49 -6
- package/ip-input/index.d.ts +87 -3
- package/landing-page/index.d.ts +95 -3
- package/language-switcher/index.d.ts +53 -3
- package/link/index.d.ts +127 -4
- package/list-details/index.d.ts +176 -12
- package/loading-spinner/index.d.ts +128 -9
- package/localization/index.d.ts +147 -4
- package/main-detail-container/index.d.ts +161 -6
- package/menu/index.d.ts +195 -11
- package/modal/index.d.ts +129 -3
- package/navbar/index.d.ts +304 -4
- package/navbar-vertical/index.d.ts +226 -3
- package/number-input/index.d.ts +111 -6
- package/package.json +17 -13
- package/pagination/index.d.ts +75 -6
- package/password-strength/index.d.ts +96 -7
- package/password-toggle/index.d.ts +49 -6
- package/phone-number/index.d.ts +192 -3
- package/photo-upload/index.d.ts +304 -4
- package/pills-input/index.d.ts +135 -9
- package/popover/index.d.ts +98 -6
- package/popover-next/index.d.ts +112 -7
- package/progressbar/index.d.ts +54 -6
- package/resize-observer/index.d.ts +143 -6
- package/result-details-list/index.d.ts +58 -3
- package/search-bar/index.d.ts +93 -6
- package/select/index.d.ts +605 -14
- package/shadow-root/index.d.ts +39 -1
- package/side-panel/index.d.ts +276 -5
- package/skip-links/index.d.ts +24 -3
- package/slider/index.d.ts +139 -6
- package/sort-bar/index.d.ts +49 -6
- package/split/index.d.ts +207 -4
- package/status-bar/index.d.ts +178 -3
- package/status-toggle/index.d.ts +81 -2
- package/summary-chip/index.d.ts +48 -5
- package/summary-widget/index.d.ts +48 -5
- package/system-banner/index.d.ts +24 -3
- package/tabs/index.d.ts +161 -7
- package/tabs-next/index.d.ts +121 -7
- package/template-i18n.json +0 -3
- package/theme/index.d.ts +259 -3
- package/threshold/index.d.ts +156 -4
- package/toast-notification/index.d.ts +66 -2
- package/tooltip/index.d.ts +92 -3
- package/tour/index.d.ts +114 -2
- package/translate/index.d.ts +199 -3
- package/tree-view/index.d.ts +818 -8
- package/typeahead/index.d.ts +262 -4
- package/unauthorized-page/index.d.ts +42 -4
- package/wizard/index.d.ts +209 -7
- package/about/si-about-data.model.d.ts +0 -49
- package/about/si-about.component.d.ts +0 -71
- package/about/si-about.module.d.ts +0 -7
- package/accordion/si-accordion-hcollapse.service.d.ts +0 -17
- package/accordion/si-accordion.component.d.ts +0 -37
- package/accordion/si-accordion.module.d.ts +0 -8
- package/accordion/si-accordion.service.d.ts +0 -17
- package/accordion/si-collapsible-panel.component.d.ts +0 -89
- package/action-modal/si-action-dialog.service.d.ts +0 -49
- package/action-modal/si-action-dialog.types.d.ts +0 -92
- package/action-modal/si-alert-dialog/si-alert-dialog.component.d.ts +0 -32
- package/action-modal/si-confirmation-dialog/si-confirmation-dialog.component.d.ts +0 -40
- package/action-modal/si-delete-confirmation-dialog/si-delete-confirmation-dialog.component.d.ts +0 -45
- package/action-modal/si-edit-discard-dialog/si-edit-discard-dialog.component.d.ts +0 -68
- package/application-header/launchpad/si-launchpad-app.component.d.ts +0 -21
- package/application-header/launchpad/si-launchpad-factory.component.d.ts +0 -83
- package/application-header/launchpad/si-launchpad.model.d.ts +0 -33
- package/application-header/si-application-header.component.d.ts +0 -60
- package/application-header/si-header-account-item.component.d.ts +0 -13
- package/application-header/si-header-action-item-icon-base.directive.d.ts +0 -26
- package/application-header/si-header-action-item.base.d.ts +0 -19
- package/application-header/si-header-action-item.component.d.ts +0 -9
- package/application-header/si-header-actions.directive.d.ts +0 -5
- package/application-header/si-header-brand.directive.d.ts +0 -5
- package/application-header/si-header-collapsible-actions.component.d.ts +0 -33
- package/application-header/si-header-logo.directive.d.ts +0 -16
- package/application-header/si-header-navigation-item.component.d.ts +0 -10
- package/application-header/si-header-navigation.component.d.ts +0 -11
- package/application-header/si-header-selection-item.component.d.ts +0 -12
- package/application-header/si-header-siemens-logo.component.d.ts +0 -21
- package/auto-collapsable-list/si-auto-collapsable-list-additional-content.directive.d.ts +0 -6
- package/auto-collapsable-list/si-auto-collapsable-list-item.directive.d.ts +0 -29
- package/auto-collapsable-list/si-auto-collapsable-list-measurable.class.d.ts +0 -16
- package/auto-collapsable-list/si-auto-collapsable-list-overflow-item.directive.d.ts +0 -12
- package/auto-collapsable-list/si-auto-collapsable-list.directive.d.ts +0 -47
- package/auto-collapsable-list/si-auto-collapsable-list.module.d.ts +0 -10
- package/autocomplete/si-autocomplete-listbox.directive.d.ts +0 -31
- package/autocomplete/si-autocomplete-option.directive.d.ts +0 -31
- package/autocomplete/si-autocomplete.directive.d.ts +0 -14
- package/autocomplete/si-autocomplete.model.d.ts +0 -7
- package/autocomplete/si-autocomplete.module.d.ts +0 -9
- package/avatar/si-avatar-background-color.directive.d.ts +0 -35
- package/avatar/si-avatar.component.d.ts +0 -51
- package/badge/si-badge.component.d.ts +0 -17
- package/breadcrumb/breadcrumb-item.model.d.ts +0 -36
- package/breadcrumb/si-breadcrumb-item-template.directive.d.ts +0 -10
- package/breadcrumb/si-breadcrumb.component.d.ts +0 -46
- package/breadcrumb/si-breadcrumb.module.d.ts +0 -7
- package/breadcrumb-router/si-breadcrumb-default-resolver.service.d.ts +0 -23
- package/breadcrumb-router/si-breadcrumb-router.component.d.ts +0 -30
- package/breadcrumb-router/si-breadcrumb-router.model.d.ts +0 -53
- package/breadcrumb-router/si-breadcrumb-router.module.d.ts +0 -7
- package/card/si-card.component.d.ts +0 -79
- package/card/si-card.module.d.ts +0 -7
- package/circle-status/si-circle-status.component.d.ts +0 -66
- package/circle-status/si-circle-status.module.d.ts +0 -7
- package/color-picker/si-color-picker.component.d.ts +0 -61
- package/column-selection-dialog/column-selection-editor/si-column-selection-editor.component.d.ts +0 -23
- package/column-selection-dialog/si-column-selection-dialog.component.d.ts +0 -114
- package/column-selection-dialog/si-column-selection-dialog.service.d.ts +0 -20
- package/column-selection-dialog/si-column-selection-dialog.types.d.ts +0 -68
- package/common/decorators/index.d.ts +0 -5
- package/common/decorators/webcomponent.decorator.d.ts +0 -6
- package/common/helpers/animation.helpers.d.ts +0 -10
- package/common/helpers/global-events.helpers.d.ts +0 -5
- package/common/helpers/index.d.ts +0 -10
- package/common/helpers/overlay-helper.d.ts +0 -24
- package/common/helpers/positioning.helpers.d.ts +0 -58
- package/common/helpers/rtl.d.ts +0 -6
- package/common/helpers/track-by.helper.d.ts +0 -27
- package/common/models/color-variant.model.d.ts +0 -8
- package/common/models/index.d.ts +0 -8
- package/common/models/menu.model.d.ts +0 -85
- package/common/models/positions.model.d.ts +0 -18
- package/common/models/status-type.model.d.ts +0 -21
- package/common/services/blink.service.d.ts +0 -41
- package/common/services/index.d.ts +0 -8
- package/common/services/scrollbar-helper.service.d.ts +0 -17
- package/common/services/si-uistate.service.d.ts +0 -61
- package/common/services/text-measure.service.d.ts +0 -21
- package/connection-strength/si-connection-strength.component.d.ts +0 -19
- package/connection-strength/si-connection-strength.module.d.ts +0 -7
- package/content-action-bar/si-content-action-bar-toggle.component.d.ts +0 -6
- package/content-action-bar/si-content-action-bar.component.d.ts +0 -72
- package/content-action-bar/si-content-action-bar.model.d.ts +0 -9
- package/content-action-bar/si-content-action-bar.module.d.ts +0 -7
- package/copyright-notice/si-copyright-notice.component.d.ts +0 -18
- package/copyright-notice/si-copyright-notice.d.ts +0 -23
- package/copyright-notice/si-copyright-notice.module.d.ts +0 -7
- package/dashboard/si-dashboard-card.component.d.ts +0 -82
- package/dashboard/si-dashboard.component.d.ts +0 -75
- package/dashboard/si-dashboard.module.d.ts +0 -8
- package/dashboard/si-dashboard.service.d.ts +0 -21
- package/dashboard/widgets/si-link-widget.component.d.ts +0 -25
- package/dashboard/widgets/si-list-widget/si-list-widget-body.component.d.ts +0 -98
- package/dashboard/widgets/si-list-widget/si-list-widget-item.component.d.ts +0 -39
- package/dashboard/widgets/si-list-widget/si-list-widget.component.d.ts +0 -115
- package/dashboard/widgets/si-timeline-widget/si-timeline-widget-body.component.d.ts +0 -21
- package/dashboard/widgets/si-timeline-widget/si-timeline-widget-item.component.d.ts +0 -103
- package/dashboard/widgets/si-timeline-widget/si-timeline-widget.component.d.ts +0 -52
- package/dashboard/widgets/si-value-widget-body.component.d.ts +0 -33
- package/dashboard/widgets/si-value-widget.component.d.ts +0 -115
- package/dashboard/widgets/si-widget-base.component.d.ts +0 -48
- package/datatable/si-datatable-interaction.directive.d.ts +0 -34
- package/datatable/si-datatable.module.d.ts +0 -7
- package/date-range-filter/si-date-range-calculation.service.d.ts +0 -33
- package/date-range-filter/si-date-range-filter.component.d.ts +0 -252
- package/date-range-filter/si-date-range-filter.module.d.ts +0 -7
- package/date-range-filter/si-date-range-filter.types.d.ts +0 -40
- package/date-range-filter/si-relative-date.component.d.ts +0 -31
- package/datepicker/components/si-calendar-body.component.d.ts +0 -137
- package/datepicker/components/si-calendar-date-cell.directive.d.ts +0 -16
- package/datepicker/components/si-calendar-direction-button.component.d.ts +0 -18
- package/datepicker/components/si-compare-adapter.d.ts +0 -37
- package/datepicker/components/si-day-selection.component.d.ts +0 -76
- package/datepicker/components/si-initial-focus.component.d.ts +0 -74
- package/datepicker/components/si-month-selection.component.d.ts +0 -62
- package/datepicker/components/si-year-selection.component.d.ts +0 -65
- package/datepicker/date-time-helper.d.ts +0 -302
- package/datepicker/si-calendar-button.component.d.ts +0 -49
- package/datepicker/si-date-input.directive.d.ts +0 -114
- package/datepicker/si-date-range.component.d.ts +0 -150
- package/datepicker/si-datepicker-overlay.component.d.ts +0 -82
- package/datepicker/si-datepicker-overlay.directive.d.ts +0 -104
- package/datepicker/si-datepicker.component.d.ts +0 -228
- package/datepicker/si-datepicker.directive.d.ts +0 -62
- package/datepicker/si-datepicker.model.d.ts +0 -129
- package/datepicker/si-datepicker.module.d.ts +0 -12
- package/datepicker/si-timepicker.component.d.ts +0 -214
- package/electron-titlebar/electron.helpers.d.ts +0 -5
- package/electron-titlebar/si-electron-titlebar.component.d.ts +0 -72
- package/electron-titlebar/si-electron-titlebar.module.d.ts +0 -7
- package/empty-state/si-empty-state.component.d.ts +0 -18
- package/empty-state/si-empty-state.module.d.ts +0 -7
- package/file-uploader/si-file-dropzone.component.d.ts +0 -106
- package/file-uploader/si-file-uploader.component.d.ts +0 -296
- package/file-uploader/si-file-uploader.model.d.ts +0 -12
- package/file-uploader/si-file-uploader.module.d.ts +0 -8
- package/filter-bar/filter.d.ts +0 -26
- package/filter-bar/si-filter-bar.component.d.ts +0 -65
- package/filter-bar/si-filter-bar.module.d.ts +0 -7
- package/filter-bar/si-filter-pill.component.d.ts +0 -20
- package/filtered-search/si-filtered-search-helper.d.ts +0 -22
- package/filtered-search/si-filtered-search-value.component.d.ts +0 -53
- package/filtered-search/si-filtered-search.component.d.ts +0 -329
- package/filtered-search/si-filtered-search.model.d.ts +0 -139
- package/filtered-search/si-filtered-search.module.d.ts +0 -7
- package/filtered-search/values/date-value/si-filtered-search-date-value.component.d.ts +0 -57
- package/filtered-search/values/si-filtered-search-value.base.d.ts +0 -27
- package/filtered-search/values/typeahead/si-filtered-search-typeahead.component.d.ts +0 -45
- package/footer/si-footer.component.d.ts +0 -14
- package/footer/si-footer.module.d.ts +0 -7
- package/form/form-fieldset/si-form-fieldset.component.d.ts +0 -40
- package/form/si-form-container/si-form-container.component.d.ts +0 -155
- package/form/si-form-item/si-form-field-native.control.d.ts +0 -22
- package/form/si-form-item/si-form-item.component.d.ts +0 -90
- package/form/si-form-item-control-input.directive.d.ts +0 -18
- package/form/si-form-item.control.d.ts +0 -35
- package/form/si-form-validation-error.model.d.ts +0 -55
- package/form/si-form-validation-error.provider.d.ts +0 -11
- package/form/si-form-validation-error.service.d.ts +0 -42
- package/form/si-form-validation-tooltip/si-form-validation-tooltip.component.d.ts +0 -13
- package/form/si-form-validation-tooltip/si-form-validation-tooltip.directive.d.ts +0 -42
- package/form/si-form.module.d.ts +0 -25
- package/formly/fields/button/si-formly-button.component.d.ts +0 -7
- package/formly/fields/date-range/si-formly-date-range.component.d.ts +0 -6
- package/formly/fields/datetime/si-formly-datetime.component.d.ts +0 -13
- package/formly/fields/email/si-formly-email.component.d.ts +0 -6
- package/formly/fields/ip-input/si-formly-ip-input.component.d.ts +0 -6
- package/formly/fields/number/si-formly-number.component.d.ts +0 -6
- package/formly/fields/password/si-formly-password.component.d.ts +0 -6
- package/formly/fields/select/si-formly-select.component.d.ts +0 -6
- package/formly/fields/text/si-formly-text-display.component.d.ts +0 -7
- package/formly/fields/textarea/si-formly-textarea.component.d.ts +0 -18
- package/formly/fields/time/si-formly-time.component.d.ts +0 -13
- package/formly/si-formly-translate.extension.d.ts +0 -9
- package/formly/si-formly.component.d.ts +0 -62
- package/formly/si-formly.module.d.ts +0 -35
- package/formly/structural/si-formly-accordion/si-formly-accordion.component.d.ts +0 -13
- package/formly/structural/si-formly-array/si-formly-array.component.d.ts +0 -6
- package/formly/structural/si-formly-object/si-formly-object.component.d.ts +0 -6
- package/formly/structural/si-formly-object-grid/si-formly-object-grid.component.d.ts +0 -22
- package/formly/structural/si-formly-object-grid/si-formly-object-grid.model.d.ts +0 -21
- package/formly/structural/si-formly-object-plain/si-formly-object-plain.component.d.ts +0 -6
- package/formly/structural/si-formly-tabset/si-formly-object-tabset.component.d.ts +0 -7
- package/formly/utils.d.ts +0 -6
- package/formly/wrapper/si-formly-fieldset.component.d.ts +0 -8
- package/formly/wrapper/si-formly-form-field-provider.directive.d.ts +0 -19
- package/formly/wrapper/si-formly-horizontal-wrapper.component.d.ts +0 -6
- package/formly/wrapper/si-formly-icon-wrapper.component.d.ts +0 -6
- package/formly/wrapper/si-formly-wrapper.component.d.ts +0 -8
- package/header-dropdown/si-header-dropdown-item.component.d.ts +0 -23
- package/header-dropdown/si-header-dropdown-items-factory.component.d.ts +0 -14
- package/header-dropdown/si-header-dropdown-trigger.directive.d.ts +0 -57
- package/header-dropdown/si-header-dropdown.component.d.ts +0 -20
- package/header-dropdown/si-header.model.d.ts +0 -37
- package/icon/element-icons.d.ts +0 -59
- package/icon/icon-status.d.ts +0 -22
- package/icon/si-icon-next.component.d.ts +0 -64
- package/icon/si-icon.component.d.ts +0 -23
- package/icon/si-icon.module.d.ts +0 -7
- package/icon/si-icons.d.ts +0 -31
- package/icon/si-status-icon.component.d.ts +0 -9
- package/icon-status/si-icon-status.component.d.ts +0 -24
- package/icon-status/si-icon-status.module.d.ts +0 -7
- package/info-page/si-info-page.component.d.ts +0 -38
- package/inline-notification/si-inline-notification.component.d.ts +0 -40
- package/inline-notification/si-inline-notification.module.d.ts +0 -7
- package/ip-input/address-utils.d.ts +0 -28
- package/ip-input/address-validators.d.ts +0 -21
- package/ip-input/si-ip-input.directive.d.ts +0 -53
- package/ip-input/si-ip4-input.directive.d.ts +0 -9
- package/ip-input/si-ip6-input.directive.d.ts +0 -10
- package/landing-page/alert-config.model.d.ts +0 -15
- package/landing-page/si-landing-page.component.d.ts +0 -74
- package/landing-page/si-landing-page.module.d.ts +0 -7
- package/language-switcher/iso-language-value.d.ts +0 -14
- package/language-switcher/si-language-switcher.component.d.ts +0 -31
- package/language-switcher/si-language-switcher.module.d.ts +0 -7
- package/link/aria-current.model.d.ts +0 -5
- package/link/link.model.d.ts +0 -57
- package/link/si-link-action.service.d.ts +0 -17
- package/link/si-link.directive.d.ts +0 -42
- package/link/si-link.module.d.ts +0 -7
- package/list-details/si-details-pane/si-details-pane.component.d.ts +0 -8
- package/list-details/si-details-pane-body/si-details-pane-body.component.d.ts +0 -6
- package/list-details/si-details-pane-footer/si-details-pane-footer.component.d.ts +0 -6
- package/list-details/si-details-pane-header/si-details-pane-header.component.d.ts +0 -38
- package/list-details/si-list-details.component.d.ts +0 -100
- package/list-details/si-list-pane/si-list-pane.component.d.ts +0 -10
- package/list-details/si-list-pane-body/si-list-pane-body.component.d.ts +0 -6
- package/list-details/si-list-pane-header/si-list-pane-header.component.d.ts +0 -6
- package/loading-spinner/si-loading-button.component.d.ts +0 -31
- package/loading-spinner/si-loading-spinner.component.d.ts +0 -32
- package/loading-spinner/si-loading-spinner.directive.d.ts +0 -37
- package/loading-spinner/si-loading-spinner.module.d.ts +0 -8
- package/loading-spinner/si-loading-spinner.service.d.ts +0 -18
- package/localization/si-directionality.d.ts +0 -41
- package/localization/si-locale-id.d.ts +0 -22
- package/localization/si-locale-store.d.ts +0 -16
- package/localization/si-locale.service.d.ts +0 -73
- package/main-detail-container/si-main-detail-container.component.d.ts +0 -151
- package/main-detail-container/si-main-detail-container.module.d.ts +0 -7
- package/menu/si-menu-action.service.d.ts +0 -13
- package/menu/si-menu-bar.directive.d.ts +0 -12
- package/menu/si-menu-divider.directive.d.ts +0 -5
- package/menu/si-menu-factory-item-guard.directive.d.ts +0 -11
- package/menu/si-menu-factory.component.d.ts +0 -15
- package/menu/si-menu-header.directive.d.ts +0 -5
- package/menu/si-menu-item-base.directive.d.ts +0 -16
- package/menu/si-menu-item-checkbox.component.d.ts +0 -11
- package/menu/si-menu-item-radio.component.d.ts +0 -10
- package/menu/si-menu-item.component.d.ts +0 -10
- package/menu/si-menu-model.d.ts +0 -91
- package/menu/si-menu.directive.d.ts +0 -6
- package/menu/si-menu.module.d.ts +0 -14
- package/modal/modal.helpers.d.ts +0 -8
- package/modal/modalref.d.ts +0 -64
- package/modal/si-modal.component.d.ts +0 -32
- package/modal/si-modal.service.d.ts +0 -57
- package/navbar/account.model.d.ts +0 -39
- package/navbar/si-navbar-item/index.d.ts +0 -5
- package/navbar/si-navbar-item/si-navbar-item.component.d.ts +0 -29
- package/navbar/si-navbar-primary/index.d.ts +0 -6
- package/navbar/si-navbar-primary/si-navbar-primary.component.d.ts +0 -198
- package/navbar/si-navbar-primary/si-navbar-primary.model.d.ts +0 -34
- package/navbar/si-navbar.module.d.ts +0 -9
- package/navbar-vertical/si-navbar-vertical-divider.component.d.ts +0 -5
- package/navbar-vertical/si-navbar-vertical-group-trigger.directive.d.ts +0 -38
- package/navbar-vertical/si-navbar-vertical-group.component.d.ts +0 -16
- package/navbar-vertical/si-navbar-vertical-header.component.d.ts +0 -6
- package/navbar-vertical/si-navbar-vertical-item-legacy.component.d.ts +0 -17
- package/navbar-vertical/si-navbar-vertical-item.component.d.ts +0 -21
- package/navbar-vertical/si-navbar-vertical.component.d.ts +0 -148
- package/navbar-vertical/si-navbar-vertical.model.d.ts +0 -77
- package/navbar-vertical/si-navbar-vertical.module.d.ts +0 -7
- package/navbar-vertical/si-navbar-vertical.provider.d.ts +0 -7
- package/number-input/si-number-input.component.d.ts +0 -106
- package/number-input/si-number-input.module.d.ts +0 -7
- package/pagination/si-pagination.component.d.ts +0 -65
- package/pagination/si-pagination.module.d.ts +0 -7
- package/password-strength/si-password-strength.component.d.ts +0 -25
- package/password-strength/si-password-strength.directive.d.ts +0 -65
- package/password-strength/si-password-strength.module.d.ts +0 -8
- package/password-toggle/si-password-toggle.component.d.ts +0 -39
- package/password-toggle/si-password-toggle.module.d.ts +0 -7
- package/phone-number/si-phone-number-input-select.directive.d.ts +0 -10
- package/phone-number/si-phone-number-input.component.d.ts +0 -137
- package/phone-number/si-phone-number-input.models.d.ts +0 -48
- package/phone-number/si-phone-number-input.module.d.ts +0 -7
- package/photo-upload/si-image-cropper-style.component.d.ts +0 -5
- package/photo-upload/si-photo-upload.component.d.ts +0 -298
- package/pills-input/si-input-pill.component.d.ts +0 -9
- package/pills-input/si-pills-input-csv.directive.d.ts +0 -8
- package/pills-input/si-pills-input-email.directive.d.ts +0 -10
- package/pills-input/si-pills-input-pattern-base.d.ts +0 -19
- package/pills-input/si-pills-input-value-handler.d.ts +0 -12
- package/pills-input/si-pills-input.component.d.ts +0 -87
- package/pills-input/si-pills-input.module.d.ts +0 -9
- package/popover/si-popover.component.d.ts +0 -26
- package/popover/si-popover.directive.d.ts +0 -89
- package/popover/si-popover.module.d.ts +0 -7
- package/popover-next/si-popover-description.directive.d.ts +0 -7
- package/popover-next/si-popover-next.directive.d.ts +0 -61
- package/popover-next/si-popover-title.directive.d.ts +0 -7
- package/popover-next/si-popover.component.d.ts +0 -27
- package/progressbar/si-progressbar.component.d.ts +0 -43
- package/progressbar/si-progressbar.module.d.ts +0 -7
- package/public-api.d.ts +0 -5
- package/resize-observer/resize-observer.service.d.ts +0 -41
- package/resize-observer/si-resize-observer.directive.d.ts +0 -31
- package/resize-observer/si-resize-observer.module.d.ts +0 -8
- package/resize-observer/si-responsive-container.directive.d.ts +0 -73
- package/result-details-list/si-result-details-list.component.d.ts +0 -14
- package/result-details-list/si-result-details-list.datamodel.d.ts +0 -48
- package/result-details-list/si-result-details-list.module.d.ts +0 -7
- package/search-bar/si-search-bar.component.d.ts +0 -87
- package/search-bar/si-search-bar.module.d.ts +0 -7
- package/select/options/si-select-complex-options.directive.d.ts +0 -69
- package/select/options/si-select-lazy-options.directive.d.ts +0 -38
- package/select/options/si-select-option.source.d.ts +0 -49
- package/select/options/si-select-options-strategy.base.d.ts +0 -35
- package/select/options/si-select-options-strategy.d.ts +0 -37
- package/select/options/si-select-simple-options.directive.d.ts +0 -34
- package/select/select-input/si-select-input.component.d.ts +0 -43
- package/select/select-list/si-select-list-has-filter.component.d.ts +0 -20
- package/select/select-list/si-select-list.base.d.ts +0 -37
- package/select/select-list/si-select-list.component.d.ts +0 -15
- package/select/select-option/si-select-option-row.component.d.ts +0 -16
- package/select/select-option/si-select-option.component.d.ts +0 -9
- package/select/selection/si-select-multi-value.directive.d.ts +0 -26
- package/select/selection/si-select-selection-strategy.d.ts +0 -58
- package/select/selection/si-select-single-value.directive.d.ts +0 -26
- package/select/si-select-action.directive.d.ts +0 -12
- package/select/si-select-actions.directive.d.ts +0 -5
- package/select/si-select-group-template.directive.d.ts +0 -20
- package/select/si-select-option-row-template.directive.d.ts +0 -9
- package/select/si-select-option-template.directive.d.ts +0 -21
- package/select/si-select.component.d.ts +0 -96
- package/select/si-select.module.d.ts +0 -15
- package/select/si-select.types.d.ts +0 -65
- package/shadow-root/si-shadow-root.directive.d.ts +0 -39
- package/side-panel/si-side-panel-content.component.d.ts +0 -105
- package/side-panel/si-side-panel.component.d.ts +0 -108
- package/side-panel/si-side-panel.module.d.ts +0 -8
- package/side-panel/si-side-panel.service.d.ts +0 -45
- package/side-panel/side-panel.model.d.ts +0 -16
- package/skip-links/si-skip-link-target.directive.d.ts +0 -27
- package/skip-links/si-skip-links.component.d.ts +0 -9
- package/skip-links/skip-link.service.d.ts +0 -14
- package/slider/si-slider.component.d.ts +0 -129
- package/slider/si-slider.module.d.ts +0 -7
- package/sort-bar/si-sort-bar.component.d.ts +0 -42
- package/sort-bar/si-sort-bar.module.d.ts +0 -7
- package/split/si-split-part.component.d.ts +0 -154
- package/split/si-split.component.d.ts +0 -48
- package/split/si-split.interfaces.d.ts +0 -17
- package/split/si-split.module.d.ts +0 -8
- package/status-bar/si-status-bar-item/index.d.ts +0 -6
- package/status-bar/si-status-bar-item/si-status-bar-item.component.d.ts +0 -22
- package/status-bar/si-status-bar-item/si-status-bar-item.model.d.ts +0 -33
- package/status-bar/si-status-bar.component.d.ts +0 -116
- package/status-bar/si-status-bar.module.d.ts +0 -7
- package/status-toggle/si-status-toggle.component.d.ts +0 -54
- package/status-toggle/status-toggle.model.d.ts +0 -26
- package/summary-chip/si-summary-chip.component.d.ts +0 -44
- package/summary-widget/si-summary-widget.component.d.ts +0 -44
- package/system-banner/system-banner.component.d.ts +0 -23
- package/tabs/si-tab/index.d.ts +0 -5
- package/tabs/si-tab/si-tab.component.d.ts +0 -58
- package/tabs/si-tabs.module.d.ts +0 -8
- package/tabs/si-tabset/index.d.ts +0 -5
- package/tabs/si-tabset/si-tabset.component.d.ts +0 -100
- package/tabs-next/si-tab-next-base.directive.d.ts +0 -63
- package/tabs-next/si-tab-next-link.component.d.ts +0 -16
- package/tabs-next/si-tab-next.component.d.ts +0 -16
- package/tabs-next/si-tabs-tokens.d.ts +0 -7
- package/tabs-next/si-tabset-next.component.d.ts +0 -57
- package/theme/si-theme-store.d.ts +0 -82
- package/theme/si-theme.model.d.ts +0 -48
- package/theme/si-theme.service.d.ts +0 -129
- package/threshold/si-readonly-threshold-option.component.d.ts +0 -11
- package/threshold/si-threshold.component.d.ts +0 -147
- package/threshold/si-threshold.module.d.ts +0 -7
- package/toast-notification/si-toast-notification/si-toast-notification.component.d.ts +0 -17
- package/toast-notification/si-toast-notification-drawer/si-toast-notification-drawer.component.d.ts +0 -9
- package/toast-notification/si-toast-notification.service.d.ts +0 -41
- package/toast-notification/si-toast.model.d.ts +0 -25
- package/tooltip/si-tooltip.component.d.ts +0 -25
- package/tooltip/si-tooltip.directive.d.ts +0 -45
- package/tooltip/si-tooltip.module.d.ts +0 -7
- package/tooltip/si-tooltip.service.d.ts +0 -44
- package/tour/si-tour-highlight.component.d.ts +0 -15
- package/tour/si-tour-token.model.d.ts +0 -27
- package/tour/si-tour.component.d.ts +0 -31
- package/tour/si-tour.model.d.ts +0 -51
- package/tour/si-tour.service.d.ts +0 -62
- package/translate/si-translatable-keys.interface.d.ts +0 -193
- package/translate/si-translatable-overrides.provider.d.ts +0 -7
- package/tree-view/drag-drop.util.d.ts +0 -32
- package/tree-view/si-tree-view-converter.service.d.ts +0 -41
- package/tree-view/si-tree-view-item/si-tree-view-item.component.d.ts +0 -104
- package/tree-view/si-tree-view-item/si-tree-view-item.directive.d.ts +0 -24
- package/tree-view/si-tree-view-item-context.d.ts +0 -11
- package/tree-view/si-tree-view-item-height.service.d.ts +0 -49
- package/tree-view/si-tree-view-item-template.directive.d.ts +0 -18
- package/tree-view/si-tree-view-virtualization.service.d.ts +0 -150
- package/tree-view/si-tree-view.component.d.ts +0 -467
- package/tree-view/si-tree-view.model.d.ts +0 -146
- package/tree-view/si-tree-view.module.d.ts +0 -10
- package/tree-view/si-tree-view.service.d.ts +0 -55
- package/tree-view/si-tree-view.utils.d.ts +0 -46
- package/typeahead/si-typeahead-item-template.directive.d.ts +0 -7
- package/typeahead/si-typeahead.component.d.ts +0 -22
- package/typeahead/si-typeahead.directive.d.ts +0 -196
- package/typeahead/si-typeahead.model.d.ts +0 -60
- package/typeahead/si-typeahead.module.d.ts +0 -8
- package/typeahead/si-typeahead.sorting.d.ts +0 -10
- package/unauthorized-page/si-unauthorized-page.component.d.ts +0 -35
- package/unauthorized-page/si-unauthorized-page.module.d.ts +0 -7
- package/wizard/si-wizard-step.component.d.ts +0 -21
- package/wizard/si-wizard.component.d.ts +0 -196
- package/wizard/si-wizard.module.d.ts +0 -8
|
@@ -1,108 +1,11 @@
|
|
|
1
1
|
import { NgTemplateOutlet } from '@angular/common';
|
|
2
2
|
import * as i0 from '@angular/core';
|
|
3
|
-
import {
|
|
4
|
-
import { FormGroup, FormControl, NgControl, RequiredValidator } from '@angular/forms';
|
|
3
|
+
import { input, booleanAttribute, inject, computed, Component, signal, HostBinding, ChangeDetectionStrategy, InjectionToken, Injectable, contentChild, ElementRef, isSignal, Injector, HostListener, Directive, NgModule } from '@angular/core';
|
|
5
4
|
import { SiResponsiveContainerDirective } from '@siemens/element-ng/resize-observer';
|
|
6
|
-
import {
|
|
5
|
+
import { NgControl, RequiredValidator, FormControl } from '@angular/forms';
|
|
6
|
+
import { SiTranslatePipe, t } from '@siemens/element-translate-ng/translate';
|
|
7
7
|
import { SiTooltipService } from '@siemens/element-ng/tooltip';
|
|
8
8
|
|
|
9
|
-
/**
|
|
10
|
-
* Copyright (c) Siemens 2016 - 2025
|
|
11
|
-
* SPDX-License-Identifier: MIT
|
|
12
|
-
*/
|
|
13
|
-
/**
|
|
14
|
-
* Creates the map of default error resolver.
|
|
15
|
-
* This is a function as $localize requires an injection context.
|
|
16
|
-
*
|
|
17
|
-
* @internal
|
|
18
|
-
*/
|
|
19
|
-
const buildDefaults = () => ({
|
|
20
|
-
min: $localize `:@@SI_FORM_CONTAINER.ERROR.MIN:The value is too small`,
|
|
21
|
-
max: $localize `:@@SI_FORM_CONTAINER.ERROR.MAX:The value is too large.`,
|
|
22
|
-
required: $localize `:@@SI_FORM_CONTAINER.ERROR.REQUIRED:A value is required.`,
|
|
23
|
-
requiredTrue: $localize `:@@SI_FORM_CONTAINER.ERROR.REQUIRED_TRUE:The value should be true.`,
|
|
24
|
-
email: $localize `:@@SI_FORM_CONTAINER.ERROR.EMAIL:The email is not valid.`,
|
|
25
|
-
minlength: $localize `:@@SI_FORM_CONTAINER.ERROR.MIN_LENGTH:The minimum number of characters is not met.`,
|
|
26
|
-
maxlength: $localize `:@@SI_FORM_CONTAINER.ERROR.MAX_LENGTH:A maximum number of characters is exceeded.`,
|
|
27
|
-
ipv4Address: $localize `:@@SI_FORM_CONTAINER.ERROR.IPV4:Invalid IPv4 address.`,
|
|
28
|
-
ipv6Address: $localize `:@@SI_FORM_CONTAINER.ERROR.IPV6:Invalid IPv6 address.`,
|
|
29
|
-
pattern: $localize `:@@SI_FORM_CONTAINER.ERROR.PATTERN:The value does not match the predefined pattern.`,
|
|
30
|
-
numberFormat: $localize `:@@SI_FORM_CONTAINER.ERROR.NUMBER_FORMAT:The value is not a valid number.`,
|
|
31
|
-
dateFormat: $localize `:@@SI_FORM_CONTAINER.ERROR.DATE_FORMAT:Invalid date format.`,
|
|
32
|
-
maxDate: $localize `:@@SI_FORM_CONTAINER.ERROR.MAX_DATE:The date is too far in the future.`,
|
|
33
|
-
minDate: $localize `:@@SI_FORM_CONTAINER.ERROR.MIN_DATE:The date is too far in the past.`
|
|
34
|
-
});
|
|
35
|
-
/**
|
|
36
|
-
* A service to resolve the validation error of an Angular control to a message or translation key.
|
|
37
|
-
*
|
|
38
|
-
* It can be provided using {@link provideFormValidationErrorMapper}.
|
|
39
|
-
* If not provided, there will be a default instance in the root injector using only the default keys.
|
|
40
|
-
*
|
|
41
|
-
* There can be multiple instances to support providing in a lazy loaded module.
|
|
42
|
-
* If the service cannot find a message, it will try to resolve it using a parent service if available.
|
|
43
|
-
*
|
|
44
|
-
* @internal
|
|
45
|
-
*/
|
|
46
|
-
class SiFormValidationErrorService {
|
|
47
|
-
errorMapper;
|
|
48
|
-
parent = inject(SiFormValidationErrorService, {
|
|
49
|
-
optional: true,
|
|
50
|
-
skipSelf: true
|
|
51
|
-
});
|
|
52
|
-
// eslint-disable-next-line @angular-eslint/prefer-inject
|
|
53
|
-
constructor(errorMapper) {
|
|
54
|
-
this.errorMapper = errorMapper;
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Resolves the provided form errors to a list of {@link SiFormError}.
|
|
58
|
-
* To resolution order is:
|
|
59
|
-
* 1. componentMapper
|
|
60
|
-
* 2. containerMapper using the controlName
|
|
61
|
-
* 3. containerMapper without controlName
|
|
62
|
-
* 4. errorMapper of the service using the controlName
|
|
63
|
-
* 5. errorMapper of the service
|
|
64
|
-
* 6: parent service
|
|
65
|
-
*/
|
|
66
|
-
resolveErrors(controlName, errors, componentMapper, containerMapper) {
|
|
67
|
-
if (!errors) {
|
|
68
|
-
return [];
|
|
69
|
-
}
|
|
70
|
-
/*
|
|
71
|
-
* Converts the angular error object (like: {required: true, minLength: {actualLength: 1, requiredLength: 3}})
|
|
72
|
-
* to SiFormError[].
|
|
73
|
-
* Therefore, the error key is look up in the error mappers.
|
|
74
|
-
* If it can be resolved, the error will be printed using the resolved text.
|
|
75
|
-
*/
|
|
76
|
-
return Object.entries(errors).map(([key, params]) => this.resolveError(key, controlName, params, componentMapper, containerMapper));
|
|
77
|
-
}
|
|
78
|
-
resolveError(key, controlName, params, componentMapper, containerMapper) {
|
|
79
|
-
return (this.resolveMessage(key, controlName, params, componentMapper) ??
|
|
80
|
-
this.resolveMessage(key, controlName, params, containerMapper) ??
|
|
81
|
-
this.resolveMessage(key, controlName, params, this.errorMapper) ??
|
|
82
|
-
this.parent?.resolveError(key, controlName, params) ?? { key, params });
|
|
83
|
-
}
|
|
84
|
-
resolveMessage(key, controlName, params, mapper) {
|
|
85
|
-
if (!mapper) {
|
|
86
|
-
return undefined;
|
|
87
|
-
}
|
|
88
|
-
const resolver = mapper[`${controlName}.${key}`] ?? mapper[key];
|
|
89
|
-
if (resolver) {
|
|
90
|
-
const message = typeof resolver === 'function' ? resolver(params) : resolver;
|
|
91
|
-
return message ? { key, message, params } : undefined;
|
|
92
|
-
}
|
|
93
|
-
return undefined;
|
|
94
|
-
}
|
|
95
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.6", ngImport: i0, type: SiFormValidationErrorService, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
|
|
96
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.6", ngImport: i0, type: SiFormValidationErrorService, providedIn: 'root', useFactory: () => new SiFormValidationErrorService(buildDefaults()) });
|
|
97
|
-
}
|
|
98
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.6", ngImport: i0, type: SiFormValidationErrorService, decorators: [{
|
|
99
|
-
type: Injectable,
|
|
100
|
-
args: [{
|
|
101
|
-
providedIn: 'root',
|
|
102
|
-
useFactory: () => new SiFormValidationErrorService(buildDefaults())
|
|
103
|
-
}]
|
|
104
|
-
}], ctorParameters: () => [{ type: undefined }] });
|
|
105
|
-
|
|
106
9
|
/**
|
|
107
10
|
* Copyright (c) Siemens 2016 - 2025
|
|
108
11
|
* SPDX-License-Identifier: MIT
|
|
@@ -170,7 +73,6 @@ class SiFormContainerComponent {
|
|
|
170
73
|
optional: true,
|
|
171
74
|
skipSelf: true
|
|
172
75
|
});
|
|
173
|
-
errorResolver = inject(SiFormValidationErrorService);
|
|
174
76
|
/** @internal */
|
|
175
77
|
formErrorMapper = computed(() => {
|
|
176
78
|
const map = this.errorCodeTranslateKeyMap();
|
|
@@ -212,32 +114,6 @@ class SiFormContainerComponent {
|
|
|
212
114
|
get invalidFormContainerMessage() {
|
|
213
115
|
return this.userInteractedWithForm && this.form().status === 'INVALID';
|
|
214
116
|
}
|
|
215
|
-
/**
|
|
216
|
-
* Returns the validation errors of the form's control when the control name is provided. Otherwise,
|
|
217
|
-
* returns all validation errors of the form. Returns an empty arry when no form is available or if
|
|
218
|
-
* the name does not match to a control.
|
|
219
|
-
* @param controlName - An optional name of a control that is part of the form.
|
|
220
|
-
*
|
|
221
|
-
* @deprecated The {@link SiFormItemComponent} is able to display validation errors automatically when `siFormInput` directive is used.
|
|
222
|
-
*/
|
|
223
|
-
getValidationErrors(controlName) {
|
|
224
|
-
const form = this.form();
|
|
225
|
-
if (!form) {
|
|
226
|
-
return [];
|
|
227
|
-
}
|
|
228
|
-
else if (!controlName) {
|
|
229
|
-
return this.getFormValidationErrorsPrivate(form);
|
|
230
|
-
}
|
|
231
|
-
else {
|
|
232
|
-
const control = form.get(controlName);
|
|
233
|
-
if (control) {
|
|
234
|
-
return this.getFormValidationErrorsPrivate(control, controlName);
|
|
235
|
-
}
|
|
236
|
-
else {
|
|
237
|
-
return [];
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
117
|
getControlNameTranslateKey(controlName) {
|
|
242
118
|
const controlNameTranslateKeyMap = this.controlNameTranslateKeyMap();
|
|
243
119
|
if (!controlNameTranslateKeyMap) {
|
|
@@ -245,50 +121,10 @@ class SiFormContainerComponent {
|
|
|
245
121
|
}
|
|
246
122
|
return controlNameTranslateKeyMap.get(controlName) ?? controlName;
|
|
247
123
|
}
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
// a form must either consist of
|
|
251
|
-
// a) a formgroup (with nested form controls or groups) or
|
|
252
|
-
// b) a single form control
|
|
253
|
-
if (control instanceof FormGroup) {
|
|
254
|
-
const formGroupErrors = this.getFormGroupErrors(control);
|
|
255
|
-
errors = errors.concat(formGroupErrors);
|
|
256
|
-
if (control.controls) {
|
|
257
|
-
Object.keys(control.controls).forEach(key => {
|
|
258
|
-
const formGroupControl = control.controls[key];
|
|
259
|
-
const formGroupControlErrors = this.getFormValidationErrorsPrivate(formGroupControl, key);
|
|
260
|
-
errors = errors.concat(formGroupControlErrors);
|
|
261
|
-
});
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
|
-
else if (control instanceof FormControl) {
|
|
265
|
-
errors.push(...this.errorResolver
|
|
266
|
-
.resolveErrors(controlName, control.errors, undefined, this.formErrorMapper())
|
|
267
|
-
.map(error => ({
|
|
268
|
-
controlName,
|
|
269
|
-
errorCode: error.key,
|
|
270
|
-
errorParams: error.params,
|
|
271
|
-
errorCodeTranslationKey: error.message,
|
|
272
|
-
controlNameTranslationKey: controlName
|
|
273
|
-
? this.getControlNameTranslateKey(controlName)
|
|
274
|
-
: undefined
|
|
275
|
-
})));
|
|
276
|
-
}
|
|
277
|
-
return errors;
|
|
278
|
-
}
|
|
279
|
-
getFormGroupErrors(formGroup) {
|
|
280
|
-
return this.errorResolver
|
|
281
|
-
.resolveErrors(null, formGroup.errors, undefined, this.formErrorMapper())
|
|
282
|
-
.map(error => ({
|
|
283
|
-
errorCode: error.key,
|
|
284
|
-
errorParams: error.params,
|
|
285
|
-
errorCodeTranslationKey: error.message
|
|
286
|
-
}));
|
|
287
|
-
}
|
|
288
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.6", ngImport: i0, type: SiFormContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
289
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.6", type: SiFormContainerComponent, isStandalone: true, selector: "si-form-container", inputs: { form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, contentContainerBreakpoints: { classPropertyName: "contentContainerBreakpoints", publicName: "contentContainerBreakpoints", isSignal: true, isRequired: false, transformFunction: null }, disableContainerBreakpoints: { classPropertyName: "disableContainerBreakpoints", publicName: "disableContainerBreakpoints", isSignal: true, isRequired: false, transformFunction: null }, errorCodeTranslateKeyMap: { classPropertyName: "errorCodeTranslateKeyMap", publicName: "errorCodeTranslateKeyMap", isSignal: true, isRequired: false, transformFunction: null }, controlNameTranslateKeyMap: { classPropertyName: "controlNameTranslateKeyMap", publicName: "controlNameTranslateKeyMap", isSignal: true, isRequired: false, transformFunction: null }, disableErrorPrinting: { classPropertyName: "disableErrorPrinting", publicName: "disableErrorPrinting", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.--si-form-label-width": "labelWidth()" } }, ngImport: i0, template: "<div class=\"d-flex flex-column align-content-stretch flex-grow-1 flex-shrink-1\">\n @if (disableContainerBreakpoints() || hasParentContainer) {\n <div class=\"flex-grow-1 flex-shrink-1\">\n <ng-container *ngTemplateOutlet=\"contentTemplate\" />\n </div>\n } @else {\n <div\n class=\"flex-grow-1 flex-shrink-1\"\n siResponsiveContainer\n [breakpoints]=\"contentContainerBreakpoints()\"\n >\n <ng-container *ngTemplateOutlet=\"contentTemplate\" />\n </div>\n }\n\n @if (!readonly()) {\n <div class=\"d-flex flex-row flex-nowrap flex-grow-0 flex-shrink-0 py-4\">\n <div\n class=\"d-flex flex-grow-1 flex-shrink-1 justify-content-end text-end overflow-hidden mx-6 my-auto\"\n [class.text-success]=\"validFormContainerMessage\"\n [class.text-danger]=\"invalidFormContainerMessage\"\n >\n <ng-content select=\"[si-form-container-message]\" />\n </div>\n\n <div class=\"m-auto flex-grow-0 flex-shrink-0\">\n <ng-content select=\"[si-form-container-buttons]\" />\n </div>\n </div>\n }\n</div>\n\n<ng-template #contentTemplate>\n <ng-content select=\"[si-form-container-content]\" />\n</ng-template>\n", styles: [":host{display:flex;flex:1 1 auto;flex-direction:column}:host ::slotted([si-form-container-message]),:host ::ng-deep [si-form-container-message]{max-inline-size:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-container-edit-help{text-decoration:underline;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: SiResponsiveContainerDirective, selector: "[siResponsiveContainer]", inputs: ["resizeThrottle", "breakpoints"], exportAs: ["siResponsiveContainer"] }] });
|
|
124
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
125
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: SiFormContainerComponent, isStandalone: true, selector: "si-form-container", inputs: { form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, contentContainerBreakpoints: { classPropertyName: "contentContainerBreakpoints", publicName: "contentContainerBreakpoints", isSignal: true, isRequired: false, transformFunction: null }, disableContainerBreakpoints: { classPropertyName: "disableContainerBreakpoints", publicName: "disableContainerBreakpoints", isSignal: true, isRequired: false, transformFunction: null }, errorCodeTranslateKeyMap: { classPropertyName: "errorCodeTranslateKeyMap", publicName: "errorCodeTranslateKeyMap", isSignal: true, isRequired: false, transformFunction: null }, controlNameTranslateKeyMap: { classPropertyName: "controlNameTranslateKeyMap", publicName: "controlNameTranslateKeyMap", isSignal: true, isRequired: false, transformFunction: null }, disableErrorPrinting: { classPropertyName: "disableErrorPrinting", publicName: "disableErrorPrinting", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "style.--si-form-label-width": "labelWidth()" } }, ngImport: i0, template: "<div class=\"d-flex flex-column align-content-stretch flex-grow-1 flex-shrink-1\">\n @if (disableContainerBreakpoints() || hasParentContainer) {\n <div class=\"flex-grow-1 flex-shrink-1\">\n <ng-container *ngTemplateOutlet=\"contentTemplate\" />\n </div>\n } @else {\n <div\n class=\"flex-grow-1 flex-shrink-1\"\n siResponsiveContainer\n [breakpoints]=\"contentContainerBreakpoints()\"\n >\n <ng-container *ngTemplateOutlet=\"contentTemplate\" />\n </div>\n }\n\n @if (!readonly()) {\n <div class=\"d-flex flex-row flex-nowrap flex-grow-0 flex-shrink-0 py-4\">\n <div\n class=\"d-flex flex-grow-1 flex-shrink-1 justify-content-end text-end overflow-hidden mx-6 my-auto\"\n [class.text-success]=\"validFormContainerMessage\"\n [class.text-danger]=\"invalidFormContainerMessage\"\n >\n <ng-content select=\"[si-form-container-message]\" />\n </div>\n\n <div class=\"m-auto flex-grow-0 flex-shrink-0\">\n <ng-content select=\"[si-form-container-buttons]\" />\n </div>\n </div>\n }\n</div>\n\n<ng-template #contentTemplate>\n <ng-content select=\"[si-form-container-content]\" />\n</ng-template>\n", styles: [":host{display:flex;flex:1 1 auto;flex-direction:column}:host ::slotted([si-form-container-message]),:host ::ng-deep [si-form-container-message]{max-inline-size:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.form-container-edit-help{text-decoration:underline;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: SiResponsiveContainerDirective, selector: "[siResponsiveContainer]", inputs: ["resizeThrottle", "breakpoints"], exportAs: ["siResponsiveContainer"] }] });
|
|
290
126
|
}
|
|
291
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
127
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormContainerComponent, decorators: [{
|
|
292
128
|
type: Component,
|
|
293
129
|
args: [{ selector: 'si-form-container', imports: [NgTemplateOutlet, SiResponsiveContainerDirective], host: {
|
|
294
130
|
'[style.--si-form-label-width]': 'labelWidth()'
|
|
@@ -346,16 +182,16 @@ class SiFormFieldsetComponent {
|
|
|
346
182
|
unregisterFormItem(item) {
|
|
347
183
|
this.formItems.update(items => items.filter(i => i !== item));
|
|
348
184
|
}
|
|
349
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
350
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
185
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormFieldsetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
186
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: SiFormFieldsetComponent, isStandalone: true, selector: "si-form-fieldset", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: true, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, inline: { classPropertyName: "inline", publicName: "inline", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "role": "group" }, properties: { "style.--si-form-label-width": "labelWidth()", "attr.aria-labelledby": "this.labelId" }, classAttribute: "si-form-input" }, ngImport: i0, template: "<div class=\"form-label\" [class.required]=\"isRequired()\" [id]=\"labelId\">{{\n label() | translate\n}}</div>\n<div>\n <ng-content />\n @if (hasOnlyRadios()) {\n <div class=\"invalid-feedback\" [class.d-block]=\"touched()\">\n @for (error of errors(); track error) {\n <div>\n {{ error.message | translate: error.params }}\n </div>\n }\n </div>\n }\n</div>\n", styles: [":host.si-form-input{display:flex;flex-direction:column;margin-block-end:12px}:host.si-form-input .form-item-content{flex-grow:1}.form-label:empty{display:none}:host(.form-check):not(.form-check-inline){display:block}:host(.form-check):has(.form-check){padding-block:0}:host-context(.si-container-sm) :host.si-form-input,:host-context(.si-container-md) :host.si-form-input,:host-context(.si-container-lg) :host.si-form-input,:host-context(.si-container-xl) :host.si-form-input,:host-context(.si-container-xxl) :host.si-form-input{display:flex;flex-direction:row;align-items:center}:host-context(.si-container-sm) .form-label,:host-context(.si-container-md) .form-label,:host-context(.si-container-lg) .form-label,:host-context(.si-container-xl) .form-label,:host-context(.si-container-xxl) .form-label{align-self:start;padding-block:8px;padding-inline:16px;inline-size:var(--si-form-label-width, 16.6666666667%);line-height:1.143}:host-context(.si-container-sm) .form-label:empty,:host-context(.si-container-md) .form-label:empty,:host-context(.si-container-lg) .form-label:empty,:host-context(.si-container-xl) .form-label:empty,:host-context(.si-container-xxl) .form-label:empty{display:block}:host-context(.si-container-sm) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-md) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-lg) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-xl) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-xxl) :host-context(si-form-fieldset) .form-label{padding-block:2px 0}:host-context(.si-container-sm) :host(.form-check) .form-label,:host-context(.si-container-md) :host(.form-check) .form-label,:host-context(.si-container-lg) :host(.form-check) .form-label,:host-context(.si-container-xl) :host(.form-check) .form-label,:host-context(.si-container-xxl) :host(.form-check) .form-label{padding-block:2px}\n"], dependencies: [{ kind: "pipe", type: SiTranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
351
187
|
}
|
|
352
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
188
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormFieldsetComponent, decorators: [{
|
|
353
189
|
type: Component,
|
|
354
190
|
args: [{ selector: 'si-form-fieldset', imports: [SiTranslatePipe], changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
355
191
|
role: 'group',
|
|
356
192
|
class: 'si-form-input',
|
|
357
193
|
'[style.--si-form-label-width]': 'labelWidth()'
|
|
358
|
-
}, template: "<div class=\"
|
|
194
|
+
}, template: "<div class=\"form-label\" [class.required]=\"isRequired()\" [id]=\"labelId\">{{\n label() | translate\n}}</div>\n<div>\n <ng-content />\n @if (hasOnlyRadios()) {\n <div class=\"invalid-feedback\" [class.d-block]=\"touched()\">\n @for (error of errors(); track error) {\n <div>\n {{ error.message | translate: error.params }}\n </div>\n }\n </div>\n }\n</div>\n", styles: [":host.si-form-input{display:flex;flex-direction:column;margin-block-end:12px}:host.si-form-input .form-item-content{flex-grow:1}.form-label:empty{display:none}:host(.form-check):not(.form-check-inline){display:block}:host(.form-check):has(.form-check){padding-block:0}:host-context(.si-container-sm) :host.si-form-input,:host-context(.si-container-md) :host.si-form-input,:host-context(.si-container-lg) :host.si-form-input,:host-context(.si-container-xl) :host.si-form-input,:host-context(.si-container-xxl) :host.si-form-input{display:flex;flex-direction:row;align-items:center}:host-context(.si-container-sm) .form-label,:host-context(.si-container-md) .form-label,:host-context(.si-container-lg) .form-label,:host-context(.si-container-xl) .form-label,:host-context(.si-container-xxl) .form-label{align-self:start;padding-block:8px;padding-inline:16px;inline-size:var(--si-form-label-width, 16.6666666667%);line-height:1.143}:host-context(.si-container-sm) .form-label:empty,:host-context(.si-container-md) .form-label:empty,:host-context(.si-container-lg) .form-label:empty,:host-context(.si-container-xl) .form-label:empty,:host-context(.si-container-xxl) .form-label:empty{display:block}:host-context(.si-container-sm) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-md) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-lg) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-xl) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-xxl) :host-context(si-form-fieldset) .form-label{padding-block:2px 0}:host-context(.si-container-sm) :host(.form-check) .form-label,:host-context(.si-container-md) :host(.form-check) .form-label,:host-context(.si-container-lg) :host(.form-check) .form-label,:host-context(.si-container-xl) :host(.form-check) .form-label,:host-context(.si-container-xxl) :host(.form-check) .form-label{padding-block:2px}\n"] }]
|
|
359
195
|
}], propDecorators: { labelId: [{
|
|
360
196
|
type: HostBinding,
|
|
361
197
|
args: ['attr.aria-labelledby']
|
|
@@ -367,6 +203,103 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.6", ngImpor
|
|
|
367
203
|
*/
|
|
368
204
|
const SI_FORM_ITEM_CONTROL = new InjectionToken('si.form-item.control');
|
|
369
205
|
|
|
206
|
+
/**
|
|
207
|
+
* Copyright (c) Siemens 2016 - 2025
|
|
208
|
+
* SPDX-License-Identifier: MIT
|
|
209
|
+
*/
|
|
210
|
+
/**
|
|
211
|
+
* Creates the map of default error resolver.
|
|
212
|
+
* This is a function as $localize requires an injection context.
|
|
213
|
+
*
|
|
214
|
+
* @internal
|
|
215
|
+
*/
|
|
216
|
+
const buildDefaults = () => ({
|
|
217
|
+
min: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.MIN:The value is too small`),
|
|
218
|
+
max: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.MAX:The value is too large.`),
|
|
219
|
+
required: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.REQUIRED:A value is required.`),
|
|
220
|
+
requiredTrue: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.REQUIRED_TRUE:The value should be true.`),
|
|
221
|
+
email: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.EMAIL:The email is not valid.`),
|
|
222
|
+
minlength: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.MIN_LENGTH:The minimum number of characters is not met.`),
|
|
223
|
+
maxlength: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.MAX_LENGTH:A maximum number of characters is exceeded.`),
|
|
224
|
+
ipv4Address: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.IPV4:Invalid IPv4 address.`),
|
|
225
|
+
ipv6Address: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.IPV6:Invalid IPv6 address.`),
|
|
226
|
+
pattern: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.PATTERN:The value does not match the predefined pattern.`),
|
|
227
|
+
numberFormat: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.NUMBER_FORMAT:The value is not a valid number.`),
|
|
228
|
+
dateFormat: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.DATE_FORMAT:Invalid date format.`),
|
|
229
|
+
maxDate: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.MAX_DATE:The date is too far in the future.`),
|
|
230
|
+
minDate: t(() => $localize `:@@SI_FORM_CONTAINER.ERROR.MIN_DATE:The date is too far in the past.`)
|
|
231
|
+
});
|
|
232
|
+
/**
|
|
233
|
+
* A service to resolve the validation error of an Angular control to a message or translation key.
|
|
234
|
+
*
|
|
235
|
+
* It can be provided using {@link provideFormValidationErrorMapper}.
|
|
236
|
+
* If not provided, there will be a default instance in the root injector using only the default keys.
|
|
237
|
+
*
|
|
238
|
+
* There can be multiple instances to support providing in a lazy loaded module.
|
|
239
|
+
* If the service cannot find a message, it will try to resolve it using a parent service if available.
|
|
240
|
+
*
|
|
241
|
+
* @internal
|
|
242
|
+
*/
|
|
243
|
+
class SiFormValidationErrorService {
|
|
244
|
+
errorMapper;
|
|
245
|
+
parent = inject(SiFormValidationErrorService, {
|
|
246
|
+
optional: true,
|
|
247
|
+
skipSelf: true
|
|
248
|
+
});
|
|
249
|
+
// eslint-disable-next-line @angular-eslint/prefer-inject
|
|
250
|
+
constructor(errorMapper) {
|
|
251
|
+
this.errorMapper = errorMapper;
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Resolves the provided form errors to a list of {@link SiFormError}.
|
|
255
|
+
* To resolution order is:
|
|
256
|
+
* 1. componentMapper
|
|
257
|
+
* 2. containerMapper using the controlName
|
|
258
|
+
* 3. containerMapper without controlName
|
|
259
|
+
* 4. errorMapper of the service using the controlName
|
|
260
|
+
* 5. errorMapper of the service
|
|
261
|
+
* 6: parent service
|
|
262
|
+
*/
|
|
263
|
+
resolveErrors(controlName, errors, componentMapper, containerMapper) {
|
|
264
|
+
if (!errors) {
|
|
265
|
+
return [];
|
|
266
|
+
}
|
|
267
|
+
/*
|
|
268
|
+
* Converts the angular error object (like: {required: true, minLength: {actualLength: 1, requiredLength: 3}})
|
|
269
|
+
* to SiFormError[].
|
|
270
|
+
* Therefore, the error key is look up in the error mappers.
|
|
271
|
+
* If it can be resolved, the error will be printed using the resolved text.
|
|
272
|
+
*/
|
|
273
|
+
return Object.entries(errors).map(([key, params]) => this.resolveError(key, controlName, params, componentMapper, containerMapper));
|
|
274
|
+
}
|
|
275
|
+
resolveError(key, controlName, params, componentMapper, containerMapper) {
|
|
276
|
+
return (this.resolveMessage(key, controlName, params, componentMapper) ??
|
|
277
|
+
this.resolveMessage(key, controlName, params, containerMapper) ??
|
|
278
|
+
this.resolveMessage(key, controlName, params, this.errorMapper) ??
|
|
279
|
+
this.parent?.resolveError(key, controlName, params) ?? { key, params });
|
|
280
|
+
}
|
|
281
|
+
resolveMessage(key, controlName, params, mapper) {
|
|
282
|
+
if (!mapper) {
|
|
283
|
+
return undefined;
|
|
284
|
+
}
|
|
285
|
+
const resolver = mapper[`${controlName}.${key}`] ?? mapper[key];
|
|
286
|
+
if (resolver) {
|
|
287
|
+
const message = typeof resolver === 'function' ? resolver(params) : resolver;
|
|
288
|
+
return message ? { key, message, params } : undefined;
|
|
289
|
+
}
|
|
290
|
+
return undefined;
|
|
291
|
+
}
|
|
292
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormValidationErrorService, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
|
|
293
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormValidationErrorService, providedIn: 'root', useFactory: () => new SiFormValidationErrorService(buildDefaults()) });
|
|
294
|
+
}
|
|
295
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormValidationErrorService, decorators: [{
|
|
296
|
+
type: Injectable,
|
|
297
|
+
args: [{
|
|
298
|
+
providedIn: 'root',
|
|
299
|
+
useFactory: () => new SiFormValidationErrorService(buildDefaults())
|
|
300
|
+
}]
|
|
301
|
+
}], ctorParameters: () => [{ type: undefined }] });
|
|
302
|
+
|
|
370
303
|
/**
|
|
371
304
|
* This will be used by the `si-form-item` to create a form item control if none is provided.
|
|
372
305
|
* This is typically the case for native form controls like `input`, `textarea` and `select`.
|
|
@@ -414,8 +347,6 @@ class SiFormFieldNativeControl {
|
|
|
414
347
|
* SPDX-License-Identifier: MIT
|
|
415
348
|
*/
|
|
416
349
|
class SiFormItemComponent {
|
|
417
|
-
/** @deprecated property has longer an effect. SiFormItem detects IDs automatically */
|
|
418
|
-
inputId;
|
|
419
350
|
/**
|
|
420
351
|
* The label to be displayed in the form item.
|
|
421
352
|
* It will be translated if a translation key is available.
|
|
@@ -431,12 +362,6 @@ class SiFormItemComponent {
|
|
|
431
362
|
* @example labelWidth="100px"
|
|
432
363
|
*/
|
|
433
364
|
labelWidth = input();
|
|
434
|
-
/**
|
|
435
|
-
* @deprecated This input has no effect and can be removed.
|
|
436
|
-
*
|
|
437
|
-
* @defaultValue false
|
|
438
|
-
*/
|
|
439
|
-
readonly = false;
|
|
440
365
|
/**
|
|
441
366
|
* Disables the automatic error printing. Error printing will be enabled by default in v46.
|
|
442
367
|
*
|
|
@@ -461,8 +386,6 @@ class SiFormItemComponent {
|
|
|
461
386
|
requiredValidator = contentChild(RequiredValidator, { descendants: true });
|
|
462
387
|
/** @internal */
|
|
463
388
|
errors = signal([]);
|
|
464
|
-
/** @deprecated Remove with v48 */
|
|
465
|
-
isLegacyMode = signal(false);
|
|
466
389
|
fieldset = inject(SiFormFieldsetComponent, { optional: true });
|
|
467
390
|
container = inject(SiFormContainerComponent, { optional: true });
|
|
468
391
|
get formItemId() {
|
|
@@ -482,7 +405,6 @@ class SiFormItemComponent {
|
|
|
482
405
|
: (fieldControl?.errormessageId ?? null);
|
|
483
406
|
}
|
|
484
407
|
fieldControl = computed(() => this.fieldControlQuery() ?? this.fieldControlNative());
|
|
485
|
-
elementRef = inject(ElementRef);
|
|
486
408
|
validationErrorService = inject(SiFormValidationErrorService);
|
|
487
409
|
requiredTestControl = new FormControl('');
|
|
488
410
|
validator;
|
|
@@ -518,9 +440,6 @@ class SiFormItemComponent {
|
|
|
518
440
|
this.updateRequiredState();
|
|
519
441
|
this.updateValidationMessages();
|
|
520
442
|
}
|
|
521
|
-
ngAfterViewInit() {
|
|
522
|
-
this.isLegacyMode.set(!!this.elementRef.nativeElement.querySelector('.form-check'));
|
|
523
|
-
}
|
|
524
443
|
ngOnDestroy() {
|
|
525
444
|
this.fieldset?.unregisterFormItem(this);
|
|
526
445
|
}
|
|
@@ -558,10 +477,10 @@ class SiFormItemComponent {
|
|
|
558
477
|
}
|
|
559
478
|
}
|
|
560
479
|
}
|
|
561
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
562
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
480
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
481
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: SiFormItemComponent, isStandalone: true, selector: "si-form-item", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, disableErrorPrinting: { classPropertyName: "disableErrorPrinting", publicName: "disableErrorPrinting", isSignal: true, isRequired: false, transformFunction: null }, formErrorMapper: { classPropertyName: "formErrorMapper", publicName: "formErrorMapper", isSignal: true, isRequired: false, transformFunction: null }, requiredInput: { classPropertyName: "requiredInput", publicName: "required", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.required": "required()", "style.--si-form-label-width": "labelWidthCssVar()", "class.form-check": "fieldControl()?.isFormCheck", "class.form-check-inline": "fieldset?.inline()", "class.si-form-input": "!fieldset" } }, queries: [{ propertyName: "fieldControlQuery", first: true, predicate: SI_FORM_ITEM_CONTROL, descendants: true, isSignal: true }, { propertyName: "ngControl", first: true, predicate: NgControl, descendants: true, isSignal: true }, { propertyName: "controlElementRef", first: true, predicate: NgControl, descendants: true, read: ElementRef, isSignal: true }, { propertyName: "requiredValidator", first: true, predicate: RequiredValidator, descendants: true, isSignal: true }], usesOnChanges: true, ngImport: i0, template: "<!--Block the space if no form-field is provided. Otherwise it looks weird in the formly field inline representation.-->\n@if (fieldControl()?.isFormCheck && !fieldset) {\n <div class=\"form-label\"></div>\n}\n@if (fieldControl()?.isFormCheck) {\n <div class=\"form-item-content\">\n <ng-container [ngTemplateOutlet]=\"content\" />\n <ng-container [ngTemplateOutlet]=\"labelTemplate\" />\n <ng-container [ngTemplateOutlet]=\"feedbackTemplate\" />\n </div>\n} @else {\n <ng-container [ngTemplateOutlet]=\"labelTemplate\" />\n <div class=\"form-item-content\">\n <ng-container [ngTemplateOutlet]=\"content\" />\n <ng-container [ngTemplateOutlet]=\"feedbackTemplate\" />\n </div>\n}\n\n<ng-template #labelTemplate>\n @if (label()) {\n @let labeledBy = formItemLabelledBy;\n @if (labeledBy) {\n <span\n class=\"text-break\"\n [id]=\"labeledBy\"\n [class.form-label]=\"!fieldControl()?.isFormCheck\"\n [class.form-check-label]=\"fieldControl()?.isFormCheck\"\n [class.required]=\"required() && !this.fieldset?.hasOnlyRadios()\"\n >{{ label()! | translate }}</span\n >\n } @else {\n <label\n class=\"text-break\"\n [for]=\"formItemId\"\n [class.form-label]=\"!fieldControl()?.isFormCheck\"\n [class.form-check-label]=\"fieldControl()?.isFormCheck\"\n [class.required]=\"required() && !this.fieldset?.hasOnlyRadios()\"\n >{{ label()! | translate }}</label\n >\n }\n }\n</ng-template>\n<ng-template #feedbackTemplate>\n @if (printErrors() && !fieldset?.hasOnlyRadios()) {\n <div class=\"invalid-feedback\" [attr.id]=\"formItemErrormessageId\">\n @for (error of errors(); track error.key) {\n <div>\n {{ error.message | translate: error.params }}\n </div>\n }\n </div>\n }\n <ng-content select=\".warning-feedback, .info-feedback, .invalid-feedback\" />\n</ng-template>\n<ng-template #content>\n <ng-content />\n</ng-template>\n", styles: [":host.si-form-input{display:flex;flex-direction:column;margin-block-end:12px}:host.si-form-input .form-item-content{flex-grow:1}.form-label:empty{display:none}:host(.form-check):not(.form-check-inline){display:block}:host(.form-check):has(.form-check){padding-block:0}:host-context(.si-container-sm) :host.si-form-input,:host-context(.si-container-md) :host.si-form-input,:host-context(.si-container-lg) :host.si-form-input,:host-context(.si-container-xl) :host.si-form-input,:host-context(.si-container-xxl) :host.si-form-input{display:flex;flex-direction:row;align-items:center}:host-context(.si-container-sm) .form-label,:host-context(.si-container-md) .form-label,:host-context(.si-container-lg) .form-label,:host-context(.si-container-xl) .form-label,:host-context(.si-container-xxl) .form-label{align-self:start;padding-block:8px;padding-inline:16px;inline-size:var(--si-form-label-width, 16.6666666667%);line-height:1.143}:host-context(.si-container-sm) .form-label:empty,:host-context(.si-container-md) .form-label:empty,:host-context(.si-container-lg) .form-label:empty,:host-context(.si-container-xl) .form-label:empty,:host-context(.si-container-xxl) .form-label:empty{display:block}:host-context(.si-container-sm) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-md) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-lg) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-xl) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-xxl) :host-context(si-form-fieldset) .form-label{padding-block:2px 0}:host-context(.si-container-sm) :host(.form-check) .form-label,:host-context(.si-container-md) :host(.form-check) .form-label,:host-context(.si-container-lg) :host(.form-check) .form-label,:host-context(.si-container-xl) :host(.form-check) .form-label,:host-context(.si-container-xxl) :host(.form-check) .form-label{padding-block:2px}\n"], dependencies: [{ kind: "pipe", type: SiTranslatePipe, name: "translate" }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
563
482
|
}
|
|
564
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
483
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormItemComponent, decorators: [{
|
|
565
484
|
type: Component,
|
|
566
485
|
args: [{ selector: 'si-form-item', imports: [SiTranslatePipe, NgTemplateOutlet], changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
567
486
|
'[class.required]': 'required()',
|
|
@@ -569,13 +488,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.6", ngImpor
|
|
|
569
488
|
'[class.form-check]': 'fieldControl()?.isFormCheck',
|
|
570
489
|
'[class.form-check-inline]': 'fieldset?.inline()',
|
|
571
490
|
'[class.si-form-input]': '!fieldset'
|
|
572
|
-
}, template: "
|
|
573
|
-
}]
|
|
574
|
-
type: Input
|
|
575
|
-
}], readonly: [{
|
|
576
|
-
type: Input,
|
|
577
|
-
args: [{ transform: booleanAttribute }]
|
|
578
|
-
}] } });
|
|
491
|
+
}, template: "<!--Block the space if no form-field is provided. Otherwise it looks weird in the formly field inline representation.-->\n@if (fieldControl()?.isFormCheck && !fieldset) {\n <div class=\"form-label\"></div>\n}\n@if (fieldControl()?.isFormCheck) {\n <div class=\"form-item-content\">\n <ng-container [ngTemplateOutlet]=\"content\" />\n <ng-container [ngTemplateOutlet]=\"labelTemplate\" />\n <ng-container [ngTemplateOutlet]=\"feedbackTemplate\" />\n </div>\n} @else {\n <ng-container [ngTemplateOutlet]=\"labelTemplate\" />\n <div class=\"form-item-content\">\n <ng-container [ngTemplateOutlet]=\"content\" />\n <ng-container [ngTemplateOutlet]=\"feedbackTemplate\" />\n </div>\n}\n\n<ng-template #labelTemplate>\n @if (label()) {\n @let labeledBy = formItemLabelledBy;\n @if (labeledBy) {\n <span\n class=\"text-break\"\n [id]=\"labeledBy\"\n [class.form-label]=\"!fieldControl()?.isFormCheck\"\n [class.form-check-label]=\"fieldControl()?.isFormCheck\"\n [class.required]=\"required() && !this.fieldset?.hasOnlyRadios()\"\n >{{ label()! | translate }}</span\n >\n } @else {\n <label\n class=\"text-break\"\n [for]=\"formItemId\"\n [class.form-label]=\"!fieldControl()?.isFormCheck\"\n [class.form-check-label]=\"fieldControl()?.isFormCheck\"\n [class.required]=\"required() && !this.fieldset?.hasOnlyRadios()\"\n >{{ label()! | translate }}</label\n >\n }\n }\n</ng-template>\n<ng-template #feedbackTemplate>\n @if (printErrors() && !fieldset?.hasOnlyRadios()) {\n <div class=\"invalid-feedback\" [attr.id]=\"formItemErrormessageId\">\n @for (error of errors(); track error.key) {\n <div>\n {{ error.message | translate: error.params }}\n </div>\n }\n </div>\n }\n <ng-content select=\".warning-feedback, .info-feedback, .invalid-feedback\" />\n</ng-template>\n<ng-template #content>\n <ng-content />\n</ng-template>\n", styles: [":host.si-form-input{display:flex;flex-direction:column;margin-block-end:12px}:host.si-form-input .form-item-content{flex-grow:1}.form-label:empty{display:none}:host(.form-check):not(.form-check-inline){display:block}:host(.form-check):has(.form-check){padding-block:0}:host-context(.si-container-sm) :host.si-form-input,:host-context(.si-container-md) :host.si-form-input,:host-context(.si-container-lg) :host.si-form-input,:host-context(.si-container-xl) :host.si-form-input,:host-context(.si-container-xxl) :host.si-form-input{display:flex;flex-direction:row;align-items:center}:host-context(.si-container-sm) .form-label,:host-context(.si-container-md) .form-label,:host-context(.si-container-lg) .form-label,:host-context(.si-container-xl) .form-label,:host-context(.si-container-xxl) .form-label{align-self:start;padding-block:8px;padding-inline:16px;inline-size:var(--si-form-label-width, 16.6666666667%);line-height:1.143}:host-context(.si-container-sm) .form-label:empty,:host-context(.si-container-md) .form-label:empty,:host-context(.si-container-lg) .form-label:empty,:host-context(.si-container-xl) .form-label:empty,:host-context(.si-container-xxl) .form-label:empty{display:block}:host-context(.si-container-sm) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-md) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-lg) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-xl) :host-context(si-form-fieldset) .form-label,:host-context(.si-container-xxl) :host-context(si-form-fieldset) .form-label{padding-block:2px 0}:host-context(.si-container-sm) :host(.form-check) .form-label,:host-context(.si-container-md) :host(.form-check) .form-label,:host-context(.si-container-lg) :host(.form-check) .form-label,:host-context(.si-container-xl) :host(.form-check) .form-label,:host-context(.si-container-xxl) :host(.form-check) .form-label{padding-block:2px}\n"] }]
|
|
492
|
+
}] });
|
|
579
493
|
|
|
580
494
|
/**
|
|
581
495
|
* Copyright (c) Siemens 2016 - 2025
|
|
@@ -584,14 +498,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.6", ngImpor
|
|
|
584
498
|
const SI_FORM_VALIDATION_TOOLTIP_DATA = new InjectionToken('SiFormValidationTooltipData');
|
|
585
499
|
class SiFormValidationTooltipComponent {
|
|
586
500
|
errors = inject(SI_FORM_VALIDATION_TOOLTIP_DATA);
|
|
587
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
588
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
501
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormValidationTooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
502
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.6", type: SiFormValidationTooltipComponent, isStandalone: true, selector: "si-form-validation-tooltip", host: { classAttribute: "d-flex flex-column gap-2" }, ngImport: i0, template: `
|
|
589
503
|
@for (error of errors(); track error.key) {
|
|
590
504
|
<div>{{ error.message | translate: error.params }}</div>
|
|
591
505
|
}
|
|
592
506
|
`, isInline: true, dependencies: [{ kind: "pipe", type: SiTranslatePipe, name: "translate" }] });
|
|
593
507
|
}
|
|
594
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
508
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormValidationTooltipComponent, decorators: [{
|
|
595
509
|
type: Component,
|
|
596
510
|
args: [{
|
|
597
511
|
selector: 'si-form-validation-tooltip',
|
|
@@ -686,10 +600,10 @@ class SiFormValidationTooltipDirective {
|
|
|
686
600
|
this.tooltipRef?.destroy();
|
|
687
601
|
this.tooltipRef = undefined;
|
|
688
602
|
}
|
|
689
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
690
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
603
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormValidationTooltipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
604
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.6", type: SiFormValidationTooltipDirective, isStandalone: true, selector: "[siFormValidationTooltip]", inputs: { formErrorMapper: { classPropertyName: "formErrorMapper", publicName: "formErrorMapper", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "focus": "increaseActivation()", "mouseenter": "increaseActivation()", "blur": "decreaseActivation()", "mouseleave": "decreaseActivation()" }, properties: { "attr.aria-describedby": "describedBy" } }, providers: [SiTooltipService], ngImport: i0 });
|
|
691
605
|
}
|
|
692
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
606
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormValidationTooltipDirective, decorators: [{
|
|
693
607
|
type: Directive,
|
|
694
608
|
args: [{
|
|
695
609
|
selector: '[siFormValidationTooltip]',
|
|
@@ -712,50 +626,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.6", ngImpor
|
|
|
712
626
|
args: ['mouseleave']
|
|
713
627
|
}] } });
|
|
714
628
|
|
|
715
|
-
/**
|
|
716
|
-
* Copyright (c) Siemens 2016 - 2025
|
|
717
|
-
* SPDX-License-Identifier: MIT
|
|
718
|
-
*/
|
|
719
|
-
/** @deprecated This directive is no longer needed. {@link SiFormItemComponent} will detect native controls automatically. */
|
|
720
|
-
class SiFormItemControlInputDirective {
|
|
721
|
-
static idCounter = 0;
|
|
722
|
-
id = `__si-form-element-control-input-${SiFormItemControlInputDirective.idCounter++}`;
|
|
723
|
-
set type(value) {
|
|
724
|
-
this.isFormCheck = value === 'checkbox' || value === 'radio';
|
|
725
|
-
this.formControlClass = this.isFormCheck ? 'form-check-input' : 'form-control';
|
|
726
|
-
}
|
|
727
|
-
formControlClass = 'form-control';
|
|
728
|
-
/**
|
|
729
|
-
* Indicate the form item is a checkbox or radio input.
|
|
730
|
-
* @defaultValue false
|
|
731
|
-
*/
|
|
732
|
-
isFormCheck = false;
|
|
733
|
-
/** @internal */
|
|
734
|
-
errormessageId = `${this.id}-errormessage`;
|
|
735
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.6", ngImport: i0, type: SiFormItemControlInputDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
736
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.6", type: SiFormItemControlInputDirective, isStandalone: true, selector: "[siFormItemControl]", inputs: { id: "id", type: "type" }, host: { properties: { "id": "this.id", "class": "this.formControlClass", "attr.aria-describedby": "this.errormessageId" } }, providers: [{ provide: SI_FORM_ITEM_CONTROL, useExisting: SiFormItemControlInputDirective }], ngImport: i0 });
|
|
737
|
-
}
|
|
738
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.6", ngImport: i0, type: SiFormItemControlInputDirective, decorators: [{
|
|
739
|
-
type: Directive,
|
|
740
|
-
args: [{
|
|
741
|
-
selector: '[siFormItemControl]',
|
|
742
|
-
providers: [{ provide: SI_FORM_ITEM_CONTROL, useExisting: SiFormItemControlInputDirective }]
|
|
743
|
-
}]
|
|
744
|
-
}], propDecorators: { id: [{
|
|
745
|
-
type: Input
|
|
746
|
-
}, {
|
|
747
|
-
type: HostBinding,
|
|
748
|
-
args: ['id']
|
|
749
|
-
}], type: [{
|
|
750
|
-
type: Input
|
|
751
|
-
}], formControlClass: [{
|
|
752
|
-
type: HostBinding,
|
|
753
|
-
args: ['class']
|
|
754
|
-
}], errormessageId: [{
|
|
755
|
-
type: HostBinding,
|
|
756
|
-
args: ['attr.aria-describedby']
|
|
757
|
-
}] } });
|
|
758
|
-
|
|
759
629
|
/**
|
|
760
630
|
* The error mapper is used to resolve an angular validation error to a {@link TranslatableString}.
|
|
761
631
|
* It will be merged with already existing error mappers.
|
|
@@ -784,31 +654,15 @@ class SiFormModule {
|
|
|
784
654
|
providers: [provideFormValidationErrorMapper(validationErrorMapper)]
|
|
785
655
|
};
|
|
786
656
|
}
|
|
787
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
788
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
789
|
-
|
|
790
|
-
SiFormItemComponent,
|
|
791
|
-
SiFormItemControlInputDirective], exports: [SiFormContainerComponent,
|
|
792
|
-
SiFormFieldsetComponent,
|
|
793
|
-
SiFormItemComponent,
|
|
794
|
-
SiFormItemControlInputDirective] });
|
|
795
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.6", ngImport: i0, type: SiFormModule });
|
|
657
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
658
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.6", ngImport: i0, type: SiFormModule, imports: [SiFormContainerComponent, SiFormFieldsetComponent, SiFormItemComponent], exports: [SiFormContainerComponent, SiFormFieldsetComponent, SiFormItemComponent] });
|
|
659
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormModule });
|
|
796
660
|
}
|
|
797
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
661
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.6", ngImport: i0, type: SiFormModule, decorators: [{
|
|
798
662
|
type: NgModule,
|
|
799
663
|
args: [{
|
|
800
|
-
imports: [
|
|
801
|
-
|
|
802
|
-
SiFormFieldsetComponent,
|
|
803
|
-
SiFormItemComponent,
|
|
804
|
-
SiFormItemControlInputDirective
|
|
805
|
-
],
|
|
806
|
-
exports: [
|
|
807
|
-
SiFormContainerComponent,
|
|
808
|
-
SiFormFieldsetComponent,
|
|
809
|
-
SiFormItemComponent,
|
|
810
|
-
SiFormItemControlInputDirective
|
|
811
|
-
]
|
|
664
|
+
imports: [SiFormContainerComponent, SiFormFieldsetComponent, SiFormItemComponent],
|
|
665
|
+
exports: [SiFormContainerComponent, SiFormFieldsetComponent, SiFormItemComponent]
|
|
812
666
|
}]
|
|
813
667
|
}] });
|
|
814
668
|
|
|
@@ -821,5 +675,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.6", ngImpor
|
|
|
821
675
|
* Generated bundle index. Do not edit.
|
|
822
676
|
*/
|
|
823
677
|
|
|
824
|
-
export { SI_FORM_ITEM_CONTROL, SiFormContainerComponent, SiFormFieldsetComponent, SiFormItemComponent,
|
|
678
|
+
export { SI_FORM_ITEM_CONTROL, SiFormContainerComponent, SiFormFieldsetComponent, SiFormItemComponent, SiFormModule, SiFormValidationTooltipDirective, provideFormValidationErrorMapper };
|
|
825
679
|
//# sourceMappingURL=siemens-element-ng-form.mjs.map
|