@siemens/element-ng 49.16.0 → 51.0.0-rc.10
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/README.md +1 -1
- package/fesm2022/siemens-element-ng-about.mjs +41 -25
- package/fesm2022/siemens-element-ng-about.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-accordion.mjs +59 -41
- package/fesm2022/siemens-element-ng-accordion.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-action-modal.mjs +83 -53
- package/fesm2022/siemens-element-ng-action-modal.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-ag-grid.mjs +143 -148
- package/fesm2022/siemens-element-ng-ag-grid.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-application-header.mjs +180 -188
- package/fesm2022/siemens-element-ng-application-header.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs +34 -28
- package/fesm2022/siemens-element-ng-auto-collapsable-list.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-autocomplete.mjs +27 -22
- package/fesm2022/siemens-element-ng-autocomplete.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-avatar.mjs +34 -24
- package/fesm2022/siemens-element-ng-avatar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-badge.mjs +9 -8
- package/fesm2022/siemens-element-ng-badge.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-breadcrumb-router.mjs +17 -14
- package/fesm2022/siemens-element-ng-breadcrumb-router.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-breadcrumb.mjs +21 -17
- package/fesm2022/siemens-element-ng-breadcrumb.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-card.mjs +72 -47
- package/fesm2022/siemens-element-ng-card.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-carousel.mjs +58 -34
- package/fesm2022/siemens-element-ng-carousel.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-chat-messages.mjs +323 -215
- package/fesm2022/siemens-element-ng-chat-messages.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-circle-status.mjs +39 -25
- package/fesm2022/siemens-element-ng-circle-status.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-color-picker.mjs +44 -34
- package/fesm2022/siemens-element-ng-color-picker.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-column-selection-dialog.mjs +58 -37
- package/fesm2022/siemens-element-ng-column-selection-dialog.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-common.mjs +22 -22
- package/fesm2022/siemens-element-ng-common.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-connection-strength.mjs +14 -12
- package/fesm2022/siemens-element-ng-connection-strength.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-content-action-bar.mjs +37 -28
- package/fesm2022/siemens-element-ng-content-action-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-copyright-notice.mjs +19 -14
- package/fesm2022/siemens-element-ng-copyright-notice.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-dashboard.mjs +337 -223
- package/fesm2022/siemens-element-ng-dashboard.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-datatable.mjs +12 -15
- package/fesm2022/siemens-element-ng-datatable.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-date-range-filter.mjs +126 -76
- package/fesm2022/siemens-element-ng-date-range-filter.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-datepicker.mjs +393 -251
- package/fesm2022/siemens-element-ng-datepicker.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-electron-titlebar.mjs +22 -17
- package/fesm2022/siemens-element-ng-electron-titlebar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-empty-state.mjs +15 -12
- package/fesm2022/siemens-element-ng-empty-state.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-file-uploader.mjs +105 -91
- package/fesm2022/siemens-element-ng-file-uploader.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-filter-bar.mjs +33 -25
- package/fesm2022/siemens-element-ng-filter-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-filtered-search.mjs +274 -165
- package/fesm2022/siemens-element-ng-filtered-search.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-footer.mjs +12 -10
- package/fesm2022/siemens-element-ng-footer.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-form.mjs +361 -116
- package/fesm2022/siemens-element-ng-form.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-formly-legacy.mjs +99 -0
- package/fesm2022/siemens-element-ng-formly-legacy.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-formly.mjs +224 -318
- package/fesm2022/siemens-element-ng-formly.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-header-dropdown.mjs +40 -30
- package/fesm2022/siemens-element-ng-header-dropdown.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-help-button.mjs +6 -6
- package/fesm2022/siemens-element-ng-help-button.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-icon.mjs +56 -57
- package/fesm2022/siemens-element-ng-icon.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-info-page.mjs +17 -11
- package/fesm2022/siemens-element-ng-info-page.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-inline-notification.mjs +19 -14
- package/fesm2022/siemens-element-ng-inline-notification.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-ip-input.mjs +19 -15
- package/fesm2022/siemens-element-ng-ip-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-landing-page.mjs +121 -75
- package/fesm2022/siemens-element-ng-landing-page.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-language-switcher.mjs +16 -12
- package/fesm2022/siemens-element-ng-language-switcher.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-link.mjs +31 -21
- package/fesm2022/siemens-element-ng-link.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-list-details.mjs +132 -66
- package/fesm2022/siemens-element-ng-list-details.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-loading-spinner.mjs +51 -64
- package/fesm2022/siemens-element-ng-loading-spinner.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-localization.mjs +14 -12
- package/fesm2022/siemens-element-ng-localization.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-main-detail-container.mjs +116 -51
- package/fesm2022/siemens-element-ng-main-detail-container.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-maplibre.mjs +401 -0
- package/fesm2022/siemens-element-ng-maplibre.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown-directives-tabs.mjs +70 -0
- package/fesm2022/siemens-element-ng-markdown-directives-tabs.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-citations.mjs +215 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-citations.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-katex.mjs +76 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-katex.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-mermaid.mjs +86 -0
- package/fesm2022/siemens-element-ng-markdown-extensions-mermaid.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown-hightlighter-highlightjs.mjs +130 -0
- package/fesm2022/siemens-element-ng-markdown-hightlighter-highlightjs.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-markdown.mjs +800 -0
- package/fesm2022/siemens-element-ng-markdown.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-menu.mjs +71 -57
- package/fesm2022/siemens-element-ng-menu.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-modal.mjs +14 -11
- package/fesm2022/siemens-element-ng-modal.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs +251 -206
- package/fesm2022/siemens-element-ng-navbar-vertical-next.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar-vertical.mjs +123 -86
- package/fesm2022/siemens-element-ng-navbar-vertical.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-navbar.mjs +72 -45
- package/fesm2022/siemens-element-ng-navbar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-notification-item.mjs +19 -11
- package/fesm2022/siemens-element-ng-notification-item.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-number-input.mjs +41 -29
- package/fesm2022/siemens-element-ng-number-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-pagination.mjs +31 -20
- package/fesm2022/siemens-element-ng-pagination.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-password-strength.mjs +33 -24
- package/fesm2022/siemens-element-ng-password-strength.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-password-toggle.mjs +19 -14
- package/fesm2022/siemens-element-ng-password-toggle.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-phone-number.mjs +144 -139
- package/fesm2022/siemens-element-ng-phone-number.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-photo-upload.mjs +85 -52
- package/fesm2022/siemens-element-ng-photo-upload.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-pills-input.mjs +56 -41
- package/fesm2022/siemens-element-ng-pills-input.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-popover-legacy.mjs +43 -28
- package/fesm2022/siemens-element-ng-popover-legacy.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-popover.mjs +35 -27
- package/fesm2022/siemens-element-ng-popover.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-progressbar.mjs +23 -16
- package/fesm2022/siemens-element-ng-progressbar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-resize-observer.mjs +32 -43
- package/fesm2022/siemens-element-ng-resize-observer.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-result-details-list.mjs +12 -10
- package/fesm2022/siemens-element-ng-result-details-list.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-search-bar.mjs +38 -37
- package/fesm2022/siemens-element-ng-search-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-select.mjs +265 -170
- package/fesm2022/siemens-element-ng-select.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-shadow-root.mjs +4 -4
- package/fesm2022/siemens-element-ng-shadow-root.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-side-panel.mjs +181 -104
- package/fesm2022/siemens-element-ng-side-panel.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-skip-links.mjs +21 -24
- package/fesm2022/siemens-element-ng-skip-links.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-slider.mjs +45 -30
- package/fesm2022/siemens-element-ng-slider.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-source-chip.mjs +79 -0
- package/fesm2022/siemens-element-ng-source-chip.mjs.map +1 -0
- package/fesm2022/siemens-element-ng-split.mjs +290 -306
- package/fesm2022/siemens-element-ng-split.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-status-bar.mjs +66 -52
- package/fesm2022/siemens-element-ng-status-bar.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-status-counter.mjs +15 -11
- package/fesm2022/siemens-element-ng-status-counter.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-status-toggle.mjs +26 -16
- package/fesm2022/siemens-element-ng-status-toggle.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-summary-chip.mjs +25 -16
- package/fesm2022/siemens-element-ng-summary-chip.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-summary-widget.mjs +27 -17
- package/fesm2022/siemens-element-ng-summary-widget.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-system-banner.mjs +13 -10
- package/fesm2022/siemens-element-ng-system-banner.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tabs-legacy.mjs +20 -17
- package/fesm2022/siemens-element-ng-tabs-legacy.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tabs.mjs +156 -131
- package/fesm2022/siemens-element-ng-tabs.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-theme.mjs +29 -6
- package/fesm2022/siemens-element-ng-theme.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-threshold.mjs +62 -42
- package/fesm2022/siemens-element-ng-threshold.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-toast-notification.mjs +59 -40
- package/fesm2022/siemens-element-ng-toast-notification.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tooltip.mjs +108 -82
- package/fesm2022/siemens-element-ng-tooltip.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tour.mjs +36 -19
- package/fesm2022/siemens-element-ng-tour.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-translate.mjs +0 -1
- package/fesm2022/siemens-element-ng-translate.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-tree-view.mjs +113 -84
- package/fesm2022/siemens-element-ng-tree-view.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-typeahead.mjs +69 -49
- package/fesm2022/siemens-element-ng-typeahead.mjs.map +1 -1
- package/fesm2022/siemens-element-ng-wizard.mjs +95 -54
- package/fesm2022/siemens-element-ng-wizard.mjs.map +1 -1
- package/formly-legacy/package.json +4 -0
- package/maplibre/package.json +4 -0
- package/maplibre/styles/_index.scss +1 -0
- package/maplibre/styles/maplibre-gl.scss +724 -0
- package/markdown/directives/tabs/package.json +4 -0
- package/markdown/extensions/citations/package.json +4 -0
- package/markdown/extensions/katex/package.json +4 -0
- package/markdown/extensions/mermaid/package.json +4 -0
- package/markdown/hightlighter/highlightjs/package.json +4 -0
- package/markdown/package.json +4 -0
- package/package.json +96 -25
- package/schematics/collection.json +5 -0
- package/schematics/{migrations/icon-path-migration → migrate-tabs-legacy}/index.js +1 -1
- package/schematics/migrate-tabs-legacy/migrate-tabs-legacy-rule.js +675 -0
- package/schematics/migrate-tabs-legacy/schema.json +14 -0
- package/schematics/migration.json +4 -4
- package/schematics/migrations/data/class-member-replacement.js +1 -19
- package/schematics/migrations/data/component-property-names.js +1 -25
- package/schematics/migrations/data/component-property-to-child.js +11 -0
- package/schematics/migrations/data/css-custom-properties.js +224 -0
- package/schematics/migrations/data/element-class-changes.js +116 -18
- package/schematics/migrations/data/element-migration-data.js +6 -0
- package/schematics/migrations/data/element-selectors.js +1 -9
- package/schematics/migrations/data/index.js +0 -4
- package/schematics/migrations/data/migration-test-data.js +49 -6
- package/schematics/migrations/data/provider-function-removals.js +7 -0
- package/schematics/migrations/data/symbol-removals.js +17 -7
- package/schematics/migrations/data/symbol-renaming.js +3 -44
- package/schematics/migrations/element-migration/element-migration.js +6 -6
- package/schematics/migrations/utilities/component-property-to-child.migration.js +73 -0
- package/schematics/migrations/utilities/css-custom-property.migration.js +51 -0
- package/schematics/migrations/utilities/element-class-change.migration.js +10 -5
- package/schematics/migrations/utilities/import-removal.js +39 -0
- package/schematics/migrations/utilities/index.js +4 -0
- package/schematics/migrations/utilities/provider-function-removal.migration.js +116 -0
- package/schematics/ng-update/index.js +1 -1
- package/schematics/ng-update/migrate-content-formatter.js +288 -0
- package/schematics/ng-update/migrate-list-details-units.js +86 -0
- package/schematics/ng-update/migrate-main-detail-units.js +89 -0
- package/schematics/ng-update/migrate-markdown-renderer.js +106 -0
- package/schematics/ng-update/migrate-spacers.js +32 -0
- package/schematics/ng-update/migrate-split-collapse.js +276 -0
- package/schematics/ng-update/migrate-split-scale.js +524 -0
- package/schematics/ng-update/migrate-split-sizes.js +107 -0
- package/schematics/ng-update/migrate-to-v51.js +35 -0
- package/schematics/utils/index.js +1 -0
- package/schematics/utils/template-edit-utils.js +35 -0
- package/schematics/utils/template-utils.js +31 -45
- package/source-chip/package.json +4 -0
- package/template-i18n.json +78 -47
- package/types/siemens-element-ng-application-header.d.ts +7 -33
- package/types/siemens-element-ng-avatar.d.ts +1 -1
- package/types/siemens-element-ng-breadcrumb.d.ts +1 -1
- package/types/siemens-element-ng-chat-messages.d.ts +118 -70
- package/types/siemens-element-ng-circle-status.d.ts +1 -1
- package/types/siemens-element-ng-content-action-bar.d.ts +1 -1
- package/types/siemens-element-ng-dashboard.d.ts +2 -2
- package/types/siemens-element-ng-datatable.d.ts +5 -56
- package/types/siemens-element-ng-date-range-filter.d.ts +1 -1
- package/types/siemens-element-ng-datepicker.d.ts +8 -15
- package/types/siemens-element-ng-electron-titlebar.d.ts +1 -1
- package/types/siemens-element-ng-file-uploader.d.ts +13 -31
- package/types/siemens-element-ng-filter-bar.d.ts +1 -1
- package/types/siemens-element-ng-filtered-search.d.ts +4 -4
- package/types/siemens-element-ng-form.d.ts +183 -44
- package/types/siemens-element-ng-formly-legacy.d.ts +40 -0
- package/types/siemens-element-ng-formly.d.ts +34 -167
- package/types/siemens-element-ng-icon.d.ts +2 -19
- package/types/siemens-element-ng-landing-page.d.ts +2 -2
- package/types/siemens-element-ng-list-details.d.ts +25 -3
- package/types/siemens-element-ng-loading-spinner.d.ts +11 -17
- package/types/siemens-element-ng-main-detail-container.d.ts +23 -3
- package/types/siemens-element-ng-maplibre.d.ts +190 -0
- package/types/siemens-element-ng-markdown-directives-tabs.d.ts +10 -0
- package/types/siemens-element-ng-markdown-extensions-citations.d.ts +11 -0
- package/types/siemens-element-ng-markdown-extensions-katex.d.ts +19 -0
- package/types/siemens-element-ng-markdown-extensions-mermaid.d.ts +11 -0
- package/types/siemens-element-ng-markdown-hightlighter-highlightjs.d.ts +48 -0
- package/types/siemens-element-ng-markdown.d.ts +367 -0
- package/types/siemens-element-ng-menu.d.ts +2 -0
- package/types/siemens-element-ng-navbar-vertical-next.d.ts +87 -39
- package/types/siemens-element-ng-navbar-vertical.d.ts +1 -1
- package/types/siemens-element-ng-navbar.d.ts +3 -3
- package/types/siemens-element-ng-notification-item.d.ts +12 -0
- package/types/siemens-element-ng-phone-number.d.ts +28 -10
- package/types/siemens-element-ng-photo-upload.d.ts +4 -4
- package/types/siemens-element-ng-resize-observer.d.ts +0 -17
- package/types/siemens-element-ng-search-bar.d.ts +2 -9
- package/types/siemens-element-ng-select.d.ts +32 -5
- package/types/siemens-element-ng-side-panel.d.ts +25 -11
- package/types/siemens-element-ng-source-chip.d.ts +53 -0
- package/types/siemens-element-ng-split.d.ts +101 -78
- package/types/siemens-element-ng-status-bar.d.ts +5 -13
- package/types/siemens-element-ng-status-counter.d.ts +1 -1
- package/types/siemens-element-ng-system-banner.d.ts +2 -2
- package/types/siemens-element-ng-tabs.d.ts +1 -2
- package/types/siemens-element-ng-theme.d.ts +12 -2
- package/types/siemens-element-ng-threshold.d.ts +1 -1
- package/types/siemens-element-ng-toast-notification.d.ts +0 -1
- package/types/siemens-element-ng-tooltip.d.ts +7 -7
- package/types/siemens-element-ng-translate.d.ts +35 -5
- package/types/siemens-element-ng-tree-view.d.ts +3 -0
- package/types/siemens-element-ng-wizard.d.ts +18 -3
- package/fesm2022/siemens-element-ng-icon-status.mjs +0 -46
- package/fesm2022/siemens-element-ng-icon-status.mjs.map +0 -1
- package/fesm2022/siemens-element-ng-markdown-renderer.mjs +0 -263
- package/fesm2022/siemens-element-ng-markdown-renderer.mjs.map +0 -1
- package/fesm2022/siemens-element-ng-sort-bar.mjs +0 -99
- package/fesm2022/siemens-element-ng-sort-bar.mjs.map +0 -1
- package/icon-status/package.json +0 -4
- package/markdown-renderer/package.json +0 -4
- package/schematics/migrations/icon-path-migration/icon-path-migration.js +0 -95
- package/schematics/ng-update/migrate-to-v49.js +0 -21
- package/schematics/vitest-setup.js +0 -5
- package/sort-bar/package.json +0 -4
- package/types/siemens-element-ng-icon-status.d.ts +0 -25
- package/types/siemens-element-ng-markdown-renderer.d.ts +0 -36
- package/types/siemens-element-ng-sort-bar.d.ts +0 -59
- /package/{LICENSE.md → LICENSE} +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject, ElementRef, input, booleanAttribute, output, signal,
|
|
2
|
+
import { inject, ElementRef, input, booleanAttribute, output, signal, Component, Injector, viewChild, contentChildren, linkedSignal, computed, untracked, afterNextRender, NgModule } from '@angular/core';
|
|
3
3
|
import { __decorate } from 'tslib';
|
|
4
4
|
import { FocusTrapFactory } from '@angular/cdk/a11y';
|
|
5
5
|
import { NgTemplateOutlet } from '@angular/common';
|
|
@@ -23,27 +23,44 @@ class SiWizardStepComponent {
|
|
|
23
23
|
*
|
|
24
24
|
* @defaultValue ''
|
|
25
25
|
*/
|
|
26
|
-
heading = input('',
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
26
|
+
heading = input('', /* @ts-ignore */
|
|
27
|
+
...(ngDevMode ? [{ debugName: "heading" }] : /* istanbul ignore next */ []));
|
|
28
|
+
/**
|
|
29
|
+
* Whether the step is valid and allows navigation to subsequent steps.
|
|
30
|
+
*
|
|
31
|
+
* @defaultValue true
|
|
32
|
+
*/
|
|
33
|
+
isValid = input(true, { ...(ngDevMode ? { debugName: "isValid" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
34
|
+
/**
|
|
35
|
+
* Whether the wizard navigates to the next step after emitting `next`.
|
|
36
|
+
*
|
|
37
|
+
* @defaultValue true
|
|
38
|
+
*/
|
|
39
|
+
isNextNavigable = input(true, { ...(ngDevMode ? { debugName: "isNextNavigable" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
40
|
+
/**
|
|
41
|
+
* Whether the step is shown as failed in the wizard navigation.
|
|
42
|
+
*
|
|
43
|
+
* @defaultValue false
|
|
44
|
+
*/
|
|
45
|
+
failed = input(false, { ...(ngDevMode ? { debugName: "failed" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
46
|
+
/** Emits when the user navigates forward from this step. */
|
|
33
47
|
next = output();
|
|
48
|
+
/** Emits when the user navigates back from this step. */
|
|
34
49
|
back = output();
|
|
50
|
+
/** Emits when the user completes the wizard from this step. */
|
|
35
51
|
save = output();
|
|
36
52
|
/**
|
|
37
53
|
* Whether this step is currently active or not.
|
|
38
54
|
* @defaultValue false
|
|
39
55
|
*/
|
|
40
|
-
isActive = signal(false,
|
|
41
|
-
|
|
42
|
-
static
|
|
56
|
+
isActive = signal(false, /* @ts-ignore */
|
|
57
|
+
...(ngDevMode ? [{ debugName: "isActive" }] : /* istanbul ignore next */ []));
|
|
58
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiWizardStepComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
59
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiWizardStepComponent, isStandalone: true, selector: "si-wizard-step", inputs: { heading: { classPropertyName: "heading", publicName: "heading", isSignal: true, isRequired: false, transformFunction: null }, isValid: { classPropertyName: "isValid", publicName: "isValid", isSignal: true, isRequired: false, transformFunction: null }, isNextNavigable: { classPropertyName: "isNextNavigable", publicName: "isNextNavigable", isSignal: true, isRequired: false, transformFunction: null }, failed: { classPropertyName: "failed", publicName: "failed", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { next: "next", back: "back", save: "save" }, ngImport: i0, template: "@if (isActive()) {\n <div class=\"h-100\">\n <ng-content />\n </div>\n}\n" });
|
|
43
60
|
}
|
|
44
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiWizardStepComponent, decorators: [{
|
|
45
62
|
type: Component,
|
|
46
|
-
args: [{ selector: 'si-wizard-step',
|
|
63
|
+
args: [{ selector: 'si-wizard-step', template: "@if (isActive()) {\n <div class=\"h-100\">\n <ng-content />\n </div>\n}\n" }]
|
|
47
64
|
}], propDecorators: { heading: [{ type: i0.Input, args: [{ isSignal: true, alias: "heading", required: false }] }], isValid: [{ type: i0.Input, args: [{ isSignal: true, alias: "isValid", required: false }] }], isNextNavigable: [{ type: i0.Input, args: [{ isSignal: true, alias: "isNextNavigable", required: false }] }], failed: [{ type: i0.Input, args: [{ isSignal: true, alias: "failed", required: false }] }], next: [{ type: i0.Output, args: ["next"] }], back: [{ type: i0.Output, args: ["back"] }], save: [{ type: i0.Output, args: ["save"] }] } });
|
|
48
65
|
|
|
49
66
|
class SiWizardComponent {
|
|
@@ -58,9 +75,12 @@ class SiWizardComponent {
|
|
|
58
75
|
textMeasureService = inject(TextMeasureService);
|
|
59
76
|
focusTrapFactory = inject(FocusTrapFactory);
|
|
60
77
|
injector = inject(Injector);
|
|
61
|
-
containerSteps = viewChild('containerSteps',
|
|
62
|
-
|
|
63
|
-
|
|
78
|
+
containerSteps = viewChild('containerSteps', /* @ts-ignore */
|
|
79
|
+
...(ngDevMode ? [{ debugName: "containerSteps" }] : /* istanbul ignore next */ []));
|
|
80
|
+
nextButton = viewChild('nextButton', /* @ts-ignore */
|
|
81
|
+
...(ngDevMode ? [{ debugName: "nextButton" }] : /* istanbul ignore next */ []));
|
|
82
|
+
saveButton = viewChild('saveButton', /* @ts-ignore */
|
|
83
|
+
...(ngDevMode ? [{ debugName: "saveButton" }] : /* istanbul ignore next */ []));
|
|
64
84
|
/**
|
|
65
85
|
* Description of back button.
|
|
66
86
|
*
|
|
@@ -69,7 +89,8 @@ class SiWizardComponent {
|
|
|
69
89
|
* t(() => $localize`:@@SI_WIZARD.BACK:Back`)
|
|
70
90
|
* ```
|
|
71
91
|
*/
|
|
72
|
-
backText = input(t(() => $localize `:@@SI_WIZARD.BACK:Back`),
|
|
92
|
+
backText = input(t(() => $localize `:@@SI_WIZARD.BACK:Back`), /* @ts-ignore */
|
|
93
|
+
...(ngDevMode ? [{ debugName: "backText" }] : /* istanbul ignore next */ []));
|
|
73
94
|
/**
|
|
74
95
|
* Description of next button.
|
|
75
96
|
*
|
|
@@ -78,13 +99,14 @@ class SiWizardComponent {
|
|
|
78
99
|
* t(() => $localize`:@@SI_WIZARD.NEXT:Next`)
|
|
79
100
|
* ```
|
|
80
101
|
*/
|
|
81
|
-
nextText = input(t(() => $localize `:@@SI_WIZARD.NEXT:Next`),
|
|
102
|
+
nextText = input(t(() => $localize `:@@SI_WIZARD.NEXT:Next`), /* @ts-ignore */
|
|
103
|
+
...(ngDevMode ? [{ debugName: "nextText" }] : /* istanbul ignore next */ []));
|
|
82
104
|
/**
|
|
83
105
|
* Hide the navigation buttons previous/next.
|
|
84
106
|
*
|
|
85
107
|
* @defaultValue false
|
|
86
108
|
*/
|
|
87
|
-
hideNavigation = input(false, { ...(ngDevMode ? { debugName: "hideNavigation" } : {}), transform: booleanAttribute });
|
|
109
|
+
hideNavigation = input(false, { ...(ngDevMode ? { debugName: "hideNavigation" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
88
110
|
/**
|
|
89
111
|
* Description of save button.
|
|
90
112
|
*
|
|
@@ -93,13 +115,14 @@ class SiWizardComponent {
|
|
|
93
115
|
* t(() => $localize`:@@SI_WIZARD.SAVE:Save`)
|
|
94
116
|
* ```
|
|
95
117
|
*/
|
|
96
|
-
saveText = input(t(() => $localize `:@@SI_WIZARD.SAVE:Save`),
|
|
118
|
+
saveText = input(t(() => $localize `:@@SI_WIZARD.SAVE:Save`), /* @ts-ignore */
|
|
119
|
+
...(ngDevMode ? [{ debugName: "saveText" }] : /* istanbul ignore next */ []));
|
|
97
120
|
/**
|
|
98
121
|
* Hide the save button.
|
|
99
122
|
*
|
|
100
123
|
* @defaultValue false
|
|
101
124
|
*/
|
|
102
|
-
hideSave = input(false, { ...(ngDevMode ? { debugName: "hideSave" } : {}), transform: booleanAttribute });
|
|
125
|
+
hideSave = input(false, { ...(ngDevMode ? { debugName: "hideSave" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
103
126
|
/**
|
|
104
127
|
* Text shown if you complete the wizard.
|
|
105
128
|
*
|
|
@@ -108,7 +131,8 @@ class SiWizardComponent {
|
|
|
108
131
|
* t(() => $localize`:@@SI_WIZARD.COMPLETED:Wizard completed!`)
|
|
109
132
|
* ```
|
|
110
133
|
*/
|
|
111
|
-
completionText = input(t(() => $localize `:@@SI_WIZARD.COMPLETED:Wizard completed!`),
|
|
134
|
+
completionText = input(t(() => $localize `:@@SI_WIZARD.COMPLETED:Wizard completed!`), /* @ts-ignore */
|
|
135
|
+
...(ngDevMode ? [{ debugName: "completionText" }] : /* istanbul ignore next */ []));
|
|
112
136
|
/**
|
|
113
137
|
* Description of cancel button.
|
|
114
138
|
*
|
|
@@ -117,77 +141,85 @@ class SiWizardComponent {
|
|
|
117
141
|
* t(() => $localize`:@@SI_WIZARD.CANCEL:Cancel`)
|
|
118
142
|
* ```
|
|
119
143
|
*/
|
|
120
|
-
cancelText = input(t(() => $localize `:@@SI_WIZARD.CANCEL:Cancel`),
|
|
144
|
+
cancelText = input(t(() => $localize `:@@SI_WIZARD.CANCEL:Cancel`), /* @ts-ignore */
|
|
145
|
+
...(ngDevMode ? [{ debugName: "cancelText" }] : /* istanbul ignore next */ []));
|
|
121
146
|
/**
|
|
122
147
|
* Show the cancel button
|
|
123
148
|
*
|
|
124
149
|
* @defaultValue false
|
|
125
150
|
*/
|
|
126
|
-
hasCancel = input(false, { ...(ngDevMode ? { debugName: "hasCancel" } : {}), transform: booleanAttribute });
|
|
151
|
+
hasCancel = input(false, { ...(ngDevMode ? { debugName: "hasCancel" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
127
152
|
/**
|
|
128
153
|
* Display a predefined page by the end of the wizard.
|
|
129
154
|
*
|
|
130
155
|
* @defaultValue false
|
|
131
156
|
*/
|
|
132
|
-
enableCompletionPage = input(false, { ...(ngDevMode ? { debugName: "enableCompletionPage" } : {}), transform: booleanAttribute });
|
|
157
|
+
enableCompletionPage = input(false, { ...(ngDevMode ? { debugName: "enableCompletionPage" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
133
158
|
/**
|
|
134
159
|
* Define how many milliseconds the completion page is visible.
|
|
135
160
|
*
|
|
136
161
|
* @defaultValue 3000
|
|
137
162
|
*/
|
|
138
|
-
completionPageVisibleTime = input(3000,
|
|
163
|
+
completionPageVisibleTime = input(3000, /* @ts-ignore */
|
|
164
|
+
...(ngDevMode ? [{ debugName: "completionPageVisibleTime" }] : /* istanbul ignore next */ []));
|
|
139
165
|
/**
|
|
140
166
|
* Class name of icon shown for current and upcoming steps.
|
|
141
167
|
*
|
|
142
168
|
* @defaultValue 'elementNotChecked'
|
|
143
169
|
*/
|
|
144
|
-
stepIcon = input('elementNotChecked',
|
|
170
|
+
stepIcon = input('elementNotChecked', /* @ts-ignore */
|
|
171
|
+
...(ngDevMode ? [{ debugName: "stepIcon" }] : /* istanbul ignore next */ []));
|
|
145
172
|
/**
|
|
146
173
|
* Class name of icon shown for the active step.
|
|
147
174
|
*
|
|
148
175
|
* @defaultValue 'elementRadioChecked'
|
|
149
176
|
*/
|
|
150
|
-
stepActiveIcon = input('elementRadioChecked',
|
|
177
|
+
stepActiveIcon = input('elementRadioChecked', /* @ts-ignore */
|
|
178
|
+
...(ngDevMode ? [{ debugName: "stepActiveIcon" }] : /* istanbul ignore next */ []));
|
|
151
179
|
/**
|
|
152
180
|
* Class name of icon shown when a step was completed.
|
|
153
181
|
*
|
|
154
182
|
* @defaultValue 'elementCheckedFilled'
|
|
155
183
|
*/
|
|
156
|
-
stepCompletedIcon = input('elementCheckedFilled',
|
|
184
|
+
stepCompletedIcon = input('elementCheckedFilled', /* @ts-ignore */
|
|
185
|
+
...(ngDevMode ? [{ debugName: "stepCompletedIcon" }] : /* istanbul ignore next */ []));
|
|
157
186
|
/**
|
|
158
187
|
* Class name of icon shown when a step had an error.
|
|
159
188
|
*
|
|
160
189
|
* @defaultValue 'elementWarningFilled'
|
|
161
190
|
*/
|
|
162
|
-
stepFailedIcon = input('elementWarningFilled',
|
|
191
|
+
stepFailedIcon = input('elementWarningFilled', /* @ts-ignore */
|
|
192
|
+
...(ngDevMode ? [{ debugName: "stepFailedIcon" }] : /* istanbul ignore next */ []));
|
|
163
193
|
/**
|
|
164
194
|
* Set the orientation of the wizard to vertical.
|
|
165
195
|
*
|
|
166
196
|
* @defaultValue false
|
|
167
197
|
*/
|
|
168
|
-
verticalLayout = input(false, { ...(ngDevMode ? { debugName: "verticalLayout" } : {}), transform: booleanAttribute });
|
|
198
|
+
verticalLayout = input(false, { ...(ngDevMode ? { debugName: "verticalLayout" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
169
199
|
/**
|
|
170
200
|
* Set false to show navigation buttons in footer instead of inline.
|
|
171
201
|
*
|
|
172
202
|
* @defaultValue false
|
|
173
203
|
*/
|
|
174
|
-
inlineNavigation = input(false, { ...(ngDevMode ? { debugName: "inlineNavigation" } : {}), transform: booleanAttribute });
|
|
204
|
+
inlineNavigation = input(false, { ...(ngDevMode ? { debugName: "inlineNavigation" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
175
205
|
/**
|
|
176
206
|
* Use number representation for steps.
|
|
177
207
|
*
|
|
178
208
|
* @defaultValue false
|
|
179
209
|
*/
|
|
180
|
-
showStepNumbers = input(false, { ...(ngDevMode ? { debugName: "showStepNumbers" } : {}), transform: booleanAttribute });
|
|
210
|
+
showStepNumbers = input(false, { ...(ngDevMode ? { debugName: "showStepNumbers" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
181
211
|
/**
|
|
182
212
|
* Set to true to display a divider between the steps and the content in the vertical
|
|
183
213
|
*
|
|
184
214
|
* @defaultValue false
|
|
185
215
|
*/
|
|
186
|
-
showVerticalDivider = input(false, { ...(ngDevMode ? { debugName: "showVerticalDivider" } : {}), transform: booleanAttribute });
|
|
216
|
+
showVerticalDivider = input(false, { ...(ngDevMode ? { debugName: "showVerticalDivider" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
187
217
|
/** Set the wizard step container min size in vertical layout. */
|
|
188
|
-
verticalMinSize = input(
|
|
218
|
+
verticalMinSize = input(/* @ts-ignore */
|
|
219
|
+
...(ngDevMode ? [undefined, { debugName: "verticalMinSize" }] : /* istanbul ignore next */ []));
|
|
189
220
|
/** Set the wizard step container max size in vertical layout. */
|
|
190
|
-
verticalMaxSize = input(
|
|
221
|
+
verticalMaxSize = input(/* @ts-ignore */
|
|
222
|
+
...(ngDevMode ? [undefined, { debugName: "verticalMaxSize" }] : /* istanbul ignore next */ []));
|
|
191
223
|
/** Callback function triggered after the wizard has been completed. */
|
|
192
224
|
completionAction = output();
|
|
193
225
|
/** Callback function triggered if the wizard has been canceled. */
|
|
@@ -204,18 +236,25 @@ class SiWizardComponent {
|
|
|
204
236
|
get currentStep() {
|
|
205
237
|
return this._currentStep();
|
|
206
238
|
}
|
|
207
|
-
steps = contentChildren(SiWizardStepComponent,
|
|
208
|
-
|
|
209
|
-
|
|
239
|
+
steps = contentChildren(SiWizardStepComponent, /* @ts-ignore */
|
|
240
|
+
...(ngDevMode ? [{ debugName: "steps" }] : /* istanbul ignore next */ []));
|
|
241
|
+
visibleSteps = linkedSignal(() => this.calculateVisibleStepCount(), /* @ts-ignore */
|
|
242
|
+
...(ngDevMode ? [{ debugName: "visibleSteps" }] : /* istanbul ignore next */ []));
|
|
243
|
+
showCompletionPage = signal(false, /* @ts-ignore */
|
|
244
|
+
...(ngDevMode ? [{ debugName: "showCompletionPage" }] : /* istanbul ignore next */ []));
|
|
210
245
|
/** The list of visible steps. */
|
|
211
|
-
activeSteps = computed(() => this.computeVisibleSteps(),
|
|
212
|
-
|
|
213
|
-
|
|
246
|
+
activeSteps = computed(() => this.computeVisibleSteps(), /* @ts-ignore */
|
|
247
|
+
...(ngDevMode ? [{ debugName: "activeSteps" }] : /* istanbul ignore next */ []));
|
|
248
|
+
headingKeys = computed(() => this.steps().map(s => s.heading()), /* @ts-ignore */
|
|
249
|
+
...(ngDevMode ? [{ debugName: "headingKeys" }] : /* istanbul ignore next */ []));
|
|
250
|
+
maxStepWidth = signal(SiWizardComponent.defaultStepWidthEm * SiWizardComponent.fallbackFontSize, /* @ts-ignore */
|
|
251
|
+
...(ngDevMode ? [{ debugName: "maxStepWidth" }] : /* istanbul ignore next */ []));
|
|
214
252
|
_index = linkedSignal(() => {
|
|
215
253
|
const currentStep = this._currentStep();
|
|
216
254
|
const currentStepIndex = currentStep ? this.steps().indexOf(currentStep) : 0;
|
|
217
255
|
return currentStepIndex < 0 ? 0 : currentStepIndex;
|
|
218
|
-
},
|
|
256
|
+
}, /* @ts-ignore */
|
|
257
|
+
...(ngDevMode ? [{ debugName: "_index" }] : /* istanbul ignore next */ []));
|
|
219
258
|
_currentStep = linkedSignal(() => {
|
|
220
259
|
const steps = this.steps();
|
|
221
260
|
const currentActive = steps.find(step => step.isActive());
|
|
@@ -229,7 +268,8 @@ class SiWizardComponent {
|
|
|
229
268
|
else {
|
|
230
269
|
return undefined;
|
|
231
270
|
}
|
|
232
|
-
},
|
|
271
|
+
}, /* @ts-ignore */
|
|
272
|
+
...(ngDevMode ? [{ debugName: "_currentStep" }] : /* istanbul ignore next */ []));
|
|
233
273
|
icons = addIcons({
|
|
234
274
|
elementCancel,
|
|
235
275
|
elementChecked,
|
|
@@ -273,7 +313,8 @@ class SiWizardComponent {
|
|
|
273
313
|
const icon = this.getState(step, stepIndex);
|
|
274
314
|
return { canActivate, stateClass, ariaDisabled, ariaCurrent, icon };
|
|
275
315
|
});
|
|
276
|
-
},
|
|
316
|
+
}, /* @ts-ignore */
|
|
317
|
+
...(ngDevMode ? [{ debugName: "stepsMetadata" }] : /* istanbul ignore next */ []));
|
|
277
318
|
constructor() {
|
|
278
319
|
toObservable(this.headingKeys)
|
|
279
320
|
.pipe(switchMap(keys => this.translateService.translateAsync(keys)), takeUntilDestroyed())
|
|
@@ -455,20 +496,20 @@ class SiWizardComponent {
|
|
|
455
496
|
return steps.sort((l, r) => l - r).map(i => create(i));
|
|
456
497
|
}
|
|
457
498
|
}
|
|
458
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
459
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.8", type: SiWizardComponent, isStandalone: true, selector: "si-wizard", inputs: { backText: { classPropertyName: "backText", publicName: "backText", isSignal: true, isRequired: false, transformFunction: null }, nextText: { classPropertyName: "nextText", publicName: "nextText", isSignal: true, isRequired: false, transformFunction: null }, hideNavigation: { classPropertyName: "hideNavigation", publicName: "hideNavigation", isSignal: true, isRequired: false, transformFunction: null }, saveText: { classPropertyName: "saveText", publicName: "saveText", isSignal: true, isRequired: false, transformFunction: null }, hideSave: { classPropertyName: "hideSave", publicName: "hideSave", isSignal: true, isRequired: false, transformFunction: null }, completionText: { classPropertyName: "completionText", publicName: "completionText", isSignal: true, isRequired: false, transformFunction: null }, cancelText: { classPropertyName: "cancelText", publicName: "cancelText", isSignal: true, isRequired: false, transformFunction: null }, hasCancel: { classPropertyName: "hasCancel", publicName: "hasCancel", isSignal: true, isRequired: false, transformFunction: null }, enableCompletionPage: { classPropertyName: "enableCompletionPage", publicName: "enableCompletionPage", isSignal: true, isRequired: false, transformFunction: null }, completionPageVisibleTime: { classPropertyName: "completionPageVisibleTime", publicName: "completionPageVisibleTime", isSignal: true, isRequired: false, transformFunction: null }, stepIcon: { classPropertyName: "stepIcon", publicName: "stepIcon", isSignal: true, isRequired: false, transformFunction: null }, stepActiveIcon: { classPropertyName: "stepActiveIcon", publicName: "stepActiveIcon", isSignal: true, isRequired: false, transformFunction: null }, stepCompletedIcon: { classPropertyName: "stepCompletedIcon", publicName: "stepCompletedIcon", isSignal: true, isRequired: false, transformFunction: null }, stepFailedIcon: { classPropertyName: "stepFailedIcon", publicName: "stepFailedIcon", isSignal: true, isRequired: false, transformFunction: null }, verticalLayout: { classPropertyName: "verticalLayout", publicName: "verticalLayout", isSignal: true, isRequired: false, transformFunction: null }, inlineNavigation: { classPropertyName: "inlineNavigation", publicName: "inlineNavigation", isSignal: true, isRequired: false, transformFunction: null }, showStepNumbers: { classPropertyName: "showStepNumbers", publicName: "showStepNumbers", isSignal: true, isRequired: false, transformFunction: null }, showVerticalDivider: { classPropertyName: "showVerticalDivider", publicName: "showVerticalDivider", isSignal: true, isRequired: false, transformFunction: null }, verticalMinSize: { classPropertyName: "verticalMinSize", publicName: "verticalMinSize", isSignal: true, isRequired: false, transformFunction: null }, verticalMaxSize: { classPropertyName: "verticalMaxSize", publicName: "verticalMaxSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { completionAction: "completionAction", wizardCancel: "wizardCancel" }, host: { properties: { "class.vertical": "verticalLayout()", "style.--wizard-vertical-min-size": "verticalMinSize()", "style.--wizard-vertical-max-size": "verticalMaxSize()" }, classAttribute: "py-6 px-8 d-flex flex-column" }, queries: [{ propertyName: "steps", predicate: SiWizardStepComponent, isSignal: true }], viewQueries: [{ propertyName: "containerSteps", first: true, predicate: ["containerSteps"], descendants: true, isSignal: true }, { propertyName: "nextButton", first: true, predicate: ["nextButton"], descendants: true, isSignal: true }, { propertyName: "saveButton", first: true, predicate: ["saveButton"], descendants: true, isSignal: true }], ngImport: i0, template: "@if (!showCompletionPage()) {\n @if (!verticalLayout()) {\n <div class=\"container-wizard\" [class.justify-content-center]=\"!inlineNavigation()\">\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"cancelBtnHorizontal\" />\n <ng-container *ngTemplateOutlet=\"backBtnHorizontal\" />\n }\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"nextBtnHorizontal\" />\n }\n </div>\n\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"saveBtn\" />\n } @else {\n <ng-container *ngTemplateOutlet=\"footer\" />\n }\n } @else {\n @if (showVerticalDivider()) {\n <div class=\"container-wizard vertical\">\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n <div class=\"vertical-divider\"></div>\n <div class=\"d-flex flex-column w-100\">\n <div class=\"steps-content\">\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n </div>\n <ng-container *ngTemplateOutlet=\"footer\" />\n </div>\n </div>\n } @else {\n <div class=\"container-wizard vertical\">\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n <div class=\"steps-content\">\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n </div>\n </div>\n <ng-container *ngTemplateOutlet=\"footer\" />\n }\n }\n} @else {\n <div class=\"text-center\">\n <si-icon class=\"completion-icon-size text-success\" [icon]=\"icons.elementChecked\" />\n <p class=\"si-h4\"> {{ completionText() | translate }}</p>\n </div>\n}\n\n<ng-template #stepsTemplate>\n <div\n #containerSteps\n class=\"container-steps\"\n [class.vertical]=\"verticalLayout()\"\n [class.mx-4]=\"inlineNavigation()\"\n [class.mt-4]=\"!verticalLayout() && inlineNavigation()\"\n (siResizeObserver)=\"updateVisibleSteps()\"\n >\n @for (item of activeSteps(); track item.index) {\n @let meta = stepsMetadata()[item.index];\n <div class=\"step\">\n <div\n [class]=\"['line', 'previous', meta.stateClass]\"\n [class.dashed]=\"$first && item.index > 0\"\n [class.vertical]=\"verticalLayout()\"\n [class.spacer]=\"$first && item.index === 0\"\n ></div>\n <a\n [class]=\"['focus-none', meta.stateClass]\"\n [attr.aria-current]=\"meta.ariaCurrent\"\n [attr.href]=\"!meta.canActivate || !currentStep?.isNextNavigable() ? null : '#'\"\n (click)=\"activateStep($event, item.index)\"\n >\n @if (showStepNumbers() && !item.step.failed()) {\n <div\n class=\"step-icon number-step d-flex justify-content-center align-items-center px-1\"\n >\n <div class=\"circle\" [class.status-warning]=\"item.step.failed()\">\n <span class=\"si-h5 px-2\" [class.completed-color]=\"item.index < index\">\n {{ item.index + 1 }}\n </span>\n </div>\n </div>\n } @else {\n <si-icon\n class=\"icon-lg step-icon\"\n [class.status-warning]=\"item.step.failed()\"\n [icon]=\"meta.icon\"\n />\n }\n <div\n class=\"title si-h5\"\n [class.text-center]=\"!verticalLayout()\"\n [class.px-6]=\"!verticalLayout()\"\n [attr.aria-disabled]=\"meta.ariaDisabled\"\n >{{ item.step.heading() | translate }}</div\n >\n </a>\n @if (item.index + 1 < stepCount) {\n <div\n [class]=\"['line', stepsMetadata()[item.index + 1].stateClass]\"\n [class.vertical]=\"verticalLayout()\"\n [class.dashed]=\"$last\"\n ></div>\n }\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #stepContent>\n <div [class.flex-grow-1]=\"!verticalLayout()\" [class.h-100]=\"verticalLayout()\">\n <ng-content />\n </div>\n</ng-template>\n\n<ng-template #cancelBtnHorizontal>\n @if (hasCancel()) {\n <div class=\"me-7\">\n <div class=\"wizard-btn-container\" (click)=\"wizardCancel.emit()\">\n <button\n type=\"button\"\n class=\"btn btn-circle btn-secondary mt-2 mb-4\"\n [attr.aria-label]=\"cancelText() | translate\"\n >\n <si-icon [icon]=\"icons.elementCancel\" />\n </button>\n <div class=\"si-h5 text-primary\">{{ cancelText() | translate }}</div>\n </div>\n </div>\n }\n</ng-template>\n\n<ng-template #footer>\n <div class=\"wizard-footer pt-6\">\n <div class=\"wizard-footer-inner\" [class.ms-6]=\"showVerticalDivider()\">\n @if (hasCancel()) {\n <button\n type=\"button\"\n class=\"btn btn-tertiary\"\n [attr.aria-label]=\"cancelText() | translate\"\n (click)=\"wizardCancel.emit()\"\n >\n {{ cancelText() | translate }}\n </button>\n }\n @if (!hideNavigation()) {\n <button\n type=\"button\"\n class=\"btn btn-secondary\"\n [class.d-none]=\"index === 0\"\n [class.end]=\"index !== 0\"\n [attr.aria-label]=\"backText() | translate\"\n (click)=\"back(1)\"\n >\n {{ backText() | translate }}\n </button>\n\n <button\n #nextButton\n type=\"button\"\n class=\"btn btn-primary\"\n [attr.aria-label]=\"nextText() | translate\"\n [disabled]=\"!currentStep?.isValid()\"\n [class.d-none]=\"index === steps().length - 1\"\n [class.end]=\"index === 0\"\n (click)=\"next(1)\"\n >\n {{ nextText() | translate }}\n </button>\n }\n\n @if (!hideSave()) {\n @if (index === steps().length - 1) {\n <button\n #saveButton\n type=\"button\"\n class=\"btn btn-primary save\"\n [class.end]=\"hideNavigation()\"\n [disabled]=\"!currentStep?.isValid() || !currentStep?.isNextNavigable()\"\n (click)=\"save()\"\n >{{ saveText() | translate }}</button\n >\n }\n }\n </div>\n </div>\n</ng-template>\n\n<ng-template #backBtnHorizontal>\n <div class=\"wizard-btn-container\">\n @if (!hideNavigation()) {\n <div class=\"back\" [class.invisible]=\"index === 0\" (click)=\"back(1)\">\n <button\n type=\"button\"\n class=\"btn btn-secondary btn-circle mb-2\"\n [attr.aria-label]=\"backText() | translate\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"icons.elementLeft4\" />\n </button>\n <div class=\"si-h5 text-primary\">{{ backText() | translate }}</div>\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #nextBtnHorizontal>\n <div class=\"wizard-btn-container\" [class.wizard-text-deactivate]=\"!currentStep?.isValid()\">\n @if (!hideNavigation()) {\n <div class=\"next\" [class.invisible]=\"index === steps().length - 1\" (click)=\"next(1)\">\n <button\n #nextButton\n type=\"button\"\n class=\"btn btn-primary btn-circle mb-2\"\n [disabled]=\"!currentStep?.isValid()\"\n [attr.aria-label]=\"nextText() | translate\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"icons.elementRight4\" />\n </button>\n <div\n class=\"si-h5 text-primary\"\n [class.text-muted]=\"!currentStep?.isValid()\"\n [attr.aria-disabled]=\"!currentStep?.isValid()\"\n >{{ nextText() | translate }}</div\n >\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #saveBtn>\n @if (!hideSave()) {\n <div [class.center-save]=\"!verticalLayout() && inlineNavigation()\">\n @if (index === steps().length - 1) {\n <button\n #saveButton\n type=\"button\"\n class=\"btn btn-primary save\"\n [disabled]=\"!currentStep?.isValid() || !currentStep?.isNextNavigable()\"\n (click)=\"save()\"\n >{{ saveText() | translate }}</button\n >\n }\n </div>\n }\n</ng-template>\n", styles: [":host.vertical{display:flex;flex-direction:column;block-size:100%}.container-steps{display:flex}.container-steps .step{display:grid}.container-steps:not(.vertical){inline-size:100%;justify-content:center;align-items:flex-start;padding-block:0}.container-steps:not(.vertical) .step{grid-template-columns:1fr auto 1fr;grid-template-rows:auto auto}.container-steps:not(.vertical) .step .step-icon{grid-row:1/2;grid-column:2/3;justify-self:center}.container-steps:not(.vertical) .step .title{margin-block-start:12px}.container-steps.vertical{flex-direction:column;block-size:100%;padding-block-start:32px;min-inline-size:var(--wizard-vertical-min-size, 180px);max-inline-size:var(--wizard-vertical-max-size, initial)}.container-steps.vertical .step{grid-template-columns:1.5rem 1fr;grid-template-rows:auto auto auto;align-items:center;flex:0 1 auto}.container-steps.vertical .step .step-icon{grid-row:2/3;grid-column:1/2;justify-self:center}.container-steps.vertical .step .title{grid-row:2/3;grid-column:2/3;padding-inline-start:8px}.container-steps .completed-color{color:var(--element-text-inverse)}.line{grid-row:1;justify-self:stretch}.line.vertical{grid-column:1/2;align-self:stretch;justify-self:center;border-inline-start-color:var(--element-ui-2);border-inline-start-width:2px;border-inline-start-style:solid;min-block-size:12px}.line.vertical.dashed{border-inline-start-style:dashed}.line.vertical.spacer{block-size:12px;border:0}.line.vertical:not(.previous){grid-row:3}.line:not(.vertical){grid-column:3/4;border-block-start-width:2px;border-block-start-style:solid;border-block-start-color:var(--element-ui-2);align-self:center}.line:not(.vertical).previous{grid-column:1/2}.line:not(.vertical).dashed{inline-size:32px;border-block-start-style:dashed}.line:not(.vertical).spacer{display:none}.line:not(.vertical).dashed.previous{justify-self:end}.line.active,.line.completed{border-color:var(--element-ui-0)}.line.dashed.vertical{min-block-size:12px;inline-size:auto}.step{inline-size:100%;flex-shrink:1}.step a{display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;grid-row:1/-1;grid-column:1/-1;align-items:center;justify-self:center;color:var(--element-ui-2)}.step a:hover{text-decoration:none}.step a:focus-visible .step-icon{outline:var(--element-button-focus-width) solid var(--element-focus-default);outline-offset:calc(-1 * var(--element-button-focus-width));border-radius:.75rem}.step a:focus-visible .step-icon.number-step{outline:none}.step a:focus-visible .step-icon.number-step .circle{outline:var(--element-button-focus-width) solid var(--element-focus-default);outline-offset:var(--element-button-focus-overlay-width)}.step .title{grid-row:2/3;grid-column:1/-1;color:var(--element-text-secondary);display:-webkit-box;overflow:hidden;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical}.step .active,.step .active .title{color:var(--element-ui-0);cursor:default}.step .disabled,.step .disabled:hover,.step a.disabled>*{cursor:default}.step .disabled .title,.step .disabled:hover .title,.step a.disabled>* .title{color:var(--element-text-disabled)}.step .disabled .step-icon,.step .disabled:hover .step-icon,.step a.disabled>* .step-icon{color:var(--element-ui-3)}.step a:not(.disabled):hover,.step a:not(.disabled):hover .step-icon,.step a:not(.disabled):hover .title{color:var(--element-ui-0-hover)!important}.step .completed .title{color:var(--element-text-primary)}.step .completed .step-icon{color:var(--element-ui-0)}.step .completed .circle{background-color:currentColor}.container-wizard{inline-size:100%;display:flex;flex-wrap:nowrap}.container-wizard:not(.vertical){justify-content:center;padding-block-end:16px}.container-wizard.vertical{justify-content:start;block-size:100%}.container-wizard.vertical .steps-content{flex:100%;padding-inline-start:16px}.container-wizard .vertical-divider{border-inline-end:1px solid var(--element-ui-4);margin-block:0}.center-save{display:flex;justify-content:center;padding-block-start:16px}.wizard-btn-container{min-inline-size:8ch;flex-shrink:1;text-align:center;cursor:pointer}.wizard-btn-container.wizard-text-deactivate:hover{cursor:default}.wizard-btn-container:not(.wizard-text-deactivate):hover .text-primary{color:var(--element-ui-0-hover)!important}.completion-icon-size{font-size:96px}.circle{min-inline-size:1.125rem;min-block-size:1.125rem;border-radius:.75rem;border-width:1px;border-style:solid;border-color:currentColor;color:currentColor}.number-step{min-inline-size:1.5rem;min-block-size:1.5rem;text-align:center}.wizard-footer{container-type:inline-size}.wizard-footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:start;gap:16px}.wizard-footer-inner>.end{margin-inline-start:auto}@container (max-width: 25em){.wizard-footer-inner{flex-direction:column;align-items:stretch}.wizard-footer-inner>.end{margin-inline-start:unset}}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "directive", type: SiResizeObserverDirective, selector: "[siResizeObserver]", inputs: ["resizeThrottle", "emitInitial"], outputs: ["siResizeObserver"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
499
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiWizardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
500
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: SiWizardComponent, isStandalone: true, selector: "si-wizard", inputs: { backText: { classPropertyName: "backText", publicName: "backText", isSignal: true, isRequired: false, transformFunction: null }, nextText: { classPropertyName: "nextText", publicName: "nextText", isSignal: true, isRequired: false, transformFunction: null }, hideNavigation: { classPropertyName: "hideNavigation", publicName: "hideNavigation", isSignal: true, isRequired: false, transformFunction: null }, saveText: { classPropertyName: "saveText", publicName: "saveText", isSignal: true, isRequired: false, transformFunction: null }, hideSave: { classPropertyName: "hideSave", publicName: "hideSave", isSignal: true, isRequired: false, transformFunction: null }, completionText: { classPropertyName: "completionText", publicName: "completionText", isSignal: true, isRequired: false, transformFunction: null }, cancelText: { classPropertyName: "cancelText", publicName: "cancelText", isSignal: true, isRequired: false, transformFunction: null }, hasCancel: { classPropertyName: "hasCancel", publicName: "hasCancel", isSignal: true, isRequired: false, transformFunction: null }, enableCompletionPage: { classPropertyName: "enableCompletionPage", publicName: "enableCompletionPage", isSignal: true, isRequired: false, transformFunction: null }, completionPageVisibleTime: { classPropertyName: "completionPageVisibleTime", publicName: "completionPageVisibleTime", isSignal: true, isRequired: false, transformFunction: null }, stepIcon: { classPropertyName: "stepIcon", publicName: "stepIcon", isSignal: true, isRequired: false, transformFunction: null }, stepActiveIcon: { classPropertyName: "stepActiveIcon", publicName: "stepActiveIcon", isSignal: true, isRequired: false, transformFunction: null }, stepCompletedIcon: { classPropertyName: "stepCompletedIcon", publicName: "stepCompletedIcon", isSignal: true, isRequired: false, transformFunction: null }, stepFailedIcon: { classPropertyName: "stepFailedIcon", publicName: "stepFailedIcon", isSignal: true, isRequired: false, transformFunction: null }, verticalLayout: { classPropertyName: "verticalLayout", publicName: "verticalLayout", isSignal: true, isRequired: false, transformFunction: null }, inlineNavigation: { classPropertyName: "inlineNavigation", publicName: "inlineNavigation", isSignal: true, isRequired: false, transformFunction: null }, showStepNumbers: { classPropertyName: "showStepNumbers", publicName: "showStepNumbers", isSignal: true, isRequired: false, transformFunction: null }, showVerticalDivider: { classPropertyName: "showVerticalDivider", publicName: "showVerticalDivider", isSignal: true, isRequired: false, transformFunction: null }, verticalMinSize: { classPropertyName: "verticalMinSize", publicName: "verticalMinSize", isSignal: true, isRequired: false, transformFunction: null }, verticalMaxSize: { classPropertyName: "verticalMaxSize", publicName: "verticalMaxSize", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { completionAction: "completionAction", wizardCancel: "wizardCancel" }, host: { properties: { "class.vertical": "verticalLayout()", "style.--wizard-vertical-min-size": "verticalMinSize()", "style.--wizard-vertical-max-size": "verticalMaxSize()" }, classAttribute: "py-6 px-8 d-flex flex-column" }, queries: [{ propertyName: "steps", predicate: SiWizardStepComponent, isSignal: true }], viewQueries: [{ propertyName: "containerSteps", first: true, predicate: ["containerSteps"], descendants: true, isSignal: true }, { propertyName: "nextButton", first: true, predicate: ["nextButton"], descendants: true, isSignal: true }, { propertyName: "saveButton", first: true, predicate: ["saveButton"], descendants: true, isSignal: true }], ngImport: i0, template: "@if (!showCompletionPage()) {\n @if (!verticalLayout()) {\n <div class=\"container-wizard\" [class.justify-content-center]=\"!inlineNavigation()\">\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"cancelBtnHorizontal\" />\n <ng-container *ngTemplateOutlet=\"backBtnHorizontal\" />\n }\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"nextBtnHorizontal\" />\n }\n </div>\n\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"saveBtn\" />\n } @else {\n <ng-container *ngTemplateOutlet=\"footer\" />\n }\n } @else {\n @if (showVerticalDivider()) {\n <div class=\"container-wizard vertical\">\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n <div class=\"vertical-divider\"></div>\n <div class=\"d-flex flex-column w-100\">\n <div class=\"steps-content\">\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n </div>\n <ng-container *ngTemplateOutlet=\"footer\" />\n </div>\n </div>\n } @else {\n <div class=\"container-wizard vertical\">\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n <div class=\"steps-content\">\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n </div>\n </div>\n <ng-container *ngTemplateOutlet=\"footer\" />\n }\n }\n} @else {\n <div class=\"text-center\">\n <si-icon class=\"completion-icon-size text-success\" [icon]=\"icons.elementChecked\" />\n <p class=\"si-h4\"> {{ completionText() | translate }}</p>\n </div>\n}\n\n<ng-template #stepsTemplate>\n <div\n #containerSteps\n class=\"container-steps\"\n [class.vertical]=\"verticalLayout()\"\n [class.mx-4]=\"inlineNavigation()\"\n [class.mt-4]=\"!verticalLayout() && inlineNavigation()\"\n (siResizeObserver)=\"updateVisibleSteps()\"\n >\n @for (item of activeSteps(); track item.index) {\n @let meta = stepsMetadata()[item.index];\n <div class=\"step\">\n <div\n [class]=\"['line', 'previous', meta.stateClass]\"\n [class.dashed]=\"$first && item.index > 0\"\n [class.vertical]=\"verticalLayout()\"\n [class.spacer]=\"$first && item.index === 0\"\n ></div>\n <a\n [class]=\"['focus-none', meta.stateClass]\"\n [attr.aria-current]=\"meta.ariaCurrent\"\n [attr.href]=\"!meta.canActivate || !currentStep?.isNextNavigable() ? null : '#'\"\n (click)=\"activateStep($event, item.index)\"\n >\n @if (showStepNumbers() && !item.step.failed()) {\n <div\n class=\"step-icon number-step d-flex justify-content-center align-items-center px-1\"\n >\n <div class=\"circle\" [class.status-warning]=\"item.step.failed()\">\n <span class=\"si-h5 px-2\" [class.completed-color]=\"item.index < index\">\n {{ item.index + 1 }}\n </span>\n </div>\n </div>\n } @else {\n <si-icon\n class=\"icon-lg step-icon\"\n [class.status-warning]=\"item.step.failed()\"\n [icon]=\"meta.icon\"\n />\n }\n <div\n class=\"title si-h5\"\n [class.text-center]=\"!verticalLayout()\"\n [class.px-6]=\"!verticalLayout()\"\n [attr.aria-disabled]=\"meta.ariaDisabled\"\n >{{ item.step.heading() | translate }}</div\n >\n </a>\n @if (item.index + 1 < stepCount) {\n <div\n [class]=\"['line', stepsMetadata()[item.index + 1].stateClass]\"\n [class.vertical]=\"verticalLayout()\"\n [class.dashed]=\"$last\"\n ></div>\n }\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #stepContent>\n <div [class.flex-grow-1]=\"!verticalLayout()\" [class.h-100]=\"verticalLayout()\">\n <ng-content />\n </div>\n</ng-template>\n\n<ng-template #cancelBtnHorizontal>\n @if (hasCancel()) {\n <div class=\"me-7\">\n <div class=\"wizard-btn-container\" (click)=\"wizardCancel.emit()\">\n <button\n type=\"button\"\n class=\"btn btn-circle btn-secondary mt-2 mb-4\"\n [attr.aria-label]=\"cancelText() | translate\"\n >\n <si-icon [icon]=\"icons.elementCancel\" />\n </button>\n <div class=\"si-h5 text-accent\">{{ cancelText() | translate }}</div>\n </div>\n </div>\n }\n</ng-template>\n\n<ng-template #footer>\n <div class=\"wizard-footer pt-6\">\n <div class=\"wizard-footer-inner\" [class.ms-6]=\"showVerticalDivider()\">\n @if (hasCancel()) {\n <button\n type=\"button\"\n class=\"btn btn-tertiary\"\n [attr.aria-label]=\"cancelText() | translate\"\n (click)=\"wizardCancel.emit()\"\n >\n {{ cancelText() | translate }}\n </button>\n }\n @if (!hideNavigation()) {\n <button\n type=\"button\"\n class=\"btn btn-secondary\"\n [class.d-none]=\"index === 0\"\n [class.end]=\"index !== 0\"\n [attr.aria-label]=\"backText() | translate\"\n (click)=\"back(1)\"\n >\n {{ backText() | translate }}\n </button>\n\n <button\n #nextButton\n type=\"button\"\n class=\"btn btn-primary\"\n [attr.aria-label]=\"nextText() | translate\"\n [disabled]=\"!currentStep?.isValid()\"\n [class.d-none]=\"index === steps().length - 1\"\n [class.end]=\"index === 0\"\n (click)=\"next(1)\"\n >\n {{ nextText() | translate }}\n </button>\n }\n\n @if (!hideSave()) {\n @if (index === steps().length - 1) {\n <button\n #saveButton\n type=\"button\"\n class=\"btn btn-primary save\"\n [class.end]=\"hideNavigation()\"\n [disabled]=\"!currentStep?.isValid() || !currentStep?.isNextNavigable()\"\n (click)=\"save()\"\n >{{ saveText() | translate }}</button\n >\n }\n }\n </div>\n </div>\n</ng-template>\n\n<ng-template #backBtnHorizontal>\n <div class=\"wizard-btn-container\">\n @if (!hideNavigation()) {\n <div class=\"back\" [class.invisible]=\"index === 0\" (click)=\"back(1)\">\n <button\n type=\"button\"\n class=\"btn btn-secondary btn-circle mb-2\"\n [attr.aria-label]=\"backText() | translate\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"icons.elementLeft4\" />\n </button>\n <div class=\"si-h5 text-accent\">{{ backText() | translate }}</div>\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #nextBtnHorizontal>\n <div class=\"wizard-btn-container\" [class.wizard-text-deactivate]=\"!currentStep?.isValid()\">\n @if (!hideNavigation()) {\n <div class=\"next\" [class.invisible]=\"index === steps().length - 1\" (click)=\"next(1)\">\n <button\n #nextButton\n type=\"button\"\n class=\"btn btn-primary btn-circle mb-2\"\n [disabled]=\"!currentStep?.isValid()\"\n [attr.aria-label]=\"nextText() | translate\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"icons.elementRight4\" />\n </button>\n <div\n class=\"si-h5 text-accent\"\n [class.text-disabled]=\"!currentStep?.isValid()\"\n [attr.aria-disabled]=\"!currentStep?.isValid()\"\n >{{ nextText() | translate }}</div\n >\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #saveBtn>\n @if (!hideSave()) {\n <div [class.center-save]=\"!verticalLayout() && inlineNavigation()\">\n @if (index === steps().length - 1) {\n <button\n #saveButton\n type=\"button\"\n class=\"btn btn-primary save\"\n [disabled]=\"!currentStep?.isValid() || !currentStep?.isNextNavigable()\"\n (click)=\"save()\"\n >{{ saveText() | translate }}</button\n >\n }\n </div>\n }\n</ng-template>\n", styles: [":host.vertical{display:flex;flex-direction:column;block-size:100%}.container-steps{display:flex}.container-steps .step{display:grid}.container-steps:not(.vertical){inline-size:100%;justify-content:center;align-items:flex-start;padding-block:0}.container-steps:not(.vertical) .step{grid-template-columns:1fr auto 1fr;grid-template-rows:auto auto}.container-steps:not(.vertical) .step .step-icon{grid-row:1/2;grid-column:2/3;justify-self:center}.container-steps:not(.vertical) .step .title{margin-block-start:var(--si-sys-sizing-spacing-y-50)}.container-steps.vertical{flex-direction:column;block-size:100%;padding-block-start:var(--si-sys-sizing-spacing-y-90);min-inline-size:var(--wizard-vertical-min-size, 180px);max-inline-size:var(--wizard-vertical-max-size, initial)}.container-steps.vertical .step{grid-template-columns:1.5rem 1fr;grid-template-rows:auto auto auto;align-items:center;flex:0 1 auto}.container-steps.vertical .step .step-icon{grid-row:2/3;grid-column:1/2;justify-self:center}.container-steps.vertical .step .title{grid-row:2/3;grid-column:2/3;padding-inline-start:var(--si-sys-sizing-spacing-x-40)}.container-steps .completed-color{color:var(--si-sys-text-on-accent)}.line{grid-row:1;justify-self:stretch}.line.vertical{grid-column:1/2;align-self:stretch;justify-self:center;border-inline-start-color:var(--si-sys-border-2);border-inline-start-width:2px;border-inline-start-style:solid;min-block-size:var(--si-sys-sizing-spacing-y-50)}.line.vertical.dashed{border-inline-start-style:dashed}.line.vertical.spacer{block-size:var(--si-sys-sizing-spacing-y-50);border:0}.line.vertical:not(.previous){grid-row:3}.line:not(.vertical){grid-column:3/4;border-block-start-width:2px;border-block-start-style:solid;border-block-start-color:var(--si-sys-border-2);align-self:center}.line:not(.vertical).previous{grid-column:1/2}.line:not(.vertical).dashed{inline-size:var(--si-sys-sizing-spacing-x-90);border-block-start-style:dashed}.line:not(.vertical).spacer{display:none}.line:not(.vertical).dashed.previous{justify-self:end}.line.active,.line.completed{border-color:var(--si-sys-text-accent)}.line.dashed.vertical{min-block-size:var(--si-sys-sizing-spacing-y-50);inline-size:auto}.step{inline-size:100%;flex-shrink:1}.step a{display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;grid-row:1/-1;grid-column:1/-1;align-items:center;justify-self:center;color:var(--si-sys-border-2)}.step a:hover{text-decoration:none}.step a:focus-visible .step-icon{outline:var(--element-button-focus-width) solid var(--si-sys-effects-focus);outline-offset:calc(-1 * var(--element-button-focus-width));border-radius:.75rem}.step a:focus-visible .step-icon.number-step{outline:none}.step a:focus-visible .step-icon.number-step .circle{outline:var(--element-button-focus-width) solid var(--si-sys-effects-focus);outline-offset:var(--element-button-focus-overlay-width)}.step .title{grid-row:2/3;grid-column:1/-1;color:var(--si-sys-text-secondary);display:-webkit-box;overflow:hidden;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical}.step .active,.step .active .title{color:var(--si-sys-text-accent);cursor:default}.step .disabled,.step .disabled:hover,.step a.disabled>*{cursor:default}.step .disabled .title,.step .disabled:hover .title,.step a.disabled>* .title{color:var(--si-sys-text-disabled)}.step .disabled .step-icon,.step .disabled:hover .step-icon,.step a.disabled>* .step-icon{color:var(--si-sys-text-disabled)}.step a:not(.disabled):hover,.step a:not(.disabled):hover .step-icon,.step a:not(.disabled):hover .title{color:var(--si-sys-text-accent-hover)!important}.step .completed .title{color:var(--si-sys-text-primary)}.step .completed .step-icon{color:var(--si-sys-text-accent)}.step .completed .circle{background-color:currentColor}.container-wizard{inline-size:100%;display:flex;flex-wrap:nowrap}.container-wizard:not(.vertical){justify-content:center;padding-block-end:var(--si-sys-sizing-spacing-y-60)}.container-wizard.vertical{justify-content:start;block-size:100%}.container-wizard.vertical .steps-content{flex:100%;padding-inline-start:var(--si-sys-sizing-spacing-x-60)}.container-wizard .vertical-divider{border-inline-end:1px solid var(--si-sys-border-4);margin-block:0}.center-save{display:flex;justify-content:center;padding-block-start:var(--si-sys-sizing-spacing-y-60)}.wizard-btn-container{min-inline-size:8ch;flex-shrink:1;text-align:center;cursor:pointer}.wizard-btn-container.wizard-text-deactivate:hover{cursor:default}.wizard-btn-container:not(.wizard-text-deactivate):hover .text-accent{color:var(--si-sys-text-accent-hover)!important}.completion-icon-size{font-size:96px}.circle{min-inline-size:1.125rem;min-block-size:1.125rem;border-radius:.75rem;border-width:1px;border-style:solid;border-color:currentColor;color:currentColor}.number-step{min-inline-size:1.5rem;min-block-size:1.5rem;text-align:center}.wizard-footer{container-type:inline-size}.wizard-footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:start;gap:var(--si-sys-sizing-spacing-y-60) var(--si-sys-sizing-spacing-x-60)}.wizard-footer-inner>.end{margin-inline-start:auto}@container (max-width: 25em){.wizard-footer-inner{flex-direction:column;align-items:stretch}.wizard-footer-inner>.end{margin-inline-start:unset}}\n"], dependencies: [{ kind: "component", type: SiIconComponent, selector: "si-icon", inputs: ["icon"] }, { kind: "directive", type: SiResizeObserverDirective, selector: "[siResizeObserver]", inputs: ["resizeThrottle", "emitInitial"], outputs: ["siResizeObserver"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: SiTranslatePipe, name: "translate" }] });
|
|
460
501
|
}
|
|
461
502
|
__decorate([
|
|
462
503
|
WebComponentContentChildren(SiWizardStepComponent)
|
|
463
504
|
], SiWizardComponent.prototype, "steps", void 0);
|
|
464
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
505
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiWizardComponent, decorators: [{
|
|
465
506
|
type: Component,
|
|
466
|
-
args: [{ selector: 'si-wizard', imports: [SiIconComponent, SiResizeObserverDirective, SiTranslatePipe, NgTemplateOutlet],
|
|
507
|
+
args: [{ selector: 'si-wizard', imports: [SiIconComponent, SiResizeObserverDirective, SiTranslatePipe, NgTemplateOutlet], host: {
|
|
467
508
|
class: 'py-6 px-8 d-flex flex-column',
|
|
468
509
|
'[class.vertical]': 'verticalLayout()',
|
|
469
510
|
'[style.--wizard-vertical-min-size]': 'verticalMinSize()',
|
|
470
511
|
'[style.--wizard-vertical-max-size]': 'verticalMaxSize()'
|
|
471
|
-
}, template: "@if (!showCompletionPage()) {\n @if (!verticalLayout()) {\n <div class=\"container-wizard\" [class.justify-content-center]=\"!inlineNavigation()\">\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"cancelBtnHorizontal\" />\n <ng-container *ngTemplateOutlet=\"backBtnHorizontal\" />\n }\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"nextBtnHorizontal\" />\n }\n </div>\n\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"saveBtn\" />\n } @else {\n <ng-container *ngTemplateOutlet=\"footer\" />\n }\n } @else {\n @if (showVerticalDivider()) {\n <div class=\"container-wizard vertical\">\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n <div class=\"vertical-divider\"></div>\n <div class=\"d-flex flex-column w-100\">\n <div class=\"steps-content\">\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n </div>\n <ng-container *ngTemplateOutlet=\"footer\" />\n </div>\n </div>\n } @else {\n <div class=\"container-wizard vertical\">\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n <div class=\"steps-content\">\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n </div>\n </div>\n <ng-container *ngTemplateOutlet=\"footer\" />\n }\n }\n} @else {\n <div class=\"text-center\">\n <si-icon class=\"completion-icon-size text-success\" [icon]=\"icons.elementChecked\" />\n <p class=\"si-h4\"> {{ completionText() | translate }}</p>\n </div>\n}\n\n<ng-template #stepsTemplate>\n <div\n #containerSteps\n class=\"container-steps\"\n [class.vertical]=\"verticalLayout()\"\n [class.mx-4]=\"inlineNavigation()\"\n [class.mt-4]=\"!verticalLayout() && inlineNavigation()\"\n (siResizeObserver)=\"updateVisibleSteps()\"\n >\n @for (item of activeSteps(); track item.index) {\n @let meta = stepsMetadata()[item.index];\n <div class=\"step\">\n <div\n [class]=\"['line', 'previous', meta.stateClass]\"\n [class.dashed]=\"$first && item.index > 0\"\n [class.vertical]=\"verticalLayout()\"\n [class.spacer]=\"$first && item.index === 0\"\n ></div>\n <a\n [class]=\"['focus-none', meta.stateClass]\"\n [attr.aria-current]=\"meta.ariaCurrent\"\n [attr.href]=\"!meta.canActivate || !currentStep?.isNextNavigable() ? null : '#'\"\n (click)=\"activateStep($event, item.index)\"\n >\n @if (showStepNumbers() && !item.step.failed()) {\n <div\n class=\"step-icon number-step d-flex justify-content-center align-items-center px-1\"\n >\n <div class=\"circle\" [class.status-warning]=\"item.step.failed()\">\n <span class=\"si-h5 px-2\" [class.completed-color]=\"item.index < index\">\n {{ item.index + 1 }}\n </span>\n </div>\n </div>\n } @else {\n <si-icon\n class=\"icon-lg step-icon\"\n [class.status-warning]=\"item.step.failed()\"\n [icon]=\"meta.icon\"\n />\n }\n <div\n class=\"title si-h5\"\n [class.text-center]=\"!verticalLayout()\"\n [class.px-6]=\"!verticalLayout()\"\n [attr.aria-disabled]=\"meta.ariaDisabled\"\n >{{ item.step.heading() | translate }}</div\n >\n </a>\n @if (item.index + 1 < stepCount) {\n <div\n [class]=\"['line', stepsMetadata()[item.index + 1].stateClass]\"\n [class.vertical]=\"verticalLayout()\"\n [class.dashed]=\"$last\"\n ></div>\n }\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #stepContent>\n <div [class.flex-grow-1]=\"!verticalLayout()\" [class.h-100]=\"verticalLayout()\">\n <ng-content />\n </div>\n</ng-template>\n\n<ng-template #cancelBtnHorizontal>\n @if (hasCancel()) {\n <div class=\"me-7\">\n <div class=\"wizard-btn-container\" (click)=\"wizardCancel.emit()\">\n <button\n type=\"button\"\n class=\"btn btn-circle btn-secondary mt-2 mb-4\"\n [attr.aria-label]=\"cancelText() | translate\"\n >\n <si-icon [icon]=\"icons.elementCancel\" />\n </button>\n <div class=\"si-h5 text-primary\">{{ cancelText() | translate }}</div>\n </div>\n </div>\n }\n</ng-template>\n\n<ng-template #footer>\n <div class=\"wizard-footer pt-6\">\n <div class=\"wizard-footer-inner\" [class.ms-6]=\"showVerticalDivider()\">\n @if (hasCancel()) {\n <button\n type=\"button\"\n class=\"btn btn-tertiary\"\n [attr.aria-label]=\"cancelText() | translate\"\n (click)=\"wizardCancel.emit()\"\n >\n {{ cancelText() | translate }}\n </button>\n }\n @if (!hideNavigation()) {\n <button\n type=\"button\"\n class=\"btn btn-secondary\"\n [class.d-none]=\"index === 0\"\n [class.end]=\"index !== 0\"\n [attr.aria-label]=\"backText() | translate\"\n (click)=\"back(1)\"\n >\n {{ backText() | translate }}\n </button>\n\n <button\n #nextButton\n type=\"button\"\n class=\"btn btn-primary\"\n [attr.aria-label]=\"nextText() | translate\"\n [disabled]=\"!currentStep?.isValid()\"\n [class.d-none]=\"index === steps().length - 1\"\n [class.end]=\"index === 0\"\n (click)=\"next(1)\"\n >\n {{ nextText() | translate }}\n </button>\n }\n\n @if (!hideSave()) {\n @if (index === steps().length - 1) {\n <button\n #saveButton\n type=\"button\"\n class=\"btn btn-primary save\"\n [class.end]=\"hideNavigation()\"\n [disabled]=\"!currentStep?.isValid() || !currentStep?.isNextNavigable()\"\n (click)=\"save()\"\n >{{ saveText() | translate }}</button\n >\n }\n }\n </div>\n </div>\n</ng-template>\n\n<ng-template #backBtnHorizontal>\n <div class=\"wizard-btn-container\">\n @if (!hideNavigation()) {\n <div class=\"back\" [class.invisible]=\"index === 0\" (click)=\"back(1)\">\n <button\n type=\"button\"\n class=\"btn btn-secondary btn-circle mb-2\"\n [attr.aria-label]=\"backText() | translate\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"icons.elementLeft4\" />\n </button>\n <div class=\"si-h5 text-primary\">{{ backText() | translate }}</div>\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #nextBtnHorizontal>\n <div class=\"wizard-btn-container\" [class.wizard-text-deactivate]=\"!currentStep?.isValid()\">\n @if (!hideNavigation()) {\n <div class=\"next\" [class.invisible]=\"index === steps().length - 1\" (click)=\"next(1)\">\n <button\n #nextButton\n type=\"button\"\n class=\"btn btn-primary btn-circle mb-2\"\n [disabled]=\"!currentStep?.isValid()\"\n [attr.aria-label]=\"nextText() | translate\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"icons.elementRight4\" />\n </button>\n <div\n class=\"si-h5 text-primary\"\n [class.text-muted]=\"!currentStep?.isValid()\"\n [attr.aria-disabled]=\"!currentStep?.isValid()\"\n >{{ nextText() | translate }}</div\n >\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #saveBtn>\n @if (!hideSave()) {\n <div [class.center-save]=\"!verticalLayout() && inlineNavigation()\">\n @if (index === steps().length - 1) {\n <button\n #saveButton\n type=\"button\"\n class=\"btn btn-primary save\"\n [disabled]=\"!currentStep?.isValid() || !currentStep?.isNextNavigable()\"\n (click)=\"save()\"\n >{{ saveText() | translate }}</button\n >\n }\n </div>\n }\n</ng-template>\n", styles: [":host.vertical{display:flex;flex-direction:column;block-size:100%}.container-steps{display:flex}.container-steps .step{display:grid}.container-steps:not(.vertical){inline-size:100%;justify-content:center;align-items:flex-start;padding-block:0}.container-steps:not(.vertical) .step{grid-template-columns:1fr auto 1fr;grid-template-rows:auto auto}.container-steps:not(.vertical) .step .step-icon{grid-row:1/2;grid-column:2/3;justify-self:center}.container-steps:not(.vertical) .step .title{margin-block-start:12px}.container-steps.vertical{flex-direction:column;block-size:100%;padding-block-start:32px;min-inline-size:var(--wizard-vertical-min-size, 180px);max-inline-size:var(--wizard-vertical-max-size, initial)}.container-steps.vertical .step{grid-template-columns:1.5rem 1fr;grid-template-rows:auto auto auto;align-items:center;flex:0 1 auto}.container-steps.vertical .step .step-icon{grid-row:2/3;grid-column:1/2;justify-self:center}.container-steps.vertical .step .title{grid-row:2/3;grid-column:2/3;padding-inline-start:8px}.container-steps .completed-color{color:var(--element-text-inverse)}.line{grid-row:1;justify-self:stretch}.line.vertical{grid-column:1/2;align-self:stretch;justify-self:center;border-inline-start-color:var(--element-ui-2);border-inline-start-width:2px;border-inline-start-style:solid;min-block-size:12px}.line.vertical.dashed{border-inline-start-style:dashed}.line.vertical.spacer{block-size:12px;border:0}.line.vertical:not(.previous){grid-row:3}.line:not(.vertical){grid-column:3/4;border-block-start-width:2px;border-block-start-style:solid;border-block-start-color:var(--element-ui-2);align-self:center}.line:not(.vertical).previous{grid-column:1/2}.line:not(.vertical).dashed{inline-size:32px;border-block-start-style:dashed}.line:not(.vertical).spacer{display:none}.line:not(.vertical).dashed.previous{justify-self:end}.line.active,.line.completed{border-color:var(--element-ui-0)}.line.dashed.vertical{min-block-size:12px;inline-size:auto}.step{inline-size:100%;flex-shrink:1}.step a{display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;grid-row:1/-1;grid-column:1/-1;align-items:center;justify-self:center;color:var(--element-ui-2)}.step a:hover{text-decoration:none}.step a:focus-visible .step-icon{outline:var(--element-button-focus-width) solid var(--element-focus-default);outline-offset:calc(-1 * var(--element-button-focus-width));border-radius:.75rem}.step a:focus-visible .step-icon.number-step{outline:none}.step a:focus-visible .step-icon.number-step .circle{outline:var(--element-button-focus-width) solid var(--element-focus-default);outline-offset:var(--element-button-focus-overlay-width)}.step .title{grid-row:2/3;grid-column:1/-1;color:var(--element-text-secondary);display:-webkit-box;overflow:hidden;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical}.step .active,.step .active .title{color:var(--element-ui-0);cursor:default}.step .disabled,.step .disabled:hover,.step a.disabled>*{cursor:default}.step .disabled .title,.step .disabled:hover .title,.step a.disabled>* .title{color:var(--element-text-disabled)}.step .disabled .step-icon,.step .disabled:hover .step-icon,.step a.disabled>* .step-icon{color:var(--element-ui-3)}.step a:not(.disabled):hover,.step a:not(.disabled):hover .step-icon,.step a:not(.disabled):hover .title{color:var(--element-ui-0-hover)!important}.step .completed .title{color:var(--element-text-primary)}.step .completed .step-icon{color:var(--element-ui-0)}.step .completed .circle{background-color:currentColor}.container-wizard{inline-size:100%;display:flex;flex-wrap:nowrap}.container-wizard:not(.vertical){justify-content:center;padding-block-end:16px}.container-wizard.vertical{justify-content:start;block-size:100%}.container-wizard.vertical .steps-content{flex:100%;padding-inline-start:16px}.container-wizard .vertical-divider{border-inline-end:1px solid var(--element-ui-4);margin-block:0}.center-save{display:flex;justify-content:center;padding-block-start:16px}.wizard-btn-container{min-inline-size:8ch;flex-shrink:1;text-align:center;cursor:pointer}.wizard-btn-container.wizard-text-deactivate:hover{cursor:default}.wizard-btn-container:not(.wizard-text-deactivate):hover .text-primary{color:var(--element-ui-0-hover)!important}.completion-icon-size{font-size:96px}.circle{min-inline-size:1.125rem;min-block-size:1.125rem;border-radius:.75rem;border-width:1px;border-style:solid;border-color:currentColor;color:currentColor}.number-step{min-inline-size:1.5rem;min-block-size:1.5rem;text-align:center}.wizard-footer{container-type:inline-size}.wizard-footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:start;gap:16px}.wizard-footer-inner>.end{margin-inline-start:auto}@container (max-width: 25em){.wizard-footer-inner{flex-direction:column;align-items:stretch}.wizard-footer-inner>.end{margin-inline-start:unset}}\n"] }]
|
|
512
|
+
}, template: "@if (!showCompletionPage()) {\n @if (!verticalLayout()) {\n <div class=\"container-wizard\" [class.justify-content-center]=\"!inlineNavigation()\">\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"cancelBtnHorizontal\" />\n <ng-container *ngTemplateOutlet=\"backBtnHorizontal\" />\n }\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"nextBtnHorizontal\" />\n }\n </div>\n\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n @if (inlineNavigation()) {\n <ng-container *ngTemplateOutlet=\"saveBtn\" />\n } @else {\n <ng-container *ngTemplateOutlet=\"footer\" />\n }\n } @else {\n @if (showVerticalDivider()) {\n <div class=\"container-wizard vertical\">\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n <div class=\"vertical-divider\"></div>\n <div class=\"d-flex flex-column w-100\">\n <div class=\"steps-content\">\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n </div>\n <ng-container *ngTemplateOutlet=\"footer\" />\n </div>\n </div>\n } @else {\n <div class=\"container-wizard vertical\">\n <ng-container *ngTemplateOutlet=\"stepsTemplate\" />\n <div class=\"steps-content\">\n <ng-container *ngTemplateOutlet=\"stepContent\" />\n </div>\n </div>\n <ng-container *ngTemplateOutlet=\"footer\" />\n }\n }\n} @else {\n <div class=\"text-center\">\n <si-icon class=\"completion-icon-size text-success\" [icon]=\"icons.elementChecked\" />\n <p class=\"si-h4\"> {{ completionText() | translate }}</p>\n </div>\n}\n\n<ng-template #stepsTemplate>\n <div\n #containerSteps\n class=\"container-steps\"\n [class.vertical]=\"verticalLayout()\"\n [class.mx-4]=\"inlineNavigation()\"\n [class.mt-4]=\"!verticalLayout() && inlineNavigation()\"\n (siResizeObserver)=\"updateVisibleSteps()\"\n >\n @for (item of activeSteps(); track item.index) {\n @let meta = stepsMetadata()[item.index];\n <div class=\"step\">\n <div\n [class]=\"['line', 'previous', meta.stateClass]\"\n [class.dashed]=\"$first && item.index > 0\"\n [class.vertical]=\"verticalLayout()\"\n [class.spacer]=\"$first && item.index === 0\"\n ></div>\n <a\n [class]=\"['focus-none', meta.stateClass]\"\n [attr.aria-current]=\"meta.ariaCurrent\"\n [attr.href]=\"!meta.canActivate || !currentStep?.isNextNavigable() ? null : '#'\"\n (click)=\"activateStep($event, item.index)\"\n >\n @if (showStepNumbers() && !item.step.failed()) {\n <div\n class=\"step-icon number-step d-flex justify-content-center align-items-center px-1\"\n >\n <div class=\"circle\" [class.status-warning]=\"item.step.failed()\">\n <span class=\"si-h5 px-2\" [class.completed-color]=\"item.index < index\">\n {{ item.index + 1 }}\n </span>\n </div>\n </div>\n } @else {\n <si-icon\n class=\"icon-lg step-icon\"\n [class.status-warning]=\"item.step.failed()\"\n [icon]=\"meta.icon\"\n />\n }\n <div\n class=\"title si-h5\"\n [class.text-center]=\"!verticalLayout()\"\n [class.px-6]=\"!verticalLayout()\"\n [attr.aria-disabled]=\"meta.ariaDisabled\"\n >{{ item.step.heading() | translate }}</div\n >\n </a>\n @if (item.index + 1 < stepCount) {\n <div\n [class]=\"['line', stepsMetadata()[item.index + 1].stateClass]\"\n [class.vertical]=\"verticalLayout()\"\n [class.dashed]=\"$last\"\n ></div>\n }\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #stepContent>\n <div [class.flex-grow-1]=\"!verticalLayout()\" [class.h-100]=\"verticalLayout()\">\n <ng-content />\n </div>\n</ng-template>\n\n<ng-template #cancelBtnHorizontal>\n @if (hasCancel()) {\n <div class=\"me-7\">\n <div class=\"wizard-btn-container\" (click)=\"wizardCancel.emit()\">\n <button\n type=\"button\"\n class=\"btn btn-circle btn-secondary mt-2 mb-4\"\n [attr.aria-label]=\"cancelText() | translate\"\n >\n <si-icon [icon]=\"icons.elementCancel\" />\n </button>\n <div class=\"si-h5 text-accent\">{{ cancelText() | translate }}</div>\n </div>\n </div>\n }\n</ng-template>\n\n<ng-template #footer>\n <div class=\"wizard-footer pt-6\">\n <div class=\"wizard-footer-inner\" [class.ms-6]=\"showVerticalDivider()\">\n @if (hasCancel()) {\n <button\n type=\"button\"\n class=\"btn btn-tertiary\"\n [attr.aria-label]=\"cancelText() | translate\"\n (click)=\"wizardCancel.emit()\"\n >\n {{ cancelText() | translate }}\n </button>\n }\n @if (!hideNavigation()) {\n <button\n type=\"button\"\n class=\"btn btn-secondary\"\n [class.d-none]=\"index === 0\"\n [class.end]=\"index !== 0\"\n [attr.aria-label]=\"backText() | translate\"\n (click)=\"back(1)\"\n >\n {{ backText() | translate }}\n </button>\n\n <button\n #nextButton\n type=\"button\"\n class=\"btn btn-primary\"\n [attr.aria-label]=\"nextText() | translate\"\n [disabled]=\"!currentStep?.isValid()\"\n [class.d-none]=\"index === steps().length - 1\"\n [class.end]=\"index === 0\"\n (click)=\"next(1)\"\n >\n {{ nextText() | translate }}\n </button>\n }\n\n @if (!hideSave()) {\n @if (index === steps().length - 1) {\n <button\n #saveButton\n type=\"button\"\n class=\"btn btn-primary save\"\n [class.end]=\"hideNavigation()\"\n [disabled]=\"!currentStep?.isValid() || !currentStep?.isNextNavigable()\"\n (click)=\"save()\"\n >{{ saveText() | translate }}</button\n >\n }\n }\n </div>\n </div>\n</ng-template>\n\n<ng-template #backBtnHorizontal>\n <div class=\"wizard-btn-container\">\n @if (!hideNavigation()) {\n <div class=\"back\" [class.invisible]=\"index === 0\" (click)=\"back(1)\">\n <button\n type=\"button\"\n class=\"btn btn-secondary btn-circle mb-2\"\n [attr.aria-label]=\"backText() | translate\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"icons.elementLeft4\" />\n </button>\n <div class=\"si-h5 text-accent\">{{ backText() | translate }}</div>\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #nextBtnHorizontal>\n <div class=\"wizard-btn-container\" [class.wizard-text-deactivate]=\"!currentStep?.isValid()\">\n @if (!hideNavigation()) {\n <div class=\"next\" [class.invisible]=\"index === steps().length - 1\" (click)=\"next(1)\">\n <button\n #nextButton\n type=\"button\"\n class=\"btn btn-primary btn-circle mb-2\"\n [disabled]=\"!currentStep?.isValid()\"\n [attr.aria-label]=\"nextText() | translate\"\n >\n <si-icon class=\"flip-rtl\" [icon]=\"icons.elementRight4\" />\n </button>\n <div\n class=\"si-h5 text-accent\"\n [class.text-disabled]=\"!currentStep?.isValid()\"\n [attr.aria-disabled]=\"!currentStep?.isValid()\"\n >{{ nextText() | translate }}</div\n >\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #saveBtn>\n @if (!hideSave()) {\n <div [class.center-save]=\"!verticalLayout() && inlineNavigation()\">\n @if (index === steps().length - 1) {\n <button\n #saveButton\n type=\"button\"\n class=\"btn btn-primary save\"\n [disabled]=\"!currentStep?.isValid() || !currentStep?.isNextNavigable()\"\n (click)=\"save()\"\n >{{ saveText() | translate }}</button\n >\n }\n </div>\n }\n</ng-template>\n", styles: [":host.vertical{display:flex;flex-direction:column;block-size:100%}.container-steps{display:flex}.container-steps .step{display:grid}.container-steps:not(.vertical){inline-size:100%;justify-content:center;align-items:flex-start;padding-block:0}.container-steps:not(.vertical) .step{grid-template-columns:1fr auto 1fr;grid-template-rows:auto auto}.container-steps:not(.vertical) .step .step-icon{grid-row:1/2;grid-column:2/3;justify-self:center}.container-steps:not(.vertical) .step .title{margin-block-start:var(--si-sys-sizing-spacing-y-50)}.container-steps.vertical{flex-direction:column;block-size:100%;padding-block-start:var(--si-sys-sizing-spacing-y-90);min-inline-size:var(--wizard-vertical-min-size, 180px);max-inline-size:var(--wizard-vertical-max-size, initial)}.container-steps.vertical .step{grid-template-columns:1.5rem 1fr;grid-template-rows:auto auto auto;align-items:center;flex:0 1 auto}.container-steps.vertical .step .step-icon{grid-row:2/3;grid-column:1/2;justify-self:center}.container-steps.vertical .step .title{grid-row:2/3;grid-column:2/3;padding-inline-start:var(--si-sys-sizing-spacing-x-40)}.container-steps .completed-color{color:var(--si-sys-text-on-accent)}.line{grid-row:1;justify-self:stretch}.line.vertical{grid-column:1/2;align-self:stretch;justify-self:center;border-inline-start-color:var(--si-sys-border-2);border-inline-start-width:2px;border-inline-start-style:solid;min-block-size:var(--si-sys-sizing-spacing-y-50)}.line.vertical.dashed{border-inline-start-style:dashed}.line.vertical.spacer{block-size:var(--si-sys-sizing-spacing-y-50);border:0}.line.vertical:not(.previous){grid-row:3}.line:not(.vertical){grid-column:3/4;border-block-start-width:2px;border-block-start-style:solid;border-block-start-color:var(--si-sys-border-2);align-self:center}.line:not(.vertical).previous{grid-column:1/2}.line:not(.vertical).dashed{inline-size:var(--si-sys-sizing-spacing-x-90);border-block-start-style:dashed}.line:not(.vertical).spacer{display:none}.line:not(.vertical).dashed.previous{justify-self:end}.line.active,.line.completed{border-color:var(--si-sys-text-accent)}.line.dashed.vertical{min-block-size:var(--si-sys-sizing-spacing-y-50);inline-size:auto}.step{inline-size:100%;flex-shrink:1}.step a{display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;grid-row:1/-1;grid-column:1/-1;align-items:center;justify-self:center;color:var(--si-sys-border-2)}.step a:hover{text-decoration:none}.step a:focus-visible .step-icon{outline:var(--element-button-focus-width) solid var(--si-sys-effects-focus);outline-offset:calc(-1 * var(--element-button-focus-width));border-radius:.75rem}.step a:focus-visible .step-icon.number-step{outline:none}.step a:focus-visible .step-icon.number-step .circle{outline:var(--element-button-focus-width) solid var(--si-sys-effects-focus);outline-offset:var(--element-button-focus-overlay-width)}.step .title{grid-row:2/3;grid-column:1/-1;color:var(--si-sys-text-secondary);display:-webkit-box;overflow:hidden;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical}.step .active,.step .active .title{color:var(--si-sys-text-accent);cursor:default}.step .disabled,.step .disabled:hover,.step a.disabled>*{cursor:default}.step .disabled .title,.step .disabled:hover .title,.step a.disabled>* .title{color:var(--si-sys-text-disabled)}.step .disabled .step-icon,.step .disabled:hover .step-icon,.step a.disabled>* .step-icon{color:var(--si-sys-text-disabled)}.step a:not(.disabled):hover,.step a:not(.disabled):hover .step-icon,.step a:not(.disabled):hover .title{color:var(--si-sys-text-accent-hover)!important}.step .completed .title{color:var(--si-sys-text-primary)}.step .completed .step-icon{color:var(--si-sys-text-accent)}.step .completed .circle{background-color:currentColor}.container-wizard{inline-size:100%;display:flex;flex-wrap:nowrap}.container-wizard:not(.vertical){justify-content:center;padding-block-end:var(--si-sys-sizing-spacing-y-60)}.container-wizard.vertical{justify-content:start;block-size:100%}.container-wizard.vertical .steps-content{flex:100%;padding-inline-start:var(--si-sys-sizing-spacing-x-60)}.container-wizard .vertical-divider{border-inline-end:1px solid var(--si-sys-border-4);margin-block:0}.center-save{display:flex;justify-content:center;padding-block-start:var(--si-sys-sizing-spacing-y-60)}.wizard-btn-container{min-inline-size:8ch;flex-shrink:1;text-align:center;cursor:pointer}.wizard-btn-container.wizard-text-deactivate:hover{cursor:default}.wizard-btn-container:not(.wizard-text-deactivate):hover .text-accent{color:var(--si-sys-text-accent-hover)!important}.completion-icon-size{font-size:96px}.circle{min-inline-size:1.125rem;min-block-size:1.125rem;border-radius:.75rem;border-width:1px;border-style:solid;border-color:currentColor;color:currentColor}.number-step{min-inline-size:1.5rem;min-block-size:1.5rem;text-align:center}.wizard-footer{container-type:inline-size}.wizard-footer-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:start;gap:var(--si-sys-sizing-spacing-y-60) var(--si-sys-sizing-spacing-x-60)}.wizard-footer-inner>.end{margin-inline-start:auto}@container (max-width: 25em){.wizard-footer-inner{flex-direction:column;align-items:stretch}.wizard-footer-inner>.end{margin-inline-start:unset}}\n"] }]
|
|
472
513
|
}], ctorParameters: () => [], propDecorators: { containerSteps: [{ type: i0.ViewChild, args: ['containerSteps', { isSignal: true }] }], nextButton: [{ type: i0.ViewChild, args: ['nextButton', { isSignal: true }] }], saveButton: [{ type: i0.ViewChild, args: ['saveButton', { isSignal: true }] }], backText: [{ type: i0.Input, args: [{ isSignal: true, alias: "backText", required: false }] }], nextText: [{ type: i0.Input, args: [{ isSignal: true, alias: "nextText", required: false }] }], hideNavigation: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideNavigation", required: false }] }], saveText: [{ type: i0.Input, args: [{ isSignal: true, alias: "saveText", required: false }] }], hideSave: [{ type: i0.Input, args: [{ isSignal: true, alias: "hideSave", required: false }] }], completionText: [{ type: i0.Input, args: [{ isSignal: true, alias: "completionText", required: false }] }], cancelText: [{ type: i0.Input, args: [{ isSignal: true, alias: "cancelText", required: false }] }], hasCancel: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasCancel", required: false }] }], enableCompletionPage: [{ type: i0.Input, args: [{ isSignal: true, alias: "enableCompletionPage", required: false }] }], completionPageVisibleTime: [{ type: i0.Input, args: [{ isSignal: true, alias: "completionPageVisibleTime", required: false }] }], stepIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "stepIcon", required: false }] }], stepActiveIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "stepActiveIcon", required: false }] }], stepCompletedIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "stepCompletedIcon", required: false }] }], stepFailedIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "stepFailedIcon", required: false }] }], verticalLayout: [{ type: i0.Input, args: [{ isSignal: true, alias: "verticalLayout", required: false }] }], inlineNavigation: [{ type: i0.Input, args: [{ isSignal: true, alias: "inlineNavigation", required: false }] }], showStepNumbers: [{ type: i0.Input, args: [{ isSignal: true, alias: "showStepNumbers", required: false }] }], showVerticalDivider: [{ type: i0.Input, args: [{ isSignal: true, alias: "showVerticalDivider", required: false }] }], verticalMinSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "verticalMinSize", required: false }] }], verticalMaxSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "verticalMaxSize", required: false }] }], completionAction: [{ type: i0.Output, args: ["completionAction"] }], wizardCancel: [{ type: i0.Output, args: ["wizardCancel"] }], steps: [] } });
|
|
473
514
|
|
|
474
515
|
/**
|
|
@@ -476,11 +517,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.8", ngImpor
|
|
|
476
517
|
* SPDX-License-Identifier: MIT
|
|
477
518
|
*/
|
|
478
519
|
class SiWizardModule {
|
|
479
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
480
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
481
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
520
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiWizardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
521
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.8", ngImport: i0, type: SiWizardModule, imports: [SiWizardComponent, SiWizardStepComponent], exports: [SiWizardComponent, SiWizardStepComponent] });
|
|
522
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiWizardModule, imports: [SiWizardComponent] });
|
|
482
523
|
}
|
|
483
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
524
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: SiWizardModule, decorators: [{
|
|
484
525
|
type: NgModule,
|
|
485
526
|
args: [{
|
|
486
527
|
imports: [SiWizardComponent, SiWizardStepComponent],
|