raise-common-lib 0.0.203 → 0.0.204

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.
@@ -4,8 +4,8 @@
4
4
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
5
  */
6
6
  // 组件类
7
- import { Component, EventEmitter, Input, Output, } from '@angular/core';
8
- import { CommonFunctionService } from '../../service/common-function.service';
7
+ import { Component, EventEmitter, Input, Output, } from "@angular/core";
8
+ import { CommonFunctionService } from "../../service/common-function.service";
9
9
  export class RSStepperComponent {
10
10
  /**
11
11
  * @param {?} cf
@@ -15,7 +15,9 @@ export class RSStepperComponent {
15
15
  this.steps = [];
16
16
  this.currentStep = 0;
17
17
  this.stepClick = new EventEmitter();
18
+ this.unlockedStep = 0; //已解锁的最大步骤
18
19
  }
20
+ //已解锁的最大步骤
19
21
  /**
20
22
  * @return {?}
21
23
  */
@@ -24,16 +26,36 @@ export class RSStepperComponent {
24
26
  * @param {?} step
25
27
  * @return {?}
26
28
  */
27
- step => {
29
+ (step) => {
28
30
  step.displayTitle = this.cf.setMiddleEllipsis(step.label, 132, 12);
29
31
  }));
32
+ this.syncUnlockedStep();
33
+ }
34
+ /**
35
+ * @param {?} changes
36
+ * @return {?}
37
+ */
38
+ ngOnChanges(changes) {
39
+ if (changes["currentStep"] && !changes["currentStep"].firstChange) {
40
+ this.syncUnlockedStep();
41
+ }
42
+ }
43
+ // 同步unlockedStep的最大值
44
+ /**
45
+ * @private
46
+ * @return {?}
47
+ */
48
+ syncUnlockedStep() {
49
+ if (this.currentStep > this.unlockedStep) {
50
+ this.unlockedStep = this.currentStep;
51
+ }
30
52
  }
31
53
  /**
32
54
  * @param {?} step
33
55
  * @return {?}
34
56
  */
