@testgorilla/tgo-ui 3.14.13 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/donut-chart/donut-chart.component.d.ts +2 -2
- package/components/filter-button/filter-button.component.d.ts +2 -2
- package/components/icon/icon-svg-content.d.ts +1 -1
- package/components/table/table.component.d.ts +1 -1
- package/fesm2022/testgorilla-tgo-ui.mjs +731 -715
- package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
- package/package.json +17 -20
- package/projects/tgo-canopy-ui/theme/_palette.scss +2 -1
- package/utils/color-contrast.d.ts +1 -1
- package/esm2022/assets/i18n/da-dk.json +0 -820
- package/esm2022/assets/i18n/de.json +0 -820
- package/esm2022/assets/i18n/en.json +0 -827
- package/esm2022/assets/i18n/es.json +0 -820
- package/esm2022/assets/i18n/fr.json +0 -820
- package/esm2022/assets/i18n/it-it.json +0 -820
- package/esm2022/assets/i18n/ja-jp.json +0 -820
- package/esm2022/assets/i18n/nb-no.json +0 -820
- package/esm2022/assets/i18n/nl.json +0 -820
- package/esm2022/assets/i18n/pl-pl.json +0 -820
- package/esm2022/assets/i18n/pt-br.json +0 -820
- package/esm2022/assets/i18n/sv-se.json +0 -820
- package/esm2022/components/accordion/accordion.component.mjs +0 -135
- package/esm2022/components/accordion/accordion.component.module.mjs +0 -40
- package/esm2022/components/accordion/accordion.model.mjs +0 -2
- package/esm2022/components/ai-feedback/ai-feedback.component.mjs +0 -35
- package/esm2022/components/ai-feedback/ai-feedback.model.mjs +0 -2
- package/esm2022/components/ai-feedback/ai-feedback.module.mjs +0 -20
- package/esm2022/components/alert-banner/alert-banner.component.mjs +0 -198
- package/esm2022/components/alert-banner/alert-banner.component.module.mjs +0 -21
- package/esm2022/components/alert-banner/alert-banner.model.mjs +0 -2
- package/esm2022/components/autocomplete/autocomplete.component.mjs +0 -837
- package/esm2022/components/autocomplete/autocomplete.component.module.mjs +0 -77
- package/esm2022/components/autocomplete/autocomplete.model.mjs +0 -25
- package/esm2022/components/autocomplete/includes.pipe.mjs +0 -25
- package/esm2022/components/autocomplete/prevent-input.directive.mjs +0 -27
- package/esm2022/components/autocomplete/transform-Item.pipe.mjs +0 -32
- package/esm2022/components/avatar/avatar.component.mjs +0 -104
- package/esm2022/components/avatar/avatar.component.module.mjs +0 -23
- package/esm2022/components/avatar/avatar.model.mjs +0 -21
- package/esm2022/components/badge/badge.component.mjs +0 -118
- package/esm2022/components/badge/badge.component.module.mjs +0 -20
- package/esm2022/components/badge/badge.model.mjs +0 -39
- package/esm2022/components/breadcrumb/breadcrumb.component.mjs +0 -191
- package/esm2022/components/breadcrumb/breadcrumb.component.module.mjs +0 -45
- package/esm2022/components/breadcrumb/breadcrumb.model.mjs +0 -2
- package/esm2022/components/button/button.component.mjs +0 -452
- package/esm2022/components/button/button.component.module.mjs +0 -51
- package/esm2022/components/button/button.model.mjs +0 -2
- package/esm2022/components/card/card.component.mjs +0 -141
- package/esm2022/components/card/card.component.module.mjs +0 -19
- package/esm2022/components/card/card.model.mjs +0 -2
- package/esm2022/components/checkbox/checkbox.component.mjs +0 -336
- package/esm2022/components/checkbox/checkbox.component.module.mjs +0 -28
- package/esm2022/components/checkbox/focus-visible.directive.mjs +0 -40
- package/esm2022/components/checklist/checklist.component.mjs +0 -157
- package/esm2022/components/checklist/checklist.model.mjs +0 -2
- package/esm2022/components/confirm-dialog/confirm-dialog.component.mjs +0 -73
- package/esm2022/components/confirm-dialog/confirm-dialog.component.module.mjs +0 -29
- package/esm2022/components/confirm-dialog/confirm-dialog.model.mjs +0 -2
- package/esm2022/components/datepicker/date-adapter.mjs +0 -39
- package/esm2022/components/datepicker/datepicker.component.mjs +0 -353
- package/esm2022/components/datepicker/datepicker.component.module.mjs +0 -60
- package/esm2022/components/datepicker/datepicker.service.mjs +0 -20
- package/esm2022/components/datepicker/no-date-format.directive.mjs +0 -56
- package/esm2022/components/deprecated-paginator/deprecated-paginator.component.mjs +0 -55
- package/esm2022/components/deprecated-paginator/deprecated-paginator.component.module.mjs +0 -20
- package/esm2022/components/dialog/dialog.component.mjs +0 -275
- package/esm2022/components/dialog/dialog.component.module.mjs +0 -23
- package/esm2022/components/dialog/dialog.model.mjs +0 -2
- package/esm2022/components/dialog/dialog.service.mjs +0 -36
- package/esm2022/components/divider/divider.component.mjs +0 -65
- package/esm2022/components/divider/divider.component.module.mjs +0 -19
- package/esm2022/components/divider/divider.model.mjs +0 -2
- package/esm2022/components/donut-chart/donut-chart.component.mjs +0 -122
- package/esm2022/components/donut-chart/donut-chart.component.model.mjs +0 -2
- package/esm2022/components/donut-chart/donut-chart.component.module.mjs +0 -20
- package/esm2022/components/dropdown/dropdown.component.mjs +0 -378
- package/esm2022/components/dropdown/dropdown.component.module.mjs +0 -57
- package/esm2022/components/dropdown/dropdown.model.mjs +0 -2
- package/esm2022/components/elevation-shadow/elevation-shadow.component.mjs +0 -45
- package/esm2022/components/elevation-shadow/elevation-shadow.component.module.mjs +0 -18
- package/esm2022/components/elevation-shadow/elevation-shadow.constant.mjs +0 -9
- package/esm2022/components/empty-state/empty-state.component.mjs +0 -301
- package/esm2022/components/empty-state/empty-state.component.module.mjs +0 -21
- package/esm2022/components/empty-state/empty-state.model.mjs +0 -2
- package/esm2022/components/field/field.component.mjs +0 -574
- package/esm2022/components/field/field.component.module.mjs +0 -64
- package/esm2022/components/field/field.model.mjs +0 -2
- package/esm2022/components/file-upload/file-upload.component.mjs +0 -307
- package/esm2022/components/file-upload/file-upload.component.module.mjs +0 -40
- package/esm2022/components/filter-button/filter-button.component.mjs +0 -255
- package/esm2022/components/filter-button/filter-button.component.module.mjs +0 -58
- package/esm2022/components/filter-button/filter-button.model.mjs +0 -2
- package/esm2022/components/gaussian-chart/gaussian-chart.component.mjs +0 -254
- package/esm2022/components/gaussian-chart/gaussian-chart.module.mjs +0 -42
- package/esm2022/components/icon/icon-svg-content.mjs +0 -491
- package/esm2022/components/icon/icon.component.mjs +0 -178
- package/esm2022/components/icon/icon.component.module.mjs +0 -21
- package/esm2022/components/icon/icon.config.mjs +0 -780
- package/esm2022/components/icon/icon.model.mjs +0 -2
- package/esm2022/components/icon-label/icon-label.component.mjs +0 -74
- package/esm2022/components/icon-label/icon-label.component.module.mjs +0 -20
- package/esm2022/components/inline-field/inline-field.component.mjs +0 -320
- package/esm2022/components/inline-field/inline-field.component.module.mjs +0 -43
- package/esm2022/components/inline-field/inline-field.model.mjs +0 -2
- package/esm2022/components/logo/logo.component.mjs +0 -165
- package/esm2022/components/logo/logo.component.module.mjs +0 -18
- package/esm2022/components/logo/logo.model.mjs +0 -32
- package/esm2022/components/media-card/media-card.component.mjs +0 -47
- package/esm2022/components/media-dialog/media-dialog.component.mjs +0 -75
- package/esm2022/components/media-dialog/media-dialog.model.mjs +0 -2
- package/esm2022/components/multi-input/multi-input.component.mjs +0 -271
- package/esm2022/components/multi-input/multi-input.component.module.mjs +0 -58
- package/esm2022/components/multi-input/multi-input.model.mjs +0 -2
- package/esm2022/components/multi-input/required-multi-input.validator.mjs +0 -14
- package/esm2022/components/navbar/mobile-navbar-side-sheet/mobile-navbar-side-sheet.component.mjs +0 -86
- package/esm2022/components/navbar/navbar.component.mjs +0 -212
- package/esm2022/components/navbar/navbar.component.module.mjs +0 -71
- package/esm2022/components/navbar/navbar.model.mjs +0 -2
- package/esm2022/components/overflow-menu/overflow-menu.component.mjs +0 -254
- package/esm2022/components/overflow-menu/overflow-menu.component.module.mjs +0 -25
- package/esm2022/components/overflow-menu/overflow-menu.model.mjs +0 -2
- package/esm2022/components/page-header/page-header.component.mjs +0 -71
- package/esm2022/components/page-header/page-header.component.module.mjs +0 -20
- package/esm2022/components/paginator/paginator.component.mjs +0 -87
- package/esm2022/components/paginator/paginator.component.module.mjs +0 -19
- package/esm2022/components/password-criteria/password.component.mjs +0 -111
- package/esm2022/components/password-criteria/password.component.module.mjs +0 -39
- package/esm2022/components/password-strength/password-strength.component.mjs +0 -93
- package/esm2022/components/password-strength/password-strength.component.module.mjs +0 -21
- package/esm2022/components/phone-input/join-strings.pipe.mjs +0 -14
- package/esm2022/components/phone-input/phone-input.component.mjs +0 -354
- package/esm2022/components/phone-input/phone-input.component.module.mjs +0 -63
- package/esm2022/components/phone-input/phone-input.model.mjs +0 -2
- package/esm2022/components/progress-bar/progress-bar.component.mjs +0 -103
- package/esm2022/components/progress-bar/progress-bar.component.module.mjs +0 -21
- package/esm2022/components/prompt/prompt.component.mjs +0 -187
- package/esm2022/components/prompt/prompt.model.mjs +0 -2
- package/esm2022/components/prompt/prompt.module.mjs +0 -62
- package/esm2022/components/radial-progress/radial-progress.component.mjs +0 -118
- package/esm2022/components/radial-progress/radial-progress.component.module.mjs +0 -20
- package/esm2022/components/radial-progress/radial-progress.model.mjs +0 -11
- package/esm2022/components/radio-button/radio-button.component.mjs +0 -344
- package/esm2022/components/radio-button/radio-button.component.module.mjs +0 -25
- package/esm2022/components/radio-button/radio-button.model.mjs +0 -2
- package/esm2022/components/rating/half-star.pipe.mjs +0 -23
- package/esm2022/components/rating/rating.component.mjs +0 -106
- package/esm2022/components/rating/rating.component.module.mjs +0 -20
- package/esm2022/components/scale/scale.component.mjs +0 -136
- package/esm2022/components/scale/scale.component.module.mjs +0 -18
- package/esm2022/components/scale-table/scale-table.component.mjs +0 -61
- package/esm2022/components/scale-table/scale-table.model.mjs +0 -2
- package/esm2022/components/segmented-bar/segmented-bar.component.mjs +0 -111
- package/esm2022/components/segmented-bar/segmented-bar.component.module.mjs +0 -22
- package/esm2022/components/segmented-bar/segmented-bar.model.mjs +0 -2
- package/esm2022/components/segmented-button/segmented-button.component.mjs +0 -104
- package/esm2022/components/segmented-button/segmented-button.component.module.mjs +0 -21
- package/esm2022/components/segmented-button/segmented-button.model.mjs +0 -2
- package/esm2022/components/selectable-card/selectable-card.component.mjs +0 -53
- package/esm2022/components/selectable-card/selectable-card.component.module.mjs +0 -20
- package/esm2022/components/side-panel/side-panel-data-injection-token.mjs +0 -3
- package/esm2022/components/side-panel/side-panel.animations.mjs +0 -26
- package/esm2022/components/side-panel/side-panel.component.mjs +0 -55
- package/esm2022/components/side-panel/side-panel.model.mjs +0 -54
- package/esm2022/components/side-panel/side-panel.service.mjs +0 -98
- package/esm2022/components/side-sheet/side-sheet.component.mjs +0 -105
- package/esm2022/components/side-sheet/side-sheet.component.module.mjs +0 -43
- package/esm2022/components/side-sheet/side-sheet.model.mjs +0 -2
- package/esm2022/components/side-sheet/side-sheet.service.mjs +0 -31
- package/esm2022/components/skeleton/skeleton.component.mjs +0 -74
- package/esm2022/components/skeleton/skeleton.model.mjs +0 -2
- package/esm2022/components/slider/slider.component.mjs +0 -256
- package/esm2022/components/slider/slider.component.module.mjs +0 -16
- package/esm2022/components/slider/slider.model.mjs +0 -2
- package/esm2022/components/snackbar/snackbar.component.mjs +0 -235
- package/esm2022/components/snackbar/snackbar.component.module.mjs +0 -25
- package/esm2022/components/snackbar/snackbar.model.mjs +0 -2
- package/esm2022/components/snackbar/snackbar.service.mjs +0 -42
- package/esm2022/components/spider-chart/spider-chart.component.mjs +0 -443
- package/esm2022/components/spider-chart/spider-chart.model.mjs +0 -4
- package/esm2022/components/spider-chart/spider-chart.module.mjs +0 -44
- package/esm2022/components/spinner/spinner.component.mjs +0 -84
- package/esm2022/components/spinner/spinner.model.mjs +0 -2
- package/esm2022/components/spinner/spinner.module.mjs +0 -20
- package/esm2022/components/step/step.component.mjs +0 -209
- package/esm2022/components/step/step.component.module.mjs +0 -21
- package/esm2022/components/stepper/stepper.component.mjs +0 -198
- package/esm2022/components/stepper/stepper.component.module.mjs +0 -44
- package/esm2022/components/stepper/stepper.model.mjs +0 -2
- package/esm2022/components/table/sentence-case.pipe.mjs +0 -19
- package/esm2022/components/table/table.component.mjs +0 -273
- package/esm2022/components/table/table.component.module.mjs +0 -61
- package/esm2022/components/table/table.model.mjs +0 -25
- package/esm2022/components/tabs/tab.directive.mjs +0 -63
- package/esm2022/components/tabs/tabs.component.mjs +0 -219
- package/esm2022/components/tabs/tabs.component.module.mjs +0 -23
- package/esm2022/components/tabs/tabs.model.mjs +0 -2
- package/esm2022/components/tag/tag.component.mjs +0 -212
- package/esm2022/components/tag/tag.component.module.mjs +0 -24
- package/esm2022/components/tag/tag.model.mjs +0 -2
- package/esm2022/components/toggle/toggle.component.mjs +0 -190
- package/esm2022/components/toggle/toggle.component.module.mjs +0 -24
- package/esm2022/components/toggle/toggle.model.mjs +0 -2
- package/esm2022/components/tooltip/tooltip-template.directive.mjs +0 -133
- package/esm2022/components/tooltip/tooltip.component.mjs +0 -108
- package/esm2022/components/tooltip/tooltip.component.module.mjs +0 -27
- package/esm2022/components/tooltip/tooltip.model.mjs +0 -8
- package/esm2022/components/universal-skills-report/universal-skills-report.component.mjs +0 -80
- package/esm2022/components/universal-skills-report/universal-skills-report.component.module.mjs +0 -43
- package/esm2022/components/universal-skills-spider-charts/universal-skills-spider-charts.component.mjs +0 -109
- package/esm2022/components/universal-skills-spider-charts/universal-skills-spider-charts.component.module.mjs +0 -52
- package/esm2022/components/validation-error/validation-error.component.mjs +0 -55
- package/esm2022/components/validation-error/validation-error.model.mjs +0 -2
- package/esm2022/components/validation-error/validation-error.module.mjs +0 -20
- package/esm2022/directives/digits-only.directive.mjs +0 -77
- package/esm2022/directives/drag-drop.directive.mjs +0 -55
- package/esm2022/directives/dynamic-component.directive.mjs +0 -40
- package/esm2022/directives/ellipse-text.directive.mjs +0 -51
- package/esm2022/directives/select-text.directive.mjs +0 -40
- package/esm2022/directives/step-line-element.directive.mjs +0 -51
- package/esm2022/models/application-theme.model.mjs +0 -2
- package/esm2022/models/checkbox.model.mjs +0 -2
- package/esm2022/models/colors.model.mjs +0 -78
- package/esm2022/models/keyboard-events.model.mjs +0 -13
- package/esm2022/models/screen-breakpoints.model.mjs +0 -7
- package/esm2022/models/universal-skills-report.model.mjs +0 -33
- package/esm2022/pipes/data-property-getter.mjs +0 -33
- package/esm2022/pipes/has-validation-error.pipe.mjs +0 -27
- package/esm2022/pipes/memoize-func.pipe.mjs +0 -39
- package/esm2022/pipes/name-initials.pipe.mjs +0 -25
- package/esm2022/pipes/truncate.pipe.mjs +0 -34
- package/esm2022/pipes/ui-ordinal-suffix.pipe.mjs +0 -31
- package/esm2022/pipes/ui-translate.pipe.mjs +0 -81
- package/esm2022/providers/is-large-tablet.mjs +0 -11
- package/esm2022/providers/is-mobile.mjs +0 -11
- package/esm2022/public-api.mjs +0 -259
- package/esm2022/services/icons.service.mjs +0 -22
- package/esm2022/services/universal-skills.service.mjs +0 -85
- package/esm2022/testgorilla-tgo-ui.mjs +0 -5
- package/esm2022/utils/alert-bar.model.mjs +0 -2
- package/esm2022/utils/alert-bars.utils.mjs +0 -34
- package/esm2022/utils/autocomplete-utils.mjs +0 -78
- package/esm2022/utils/color-contrast.mjs +0 -131
- package/esm2022/utils/hex-to-rgb.mjs +0 -9
- package/esm2022/utils/localization/language.model.mjs +0 -16
- package/esm2022/utils/localization/language.service.mjs +0 -44
- package/esm2022/utils/table.utils.mjs +0 -25
|
@@ -1,198 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, Optional, Output, signal, ViewChild, } from '@angular/core';
|
|
2
|
-
import { IS_MOBILE_TOKEN } from '../../providers/is-mobile';
|
|
3
|
-
import { takeUntilDestroyed } from "@angular/core/rxjs-interop";
|
|
4
|
-
import { IS_LARGE_TABLET_TOKEN } from '../../providers/is-large-tablet';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@angular/cdk/a11y";
|
|
7
|
-
import * as i2 from "@angular/common";
|
|
8
|
-
import * as i3 from "../icon/icon.component";
|
|
9
|
-
import * as i4 from "../step/step.component";
|
|
10
|
-
import * as i5 from "../radial-progress/radial-progress.component";
|
|
11
|
-
import * as i6 from "../../directives/step-line-element.directive";
|
|
12
|
-
import * as i7 from "../../pipes/ui-translate.pipe";
|
|
13
|
-
import * as i8 from "rxjs";
|
|
14
|
-
export class StepperComponent {
|
|
15
|
-
/**
|
|
16
|
-
*
|
|
17
|
-
* Auto selects first step as visited
|
|
18
|
-
* Defaults to true
|
|
19
|
-
*
|
|
20
|
-
* @memberof StepperComponent
|
|
21
|
-
*/
|
|
22
|
-
set setFirstStepAutoSelect(value) {
|
|
23
|
-
this.firstStepAutoSelect = value;
|
|
24
|
-
if (!this.firstStepAutoSelect) {
|
|
25
|
-
this.itemSteps = this.itemSteps.map((step, i) => ({
|
|
26
|
-
...step,
|
|
27
|
-
isVisited: i === 0 && this.selectedIndex === -1 ? false : step.isVisited
|
|
28
|
-
}));
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
;
|
|
32
|
-
/**
|
|
33
|
-
* Input property to set the steps for the stepper.
|
|
34
|
-
* The first step will be marked as visited automatically.
|
|
35
|
-
*
|
|
36
|
-
* @memberof StepperComponent
|
|
37
|
-
*/
|
|
38
|
-
set steps(itemSteps) {
|
|
39
|
-
this.itemSteps = itemSteps;
|
|
40
|
-
if (itemSteps.length && this.firstStepAutoSelect) {
|
|
41
|
-
const [first, ...other] = itemSteps;
|
|
42
|
-
first.isVisited = true;
|
|
43
|
-
this.itemSteps = [first, ...other];
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Input property to set the selected index of the stepper.
|
|
48
|
-
* Default value is 0.
|
|
49
|
-
*
|
|
50
|
-
* @memberof StepperComponent
|
|
51
|
-
*/
|
|
52
|
-
set setSelectedIndex(value) {
|
|
53
|
-
this.selectedIndex = value;
|
|
54
|
-
if (!this.firstStepAutoSelect) {
|
|
55
|
-
this.itemSteps = this.itemSteps.map((step, i) => ({
|
|
56
|
-
...step,
|
|
57
|
-
isVisited: i === 0 && this.selectedIndex === -1 ? false : step.isVisited
|
|
58
|
-
}));
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
get isOpen() {
|
|
62
|
-
return this.isOpened;
|
|
63
|
-
}
|
|
64
|
-
set isOpen(value) {
|
|
65
|
-
this.isOpened = value;
|
|
66
|
-
}
|
|
67
|
-
constructor(defaultAppTheme, isMobile$, isLargeTablet$, focusMonitor, destroyRef) {
|
|
68
|
-
this.defaultAppTheme = defaultAppTheme;
|
|
69
|
-
this.isMobile$ = isMobile$;
|
|
70
|
-
this.isLargeTablet$ = isLargeTablet$;
|
|
71
|
-
this.focusMonitor = focusMonitor;
|
|
72
|
-
this.destroyRef = destroyRef;
|
|
73
|
-
/**
|
|
74
|
-
* Input property indicating whether the final icon should be displayed.
|
|
75
|
-
* Default value is false.
|
|
76
|
-
*
|
|
77
|
-
* @memberof StepperComponent
|
|
78
|
-
*/
|
|
79
|
-
this.lastStepFinalIcon = false;
|
|
80
|
-
/**
|
|
81
|
-
*
|
|
82
|
-
* Defines the application theme
|
|
83
|
-
*
|
|
84
|
-
* @type {ApplicationTheme}
|
|
85
|
-
* @memberof StepperComponent
|
|
86
|
-
*/
|
|
87
|
-
this.applicationTheme = 'light';
|
|
88
|
-
/**
|
|
89
|
-
* Defines the stepper position
|
|
90
|
-
*
|
|
91
|
-
* @type {StepperPosition}
|
|
92
|
-
* @memberof StepperComponent
|
|
93
|
-
*/
|
|
94
|
-
this.position = 'horizontal';
|
|
95
|
-
/**
|
|
96
|
-
* A string representing the ARIA requirement for accessibility.
|
|
97
|
-
* This attribute is used to indicate whether an input field is required for form submission.
|
|
98
|
-
* @type {boolean}
|
|
99
|
-
* @memberof StepperComponent
|
|
100
|
-
*/
|
|
101
|
-
this.ariaRequired = false;
|
|
102
|
-
/**
|
|
103
|
-
* A string representing the stepper variant.
|
|
104
|
-
* This attribute is used to indicate the variant that should be used.
|
|
105
|
-
* @type {string}
|
|
106
|
-
* @memberof StepperComponent
|
|
107
|
-
*/
|
|
108
|
-
this.stepperVariant = 'primary';
|
|
109
|
-
this.selectionChange = new EventEmitter();
|
|
110
|
-
this.isOpened = false;
|
|
111
|
-
this.firstStepAutoSelect = true;
|
|
112
|
-
this.itemSteps = [];
|
|
113
|
-
this.progressValue = 0;
|
|
114
|
-
this.translationContext = 'STEPPER.';
|
|
115
|
-
this.selectedIndex = 0;
|
|
116
|
-
this.keyboardFocused = signal(false);
|
|
117
|
-
if (defaultAppTheme) {
|
|
118
|
-
this.applicationTheme = defaultAppTheme;
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
ngAfterViewInit() {
|
|
122
|
-
this.subscriberFocus();
|
|
123
|
-
}
|
|
124
|
-
onSelect(changedIndex, step) {
|
|
125
|
-
if (!step.isVisited && this.selectedIndex !== changedIndex) {
|
|
126
|
-
step.isVisited = true;
|
|
127
|
-
}
|
|
128
|
-
this.selectionChange.emit({ selectedIndex: changedIndex, previousIndex: this.selectedIndex, step });
|
|
129
|
-
this.selectedIndex = changedIndex;
|
|
130
|
-
this.onCloseStepList();
|
|
131
|
-
}
|
|
132
|
-
showStepsToggle() {
|
|
133
|
-
this.isOpen = !this.isOpen;
|
|
134
|
-
setTimeout(() => {
|
|
135
|
-
this.selectedStepFocus();
|
|
136
|
-
});
|
|
137
|
-
}
|
|
138
|
-
onCloseStepList() {
|
|
139
|
-
this.isOpen = false;
|
|
140
|
-
}
|
|
141
|
-
subscriberFocus() {
|
|
142
|
-
if (!this.stepperElement) {
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
this.focusMonitor.monitor(this.stepperElement.nativeElement)
|
|
146
|
-
.pipe(takeUntilDestroyed(this.destroyRef))
|
|
147
|
-
.subscribe(origin => this.keyboardFocused.set(origin === 'keyboard'));
|
|
148
|
-
}
|
|
149
|
-
selectedStepFocus() {
|
|
150
|
-
const selectedElement = document.getElementById('step-' + this.selectedIndex);
|
|
151
|
-
if (this.keyboardFocused() && this.isOpen && selectedElement) {
|
|
152
|
-
this.focusMonitor.focusVia(selectedElement, 'keyboard');
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepperComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }, { token: IS_MOBILE_TOKEN }, { token: IS_LARGE_TABLET_TOKEN }, { token: i1.FocusMonitor }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
156
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: StepperComponent, selector: "ui-stepper", inputs: { setFirstStepAutoSelect: ["firstStepAutoSelect", "setFirstStepAutoSelect"], steps: "steps", setSelectedIndex: ["selectedIndex", "setSelectedIndex"], lastStepFinalIcon: "lastStepFinalIcon", applicationTheme: "applicationTheme", ariaLabel: "ariaLabel", position: "position", ariaRequired: "ariaRequired", stepperVariant: "stepperVariant" }, outputs: { selectionChange: "selectionChange" }, viewQueries: [{ propertyName: "stepperElement", first: true, predicate: ["stepper"], descendants: true }], ngImport: i0, template: "<ng-container>\n <div style=\"position: absolute; left: -99999px;\" [attr.aria-live]=\"'polite'\">\n <span>\n {{ itemSteps[selectedIndex]?.label ?? '' }}\n {{ (translationContext + 'SELECTED_OF' | uiTranslate : { selected: (selectedIndex ?? 0) + 1, total: itemSteps?.length ?? 0 }) | async }}\n {{ itemSteps[selectedIndex]?.isVisited && (itemSteps.length <= (selectedIndex ?? 0) + 1 && itemSteps[selectedIndex + 1]?.isVisited)\n ? (translationContext + 'COMPLETED' | uiTranslate | async)\n : (translationContext + 'INCOMPLETE' | uiTranslate | async) }}\n </span>\n </div>\n\n <div\n *ngIf=\"(position === 'horizontal' && !(isMobile$ | async)) || (position === 'vertical'); else mobile\"\n class=\"stepper-wrapper\"\n role=\"tablist\"\n [ngClass]=\"[position, stepperVariant === 'secondary' ? 'secondary-variant' : '']\"\n [attr.theme]=\"applicationTheme\"\n >\n <ng-container *ngFor=\"let step of itemSteps; index as i, last as isLast\">\n <div class=\"step\" #stepElement>\n <ui-step\n [label]=\"step.label\"\n [isVisited]=\"step.isVisited!\"\n [icon]=\"step.iconName\"\n [index]=\"i\"\n [selected]=\"i === selectedIndex\"\n [selectedIndex]=\"selectedIndex\"\n [isLast]=\"isLast\"\n [disabled]=\"step.disabled ?? (i > selectedIndex + 1 && !step.isVisited)\"\n [prevStepIsVisited]=\"itemSteps[i - 1]?.isVisited && step.isVisited\"\n [finalIcon]=\"isLast ? lastStepFinalIcon : false\"\n [showIconWhenSelected]=\"!!step.showIconWhenSelected\"\n (stepSelected)=\"onSelect($event, step)\"\n [applicationTheme]=\"applicationTheme\"\n role=\"tab\"\n [attr.aria-controls]=\"'step-panel-' + i\"\n [attr.aria-selected]=\"i === selectedIndex\"\n [attr.aria-label]=\"step.label\"\n [attr.tabindex]=\"(step.disabled ?? (i > selectedIndex + 1 && !step.isVisited)) ? -1 : 0\"\n [htmlDescription]=\"step.htmlDescription ?? []\"\n [boldLabel]=\"!!step.boldLabel\"\n [position]=\"position\"\n [descriptionTpl]=\"step.descriptionTpl\"\n [labelTooltip]=\"step.labelTooltip\"\n [alwaysShowIcon]=\"!!step.alwaysShowIcon\"\n [context]=\"step.context\"\n [stepVariant]=\"stepperVariant\"\n [largeTabletMode]=\"isLargeTablet$ | async\"\n ></ui-step>\n </div>\n\n @if (!isLast && stepperVariant === 'primary') {\n <div class=\"separator-line\" [ngClass]=\"{ visited: step.isVisited && !!this.itemSteps[i + 1]?.isVisited }\">\n <div [stepLineElement]=\"stepElement\" [position]=\"position\" class=\"line\"></div>\n </div>\n }\n\n @if (!isLast && stepperVariant === 'secondary') {\n <div class=\"separator-arrow\">\n <ui-icon class=\"separator-icon\" name=\"Arrow-chevron-right-in-line\" size=\"24\" color=\"gray\"></ui-icon>\n </div>\n }\n </ng-container>\n </div>\n\n <ng-template #mobile>\n <div class=\"mobile-stepper-wrapper\">\n <div\n class=\"stepper\"\n [tabIndex]=\"0\"\n #stepper\n [ngClass]=\"{ 'keyboard-focused': keyboardFocused() }\"\n (keydown.enter)=\"showStepsToggle()\"\n (keydown.space)=\"showStepsToggle()\"\n [attr.aria-expanded]=\"isOpen\"\n >\n <div class=\"progress-step\" [tabindex]=\"-1\" [attr.aria-hidden]=\"true\">\n <ui-radial-progress [applicationTheme]=\"applicationTheme\" [value]=\"selectedIndex + 1\"\n [total]=\"itemSteps.length\"></ui-radial-progress>\n </div>\n\n <div class=\"step-info\">\n <div class=\"current-step\">\n <span>{{ selectedIndex + 1 }}/{{ itemSteps.length }} </span>\n <span>{{ itemSteps[selectedIndex].label }}</span>\n </div>\n\n <div class=\"next-step\">\n <span\n *ngIf=\"itemSteps.length !== selectedIndex + 1 else finalStep\">{{ (('COMMON.NEXT') | uiTranslate | async) + ':' }} {{ itemSteps[selectedIndex + 1].label }}</span>\n <ng-template #finalStep>\n <span>{{ (translationContext + 'FINAL_STEP') | uiTranslate | async }}</span>\n </ng-template>\n </div>\n </div>\n\n <div class=\"open-steps\" (click)=\"showStepsToggle()\" [ngClass]=\"{ opened: isOpen }\">\n <ui-icon \n data-testid=\"ui-stepper-icon\"\n [applicationTheme]=\"applicationTheme\" [size]=\"'24'\"\n [name]=\"applicationTheme === 'classic' ? 'Arrow_down' : 'Arrow-chevron-down-in-line'\"></ui-icon>\n </div>\n </div>\n\n <div *ngIf=\"isOpen\">\n <div class=\"step-list\">\n <div class=\"step\" *ngFor=\"let step of itemSteps; index as i, last as isLast\">\n <ui-step\n [label]=\"step.label\"\n [isVisited]=\"step.isVisited!\"\n [icon]=\"step.iconName\"\n [index]=\"i\"\n [selected]=\"i === selectedIndex\"\n [selectedIndex]=\"selectedIndex\"\n [isLast]=\"isLast\"\n [disabled]=\"step.disabled ?? ( i > selectedIndex + 1 && !step.isVisited)\"\n [mobileMode]=\"true\"\n [finalIcon]=\"isLast ? lastStepFinalIcon : false\"\n [showIconWhenSelected]=\"!!step.showIconWhenSelected\"\n (stepSelected)=\"onSelect($event, step)\"\n [applicationTheme]=\"applicationTheme\"\n [attr.aria-label]=\"ariaLabel + '--' + step.label\"\n [stepVariant]=\"stepperVariant\"\n ></ui-step>\n </div>\n </div>\n <div class=\"overlay\" (click)=\"onCloseStepList()\"></div>\n </div>\n </div>\n </ng-template>\n\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}@media (max-width: 1024px){:host{width:100%}}@media (max-width: 600px){:host{width:fit-content}}.row,.mobile-stepper-wrapper .stepper,.stepper-wrapper .step,.stepper-wrapper{display:flex;flex-direction:row}.column,.mobile-stepper-wrapper .step-list,.mobile-stepper-wrapper .stepper .step-info{display:flex;flex-direction:column}.stepper-wrapper{width:100%}.stepper-wrapper .step{max-width:200px}.stepper-wrapper .separator-line{display:flex;flex:1 1 auto;position:relative;z-index:2}.stepper-wrapper .separator-line.visited .line{border-top:2px solid #276678}.stepper-wrapper .separator-line .line{position:absolute;top:45px;border-top:2px solid #C8D7DE;width:100%;left:0}.stepper-wrapper .separator-arrow{display:flex;align-items:center;justify-content:center;z-index:2;padding:0 10px}.stepper-wrapper.vertical{flex-direction:column}.stepper-wrapper.vertical .step{max-width:1024px;width:100%}.stepper-wrapper.vertical .step ui-step{width:100%}.stepper-wrapper.vertical .separator-line.visited .line{border-right:2px solid #276678}.stepper-wrapper.vertical .separator-line .line{top:-15px;border-right:2px solid #C8D7DE;width:2px;left:34px}.stepper-wrapper[theme=dark] .separator-line.visited .line,.stepper-wrapper[theme=light] .separator-line.visited .line{border-top:2px solid #242424}.stepper-wrapper[theme=dark] .separator-line .line,.stepper-wrapper[theme=light] .separator-line .line{border-top:2px solid #D3D3D3}.stepper-wrapper[theme=dark].vertical .separator-line.visited .line,.stepper-wrapper[theme=light].vertical .separator-line.visited .line{border-right:2px solid #242424}.stepper-wrapper[theme=dark].vertical .separator-line .line,.stepper-wrapper[theme=light].vertical .separator-line .line{border-right:2px solid #D3D3D3}.secondary-variant{justify-content:center}.mobile-stepper-wrapper{width:100%;position:relative}.mobile-stepper-wrapper .stepper{padding:12px 16px;height:72px;border:1px solid #888888;background:#fff;border-radius:8px}.mobile-stepper-wrapper .stepper.keyboard-focused{outline:2px solid #242424;outline-offset:2px;border-radius:8px;border-color:#242424;animation:focus-ring-animation-main .4s forwards}.mobile-stepper-wrapper .stepper .step-info{width:100%}.mobile-stepper-wrapper .stepper .step-info .current-step{font-weight:700;font-size:16px;line-height:24px}.mobile-stepper-wrapper .stepper .step-info .next-step{margin-top:4px;font-size:14px;line-height:20px}.mobile-stepper-wrapper .stepper .step-info .current-step,.mobile-stepper-wrapper .stepper .step-info .next-step{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.mobile-stepper-wrapper .stepper .open-steps{cursor:pointer;display:flex;justify-content:center;align-items:center}.mobile-stepper-wrapper .stepper .open-steps.opened ::ng-deep ui-icon{transform:rotateX(-180deg)}.mobile-stepper-wrapper .stepper .progress-step{position:relative;width:40px;height:40px;margin-right:16px}.mobile-stepper-wrapper .step-list{position:absolute;width:100%;margin-top:4px;z-index:1;background:#fff;box-shadow:0 8px 24px 4px #00000014;border-bottom-right-radius:8px;border-bottom-left-radius:8px}.mobile-stepper-wrapper .overlay{position:fixed;width:100%;height:100%;left:0;top:0;z-index:-1;background:transparent}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "toggleIconStyle", "applicationTheme", "useFullIconName"] }, { kind: "component", type: i4.StepComponent, selector: "ui-step", inputs: ["label", "isVisited", "submitted", "icon", "index", "selected", "isLast", "selectedIndex", "disabled", "prevStepIsVisited", "mobileMode", "largeTabletMode", "finalIcon", "showIconWhenSelected", "applicationTheme", "position", "htmlDescription", "boldLabel", "descriptionTpl", "labelTooltip", "alwaysShowIcon", "context", "stepVariant"], outputs: ["stepSelected"] }, { kind: "component", type: i5.RadialProgressComponent, selector: "ui-radial-progress", inputs: ["size", "value", "total", "variant", "showPercentageSign", "icon", "buttonTooltip", "companyColor", "applicationTheme"], outputs: ["buttonClicked"] }, { kind: "directive", type: i6.StepLineElementDirective, selector: "[stepLineElement]", inputs: ["stepLineElement", "position"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.UiTranslatePipe, name: "uiTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
157
|
-
}
|
|
158
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepperComponent, decorators: [{
|
|
159
|
-
type: Component,
|
|
160
|
-
args: [{ selector: 'ui-stepper', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <div style=\"position: absolute; left: -99999px;\" [attr.aria-live]=\"'polite'\">\n <span>\n {{ itemSteps[selectedIndex]?.label ?? '' }}\n {{ (translationContext + 'SELECTED_OF' | uiTranslate : { selected: (selectedIndex ?? 0) + 1, total: itemSteps?.length ?? 0 }) | async }}\n {{ itemSteps[selectedIndex]?.isVisited && (itemSteps.length <= (selectedIndex ?? 0) + 1 && itemSteps[selectedIndex + 1]?.isVisited)\n ? (translationContext + 'COMPLETED' | uiTranslate | async)\n : (translationContext + 'INCOMPLETE' | uiTranslate | async) }}\n </span>\n </div>\n\n <div\n *ngIf=\"(position === 'horizontal' && !(isMobile$ | async)) || (position === 'vertical'); else mobile\"\n class=\"stepper-wrapper\"\n role=\"tablist\"\n [ngClass]=\"[position, stepperVariant === 'secondary' ? 'secondary-variant' : '']\"\n [attr.theme]=\"applicationTheme\"\n >\n <ng-container *ngFor=\"let step of itemSteps; index as i, last as isLast\">\n <div class=\"step\" #stepElement>\n <ui-step\n [label]=\"step.label\"\n [isVisited]=\"step.isVisited!\"\n [icon]=\"step.iconName\"\n [index]=\"i\"\n [selected]=\"i === selectedIndex\"\n [selectedIndex]=\"selectedIndex\"\n [isLast]=\"isLast\"\n [disabled]=\"step.disabled ?? (i > selectedIndex + 1 && !step.isVisited)\"\n [prevStepIsVisited]=\"itemSteps[i - 1]?.isVisited && step.isVisited\"\n [finalIcon]=\"isLast ? lastStepFinalIcon : false\"\n [showIconWhenSelected]=\"!!step.showIconWhenSelected\"\n (stepSelected)=\"onSelect($event, step)\"\n [applicationTheme]=\"applicationTheme\"\n role=\"tab\"\n [attr.aria-controls]=\"'step-panel-' + i\"\n [attr.aria-selected]=\"i === selectedIndex\"\n [attr.aria-label]=\"step.label\"\n [attr.tabindex]=\"(step.disabled ?? (i > selectedIndex + 1 && !step.isVisited)) ? -1 : 0\"\n [htmlDescription]=\"step.htmlDescription ?? []\"\n [boldLabel]=\"!!step.boldLabel\"\n [position]=\"position\"\n [descriptionTpl]=\"step.descriptionTpl\"\n [labelTooltip]=\"step.labelTooltip\"\n [alwaysShowIcon]=\"!!step.alwaysShowIcon\"\n [context]=\"step.context\"\n [stepVariant]=\"stepperVariant\"\n [largeTabletMode]=\"isLargeTablet$ | async\"\n ></ui-step>\n </div>\n\n @if (!isLast && stepperVariant === 'primary') {\n <div class=\"separator-line\" [ngClass]=\"{ visited: step.isVisited && !!this.itemSteps[i + 1]?.isVisited }\">\n <div [stepLineElement]=\"stepElement\" [position]=\"position\" class=\"line\"></div>\n </div>\n }\n\n @if (!isLast && stepperVariant === 'secondary') {\n <div class=\"separator-arrow\">\n <ui-icon class=\"separator-icon\" name=\"Arrow-chevron-right-in-line\" size=\"24\" color=\"gray\"></ui-icon>\n </div>\n }\n </ng-container>\n </div>\n\n <ng-template #mobile>\n <div class=\"mobile-stepper-wrapper\">\n <div\n class=\"stepper\"\n [tabIndex]=\"0\"\n #stepper\n [ngClass]=\"{ 'keyboard-focused': keyboardFocused() }\"\n (keydown.enter)=\"showStepsToggle()\"\n (keydown.space)=\"showStepsToggle()\"\n [attr.aria-expanded]=\"isOpen\"\n >\n <div class=\"progress-step\" [tabindex]=\"-1\" [attr.aria-hidden]=\"true\">\n <ui-radial-progress [applicationTheme]=\"applicationTheme\" [value]=\"selectedIndex + 1\"\n [total]=\"itemSteps.length\"></ui-radial-progress>\n </div>\n\n <div class=\"step-info\">\n <div class=\"current-step\">\n <span>{{ selectedIndex + 1 }}/{{ itemSteps.length }} </span>\n <span>{{ itemSteps[selectedIndex].label }}</span>\n </div>\n\n <div class=\"next-step\">\n <span\n *ngIf=\"itemSteps.length !== selectedIndex + 1 else finalStep\">{{ (('COMMON.NEXT') | uiTranslate | async) + ':' }} {{ itemSteps[selectedIndex + 1].label }}</span>\n <ng-template #finalStep>\n <span>{{ (translationContext + 'FINAL_STEP') | uiTranslate | async }}</span>\n </ng-template>\n </div>\n </div>\n\n <div class=\"open-steps\" (click)=\"showStepsToggle()\" [ngClass]=\"{ opened: isOpen }\">\n <ui-icon \n data-testid=\"ui-stepper-icon\"\n [applicationTheme]=\"applicationTheme\" [size]=\"'24'\"\n [name]=\"applicationTheme === 'classic' ? 'Arrow_down' : 'Arrow-chevron-down-in-line'\"></ui-icon>\n </div>\n </div>\n\n <div *ngIf=\"isOpen\">\n <div class=\"step-list\">\n <div class=\"step\" *ngFor=\"let step of itemSteps; index as i, last as isLast\">\n <ui-step\n [label]=\"step.label\"\n [isVisited]=\"step.isVisited!\"\n [icon]=\"step.iconName\"\n [index]=\"i\"\n [selected]=\"i === selectedIndex\"\n [selectedIndex]=\"selectedIndex\"\n [isLast]=\"isLast\"\n [disabled]=\"step.disabled ?? ( i > selectedIndex + 1 && !step.isVisited)\"\n [mobileMode]=\"true\"\n [finalIcon]=\"isLast ? lastStepFinalIcon : false\"\n [showIconWhenSelected]=\"!!step.showIconWhenSelected\"\n (stepSelected)=\"onSelect($event, step)\"\n [applicationTheme]=\"applicationTheme\"\n [attr.aria-label]=\"ariaLabel + '--' + step.label\"\n [stepVariant]=\"stepperVariant\"\n ></ui-step>\n </div>\n </div>\n <div class=\"overlay\" (click)=\"onCloseStepList()\"></div>\n </div>\n </div>\n </ng-template>\n\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}@media (max-width: 1024px){:host{width:100%}}@media (max-width: 600px){:host{width:fit-content}}.row,.mobile-stepper-wrapper .stepper,.stepper-wrapper .step,.stepper-wrapper{display:flex;flex-direction:row}.column,.mobile-stepper-wrapper .step-list,.mobile-stepper-wrapper .stepper .step-info{display:flex;flex-direction:column}.stepper-wrapper{width:100%}.stepper-wrapper .step{max-width:200px}.stepper-wrapper .separator-line{display:flex;flex:1 1 auto;position:relative;z-index:2}.stepper-wrapper .separator-line.visited .line{border-top:2px solid #276678}.stepper-wrapper .separator-line .line{position:absolute;top:45px;border-top:2px solid #C8D7DE;width:100%;left:0}.stepper-wrapper .separator-arrow{display:flex;align-items:center;justify-content:center;z-index:2;padding:0 10px}.stepper-wrapper.vertical{flex-direction:column}.stepper-wrapper.vertical .step{max-width:1024px;width:100%}.stepper-wrapper.vertical .step ui-step{width:100%}.stepper-wrapper.vertical .separator-line.visited .line{border-right:2px solid #276678}.stepper-wrapper.vertical .separator-line .line{top:-15px;border-right:2px solid #C8D7DE;width:2px;left:34px}.stepper-wrapper[theme=dark] .separator-line.visited .line,.stepper-wrapper[theme=light] .separator-line.visited .line{border-top:2px solid #242424}.stepper-wrapper[theme=dark] .separator-line .line,.stepper-wrapper[theme=light] .separator-line .line{border-top:2px solid #D3D3D3}.stepper-wrapper[theme=dark].vertical .separator-line.visited .line,.stepper-wrapper[theme=light].vertical .separator-line.visited .line{border-right:2px solid #242424}.stepper-wrapper[theme=dark].vertical .separator-line .line,.stepper-wrapper[theme=light].vertical .separator-line .line{border-right:2px solid #D3D3D3}.secondary-variant{justify-content:center}.mobile-stepper-wrapper{width:100%;position:relative}.mobile-stepper-wrapper .stepper{padding:12px 16px;height:72px;border:1px solid #888888;background:#fff;border-radius:8px}.mobile-stepper-wrapper .stepper.keyboard-focused{outline:2px solid #242424;outline-offset:2px;border-radius:8px;border-color:#242424;animation:focus-ring-animation-main .4s forwards}.mobile-stepper-wrapper .stepper .step-info{width:100%}.mobile-stepper-wrapper .stepper .step-info .current-step{font-weight:700;font-size:16px;line-height:24px}.mobile-stepper-wrapper .stepper .step-info .next-step{margin-top:4px;font-size:14px;line-height:20px}.mobile-stepper-wrapper .stepper .step-info .current-step,.mobile-stepper-wrapper .stepper .step-info .next-step{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.mobile-stepper-wrapper .stepper .open-steps{cursor:pointer;display:flex;justify-content:center;align-items:center}.mobile-stepper-wrapper .stepper .open-steps.opened ::ng-deep ui-icon{transform:rotateX(-180deg)}.mobile-stepper-wrapper .stepper .progress-step{position:relative;width:40px;height:40px;margin-right:16px}.mobile-stepper-wrapper .step-list{position:absolute;width:100%;margin-top:4px;z-index:1;background:#fff;box-shadow:0 8px 24px 4px #00000014;border-bottom-right-radius:8px;border-bottom-left-radius:8px}.mobile-stepper-wrapper .overlay{position:fixed;width:100%;height:100%;left:0;top:0;z-index:-1;background:transparent}\n"] }]
|
|
161
|
-
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
162
|
-
type: Optional
|
|
163
|
-
}, {
|
|
164
|
-
type: Inject,
|
|
165
|
-
args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
|
|
166
|
-
}] }, { type: i8.Observable, decorators: [{
|
|
167
|
-
type: Inject,
|
|
168
|
-
args: [IS_MOBILE_TOKEN]
|
|
169
|
-
}] }, { type: i8.Observable, decorators: [{
|
|
170
|
-
type: Inject,
|
|
171
|
-
args: [IS_LARGE_TABLET_TOKEN]
|
|
172
|
-
}] }, { type: i1.FocusMonitor }, { type: i0.DestroyRef }], propDecorators: { setFirstStepAutoSelect: [{
|
|
173
|
-
type: Input,
|
|
174
|
-
args: ['firstStepAutoSelect']
|
|
175
|
-
}], steps: [{
|
|
176
|
-
type: Input
|
|
177
|
-
}], setSelectedIndex: [{
|
|
178
|
-
type: Input,
|
|
179
|
-
args: ['selectedIndex']
|
|
180
|
-
}], lastStepFinalIcon: [{
|
|
181
|
-
type: Input
|
|
182
|
-
}], applicationTheme: [{
|
|
183
|
-
type: Input
|
|
184
|
-
}], ariaLabel: [{
|
|
185
|
-
type: Input
|
|
186
|
-
}], position: [{
|
|
187
|
-
type: Input
|
|
188
|
-
}], ariaRequired: [{
|
|
189
|
-
type: Input
|
|
190
|
-
}], stepperVariant: [{
|
|
191
|
-
type: Input
|
|
192
|
-
}], selectionChange: [{
|
|
193
|
-
type: Output
|
|
194
|
-
}], stepperElement: [{
|
|
195
|
-
type: ViewChild,
|
|
196
|
-
args: ['stepper']
|
|
197
|
-
}] } });
|
|
198
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvc3RlcHBlci9zdGVwcGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxHQUMxQixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFaEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7Ozs7Ozs7QUFReEUsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQjs7Ozs7O09BTUc7SUFDSCxJQUFrQyxzQkFBc0IsQ0FBQyxLQUFjO1FBQ3JFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUM7UUFDakMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNoRCxHQUFHLElBQUk7Z0JBQ1AsU0FBUyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUzth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QUFDLGVBQWUsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUMxRCxDQUFDO0lBQ0gsQ0FBQzsrR0E5S1UsZ0JBQWdCLGtCQXlITCxvQ0FBb0MsNkJBQ2hELGVBQWUsYUFDZixxQkFBcUI7bUdBM0hwQixnQkFBZ0IsMGlCQ3hCN0Isd3ZMQW9JQTs7NEZENUdhLGdCQUFnQjtrQkFONUIsU0FBUzsrQkFDRSxZQUFZLG1CQUdMLHVCQUF1QixDQUFDLE1BQU07OzBCQTJINUMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxvQ0FBb0M7OzBCQUN2RCxNQUFNOzJCQUFDLGVBQWU7OzBCQUN0QixNQUFNOzJCQUFDLHFCQUFxQjs2RkFuSEcsc0JBQXNCO3NCQUF2RCxLQUFLO3VCQUFDLHFCQUFxQjtnQkFnQmYsS0FBSztzQkFBakIsS0FBSztnQkFnQnNCLGdCQUFnQjtzQkFBM0MsS0FBSzt1QkFBQyxlQUFlO2dCQWdCYixpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBU0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQVFHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBUUcsUUFBUTtzQkFBaEIsS0FBSztnQkFRRyxZQUFZO3NCQUFwQixLQUFLO2dCQVFHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRUksZUFBZTtzQkFBeEIsTUFBTTtnQkFtQmUsY0FBYztzQkFBbkMsU0FBUzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgRGVzdHJveVJlZiwgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPcHRpb25hbCxcbiAgT3V0cHV0LCBzaWduYWwsIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdGVwLCBTdGVwcGVyUG9zaXRpb24sIFN0ZXBwZXJWYXJpYXRpb24gfSBmcm9tICcuL3N0ZXBwZXIubW9kZWwnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSVNfTU9CSUxFX1RPS0VOIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL2lzLW1vYmlsZSc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvblRoZW1lIH0gZnJvbSBcIi4uLy4uL21vZGVscy9hcHBsaWNhdGlvbi10aGVtZS5tb2RlbFwiO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wXCI7XG5pbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2ExMXlcIjtcbmltcG9ydCB7IElTX0xBUkdFX1RBQkxFVF9UT0tFTiB9IGZyb20gJy4uLy4uL3Byb3ZpZGVycy9pcy1sYXJnZS10YWJsZXQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd1aS1zdGVwcGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3N0ZXBwZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zdGVwcGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTdGVwcGVyQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIC8qKlxuICAgKlxuICAgKiBBdXRvIHNlbGVjdHMgZmlyc3Qgc3RlcCBhcyB2aXNpdGVkXG4gICAqIERlZmF1bHRzIHRvIHRydWVcbiAgICpcbiAgICogQG1lbWJlcm9mIFN0ZXBwZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgnZmlyc3RTdGVwQXV0b1NlbGVjdCcpIHNldCBzZXRGaXJzdFN0ZXBBdXRvU2VsZWN0KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5maXJzdFN0ZXBBdXRvU2VsZWN0ID0gdmFsdWU7XG4gICAgaWYgKCF0aGlzLmZpcnN0U3RlcEF1dG9TZWxlY3QpIHtcbiAgICAgIHRoaXMuaXRlbVN0ZXBzID0gdGhpcy5pdGVtU3RlcHMubWFwKChzdGVwLCBpKSA9PiAoe1xuICAgICAgICAuLi5zdGVwLFxuICAgICAgICBpc1Zpc2l0ZWQ6IGkgPT09IDAgJiYgdGhpcy5zZWxlY3RlZEluZGV4ID09PSAtMSA/IGZhbHNlIDogc3RlcC5pc1Zpc2l0ZWRcbiAgICAgIH0pKTtcbiAgICB9XG4gIH07XG5cbiAgLyoqXG4gICAqIElucHV0IHByb3BlcnR5IHRvIHNldCB0aGUgc3RlcHMgZm9yIHRoZSBzdGVwcGVyLlxuICAgKiBUaGUgZmlyc3Qgc3RlcCB3aWxsIGJlIG1hcmtlZCBhcyB2aXNpdGVkIGF1dG9tYXRpY2FsbHkuXG4gICAqXG4gICAqIEBtZW1iZXJvZiBTdGVwcGVyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBzZXQgc3RlcHMoaXRlbVN0ZXBzOiBTdGVwW10pIHtcbiAgICB0aGlzLml0ZW1TdGVwcyA9IGl0ZW1TdGVwcztcbiAgICBpZiAoaXRlbVN0ZXBzLmxlbmd0aCAmJiB0aGlzLmZpcnN0U3RlcEF1dG9TZWxlY3QpIHtcbiAgICAgIGNvbnN0IFtmaXJzdCwgLi4ub3RoZXJdID0gaXRlbVN0ZXBzO1xuICAgICAgZmlyc3QuaXNWaXNpdGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuaXRlbVN0ZXBzID0gW2ZpcnN0LCAuLi5vdGhlcl07XG4gICAgfVxuXG4gIH1cblxuICAvKipcbiAgICogSW5wdXQgcHJvcGVydHkgdG8gc2V0IHRoZSBzZWxlY3RlZCBpbmRleCBvZiB0aGUgc3RlcHBlci5cbiAgICogRGVmYXVsdCB2YWx1ZSBpcyAwLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgU3RlcHBlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCdzZWxlY3RlZEluZGV4Jykgc2V0IHNldFNlbGVjdGVkSW5kZXgodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuc2VsZWN0ZWRJbmRleCA9IHZhbHVlO1xuICAgIGlmICghdGhpcy5maXJzdFN0ZXBBdXRvU2VsZWN0KSB7XG4gICAgICB0aGlzLml0ZW1TdGVwcyA9IHRoaXMuaXRlbVN0ZXBzLm1hcCgoc3RlcCwgaSkgPT4gKHtcbiAgICAgICAgLi4uc3RlcCxcbiAgICAgICAgaXNWaXNpdGVkOiBpID09PSAwICYmIHRoaXMuc2VsZWN0ZWRJbmRleCA9PT0gLTEgPyBmYWxzZSA6IHN0ZXAuaXNWaXNpdGVkXG4gICAgICB9KSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIElucHV0IHByb3BlcnR5IGluZGljYXRpbmcgd2hldGhlciB0aGUgZmluYWwgaWNvbiBzaG91bGQgYmUgZGlzcGxheWVkLlxuICAgKiBEZWZhdWx0IHZhbHVlIGlzIGZhbHNlLlxuICAgKlxuICAgKiBAbWVtYmVyb2YgU3RlcHBlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgbGFzdFN0ZXBGaW5hbEljb24gPSBmYWxzZTtcblxuICAvKipcbiAgICpcbiAgICogRGVmaW5lcyB0aGUgYXBwbGljYXRpb24gdGhlbWVcbiAgICpcbiAgICogQHR5cGUge0FwcGxpY2F0aW9uVGhlbWV9XG4gICAqIEBtZW1iZXJvZiBTdGVwcGVyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcHBsaWNhdGlvblRoZW1lOiBBcHBsaWNhdGlvblRoZW1lID0gJ2xpZ2h0JztcblxuICAvKipcbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBBUklBIGxhYmVsIGZvciBhY2Nlc3NpYmlsaXR5LlxuICAgKiBUaGlzIGxhYmVsIGlzIHVzZWQgdG8gcHJvdmlkZSBhbiBhY2Nlc3NpYmxlIG5hbWUgZm9yIHRoZSBpbnB1dCBlbGVtZW50LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgU3RlcHBlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXJpYUxhYmVsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERlZmluZXMgdGhlIHN0ZXBwZXIgcG9zaXRpb25cbiAgICpcbiAgICogQHR5cGUge1N0ZXBwZXJQb3NpdGlvbn1cbiAgICogQG1lbWJlcm9mIFN0ZXBwZXJDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHBvc2l0aW9uOiBTdGVwcGVyUG9zaXRpb24gPSAnaG9yaXpvbnRhbCc7XG5cbiAgLyoqXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVJJQSByZXF1aXJlbWVudCBmb3IgYWNjZXNzaWJpbGl0eS5cbiAgICogVGhpcyBhdHRyaWJ1dGUgaXMgdXNlZCB0byBpbmRpY2F0ZSB3aGV0aGVyIGFuIGlucHV0IGZpZWxkIGlzIHJlcXVpcmVkIGZvciBmb3JtIHN1Ym1pc3Npb24uXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgU3RlcHBlckNvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXJpYVJlcXVpcmVkID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEEgc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgc3RlcHBlciB2YXJpYW50LlxuICAgKiBUaGlzIGF0dHJpYnV0ZSBpcyB1c2VkIHRvIGluZGljYXRlIHRoZSB2YXJpYW50IHRoYXQgc2hvdWxkIGJlIHVzZWQuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBTdGVwcGVyQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBzdGVwcGVyVmFyaWFudDogU3RlcHBlclZhcmlhdGlvbiA9ICdwcmltYXJ5JztcblxuICBAT3V0cHV0KCkgc2VsZWN0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx7IHNlbGVjdGVkSW5kZXg6IG51bWJlcjsgcHJldmlvdXNJbmRleDogbnVtYmVyOyBzdGVwOiBTdGVwIH0+KCk7XG5cbiAgcHJpdmF0ZSBpc09wZW5lZCA9IGZhbHNlO1xuICBwcml2YXRlIGZpcnN0U3RlcEF1dG9TZWxlY3QgPSB0cnVlO1xuICBwcm90ZWN0ZWQgaXRlbVN0ZXBzOiBTdGVwW10gPSBbXTtcbiAgcHJvdGVjdGVkIHByb2dyZXNzVmFsdWUgPSAwO1xuICBwcm90ZWN0ZWQgdHJhbnNsYXRpb25Db250ZXh0ID0gJ1NURVBQRVIuJztcbiAgcHJvdGVjdGVkIHNlbGVjdGVkSW5kZXggPSAwO1xuXG4gIGdldCBpc09wZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNPcGVuZWQ7XG4gIH1cblxuICBzZXQgaXNPcGVuKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5pc09wZW5lZCA9IHZhbHVlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGtleWJvYXJkRm9jdXNlZCA9IHNpZ25hbChmYWxzZSk7XG5cbiAgQFZpZXdDaGlsZCgnc3RlcHBlcicpIHN0ZXBwZXJFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KCdDQU5PUFlVSV9ERUZBVUxUX0FQUExJQ0FUSU9OX1RIRU1FJykgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0QXBwVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUsXG4gICAgQEluamVjdChJU19NT0JJTEVfVE9LRU4pIHByb3RlY3RlZCByZWFkb25seSBpc01vYmlsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj4sXG4gICAgQEluamVjdChJU19MQVJHRV9UQUJMRVRfVE9LRU4pIHByb3RlY3RlZCByZWFkb25seSBpc0xhcmdlVGFibGV0JDogT2JzZXJ2YWJsZTxib29sZWFuPixcbiAgICBwcm90ZWN0ZWQgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgcHJvdGVjdGVkIGRlc3Ryb3lSZWY6IERlc3Ryb3lSZWZcbiAgKSB7XG4gICAgaWYgKGRlZmF1bHRBcHBUaGVtZSkge1xuICAgICAgdGhpcy5hcHBsaWNhdGlvblRoZW1lID0gZGVmYXVsdEFwcFRoZW1lO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmliZXJGb2N1cygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uU2VsZWN0KGNoYW5nZWRJbmRleDogbnVtYmVyLCBzdGVwOiBTdGVwKTogdm9pZCB7XG4gICAgaWYgKCFzdGVwLmlzVmlzaXRlZCAmJiB0aGlzLnNlbGVjdGVkSW5kZXggIT09IGNoYW5nZWRJbmRleCkge1xuICAgICAgc3RlcC5pc1Zpc2l0ZWQgPSB0cnVlO1xuICAgIH1cbiAgICB0aGlzLnNlbGVjdGlvbkNoYW5nZS5lbWl0KHsgc2VsZWN0ZWRJbmRleDogY2hhbmdlZEluZGV4LCBwcmV2aW91c0luZGV4OiB0aGlzLnNlbGVjdGVkSW5kZXgsIHN0ZXAgfSk7XG5cbiAgICB0aGlzLnNlbGVjdGVkSW5kZXggPSBjaGFuZ2VkSW5kZXg7XG4gICAgdGhpcy5vbkNsb3NlU3RlcExpc3QoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzaG93U3RlcHNUb2dnbGUoKTogdm9pZCB7XG4gICAgdGhpcy5pc09wZW4gPSAhdGhpcy5pc09wZW47XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRTdGVwRm9jdXMoKTtcbiAgICB9KVxuICB9XG5cbiAgcHJvdGVjdGVkIG9uQ2xvc2VTdGVwTGlzdCgpOiB2b2lkIHtcbiAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIHN1YnNjcmliZXJGb2N1cygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc3RlcHBlckVsZW1lbnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmZvY3VzTW9uaXRvci5tb25pdG9yKHRoaXMuc3RlcHBlckVsZW1lbnQubmF0aXZlRWxlbWVudClcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgLnN1YnNjcmliZShvcmlnaW4gPT4gdGhpcy5rZXlib2FyZEZvY3VzZWQuc2V0KG9yaWdpbiA9PT0gJ2tleWJvYXJkJykpO1xuICB9XG5cbiAgcHJpdmF0ZSBzZWxlY3RlZFN0ZXBGb2N1cygpOiB2b2lkIHtcbiAgICBjb25zdCBzZWxlY3RlZEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc3RlcC0nICsgdGhpcy5zZWxlY3RlZEluZGV4KTtcblxuICAgIGlmICh0aGlzLmtleWJvYXJkRm9jdXNlZCgpICYmIHRoaXMuaXNPcGVuICYmIHNlbGVjdGVkRWxlbWVudCkge1xuICAgICAgdGhpcy5mb2N1c01vbml0b3IuZm9jdXNWaWEoc2VsZWN0ZWRFbGVtZW50LCAna2V5Ym9hcmQnKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXI+XG4gIDxkaXYgc3R5bGU9XCJwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC05OTk5OXB4O1wiIFthdHRyLmFyaWEtbGl2ZV09XCIncG9saXRlJ1wiPlxuICAgICA8c3Bhbj5cbiAgICAgICB7eyBpdGVtU3RlcHNbc2VsZWN0ZWRJbmRleF0/LmxhYmVsID8/ICcnIH19XG4gICAgICAge3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdTRUxFQ1RFRF9PRicgfCB1aVRyYW5zbGF0ZSA6IHsgc2VsZWN0ZWQ6IChzZWxlY3RlZEluZGV4ID8/IDApICsgMSwgdG90YWw6IGl0ZW1TdGVwcz8ubGVuZ3RoID8/IDAgfSkgfCBhc3luYyB9fVxuICAgICAgIHt7IGl0ZW1TdGVwc1tzZWxlY3RlZEluZGV4XT8uaXNWaXNpdGVkICYmIChpdGVtU3RlcHMubGVuZ3RoIDw9IChzZWxlY3RlZEluZGV4ID8/IDApICsgMSAmJiBpdGVtU3RlcHNbc2VsZWN0ZWRJbmRleCArIDFdPy5pc1Zpc2l0ZWQpXG4gICAgICAgPyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ0NPTVBMRVRFRCcgfCB1aVRyYW5zbGF0ZSB8IGFzeW5jKVxuICAgICAgIDogKHRyYW5zbGF0aW9uQ29udGV4dCArICdJTkNPTVBMRVRFJyB8IHVpVHJhbnNsYXRlIHwgYXN5bmMpIH19XG4gICAgIDwvc3Bhbj5cbiAgPC9kaXY+XG5cbiAgPGRpdlxuICAgICpuZ0lmPVwiKHBvc2l0aW9uID09PSAnaG9yaXpvbnRhbCcgJiYgIShpc01vYmlsZSQgfCBhc3luYykpIHx8IChwb3NpdGlvbiA9PT0gJ3ZlcnRpY2FsJyk7IGVsc2UgbW9iaWxlXCJcbiAgICBjbGFzcz1cInN0ZXBwZXItd3JhcHBlclwiXG4gICAgcm9sZT1cInRhYmxpc3RcIlxuICAgIFtuZ0NsYXNzXT1cIltwb3NpdGlvbiwgc3RlcHBlclZhcmlhbnQgPT09ICdzZWNvbmRhcnknID8gJ3NlY29uZGFyeS12YXJpYW50JyA6ICcnXVwiXG4gICAgW2F0dHIudGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBzdGVwIG9mIGl0ZW1TdGVwczsgaW5kZXggYXMgaSwgbGFzdCBhcyBpc0xhc3RcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzdGVwXCIgI3N0ZXBFbGVtZW50PlxuICAgICAgICA8dWktc3RlcFxuICAgICAgICAgIFtsYWJlbF09XCJzdGVwLmxhYmVsXCJcbiAgICAgICAgICBbaXNWaXNpdGVkXT1cInN0ZXAuaXNWaXNpdGVkIVwiXG4gICAgICAgICAgW2ljb25dPVwic3RlcC5pY29uTmFtZVwiXG4gICAgICAgICAgW2luZGV4XT1cImlcIlxuICAgICAgICAgIFtzZWxlY3RlZF09XCJpID09PSBzZWxlY3RlZEluZGV4XCJcbiAgICAgICAgICBbc2VsZWN0ZWRJbmRleF09XCJzZWxlY3RlZEluZGV4XCJcbiAgICAgICAgICBbaXNMYXN0XT1cImlzTGFzdFwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cInN0ZXAuZGlzYWJsZWQgPz8gKGkgPiBzZWxlY3RlZEluZGV4ICsgMSAmJiAhc3RlcC5pc1Zpc2l0ZWQpXCJcbiAgICAgICAgICBbcHJldlN0ZXBJc1Zpc2l0ZWRdPVwiaXRlbVN0ZXBzW2kgLSAxXT8uaXNWaXNpdGVkICYmIHN0ZXAuaXNWaXNpdGVkXCJcbiAgICAgICAgICBbZmluYWxJY29uXT1cImlzTGFzdCA/IGxhc3RTdGVwRmluYWxJY29uIDogZmFsc2VcIlxuICAgICAgICAgIFtzaG93SWNvbldoZW5TZWxlY3RlZF09XCIhIXN0ZXAuc2hvd0ljb25XaGVuU2VsZWN0ZWRcIlxuICAgICAgICAgIChzdGVwU2VsZWN0ZWQpPVwib25TZWxlY3QoJGV2ZW50LCBzdGVwKVwiXG4gICAgICAgICAgW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiXG4gICAgICAgICAgcm9sZT1cInRhYlwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1jb250cm9sc109XCInc3RlcC1wYW5lbC0nICsgaVwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJpID09PSBzZWxlY3RlZEluZGV4XCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInN0ZXAubGFiZWxcIlxuICAgICAgICAgIFthdHRyLnRhYmluZGV4XT1cIihzdGVwLmRpc2FibGVkID8/IChpID4gc2VsZWN0ZWRJbmRleCArIDEgJiYgIXN0ZXAuaXNWaXNpdGVkKSkgPyAtMSA6IDBcIlxuICAgICAgICAgIFtodG1sRGVzY3JpcHRpb25dPVwic3RlcC5odG1sRGVzY3JpcHRpb24gPz8gW11cIlxuICAgICAgICAgIFtib2xkTGFiZWxdPVwiISFzdGVwLmJvbGRMYWJlbFwiXG4gICAgICAgICAgW3Bvc2l0aW9uXT1cInBvc2l0aW9uXCJcbiAgICAgICAgICBbZGVzY3JpcHRpb25UcGxdPVwic3RlcC5kZXNjcmlwdGlvblRwbFwiXG4gICAgICAgICAgW2xhYmVsVG9vbHRpcF09XCJzdGVwLmxhYmVsVG9vbHRpcFwiXG4gICAgICAgICAgW2Fsd2F5c1Nob3dJY29uXT1cIiEhc3RlcC5hbHdheXNTaG93SWNvblwiXG4gICAgICAgICAgW2NvbnRleHRdPVwic3RlcC5jb250ZXh0XCJcbiAgICAgICAgICBbc3RlcFZhcmlhbnRdPVwic3RlcHBlclZhcmlhbnRcIlxuICAgICAgICAgIFtsYXJnZVRhYmxldE1vZGVdPVwiaXNMYXJnZVRhYmxldCQgfCBhc3luY1wiXG4gICAgICAgID48L3VpLXN0ZXA+XG4gICAgICA8L2Rpdj5cblxuICAgICAgQGlmICghaXNMYXN0ICYmIHN0ZXBwZXJWYXJpYW50ID09PSAncHJpbWFyeScpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInNlcGFyYXRvci1saW5lXCIgW25nQ2xhc3NdPVwieyB2aXNpdGVkOiBzdGVwLmlzVmlzaXRlZCAmJiAhIXRoaXMuaXRlbVN0ZXBzW2kgKyAxXT8uaXNWaXNpdGVkIH1cIj5cbiAgICAgICAgICA8ZGl2IFtzdGVwTGluZUVsZW1lbnRdPVwic3RlcEVsZW1lbnRcIiBbcG9zaXRpb25dPVwicG9zaXRpb25cIiBjbGFzcz1cImxpbmVcIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG5cbiAgICAgIEBpZiAoIWlzTGFzdCAmJiBzdGVwcGVyVmFyaWFudCA9PT0gJ3NlY29uZGFyeScpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cInNlcGFyYXRvci1hcnJvd1wiPlxuICAgICAgICAgIDx1aS1pY29uIGNsYXNzPVwic2VwYXJhdG9yLWljb25cIiBuYW1lPVwiQXJyb3ctY2hldnJvbi1yaWdodC1pbi1saW5lXCIgc2l6ZT1cIjI0XCIgY29sb3I9XCJncmF5XCI+PC91aS1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG5cbiAgPG5nLXRlbXBsYXRlICNtb2JpbGU+XG4gICAgPGRpdiBjbGFzcz1cIm1vYmlsZS1zdGVwcGVyLXdyYXBwZXJcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJzdGVwcGVyXCJcbiAgICAgICAgW3RhYkluZGV4XT1cIjBcIlxuICAgICAgICAjc3RlcHBlclxuICAgICAgICBbbmdDbGFzc109XCJ7ICdrZXlib2FyZC1mb2N1c2VkJzoga2V5Ym9hcmRGb2N1c2VkKCkgfVwiXG4gICAgICAgIChrZXlkb3duLmVudGVyKT1cInNob3dTdGVwc1RvZ2dsZSgpXCJcbiAgICAgICAgKGtleWRvd24uc3BhY2UpPVwic2hvd1N0ZXBzVG9nZ2xlKClcIlxuICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImlzT3BlblwiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJwcm9ncmVzcy1zdGVwXCIgW3RhYmluZGV4XT1cIi0xXCIgW2F0dHIuYXJpYS1oaWRkZW5dPVwidHJ1ZVwiPlxuICAgICAgICAgIDx1aS1yYWRpYWwtcHJvZ3Jlc3MgW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiIFt2YWx1ZV09XCJzZWxlY3RlZEluZGV4ICsgMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdG90YWxdPVwiaXRlbVN0ZXBzLmxlbmd0aFwiPjwvdWktcmFkaWFsLXByb2dyZXNzPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwic3RlcC1pbmZvXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImN1cnJlbnQtc3RlcFwiPlxuICAgICAgICAgICAgPHNwYW4+e3sgc2VsZWN0ZWRJbmRleCArIDEgfX0ve3sgaXRlbVN0ZXBzLmxlbmd0aCB9fSA8L3NwYW4+XG4gICAgICAgICAgICA8c3Bhbj57eyBpdGVtU3RlcHNbc2VsZWN0ZWRJbmRleF0ubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmV4dC1zdGVwXCI+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAqbmdJZj1cIml0ZW1TdGVwcy5sZW5ndGggIT09IHNlbGVjdGVkSW5kZXggKyAxIGVsc2UgZmluYWxTdGVwXCI+e3sgKCgnQ09NTU9OLk5FWFQnKSB8IHVpVHJhbnNsYXRlIHwgYXN5bmMpICsgJzonIH19IHt7IGl0ZW1TdGVwc1tzZWxlY3RlZEluZGV4ICsgMV0ubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2ZpbmFsU3RlcD5cbiAgICAgICAgICAgICAgPHNwYW4+e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdGSU5BTF9TVEVQJykgfCB1aVRyYW5zbGF0ZSB8IGFzeW5jIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm9wZW4tc3RlcHNcIiAoY2xpY2spPVwic2hvd1N0ZXBzVG9nZ2xlKClcIiBbbmdDbGFzc109XCJ7IG9wZW5lZDogaXNPcGVuIH1cIj5cbiAgICAgICAgICA8dWktaWNvbiBcbiAgICAgICAgICBkYXRhLXRlc3RpZD1cInVpLXN0ZXBwZXItaWNvblwiXG4gICAgICAgICAgW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiIFtzaXplXT1cIicyNCdcIlxuICAgICAgICAgICAgICAgICAgIFtuYW1lXT1cImFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJyA/ICdBcnJvd19kb3duJyA6ICdBcnJvdy1jaGV2cm9uLWRvd24taW4tbGluZSdcIj48L3VpLWljb24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgKm5nSWY9XCJpc09wZW5cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInN0ZXAtbGlzdFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdGVwXCIgKm5nRm9yPVwibGV0IHN0ZXAgb2YgaXRlbVN0ZXBzOyBpbmRleCBhcyBpLCBsYXN0IGFzIGlzTGFzdFwiPlxuICAgICAgICAgICAgPHVpLXN0ZXBcbiAgICAgICAgICAgICAgW2xhYmVsXT1cInN0ZXAubGFiZWxcIlxuICAgICAgICAgICAgICBbaXNWaXNpdGVkXT1cInN0ZXAuaXNWaXNpdGVkIVwiXG4gICAgICAgICAgICAgIFtpY29uXT1cInN0ZXAuaWNvbk5hbWVcIlxuICAgICAgICAgICAgICBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICAgIFtzZWxlY3RlZF09XCJpID09PSBzZWxlY3RlZEluZGV4XCJcbiAgICAgICAgICAgICAgW3NlbGVjdGVkSW5kZXhdPVwic2VsZWN0ZWRJbmRleFwiXG4gICAgICAgICAgICAgIFtpc0xhc3RdPVwiaXNMYXN0XCJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInN0ZXAuZGlzYWJsZWQgPz8gKCBpID4gc2VsZWN0ZWRJbmRleCArIDEgJiYgIXN0ZXAuaXNWaXNpdGVkKVwiXG4gICAgICAgICAgICAgIFttb2JpbGVNb2RlXT1cInRydWVcIlxuICAgICAgICAgICAgICBbZmluYWxJY29uXT1cImlzTGFzdCA/IGxhc3RTdGVwRmluYWxJY29uIDogZmFsc2VcIlxuICAgICAgICAgICAgICBbc2hvd0ljb25XaGVuU2VsZWN0ZWRdPVwiISFzdGVwLnNob3dJY29uV2hlblNlbGVjdGVkXCJcbiAgICAgICAgICAgICAgKHN0ZXBTZWxlY3RlZCk9XCJvblNlbGVjdCgkZXZlbnQsIHN0ZXApXCJcbiAgICAgICAgICAgICAgW2FwcGxpY2F0aW9uVGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiXG4gICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsICsgJy0tJyArIHN0ZXAubGFiZWxcIlxuICAgICAgICAgICAgICBbc3RlcFZhcmlhbnRdPVwic3RlcHBlclZhcmlhbnRcIlxuICAgICAgICAgICAgPjwvdWktc3RlcD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJvdmVybGF5XCIgKGNsaWNrKT1cIm9uQ2xvc2VTdGVwTGlzdCgpXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { StepperComponent } from './stepper.component';
|
|
4
|
-
import { IconComponentModule } from '../icon/icon.component.module';
|
|
5
|
-
import { StepComponentModule } from '../step/step.component.module';
|
|
6
|
-
import { StepLineElementDirective } from '../../directives/step-line-element.directive';
|
|
7
|
-
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
8
|
-
import { RadialProgressComponentModule } from '../radial-progress/radial-progress.component.module';
|
|
9
|
-
import { UiTranslatePipe } from '../../pipes/ui-translate.pipe';
|
|
10
|
-
import { MatInputModule } from '@angular/material/input';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
export class StepperComponentModule {
|
|
13
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepperComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
14
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: StepperComponentModule, declarations: [StepperComponent, StepLineElementDirective], imports: [CommonModule,
|
|
15
|
-
IconComponentModule,
|
|
16
|
-
StepComponentModule,
|
|
17
|
-
MatProgressSpinnerModule,
|
|
18
|
-
RadialProgressComponentModule,
|
|
19
|
-
UiTranslatePipe,
|
|
20
|
-
MatInputModule], exports: [StepperComponent] }); }
|
|
21
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepperComponentModule, imports: [CommonModule,
|
|
22
|
-
IconComponentModule,
|
|
23
|
-
StepComponentModule,
|
|
24
|
-
MatProgressSpinnerModule,
|
|
25
|
-
RadialProgressComponentModule,
|
|
26
|
-
MatInputModule] }); }
|
|
27
|
-
}
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepperComponentModule, decorators: [{
|
|
29
|
-
type: NgModule,
|
|
30
|
-
args: [{
|
|
31
|
-
declarations: [StepperComponent, StepLineElementDirective],
|
|
32
|
-
imports: [
|
|
33
|
-
CommonModule,
|
|
34
|
-
IconComponentModule,
|
|
35
|
-
StepComponentModule,
|
|
36
|
-
MatProgressSpinnerModule,
|
|
37
|
-
RadialProgressComponentModule,
|
|
38
|
-
UiTranslatePipe,
|
|
39
|
-
MatInputModule,
|
|
40
|
-
],
|
|
41
|
-
exports: [StepperComponent],
|
|
42
|
-
}]
|
|
43
|
-
}] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGdvLWNhbm9weS11aS9jb21wb25lbnRzL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBZXpELE1BQU0sT0FBTyxzQkFBc0I7K0dBQXRCLHNCQUFzQjtnSEFBdEIsc0JBQXNCLGlCQVpsQixnQkFBZ0IsRUFBRSx3QkFBd0IsYUFFdkQsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixtQkFBbUI7WUFDbkIsd0JBQXdCO1lBQ3hCLDZCQUE2QjtZQUM3QixlQUFlO1lBQ2YsY0FBYyxhQUVOLGdCQUFnQjtnSEFFZixzQkFBc0IsWUFWL0IsWUFBWTtZQUNaLG1CQUFtQjtZQUNuQixtQkFBbUI7WUFDbkIsd0JBQXdCO1lBQ3hCLDZCQUE2QjtZQUU3QixjQUFjOzs0RkFJTCxzQkFBc0I7a0JBYmxDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsd0JBQXdCLENBQUM7b0JBQzFELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQix3QkFBd0I7d0JBQ3hCLDZCQUE2Qjt3QkFDN0IsZUFBZTt3QkFDZixjQUFjO3FCQUNmO29CQUNELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgU3RlcHBlckNvbXBvbmVudCB9IGZyb20gJy4vc3RlcHBlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudE1vZHVsZSB9IGZyb20gJy4uL2ljb24vaWNvbi5jb21wb25lbnQubW9kdWxlJztcbmltcG9ydCB7IFN0ZXBDb21wb25lbnRNb2R1bGUgfSBmcm9tICcuLi9zdGVwL3N0ZXAuY29tcG9uZW50Lm1vZHVsZSc7XG5pbXBvcnQgeyBTdGVwTGluZUVsZW1lbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3N0ZXAtbGluZS1lbGVtZW50LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyJztcbmltcG9ydCB7IFJhZGlhbFByb2dyZXNzQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vcmFkaWFsLXByb2dyZXNzL3JhZGlhbC1wcm9ncmVzcy5jb21wb25lbnQubW9kdWxlJztcbmltcG9ydCB7IFVpVHJhbnNsYXRlUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzL3VpLXRyYW5zbGF0ZS5waXBlJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTdGVwcGVyQ29tcG9uZW50LCBTdGVwTGluZUVsZW1lbnREaXJlY3RpdmVdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEljb25Db21wb25lbnRNb2R1bGUsXG4gICAgU3RlcENvbXBvbmVudE1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXG4gICAgUmFkaWFsUHJvZ3Jlc3NDb21wb25lbnRNb2R1bGUsXG4gICAgVWlUcmFuc2xhdGVQaXBlLFxuICAgIE1hdElucHV0TW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbU3RlcHBlckNvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFN0ZXBwZXJDb21wb25lbnRNb2R1bGUge31cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9zdGVwcGVyL3N0ZXBwZXIubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEljb25OYW1lIH0gZnJvbSAnLi4vaWNvbi9pY29uLm1vZGVsJztcbmltcG9ydCB7IFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RlcCB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGlzVmlzaXRlZD86IGJvb2xlYW47XG4gIGljb25OYW1lPzogSWNvbk5hbWU7XG4gIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgc3VibWl0dGVkPzogYm9vbGVhbjtcbiAgc2hvd0ljb25XaGVuU2VsZWN0ZWQ/OiBib29sZWFuO1xuICBodG1sRGVzY3JpcHRpb24/OiBIdG1sRGVzY3JpcHRpb25bXTtcbiAgYm9sZExhYmVsPzogYm9vbGVhbjtcbiAgZGVzY3JpcHRpb25UcGw/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICBsYWJlbFRvb2x0aXA/OiBzdHJpbmc7XG4gIGFsd2F5c1Nob3dJY29uPzogYm9vbGVhbjtcbiAgY29udGV4dD86IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBIdG1sRGVzY3JpcHRpb24ge1xuICB0ZXh0Pzogc3RyaW5nO1xuICBpY29uTmFtZT86IEljb25OYW1lO1xuICBpY29uVG9vbHRpcD86IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgU3RlcHBlclBvc2l0aW9uID0gJ2hvcml6b250YWwnIHwgJ3ZlcnRpY2FsJztcblxuZXhwb3J0IHR5cGUgU3RlcHBlclZhcmlhdGlvbiA9ICdwcmltYXJ5JyB8ICdzZWNvbmRhcnknO1xuIl19
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class SentenceCasePipe {
|
|
4
|
-
transform(value) {
|
|
5
|
-
if (!value) {
|
|
6
|
-
return '';
|
|
7
|
-
}
|
|
8
|
-
return value.charAt(0).toUpperCase() + value.slice(1).toLowerCase();
|
|
9
|
-
}
|
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SentenceCasePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
11
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SentenceCasePipe, name: "sentencecase" }); }
|
|
12
|
-
}
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SentenceCasePipe, decorators: [{
|
|
14
|
-
type: Pipe,
|
|
15
|
-
args: [{
|
|
16
|
-
name: 'sentencecase',
|
|
17
|
-
}]
|
|
18
|
-
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VudGVuY2UtY2FzZS5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGdvLWNhbm9weS11aS9jb21wb25lbnRzL3RhYmxlL3NlbnRlbmNlLWNhc2UucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFLcEQsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixTQUFTLENBQUMsS0FBeUI7UUFDakMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO1FBQ0QsT0FBTyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdEUsQ0FBQzsrR0FOVSxnQkFBZ0I7NkdBQWhCLGdCQUFnQjs7NEZBQWhCLGdCQUFnQjtrQkFINUIsSUFBSTttQkFBQztvQkFDSixJQUFJLEVBQUUsY0FBYztpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBQaXBlKHtcbiAgbmFtZTogJ3NlbnRlbmNlY2FzZScsXG59KVxuZXhwb3J0IGNsYXNzIFNlbnRlbmNlQ2FzZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBzdHJpbmcge1xuICAgIGlmICghdmFsdWUpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gICAgcmV0dXJuIHZhbHVlLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgdmFsdWUuc2xpY2UoMSkudG9Mb3dlckNhc2UoKTtcbiAgfVxufVxuIl19
|