@the-liberators/ngx-scrumteamsurvey-tools 2.3.94 → 2.3.95
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.
|
@@ -754,7 +754,7 @@ class UserSpecificSettingsDto {
|
|
|
754
754
|
constructor() {
|
|
755
755
|
this.teamFilter = new TeamListFilter();
|
|
756
756
|
this.userFilter = new UserListFilter();
|
|
757
|
-
this.modelFilter = new ModelFilter();
|
|
757
|
+
this.modelFilter = new ModelFilter(InterventionFilterType.All);
|
|
758
758
|
this.interventionFilter = new ActionListFilter();
|
|
759
759
|
this.guideSettings = new GuideSettingsDto();
|
|
760
760
|
}
|
|
@@ -765,9 +765,9 @@ class GuideSettingsDto {
|
|
|
765
765
|
}
|
|
766
766
|
}
|
|
767
767
|
class ModelFilter {
|
|
768
|
-
constructor() {
|
|
768
|
+
constructor(interventionFilterType) {
|
|
769
769
|
this.layers = [];
|
|
770
|
-
this.interventionFilter =
|
|
770
|
+
this.interventionFilter = interventionFilterType;
|
|
771
771
|
}
|
|
772
772
|
}
|
|
773
773
|
class ModelVisualizationLayer {
|
|
@@ -3556,11 +3556,11 @@ class DialogFactorInformationComponent {
|
|
|
3556
3556
|
this.factor = factor;
|
|
3557
3557
|
}
|
|
3558
3558
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: DialogFactorInformationComponent, deps: [{ token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3559
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: DialogFactorInformationComponent, isStandalone: false, selector: "ng-component", ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>{{factor.name}}</h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n {{factor.description}}\n\n <div class=\"attribution\" *ngIf=\"factor.attribution\">\n <h4>Attribution for measurement method</h4>\n <p>{{factor.attribution}}</p>\n </div>\n\n <div class=\"questions\">\n <h4>Question pool</h4>\n <div>Below are the questions we use for this factor. They may be narrowed down further based on segment. See <a href=\"https://github.com/theliberators/columinity.docs/wiki/How-the-questionnaire-links-to-factors\" target=\"_blank\">wiki</a> for details.</div>\n <div class=\"questions-segment\" *ngFor=\"let segment of factor.segments\">\n <div *ngIf=\"segment.questions.length > 0\">\n <h5>For {{segment.segment.toLowerCase()}}s</h5>\n <ul>\n <li *ngFor=\"let question of segment.questions\">{{question}}</li>\n </ul>\n </div>\n </div>\n </div>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.attribution{margin-top:15px}.questions{margin-top:15px}.questions h4{margin-bottom:5px;font-weight:600}.questions h5,.questions p,.questions div{margin:0;font-size:14px}.questions li{margin:0;font-size:14px;line-height:125%}.questions .questions-segment,.attribution{margin-top:15px}.attribution h4{margin-bottom:5px;font-weight:600}.attribution p{margin:0;font-size:14px}\n"], dependencies: [{ kind: "directive", type: i1$3.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$3.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
3559
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: DialogFactorInformationComponent, isStandalone: false, selector: "ng-component", ngImport: i0, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>{{factor.name}}</h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n {{factor.description}}\n\n <div class=\"attribution\" *ngIf=\"factor.attribution\">\n <h4>Attribution for measurement method</h4>\n <p>{{factor.attribution}}</p>\n </div>\n\n <div class=\"questions\" *ngIf=\"!factor.metric\">\n <h4>Question pool</h4>\n <div>Below are the questions we use for this factor. They may be narrowed down further based on segment. See <a href=\"https://github.com/theliberators/columinity.docs/wiki/How-the-questionnaire-links-to-factors\" target=\"_blank\">wiki</a> for details.</div>\n <div class=\"questions-segment\" *ngFor=\"let segment of factor.segments\">\n <div *ngIf=\"segment.questions.length > 0\">\n <h5>For {{segment.segment.toLowerCase()}}s</h5>\n <ul>\n <li *ngFor=\"let question of segment.questions\">{{question}}</li>\n </ul>\n </div>\n </div>\n </div>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.attribution{margin-top:15px}.questions{margin-top:15px}.questions h4{margin-bottom:5px;font-weight:600}.questions h5,.questions p,.questions div{margin:0;font-size:14px}.questions li{margin:0;font-size:14px;line-height:125%}.questions .questions-segment,.attribution{margin-top:15px}.attribution h4{margin-bottom:5px;font-weight:600}.attribution p{margin:0;font-size:14px}\n"], dependencies: [{ kind: "directive", type: i1$3.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1$3.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1$3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
3560
3560
|
}
|
|
3561
3561
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: DialogFactorInformationComponent, decorators: [{
|
|
3562
3562
|
type: Component,
|
|
3563
|
-
args: [{ standalone: false, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>{{factor.name}}</h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n {{factor.description}}\n\n <div class=\"attribution\" *ngIf=\"factor.attribution\">\n <h4>Attribution for measurement method</h4>\n <p>{{factor.attribution}}</p>\n </div>\n\n <div class=\"questions\">\n <h4>Question pool</h4>\n <div>Below are the questions we use for this factor. They may be narrowed down further based on segment. See <a href=\"https://github.com/theliberators/columinity.docs/wiki/How-the-questionnaire-links-to-factors\" target=\"_blank\">wiki</a> for details.</div>\n <div class=\"questions-segment\" *ngFor=\"let segment of factor.segments\">\n <div *ngIf=\"segment.questions.length > 0\">\n <h5>For {{segment.segment.toLowerCase()}}s</h5>\n <ul>\n <li *ngFor=\"let question of segment.questions\">{{question}}</li>\n </ul>\n </div>\n </div>\n </div>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.attribution{margin-top:15px}.questions{margin-top:15px}.questions h4{margin-bottom:5px;font-weight:600}.questions h5,.questions p,.questions div{margin:0;font-size:14px}.questions li{margin:0;font-size:14px;line-height:125%}.questions .questions-segment,.attribution{margin-top:15px}.attribution h4{margin-bottom:5px;font-weight:600}.attribution p{margin:0;font-size:14px}\n"] }]
|
|
3563
|
+
args: [{ standalone: false, template: "<div class=\"dialog-header\">\n <h1 mat-dialog-title>{{factor.name}}</h1>\n <div class=\"close\" mat-dialog-close><i class=\"responsive icon ph-x-bold\"></i></div>\n</div>\n<mat-dialog-content>\n {{factor.description}}\n\n <div class=\"attribution\" *ngIf=\"factor.attribution\">\n <h4>Attribution for measurement method</h4>\n <p>{{factor.attribution}}</p>\n </div>\n\n <div class=\"questions\" *ngIf=\"!factor.metric\">\n <h4>Question pool</h4>\n <div>Below are the questions we use for this factor. They may be narrowed down further based on segment. See <a href=\"https://github.com/theliberators/columinity.docs/wiki/How-the-questionnaire-links-to-factors\" target=\"_blank\">wiki</a> for details.</div>\n <div class=\"questions-segment\" *ngFor=\"let segment of factor.segments\">\n <div *ngIf=\"segment.questions.length > 0\">\n <h5>For {{segment.segment.toLowerCase()}}s</h5>\n <ul>\n <li *ngFor=\"let question of segment.questions\">{{question}}</li>\n </ul>\n </div>\n </div>\n </div>\n</mat-dialog-content>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.attribution{margin-top:15px}.questions{margin-top:15px}.questions h4{margin-bottom:5px;font-weight:600}.questions h5,.questions p,.questions div{margin:0;font-size:14px}.questions li{margin:0;font-size:14px;line-height:125%}.questions .questions-segment,.attribution{margin-top:15px}.attribution h4{margin-bottom:5px;font-weight:600}.attribution p{margin:0;font-size:14px}\n"] }]
|
|
3564
3564
|
}], ctorParameters: () => [{ type: FactorStructureDto, decorators: [{
|
|
3565
3565
|
type: Inject,
|
|
3566
3566
|
args: [MAT_DIALOG_DATA]
|
|
@@ -4572,14 +4572,23 @@ class DeltaArrowComponent {
|
|
|
4572
4572
|
var deltaDateRangeTo = this.datePipe.transform(this.delta.dateRange.to, 'longDate');
|
|
4573
4573
|
this.comparedTo = "the previous period (" + deltaDateRangeFrom + " to " + deltaDateRangeTo + ")";
|
|
4574
4574
|
}
|
|
4575
|
+
if (this.factorScore.delta > 0) {
|
|
4576
|
+
this.direction = this.factorScore.qualification == QualificationEnum.positive ? "up" : "down";
|
|
4577
|
+
}
|
|
4578
|
+
else if (this.factorScore.delta < 0) {
|
|
4579
|
+
this.direction = this.factorScore.qualification == QualificationEnum.positive ? "down" : "up";
|
|
4580
|
+
}
|
|
4581
|
+
else {
|
|
4582
|
+
this.direction = "same";
|
|
4583
|
+
}
|
|
4575
4584
|
}
|
|
4576
4585
|
}
|
|
4577
4586
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: DeltaArrowComponent, deps: [{ token: i2.DatePipe }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4578
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: DeltaArrowComponent, isStandalone: false, selector: "delta-arrow", inputs: { factorScore: "factorScore", delta: "delta", noDataIndicator: "noDataIndicator" }, ngImport: i0, template: "<div class=\"delta
|
|
4587
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: DeltaArrowComponent, isStandalone: false, selector: "delta-arrow", inputs: { factorScore: "factorScore", delta: "delta", noDataIndicator: "noDataIndicator" }, ngImport: i0, template: "<div [class]=\"'delta ' + direction\" *ngIf=\"available && factorScore.delta > 0\" [title]=\"'The score on this factor increased by ' + factorScore.delta + ' points since ' + comparedTo\"><i class=\"icon ph-caret-up-fill\"></i>{{factorScore.delta}}</div>\n<div [class]=\"'delta ' + direction\" *ngIf=\"available && factorScore.delta < 0\" [title]=\"'The score on this factor decreased by ' + factorScore.delta * -1 + ' points since ' + comparedTo\"><i class=\"icon ph-caret-down-fill\"></i>{{factorScore.delta * -1}}</div>\n<div [class]=\"'delta ' + direction\" *ngIf=\"available && factorScore.delta == 0\" [title]=\"'The score on this factor did not change since ' + comparedTo\"><i class=\"icon ph-circle-fill\"></i>{{factorScore.delta}}</div>\n<div [class]=\"'delta ' + direction\" *ngIf=\"!available\" title=\"No historical data available to show changes since previous measure. Perform scans periodically to see improvements.\"><i class=\"icon ph-circle-fill\"></i> ?</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
4579
4588
|
}
|
|
4580
4589
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: DeltaArrowComponent, decorators: [{
|
|
4581
4590
|
type: Component,
|
|
4582
|
-
args: [{ selector: 'delta-arrow', standalone: false, template: "<div class=\"delta
|
|
4591
|
+
args: [{ selector: 'delta-arrow', standalone: false, template: "<div [class]=\"'delta ' + direction\" *ngIf=\"available && factorScore.delta > 0\" [title]=\"'The score on this factor increased by ' + factorScore.delta + ' points since ' + comparedTo\"><i class=\"icon ph-caret-up-fill\"></i>{{factorScore.delta}}</div>\n<div [class]=\"'delta ' + direction\" *ngIf=\"available && factorScore.delta < 0\" [title]=\"'The score on this factor decreased by ' + factorScore.delta * -1 + ' points since ' + comparedTo\"><i class=\"icon ph-caret-down-fill\"></i>{{factorScore.delta * -1}}</div>\n<div [class]=\"'delta ' + direction\" *ngIf=\"available && factorScore.delta == 0\" [title]=\"'The score on this factor did not change since ' + comparedTo\"><i class=\"icon ph-circle-fill\"></i>{{factorScore.delta}}</div>\n<div [class]=\"'delta ' + direction\" *ngIf=\"!available\" title=\"No historical data available to show changes since previous measure. Perform scans periodically to see improvements.\"><i class=\"icon ph-circle-fill\"></i> ?</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
|
|
4583
4592
|
}], ctorParameters: () => [{ type: i2.DatePipe }], propDecorators: { factorScore: [{
|
|
4584
4593
|
type: Input
|
|
4585
4594
|
}], delta: [{
|
|
@@ -4781,11 +4790,11 @@ class ModelFactorBreakdownComponent {
|
|
|
4781
4790
|
return this.currentPage > 0;
|
|
4782
4791
|
}
|
|
4783
4792
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorBreakdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4784
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelFactorBreakdownComponent, isStandalone: false, selector: "model-factor-breakdown", inputs: { factor: "factor", pageSize: "pageSize" }, ngImport: i0, template: "<div class=\"breakdown\" *ngFor=\"let point of pagedPoints\">\n <div [attr.normalizedScore]=\"point.normalizedScore\" class=\"progressbar progressbar-inverted progressbar-{{point.type | slugify}} progressbar-{{point.name | slugify}}\">\n <div class=\"progressbar-bar\" [style]=\"'width: ' + point.normalizedScore + '%'\"></div>\n <div class=\"progressbar-label\">{{point.name | lowercase}} <span *ngIf=\"point.type == 'Segment'\">{{point.occurances}}x</span></div>\n <div class=\"progressbar-score\">{{point.normalizedScore | number:'1.0-0' }}</div>\n </div>\n <div class=\"details\">\n <a *ngIf=\"point.type == 'Team'\" [matTooltip]=\"'Open detailed report in new window'\" [routerLink]=\"['/', 'snapshot', point.publicKey]\"><i class=\"ph-faders-horizontal icon\"></i> </a>\n <a target=\"_blank\" *ngIf=\"point.type == 'Client'\" [matTooltip]=\"'Jump to Teams Dashboard for this organization'\" [href]=\"'https://coachingcenter.columinity.com/select/' + point.publicKey\"><i class=\"ph-faders-horizontal icon\"></i> </a>\n </div>\n</div>\n\n<div class=\"breakdown-paginator\" *ngIf=\"factor.points.length > pageSize\">\n <div class=\"breakdown-paginator-previous\" (click)=\"prevPage()\" *ngIf=\"hasPrev()\"><span class=\"icon ph-caret-left\"></span></div>\n <div class=\"breakdown-paginator-previous\" *ngIf=\"!hasPrev()\"></div>\n <div class=\"breakdown-paginator-next\" (click)=\"nextPage()\" *ngIf=\"hasNext()\"><span class=\"icon ph-caret-right\"></span></div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.breakdown-paginator{display:flex}.breakdown-paginator div{flex:auto;cursor:pointer}.breakdown-paginator .breakdown-paginator-next{text-align:right}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4$1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i1$4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i2.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i2.DecimalPipe, name: "number" }, { kind: "pipe", type: SlugifyPipe, name: "slugify" }] }); }
|
|
4793
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelFactorBreakdownComponent, isStandalone: false, selector: "model-factor-breakdown", inputs: { factor: "factor", pageSize: "pageSize" }, ngImport: i0, template: "<div class=\"breakdown\" *ngFor=\"let point of pagedPoints\">\n <div [attr.normalizedScore]=\"point.normalizedScore\" class=\"progressbar progressbar-inverted progressbar-{{point.type | slugify}} progressbar-{{point.name | slugify}}\">\n <div class=\"progressbar-bar\" [style]=\"'width: ' + (factor.type == 'Metric' ? 100 : point.normalizedScore) + '%'\"></div>\n <div class=\"progressbar-label\">{{point.name | lowercase}} <span *ngIf=\"point.type == 'Segment'\">{{point.occurances}}x</span></div>\n <div class=\"progressbar-score\">{{point.normalizedScore | number:'1.0-0' }}</div>\n </div>\n <div class=\"details\">\n <a *ngIf=\"point.type == 'Team'\" [matTooltip]=\"'Open detailed report in new window'\" [routerLink]=\"['/', 'snapshot', point.publicKey]\"><i class=\"ph-faders-horizontal icon\"></i> </a>\n <a target=\"_blank\" *ngIf=\"point.type == 'Client'\" [matTooltip]=\"'Jump to Teams Dashboard for this organization'\" [href]=\"'https://coachingcenter.columinity.com/select/' + point.publicKey\"><i class=\"ph-faders-horizontal icon\"></i> </a>\n </div>\n</div>\n\n<div class=\"breakdown-paginator\" *ngIf=\"factor.points.length > pageSize\">\n <div class=\"breakdown-paginator-previous\" (click)=\"prevPage()\" *ngIf=\"hasPrev()\"><span class=\"icon ph-caret-left\"></span></div>\n <div class=\"breakdown-paginator-previous\" *ngIf=\"!hasPrev()\"></div>\n <div class=\"breakdown-paginator-next\" (click)=\"nextPage()\" *ngIf=\"hasNext()\"><span class=\"icon ph-caret-right\"></span></div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.breakdown-paginator{display:flex}.breakdown-paginator div{flex:auto;cursor:pointer}.breakdown-paginator .breakdown-paginator-next{text-align:right}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4$1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i1$4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: i2.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i2.DecimalPipe, name: "number" }, { kind: "pipe", type: SlugifyPipe, name: "slugify" }] }); }
|
|
4785
4794
|
}
|
|
4786
4795
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorBreakdownComponent, decorators: [{
|
|
4787
4796
|
type: Component,
|
|
4788
|
-
args: [{ selector: 'model-factor-breakdown', standalone: false, template: "<div class=\"breakdown\" *ngFor=\"let point of pagedPoints\">\n <div [attr.normalizedScore]=\"point.normalizedScore\" class=\"progressbar progressbar-inverted progressbar-{{point.type | slugify}} progressbar-{{point.name | slugify}}\">\n <div class=\"progressbar-bar\" [style]=\"'width: ' + point.normalizedScore + '%'\"></div>\n <div class=\"progressbar-label\">{{point.name | lowercase}} <span *ngIf=\"point.type == 'Segment'\">{{point.occurances}}x</span></div>\n <div class=\"progressbar-score\">{{point.normalizedScore | number:'1.0-0' }}</div>\n </div>\n <div class=\"details\">\n <a *ngIf=\"point.type == 'Team'\" [matTooltip]=\"'Open detailed report in new window'\" [routerLink]=\"['/', 'snapshot', point.publicKey]\"><i class=\"ph-faders-horizontal icon\"></i> </a>\n <a target=\"_blank\" *ngIf=\"point.type == 'Client'\" [matTooltip]=\"'Jump to Teams Dashboard for this organization'\" [href]=\"'https://coachingcenter.columinity.com/select/' + point.publicKey\"><i class=\"ph-faders-horizontal icon\"></i> </a>\n </div>\n</div>\n\n<div class=\"breakdown-paginator\" *ngIf=\"factor.points.length > pageSize\">\n <div class=\"breakdown-paginator-previous\" (click)=\"prevPage()\" *ngIf=\"hasPrev()\"><span class=\"icon ph-caret-left\"></span></div>\n <div class=\"breakdown-paginator-previous\" *ngIf=\"!hasPrev()\"></div>\n <div class=\"breakdown-paginator-next\" (click)=\"nextPage()\" *ngIf=\"hasNext()\"><span class=\"icon ph-caret-right\"></span></div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.breakdown-paginator{display:flex}.breakdown-paginator div{flex:auto;cursor:pointer}.breakdown-paginator .breakdown-paginator-next{text-align:right}\n"] }]
|
|
4797
|
+
args: [{ selector: 'model-factor-breakdown', standalone: false, template: "<div class=\"breakdown\" *ngFor=\"let point of pagedPoints\">\n <div [attr.normalizedScore]=\"point.normalizedScore\" class=\"progressbar progressbar-inverted progressbar-{{point.type | slugify}} progressbar-{{point.name | slugify}}\">\n <div class=\"progressbar-bar\" [style]=\"'width: ' + (factor.type == 'Metric' ? 100 : point.normalizedScore) + '%'\"></div>\n <div class=\"progressbar-label\">{{point.name | lowercase}} <span *ngIf=\"point.type == 'Segment'\">{{point.occurances}}x</span></div>\n <div class=\"progressbar-score\">{{point.normalizedScore | number:'1.0-0' }}</div>\n </div>\n <div class=\"details\">\n <a *ngIf=\"point.type == 'Team'\" [matTooltip]=\"'Open detailed report in new window'\" [routerLink]=\"['/', 'snapshot', point.publicKey]\"><i class=\"ph-faders-horizontal icon\"></i> </a>\n <a target=\"_blank\" *ngIf=\"point.type == 'Client'\" [matTooltip]=\"'Jump to Teams Dashboard for this organization'\" [href]=\"'https://coachingcenter.columinity.com/select/' + point.publicKey\"><i class=\"ph-faders-horizontal icon\"></i> </a>\n </div>\n</div>\n\n<div class=\"breakdown-paginator\" *ngIf=\"factor.points.length > pageSize\">\n <div class=\"breakdown-paginator-previous\" (click)=\"prevPage()\" *ngIf=\"hasPrev()\"><span class=\"icon ph-caret-left\"></span></div>\n <div class=\"breakdown-paginator-previous\" *ngIf=\"!hasPrev()\"></div>\n <div class=\"breakdown-paginator-next\" (click)=\"nextPage()\" *ngIf=\"hasNext()\"><span class=\"icon ph-caret-right\"></span></div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.breakdown-paginator{display:flex}.breakdown-paginator div{flex:auto;cursor:pointer}.breakdown-paginator .breakdown-paginator-next{text-align:right}\n"] }]
|
|
4789
4798
|
}], propDecorators: { factor: [{
|
|
4790
4799
|
type: Input
|
|
4791
4800
|
}], pageSize: [{
|
|
@@ -4796,32 +4805,61 @@ class ModelFactorBenchmarkComponent {
|
|
|
4796
4805
|
async ngOnInit() {
|
|
4797
4806
|
}
|
|
4798
4807
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorBenchmarkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4799
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelFactorBenchmarkComponent, isStandalone: false, selector: "model-factor-benchmark", inputs: { factor: "factor", benchmark: "benchmark" }, ngImport: i0, template: "<div class=\"breakdown\">\n <div [title]=\"'This is the average score of teams in the benchmark [' + benchmark.name + ']. Change the benchmark under \\'Settings\\'.'\" [attr.normalizedScore]=\"factor.benchmark\" [class]=\"'progressbar progressbar-inverted progressbar-benchmark'\" *ngIf=\"factor.benchmark != 0\">\n <div class=\"progressbar-bar\" [style]=\"'width: ' + factor.benchmark + '%'\"></div>\n <div class=\"progressbar-label\">benchmark</div>\n <div class=\"progressbar-score\">{{factor.benchmark | number:'1.0-0' }}</div>W\n </div>\n <div class=\"details\">\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.DecimalPipe, name: "number" }] }); }
|
|
4808
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelFactorBenchmarkComponent, isStandalone: false, selector: "model-factor-benchmark", inputs: { factor: "factor", benchmark: "benchmark" }, ngImport: i0, template: "<div class=\"breakdown\">\n <div [title]=\"'This is the average score of teams in the benchmark [' + benchmark.name + ']. Change the benchmark under \\'Settings\\'.'\" [attr.normalizedScore]=\"factor.benchmark\" [class]=\"'progressbar progressbar-inverted progressbar-benchmark'\" *ngIf=\"factor.benchmark != 0\">\n <div class=\"progressbar-bar\" [style]=\"'width: ' + (factor.type == 'Metric' ? 100 : factor.benchmark) + '%'\"></div>\n <div class=\"progressbar-label\">benchmark</div>\n <div class=\"progressbar-score\">{{factor.benchmark | number:'1.0-0' }}</div>W\n </div>\n <div class=\"details\">\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.DecimalPipe, name: "number" }] }); }
|
|
4800
4809
|
}
|
|
4801
4810
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorBenchmarkComponent, decorators: [{
|
|
4802
4811
|
type: Component,
|
|
4803
|
-
args: [{ selector: 'model-factor-benchmark', standalone: false, template: "<div class=\"breakdown\">\n <div [title]=\"'This is the average score of teams in the benchmark [' + benchmark.name + ']. Change the benchmark under \\'Settings\\'.'\" [attr.normalizedScore]=\"factor.benchmark\" [class]=\"'progressbar progressbar-inverted progressbar-benchmark'\" *ngIf=\"factor.benchmark != 0\">\n <div class=\"progressbar-bar\" [style]=\"'width: ' + factor.benchmark + '%'\"></div>\n <div class=\"progressbar-label\">benchmark</div>\n <div class=\"progressbar-score\">{{factor.benchmark | number:'1.0-0' }}</div>W\n </div>\n <div class=\"details\">\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
|
|
4812
|
+
args: [{ selector: 'model-factor-benchmark', standalone: false, template: "<div class=\"breakdown\">\n <div [title]=\"'This is the average score of teams in the benchmark [' + benchmark.name + ']. Change the benchmark under \\'Settings\\'.'\" [attr.normalizedScore]=\"factor.benchmark\" [class]=\"'progressbar progressbar-inverted progressbar-benchmark'\" *ngIf=\"factor.benchmark != 0\">\n <div class=\"progressbar-bar\" [style]=\"'width: ' + (factor.type == 'Metric' ? 100 : factor.benchmark) + '%'\"></div>\n <div class=\"progressbar-label\">benchmark</div>\n <div class=\"progressbar-score\">{{factor.benchmark | number:'1.0-0' }}</div>W\n </div>\n <div class=\"details\">\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
|
|
4804
4813
|
}], propDecorators: { factor: [{
|
|
4805
4814
|
type: Input
|
|
4806
4815
|
}], benchmark: [{
|
|
4807
4816
|
type: Input
|
|
4808
4817
|
}] } });
|
|
4809
4818
|
|
|
4819
|
+
class ModelFactorMetricComponent extends ComponentWithViewStateBase {
|
|
4820
|
+
constructor(state, snackBar) {
|
|
4821
|
+
super(state, snackBar);
|
|
4822
|
+
this.state = state;
|
|
4823
|
+
this.snackBar = snackBar;
|
|
4824
|
+
}
|
|
4825
|
+
ngOnInit() {
|
|
4826
|
+
super.ngOnInit();
|
|
4827
|
+
}
|
|
4828
|
+
onDataUpdate(data) {
|
|
4829
|
+
this.delta = data.factorScores.delta;
|
|
4830
|
+
this.baseUrl = data.baseUrl;
|
|
4831
|
+
this.benchmark = data.factorScores.benchmark;
|
|
4832
|
+
this.factorScore = data.factorScores.factorScores.find(p => p.key == this.metric.publicKey);
|
|
4833
|
+
}
|
|
4834
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorMetricComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4835
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelFactorMetricComponent, isStandalone: false, selector: "model-factor-metric", inputs: { metric: "metric" }, usesInheritance: true, ngImport: i0, template: "<div class=\"model-factor-metric\" [id]=\"'metric-' + metric.publicKey\" #factorAnchor (click)=\"popover.open()\">\n <div class=\"model-factor-metric-title\">{{metric.name}}</div>\n <div class=\"model-factor-metric-result\">\n <div class=\"digit\" *ngIf=\"factorScore\">{{factorScore.score}}</div>\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\"></age-indicator>\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n <div class=\"unit\">{{metric.unit}}</div>\n </div>\n</div>\n\n<sat-popover #popover horizontalAlign=\"after\" [anchor]=\"factorAnchor\" verticalAlign=\"center\" [hasBackdrop]=\"true\" [autoFocus]=\"false\">\n <div class=\"popover\" [id]=\"'popover-' + metric.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"popover.close()\" class=\"close ph-x\"></span>\n <h3 factorInformationDialog [factor]=\"metric\">\n {{metric.name}}\n <span class=\"icon ph-info-fill\"></span>\n </h3>\n <div class=\"description\">{{metric.description}}</div>\n\n <model-factor-benchmark [factor]=\"factorScore\" [benchmark]=\"benchmark\"></model-factor-benchmark>\n <model-factor-breakdown [factor]=\"factorScore\"></model-factor-breakdown>\n <quicktips [dimensionKey]=\"metric.publicKey\" [extraClass]=\"'quicktips-popover'\"></quicktips>\n\n <div class=\"link\" *ngIf=\"factorScore.recommendation.available\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"metric.publicKey\">discover how to improve ></a>\n </div>\n </div>\n <div class=\"arrow\"></div>\n </div>\n</sat-popover>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: DeltaArrowComponent, selector: "delta-arrow", inputs: ["factorScore", "delta", "noDataIndicator"] }, { kind: "component", type: AgeIndicatorComponent, selector: "age-indicator", inputs: ["lastMeasured"] }, { kind: "component", type: QuickTipsComponent, selector: "quicktips", inputs: ["dimensionKey", "extraClass"] }, { kind: "component", type: ModelFactorBreakdownComponent, selector: "model-factor-breakdown", inputs: ["factor", "pageSize"] }, { kind: "component", type: i11.SatPopoverComponent, selector: "sat-popover", inputs: ["anchor", "horizontalAlign", "xAlign", "verticalAlign", "yAlign", "forceAlignment", "lockAlignment", "autoFocus", "restoreFocus", "scrollStrategy", "hasBackdrop", "interactiveClose", "openTransition", "closeTransition", "openAnimationStartAtScale", "closeAnimationEndAtScale", "backdropClass", "panelClass"], outputs: ["opened", "closed", "afterOpen", "afterClose", "backdropClicked", "overlayKeydown"] }, { kind: "directive", type: OpenFactorInformationDialogDirective, selector: "[factorInformationDialog]", inputs: ["factor"] }, { kind: "component", type: ModelFactorBenchmarkComponent, selector: "model-factor-benchmark", inputs: ["factor", "benchmark"] }] }); }
|
|
4836
|
+
}
|
|
4837
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorMetricComponent, decorators: [{
|
|
4838
|
+
type: Component,
|
|
4839
|
+
args: [{ selector: 'model-factor-metric', standalone: false, template: "<div class=\"model-factor-metric\" [id]=\"'metric-' + metric.publicKey\" #factorAnchor (click)=\"popover.open()\">\n <div class=\"model-factor-metric-title\">{{metric.name}}</div>\n <div class=\"model-factor-metric-result\">\n <div class=\"digit\" *ngIf=\"factorScore\">{{factorScore.score}}</div>\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\"></age-indicator>\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n <div class=\"unit\">{{metric.unit}}</div>\n </div>\n</div>\n\n<sat-popover #popover horizontalAlign=\"after\" [anchor]=\"factorAnchor\" verticalAlign=\"center\" [hasBackdrop]=\"true\" [autoFocus]=\"false\">\n <div class=\"popover\" [id]=\"'popover-' + metric.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"popover.close()\" class=\"close ph-x\"></span>\n <h3 factorInformationDialog [factor]=\"metric\">\n {{metric.name}}\n <span class=\"icon ph-info-fill\"></span>\n </h3>\n <div class=\"description\">{{metric.description}}</div>\n\n <model-factor-benchmark [factor]=\"factorScore\" [benchmark]=\"benchmark\"></model-factor-benchmark>\n <model-factor-breakdown [factor]=\"factorScore\"></model-factor-breakdown>\n <quicktips [dimensionKey]=\"metric.publicKey\" [extraClass]=\"'quicktips-popover'\"></quicktips>\n\n <div class=\"link\" *ngIf=\"factorScore.recommendation.available\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"metric.publicKey\">discover how to improve ></a>\n </div>\n </div>\n <div class=\"arrow\"></div>\n </div>\n</sat-popover>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
|
|
4840
|
+
}], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
|
|
4841
|
+
type: Inject,
|
|
4842
|
+
args: [VIEWSTATE_PROVIDER]
|
|
4843
|
+
}] }, { type: i1.MatSnackBar }], propDecorators: { metric: [{
|
|
4844
|
+
type: Input
|
|
4845
|
+
}] } });
|
|
4846
|
+
|
|
4810
4847
|
class ModelFactorIndicatorComponent extends ComponentWithViewStateBase {
|
|
4811
|
-
constructor(state,
|
|
4848
|
+
constructor(state, userSettingsService, snackBar, arrowUpdateService) {
|
|
4812
4849
|
super(state, snackBar);
|
|
4813
4850
|
this.state = state;
|
|
4814
|
-
this.
|
|
4815
|
-
this.userSettingService = userSettingService;
|
|
4851
|
+
this.userSettingsService = userSettingsService;
|
|
4816
4852
|
this.snackBar = snackBar;
|
|
4817
4853
|
this.arrowUpdateService = arrowUpdateService;
|
|
4818
4854
|
this.expandIndicators = true;
|
|
4819
4855
|
this.InterventionStateEnum = InterventionStateEnum;
|
|
4856
|
+
this.settings = this.userSettingsService.get();
|
|
4820
4857
|
}
|
|
4821
4858
|
ngOnInit() {
|
|
4822
4859
|
super.ngOnInit();
|
|
4823
|
-
this.settingsSubscription = this.
|
|
4824
|
-
|
|
4860
|
+
this.settingsSubscription = this.userSettingsService.changed.subscribe((settings) => {
|
|
4861
|
+
this.settings = settings;
|
|
4862
|
+
if (this.settings.user.modelFilter.advanced !== this.expandIndicators) {
|
|
4825
4863
|
this.toggleIndicators();
|
|
4826
4864
|
}
|
|
4827
4865
|
this.setIsInActiveLayer();
|
|
@@ -4838,9 +4876,6 @@ class ModelFactorIndicatorComponent extends ComponentWithViewStateBase {
|
|
|
4838
4876
|
}
|
|
4839
4877
|
onDataUpdate(data) {
|
|
4840
4878
|
this.factorScore = data.factorScores.factorScores.find(p => p.key == this.indicator.publicKey);
|
|
4841
|
-
if (this.factorScore == null) {
|
|
4842
|
-
return;
|
|
4843
|
-
}
|
|
4844
4879
|
this.delta = data.factorScores.delta;
|
|
4845
4880
|
this.baseUrl = data.baseUrl;
|
|
4846
4881
|
this.benchmark = data.factorScores.benchmark;
|
|
@@ -4851,27 +4886,24 @@ class ModelFactorIndicatorComponent extends ComponentWithViewStateBase {
|
|
|
4851
4886
|
}
|
|
4852
4887
|
;
|
|
4853
4888
|
setIsInActiveLayer() {
|
|
4854
|
-
if (this.
|
|
4889
|
+
if (this.settings.user.modelFilter.layers.length == 0) {
|
|
4855
4890
|
this.isInActiveLayer = true;
|
|
4856
4891
|
return;
|
|
4857
4892
|
}
|
|
4858
4893
|
this.isInActiveLayer =
|
|
4859
|
-
(this.
|
|
4860
|
-
(this.
|
|
4861
|
-
(this.
|
|
4894
|
+
(this.settings.user.modelFilter.layers.find(p => p.key == "TeamMembers" && p.selected) != null && this.factorScore.points.find(p => p.name == "TeamMember") != null) ||
|
|
4895
|
+
(this.settings.user.modelFilter.layers.find(p => p.key == "Stakeholders" && p.selected) != null && this.factorScore.points.find(p => p.name == "Stakeholder") != null) ||
|
|
4896
|
+
(this.settings.user.modelFilter.layers.find(p => p.key == "Supporters" && p.selected) != null && this.factorScore.points.find(p => p.name == "Supporter") != null);
|
|
4862
4897
|
}
|
|
4863
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorIndicatorComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token:
|
|
4864
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelFactorIndicatorComponent, isStandalone: false, selector: "model-factor-indicator", inputs: { indicator: "indicator", actionStatusPosition: "actionStatusPosition", visible: "visible" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"visible\">\n <div [class]=\"'factor-indicator factor-indicator-actions-' + actionStatusPosition + ' factor-indicator-' + direction\" [ngClass]=\"{'factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + indicator.publicKey\" #factorAnchor>\n <div class=\"factor-actions\" *ngIf=\"(notes.length > 0 || factorScore.interventionSummary.impeded > 0 || factorScore.interventionSummary.open > 0) &&
|
|
4898
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorIndicatorComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: UserSettingService }, { token: i1.MatSnackBar }, { token: ArrowUpdateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4899
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelFactorIndicatorComponent, isStandalone: false, selector: "model-factor-indicator", inputs: { indicator: "indicator", actionStatusPosition: "actionStatusPosition", visible: "visible" }, usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"visible\">\n <div [class]=\"'factor-indicator factor-indicator-actions-' + actionStatusPosition + ' factor-indicator-' + direction\" [ngClass]=\"{'factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + indicator.publicKey\" #factorAnchor>\n <div class=\"factor-actions\" *ngIf=\"(notes.length > 0 || factorScore.interventionSummary.impeded > 0 || factorScore.interventionSummary.open > 0) && settings.user.modelFilter.advanced\">\n <div class=\"factor-actions-status\" *ngIf=\"factorScore.interventionSummary.open > 0\">\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.open, expectedImpactOn: indicator.publicKey }\">{{factorScore.interventionSummary.open}}</span>/\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.completed, expectedImpactOn: indicator.publicKey }\">{{factorScore.interventionSummary.completed}}</span>\n </div>\n <div class=\"factor-actions-impeded\" *ngIf=\"factorScore.interventionSummary.impeded > 0\" [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.impeded, expectedImpactOn: indicator.publicKey }\">\n <img class=\"icon\" src=\"/assets/img/impeded.svg\" /> {{factorScore.interventionSummary.impeded}}\n </div>\n <div class=\"factor-warnings\" *ngIf=\"notes.length > 0\" notesDialog [notes]=\"notes\">\n <span class=\"icon ph-warning-fill\" title=\"There are some issues in the data that might influence your interpretations\"></span>\n </div>\n </div>\n\n <div class=\"factor-content\" (click)=\"popover.open()\">\n <div class=\"factor-name\">\n {{indicator.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"factor-details\">\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\" *ngIf=\"settings.user.modelFilter.advanced\"></age-indicator>\n <delta-arrow *ngIf=\"dataAvailable\" [factorScore]=\"factorScore\" [delta]=\"delta\" [noDataIndicator]=\"false\"></delta-arrow>\n </div>\n </div>\n <div class=\"factor-anchor\" [id]=\"'factor-' + indicator.publicKey + '-anchor'\">\n </div>\n </div>\n\n <sat-popover #popover horizontalAlign=\"after\" [anchor]=\"factorAnchor\" verticalAlign=\"center\" [hasBackdrop]=\"true\" [autoFocus]=\"false\">\n <div class=\"popover\" [id]=\"'popover-' + indicator.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"popover.close()\" class=\"close ph-x\"></span>\n <h3 factorInformationDialog [factor]=\"indicator\">\n {{indicator.name}}\n <span class=\"icon ph-info-fill\"></span>\n </h3>\n <div class=\"description\">{{indicator.description}}</div>\n\n <model-factor-benchmark [factor]=\"factorScore\" [benchmark]=\"benchmark\"></model-factor-benchmark>\n <model-factor-breakdown [factor]=\"factorScore\"></model-factor-breakdown>\n <quicktips [dimensionKey]=\"indicator.publicKey\" [extraClass]=\"'quicktips-popover'\"></quicktips>\n\n <div class=\"link\" *ngIf=\"factorScore.recommendation.available\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"indicator.publicKey\">discover how to improve ></a>\n </div>\n </div>\n <div class=\"arrow\"></div>\n </div>\n </sat-popover>\n</ng-container>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: DeltaArrowComponent, selector: "delta-arrow", inputs: ["factorScore", "delta", "noDataIndicator"] }, { kind: "component", type: AgeIndicatorComponent, selector: "age-indicator", inputs: ["lastMeasured"] }, { kind: "component", type: QuickTipsComponent, selector: "quicktips", inputs: ["dimensionKey", "extraClass"] }, { kind: "component", type: ModelFactorBreakdownComponent, selector: "model-factor-breakdown", inputs: ["factor", "pageSize"] }, { kind: "directive", type: OpenNotesDialogDirective, selector: "[notesDialog]", inputs: ["notes"] }, { kind: "component", type: i11.SatPopoverComponent, selector: "sat-popover", inputs: ["anchor", "horizontalAlign", "xAlign", "verticalAlign", "yAlign", "forceAlignment", "lockAlignment", "autoFocus", "restoreFocus", "scrollStrategy", "hasBackdrop", "interactiveClose", "openTransition", "closeTransition", "openAnimationStartAtScale", "closeAnimationEndAtScale", "backdropClass", "panelClass"], outputs: ["opened", "closed", "afterOpen", "afterClose", "backdropClicked", "overlayKeydown"] }, { kind: "directive", type: OpenFactorInformationDialogDirective, selector: "[factorInformationDialog]", inputs: ["factor"] }, { kind: "component", type: ProgressbarComponent, selector: "progressbar", inputs: ["factorScore"] }, { kind: "component", type: ModelFactorBenchmarkComponent, selector: "model-factor-benchmark", inputs: ["factor", "benchmark"] }] }); }
|
|
4865
4900
|
}
|
|
4866
4901
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorIndicatorComponent, decorators: [{
|
|
4867
4902
|
type: Component,
|
|
4868
|
-
args: [{ selector: 'model-factor-indicator', standalone: false, template: "<ng-container *ngIf=\"visible\">\n <div [class]=\"'factor-indicator factor-indicator-actions-' + actionStatusPosition + ' factor-indicator-' + direction\" [ngClass]=\"{'factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + indicator.publicKey\" #factorAnchor>\n <div class=\"factor-actions\" *ngIf=\"(notes.length > 0 || factorScore.interventionSummary.impeded > 0 || factorScore.interventionSummary.open > 0) &&
|
|
4903
|
+
args: [{ selector: 'model-factor-indicator', standalone: false, template: "<ng-container *ngIf=\"visible\">\n <div [class]=\"'factor-indicator factor-indicator-actions-' + actionStatusPosition + ' factor-indicator-' + direction\" [ngClass]=\"{'factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + indicator.publicKey\" #factorAnchor>\n <div class=\"factor-actions\" *ngIf=\"(notes.length > 0 || factorScore.interventionSummary.impeded > 0 || factorScore.interventionSummary.open > 0) && settings.user.modelFilter.advanced\">\n <div class=\"factor-actions-status\" *ngIf=\"factorScore.interventionSummary.open > 0\">\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.open, expectedImpactOn: indicator.publicKey }\">{{factorScore.interventionSummary.open}}</span>/\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.completed, expectedImpactOn: indicator.publicKey }\">{{factorScore.interventionSummary.completed}}</span>\n </div>\n <div class=\"factor-actions-impeded\" *ngIf=\"factorScore.interventionSummary.impeded > 0\" [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.impeded, expectedImpactOn: indicator.publicKey }\">\n <img class=\"icon\" src=\"/assets/img/impeded.svg\" /> {{factorScore.interventionSummary.impeded}}\n </div>\n <div class=\"factor-warnings\" *ngIf=\"notes.length > 0\" notesDialog [notes]=\"notes\">\n <span class=\"icon ph-warning-fill\" title=\"There are some issues in the data that might influence your interpretations\"></span>\n </div>\n </div>\n\n <div class=\"factor-content\" (click)=\"popover.open()\">\n <div class=\"factor-name\">\n {{indicator.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"factor-details\">\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\" *ngIf=\"settings.user.modelFilter.advanced\"></age-indicator>\n <delta-arrow *ngIf=\"dataAvailable\" [factorScore]=\"factorScore\" [delta]=\"delta\" [noDataIndicator]=\"false\"></delta-arrow>\n </div>\n </div>\n <div class=\"factor-anchor\" [id]=\"'factor-' + indicator.publicKey + '-anchor'\">\n </div>\n </div>\n\n <sat-popover #popover horizontalAlign=\"after\" [anchor]=\"factorAnchor\" verticalAlign=\"center\" [hasBackdrop]=\"true\" [autoFocus]=\"false\">\n <div class=\"popover\" [id]=\"'popover-' + indicator.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"popover.close()\" class=\"close ph-x\"></span>\n <h3 factorInformationDialog [factor]=\"indicator\">\n {{indicator.name}}\n <span class=\"icon ph-info-fill\"></span>\n </h3>\n <div class=\"description\">{{indicator.description}}</div>\n\n <model-factor-benchmark [factor]=\"factorScore\" [benchmark]=\"benchmark\"></model-factor-benchmark>\n <model-factor-breakdown [factor]=\"factorScore\"></model-factor-breakdown>\n <quicktips [dimensionKey]=\"indicator.publicKey\" [extraClass]=\"'quicktips-popover'\"></quicktips>\n\n <div class=\"link\" *ngIf=\"factorScore.recommendation.available\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"indicator.publicKey\">discover how to improve ></a>\n </div>\n </div>\n <div class=\"arrow\"></div>\n </div>\n </sat-popover>\n</ng-container>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
|
|
4869
4904
|
}], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
|
|
4870
4905
|
type: Inject,
|
|
4871
4906
|
args: [VIEWSTATE_PROVIDER]
|
|
4872
|
-
}] }, { type: undefined, decorators: [{
|
|
4873
|
-
type: Inject,
|
|
4874
|
-
args: [VIEWSTATE_USERSETTINGS_STRATEGY]
|
|
4875
4907
|
}] }, { type: UserSettingService }, { type: i1.MatSnackBar }, { type: ArrowUpdateService }], propDecorators: { indicator: [{
|
|
4876
4908
|
type: Input
|
|
4877
4909
|
}], actionStatusPosition: [{
|
|
@@ -4881,25 +4913,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
|
4881
4913
|
}] } });
|
|
4882
4914
|
|
|
4883
4915
|
class ModelFactorCoreComponent extends ComponentWithViewStateBase {
|
|
4884
|
-
constructor(state,
|
|
4916
|
+
constructor(state, userSettingsService, snackBar, arrowUpdateService) {
|
|
4885
4917
|
super(state, snackBar);
|
|
4886
4918
|
this.state = state;
|
|
4887
|
-
this.
|
|
4888
|
-
this.userSettingService = userSettingService;
|
|
4919
|
+
this.userSettingsService = userSettingsService;
|
|
4889
4920
|
this.snackBar = snackBar;
|
|
4890
4921
|
this.arrowUpdateService = arrowUpdateService;
|
|
4891
4922
|
this.expandIndicators = false;
|
|
4892
4923
|
this.InterventionStateEnum = InterventionStateEnum;
|
|
4924
|
+
this.settings = this.userSettingsService.get();
|
|
4893
4925
|
}
|
|
4894
4926
|
ngOnInit() {
|
|
4895
4927
|
super.ngOnInit();
|
|
4896
|
-
this.settingsSubscription = this.
|
|
4897
|
-
|
|
4928
|
+
this.settingsSubscription = this.userSettingsService.changed.subscribe((settings) => {
|
|
4929
|
+
this.settings = settings;
|
|
4930
|
+
if (this.settings.user.modelFilter.advanced !== this.expandIndicators) {
|
|
4898
4931
|
this.toggleIndicators();
|
|
4899
4932
|
}
|
|
4900
4933
|
this.setIsInActiveLayer();
|
|
4901
4934
|
});
|
|
4902
|
-
if (this.
|
|
4935
|
+
if (this.settings.user.modelFilter.advanced !== this.expandIndicators) {
|
|
4903
4936
|
this.toggleIndicators();
|
|
4904
4937
|
}
|
|
4905
4938
|
}
|
|
@@ -4914,9 +4947,6 @@ class ModelFactorCoreComponent extends ComponentWithViewStateBase {
|
|
|
4914
4947
|
}
|
|
4915
4948
|
onDataUpdate(data) {
|
|
4916
4949
|
this.factorScore = data.factorScores.factorScores.find(p => p.key == this.factor.publicKey);
|
|
4917
|
-
if (this.factorScore == null) {
|
|
4918
|
-
return;
|
|
4919
|
-
}
|
|
4920
4950
|
this.delta = data.factorScores.delta;
|
|
4921
4951
|
this.baseUrl = data.baseUrl;
|
|
4922
4952
|
this.benchmark = data.factorScores.benchmark;
|
|
@@ -4928,23 +4958,20 @@ class ModelFactorCoreComponent extends ComponentWithViewStateBase {
|
|
|
4928
4958
|
;
|
|
4929
4959
|
setIsInActiveLayer() {
|
|
4930
4960
|
this.isInActiveLayer =
|
|
4931
|
-
(this.
|
|
4932
|
-
(this.
|
|
4933
|
-
(this.
|
|
4934
|
-
(this.
|
|
4961
|
+
(this.settings.user.modelFilter.layers.length == 0) ||
|
|
4962
|
+
(this.settings.user.modelFilter.layers.find(p => p.key == "TeamMembers" && p.selected) != null && this.factorScore.points.find(p => p.name == "TeamMember") != null) ||
|
|
4963
|
+
(this.settings.user.modelFilter.layers.find(p => p.key == "Stakeholders" && p.selected) != null && this.factorScore.points.find(p => p.name == "Stakeholder") != null) ||
|
|
4964
|
+
(this.settings.user.modelFilter.layers.find(p => p.key == "Supporters" && p.selected) != null && this.factorScore.points.find(p => p.name == "Supporter") != null);
|
|
4935
4965
|
}
|
|
4936
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorCoreComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token:
|
|
4937
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelFactorCoreComponent, isStandalone: false, selector: "model-factor-core", inputs: { factor: "factor", allowExpand: "allowExpand", expandPosition: "expandPosition" }, usesInheritance: true, ngImport: i0, template: "<div [class]=\"'model-factor model-factor-' + direction\" [ngClass]=\"{'model-factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + factor.publicKey\"
|
|
4966
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorCoreComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: UserSettingService }, { token: i1.MatSnackBar }, { token: ArrowUpdateService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4967
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelFactorCoreComponent, isStandalone: false, selector: "model-factor-core", inputs: { factor: "factor", allowExpand: "allowExpand", expandPosition: "expandPosition" }, usesInheritance: true, ngImport: i0, template: "<div [class]=\"'model-factor model-factor-' + direction\" [ngClass]=\"{'model-factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + factor.publicKey\">\n <div [class]=\"'model-factor-expand model-factor-expand-' + expandPosition\" [ngClass]=\"{'expanded': expandIndicators}\" (click)=\"toggleIndicators()\" [id]=\"'factor-' + factor.publicKey + '-expand'\" *ngIf=\"allowExpand\">\n <span class=\"plus\">+</span>\n </div>\n <div class=\"model-factor-inner\" #factorAnchor>\n <div class=\"model-factor-content\" (click)=\"popover.open()\">\n <div class=\"model-factor-name\">\n {{factor.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"model-factor-details\">\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\" *ngIf=\"settings.user.modelFilter.advanced\"></age-indicator>\n <delta-arrow *ngIf=\"dataAvailable\" [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n </div>\n\n <div class=\"model-factor-bottom\" *ngIf=\"settings.user.modelFilter.advanced\">\n <span class=\"meta-actions\" [title]=\"factorScore.interventionSummary.open + ' open improvement actions, versus ' + factorScore.interventionSummary.completed + ' completed improvement actions'\">\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.open, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.open}}</span>/\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.completed, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.completed}}</span>\n </span>\n <span class=\"meta-impeded\" *ngIf=\"factorScore.interventionSummary.impeded > 0\" [title]=\"factorScore.interventionSummary.impeded + ' improvement actions are blocked, and teams are requesting support'\" [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.impeded, expectedImpactOn: factor.publicKey }\">\n <img class=\"icon\" src=\"/assets/img/impeded.svg\" />{{factorScore.interventionSummary.impeded}}\n </span>\n <span class=\"meta-warnings\" *ngIf=\"notes.length > 0\" notesDialog [notes]=\"notes\">\n <span class=\"icon ph-warning-fill\"></span>\n </span>\n </div>\n\n <div class=\"model-factor-bottom-empty\" *ngIf=\"!settings.user.modelFilter.advanced\">\n </div>\n </div>\n</div>\n\n<div [id]=\"'factor-' + factor.publicKey + '-indicators'\" class=\"indicators\">\n <model-factor-indicator [indicator]=\"indicator\" *ngFor=\"let indicator of factor.lower\" [actionStatusPosition]=\"expandPosition\" [visible]=\"expandIndicators && allowExpand\"></model-factor-indicator>\n</div>\n\n<sat-popover #popover horizontalAlign=\"after\" [anchor]=\"factorAnchor\" verticalAlign=\"center\" [hasBackdrop]=\"true\" [autoFocus]=\"false\">\n <div class=\"popover\" [id]=\"'popover-' + factor.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"popover.close()\" class=\"close ph-x\"></span>\n <h3 factorInformationDialog [factor]=\"factor\">\n {{factor.name}}\n <span class=\"icon ph-info-fill\"></span>\n </h3>\n <div class=\"description\">{{factor.description}}</div>\n\n <model-factor-benchmark [factor]=\"factorScore\" [benchmark]=\"benchmark\"></model-factor-benchmark>\n <model-factor-breakdown [factor]=\"factorScore\"></model-factor-breakdown>\n <quicktips [dimensionKey]=\"factor.publicKey\" [extraClass]=\"'quicktips-popover'\"></quicktips>\n\n <div class=\"link\" *ngIf=\"factorScore.recommendation.available\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"factor.publicKey\">discover how to improve ></a>\n </div>\n </div>\n <div class=\"arrow\"></div>\n </div>\n</sat-popover>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\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: "directive", type: i1$4.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: DeltaArrowComponent, selector: "delta-arrow", inputs: ["factorScore", "delta", "noDataIndicator"] }, { kind: "component", type: AgeIndicatorComponent, selector: "age-indicator", inputs: ["lastMeasured"] }, { kind: "component", type: QuickTipsComponent, selector: "quicktips", inputs: ["dimensionKey", "extraClass"] }, { kind: "component", type: ModelFactorBreakdownComponent, selector: "model-factor-breakdown", inputs: ["factor", "pageSize"] }, { kind: "directive", type: OpenNotesDialogDirective, selector: "[notesDialog]", inputs: ["notes"] }, { kind: "component", type: i11.SatPopoverComponent, selector: "sat-popover", inputs: ["anchor", "horizontalAlign", "xAlign", "verticalAlign", "yAlign", "forceAlignment", "lockAlignment", "autoFocus", "restoreFocus", "scrollStrategy", "hasBackdrop", "interactiveClose", "openTransition", "closeTransition", "openAnimationStartAtScale", "closeAnimationEndAtScale", "backdropClass", "panelClass"], outputs: ["opened", "closed", "afterOpen", "afterClose", "backdropClicked", "overlayKeydown"] }, { kind: "directive", type: OpenFactorInformationDialogDirective, selector: "[factorInformationDialog]", inputs: ["factor"] }, { kind: "component", type: ProgressbarComponent, selector: "progressbar", inputs: ["factorScore"] }, { kind: "component", type: ModelFactorIndicatorComponent, selector: "model-factor-indicator", inputs: ["indicator", "actionStatusPosition", "visible"] }, { kind: "component", type: ModelFactorBenchmarkComponent, selector: "model-factor-benchmark", inputs: ["factor", "benchmark"] }] }); }
|
|
4938
4968
|
}
|
|
4939
4969
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelFactorCoreComponent, decorators: [{
|
|
4940
4970
|
type: Component,
|
|
4941
|
-
args: [{ selector: 'model-factor-core', standalone: false, template: "<div [class]=\"'model-factor model-factor-' + direction\" [ngClass]=\"{'model-factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + factor.publicKey\"
|
|
4971
|
+
args: [{ selector: 'model-factor-core', standalone: false, template: "<div [class]=\"'model-factor model-factor-' + direction\" [ngClass]=\"{'model-factor-fade' : !isInActiveLayer || !dataAvailable}\" [id]=\"'factor-' + factor.publicKey\">\n <div [class]=\"'model-factor-expand model-factor-expand-' + expandPosition\" [ngClass]=\"{'expanded': expandIndicators}\" (click)=\"toggleIndicators()\" [id]=\"'factor-' + factor.publicKey + '-expand'\" *ngIf=\"allowExpand\">\n <span class=\"plus\">+</span>\n </div>\n <div class=\"model-factor-inner\" #factorAnchor>\n <div class=\"model-factor-content\" (click)=\"popover.open()\">\n <div class=\"model-factor-name\">\n {{factor.name}}\n </div>\n <progressbar [factorScore]=\"factorScore\"></progressbar>\n <div class=\"model-factor-details\">\n <age-indicator [lastMeasured]=\"factorScore.lastMeasured\" *ngIf=\"settings.user.modelFilter.advanced\"></age-indicator>\n <delta-arrow *ngIf=\"dataAvailable\" [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n </div>\n\n <div class=\"model-factor-bottom\" *ngIf=\"settings.user.modelFilter.advanced\">\n <span class=\"meta-actions\" [title]=\"factorScore.interventionSummary.open + ' open improvement actions, versus ' + factorScore.interventionSummary.completed + ' completed improvement actions'\">\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.open, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.open}}</span>/\n <span [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.completed, expectedImpactOn: factor.publicKey }\">{{factorScore.interventionSummary.completed}}</span>\n </span>\n <span class=\"meta-impeded\" *ngIf=\"factorScore.interventionSummary.impeded > 0\" [title]=\"factorScore.interventionSummary.impeded + ' improvement actions are blocked, and teams are requesting support'\" [routerLink]=\"[baseUrl, 'actions']\" [queryParams]=\"{ state: InterventionStateEnum.impeded, expectedImpactOn: factor.publicKey }\">\n <img class=\"icon\" src=\"/assets/img/impeded.svg\" />{{factorScore.interventionSummary.impeded}}\n </span>\n <span class=\"meta-warnings\" *ngIf=\"notes.length > 0\" notesDialog [notes]=\"notes\">\n <span class=\"icon ph-warning-fill\"></span>\n </span>\n </div>\n\n <div class=\"model-factor-bottom-empty\" *ngIf=\"!settings.user.modelFilter.advanced\">\n </div>\n </div>\n</div>\n\n<div [id]=\"'factor-' + factor.publicKey + '-indicators'\" class=\"indicators\">\n <model-factor-indicator [indicator]=\"indicator\" *ngFor=\"let indicator of factor.lower\" [actionStatusPosition]=\"expandPosition\" [visible]=\"expandIndicators && allowExpand\"></model-factor-indicator>\n</div>\n\n<sat-popover #popover horizontalAlign=\"after\" [anchor]=\"factorAnchor\" verticalAlign=\"center\" [hasBackdrop]=\"true\" [autoFocus]=\"false\">\n <div class=\"popover\" [id]=\"'popover-' + factor.publicKey\">\n <div class=\"popover-container\">\n <span (click)=\"popover.close()\" class=\"close ph-x\"></span>\n <h3 factorInformationDialog [factor]=\"factor\">\n {{factor.name}}\n <span class=\"icon ph-info-fill\"></span>\n </h3>\n <div class=\"description\">{{factor.description}}</div>\n\n <model-factor-benchmark [factor]=\"factorScore\" [benchmark]=\"benchmark\"></model-factor-benchmark>\n <model-factor-breakdown [factor]=\"factorScore\"></model-factor-breakdown>\n <quicktips [dimensionKey]=\"factor.publicKey\" [extraClass]=\"'quicktips-popover'\"></quicktips>\n\n <div class=\"link\" *ngIf=\"factorScore.recommendation.available\">\n <a [routerLink]=\"[baseUrl, 'tips']\" [fragment]=\"factor.publicKey\">discover how to improve ></a>\n </div>\n </div>\n <div class=\"arrow\"></div>\n </div>\n</sat-popover>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
|
|
4942
4972
|
}], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
|
|
4943
4973
|
type: Inject,
|
|
4944
4974
|
args: [VIEWSTATE_PROVIDER]
|
|
4945
|
-
}] }, { type: undefined, decorators: [{
|
|
4946
|
-
type: Inject,
|
|
4947
|
-
args: [VIEWSTATE_USERSETTINGS_STRATEGY]
|
|
4948
4975
|
}] }, { type: UserSettingService }, { type: i1.MatSnackBar }, { type: ArrowUpdateService }], propDecorators: { factor: [{
|
|
4949
4976
|
type: Input
|
|
4950
4977
|
}], allowExpand: [{
|
|
@@ -4954,25 +4981,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
|
4954
4981
|
}] } });
|
|
4955
4982
|
|
|
4956
4983
|
class ModelCanvasComponent extends ComponentWithViewStateBase {
|
|
4957
|
-
constructor(state,
|
|
4984
|
+
constructor(state, userSettingsService, snackBar) {
|
|
4958
4985
|
super(state, snackBar);
|
|
4959
4986
|
this.state = state;
|
|
4960
|
-
this.
|
|
4961
|
-
this.userSettingService = userSettingService;
|
|
4987
|
+
this.userSettingsService = userSettingsService;
|
|
4962
4988
|
this.snackBar = snackBar;
|
|
4963
4989
|
this.QualifiedByEnum = QualifiedByEnum;
|
|
4990
|
+
this.settings = this.userSettingsService.get();
|
|
4991
|
+
if (typeof this.settings.user.modelFilter.advanced === 'undefined') {
|
|
4992
|
+
this.settings.user.modelFilter.advanced = false;
|
|
4993
|
+
}
|
|
4994
|
+
if (!this.settings.user.modelFilter.layers || this.settings.user.modelFilter.layers.length == 0) {
|
|
4995
|
+
this.settings.user.modelFilter.layers = [];
|
|
4996
|
+
this.settings.user.modelFilter.layers.push(new SelectListItem("TeamMembers", "Team", true));
|
|
4997
|
+
this.settings.user.modelFilter.layers.push(new SelectListItem("Stakeholders", "Stakeholders", true));
|
|
4998
|
+
this.settings.user.modelFilter.layers.push(new SelectListItem("Supporters", "Supporters", true));
|
|
4999
|
+
}
|
|
4964
5000
|
}
|
|
4965
5001
|
ngOnInit() {
|
|
4966
5002
|
this.determineScreenSize();
|
|
4967
5003
|
super.ngOnInit();
|
|
4968
|
-
|
|
4969
|
-
this.
|
|
4970
|
-
}
|
|
4971
|
-
|
|
4972
|
-
|
|
4973
|
-
|
|
4974
|
-
this.
|
|
4975
|
-
this.userSettings.settings.user.modelFilter.layers.push(new SelectListItem("Supporters", "Supporters", true));
|
|
5004
|
+
this.settingsSubscription = this.userSettingsService.changed.subscribe((settings) => {
|
|
5005
|
+
this.settings = settings;
|
|
5006
|
+
});
|
|
5007
|
+
}
|
|
5008
|
+
ngOnDestroy() {
|
|
5009
|
+
if (this.settingsSubscription) {
|
|
5010
|
+
this.settingsSubscription.unsubscribe();
|
|
4976
5011
|
}
|
|
4977
5012
|
}
|
|
4978
5013
|
determineScreenSize(event) {
|
|
@@ -4981,7 +5016,8 @@ class ModelCanvasComponent extends ComponentWithViewStateBase {
|
|
|
4981
5016
|
}
|
|
4982
5017
|
onDataUpdate(data) {
|
|
4983
5018
|
this.globalNotes = data.factorScores.processingData.notes;
|
|
4984
|
-
this.factors = data.factorScores.modelStructure.definition.factors.filter(p => p.parentKey == null);
|
|
5019
|
+
this.factors = data.factorScores.modelStructure.definition.factors.filter(p => p.parentKey == null && p.core);
|
|
5020
|
+
this.metrics = data.factorScores.modelStructure.definition.factors.filter(p => p.parentKey == null && p.metric);
|
|
4985
5021
|
this.modelDefinition = data.factorScores.modelStructure.definition;
|
|
4986
5022
|
this.dateRange = data.factorScores.dateRange;
|
|
4987
5023
|
this.deltaDateRange = data.factorScores.delta.dateRange;
|
|
@@ -5013,29 +5049,26 @@ class ModelCanvasComponent extends ComponentWithViewStateBase {
|
|
|
5013
5049
|
}
|
|
5014
5050
|
;
|
|
5015
5051
|
toggleView(advanced) {
|
|
5016
|
-
this.
|
|
5017
|
-
this.
|
|
5052
|
+
this.settings.user.modelFilter.advanced = advanced;
|
|
5053
|
+
this.userSettingsService.set(this.settings);
|
|
5018
5054
|
}
|
|
5019
5055
|
toggleLayer(selectedLayer) {
|
|
5020
|
-
var layer = this.
|
|
5056
|
+
var layer = this.settings.user.modelFilter.layers.find(p => p.key == selectedLayer.key);
|
|
5021
5057
|
if (!layer) {
|
|
5022
5058
|
return;
|
|
5023
5059
|
}
|
|
5024
5060
|
layer.selected = !layer.selected;
|
|
5025
|
-
this.
|
|
5061
|
+
this.userSettingsService.set(this.settings);
|
|
5026
5062
|
}
|
|
5027
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelCanvasComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token:
|
|
5028
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelCanvasComponent, isStandalone: false, selector: "model-canvas", host: { listeners: { "window:resize": "determineScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"!showModel\" class=\"message message-warning\">\n <div><span class=\"icon ph-info-fill\"></span> We've hidden the model visualization because your resolution is too low. Please try a larger device, like a tablet, laptop or desktop.</div>\n</div>\n\n<div class=\"wirebox model\" *ngIf=\"factors && showModel\">\n <div class=\"top\">\n <div class=\"toolbar\">\n <div class=\"toolbar-settings\">\n <div class=\"toolbar-setting\">\n <div class=\"toolbar-setting-title\">Selected Benchmark</div>\n <div class=\"toolbar-setting-label\">{{benchmark}}</div>\n </div>\n <div class=\"toolbar-setting\">\n <div class=\"toolbar-setting-title\">compare results to</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.none\">No comparison</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.delta && deltaType == 'PreviousSnapshot'\">Previous snapshot from {{deltaDateRange | dateRange}}</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.delta && deltaType != 'PreviousSnapshot'\">Current period <span class=\"icon ph-info-fill\" [title]=\"'Current period ranges from ' + (dateRange | dateRange) + '. This includes weighed measurements from ' + pointCount + ' ' + pointType + ': ' + pointNames\"></span> with previous period <span class=\"icon ph-info-fill\" [title]=\"'Previous period ranges from ' + (deltaDateRange | dateRange) + '. This includes weighed measurements from ' + deltaTeams + ' ' + pointType + ': ' + deltaTeamNames\"></span></div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.benchmark\">Against benchmark</div>\n </div>\n <div class=\"toolbar-setting\" *ngIf=\"qualifiedBy != QualifiedByEnum.none\">\n <div class=\"toolbar-setting-title\">comparison legend</div>\n <div class=\"toolbar-setting-markers negative\">\n <ng-container *ngIf=\"qualifiedBy == 'Benchmark'\">\n <div class=\"toolbar-setting-marker negative\">\n <span class=\"marker\"></span>\n <span class=\"label\">lower</span>\n </div>\n <div class=\"toolbar-setting-marker positive\">\n <span class=\"marker\"></span>\n <span class=\"label\">higher</span>\n </div>\n </ng-container>\n <ng-container *ngIf=\"qualifiedBy == 'Delta'\">\n <div class=\"toolbar-setting-marker negative\">\n <span class=\"marker\"></span>\n <span class=\"label\">decreased</span>\n </div>\n <div class=\"toolbar-setting-marker positive\">\n <span class=\"marker\"></span>\n <span class=\"label\">improved</span>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"buttons\">\n <div class=\"button\" id=\"change-settings\" settingsDialog><span class=\"ph-faders icon\"></span> Settings</div>\n <div class=\"button\" id=\"export-factorscores\" exportFactorScoresDialog *ngIf=\"isLoggedIn\"><span class=\"ph-download-simple icon\"></span> Export</div>\n </div>\n </div>\n </div>\n <div class=\"content\">\n <div class=\"model-visualization\">\n <div class=\"model-clarification\">\n <span class=\"icon ph-info-fill\"></span>\n <span class=\"message-text\">This model shows how factors are connected based on scientific research. Click <span class=\"icon ph-plus-circle-bold plus\"></span> to expand or close lower-order factors. Click factors for more detail.</span>\n </div>\n\n <div *ngIf=\"!showModel || !showIndicatorArrows\" class=\"model-smallscreen\">\n <span class=\"icon ph-frame-corners-bold\"></span>\n <span class=\"message-text\">View on a larger device to see more details.</span>\n </div>\n\n <div class=\"model-viewconfiguration\">\n <div class=\"model-viewmode\">\n <div class=\"model-viewmode-label\">View</div>\n <div class=\"model-viewmode-option\" (click)=\"toggleView(false)\" [ngClass]=\"{'selected': !userSettings.settings.user.modelFilter.advanced}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"!userSettings.settings.user.modelFilter.advanced\"></span>Simple\n </div>\n <div class=\"model-viewmode-option selected\" (click)=\"toggleView(true)\" [ngClass]=\"{'selected': userSettings.settings.user.modelFilter.advanced}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"userSettings.settings.user.modelFilter.advanced\"></span>Advanced\n </div>\n </div>\n\n <div class=\"model-viewmode model-layers\">\n <div class=\"model-viewmode-label\">Source</div>\n <div class=\"model-viewmode-option\" *ngFor=\"let layer of userSettings.settings.user.modelFilter.layers\" (click)=\"toggleLayer(layer)\" [ngClass]=\"{'selected': layer.selected}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"layer.selected\"></span>{{layer.label}}\n </div>\n </div>\n\n <div class=\"model-warnings\" *ngIf=\"globalNotes.length > 0\" notesDialog [notes]=\"globalNotes\">\n <span class=\"ph-warning-fill icon\"></span>\n <span *ngIf=\"globalNotes.length == 1\">{{globalNotes.length}} warning</span>\n <span *ngIf=\"globalNotes.length > 1\">{{globalNotes.length}} warnings</span>\n </div>\n </div>\n\n <div class=\"model-frame\" [class]=\"'model-visualization-' + modelDefinition.publicKey\">\n <ng-container *ngFor=\"let factor of factors\">\n <model-factor-core [factor]=\"factor\" [expandPosition]=\"factor.indicatorPosition\" [allowExpand]=\"showIndicatorArrows\"></model-factor-core>\n </ng-container>\n </div>\n\n <ng-container *ngFor=\"let factor of factors\">\n <arrow [from]=\"'#factor-' + factor.publicKey\" [to]=\"'#factor-' + effect.to\" [onlyVisible]=\"true\" [tail]=\"true\" [head]=\"false\" [width]=\"2\" *ngFor=\"let effect of factor.effects\"></arrow>\n <ng-container *ngIf=\"showIndicatorArrows\">\n <ng-container *ngFor=\"let lowerFactor of factor.lower\">\n <arrow [from]=\"'#factor-' + lowerFactor.publicKey + '-anchor'\" [to]=\"'#factor-' + lowerEffect.to + '-expand'\" [onlyVisible]=\"true\" [tail]=\"false\" [head]=\"false\" [width]=\"1\" *ngFor=\"let lowerEffect of lowerFactor.effects\"></arrow>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <div class=\"model-attribution\">\n <span class=\"icon ph-info-fill\"></span>\n <span>\n <span [innerHtml]=\"modelDefinition.attribution\"></span>\n <span> See our <a href=\"https://github.com/theliberators/scrumteamsurvey.docs/wiki\" target=\"_blank\">wiki</a> for details and a FAQ.</span>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.content{border-bottom:3px solid #f0f0f0}@media only screen and (max-width: 1536px){.toolbar-settings{display:flex}}@media only screen and (max-width: 992px){.toolbar-settings{display:block}}\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: ArrowComponent, selector: "arrow", inputs: ["from", "to", "head", "tail", "text", "toolTip", "color", "width", "onlyVisible", "fromX", "fromY", "toX", "toY"] }, { kind: "directive", type: OpenSettingsDialogDirective, selector: "[settingsDialog]", inputs: ["showSettingStacking"] }, { kind: "directive", type: OpenExportFactorScoresDialogDirective, selector: "[exportFactorScoresDialog]" }, { kind: "directive", type: OpenNotesDialogDirective, selector: "[notesDialog]", inputs: ["notes"] }, { kind: "component", type: ModelFactorCoreComponent, selector: "model-factor-core", inputs: ["factor", "allowExpand", "expandPosition"] }, { kind: "pipe", type: DateRangePipe, name: "dateRange" }] }); }
|
|
5063
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelCanvasComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: UserSettingService }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5064
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: ModelCanvasComponent, isStandalone: false, selector: "model-canvas", host: { listeners: { "window:resize": "determineScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<div *ngIf=\"!showModel\" class=\"message message-warning\">\n <div><span class=\"icon ph-info-fill\"></span> We've hidden the model visualization because your resolution is too low. Please try a larger device, like a tablet, laptop or desktop.</div>\n</div>\n\n<div class=\"wirebox model\" *ngIf=\"factors && showModel\">\n <div class=\"top\">\n <div class=\"toolbar\">\n <div class=\"toolbar-settings\">\n <div class=\"toolbar-setting\">\n <div class=\"toolbar-setting-title\">Selected Benchmark</div>\n <div class=\"toolbar-setting-label\">{{benchmark}}</div>\n </div>\n <div class=\"toolbar-setting\">\n <div class=\"toolbar-setting-title\">compare results to</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.none\">No comparison</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.delta && deltaType == 'PreviousSnapshot'\">Previous snapshot from {{deltaDateRange | dateRange}}</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.delta && deltaType != 'PreviousSnapshot'\">Current period <span class=\"icon ph-info-fill\" [title]=\"'Current period ranges from ' + (dateRange | dateRange) + '. This includes weighed measurements from ' + pointCount + ' ' + pointType + ': ' + pointNames\"></span> with previous period <span class=\"icon ph-info-fill\" [title]=\"'Previous period ranges from ' + (deltaDateRange | dateRange) + '. This includes weighed measurements from ' + deltaTeams + ' ' + pointType + ': ' + deltaTeamNames\"></span></div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.benchmark\">Against benchmark</div>\n </div>\n <div class=\"toolbar-setting\" *ngIf=\"qualifiedBy != QualifiedByEnum.none\">\n <div class=\"toolbar-setting-title\">comparison legend</div>\n <div class=\"toolbar-setting-markers negative\">\n <ng-container *ngIf=\"qualifiedBy == 'Benchmark'\">\n <div class=\"toolbar-setting-marker negative\">\n <span class=\"marker\"></span>\n <span class=\"label\">lower</span>\n </div>\n <div class=\"toolbar-setting-marker positive\">\n <span class=\"marker\"></span>\n <span class=\"label\">higher</span>\n </div>\n </ng-container>\n <ng-container *ngIf=\"qualifiedBy == 'Delta'\">\n <div class=\"toolbar-setting-marker negative\">\n <span class=\"marker\"></span>\n <span class=\"label\">decreased</span>\n </div>\n <div class=\"toolbar-setting-marker positive\">\n <span class=\"marker\"></span>\n <span class=\"label\">improved</span>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"buttons\">\n <div class=\"button\" id=\"change-settings\" settingsDialog><span class=\"ph-faders icon\"></span> Settings</div>\n <div class=\"button\" id=\"export-factorscores\" exportFactorScoresDialog *ngIf=\"isLoggedIn\"><span class=\"ph-download-simple icon\"></span> Export</div>\n </div>\n </div>\n </div>\n <div class=\"content\">\n <div class=\"model-visualization\">\n <div class=\"model-clarification\">\n <span class=\"icon ph-info-fill\"></span>\n <span class=\"message-text\">This model shows how factors are connected based on scientific research. Click <span class=\"icon ph-plus-circle-bold plus\"></span> to expand or close lower-order factors. Click factors for more detail.</span>\n </div>\n\n <div *ngIf=\"!showModel || !showIndicatorArrows\" class=\"model-smallscreen\">\n <span class=\"icon ph-frame-corners-bold\"></span>\n <span class=\"message-text\">View on a larger device to see more details.</span>\n </div>\n\n <div class=\"model-viewconfiguration\">\n <div class=\"model-viewmode\">\n <div class=\"model-viewmode-label\">View</div>\n <div class=\"model-viewmode-option\" (click)=\"toggleView(false)\" [ngClass]=\"{'selected': !settings.user.modelFilter.advanced}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"!settings.user.modelFilter.advanced\"></span>Simple\n </div>\n <div class=\"model-viewmode-option selected\" (click)=\"toggleView(true)\" [ngClass]=\"{'selected': settings.user.modelFilter.advanced}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"settings.user.modelFilter.advanced\"></span>Advanced\n </div>\n </div>\n\n <div class=\"model-viewmode model-layers\">\n <div class=\"model-viewmode-label\">Source</div>\n\n <div class=\"model-viewmode-option\" *ngFor=\"let layer of settings.user.modelFilter.layers\" (click)=\"toggleLayer(layer)\" [ngClass]=\"{'selected': layer.selected}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"layer.selected\"></span>{{layer.label}}\n </div>\n </div>\n\n <div class=\"model-warnings\" *ngIf=\"globalNotes.length > 0\" notesDialog [notes]=\"globalNotes\">\n <span class=\"ph-warning-fill icon\"></span>\n <span *ngIf=\"globalNotes.length == 1\">{{globalNotes.length}} warning</span>\n <span *ngIf=\"globalNotes.length > 1\">{{globalNotes.length}} warnings</span>\n </div>\n </div>\n\n <div class=\"model-frame\" [class]=\"'model-visualization-' + modelDefinition.publicKey\">\n <ng-container *ngFor=\"let factor of factors\">\n <model-factor-core [factor]=\"factor\" [expandPosition]=\"factor.indicatorPosition\" [allowExpand]=\"showIndicatorArrows\"></model-factor-core>\n </ng-container>\n </div>\n\n <ng-container *ngFor=\"let factor of factors\">\n <arrow [from]=\"'#factor-' + factor.publicKey\" [to]=\"'#factor-' + effect.to\" [onlyVisible]=\"true\" [tail]=\"true\" [head]=\"false\" [width]=\"2\" *ngFor=\"let effect of factor.effects\"></arrow>\n <ng-container *ngIf=\"showIndicatorArrows\">\n <ng-container *ngFor=\"let lowerFactor of factor.lower\">\n <arrow [from]=\"'#factor-' + lowerFactor.publicKey + '-anchor'\" [to]=\"'#factor-' + lowerEffect.to + '-expand'\" [onlyVisible]=\"true\" [tail]=\"false\" [head]=\"false\" [width]=\"1\" *ngFor=\"let lowerEffect of lowerFactor.effects\"></arrow>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <div class=\"model-attribution\">\n <span class=\"icon ph-info-fill\"></span>\n <span>\n <span [innerHtml]=\"modelDefinition.attribution\"></span>\n <span> See our <a href=\"https://github.com/theliberators/scrumteamsurvey.docs/wiki\" target=\"_blank\">wiki</a> for details and a FAQ.</span>\n </span>\n </div>\n </div>\n </div>\n\n <div class=\"bottom\" *ngIf=\"metrics.length > 0\">\n <h3>Process metrics <span class=\"badge badge-beta\">beta</span></h3>\n <div class=\"message message-information\"><span class=\"icon ph-info-fill\"></span><span>We are experimenting with process metrics from external services.</span></div>\n <div class=\"model-factor-metrics\">\n <model-factor-metric [metric]=\"metric\" *ngFor=\"let metric of metrics\"></model-factor-metric>\n </div>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.content{border-bottom:3px solid #f0f0f0}@media only screen and (max-width: 1536px){.toolbar-settings{display:flex}}@media only screen and (max-width: 992px){.toolbar-settings{display:block}}\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: ArrowComponent, selector: "arrow", inputs: ["from", "to", "head", "tail", "text", "toolTip", "color", "width", "onlyVisible", "fromX", "fromY", "toX", "toY"] }, { kind: "directive", type: OpenSettingsDialogDirective, selector: "[settingsDialog]", inputs: ["showSettingStacking"] }, { kind: "directive", type: OpenExportFactorScoresDialogDirective, selector: "[exportFactorScoresDialog]" }, { kind: "directive", type: OpenNotesDialogDirective, selector: "[notesDialog]", inputs: ["notes"] }, { kind: "component", type: ModelFactorMetricComponent, selector: "model-factor-metric", inputs: ["metric"] }, { kind: "component", type: ModelFactorCoreComponent, selector: "model-factor-core", inputs: ["factor", "allowExpand", "expandPosition"] }, { kind: "pipe", type: DateRangePipe, name: "dateRange" }] }); }
|
|
5029
5065
|
}
|
|
5030
5066
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelCanvasComponent, decorators: [{
|
|
5031
5067
|
type: Component,
|
|
5032
|
-
args: [{ selector: 'model-canvas', standalone: false, template: "<div *ngIf=\"!showModel\" class=\"message message-warning\">\n <div><span class=\"icon ph-info-fill\"></span> We've hidden the model visualization because your resolution is too low. Please try a larger device, like a tablet, laptop or desktop.</div>\n</div>\n\n<div class=\"wirebox model\" *ngIf=\"factors && showModel\">\n <div class=\"top\">\n <div class=\"toolbar\">\n <div class=\"toolbar-settings\">\n <div class=\"toolbar-setting\">\n <div class=\"toolbar-setting-title\">Selected Benchmark</div>\n <div class=\"toolbar-setting-label\">{{benchmark}}</div>\n </div>\n <div class=\"toolbar-setting\">\n <div class=\"toolbar-setting-title\">compare results to</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.none\">No comparison</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.delta && deltaType == 'PreviousSnapshot'\">Previous snapshot from {{deltaDateRange | dateRange}}</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.delta && deltaType != 'PreviousSnapshot'\">Current period <span class=\"icon ph-info-fill\" [title]=\"'Current period ranges from ' + (dateRange | dateRange) + '. This includes weighed measurements from ' + pointCount + ' ' + pointType + ': ' + pointNames\"></span> with previous period <span class=\"icon ph-info-fill\" [title]=\"'Previous period ranges from ' + (deltaDateRange | dateRange) + '. This includes weighed measurements from ' + deltaTeams + ' ' + pointType + ': ' + deltaTeamNames\"></span></div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.benchmark\">Against benchmark</div>\n </div>\n <div class=\"toolbar-setting\" *ngIf=\"qualifiedBy != QualifiedByEnum.none\">\n <div class=\"toolbar-setting-title\">comparison legend</div>\n <div class=\"toolbar-setting-markers negative\">\n <ng-container *ngIf=\"qualifiedBy == 'Benchmark'\">\n <div class=\"toolbar-setting-marker negative\">\n <span class=\"marker\"></span>\n <span class=\"label\">lower</span>\n </div>\n <div class=\"toolbar-setting-marker positive\">\n <span class=\"marker\"></span>\n <span class=\"label\">higher</span>\n </div>\n </ng-container>\n <ng-container *ngIf=\"qualifiedBy == 'Delta'\">\n <div class=\"toolbar-setting-marker negative\">\n <span class=\"marker\"></span>\n <span class=\"label\">decreased</span>\n </div>\n <div class=\"toolbar-setting-marker positive\">\n <span class=\"marker\"></span>\n <span class=\"label\">improved</span>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"buttons\">\n <div class=\"button\" id=\"change-settings\" settingsDialog><span class=\"ph-faders icon\"></span> Settings</div>\n <div class=\"button\" id=\"export-factorscores\" exportFactorScoresDialog *ngIf=\"isLoggedIn\"><span class=\"ph-download-simple icon\"></span> Export</div>\n </div>\n </div>\n </div>\n <div class=\"content\">\n <div class=\"model-visualization\">\n <div class=\"model-clarification\">\n <span class=\"icon ph-info-fill\"></span>\n <span class=\"message-text\">This model shows how factors are connected based on scientific research. Click <span class=\"icon ph-plus-circle-bold plus\"></span> to expand or close lower-order factors. Click factors for more detail.</span>\n </div>\n\n <div *ngIf=\"!showModel || !showIndicatorArrows\" class=\"model-smallscreen\">\n <span class=\"icon ph-frame-corners-bold\"></span>\n <span class=\"message-text\">View on a larger device to see more details.</span>\n </div>\n\n <div class=\"model-viewconfiguration\">\n <div class=\"model-viewmode\">\n <div class=\"model-viewmode-label\">View</div>\n <div class=\"model-viewmode-option\" (click)=\"toggleView(false)\" [ngClass]=\"{'selected': !userSettings.settings.user.modelFilter.advanced}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"!userSettings.settings.user.modelFilter.advanced\"></span>Simple\n </div>\n <div class=\"model-viewmode-option selected\" (click)=\"toggleView(true)\" [ngClass]=\"{'selected': userSettings.settings.user.modelFilter.advanced}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"userSettings.settings.user.modelFilter.advanced\"></span>Advanced\n </div>\n </div>\n\n <div class=\"model-viewmode model-layers\">\n <div class=\"model-viewmode-label\">Source</div>\n <div class=\"model-viewmode-option\" *ngFor=\"let layer of userSettings.settings.user.modelFilter.layers\" (click)=\"toggleLayer(layer)\" [ngClass]=\"{'selected': layer.selected}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"layer.selected\"></span>{{layer.label}}\n </div>\n </div>\n\n <div class=\"model-warnings\" *ngIf=\"globalNotes.length > 0\" notesDialog [notes]=\"globalNotes\">\n <span class=\"ph-warning-fill icon\"></span>\n <span *ngIf=\"globalNotes.length == 1\">{{globalNotes.length}} warning</span>\n <span *ngIf=\"globalNotes.length > 1\">{{globalNotes.length}} warnings</span>\n </div>\n </div>\n\n <div class=\"model-frame\" [class]=\"'model-visualization-' + modelDefinition.publicKey\">\n <ng-container *ngFor=\"let factor of factors\">\n <model-factor-core [factor]=\"factor\" [expandPosition]=\"factor.indicatorPosition\" [allowExpand]=\"showIndicatorArrows\"></model-factor-core>\n </ng-container>\n </div>\n\n <ng-container *ngFor=\"let factor of factors\">\n <arrow [from]=\"'#factor-' + factor.publicKey\" [to]=\"'#factor-' + effect.to\" [onlyVisible]=\"true\" [tail]=\"true\" [head]=\"false\" [width]=\"2\" *ngFor=\"let effect of factor.effects\"></arrow>\n <ng-container *ngIf=\"showIndicatorArrows\">\n <ng-container *ngFor=\"let lowerFactor of factor.lower\">\n <arrow [from]=\"'#factor-' + lowerFactor.publicKey + '-anchor'\" [to]=\"'#factor-' + lowerEffect.to + '-expand'\" [onlyVisible]=\"true\" [tail]=\"false\" [head]=\"false\" [width]=\"1\" *ngFor=\"let lowerEffect of lowerFactor.effects\"></arrow>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <div class=\"model-attribution\">\n <span class=\"icon ph-info-fill\"></span>\n <span>\n <span [innerHtml]=\"modelDefinition.attribution\"></span>\n <span> See our <a href=\"https://github.com/theliberators/scrumteamsurvey.docs/wiki\" target=\"_blank\">wiki</a> for details and a FAQ.</span>\n </span>\n </div>\n </div>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.content{border-bottom:3px solid #f0f0f0}@media only screen and (max-width: 1536px){.toolbar-settings{display:flex}}@media only screen and (max-width: 992px){.toolbar-settings{display:block}}\n"] }]
|
|
5068
|
+
args: [{ selector: 'model-canvas', standalone: false, template: "<div *ngIf=\"!showModel\" class=\"message message-warning\">\n <div><span class=\"icon ph-info-fill\"></span> We've hidden the model visualization because your resolution is too low. Please try a larger device, like a tablet, laptop or desktop.</div>\n</div>\n\n<div class=\"wirebox model\" *ngIf=\"factors && showModel\">\n <div class=\"top\">\n <div class=\"toolbar\">\n <div class=\"toolbar-settings\">\n <div class=\"toolbar-setting\">\n <div class=\"toolbar-setting-title\">Selected Benchmark</div>\n <div class=\"toolbar-setting-label\">{{benchmark}}</div>\n </div>\n <div class=\"toolbar-setting\">\n <div class=\"toolbar-setting-title\">compare results to</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.none\">No comparison</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.delta && deltaType == 'PreviousSnapshot'\">Previous snapshot from {{deltaDateRange | dateRange}}</div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.delta && deltaType != 'PreviousSnapshot'\">Current period <span class=\"icon ph-info-fill\" [title]=\"'Current period ranges from ' + (dateRange | dateRange) + '. This includes weighed measurements from ' + pointCount + ' ' + pointType + ': ' + pointNames\"></span> with previous period <span class=\"icon ph-info-fill\" [title]=\"'Previous period ranges from ' + (deltaDateRange | dateRange) + '. This includes weighed measurements from ' + deltaTeams + ' ' + pointType + ': ' + deltaTeamNames\"></span></div>\n <div class=\"toolbar-setting-label\" *ngIf=\"qualifiedBy == QualifiedByEnum.benchmark\">Against benchmark</div>\n </div>\n <div class=\"toolbar-setting\" *ngIf=\"qualifiedBy != QualifiedByEnum.none\">\n <div class=\"toolbar-setting-title\">comparison legend</div>\n <div class=\"toolbar-setting-markers negative\">\n <ng-container *ngIf=\"qualifiedBy == 'Benchmark'\">\n <div class=\"toolbar-setting-marker negative\">\n <span class=\"marker\"></span>\n <span class=\"label\">lower</span>\n </div>\n <div class=\"toolbar-setting-marker positive\">\n <span class=\"marker\"></span>\n <span class=\"label\">higher</span>\n </div>\n </ng-container>\n <ng-container *ngIf=\"qualifiedBy == 'Delta'\">\n <div class=\"toolbar-setting-marker negative\">\n <span class=\"marker\"></span>\n <span class=\"label\">decreased</span>\n </div>\n <div class=\"toolbar-setting-marker positive\">\n <span class=\"marker\"></span>\n <span class=\"label\">improved</span>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"buttons\">\n <div class=\"button\" id=\"change-settings\" settingsDialog><span class=\"ph-faders icon\"></span> Settings</div>\n <div class=\"button\" id=\"export-factorscores\" exportFactorScoresDialog *ngIf=\"isLoggedIn\"><span class=\"ph-download-simple icon\"></span> Export</div>\n </div>\n </div>\n </div>\n <div class=\"content\">\n <div class=\"model-visualization\">\n <div class=\"model-clarification\">\n <span class=\"icon ph-info-fill\"></span>\n <span class=\"message-text\">This model shows how factors are connected based on scientific research. Click <span class=\"icon ph-plus-circle-bold plus\"></span> to expand or close lower-order factors. Click factors for more detail.</span>\n </div>\n\n <div *ngIf=\"!showModel || !showIndicatorArrows\" class=\"model-smallscreen\">\n <span class=\"icon ph-frame-corners-bold\"></span>\n <span class=\"message-text\">View on a larger device to see more details.</span>\n </div>\n\n <div class=\"model-viewconfiguration\">\n <div class=\"model-viewmode\">\n <div class=\"model-viewmode-label\">View</div>\n <div class=\"model-viewmode-option\" (click)=\"toggleView(false)\" [ngClass]=\"{'selected': !settings.user.modelFilter.advanced}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"!settings.user.modelFilter.advanced\"></span>Simple\n </div>\n <div class=\"model-viewmode-option selected\" (click)=\"toggleView(true)\" [ngClass]=\"{'selected': settings.user.modelFilter.advanced}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"settings.user.modelFilter.advanced\"></span>Advanced\n </div>\n </div>\n\n <div class=\"model-viewmode model-layers\">\n <div class=\"model-viewmode-label\">Source</div>\n\n <div class=\"model-viewmode-option\" *ngFor=\"let layer of settings.user.modelFilter.layers\" (click)=\"toggleLayer(layer)\" [ngClass]=\"{'selected': layer.selected}\">\n <span class=\"icon ph-check-fill\" *ngIf=\"layer.selected\"></span>{{layer.label}}\n </div>\n </div>\n\n <div class=\"model-warnings\" *ngIf=\"globalNotes.length > 0\" notesDialog [notes]=\"globalNotes\">\n <span class=\"ph-warning-fill icon\"></span>\n <span *ngIf=\"globalNotes.length == 1\">{{globalNotes.length}} warning</span>\n <span *ngIf=\"globalNotes.length > 1\">{{globalNotes.length}} warnings</span>\n </div>\n </div>\n\n <div class=\"model-frame\" [class]=\"'model-visualization-' + modelDefinition.publicKey\">\n <ng-container *ngFor=\"let factor of factors\">\n <model-factor-core [factor]=\"factor\" [expandPosition]=\"factor.indicatorPosition\" [allowExpand]=\"showIndicatorArrows\"></model-factor-core>\n </ng-container>\n </div>\n\n <ng-container *ngFor=\"let factor of factors\">\n <arrow [from]=\"'#factor-' + factor.publicKey\" [to]=\"'#factor-' + effect.to\" [onlyVisible]=\"true\" [tail]=\"true\" [head]=\"false\" [width]=\"2\" *ngFor=\"let effect of factor.effects\"></arrow>\n <ng-container *ngIf=\"showIndicatorArrows\">\n <ng-container *ngFor=\"let lowerFactor of factor.lower\">\n <arrow [from]=\"'#factor-' + lowerFactor.publicKey + '-anchor'\" [to]=\"'#factor-' + lowerEffect.to + '-expand'\" [onlyVisible]=\"true\" [tail]=\"false\" [head]=\"false\" [width]=\"1\" *ngFor=\"let lowerEffect of lowerFactor.effects\"></arrow>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <div class=\"model-attribution\">\n <span class=\"icon ph-info-fill\"></span>\n <span>\n <span [innerHtml]=\"modelDefinition.attribution\"></span>\n <span> See our <a href=\"https://github.com/theliberators/scrumteamsurvey.docs/wiki\" target=\"_blank\">wiki</a> for details and a FAQ.</span>\n </span>\n </div>\n </div>\n </div>\n\n <div class=\"bottom\" *ngIf=\"metrics.length > 0\">\n <h3>Process metrics <span class=\"badge badge-beta\">beta</span></h3>\n <div class=\"message message-information\"><span class=\"icon ph-info-fill\"></span><span>We are experimenting with process metrics from external services.</span></div>\n <div class=\"model-factor-metrics\">\n <model-factor-metric [metric]=\"metric\" *ngFor=\"let metric of metrics\"></model-factor-metric>\n </div>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}.content{border-bottom:3px solid #f0f0f0}@media only screen and (max-width: 1536px){.toolbar-settings{display:flex}}@media only screen and (max-width: 992px){.toolbar-settings{display:block}}\n"] }]
|
|
5033
5069
|
}], ctorParameters: () => [{ type: ViewModelStateBase, decorators: [{
|
|
5034
5070
|
type: Inject,
|
|
5035
5071
|
args: [VIEWSTATE_PROVIDER]
|
|
5036
|
-
}] }, { type: undefined, decorators: [{
|
|
5037
|
-
type: Inject,
|
|
5038
|
-
args: [VIEWSTATE_USERSETTINGS_STRATEGY]
|
|
5039
5072
|
}] }, { type: UserSettingService }, { type: i1.MatSnackBar }], propDecorators: { determineScreenSize: [{
|
|
5040
5073
|
type: HostListener,
|
|
5041
5074
|
args: ['window:resize', ['$event']]
|
|
@@ -6053,7 +6086,7 @@ class FactorsComponent extends ComponentWithViewStateBase {
|
|
|
6053
6086
|
this.populationSegments = data.factorScores.composition.segments;
|
|
6054
6087
|
this.benchmarkName = data.factorScores.benchmark.name;
|
|
6055
6088
|
this.globalNotes = data.factorScores.processingData.notes;
|
|
6056
|
-
this.factors = data.factorScores.modelStructure.definition.factors.filter(p => p.parentKey == null);
|
|
6089
|
+
this.factors = data.factorScores.modelStructure.definition.factors.filter(p => p.parentKey == null && p.core);
|
|
6057
6090
|
}
|
|
6058
6091
|
;
|
|
6059
6092
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: FactorsComponent, deps: [{ token: VIEWSTATE_PROVIDER }, { token: i1.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -6262,7 +6295,6 @@ class DialogModelFilterComponent extends ComponentWithViewStateBase {
|
|
|
6262
6295
|
this.userSettings.settings.user.modelKey = this.form.controls.activeModel.value.publicKey;
|
|
6263
6296
|
await this.userSettings.apply();
|
|
6264
6297
|
this.dialogRef.close();
|
|
6265
|
-
console.log(this.userSettings.settings.user.modelFilter);
|
|
6266
6298
|
}
|
|
6267
6299
|
createForm() {
|
|
6268
6300
|
this.form = this.formBuilder.group({
|
|
@@ -7204,29 +7236,36 @@ class WidgetFactorScoreComponent {
|
|
|
7204
7236
|
constructor() {
|
|
7205
7237
|
}
|
|
7206
7238
|
ngOnInit() {
|
|
7207
|
-
this.confidenceAvailable = this.factorScores.composition.points.count > 1;
|
|
7208
7239
|
this.score = this.factorScore.score;
|
|
7209
7240
|
this.benchmark = this.factorScore.benchmark;
|
|
7210
7241
|
this.benchmarkName = this.factorScores.benchmark.name;
|
|
7211
|
-
|
|
7212
|
-
|
|
7213
|
-
this.
|
|
7242
|
+
if (this.factorScore.type !== "Metric") {
|
|
7243
|
+
this.width = this.factorScore.score;
|
|
7244
|
+
this.confidenceAvailable = this.factorScores.composition.points.count > 1;
|
|
7245
|
+
this.factorScoreWidth = (this.factorScore.upperConfidence - this.factorScore.lowerConfidence);
|
|
7246
|
+
if (this.factorScoreWidth <= 10) {
|
|
7247
|
+
this.factorScoreWidth = 10;
|
|
7248
|
+
}
|
|
7249
|
+
;
|
|
7250
|
+
this.factorScoreLeft = this.factorScore.lowerConfidence - 4;
|
|
7251
|
+
if (this.factorScoreLeft >= 90) {
|
|
7252
|
+
this.factorScoreLeft = 90;
|
|
7253
|
+
}
|
|
7254
|
+
;
|
|
7214
7255
|
}
|
|
7215
|
-
|
|
7216
|
-
|
|
7217
|
-
|
|
7218
|
-
this.factorScoreLeft = 90;
|
|
7256
|
+
else {
|
|
7257
|
+
this.confidenceAvailable = false;
|
|
7258
|
+
this.width = 100;
|
|
7219
7259
|
}
|
|
7220
|
-
;
|
|
7221
7260
|
this.points = this.factorScore.points.filter(p => p.type == PointTypeEnum.team || p.type == PointTypeEnum.client);
|
|
7222
7261
|
this.direction = this.factorScore.qualification.toLowerCase();
|
|
7223
7262
|
}
|
|
7224
7263
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: WidgetFactorScoreComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
7225
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: WidgetFactorScoreComponent, isStandalone: false, selector: "widget-factorscore", inputs: { factorScore: "factorScore", factorScores: "factorScores", delta: "delta" }, ngImport: i0, template: "<div class=\"widget factorscore\">\n <div class=\"label\">\n {{factorScore.name}}\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n <div [class]=\"'progressbar progressbar-inverted progressbar-' + direction + ' progressbar-spread'\">\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-bar\" *ngIf=\"!confidenceAvailable\" [style]=\"'width: ' +
|
|
7264
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.0", type: WidgetFactorScoreComponent, isStandalone: false, selector: "widget-factorscore", inputs: { factorScore: "factorScore", factorScores: "factorScores", delta: "delta" }, ngImport: i0, template: "<div class=\"widget factorscore\">\n <div class=\"label\">\n {{factorScore.name}}\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n <div [class]=\"'progressbar progressbar-inverted progressbar-' + direction + ' progressbar-spread'\">\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-bar\" *ngIf=\"!confidenceAvailable\" [style]=\"'width: ' + width + '%'\"></div>\n <div class=\"progressbar-score\">{{factorScore.score > 0 ? factorScore.score : \"waiting for data\"}}</div>\n <div class=\"benchmark\" [style]=\"'left: ' + benchmark + '%'\" [matTooltip]=\"'Teams in benchmark \\'' + benchmarkName + '\\' score an average of ' + benchmark + ' points'\" *ngIf=\"benchmark != 0\"></div>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4$1.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: DeltaArrowComponent, selector: "delta-arrow", inputs: ["factorScore", "delta", "noDataIndicator"] }] }); }
|
|
7226
7265
|
}
|
|
7227
7266
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: WidgetFactorScoreComponent, decorators: [{
|
|
7228
7267
|
type: Component,
|
|
7229
|
-
args: [{ selector: 'widget-factorscore', standalone: false, template: "<div class=\"widget factorscore\">\n <div class=\"label\">\n {{factorScore.name}}\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n <div [class]=\"'progressbar progressbar-inverted progressbar-' + direction + ' progressbar-spread'\">\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-bar\" *ngIf=\"!confidenceAvailable\" [style]=\"'width: ' +
|
|
7268
|
+
args: [{ selector: 'widget-factorscore', standalone: false, template: "<div class=\"widget factorscore\">\n <div class=\"label\">\n {{factorScore.name}}\n <delta-arrow [factorScore]=\"factorScore\" [delta]=\"delta\"></delta-arrow>\n </div>\n <div [class]=\"'progressbar progressbar-inverted progressbar-' + direction + ' progressbar-spread'\">\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-confidence\" *ngIf=\"confidenceAvailable && factorScore.score > 0\" [matTooltip]=\"'Most teams in your organization fall in this range (25-75% percentile)'\" [style]=\"'left: ' + factorScoreLeft + '%; width: ' + factorScoreWidth + '%'\"></div>\n <div class=\"progressbar-bar\" *ngIf=\"!confidenceAvailable\" [style]=\"'width: ' + width + '%'\"></div>\n <div class=\"progressbar-score\">{{factorScore.score > 0 ? factorScore.score : \"waiting for data\"}}</div>\n <div class=\"benchmark\" [style]=\"'left: ' + benchmark + '%'\" [matTooltip]=\"'Teams in benchmark \\'' + benchmarkName + '\\' score an average of ' + benchmark + ' points'\" *ngIf=\"benchmark != 0\"></div>\n </div>\n</div>\n", styles: [".smallTextUppercase{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%}.bigletteredbutton{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;text-decoration:none;background:#ffffff1a;margin-bottom:10px;display:flex;align-content:center;border-radius:20px;padding:15px;font-size:24px;border:2px solid #1F3F8F;border-bottom:6px solid #1F3F8F;color:#fff;align-items:center;cursor:pointer}.bigletteredbutton .free{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff73f;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton .plan{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;background:#fff;color:#2f2f2f;padding:3px 5px;margin-left:20px;border-radius:10px}.bigletteredbutton:hover,.bigletteredbutton.selected{border:2px solid #fff73f;border-bottom:6px solid #fff73f}.bigletteredbutton .button-letter{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f;margin-right:20px}.bigletteredbutton .button-letter .ph{color:#1f3f8f}.bigletteredbutton .button-letter:hover{background:#1f3f8f;color:#fff73f}.bigletteredbutton .button-letter:hover .ph{color:#fff73f}.roundicon-yellow{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;background:#fff73f;color:#1f3f8f}.roundicon-yellow .ph{color:#1f3f8f}.roundicon-yellow:hover{background:#1f3f8f;color:#fff73f}.roundicon-yellow:hover .ph{color:#fff73f}.roundicon{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;border-radius:30px;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center}.roundicon-large{-webkit-transition:all .25s ease-in-out;-moz-transition:all .25s ease-in-out;-o-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-family:StevieSans,sans-serif;height:52px;width:52px;min-width:52px;min-height:52px;font-weight:900;font-size:30px;line-height:100%;display:flex;align-items:center;justify-content:center;border-radius:60px;height:120px;width:120px}\n"] }]
|
|
7230
7269
|
}], ctorParameters: () => [], propDecorators: { factorScore: [{
|
|
7231
7270
|
type: Input
|
|
7232
7271
|
}], factorScores: [{
|
|
@@ -7788,6 +7827,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
|
7788
7827
|
class ModelVisualizationModule {
|
|
7789
7828
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.0", ngImport: i0, type: ModelVisualizationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
7790
7829
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.0", ngImport: i0, type: ModelVisualizationModule, declarations: [ModelCanvasComponent,
|
|
7830
|
+
ModelFactorMetricComponent,
|
|
7791
7831
|
ModelFactorIndicatorComponent,
|
|
7792
7832
|
ModelFactorCoreComponent,
|
|
7793
7833
|
ModelFactorBenchmarkComponent], imports: [CommonModule,
|
|
@@ -7800,6 +7840,7 @@ class ModelVisualizationModule {
|
|
|
7800
7840
|
MatFormFieldModule,
|
|
7801
7841
|
ReactiveFormsModule,
|
|
7802
7842
|
DateRangePipeModule], exports: [ModelCanvasComponent,
|
|
7843
|
+
ModelFactorMetricComponent,
|
|
7803
7844
|
ModelFactorIndicatorComponent,
|
|
7804
7845
|
ModelFactorCoreComponent,
|
|
7805
7846
|
ModelFactorBenchmarkComponent] }); }
|
|
@@ -7831,12 +7872,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.0", ngImpor
|
|
|
7831
7872
|
],
|
|
7832
7873
|
declarations: [
|
|
7833
7874
|
ModelCanvasComponent,
|
|
7875
|
+
ModelFactorMetricComponent,
|
|
7834
7876
|
ModelFactorIndicatorComponent,
|
|
7835
7877
|
ModelFactorCoreComponent,
|
|
7836
7878
|
ModelFactorBenchmarkComponent
|
|
7837
7879
|
],
|
|
7838
7880
|
exports: [
|
|
7839
7881
|
ModelCanvasComponent,
|
|
7882
|
+
ModelFactorMetricComponent,
|
|
7840
7883
|
ModelFactorIndicatorComponent,
|
|
7841
7884
|
ModelFactorCoreComponent,
|
|
7842
7885
|
ModelFactorBenchmarkComponent
|
|
@@ -8735,5 +8778,5 @@ const ViewModelStateConfigToken = new InjectionToken('viewmodelstate-angular.con
|
|
|
8735
8778
|
* Generated bundle index. Do not edit.
|
|
8736
8779
|
*/
|
|
8737
8780
|
|
|
8738
|
-
export { AactionConfigToken, AccountService, ActionClientConfig, ActionCollectionDto, ActionConfigDto, ActionDto, ActionListComponent, ActionListFilter, ActionManageComponent, ActionOptionDto, ActionOptionsDto, ActionPrefillDto, ActionService, ActionTeamDto, ActionTileComponent, ActionsModule, AgeIndicatorComponent, AlertAnnouncementComponent, AlertClientConfig, AlertConfigDto, AlertConfigToken, AlertDto, AlertFilterDto, AlertResponseDto, AlertService, AlertsComponent, AlertsModule, ApiConfig, ApiConfigDto, ApiConfigToken, ApiErrorDto, ArrowComponent, ArrowUpdateService, BackButtonDirective, BackButtonDirectiveModule, BadgeCollectionDto, BadgeComponent, BadgeDto, BadgeProgressionComponent, BadgeStreakComponent, BadgeTypeEnum, BadgesComponent, BenchmarkIndicatorComponent, BenchmarkOptionDto, BenchmarkTypeEnum, BrandBackgroundDirective, BrandConditionalBackgroundColorDirective, BrandConditionalColorDirective, BrandHoverColorDirective, BrandingModule, BrandingProvider, BrandingSettingsDto, CallbackPipe, CallbackPipeModule, ChannelDefaultBrandingDto, ChannelDto, CheckboxComponent, CheckboxModule, ClickableTooltipDirective, ClientInfoDto, ComponentBase, ComponentWithViewStateBase, ContactService, ContentBrandingDto, ContextItemDto, ContextTypes, DIALOG_GUIDES_TOKEN, DIALOG_GUIDE_TOKEN, DateRangeDto, DateRangePipe, DateRangePipeModule, DefinitionDto, DeltaArrowComponent, DeltaPeriodEnum, DialogAccountComponent, DialogAccountModule, DialogActionFiltersComponent, DialogActionManageComponent, DialogAlertsComponent, DialogExportActionsComponent, DialogExportFactorScoresComponent, DialogExportTeamListComponent, DialogFactorInformationComponent, DialogGuideComponent, DialogGuidesComponent, DialogModelFilterComponent, DialogNotesComponent, DialogResourceDownloadComponent, DialogSettingsComponent, DialogSubscribeComponent, DialogSubscribeModule, DialogSupportComponent, DialogSupportModule, DialogTeamFilterComponent, DimensionResultDto, DismissAlertRequestDto, DismissPopupService, DismissedAlertsService, DoItYourselfComponent, DoItYourselfWorkshopsComponent, EffectDto, EffectTypeEnum, ErrorConfigToken, ErrorDetailDto, ErrorDto, ErrorServiceConfig, ErrorServiceConfigDto, ErrorServiceModule, ExpandComponent, ExpandItemDto, ExpandModule, ExportActionsRequestDto, ExportFactorScoresRequestDto, ExportTeamListRequestDto, FactorAxisComponent, FactorEffectDto, FactorInformationDialogModule, FactorRecommendationDto, FactorScoreCollectionBenchmarkDto, FactorScoreCollectionCompositionDto, FactorScoreCollectionCompositionSegmentDto, FactorScoreCollectionDeltaDto, FactorScoreCollectionDto, FactorScoreCollectionFiltersDto, FactorScoreCompositionPointDto, FactorScoreCompositionPointsDto, FactorScoreDto, FactorService, FactorStructureConstraintDto, FactorStructureDto, FactorStructureSegmentDto, FactorsComponent, FeedbackQuickTipDto, FeedbackResourceDto, FilterTagsComponent, FocusAreasComponent, FooterComponent, FrontAndBackendErrorHandler, GUIDESTATE_PROVIDER, GuardsModule, GuideCollectionDto, GuideConfigDto, GuideDto, GuideMediaTypeEnum, GuidePopupService, GuideSettingsDto, GuideStateDto, GuideStateInBackEndService, GuideStateInBrowserService, GuideStepDto, GuideStepMediaDto, GuidesClientConfig, GuidesConfigToken, GuidesModule, ImageSliderComponent, ImpactIndicatorComponent, IncludeActionsModeEnum, InterventionFilterType, InterventionOwnerEnum, InterventionOwnerToStringPipe, InterventionSortEnum, InterventionStateEnum, InterventionStateToStringPipe, InterventionSummaryDto, InterventionTypeEnum, InterventionTypeToStringPipe, InviteUrlDto, KeyValueDto, LegalDocumentDto, LegalDto, LimitationsApplyComponent, LoadModes, LoadingComponent, LoadingModule, LocalUserDto, LoggingSeverityEnum, MatTagsComponent, MatTagsModule, MeasurementDto, MetaDataInputComponent, MetadataInputModule, ModelCanvasComponent, ModelComponent, ModelDefinitionDto, ModelDemoUrlDto, ModelFactorBenchmarkComponent, ModelFactorBreakdownComponent, ModelFactorComponent, ModelFactorCoreComponent, ModelFactorIndicatorComponent, ModelFilter, ModelStructureDto, ModelSummaryDto, ModelSwitcherComponent, ModelVisualizationLayer, ModelVisualizationModule, MultiEmailInputComponent, MultiEmailInputModule, NavButtonComponent, NavigationUrlDto, NavigationUrlTypeEnum, NgAddToCalendarModule, NoReloadStrategy, OpenAccountDialogDirective, OpenActionFiltersDialogDirective, OpenAddActionDialogDirective, OpenAlertsDialogDirective, OpenContactSalesDialog, OpenEditActionDialogDirective, OpenExportActionsDialogDirective, OpenExportFactorScoresDialogDirective, OpenExportTeamListDialogDirective, OpenFactorInformationDialogDirective, OpenFeedbackDialogDirective, OpenGuideDialogDirective, OpenGuidesDialogDirective, OpenLookingForHelpDialog, OpenModelFilterDialog, OpenNotesDialogDirective, OpenReportBugDialogDirective, OpenResourceDownloadDialogDirective, OpenSettingsDialogDirective, OpenSubscribeDialogDirective, OpenSupportDialogDirective, OpenTeamFilterDialogDirective, PaginatedResponse, PaginatorComponent, PaginatorModule, PagingOptions, PaletteItem, ParticipantDto, ParticipantsComponent, ParticipationRateDto, PointDto, PointTypeEnum, ProcessingDataDto, ProgressbarComponent, ProgressbarModule, QualificationEnum, QualifiedByEnum, QuantitySelectorComponent, QuantitySelectorModule, QuestionnaireTypeDto, QuickTipsComponent, RecommendationComponent, RecommendationsComponent, ReloadOnPushStrategy, ResearchComponent, ResetPasswordRequestDto, ResourceDownloadModule, ResourceDownloadRedirectUrlDto, ResourceDownloadService, ResultIndicatorComponent, ResultsClientConfig, ResultsClientDto, ResultsConfigToken, ResultsModule, ResumeGuideHoverComponent, RoadmapComponent, SegmentEnum, SegmentNamePipe, SegmentNamePipeModule, SelectItem, SelectListComponent, SelectListItem, SelectListItemApiDto, SelectListModule, SessionIdInterceptor, SessionIdProvider, SiteDefaultFooterComponent, SiteDefaultHeaderComponent, SiteMicroFooterComponent, SlugifyPipe, SlugifyPipeModule, SnapshotDto, SnapshotInviteUrlsComponent, SnapshotInviteUrlsModule, SnapshotMetaDataDto, StartGuideDirective, SubscriptionTierEnum, TabItemDto, TabNavigatorComponent, TabNavigatorModule, TeamDto, TeamEffectivenessComponent, TeamFlagMatchDto, TeamListFilter, TeamListResponseDto, TeamMetaDataDto, TeamNameAndKeyDto, TeamNotificationSettingsDto, TeamSortEnum, TeamStatusEnum, TeamTraitDto, TermsService, TermsUpdatedComponent, TipBadgeComponent, TopicSelectorComponent, TopicSelectorDto, TopicSelectorModule, TrendDataRequestDto, TrendDataSetDto, TrendService, TrendsComponent, TruncatePipe, TruncatePipeModule, TryNowProfessionalComponent, UpdateInProgressComponent, UserGlobalSettingsDto, UserInfoDto, UserListFilter, UserListResponseDto, UserNameAndKeyDto, UserProfileComponent, UserProfileDto, UserProfileService, UserSettingService, UserSettingsDto, UserSpecificSettingsDto, VIEWSTATE_LOAD_STRATEGY, VIEWSTATE_PROVIDER, VIEWSTATE_RELOAD_STRATEGY, VIEWSTATE_USERSETTINGS_STRATEGY, ValidChangeTokenGuard, ValidKeyGuard, ValidKeySnapshotKeyGuard, ValidKeyTeamKeyGuard, VariableDto, VideoComponent, ViewModelStateBase, ViewModelStateConfig, ViewModelStateConfigDto, ViewModelStateConfigToken, ViewModelStateModule, WidgetFactorScoreComponent, WidgetParticipationRateComponent, compareInputValidator, domainValidator, maxSelectedValidator, minTopicsSelectedValidator, presetCheckValidator };
|
|
8781
|
+
export { AactionConfigToken, AccountService, ActionClientConfig, ActionCollectionDto, ActionConfigDto, ActionDto, ActionListComponent, ActionListFilter, ActionManageComponent, ActionOptionDto, ActionOptionsDto, ActionPrefillDto, ActionService, ActionTeamDto, ActionTileComponent, ActionsModule, AgeIndicatorComponent, AlertAnnouncementComponent, AlertClientConfig, AlertConfigDto, AlertConfigToken, AlertDto, AlertFilterDto, AlertResponseDto, AlertService, AlertsComponent, AlertsModule, ApiConfig, ApiConfigDto, ApiConfigToken, ApiErrorDto, ArrowComponent, ArrowUpdateService, BackButtonDirective, BackButtonDirectiveModule, BadgeCollectionDto, BadgeComponent, BadgeDto, BadgeProgressionComponent, BadgeStreakComponent, BadgeTypeEnum, BadgesComponent, BenchmarkIndicatorComponent, BenchmarkOptionDto, BenchmarkTypeEnum, BrandBackgroundDirective, BrandConditionalBackgroundColorDirective, BrandConditionalColorDirective, BrandHoverColorDirective, BrandingModule, BrandingProvider, BrandingSettingsDto, CallbackPipe, CallbackPipeModule, ChannelDefaultBrandingDto, ChannelDto, CheckboxComponent, CheckboxModule, ClickableTooltipDirective, ClientInfoDto, ComponentBase, ComponentWithViewStateBase, ContactService, ContentBrandingDto, ContextItemDto, ContextTypes, DIALOG_GUIDES_TOKEN, DIALOG_GUIDE_TOKEN, DateRangeDto, DateRangePipe, DateRangePipeModule, DefinitionDto, DeltaArrowComponent, DeltaPeriodEnum, DialogAccountComponent, DialogAccountModule, DialogActionFiltersComponent, DialogActionManageComponent, DialogAlertsComponent, DialogExportActionsComponent, DialogExportFactorScoresComponent, DialogExportTeamListComponent, DialogFactorInformationComponent, DialogGuideComponent, DialogGuidesComponent, DialogModelFilterComponent, DialogNotesComponent, DialogResourceDownloadComponent, DialogSettingsComponent, DialogSubscribeComponent, DialogSubscribeModule, DialogSupportComponent, DialogSupportModule, DialogTeamFilterComponent, DimensionResultDto, DismissAlertRequestDto, DismissPopupService, DismissedAlertsService, DoItYourselfComponent, DoItYourselfWorkshopsComponent, EffectDto, EffectTypeEnum, ErrorConfigToken, ErrorDetailDto, ErrorDto, ErrorServiceConfig, ErrorServiceConfigDto, ErrorServiceModule, ExpandComponent, ExpandItemDto, ExpandModule, ExportActionsRequestDto, ExportFactorScoresRequestDto, ExportTeamListRequestDto, FactorAxisComponent, FactorEffectDto, FactorInformationDialogModule, FactorRecommendationDto, FactorScoreCollectionBenchmarkDto, FactorScoreCollectionCompositionDto, FactorScoreCollectionCompositionSegmentDto, FactorScoreCollectionDeltaDto, FactorScoreCollectionDto, FactorScoreCollectionFiltersDto, FactorScoreCompositionPointDto, FactorScoreCompositionPointsDto, FactorScoreDto, FactorService, FactorStructureConstraintDto, FactorStructureDto, FactorStructureSegmentDto, FactorsComponent, FeedbackQuickTipDto, FeedbackResourceDto, FilterTagsComponent, FocusAreasComponent, FooterComponent, FrontAndBackendErrorHandler, GUIDESTATE_PROVIDER, GuardsModule, GuideCollectionDto, GuideConfigDto, GuideDto, GuideMediaTypeEnum, GuidePopupService, GuideSettingsDto, GuideStateDto, GuideStateInBackEndService, GuideStateInBrowserService, GuideStepDto, GuideStepMediaDto, GuidesClientConfig, GuidesConfigToken, GuidesModule, ImageSliderComponent, ImpactIndicatorComponent, IncludeActionsModeEnum, InterventionFilterType, InterventionOwnerEnum, InterventionOwnerToStringPipe, InterventionSortEnum, InterventionStateEnum, InterventionStateToStringPipe, InterventionSummaryDto, InterventionTypeEnum, InterventionTypeToStringPipe, InviteUrlDto, KeyValueDto, LegalDocumentDto, LegalDto, LimitationsApplyComponent, LoadModes, LoadingComponent, LoadingModule, LocalUserDto, LoggingSeverityEnum, MatTagsComponent, MatTagsModule, MeasurementDto, MetaDataInputComponent, MetadataInputModule, ModelCanvasComponent, ModelComponent, ModelDefinitionDto, ModelDemoUrlDto, ModelFactorBenchmarkComponent, ModelFactorBreakdownComponent, ModelFactorComponent, ModelFactorCoreComponent, ModelFactorIndicatorComponent, ModelFactorMetricComponent, ModelFilter, ModelStructureDto, ModelSummaryDto, ModelSwitcherComponent, ModelVisualizationLayer, ModelVisualizationModule, MultiEmailInputComponent, MultiEmailInputModule, NavButtonComponent, NavigationUrlDto, NavigationUrlTypeEnum, NgAddToCalendarModule, NoReloadStrategy, OpenAccountDialogDirective, OpenActionFiltersDialogDirective, OpenAddActionDialogDirective, OpenAlertsDialogDirective, OpenContactSalesDialog, OpenEditActionDialogDirective, OpenExportActionsDialogDirective, OpenExportFactorScoresDialogDirective, OpenExportTeamListDialogDirective, OpenFactorInformationDialogDirective, OpenFeedbackDialogDirective, OpenGuideDialogDirective, OpenGuidesDialogDirective, OpenLookingForHelpDialog, OpenModelFilterDialog, OpenNotesDialogDirective, OpenReportBugDialogDirective, OpenResourceDownloadDialogDirective, OpenSettingsDialogDirective, OpenSubscribeDialogDirective, OpenSupportDialogDirective, OpenTeamFilterDialogDirective, PaginatedResponse, PaginatorComponent, PaginatorModule, PagingOptions, PaletteItem, ParticipantDto, ParticipantsComponent, ParticipationRateDto, PointDto, PointTypeEnum, ProcessingDataDto, ProgressbarComponent, ProgressbarModule, QualificationEnum, QualifiedByEnum, QuantitySelectorComponent, QuantitySelectorModule, QuestionnaireTypeDto, QuickTipsComponent, RecommendationComponent, RecommendationsComponent, ReloadOnPushStrategy, ResearchComponent, ResetPasswordRequestDto, ResourceDownloadModule, ResourceDownloadRedirectUrlDto, ResourceDownloadService, ResultIndicatorComponent, ResultsClientConfig, ResultsClientDto, ResultsConfigToken, ResultsModule, ResumeGuideHoverComponent, RoadmapComponent, SegmentEnum, SegmentNamePipe, SegmentNamePipeModule, SelectItem, SelectListComponent, SelectListItem, SelectListItemApiDto, SelectListModule, SessionIdInterceptor, SessionIdProvider, SiteDefaultFooterComponent, SiteDefaultHeaderComponent, SiteMicroFooterComponent, SlugifyPipe, SlugifyPipeModule, SnapshotDto, SnapshotInviteUrlsComponent, SnapshotInviteUrlsModule, SnapshotMetaDataDto, StartGuideDirective, SubscriptionTierEnum, TabItemDto, TabNavigatorComponent, TabNavigatorModule, TeamDto, TeamEffectivenessComponent, TeamFlagMatchDto, TeamListFilter, TeamListResponseDto, TeamMetaDataDto, TeamNameAndKeyDto, TeamNotificationSettingsDto, TeamSortEnum, TeamStatusEnum, TeamTraitDto, TermsService, TermsUpdatedComponent, TipBadgeComponent, TopicSelectorComponent, TopicSelectorDto, TopicSelectorModule, TrendDataRequestDto, TrendDataSetDto, TrendService, TrendsComponent, TruncatePipe, TruncatePipeModule, TryNowProfessionalComponent, UpdateInProgressComponent, UserGlobalSettingsDto, UserInfoDto, UserListFilter, UserListResponseDto, UserNameAndKeyDto, UserProfileComponent, UserProfileDto, UserProfileService, UserSettingService, UserSettingsDto, UserSpecificSettingsDto, VIEWSTATE_LOAD_STRATEGY, VIEWSTATE_PROVIDER, VIEWSTATE_RELOAD_STRATEGY, VIEWSTATE_USERSETTINGS_STRATEGY, ValidChangeTokenGuard, ValidKeyGuard, ValidKeySnapshotKeyGuard, ValidKeyTeamKeyGuard, VariableDto, VideoComponent, ViewModelStateBase, ViewModelStateConfig, ViewModelStateConfigDto, ViewModelStateConfigToken, ViewModelStateModule, WidgetFactorScoreComponent, WidgetParticipationRateComponent, compareInputValidator, domainValidator, maxSelectedValidator, minTopicsSelectedValidator, presetCheckValidator };
|
|
8739
8782
|
//# sourceMappingURL=the-liberators-ngx-scrumteamsurvey-tools.mjs.map
|