35
57
  onStepClick(step) {
36
- if (step.step < this.currentStep) {
58
+ if (step.step <= this.unlockedStep) {
37
59
  this.currentStep = step.step;
38
60
  this.stepClick.emit(step);
39
61
  }
@@ -41,9 +63,9 @@ export class RSStepperComponent {
41
63
  }
42
64
  RSStepperComponent.decorators = [
43
65
  { type: Component, args: [{
44
- selector: 'rs-stepper',
45
- template: "<div class=\"rs-stepper\">\r\n <div class=\"steps-wrap\">\r\n <ng-container *ngFor=\"let item of steps\">\r\n <div\r\n class=\"step\"\r\n [ngClass]=\"{\r\n done: item.step < currentStep,\r\n active: item.step === currentStep\r\n }\"\r\n (click)=\"onStepClick(item)\"\r\n >\r\n <div\r\n class=\"step-label\"\r\n [matTooltip]=\"item.label !== item.displayTitle ? item.label : ''\"\r\n matTooltipPosition=\"above\"\r\n >\r\n {{ item.displayTitle }}\r\n </div>\r\n </div>\r\n <div class=\"step-arrow\" *ngIf=\"item.step !== steps.length - 1\">\r\n <img src=\"../../../assets/img/step-arrow.svg\" />\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n",
46
- styles: [".rs-stepper{font-family:Arial;width:100%;border-bottom:1px solid var(--rs-border-color)}.rs-stepper .steps-wrap{display:flex;align-items:center;justify-content:space-between;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto;gap:8px}.rs-stepper .steps-wrap .step{flex:1;padding:0 12px 12px}.rs-stepper .steps-wrap .step .step-label{color:var(--rs-labels-color);font-size:12px;font-weight:400;line-height:22px;text-align:center;white-space:nowrap;max-width:132px}.rs-stepper .steps-wrap .step.done{cursor:pointer}.rs-stepper .steps-wrap .step.done .step-label{color:var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step.active .step-label{color:var(--rs-active-labels-color);font-weight:700}.rs-stepper .steps-wrap .step-arrow{padding:4px;align-self:flex-start}"]
66
+ selector: "rs-stepper",
67
+ template: "<div class=\"rs-stepper\">\r\n <div class=\"steps-wrap\">\r\n <ng-container *ngFor=\"let item of steps\">\r\n <div\r\n class=\"step\"\r\n [ngClass]=\"{\r\n done: item.step <= unlockedStep,\r\n active: item.step === currentStep\r\n }\"\r\n (click)=\"onStepClick(item)\"\r\n >\r\n <div\r\n class=\"step-label\"\r\n [matTooltip]=\"item.label !== item.displayTitle ? item.label : ''\"\r\n matTooltipPosition=\"above\"\r\n >\r\n {{ item.displayTitle }}\r\n </div>\r\n </div>\r\n <div class=\"step-arrow\" *ngIf=\"item.step !== steps.length - 1\">\r\n <img src=\"/assets/img/step-arrow.svg\" />\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n",
68
+ styles: [".rs-stepper{font-family:Arial;width:100%;border-bottom:1px solid var(--rs-border-color)}.rs-stepper .steps-wrap{display:flex;align-items:center;justify-content:space-between;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto;gap:8px}.rs-stepper .steps-wrap .step{flex:1}.rs-stepper .steps-wrap .step .step-label{color:var(--rs-labels-color);font-size:12px;font-weight:400;line-height:22px;text-align:center;white-space:nowrap;padding:0 12px 12px}.rs-stepper .steps-wrap .step.done{cursor:pointer}.rs-stepper .steps-wrap .step.done .step-label{color:var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step.active .step-label{color:var(--rs-active-labels-color);font-weight:700;border-bottom:1px solid var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step-arrow{padding:4px;align-self:flex-start}"]
47
69
  }] }
48
70
  ];
49
71
  /** @nocollapse */
@@ -53,7 +75,8 @@ RSStepperComponent.ctorParameters = () => [
53
75
  RSStepperComponent.propDecorators = {
54
76
  steps: [{ type: Input }],
55
77
  currentStep: [{ type: Input }],
56
- stepClick: [{ type: Output }]
78
+ stepClick: [{ type: Output }],
79
+ unlockedStep: [{ type: Input }]
57
80
  };
58
81
  if (false) {
59
82
  /** @type {?} */
@@ -63,6 +86,8 @@ if (false) {
63
86
  /** @type {?} */
64
87
  RSStepperComponent.prototype.stepClick;
65
88
  /** @type {?} */
89
+ RSStepperComponent.prototype.unlockedStep;
90
+ /** @type {?} */
66
91
  RSStepperComponent.prototype.cf;
67
92
  }
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvcnMtc3RlcHBlci9pbmRleC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQVE5RSxNQUFNLE9BQU8sa0JBQWtCOzs7O0lBRzdCLFlBQW1CLEVBQXlCO1FBQXpCLE9BQUUsR0FBRixFQUFFLENBQXVCO1FBRm5DLFVBQUssR0FBZSxFQUFFLENBQUM7UUFDdkIsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFFdkIsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFZLENBQUM7SUFESCxDQUFDOzs7O0lBR2pELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU87Ozs7UUFBQyxJQUFJLENBQUMsRUFBRTtZQUN4QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDckUsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7OztJQUVELFdBQVcsQ0FBQyxJQUFjO1FBQ3hCLElBQUksSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQjtJQUNILENBQUM7OztZQXZCRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFlBQVk7Z0JBQ3RCLHF5QkFBcUM7O2FBRXRDOzs7O1lBTlEscUJBQXFCOzs7b0JBUzNCLEtBQUs7MEJBQ0wsS0FBSzt3QkFFTCxNQUFNOzs7O0lBSFAsbUNBQWdDOztJQUNoQyx5Q0FBaUM7O0lBRWpDLHVDQUFtRDs7SUFEdkMsZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiLy8g57uE5Lu257G7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdGVwSXRlbSB9IGZyb20gJy4vY29uc3RhbnRzJztcclxuaW1wb3J0IHsgQ29tbW9uRnVuY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9jb21tb24tZnVuY3Rpb24uc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3JzLXN0ZXBwZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbmRleC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaW5kZXguY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBSU1N0ZXBwZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIHN0ZXBzOiBTdGVwSXRlbVtdID0gW107XHJcbiAgQElucHV0KCkgY3VycmVudFN0ZXA6IG51bWJlciA9IDA7XHJcbiAgY29uc3RydWN0b3IocHVibGljIGNmOiBDb21tb25GdW5jdGlvblNlcnZpY2UpIHsgfVxyXG4gIEBPdXRwdXQoKSBzdGVwQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPFN0ZXBJdGVtPigpO1xyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc3RlcHMuZm9yRWFjaChzdGVwID0+IHtcclxuICAgICAgc3RlcC5kaXNwbGF5VGl0bGUgPSB0aGlzLmNmLnNldE1pZGRsZUVsbGlwc2lzKHN0ZXAubGFiZWwsIDEzMiwgMTIpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvblN0ZXBDbGljayhzdGVwOiBTdGVwSXRlbSkge1xyXG4gICAgaWYgKHN0ZXAuc3RlcCA8IHRoaXMuY3VycmVudFN0ZXApIHtcclxuICAgICAgdGhpcy5jdXJyZW50U3RlcCA9IHN0ZXAuc3RlcDtcclxuICAgICAgdGhpcy5zdGVwQ2xpY2suZW1pdChzdGVwKTtcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ==
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvcnMtc3RlcHBlci9pbmRleC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQU85RSxNQUFNLE9BQU8sa0JBQWtCOzs7O0lBRzdCLFlBQW1CLEVBQXlCO1FBQXpCLE9BQUUsR0FBRixFQUFFLENBQXVCO1FBRm5DLFVBQUssR0FBZSxFQUFFLENBQUM7UUFDdkIsZ0JBQVcsR0FBVyxDQUFDLENBQUM7UUFFdkIsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFZLENBQUM7UUFDMUMsaUJBQVksR0FBVyxDQUFDLENBQUMsQ0FBQyxVQUFVO0lBRkUsQ0FBQzs7Ozs7SUFJaEQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTzs7OztRQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLENBQUMsRUFBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQzs7Ozs7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsV0FBVyxFQUFFO1lBQ2pFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQzs7Ozs7O0lBR08sZ0JBQWdCO1FBQ3RCLElBQUksSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3hDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztTQUN0QztJQUNILENBQUM7Ozs7O0lBRUQsV0FBVyxDQUFDLElBQWM7UUFDeEIsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDbEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzNCO0lBQ0gsQ0FBQzs7O1lBckNGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsWUFBWTtnQkFDdEIsK3hCQUFxQzs7YUFFdEM7Ozs7WUFOUSxxQkFBcUI7OztvQkFRM0IsS0FBSzswQkFDTCxLQUFLO3dCQUVMLE1BQU07MkJBQ04sS0FBSzs7OztJQUpOLG1DQUFnQzs7SUFDaEMseUNBQWlDOztJQUVqQyx1Q0FBbUQ7O0lBQ25ELDBDQUFrQzs7SUFGdEIsZ0NBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiLy8g57uE5Lu257G7XHJcbmltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgU3RlcEl0ZW0gfSBmcm9tIFwiLi9jb25zdGFudHNcIjtcclxuaW1wb3J0IHsgQ29tbW9uRnVuY3Rpb25TZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvY29tbW9uLWZ1bmN0aW9uLnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcInJzLXN0ZXBwZXJcIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL2luZGV4LmNvbXBvbmVudC5odG1sXCIsXHJcbiAgc3R5bGVVcmxzOiBbXCIuL2luZGV4LmNvbXBvbmVudC5zY3NzXCJdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUlNTdGVwcGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBzdGVwczogU3RlcEl0ZW1bXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGN1cnJlbnRTdGVwOiBudW1iZXIgPSAwO1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjZjogQ29tbW9uRnVuY3Rpb25TZXJ2aWNlKSB7fVxyXG4gIEBPdXRwdXQoKSBzdGVwQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPFN0ZXBJdGVtPigpO1xyXG4gIEBJbnB1dCgpIHVubG9ja2VkU3RlcDogbnVtYmVyID0gMDsgLy/lt7Lop6PplIHnmoTmnIDlpKfmraXpqqRcclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnN0ZXBzLmZvckVhY2goKHN0ZXApID0+IHtcclxuICAgICAgc3RlcC5kaXNwbGF5VGl0bGUgPSB0aGlzLmNmLnNldE1pZGRsZUVsbGlwc2lzKHN0ZXAubGFiZWwsIDEzMiwgMTIpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLnN5bmNVbmxvY2tlZFN0ZXAoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGlmIChjaGFuZ2VzW1wiY3VycmVudFN0ZXBcIl0gJiYgIWNoYW5nZXNbXCJjdXJyZW50U3RlcFwiXS5maXJzdENoYW5nZSkge1xyXG4gICAgICB0aGlzLnN5bmNVbmxvY2tlZFN0ZXAoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIOWQjOatpXVubG9ja2VkU3RlcOeahOacgOWkp+WAvFxyXG4gIHByaXZhdGUgc3luY1VubG9ja2VkU3RlcCgpIHtcclxuICAgIGlmICh0aGlzLmN1cnJlbnRTdGVwID4gdGhpcy51bmxvY2tlZFN0ZXApIHtcclxuICAgICAgdGhpcy51bmxvY2tlZFN0ZXAgPSB0aGlzLmN1cnJlbnRTdGVwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25TdGVwQ2xpY2soc3RlcDogU3RlcEl0ZW0pIHtcclxuICAgIGlmIChzdGVwLnN0ZXAgPD0gdGhpcy51bmxvY2tlZFN0ZXApIHtcclxuICAgICAgdGhpcy5jdXJyZW50U3RlcCA9IHN0ZXAuc3RlcDtcclxuICAgICAgdGhpcy5zdGVwQ2xpY2suZW1pdChzdGVwKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
@@ -4,19 +4,23 @@
4
4
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
5
  */
6
6
  // 组件类
7
- import { Component, EventEmitter, Input, Output, } from '@angular/core';
8
- import { CommonFunctionService } from '../../service/common-function.service';
7
+ import { Component, EventEmitter, Input, Output, } from "@angular/core";
8
+ import { CommonFunctionService } from "../../service/common-function.service";
9
9
  var RSStepperComponent = /** @class */ (function () {
10
10
  function RSStepperComponent(cf) {
11
11
  this.cf = cf;
12
12
  this.steps = [];
13
13
  this.currentStep = 0;
14
14
  this.stepClick = new EventEmitter();
15
+ this.unlockedStep = 0; //已解锁的最大步骤
15
16
  }
17
+ //已解锁的最大步骤
16
18
  /**
17
19
  * @return {?}
18
20
  */
19
- RSStepperComponent.prototype.ngOnInit = /**
21
+ RSStepperComponent.prototype.ngOnInit =
22
+ //已解锁的最大步骤
23
+ /**
20
24
  * @return {?}
21
25
  */
22
26
  function () {
@@ -28,6 +32,37 @@ var RSStepperComponent = /** @class */ (function () {
28
32
  function (step) {
29
33
  step.displayTitle = _this.cf.setMiddleEllipsis(step.label, 132, 12);
30
34
  }));
35
+ this.syncUnlockedStep();
36
+ };
37
+ /**
38
+ * @param {?} changes
39
+ * @return {?}
40
+ */
41
+ RSStepperComponent.prototype.ngOnChanges = /**
42
+ * @param {?} changes
43
+ * @return {?}
44
+ */
45
+ function (changes) {
46
+ if (changes["currentStep"] && !changes["currentStep"].firstChange) {
47
+ this.syncUnlockedStep();
48
+ }
49
+ };
50
+ // 同步unlockedStep的最大值
51
+ // 同步unlockedStep的最大值
52
+ /**
53
+ * @private
54
+ * @return {?}
55
+ */
56
+ RSStepperComponent.prototype.syncUnlockedStep =
57
+ // 同步unlockedStep的最大值
58
+ /**
59
+ * @private
60
+ * @return {?}
61
+ */
62
+ function () {
63
+ if (this.currentStep > this.unlockedStep) {
64
+ this.unlockedStep = this.currentStep;
65
+ }
31
66
  };
32
67
  /**
33
68
  * @param {?} step
@@ -38,16 +73,16 @@ var RSStepperComponent = /** @class */ (function () {
38
73
  * @return {?}
39
74
  */
40
75
  function (step) {
41
- if (step.step < this.currentStep) {
76
+ if (step.step <= this.unlockedStep) {
42
77
  this.currentStep = step.step;
43
78
  this.stepClick.emit(step);
44
79
  }
45
80
  };
46
81
  RSStepperComponent.decorators = [
47
82
  { type: Component, args: [{
48
- selector: 'rs-stepper',
49
- template: "<div class=\"rs-stepper\">\r\n <div class=\"steps-wrap\">\r\n <ng-container *ngFor=\"let item of steps\">\r\n <div\r\n class=\"step\"\r\n [ngClass]=\"{\r\n done: item.step < currentStep,\r\n active: item.step === currentStep\r\n }\"\r\n (click)=\"onStepClick(item)\"\r\n >\r\n <div\r\n class=\"step-label\"\r\n [matTooltip]=\"item.label !== item.displayTitle ? item.label : ''\"\r\n matTooltipPosition=\"above\"\r\n >\r\n {{ item.displayTitle }}\r\n </div>\r\n </div>\r\n <div class=\"step-arrow\" *ngIf=\"item.step !== steps.length - 1\">\r\n <img src=\"../../../assets/img/step-arrow.svg\" />\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n",
50
- styles: [".rs-stepper{font-family:Arial;width:100%;border-bottom:1px solid var(--rs-border-color)}.rs-stepper .steps-wrap{display:flex;align-items:center;justify-content:space-between;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto;gap:8px}.rs-stepper .steps-wrap .step{flex:1;padding:0 12px 12px}.rs-stepper .steps-wrap .step .step-label{color:var(--rs-labels-color);font-size:12px;font-weight:400;line-height:22px;text-align:center;white-space:nowrap;max-width:132px}.rs-stepper .steps-wrap .step.done{cursor:pointer}.rs-stepper .steps-wrap .step.done .step-label{color:var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step.active .step-label{color:var(--rs-active-labels-color);font-weight:700}.rs-stepper .steps-wrap .step-arrow{padding:4px;align-self:flex-start}"]
83
+ selector: "rs-stepper",
84
+ template: "<div class=\"rs-stepper\">\r\n <div class=\"steps-wrap\">\r\n <ng-container *ngFor=\"let item of steps\">\r\n <div\r\n class=\"step\"\r\n [ngClass]=\"{\r\n done: item.step <= unlockedStep,\r\n active: item.step === currentStep\r\n }\"\r\n (click)=\"onStepClick(item)\"\r\n >\r\n <div\r\n class=\"step-label\"\r\n [matTooltip]=\"item.label !== item.displayTitle ? item.label : ''\"\r\n matTooltipPosition=\"above\"\r\n >\r\n {{ item.displayTitle }}\r\n </div>\r\n </div>\r\n <div class=\"step-arrow\" *ngIf=\"item.step !== steps.length - 1\">\r\n <img src=\"/assets/img/step-arrow.svg\" />\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n",
85
+ styles: [".rs-stepper{font-family:Arial;width:100%;border-bottom:1px solid var(--rs-border-color)}.rs-stepper .steps-wrap{display:flex;align-items:center;justify-content:space-between;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto;gap:8px}.rs-stepper .steps-wrap .step{flex:1}.rs-stepper .steps-wrap .step .step-label{color:var(--rs-labels-color);font-size:12px;font-weight:400;line-height:22px;text-align:center;white-space:nowrap;padding:0 12px 12px}.rs-stepper .steps-wrap .step.done{cursor:pointer}.rs-stepper .steps-wrap .step.done .step-label{color:var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step.active .step-label{color:var(--rs-active-labels-color);font-weight:700;border-bottom:1px solid var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step-arrow{padding:4px;align-self:flex-start}"]
51
86
  }] }
52
87
  ];
53
88
  /** @nocollapse */
@@ -57,7 +92,8 @@ var RSStepperComponent = /** @class */ (function () {
57
92
  RSStepperComponent.propDecorators = {
58
93
  steps: [{ type: Input }],
59
94
  currentStep: [{ type: Input }],
60
- stepClick: [{ type: Output }]
95
+ stepClick: [{ type: Output }],
96
+ unlockedStep: [{ type: Input }]
61
97
  };
62
98
  return RSStepperComponent;
63
99
  }());
@@ -70,6 +106,8 @@ if (false) {
70
106
  /** @type {?} */
71
107
  RSStepperComponent.prototype.stepClick;
72
108
  /** @type {?} */
109
+ RSStepperComponent.prototype.unlockedStep;
110
+ /** @type {?} */
73
111
  RSStepperComponent.prototype.cf;
74
112
  }
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvcnMtc3RlcHBlci9pbmRleC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUU5RTtJQVNFLDRCQUFtQixFQUF5QjtRQUF6QixPQUFFLEdBQUYsRUFBRSxDQUF1QjtRQUZuQyxVQUFLLEdBQWUsRUFBRSxDQUFDO1FBQ3ZCLGdCQUFXLEdBQVcsQ0FBQyxDQUFDO1FBRXZCLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO0lBREgsQ0FBQzs7OztJQUdqRCxxQ0FBUTs7O0lBQVI7UUFBQSxpQkFJQztRQUhDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTzs7OztRQUFDLFVBQUEsSUFBSTtZQUNyQixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUksQ0FBQyxFQUFFLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDckUsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7OztJQUVELHdDQUFXOzs7O0lBQVgsVUFBWSxJQUFjO1FBQ3hCLElBQUksSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQjtJQUNILENBQUM7O2dCQXZCRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLHF5QkFBcUM7O2lCQUV0Qzs7OztnQkFOUSxxQkFBcUI7Ozt3QkFTM0IsS0FBSzs4QkFDTCxLQUFLOzRCQUVMLE1BQU07O0lBZVQseUJBQUM7Q0FBQSxBQXpCRCxJQXlCQztTQW5CWSxrQkFBa0I7OztJQUM3QixtQ0FBZ0M7O0lBQ2hDLHlDQUFpQzs7SUFFakMsdUNBQW1EOztJQUR2QyxnQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyDnu4Tku7bnsbtcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN0ZXBJdGVtIH0gZnJvbSAnLi9jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBDb21tb25GdW5jdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2NvbW1vbi1mdW5jdGlvbi5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAncnMtc3RlcHBlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2luZGV4LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9pbmRleC5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIFJTU3RlcHBlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgc3RlcHM6IFN0ZXBJdGVtW10gPSBbXTtcclxuICBASW5wdXQoKSBjdXJyZW50U3RlcDogbnVtYmVyID0gMDtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY2Y6IENvbW1vbkZ1bmN0aW9uU2VydmljZSkgeyB9XHJcbiAgQE91dHB1dCgpIHN0ZXBDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8U3RlcEl0ZW0+KCk7XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zdGVwcy5mb3JFYWNoKHN0ZXAgPT4ge1xyXG4gICAgICBzdGVwLmRpc3BsYXlUaXRsZSA9IHRoaXMuY2Yuc2V0TWlkZGxlRWxsaXBzaXMoc3RlcC5sYWJlbCwgMTMyLCAxMik7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uU3RlcENsaWNrKHN0ZXA6IFN0ZXBJdGVtKSB7XHJcbiAgICBpZiAoc3RlcC5zdGVwIDwgdGhpcy5jdXJyZW50U3RlcCkge1xyXG4gICAgICB0aGlzLmN1cnJlbnRTdGVwID0gc3RlcC5zdGVwO1xyXG4gICAgICB0aGlzLnN0ZXBDbGljay5lbWl0KHN0ZXApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIl19
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vcmFpc2UtY29tbW9uLWxpYi8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvcnMtc3RlcHBlci9pbmRleC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQ0EsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUU5RTtJQVFFLDRCQUFtQixFQUF5QjtRQUF6QixPQUFFLEdBQUYsRUFBRSxDQUF1QjtRQUZuQyxVQUFLLEdBQWUsRUFBRSxDQUFDO1FBQ3ZCLGdCQUFXLEdBQVcsQ0FBQyxDQUFDO1FBRXZCLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBWSxDQUFDO1FBQzFDLGlCQUFZLEdBQVcsQ0FBQyxDQUFDLENBQUMsVUFBVTtJQUZFLENBQUM7Ozs7O0lBSWhELHFDQUFROzs7OztJQUFSO1FBQUEsaUJBS0M7UUFKQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU87Ozs7UUFBQyxVQUFDLElBQUk7WUFDdEIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFJLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLENBQUMsRUFBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQzs7Ozs7SUFFRCx3Q0FBVzs7OztJQUFYLFVBQVksT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsV0FBVyxFQUFFO1lBQ2pFLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQztJQUVELHFCQUFxQjs7Ozs7O0lBQ2IsNkNBQWdCOzs7Ozs7SUFBeEI7UUFDRSxJQUFJLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUN4QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7U0FDdEM7SUFDSCxDQUFDOzs7OztJQUVELHdDQUFXOzs7O0lBQVgsVUFBWSxJQUFjO1FBQ3hCLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ2xDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQjtJQUNILENBQUM7O2dCQXJDRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLCt4QkFBcUM7O2lCQUV0Qzs7OztnQkFOUSxxQkFBcUI7Ozt3QkFRM0IsS0FBSzs4QkFDTCxLQUFLOzRCQUVMLE1BQU07K0JBQ04sS0FBSzs7SUE0QlIseUJBQUM7Q0FBQSxBQXRDRCxJQXNDQztTQWpDWSxrQkFBa0I7OztJQUM3QixtQ0FBZ0M7O0lBQ2hDLHlDQUFpQzs7SUFFakMsdUNBQW1EOztJQUNuRCwwQ0FBa0M7O0lBRnRCLGdDQUFnQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIOe7hOS7tuexu1xyXG5pbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFN0ZXBJdGVtIH0gZnJvbSBcIi4vY29uc3RhbnRzXCI7XHJcbmltcG9ydCB7IENvbW1vbkZ1bmN0aW9uU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2NvbW1vbi1mdW5jdGlvbi5zZXJ2aWNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJycy1zdGVwcGVyXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9pbmRleC5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi9pbmRleC5jb21wb25lbnQuc2Nzc1wiXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJTU3RlcHBlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgc3RlcHM6IFN0ZXBJdGVtW10gPSBbXTtcclxuICBASW5wdXQoKSBjdXJyZW50U3RlcDogbnVtYmVyID0gMDtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY2Y6IENvbW1vbkZ1bmN0aW9uU2VydmljZSkge31cclxuICBAT3V0cHV0KCkgc3RlcENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxTdGVwSXRlbT4oKTtcclxuICBASW5wdXQoKSB1bmxvY2tlZFN0ZXA6IG51bWJlciA9IDA7IC8v5bey6Kej6ZSB55qE5pyA5aSn5q2l6aqkXHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5zdGVwcy5mb3JFYWNoKChzdGVwKSA9PiB7XHJcbiAgICAgIHN0ZXAuZGlzcGxheVRpdGxlID0gdGhpcy5jZi5zZXRNaWRkbGVFbGxpcHNpcyhzdGVwLmxhYmVsLCAxMzIsIDEyKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5zeW5jVW5sb2NrZWRTdGVwKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICBpZiAoY2hhbmdlc1tcImN1cnJlbnRTdGVwXCJdICYmICFjaGFuZ2VzW1wiY3VycmVudFN0ZXBcIl0uZmlyc3RDaGFuZ2UpIHtcclxuICAgICAgdGhpcy5zeW5jVW5sb2NrZWRTdGVwKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyDlkIzmraV1bmxvY2tlZFN0ZXDnmoTmnIDlpKflgLxcclxuICBwcml2YXRlIHN5bmNVbmxvY2tlZFN0ZXAoKSB7XHJcbiAgICBpZiAodGhpcy5jdXJyZW50U3RlcCA+IHRoaXMudW5sb2NrZWRTdGVwKSB7XHJcbiAgICAgIHRoaXMudW5sb2NrZWRTdGVwID0gdGhpcy5jdXJyZW50U3RlcDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uU3RlcENsaWNrKHN0ZXA6IFN0ZXBJdGVtKSB7XHJcbiAgICBpZiAoc3RlcC5zdGVwIDw9IHRoaXMudW5sb2NrZWRTdGVwKSB7XHJcbiAgICAgIHRoaXMuY3VycmVudFN0ZXAgPSBzdGVwLnN0ZXA7XHJcbiAgICAgIHRoaXMuc3RlcENsaWNrLmVtaXQoc3RlcCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -21033,7 +21033,9 @@ class RSStepperComponent {
21033
21033
  this.steps = [];
21034
21034
  this.currentStep = 0;
21035
21035
  this.stepClick = new EventEmitter();
21036
+ this.unlockedStep = 0; //已解锁的最大步骤
21036
21037
  }
21038
+ //已解锁的最大步骤
21037
21039
  /**
21038
21040
  * @return {?}
21039
21041
  */
@@ -21042,16 +21044,36 @@ class RSStepperComponent {
21042
21044
  * @param {?} step
21043
21045
  * @return {?}
21044
21046
  */
21045
- step => {
21047
+ (step) => {
21046
21048
  step.displayTitle = this.cf.setMiddleEllipsis(step.label, 132, 12);
21047
21049
  }));
21050
+ this.syncUnlockedStep();
21051
+ }
21052
+ /**
21053
+ * @param {?} changes
21054
+ * @return {?}
21055
+ */
21056
+ ngOnChanges(changes) {
21057
+ if (changes["currentStep"] && !changes["currentStep"].firstChange) {
21058
+ this.syncUnlockedStep();
21059
+ }
21060
+ }
21061
+ // 同步unlockedStep的最大值
21062
+ /**
21063
+ * @private
21064
+ * @return {?}
21065
+ */
21066
+ syncUnlockedStep() {
21067
+ if (this.currentStep > this.unlockedStep) {
21068
+ this.unlockedStep = this.currentStep;
21069
+ }
21048
21070
  }
21049
21071
  /**
21050
21072
  * @param {?} step
21051
21073
  * @return {?}
21052
21074
  */
21053
21075
  onStepClick(step) {
21054
- if (step.step < this.currentStep) {
21076
+ if (step.step <= this.unlockedStep) {
21055
21077
  this.currentStep = step.step;
21056
21078
  this.stepClick.emit(step);
21057
21079
  }
@@ -21059,9 +21081,9 @@ class RSStepperComponent {
21059
21081
  }
21060
21082
  RSStepperComponent.decorators = [
21061
21083
  { type: Component, args: [{
21062
- selector: 'rs-stepper',
21063
- template: "<div class=\"rs-stepper\">\r\n <div class=\"steps-wrap\">\r\n <ng-container *ngFor=\"let item of steps\">\r\n <div\r\n class=\"step\"\r\n [ngClass]=\"{\r\n done: item.step < currentStep,\r\n active: item.step === currentStep\r\n }\"\r\n (click)=\"onStepClick(item)\"\r\n >\r\n <div\r\n class=\"step-label\"\r\n [matTooltip]=\"item.label !== item.displayTitle ? item.label : ''\"\r\n matTooltipPosition=\"above\"\r\n >\r\n {{ item.displayTitle }}\r\n </div>\r\n </div>\r\n <div class=\"step-arrow\" *ngIf=\"item.step !== steps.length - 1\">\r\n <img src=\"../../../assets/img/step-arrow.svg\" />\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n",
21064
- styles: [".rs-stepper{font-family:Arial;width:100%;border-bottom:1px solid var(--rs-border-color)}.rs-stepper .steps-wrap{display:flex;align-items:center;justify-content:space-between;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto;gap:8px}.rs-stepper .steps-wrap .step{flex:1;padding:0 12px 12px}.rs-stepper .steps-wrap .step .step-label{color:var(--rs-labels-color);font-size:12px;font-weight:400;line-height:22px;text-align:center;white-space:nowrap;max-width:132px}.rs-stepper .steps-wrap .step.done{cursor:pointer}.rs-stepper .steps-wrap .step.done .step-label{color:var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step.active .step-label{color:var(--rs-active-labels-color);font-weight:700}.rs-stepper .steps-wrap .step-arrow{padding:4px;align-self:flex-start}"]
21084
+ selector: "rs-stepper",
21085
+ template: "<div class=\"rs-stepper\">\r\n <div class=\"steps-wrap\">\r\n <ng-container *ngFor=\"let item of steps\">\r\n <div\r\n class=\"step\"\r\n [ngClass]=\"{\r\n done: item.step <= unlockedStep,\r\n active: item.step === currentStep\r\n }\"\r\n (click)=\"onStepClick(item)\"\r\n >\r\n <div\r\n class=\"step-label\"\r\n [matTooltip]=\"item.label !== item.displayTitle ? item.label : ''\"\r\n matTooltipPosition=\"above\"\r\n >\r\n {{ item.displayTitle }}\r\n </div>\r\n </div>\r\n <div class=\"step-arrow\" *ngIf=\"item.step !== steps.length - 1\">\r\n <img src=\"/assets/img/step-arrow.svg\" />\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n",
21086
+ styles: [".rs-stepper{font-family:Arial;width:100%;border-bottom:1px solid var(--rs-border-color)}.rs-stepper .steps-wrap{display:flex;align-items:center;justify-content:space-between;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin:0 auto;gap:8px}.rs-stepper .steps-wrap .step{flex:1}.rs-stepper .steps-wrap .step .step-label{color:var(--rs-labels-color);font-size:12px;font-weight:400;line-height:22px;text-align:center;white-space:nowrap;padding:0 12px 12px}.rs-stepper .steps-wrap .step.done{cursor:pointer}.rs-stepper .steps-wrap .step.done .step-label{color:var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step.active .step-label{color:var(--rs-active-labels-color);font-weight:700;border-bottom:1px solid var(--rs-active-labels-color)}.rs-stepper .steps-wrap .step-arrow{padding:4px;align-self:flex-start}"]
21065
21087
  }] }
21066
21088
  ];
21067
21089
  /** @nocollapse */
@@ -21071,7 +21093,8 @@ RSStepperComponent.ctorParameters = () => [
21071
21093
  RSStepperComponent.propDecorators = {
21072
21094
  steps: [{ type: Input }],
21073
21095
  currentStep: [{ type: Input }],
21074
- stepClick: [{ type: Output }]
21096
+ stepClick: [{ type: Output }],
21097
+ unlockedStep: [{ type: Input }]
21075
21098
  };
21076
21099
  if (false) {
21077
21100
  /** @type {?} */
@@ -21081,6 +21104,8 @@ if (false) {
21081
21104
  /** @type {?} */
21082
21105
  RSStepperComponent.prototype.stepClick;
21083
21106
  /** @type {?} */
21107
+ RSStepperComponent.prototype.unlockedStep;
21108
+ /** @type {?} */
21084
21109
  RSStepperComponent.prototype.cf;
21085
21110
  }
21086
21111