@the-liberators/ngx-scrumteamsurvey-tools 2.3.15 → 2.3.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/topicselector/customCheckValidator.mjs +15 -0
- package/esm2022/lib/components/topicselector/topic-selector.component.mjs +28 -13
- package/esm2022/public-api.mjs +2 -3
- package/fesm2022/the-liberators-ngx-scrumteamsurvey-tools.mjs +272 -422
- package/fesm2022/the-liberators-ngx-scrumteamsurvey-tools.mjs.map +1 -1
- package/lib/components/topicselector/customCheckValidator.d.ts +2 -0
- package/lib/components/topicselector/topic-selector.component.d.ts +3 -2
- package/package.json +1 -1
- package/public-api.d.ts +1 -2
- package/esm2022/lib/components/scale-selector/scale-selector.component.mjs +0 -150
- package/esm2022/lib/components/scale-selector/scale-selector.module.mjs +0 -54
- package/esm2022/lib/components/scale-selector/scaleSelectorFilterDto.mjs +0 -3
- package/lib/components/scale-selector/scale-selector.component.d.ts +0 -39
- package/lib/components/scale-selector/scale-selector.module.d.ts +0 -15
- package/lib/components/scale-selector/scaleSelectorFilterDto.d.ts +0 -3
|
@@ -23,12 +23,13 @@ export declare class TopicSelectorComponent implements ControlValueAccessor {
|
|
|
23
23
|
SegmentEnum: typeof SegmentEnum;
|
|
24
24
|
constructor(formBuilder: FormBuilder, dialog: MatDialog);
|
|
25
25
|
ngOnInit(): void;
|
|
26
|
-
|
|
27
|
-
setDisabledState?(isDisabled: boolean): void;
|
|
26
|
+
toggleTopic(): void;
|
|
28
27
|
registerOnChange(fn: any): void;
|
|
29
28
|
registerOnTouched(fn: any): void;
|
|
30
29
|
onChange: any;
|
|
31
30
|
onTouch: any;
|
|
31
|
+
writeValue(dto: TopicSelectorDto): void;
|
|
32
|
+
setDisabledState?(isDisabled: boolean): void;
|
|
32
33
|
selectPreset(): void;
|
|
33
34
|
getValue(): TopicSelectorDto;
|
|
34
35
|
openFactorInformation(topicKey: string, $event: Event): void;
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -59,8 +59,6 @@ export * from './lib/components/mat-tags/mat-tags.component';
|
|
|
59
59
|
export * from './lib/components/mat-tags/mat-tags.module';
|
|
60
60
|
export * from './lib/components/paginator/paginator.component';
|
|
61
61
|
export * from './lib/components/paginator/paginator.module';
|
|
62
|
-
export * from './lib/components/scale-selector/scale-selector.component';
|
|
63
|
-
export * from './lib/components/scale-selector/scale-selector.module';
|
|
64
62
|
export * from './lib/components/select-list/select-list.component';
|
|
65
63
|
export * from './lib/components/select-list/select-list.module';
|
|
66
64
|
export * from './lib/components/snapshot-inviteurls/snapshot-inviteurls.component';
|
|
@@ -74,6 +72,7 @@ export * from './lib/components/tabnavigator/tabnavigator.module';
|
|
|
74
72
|
export * from './lib/components/multi-email-input/multi-email-input.component';
|
|
75
73
|
export * from './lib/components/multi-email-input/multi-email-input.module';
|
|
76
74
|
export * from './lib/components/multi-email-input/multi-email-input.component';
|
|
75
|
+
export * from './lib/components/topicselector/customCheckValidator';
|
|
77
76
|
export * from './lib/components/topicselector/minTopicsSelectedValidator';
|
|
78
77
|
export * from './lib/components/topicselector/topic-selector.component';
|
|
79
78
|
export * from './lib/components/topicselector/topic-selector.module';
|
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output, forwardRef } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import { SegmentEnum } from '../../models/modelStructureDto';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/forms";
|
|
6
|
-
import * as i2 from "@angular/material/form-field";
|
|
7
|
-
import * as i3 from "@angular/common";
|
|
8
|
-
import * as i4 from "@angular/material/select";
|
|
9
|
-
import * as i5 from "@angular/material/core";
|
|
10
|
-
import * as i6 from "@angular/material/tooltip";
|
|
11
|
-
import * as i7 from "../../dialogs/dialog-factorinformation/dialog-factorinformation.component";
|
|
12
|
-
import * as i8 from "../../pipes/segmentName/segmentName.pipe";
|
|
13
|
-
import * as i9 from "../../pipes/callback/callback.pipe";
|
|
14
|
-
export class ScaleSelectorComponent {
|
|
15
|
-
constructor() {
|
|
16
|
-
this.questionnaireAccuracy = 0;
|
|
17
|
-
this.questionsTeamMembers = 0;
|
|
18
|
-
this.questionsStakeholders = 0;
|
|
19
|
-
this.questionsSupporters = 0;
|
|
20
|
-
this.durationTeamMembers = 0;
|
|
21
|
-
this.durationStakeholders = 0;
|
|
22
|
-
this.durationSupporters = 0;
|
|
23
|
-
this.questionsTotal = 0;
|
|
24
|
-
this.SegmentEnum = SegmentEnum;
|
|
25
|
-
this.warnings = [];
|
|
26
|
-
this.disabled = false;
|
|
27
|
-
this.onCheckChange = new EventEmitter();
|
|
28
|
-
this.scaleKeys = [];
|
|
29
|
-
this.topScales = [];
|
|
30
|
-
this.onChange = (scaleKeys) => { };
|
|
31
|
-
this.onTouched = () => { };
|
|
32
|
-
}
|
|
33
|
-
ngOnInit() {
|
|
34
|
-
this.topScales = this.getChildFactors(null);
|
|
35
|
-
}
|
|
36
|
-
writeValue(scaleKeys) {
|
|
37
|
-
this.scaleKeys = scaleKeys ?? [];
|
|
38
|
-
this.updateMetaData();
|
|
39
|
-
}
|
|
40
|
-
registerOnChange(fn) {
|
|
41
|
-
this.onChange = fn;
|
|
42
|
-
}
|
|
43
|
-
registerOnTouched(fn) {
|
|
44
|
-
this.onTouched = fn;
|
|
45
|
-
}
|
|
46
|
-
setDisabledState(isDisabled) {
|
|
47
|
-
this.disabled = isDisabled;
|
|
48
|
-
}
|
|
49
|
-
filterSegmentWithQuestions(segment) {
|
|
50
|
-
return segment.questionCount > 0;
|
|
51
|
-
}
|
|
52
|
-
getChildFactors(parentKey) {
|
|
53
|
-
var factors = this.scales
|
|
54
|
-
.filter(p => p.parentKey == parentKey);
|
|
55
|
-
if (this.filter != null) {
|
|
56
|
-
if (this.filter.teamType != null) {
|
|
57
|
-
factors = factors.filter(p => p.constraints.forTeamTypes.includes(this.filter.teamType));
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
return factors;
|
|
61
|
-
}
|
|
62
|
-
updateMetaData() {
|
|
63
|
-
this.warnings = [];
|
|
64
|
-
// only work with lower-level factors, as higher-level contain aggregated higher-level question counts
|
|
65
|
-
var scalesToInclude = this.scales.filter(p => p.parentKey != null && this.scaleKeys.includes(p.publicKey));
|
|
66
|
-
var totalQuestions = this.scales.filter(p => p.parentKey != null).reduce((sum, current) => sum += current.questionCount, 0);
|
|
67
|
-
this.questionsTotal = scalesToInclude.reduce((sum, current) => sum += current.questionCount, 0);
|
|
68
|
-
this.questionsTeamMembers = scalesToInclude.flatMap(p => p.segments).filter(p => p.segment == SegmentEnum.TeamMember).reduce((sum, current) => sum += current.questionCount, 0);
|
|
69
|
-
this.questionsStakeholders = scalesToInclude.flatMap(p => p.segments).filter(p => p.segment == SegmentEnum.Stakeholder).reduce((sum, current) => sum += current.questionCount, 0);
|
|
70
|
-
this.questionsSupporters = scalesToInclude.flatMap(p => p.segments).filter(p => p.segment == SegmentEnum.Management).reduce((sum, current) => sum += current.questionCount, 0);
|
|
71
|
-
this.durationTeamMembers = scalesToInclude.flatMap(p => p.segments).filter(p => p.segment == SegmentEnum.TeamMember).reduce((sum, current) => sum += current.durationInSeconds, 0) / 60;
|
|
72
|
-
this.durationStakeholders = scalesToInclude.flatMap(p => p.segments).filter(p => p.segment == SegmentEnum.Stakeholder).reduce((sum, current) => sum += current.durationInSeconds, 0) / 60;
|
|
73
|
-
this.durationSupporters = scalesToInclude.flatMap(p => p.segments).filter(p => p.segment == SegmentEnum.Management).reduce((sum, current) => sum += current.durationInSeconds, 0) / 60;
|
|
74
|
-
if (this.durationTeamMembers < 1) {
|
|
75
|
-
this.durationTeamMembers = 1;
|
|
76
|
-
}
|
|
77
|
-
if (this.durationStakeholders < 1) {
|
|
78
|
-
this.durationStakeholders = 1;
|
|
79
|
-
}
|
|
80
|
-
if (this.durationSupporters < 1) {
|
|
81
|
-
this.durationSupporters = 1;
|
|
82
|
-
}
|
|
83
|
-
if (this.questionsStakeholders == 0) {
|
|
84
|
-
this.warnings.push("The selection does not include topics for 'Stakeholders'.");
|
|
85
|
-
}
|
|
86
|
-
if (this.questionsSupporters == 0) {
|
|
87
|
-
this.warnings.push("The selection does not include topics for 'Supporters'.");
|
|
88
|
-
}
|
|
89
|
-
if (this.questionsTeamMembers == 0) {
|
|
90
|
-
this.warnings.push("The selection does not include topics for 'Team Members'.");
|
|
91
|
-
}
|
|
92
|
-
if (this.questionnaireAccuracy < 0.25) {
|
|
93
|
-
this.warnings.push("The selection measures few factors, so its accuracy is low.");
|
|
94
|
-
}
|
|
95
|
-
this.questionnaireAccuracy = this.questionsTotal / totalQuestions;
|
|
96
|
-
}
|
|
97
|
-
emitScaleKeys() {
|
|
98
|
-
this.onChange(this.scaleKeys);
|
|
99
|
-
this.updateMetaData();
|
|
100
|
-
}
|
|
101
|
-
toggleChildren(scale) {
|
|
102
|
-
var checked = this.scaleKeys.find(p => p == scale.publicKey) != null;
|
|
103
|
-
var children = this.getChildFactors(scale.publicKey);
|
|
104
|
-
if (checked) {
|
|
105
|
-
var scalesToAdd = children.filter(p => !this.scaleKeys.includes(p.publicKey)).map(p => p.publicKey);
|
|
106
|
-
this.scaleKeys = this.scaleKeys.concat(scalesToAdd);
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
var scalesToRemove = children.map(p => p.publicKey);
|
|
110
|
-
this.scaleKeys = this.scaleKeys.filter(p => !scalesToRemove.includes(p));
|
|
111
|
-
}
|
|
112
|
-
this.emitScaleKeys();
|
|
113
|
-
}
|
|
114
|
-
toggleParent(scale) {
|
|
115
|
-
var checked = this.scaleKeys.find(p => p == scale.publicKey) != null;
|
|
116
|
-
var parent = this.scales.find(p => p.publicKey == scale.parentKey);
|
|
117
|
-
var siblings = this.getChildFactors(parent.publicKey);
|
|
118
|
-
if (checked) {
|
|
119
|
-
var allLowerChecked = siblings.filter(p => !this.scaleKeys.includes(p.publicKey)).length == 0;
|
|
120
|
-
if (allLowerChecked) {
|
|
121
|
-
this.scaleKeys = this.scaleKeys.concat(parent.publicKey);
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
else {
|
|
125
|
-
this.scaleKeys = this.scaleKeys.filter(p => p != parent.publicKey);
|
|
126
|
-
}
|
|
127
|
-
this.emitScaleKeys();
|
|
128
|
-
}
|
|
129
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScaleSelectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
130
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: ScaleSelectorComponent, selector: "scale-selector", inputs: { scales: "scales", filter: "filter", disabled: "disabled", scaleKeys: "scaleKeys" }, outputs: { onCheckChange: "onCheckChange" }, providers: [
|
|
131
|
-
{ provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => ScaleSelectorComponent), }
|
|
132
|
-
], ngImport: i0, template: "<div class=\"scaleselector-container\">\n <div class=\"scaleselector-dropdown\">\n <mat-form-field appearance=\"fill\">\n <mat-label>Select topics</mat-label>\n <mat-select id=\"question-scaleKeys\" [(ngModel)]=\"scaleKeys\" required multiple disableRipple [disabled]=\"disabled\">\n <mat-select-trigger>\n You selected {{scaleKeys.length}} topic(s)\n </mat-select-trigger>\n\n @for (factor of topScales; track factor) {\n <mat-option class=\"select-option lower-0\" [value]=\"factor.publicKey\" (click)=\"toggleChildren(factor)\">\n {{factor.name}}\n <span *ngFor=\"let segment of factor.segments | callback: filterSegmentWithQuestions\" class=\"segment\" [ngClass]=\"{'segment-teammember': segment.segment == SegmentEnum.TeamMember, 'segment-stakeholder': segment.segment == SegmentEnum.Stakeholder, 'segment-supporter': segment.segment == SegmentEnum.Management}\">{{segment.segment | segmentName}}</span>\n <span class=\"icon ph-info-fill\" factorInformationDialog [factor]=\"factor\"></span>\n </mat-option>\n\n @for (lowerFactor of getChildFactors(factor.publicKey); track lowerFactor) {\n <mat-option class=\"select-option lower-1\" [value]=\"lowerFactor.publicKey\" (click)=\"toggleParent(lowerFactor)\">\n {{lowerFactor.name}}\n <span *ngFor=\"let segment of lowerFactor.segments | callback: filterSegmentWithQuestions\" class=\"segment\" [ngClass]=\"{'segment-teammember': segment.segment == SegmentEnum.TeamMember, 'segment-stakeholder': segment.segment == SegmentEnum.Stakeholder, 'segment-supporter': segment.segment == SegmentEnum.Management}\">{{segment.segment | segmentName}}</span>\n <span class=\"icon ph-info-fill\" factorInformationDialog [factor]=\"lowerFactor\"></span>\n </mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n </div>\n <div class=\"scaleselector-metadata\">\n <div class=\"questionnaire-breakdown\" *ngIf=\"questionsTotal > 0\">\n <div class=\"questionnaire-breakdown-label\">Expected duration (in minutes)</div>\n <div class=\"questionnaire-breakdown-items\">\n <div class=\"questionnaire-breakdown-item teammembers\" *ngIf=\"questionsTeamMembers > 0\" [matTooltip]=\"'At least ' + questionsTeamMembers + ' questions for team members. Additional questions may be added, and are typically answered once per team.'\" [ngStyle]=\"{'width': ((questionsTeamMembers / questionsTotal) * 100) + '%' }\">\n {{durationTeamMembers | number:'1.0-0'}}m\n </div>\n <div class=\"questionnaire-breakdown-item stakeholders\" *ngIf=\"questionsStakeholders > 0\" [matTooltip]=\"'At least ' + questionsStakeholders + ' questions for stakeholders. Additional questions may be added, and are typically answered once per team.'\" [ngStyle]=\"{'width': ((questionsStakeholders / questionsTotal) * 100) + '%' }\">\n {{durationStakeholders | number:'1.0-0'}}m\n </div>\n <div class=\"questionnaire-breakdown-item supporters\" *ngIf=\"questionsSupporters > 0\" [matTooltip]=\"'At least ' + questionsSupporters + ' questions for supporters. Additional questions may be added, and are typically answered once per team.'\" [ngStyle]=\"{'width': ((questionsSupporters / questionsTotal) * 100) + '%' }\">\n {{durationSupporters | number:'1.0-0'}}m\n </div>\n </div>\n </div>\n <div class=\"questionnaire-accuracy\" *ngIf=\"questionsTotal > 0\">\n <div class=\"questionnaire-breakdown-label\">Accuracy</div>\n <div class=\"questionnaire-breakdown-bar-holder\">\n <div class=\"questionnaire-accuracy-bar\" [ngClass]=\"{'low': questionnaireAccuracy < 0.25}\" [ngStyle]=\"{'width': (questionnaireAccuracy * 100) + '%' }\">{{questionnaireAccuracy * 100 | number:'1.0-0'}}%</div>\n </div>\n </div>\n </div>\n\n <div class=\"scaleselector-warnings\" *ngIf=\"warnings.length > 0 && scaleKeys.length > 0\">\n <div class=\"scaleselector-warnings-warning\" *ngFor=\"let warning of warnings\">\n <span class=\"icon ph-info-fill\"></span>{{warning}}\n </div>\n </div>\n\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}.scaleselector-container .scaleselector-dropdown{flex:auto}.scaleselector-container .scaleselector-dropdown .mat-mdc-form-field{width:100%}.scaleselector-container .scaleselector-metadata{display:flex;column-gap:30px}@media only screen and (max-width: 992px){.scaleselector-container .scaleselector-metadata{display:block}}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown{flex:50%}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-label{font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-label .icon{color:#ef6f00;font-size:18px;vertical-align:middle;cursor:pointer}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-items{display:flex;width:100%;height:20px;border-radius:15px;overflow:hidden;margin-bottom:15px}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-item{flex:auto;min-width:50px;font-size:12px;font-weight:900;font-family:StevieSans,sans-serif;align-content:center;text-align:center}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-item.teammembers{color:#fff;background:#1f3f8f}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-item.stakeholders{background:#fff73f}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-item.supporters{background:#ffbf00}.scaleselector-container .scaleselector-metadata .questionnaire-accuracy{flex:50%}.scaleselector-container .scaleselector-metadata .questionnaire-accuracy .questionnaire-breakdown-label{font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif}.scaleselector-container .scaleselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder{margin-bottom:15px;background:#2f2f2f;height:20px;border-radius:15px;overflow:hidden}.scaleselector-container .scaleselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder .questionnaire-accuracy-bar{flex:auto;min-width:50px;font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif;background:#00af77;height:100%;align-content:center;text-align:center}.scaleselector-container .scaleselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder .questionnaire-accuracy-bar.low{background:#ffbf00}.scaleselector-container .scaleselector-warnings{margin-bottom:15px}.scaleselector-container .scaleselector-warnings .scaleselector-warnings-warning{display:flex;align-items:center;font-size:12pt}.scaleselector-container .scaleselector-warnings .scaleselector-warnings-warning .icon{color:#1f3f8f;font-size:16px;cursor:pointer;margin-right:10px}.mat-mdc-option.lower-1{margin-left:20px}.mat-mdc-option .segment{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%;padding:2px 4px;border-radius:4px;font-weight:600;font-size:10pt;margin-right:10px;white-space:pre}.mat-mdc-option .segment.segment-stakeholder{background:#fff73f}.mat-mdc-option .segment.segment-teammember{background:#1f3f8f;color:#fff}.mat-mdc-option .segment.segment-supporter,.mat-mdc-option .segment.segment-management{background:#ffbf00}.mat-mdc-option .icon{vertical-align:middle;font-size:22px;color:#2f2f2f!important}\n"], dependencies: [{ kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i4.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: i4.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: i6.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: i7.OpenFactorInformationDialogDirective, selector: "[factorInformationDialog]", inputs: ["factor"] }, { kind: "pipe", type: i3.DecimalPipe, name: "number" }, { kind: "pipe", type: i8.SegmentNamePipe, name: "segmentName" }, { kind: "pipe", type: i9.CallbackPipe, name: "callback" }] }); }
|
|
133
|
-
}
|
|
134
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScaleSelectorComponent, decorators: [{
|
|
135
|
-
type: Component,
|
|
136
|
-
args: [{ selector: 'scale-selector', providers: [
|
|
137
|
-
{ provide: NG_VALUE_ACCESSOR, multi: true, useExisting: forwardRef(() => ScaleSelectorComponent), }
|
|
138
|
-
], template: "<div class=\"scaleselector-container\">\n <div class=\"scaleselector-dropdown\">\n <mat-form-field appearance=\"fill\">\n <mat-label>Select topics</mat-label>\n <mat-select id=\"question-scaleKeys\" [(ngModel)]=\"scaleKeys\" required multiple disableRipple [disabled]=\"disabled\">\n <mat-select-trigger>\n You selected {{scaleKeys.length}} topic(s)\n </mat-select-trigger>\n\n @for (factor of topScales; track factor) {\n <mat-option class=\"select-option lower-0\" [value]=\"factor.publicKey\" (click)=\"toggleChildren(factor)\">\n {{factor.name}}\n <span *ngFor=\"let segment of factor.segments | callback: filterSegmentWithQuestions\" class=\"segment\" [ngClass]=\"{'segment-teammember': segment.segment == SegmentEnum.TeamMember, 'segment-stakeholder': segment.segment == SegmentEnum.Stakeholder, 'segment-supporter': segment.segment == SegmentEnum.Management}\">{{segment.segment | segmentName}}</span>\n <span class=\"icon ph-info-fill\" factorInformationDialog [factor]=\"factor\"></span>\n </mat-option>\n\n @for (lowerFactor of getChildFactors(factor.publicKey); track lowerFactor) {\n <mat-option class=\"select-option lower-1\" [value]=\"lowerFactor.publicKey\" (click)=\"toggleParent(lowerFactor)\">\n {{lowerFactor.name}}\n <span *ngFor=\"let segment of lowerFactor.segments | callback: filterSegmentWithQuestions\" class=\"segment\" [ngClass]=\"{'segment-teammember': segment.segment == SegmentEnum.TeamMember, 'segment-stakeholder': segment.segment == SegmentEnum.Stakeholder, 'segment-supporter': segment.segment == SegmentEnum.Management}\">{{segment.segment | segmentName}}</span>\n <span class=\"icon ph-info-fill\" factorInformationDialog [factor]=\"lowerFactor\"></span>\n </mat-option>\n }\n }\n </mat-select>\n </mat-form-field>\n </div>\n <div class=\"scaleselector-metadata\">\n <div class=\"questionnaire-breakdown\" *ngIf=\"questionsTotal > 0\">\n <div class=\"questionnaire-breakdown-label\">Expected duration (in minutes)</div>\n <div class=\"questionnaire-breakdown-items\">\n <div class=\"questionnaire-breakdown-item teammembers\" *ngIf=\"questionsTeamMembers > 0\" [matTooltip]=\"'At least ' + questionsTeamMembers + ' questions for team members. Additional questions may be added, and are typically answered once per team.'\" [ngStyle]=\"{'width': ((questionsTeamMembers / questionsTotal) * 100) + '%' }\">\n {{durationTeamMembers | number:'1.0-0'}}m\n </div>\n <div class=\"questionnaire-breakdown-item stakeholders\" *ngIf=\"questionsStakeholders > 0\" [matTooltip]=\"'At least ' + questionsStakeholders + ' questions for stakeholders. Additional questions may be added, and are typically answered once per team.'\" [ngStyle]=\"{'width': ((questionsStakeholders / questionsTotal) * 100) + '%' }\">\n {{durationStakeholders | number:'1.0-0'}}m\n </div>\n <div class=\"questionnaire-breakdown-item supporters\" *ngIf=\"questionsSupporters > 0\" [matTooltip]=\"'At least ' + questionsSupporters + ' questions for supporters. Additional questions may be added, and are typically answered once per team.'\" [ngStyle]=\"{'width': ((questionsSupporters / questionsTotal) * 100) + '%' }\">\n {{durationSupporters | number:'1.0-0'}}m\n </div>\n </div>\n </div>\n <div class=\"questionnaire-accuracy\" *ngIf=\"questionsTotal > 0\">\n <div class=\"questionnaire-breakdown-label\">Accuracy</div>\n <div class=\"questionnaire-breakdown-bar-holder\">\n <div class=\"questionnaire-accuracy-bar\" [ngClass]=\"{'low': questionnaireAccuracy < 0.25}\" [ngStyle]=\"{'width': (questionnaireAccuracy * 100) + '%' }\">{{questionnaireAccuracy * 100 | number:'1.0-0'}}%</div>\n </div>\n </div>\n </div>\n\n <div class=\"scaleselector-warnings\" *ngIf=\"warnings.length > 0 && scaleKeys.length > 0\">\n <div class=\"scaleselector-warnings-warning\" *ngFor=\"let warning of warnings\">\n <span class=\"icon ph-info-fill\"></span>{{warning}}\n </div>\n </div>\n\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}.scaleselector-container .scaleselector-dropdown{flex:auto}.scaleselector-container .scaleselector-dropdown .mat-mdc-form-field{width:100%}.scaleselector-container .scaleselector-metadata{display:flex;column-gap:30px}@media only screen and (max-width: 992px){.scaleselector-container .scaleselector-metadata{display:block}}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown{flex:50%}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-label{font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-label .icon{color:#ef6f00;font-size:18px;vertical-align:middle;cursor:pointer}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-items{display:flex;width:100%;height:20px;border-radius:15px;overflow:hidden;margin-bottom:15px}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-item{flex:auto;min-width:50px;font-size:12px;font-weight:900;font-family:StevieSans,sans-serif;align-content:center;text-align:center}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-item.teammembers{color:#fff;background:#1f3f8f}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-item.stakeholders{background:#fff73f}.scaleselector-container .scaleselector-metadata .questionnaire-breakdown .questionnaire-breakdown-item.supporters{background:#ffbf00}.scaleselector-container .scaleselector-metadata .questionnaire-accuracy{flex:50%}.scaleselector-container .scaleselector-metadata .questionnaire-accuracy .questionnaire-breakdown-label{font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif}.scaleselector-container .scaleselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder{margin-bottom:15px;background:#2f2f2f;height:20px;border-radius:15px;overflow:hidden}.scaleselector-container .scaleselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder .questionnaire-accuracy-bar{flex:auto;min-width:50px;font-size:12px;font-weight:900;text-transform:uppercase;font-family:StevieSans,sans-serif;background:#00af77;height:100%;align-content:center;text-align:center}.scaleselector-container .scaleselector-metadata .questionnaire-accuracy .questionnaire-breakdown-bar-holder .questionnaire-accuracy-bar.low{background:#ffbf00}.scaleselector-container .scaleselector-warnings{margin-bottom:15px}.scaleselector-container .scaleselector-warnings .scaleselector-warnings-warning{display:flex;align-items:center;font-size:12pt}.scaleselector-container .scaleselector-warnings .scaleselector-warnings-warning .icon{color:#1f3f8f;font-size:16px;cursor:pointer;margin-right:10px}.mat-mdc-option.lower-1{margin-left:20px}.mat-mdc-option .segment{font-family:StevieSansThin,sans-serif;font-style:normal;font-weight:400;font-size:15px;line-height:140%;text-transform:uppercase;line-height:100%;padding:2px 4px;border-radius:4px;font-weight:600;font-size:10pt;margin-right:10px;white-space:pre}.mat-mdc-option .segment.segment-stakeholder{background:#fff73f}.mat-mdc-option .segment.segment-teammember{background:#1f3f8f;color:#fff}.mat-mdc-option .segment.segment-supporter,.mat-mdc-option .segment.segment-management{background:#ffbf00}.mat-mdc-option .icon{vertical-align:middle;font-size:22px;color:#2f2f2f!important}\n"] }]
|
|
139
|
-
}], ctorParameters: () => [], propDecorators: { scales: [{
|
|
140
|
-
type: Input
|
|
141
|
-
}], filter: [{
|
|
142
|
-
type: Input
|
|
143
|
-
}], disabled: [{
|
|
144
|
-
type: Input
|
|
145
|
-
}], onCheckChange: [{
|
|
146
|
-
type: Output
|
|
147
|
-
}], scaleKeys: [{
|
|
148
|
-
type: Input
|
|
149
|
-
}] } });
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NhbGUtc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNjcnVtdGVhbXN1cnZleS10b29scy9zcmMvbGliL2NvbXBvbmVudHMvc2NhbGUtc2VsZWN0b3Ivc2NhbGUtc2VsZWN0b3IuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNjcnVtdGVhbXN1cnZleS10b29scy9zcmMvbGliL2NvbXBvbmVudHMvc2NhbGUtc2VsZWN0b3Ivc2NhbGUtc2VsZWN0b3IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBcUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7Ozs7Ozs7O0FBWWhJLE1BQU0sT0FBTyxzQkFBc0I7SUFtQmhDO1FBbEJPLDBCQUFxQixHQUFXLENBQUMsQ0FBQztRQUNsQyx5QkFBb0IsR0FBVyxDQUFDLENBQUM7UUFDakMsMEJBQXFCLEdBQVcsQ0FBQyxDQUFDO1FBQ2xDLHdCQUFtQixHQUFXLENBQUMsQ0FBQztRQUNoQyx3QkFBbUIsR0FBVyxDQUFDLENBQUM7UUFDaEMseUJBQW9CLEdBQVcsQ0FBQyxDQUFDO1FBQ2pDLHVCQUFrQixHQUFXLENBQUMsQ0FBQztRQUMvQixtQkFBYyxHQUFXLENBQUMsQ0FBQztRQUMzQixnQkFBVyxHQUFHLFdBQVcsQ0FBQztRQUMxQixhQUFRLEdBQWEsRUFBRSxDQUFBO1FBSXJCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDaEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBQzdDLGNBQVMsR0FB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SSxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2hMLElBQUksQ0FBQyxxQkFBcUIsR0FBRyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2xMLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRS9LLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxPQUFPLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ3hMLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFD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LENBQUMsU0FBUyxDQUFDLENBQUM7WUFDNUQsQ0FBQztRQUNKLENBQUM7YUFDSSxDQUFDO1lBQ0gsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEUsQ0FBQztRQUVELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN4QixDQUFDOytHQXpJUyxzQkFBc0I7bUdBQXRCLHNCQUFzQixvTEFKckI7WUFDUixFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQXNCLENBQUMsR0FBRztTQUNyRywwQkNaSixxdklBeURBOzs0RkQzQ2Esc0JBQXNCO2tCQVJsQyxTQUFTOytCQUNHLGdCQUFnQixhQUdmO3dCQUNSLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsdUJBQXVCLENBQUMsR0FBRztxQkFDckc7d0RBY1EsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNJLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0UsU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGYWN0b3JTdHJ1Y3R1cmVEdG8sIEZhY3RvclN0cnVjdHVyZVNlZ21lbnREdG8sIE1vZGVsRGVmaW5pdGlvbkR0bywgU2VnbWVudEVudW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvbW9kZWxTdHJ1Y3R1cmVEdG8nO1xuaW1wb3J0IHsgU2NhbGVTZWxlY3RvckZpbHRlckR0byB9IGZyb20gJy4vc2NhbGVTZWxlY3RvckZpbHRlckR0byc7XG5pbXBvcnQgeyBMIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcblxuQENvbXBvbmVudCh7XG4gICBzZWxlY3RvcjogJ3NjYWxlLXNlbGVjdG9yJyxcbiAgIHRlbXBsYXRlVXJsOiAnLi9zY2FsZS1zZWxlY3Rvci5jb21wb25lbnQuaHRtbCcsXG4gICBzdHlsZVVybHM6IFsnLi9zY2FsZS1zZWxlY3Rvci5jb21wb25lbnQubGVzcyddLFxuICAgcHJvdmlkZXJzOiBbXG4gICAgICB7IHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLCBtdWx0aTogdHJ1ZSwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2NhbGVTZWxlY3RvckNvbXBvbmVudCksIH1cbiAgIF1cbn0pXG5leHBvcnQgY2xhc3MgU2NhbGVTZWxlY3RvckNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgIHB1YmxpYyBxdWVzdGlvbm5haXJlQWNjdXJhY3k6IG51bWJlciA9IDA7XG4gICBwdWJsaWMgcXVlc3Rpb25zVGVhbU1lbWJlcnM6IG51bWJlciA9IDA7XG4gICBwdWJsaWMgcXVlc3Rpb25zU3Rha2Vob2xkZXJzOiBudW1iZXIgPSAwO1xuICAgcHVibGljIHF1ZXN0aW9uc1N1cHBvcnRlcnM6IG51bWJlciA9IDA7XG4gICBwdWJsaWMgZHVyYXRpb25UZWFtTWVtYmVyczogbnVtYmVyID0gMDtcbiAgIHB1YmxpYyBkdXJhdGlvblN0YWtlaG9sZGVyczogbnVtYmVyID0gMDtcbiAgIHB1YmxpYyBkdXJhdGlvblN1cHBvcnRlcnM6IG51bWJlciA9IDA7XG4gICBwdWJsaWMgcXVlc3Rpb25zVG90YWw6IG51bWJlciA9IDA7XG4gICBwdWJsaWMgU2VnbWVudEVudW0gPSBTZWdtZW50RW51bTtcbiAgIHB1YmxpYyB3YXJuaW5nczogc3RyaW5nW10gPSBbXVxuXG4gICBASW5wdXQoKSBzY2FsZXM6IEZhY3RvclN0cnVjdHVyZUR0b1tdO1xuICAgQElucHV0KCkgZmlsdGVyOiBTY2FsZVNlbGVjdG9yRmlsdGVyRHRvO1xuICAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgIEBPdXRwdXQoKSBvbkNoZWNrQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICAgQElucHV0KCkgc2NhbGVLZXlzOiBzdHJpbmdbXSA9IFtdO1xuICAgcHVibGljIHRvcFNjYWxlczogRmFjdG9yU3RydWN0dXJlRHRvW10gPSBbXTtcblxuICAgY29uc3RydWN0b3IoKSB7XG4gICB9XG5cbiAgIG5nT25Jbml0KCkge1xuICAgICAgdGhpcy50b3BTY2FsZXMgPSB0aGlzLmdldENoaWxkRmFjdG9ycyhudWxsKTtcbiAgIH1cblxuICAgd3JpdGVWYWx1ZShzY2FsZUtleXM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgICB0aGlzLnNjYWxlS2V5cyA9IHNjYWxlS2V5cyA/PyBbXTtcbiAgICAgIHRoaXMudXBkYXRlTWV0YURhdGEoKTtcbiAgIH1cblxuICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICB9XG5cbiAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICB9XG5cbiAgIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgfVxuXG4gICBvbkNoYW5nZSA9IChzY2FsZUtleXM6IHN0cmluZ1tdKSA9PiB7IH07XG5cbiAgIG9uVG91Y2hlZCA9ICgpID0+IHsgfTtcblxuICAgcHVibGljIGZpbHRlclNlZ21lbnRXaXRoUXVlc3Rpb25zKHNlZ21lbnQ6IEZhY3RvclN0cnVjdHVyZVNlZ21lbnREdG8pIHtcbiAgICAgIHJldHVybiBzZWdtZW50LnF1ZXN0aW9uQ291bnQgPiAwO1xuICAgfVxuXG4gICBwdWJsaWMgZ2V0Q2hpbGRGYWN0b3JzKHBhcmVudEtleTogc3RyaW5nKTogRmFjdG9yU3RydWN0dXJlRHRvW10ge1xuICAgICAgdmFyIGZhY3RvcnMgPSB0aGlzLnNjYWxlc1xuICAgICAgICAgLmZpbHRlcihwID0+IHAucGFyZW50S2V5ID09IHBhcmVudEtleSk7XG5cbiAgICAgIGlmICh0aGlzLmZpbHRlciAhPSBudWxsKSB7XG4gICAgICAgICBpZiAodGhpcy5maWx0ZXIudGVhbVR5cGUgIT0gbnVsbCkge1xuICAgICAgICAgICAgZmFjdG9ycyA9IGZhY3RvcnMuZmlsdGVyKHAgPT4gcC5jb25zdHJhaW50cy5mb3JUZWFtVHlwZXMuaW5jbHVkZXModGhpcy5maWx0ZXIudGVhbVR5cGUpKTtcbiAgICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhY3RvcnM7XG4gICB9XG5cbiAgIHByaXZhdGUgdXBkYXRlTWV0YURhdGEoKSB7XG4gICAgICB0aGlzLndhcm5pbmdzID0gW107XG4gICAgICAvLyBvbmx5IHdvcmsgd2l0aCBsb3dlci1sZXZlbCBmYWN0b3JzLCBhcyBoaWdoZXItbGV2ZWwgY29udGFpbiBhZ2dyZWdhdGVkIGhpZ2hlci1sZXZlbCBxdWVzdGlvbiBjb3VudHNcbiAgICAgIHZhciBzY2FsZXNUb0luY2x1ZGUgPSB0aGlzLnNjYWxlcy5maWx0ZXIocCA9PiBwLnBhcmVudEtleSAhPSBudWxsICYmIHRoaXMuc2NhbGVLZXlzLmluY2x1ZGVzKHAucHVibGljS2V5KSk7XG4gICAgICB2YXIgdG90YWxRdWVzdGlvbnMgPSB0aGlzLnNjYWxlcy5maWx0ZXIocCA9PiBwLnBhcmVudEtleSAhPSBudWxsKS5yZWR1Y2UoKHN1bSwgY3VycmVudCkgPT4gc3VtICs9IGN1cnJlbnQucXVlc3Rpb25Db3VudCwgMCk7XG5cbiAgICAgIHRoaXMucXVlc3Rpb25zVG90YWwgPSBzY2FsZXNUb0luY2x1ZGUucmVkdWNlKChzdW0sIGN1cnJlbnQpID0+IHN1bSArPSBjdXJyZW50LnF1ZXN0aW9uQ291bnQsIDApO1xuICAgICAgdGhpcy5xdWVzdGlvbnNUZWFtTWVtYmVycyA9IHNjYWxlc1RvSW5jbHVkZS5mbGF0TWFwKHAgPT4gcC5zZWdtZW50cykuZmlsdGVyKHAgPT4gcC5zZWdtZW50ID09IFNlZ21lbnRFbnVtLlRlYW1NZW1iZXIpLnJlZHVjZSgoc3VtLCBjdXJyZW50KSA9PiBzdW0gKz0gY3VycmVudC5xdWVzdGlvbkNvdW50LCAwKTtcbiAgICAgIHRoaXMucXVlc3Rpb25zU3Rha2Vob2xkZXJzID0gc2NhbGVzVG9JbmNsdWRlLmZsYXRNYXAocCA9PiBwLnNlZ21lbnRzKS5maWx0ZXIocCA9PiBwLnNlZ21lbnQgPT0gU2VnbWVudEVudW0uU3Rha2Vob2xkZXIpLnJlZHVjZSgoc3VtLCBjdXJyZW50KSA9PiBzdW0gKz0gY3VycmVudC5xdWVzdGlvbkNvdW50LCAwKTtcbiAgICAgIHRoaXMucXVlc3Rpb25zU3VwcG9ydGVycyA9IHNjYWxlc1RvSW5jbHVkZS5mbGF0TWFwKHAgPT4gcC5zZWdtZW50cykuZmlsdGVyKHAgPT4gcC5zZWdtZW50ID09IFNlZ21lbnRFbnVtLk1hbmFnZW1lbnQpLnJlZHVjZSgoc3VtLCBjdXJyZW50KSA9PiBzdW0gKz0gY3VycmVudC5xdWVzdGlvbkNvdW50LCAwKTtcblxuICAgICAgdGhpcy5kdXJhdGlvblRlYW1NZW1iZXJzID0gc2NhbGVzVG9JbmNsdWRlLmZsYXRNYXAocCA9PiBwLnNlZ21lbnRzKS5maWx0ZXIocCA9PiBwLnNlZ21lbnQgPT0gU2VnbWVudEVudW0uVGVhbU1lbWJlcikucmVkdWNlKChzdW0sIGN1cnJlbnQpID0+IHN1bSArPSBjdXJyZW50LmR1cmF0aW9uSW5TZWNvbmRzLCAwKSAvIDYwO1xuICAgICAgdGhpcy5kdXJhdGlvblN0YWtlaG9sZGVycyA9IHNjYWxlc1RvSW5jbHVkZS5mbGF0TWFwKHAgPT4gcC5zZWdtZW50cykuZmlsdGVyKHAgPT4gcC5zZWdtZW50ID09IFNlZ21lbnRFbnVtLlN0YWtlaG9sZGVyKS5yZWR1Y2UoKHN1bSwgY3VycmVudCkgPT4gc3VtICs9IGN1cnJlbnQuZHVyYXRpb25JblNlY29uZHMsIDApIC8gNjA7XG4gICAgICB0aGlzLmR1cmF0aW9uU3VwcG9ydGVycyA9IHNjYWxlc1RvSW5jbHVkZS5mbGF0TWFwKHAgPT4gcC5zZWdtZW50cykuZmlsdGVyKHAgPT4gcC5zZWdtZW50ID09IFNlZ21lbnRFbnVtLk1hbmFnZW1lbnQpLnJlZHVjZSgoc3VtLCBjdXJyZW50KSA9PiBzdW0gKz0gY3VycmVudC5kdXJhdGlvbkluU2Vjb25kcywgMCkgLyA2MDtcblxuICAgICAgaWYgKHRoaXMuZHVyYXRpb25UZWFtTWVtYmVycyA8IDEpIHsgdGhpcy5kdXJhdGlvblRlYW1NZW1iZXJzID0gMTsgfVxuICAgICAgaWYgKHRoaXMuZHVyYXRpb25TdGFrZWhvbGRlcnMgPCAxKSB7IHRoaXMuZHVyYXRpb25TdGFrZWhvbGRlcnMgPSAxOyB9XG4gICAgICBpZiAodGhpcy5kdXJhdGlvblN1cHBvcnRlcnMgPCAxKSB7IHRoaXMuZHVyYXRpb25TdXBwb3J0ZXJzID0gMTsgfVxuXG4gICAgICBpZiAodGhpcy5xdWVzdGlvbnNTdGFrZWhvbGRlcnMgPT0gMCkge1xuICAgICAgICAgdGhpcy53YXJuaW5ncy5wdXNoKFwiVGhlIHNlbGVjdGlvbiBkb2VzIG5vdCBpbmNsdWRlIHRvcGljcyBmb3IgJ1N0YWtlaG9sZGVycycuXCIpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMucXVlc3Rpb25zU3VwcG9ydGVycyA9PSAwKSB7XG4gICAgICAgICB0aGlzLndhcm5pbmdzLnB1c2goXCJUaGUgc2VsZWN0aW9uIGRvZXMgbm90IGluY2x1ZGUgdG9waWNzIGZvciAnU3VwcG9ydGVycycuXCIpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMucXVlc3Rpb25zVGVhbU1lbWJlcnMgPT0gMCkge1xuICAgICAgICAgdGhpcy53YXJuaW5ncy5wdXNoKFwiVGhlIHNlbGVjdGlvbiBkb2VzIG5vdCBpbmNsdWRlIHRvcGljcyBmb3IgJ1RlYW0gTWVtYmVycycuXCIpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMucXVlc3Rpb25uYWlyZUFjY3VyYWN5IDwgMC4yNSkge1xuICAgICAgICAgdGhpcy53YXJuaW5ncy5wdXNoKFwiVGhlIHNlbGVjdGlvbiBtZWFzdXJlcyBmZXcgZmFjdG9ycywgc28gaXRzIGFjY3VyYWN5IGlzIGxvdy5cIik7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucXVlc3Rpb25uYWlyZUFjY3VyYWN5ID0gdGhpcy5xdWVzdGlvbnNUb3RhbCAvIHRvdGFsUXVlc3Rpb25zO1xuICAgfVxuXG4gICBwcml2YXRlIGVtaXRTY2FsZUtleXMoKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuc2NhbGVLZXlzKTtcbiAgICAgIHRoaXMudXBkYXRlTWV0YURhdGEoKTtcbiAgIH1cblxuICAgcHVibGljIHRvZ2dsZUNoaWxkcmVuKHNjYWxlOiBGYWN0b3JTdHJ1Y3R1cmVEdG8pIHtcbiAgICAgIHZhciBjaGVja2VkID0gdGhpcy5zY2FsZUtleXMuZmluZChwID0+IHAgPT0gc2NhbGUucHVibGljS2V5KSAhPSBudWxsO1xuICAgICAgdmFyIGNoaWxkcmVuID0gdGhpcy5nZXRDaGlsZEZhY3RvcnMoc2NhbGUucHVibGljS2V5KTtcblxuICAgICAgaWYgKGNoZWNrZWQpIHtcbiAgICAgICAgIHZhciBzY2FsZXNUb0FkZCA9IGNoaWxkcmVuLmZpbHRlcihwID0+ICF0aGlzLnNjYWxlS2V5cy5pbmNsdWRlcyhwLnB1YmxpY0tleSkpLm1hcChwID0+IHAucHVibGljS2V5KTtcbiAgICAgICAgIHRoaXMuc2NhbGVLZXlzID0gdGhpcy5zY2FsZUtleXMuY29uY2F0KHNjYWxlc1RvQWRkKTtcbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICAgdmFyIHNjYWxlc1RvUmVtb3ZlID0gY2hpbGRyZW4ubWFwKHAgPT4gcC5wdWJsaWNLZXkpO1xuICAgICAgICAgdGhpcy5zY2FsZUtleXMgPSB0aGlzLnNjYWxlS2V5cy5maWx0ZXIocCA9PiAhc2NhbGVzVG9SZW1vdmUuaW5jbHVkZXMocCkpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmVtaXRTY2FsZUtleXMoKTtcbiAgIH1cblxuICAgcHVibGljIHRvZ2dsZVBhcmVudChzY2FsZTogRmFjdG9yU3RydWN0dXJlRHRvKSB7XG4gICAgICB2YXIgY2hlY2tlZCA9IHRoaXMuc2NhbGVLZXlzLmZpbmQocCA9PiBwID09IHNjYWxlLnB1YmxpY0tleSkgIT0gbnVsbDtcbiAgICAgIHZhciBwYXJlbnQgPSB0aGlzLnNjYWxlcy5maW5kKHAgPT4gcC5wdWJsaWNLZXkgPT0gc2NhbGUucGFyZW50S2V5KTtcbiAgICAgIHZhciBzaWJsaW5ncyA9IHRoaXMuZ2V0Q2hpbGRGYWN0b3JzKHBhcmVudC5wdWJsaWNLZXkpO1xuXG4gICAgICBpZiAoY2hlY2tlZCkge1xuICAgICAgICAgdmFyIGFsbExvd2VyQ2hlY2tlZCA9IHNpYmxpbmdzLmZpbHRlcihwID0+ICF0aGlzLnNjYWxlS2V5cy5pbmNsdWRlcyhwLnB1YmxpY0tleSkpLmxlbmd0aCA9PSAwO1xuXG4gICAgICAgICBpZiAoYWxsTG93ZXJDaGVja2VkKSB7XG4gICAgICAgICAgICB0aGlzLnNjYWxlS2V5cyA9IHRoaXMuc2NhbGVLZXlzLmNvbmNhdChwYXJlbnQucHVibGljS2V5KTtcbiAgICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGVsc2Uge1xuICAgICAgICAgdGhpcy5zY2FsZUtleXMgPSB0aGlzLnNjYWxlS2V5cy5maWx0ZXIocCA9PiBwICE9IHBhcmVudC5wdWJsaWNLZXkpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmVtaXRTY2FsZUtleXMoKTtcbiAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJzY2FsZXNlbGVjdG9yLWNvbnRhaW5lclwiPlxuICAgPGRpdiBjbGFzcz1cInNjYWxlc2VsZWN0b3ItZHJvcGRvd25cIj5cbiAgICAgIDxtYXQtZm9ybS1maWVsZCBhcHBlYXJhbmNlPVwiZmlsbFwiPlxuICAgICAgICAgPG1hdC1sYWJlbD5TZWxlY3QgdG9waWNzPC9tYXQtbGFiZWw+XG4gICAgICAgICA8bWF0LXNlbGVjdCBpZD1cInF1ZXN0aW9uLXNjYWxlS2V5c1wiIFsobmdNb2RlbCldPVwic2NhbGVLZXlzXCIgcmVxdWlyZWQgbXVsdGlwbGUgZGlzYWJsZVJpcHBsZSBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cbiAgICAgICAgICAgIDxtYXQtc2VsZWN0LXRyaWdnZXI+XG4gICAgICAgICAgICAgICBZb3Ugc2VsZWN0ZWQge3tzY2FsZUtleXMubGVuZ3RofX0gdG9waWMocylcbiAgICAgICAgICAgIDwvbWF0LXNlbGVjdC10cmlnZ2VyPlxuXG4gICAgICAgICAgICBAZm9yIChmYWN0b3Igb2YgdG9wU2NhbGVzOyB0cmFjayBmYWN0b3IpIHtcbiAgICAgICAgICAgIDxtYXQtb3B0aW9uIGNsYXNzPVwic2VsZWN0LW9wdGlvbiBsb3dlci0wXCIgW3ZhbHVlXT1cImZhY3Rvci5wdWJsaWNLZXlcIiAoY2xpY2spPVwidG9nZ2xlQ2hpbGRyZW4oZmFjdG9yKVwiPlxuICAgICAgICAgICAgICAge3tmYWN0b3IubmFtZX19XG4gICAgICAgICAgICAgICA8c3BhbiAqbmdGb3I9XCJsZXQgc2VnbWVudCBvZiBmYWN0b3Iuc2VnbWVudHMgfCBjYWxsYmFjazogZmlsdGVyU2VnbWVudFdpdGhRdWVzdGlvbnNcIiBjbGFzcz1cInNlZ21lbnRcIiBbbmdDbGFzc109XCJ7J3NlZ21lbnQtdGVhbW1lbWJlcic6IHNlZ21lbnQuc2VnbWVudCA9PSBTZWdtZW50RW51bS5UZWFtTWVtYmVyLCAnc2VnbWVudC1zdGFrZWhvbGRlcic6IHNlZ21lbnQuc2VnbWVudCA9PSBTZWdtZW50RW51bS5TdGFrZWhvbGRlciwgJ3NlZ21lbnQtc3VwcG9ydGVyJzogc2VnbWVudC5zZWdtZW50ID09IFNlZ21lbnRFbnVtLk1hbmFnZW1lbnR9XCI+e3tzZWdtZW50LnNlZ21lbnQgfCBzZWdtZW50TmFtZX19PC9zcGFuPlxuICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpY29uIHBoLWluZm8tZmlsbFwiIGZhY3RvckluZm9ybWF0aW9uRGlhbG9nIFtmYWN0b3JdPVwiZmFjdG9yXCI+PC9zcGFuPlxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuXG4gICAgICAgICAgICBAZm9yIChsb3dlckZhY3RvciBvZiBnZXRDaGlsZEZhY3RvcnMoZmFjdG9yLnB1YmxpY0tleSk7IHRyYWNrIGxvd2VyRmFjdG9yKSB7XG4gICAgICAgICAgICA8bWF0LW9wdGlvbiBjbGFzcz1cInNlbGVjdC1vcHRpb24gbG93ZXItMVwiIFt2YWx1ZV09XCJsb3dlckZhY3Rvci5wdWJsaWNLZXlcIiAoY2xpY2spPVwidG9nZ2xlUGFyZW50KGxvd2VyRmFjdG9yKVwiPlxuICAgICAgICAgICAgICAge3tsb3dlckZhY3Rvci5uYW1lfX1cbiAgICAgICAgICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCBzZWdtZW50IG9mIGxvd2VyRmFjdG9yLnNlZ21lbnRzIHwgY2FsbGJhY2s6IGZpbHRlclNlZ21lbnRXaXRoUXVlc3Rpb25zXCIgY2xhc3M9XCJzZWdtZW50XCIgW25nQ2xhc3NdPVwieydzZWdtZW50LXRlYW1tZW1iZXInOiBzZWdtZW50LnNlZ21lbnQgPT0gU2VnbWVudEVudW0uVGVhbU1lbWJlciwgJ3NlZ21lbnQtc3Rha2Vob2xkZXInOiBzZWdtZW50LnNlZ21lbnQgPT0gU2VnbWVudEVudW0uU3Rha2Vob2xkZXIsICdzZWdtZW50LXN1cHBvcnRlcic6IHNlZ21lbnQuc2VnbWVudCA9PSBTZWdtZW50RW51bS5NYW5hZ2VtZW50fVwiPnt7c2VnbWVudC5zZWdtZW50IHwgc2VnbWVudE5hbWV9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbiBwaC1pbmZvLWZpbGxcIiBmYWN0b3JJbmZvcm1hdGlvbkRpYWxvZyBbZmFjdG9yXT1cImxvd2VyRmFjdG9yXCI+PC9zcGFuPlxuICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgIDwvZGl2PlxuICAgPGRpdiBjbGFzcz1cInNjYWxlc2VsZWN0b3ItbWV0YWRhdGFcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJxdWVzdGlvbm5haXJlLWJyZWFrZG93blwiICpuZ0lmPVwicXVlc3Rpb25zVG90YWwgPiAwXCI+XG4gICAgICAgICA8ZGl2IGNsYXNzPVwicXVlc3Rpb25uYWlyZS1icmVha2Rvd24tbGFiZWxcIj5FeHBlY3RlZCBkdXJhdGlvbiAoaW4gbWludXRlcyk8L2Rpdj5cbiAgICAgICAgIDxkaXYgY2xhc3M9XCJxdWVzdGlvbm5haXJlLWJyZWFrZG93bi1pdGVtc1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInF1ZXN0aW9ubmFpcmUtYnJlYWtkb3duLWl0ZW0gdGVhbW1lbWJlcnNcIiAqbmdJZj1cInF1ZXN0aW9uc1RlYW1NZW1iZXJzID4gMFwiIFttYXRUb29sdGlwXT1cIidBdCBsZWFzdCAnICsgcXVlc3Rpb25zVGVhbU1lbWJlcnMgKyAnIHF1ZXN0aW9ucyBmb3IgdGVhbSBtZW1iZXJzLiBBZGRpdGlvbmFsIHF1ZXN0aW9ucyBtYXkgYmUgYWRkZWQsIGFuZCBhcmUgdHlwaWNhbGx5IGFuc3dlcmVkIG9uY2UgcGVyIHRlYW0uJ1wiIFtuZ1N0eWxlXT1cInsnd2lkdGgnOiAoKHF1ZXN0aW9uc1RlYW1NZW1iZXJzIC8gcXVlc3Rpb25zVG90YWwpICogMTAwKSArICclJyB9XCI+XG4gICAgICAgICAgICAgICB7e2R1cmF0aW9uVGVhbU1lbWJlcnMgfCBudW1iZXI6JzEuMC0wJ319bVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicXVlc3Rpb25uYWlyZS1icmVha2Rvd24taXRlbSBzdGFrZWhvbGRlcnNcIiAqbmdJZj1cInF1ZXN0aW9uc1N0YWtlaG9sZGVycyA+IDBcIiBbbWF0VG9vbHRpcF09XCInQXQgbGVhc3QgJyArIHF1ZXN0aW9uc1N0YWtlaG9sZGVycyArICcgcXVlc3Rpb25zIGZvciBzdGFrZWhvbGRlcnMuIEFkZGl0aW9uYWwgcXVlc3Rpb25zIG1heSBiZSBhZGRlZCwgYW5kIGFyZSB0eXBpY2FsbHkgYW5zd2VyZWQgb25jZSBwZXIgdGVhbS4nXCIgW25nU3R5bGVdPVwieyd3aWR0aCc6ICgocXVlc3Rpb25zU3Rha2Vob2xkZXJzIC8gcXVlc3Rpb25zVG90YWwpICogMTAwKSArICclJyB9XCI+XG4gICAgICAgICAgICAgICB7e2R1cmF0aW9uU3Rha2Vob2xkZXJzIHwgbnVtYmVyOicxLjAtMCd9fW1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInF1ZXN0aW9ubmFpcmUtYnJlYWtkb3duLWl0ZW0gc3VwcG9ydGVyc1wiICpuZ0lmPVwicXVlc3Rpb25zU3VwcG9ydGVycyA+IDBcIiBbbWF0VG9vbHRpcF09XCInQXQgbGVhc3QgJyArIHF1ZXN0aW9uc1N1cHBvcnRlcnMgKyAnIHF1ZXN0aW9ucyBmb3Igc3VwcG9ydGVycy4gQWRkaXRpb25hbCBxdWVzdGlvbnMgbWF5IGJlIGFkZGVkLCBhbmQgYXJlIHR5cGljYWxseSBhbnN3ZXJlZCBvbmNlIHBlciB0ZWFtLidcIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogKChxdWVzdGlvbnNTdXBwb3J0ZXJzIC8gcXVlc3Rpb25zVG90YWwpICogMTAwKSArICclJyB9XCI+XG4gICAgICAgICAgICAgICB7e2R1cmF0aW9uU3VwcG9ydGVycyB8IG51bWJlcjonMS4wLTAnfX1tXG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwicXVlc3Rpb25uYWlyZS1hY2N1cmFjeVwiICpuZ0lmPVwicXVlc3Rpb25zVG90YWwgPiAwXCI+XG4gICAgICAgICA8ZGl2IGNsYXNzPVwicXVlc3Rpb25uYWlyZS1icmVha2Rvd24tbGFiZWxcIj5BY2N1cmFjeTwvZGl2PlxuICAgICAgICAgPGRpdiBjbGFzcz1cInF1ZXN0aW9ubmFpcmUtYnJlYWtkb3duLWJhci1ob2xkZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJxdWVzdGlvbm5haXJlLWFjY3VyYWN5LWJhclwiIFtuZ0NsYXNzXT1cInsnbG93JzogcXVlc3Rpb25uYWlyZUFjY3VyYWN5IDwgMC4yNX1cIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogKHF1ZXN0aW9ubmFpcmVBY2N1cmFjeSAqIDEwMCkgKyAnJScgfVwiPnt7cXVlc3Rpb25uYWlyZUFjY3VyYWN5ICogMTAwIHwgbnVtYmVyOicxLjAtMCd9fSU8L2Rpdj5cbiAgICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICA8L2Rpdj5cblxuICAgPGRpdiBjbGFzcz1cInNjYWxlc2VsZWN0b3Itd2FybmluZ3NcIiAqbmdJZj1cIndhcm5pbmdzLmxlbmd0aCA+IDAgJiYgc2NhbGVLZXlzLmxlbmd0aCA+IDBcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzY2FsZXNlbGVjdG9yLXdhcm5pbmdzLXdhcm5pbmdcIiAqbmdGb3I9XCJsZXQgd2FybmluZyBvZiB3YXJuaW5nc1wiPlxuICAgICAgICAgPHNwYW4gY2xhc3M9XCJpY29uIHBoLWluZm8tZmlsbFwiPjwvc3Bhbj57e3dhcm5pbmd9fVxuICAgICAgPC9kaXY+XG4gICA8L2Rpdj5cblxuPC9kaXY+XG4iXX0=
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
4
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
5
|
-
import { MatSelectModule } from '@angular/material/select';
|
|
6
|
-
import { MatTooltip } from '@angular/material/tooltip';
|
|
7
|
-
import { FactorInformationDialogModule } from '../../dialogs/dialog-factorinformation/dialog-factorinformation.module';
|
|
8
|
-
import { CallbackPipeModule } from '../../pipes/callback/callback.module';
|
|
9
|
-
import { SegmentNamePipeModule } from '../../pipes/segmentName/segmentName.module';
|
|
10
|
-
import { ScaleSelectorComponent } from './scale-selector.component';
|
|
11
|
-
import * as i0 from "@angular/core";
|
|
12
|
-
export class ScaleSelectorModule {
|
|
13
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScaleSelectorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
14
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.12", ngImport: i0, type: ScaleSelectorModule, declarations: [ScaleSelectorComponent], imports: [FormsModule,
|
|
15
|
-
MatFormFieldModule,
|
|
16
|
-
ReactiveFormsModule,
|
|
17
|
-
CommonModule,
|
|
18
|
-
MatSelectModule,
|
|
19
|
-
SegmentNamePipeModule,
|
|
20
|
-
CallbackPipeModule,
|
|
21
|
-
MatTooltip,
|
|
22
|
-
FactorInformationDialogModule], exports: [ScaleSelectorComponent] }); }
|
|
23
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScaleSelectorModule, imports: [FormsModule,
|
|
24
|
-
MatFormFieldModule,
|
|
25
|
-
ReactiveFormsModule,
|
|
26
|
-
CommonModule,
|
|
27
|
-
MatSelectModule,
|
|
28
|
-
SegmentNamePipeModule,
|
|
29
|
-
CallbackPipeModule,
|
|
30
|
-
FactorInformationDialogModule] }); }
|
|
31
|
-
}
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ScaleSelectorModule, decorators: [{
|
|
33
|
-
type: NgModule,
|
|
34
|
-
args: [{
|
|
35
|
-
imports: [
|
|
36
|
-
FormsModule,
|
|
37
|
-
MatFormFieldModule,
|
|
38
|
-
ReactiveFormsModule,
|
|
39
|
-
CommonModule,
|
|
40
|
-
MatSelectModule,
|
|
41
|
-
SegmentNamePipeModule,
|
|
42
|
-
CallbackPipeModule,
|
|
43
|
-
MatTooltip,
|
|
44
|
-
FactorInformationDialogModule
|
|
45
|
-
],
|
|
46
|
-
declarations: [
|
|
47
|
-
ScaleSelectorComponent
|
|
48
|
-
],
|
|
49
|
-
exports: [
|
|
50
|
-
ScaleSelectorComponent
|
|
51
|
-
]
|
|
52
|
-
}]
|
|
53
|
-
}] });
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NhbGUtc2VsZWN0b3IubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNjcnVtdGVhbXN1cnZleS10b29scy9zcmMvbGliL2NvbXBvbmVudHMvc2NhbGUtc2VsZWN0b3Ivc2NhbGUtc2VsZWN0b3IubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHdFQUF3RSxDQUFDO0FBQ3ZILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ25GLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOztBQW1CcEUsTUFBTSxPQUFPLG1CQUFtQjsrR0FBbkIsbUJBQW1CO2dIQUFuQixtQkFBbUIsaUJBSjFCLHNCQUFzQixhQVh0QixXQUFXO1lBQ1gsa0JBQWtCO1lBQ2xCLG1CQUFtQjtZQUNuQixZQUFZO1lBQ1osZUFBZTtZQUNmLHFCQUFxQjtZQUNyQixrQkFBa0I7WUFDbEIsVUFBVTtZQUNWLDZCQUE2QixhQUs3QixzQkFBc0I7Z0hBRWYsbUJBQW1CLFlBZjFCLFdBQVc7WUFDWCxrQkFBa0I7WUFDbEIsbUJBQW1CO1lBQ25CLFlBQVk7WUFDWixlQUFlO1lBQ2YscUJBQXFCO1lBQ3JCLGtCQUFrQjtZQUVsQiw2QkFBNkI7OzRGQU90QixtQkFBbUI7a0JBakIvQixRQUFRO21CQUFDO29CQUNQLE9BQU8sRUFBRTt3QkFDTixXQUFXO3dCQUNYLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLGVBQWU7d0JBQ2YscUJBQXFCO3dCQUNyQixrQkFBa0I7d0JBQ2xCLFVBQVU7d0JBQ1YsNkJBQTZCO3FCQUMvQjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1gsc0JBQXNCO3FCQUFDO29CQUMxQixPQUFPLEVBQUU7d0JBQ04sc0JBQXNCO3FCQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XG5pbXBvcnQgeyBNYXRUb29sdGlwIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQgeyBGYWN0b3JJbmZvcm1hdGlvbkRpYWxvZ01vZHVsZSB9IGZyb20gJy4uLy4uL2RpYWxvZ3MvZGlhbG9nLWZhY3RvcmluZm9ybWF0aW9uL2RpYWxvZy1mYWN0b3JpbmZvcm1hdGlvbi5tb2R1bGUnO1xuaW1wb3J0IHsgQ2FsbGJhY2tQaXBlTW9kdWxlIH0gZnJvbSAnLi4vLi4vcGlwZXMvY2FsbGJhY2svY2FsbGJhY2subW9kdWxlJztcbmltcG9ydCB7IFNlZ21lbnROYW1lUGlwZU1vZHVsZSB9IGZyb20gJy4uLy4uL3BpcGVzL3NlZ21lbnROYW1lL3NlZ21lbnROYW1lLm1vZHVsZSc7XG5pbXBvcnQgeyBTY2FsZVNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9zY2FsZS1zZWxlY3Rvci5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICAgaW1wb3J0czogW1xuICAgICAgRm9ybXNNb2R1bGUsXG4gICAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgTWF0U2VsZWN0TW9kdWxlLFxuICAgICAgU2VnbWVudE5hbWVQaXBlTW9kdWxlLFxuICAgICAgQ2FsbGJhY2tQaXBlTW9kdWxlLFxuICAgICAgTWF0VG9vbHRpcCxcbiAgICAgIEZhY3RvckluZm9ybWF0aW9uRGlhbG9nTW9kdWxlXG4gICBdLFxuICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICBTY2FsZVNlbGVjdG9yQ29tcG9uZW50XSxcbiAgIGV4cG9ydHM6IFtcbiAgICAgIFNjYWxlU2VsZWN0b3JDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIFNjYWxlU2VsZWN0b3JNb2R1bGUgeyB9XG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export class ScaleSelectorFilterDto {
|
|
2
|
-
}
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NhbGVTZWxlY3RvckZpbHRlckR0by5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY3J1bXRlYW1zdXJ2ZXktdG9vbHMvc3JjL2xpYi9jb21wb25lbnRzL3NjYWxlLXNlbGVjdG9yL3NjYWxlU2VsZWN0b3JGaWx0ZXJEdG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsTUFBTSxPQUFPLHNCQUFzQjtDQUVsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0LCBmb3J3YXJkUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGYWN0b3JTdHJ1Y3R1cmVEdG8sIEZhY3RvclN0cnVjdHVyZVNlZ21lbnREdG8sIE1vZGVsRGVmaW5pdGlvbkR0bywgU2VnbWVudEVudW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvbW9kZWxTdHJ1Y3R1cmVEdG8nO1xuXG5cbmV4cG9ydCBjbGFzcyBTY2FsZVNlbGVjdG9yRmlsdGVyRHRvICB7XG4gICBwdWJsaWMgdGVhbVR5cGU6IHN0cmluZztcbn1cbiJdfQ==
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { EventEmitter } from '@angular/core';
|
|
2
|
-
import { ControlValueAccessor } from '@angular/forms';
|
|
3
|
-
import { FactorStructureDto, FactorStructureSegmentDto, SegmentEnum } from '../../models/modelStructureDto';
|
|
4
|
-
import { ScaleSelectorFilterDto } from './scaleSelectorFilterDto';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export declare class ScaleSelectorComponent implements ControlValueAccessor {
|
|
7
|
-
questionnaireAccuracy: number;
|
|
8
|
-
questionsTeamMembers: number;
|
|
9
|
-
questionsStakeholders: number;
|
|
10
|
-
questionsSupporters: number;
|
|
11
|
-
durationTeamMembers: number;
|
|
12
|
-
durationStakeholders: number;
|
|
13
|
-
durationSupporters: number;
|
|
14
|
-
questionsTotal: number;
|
|
15
|
-
SegmentEnum: typeof SegmentEnum;
|
|
16
|
-
warnings: string[];
|
|
17
|
-
scales: FactorStructureDto[];
|
|
18
|
-
filter: ScaleSelectorFilterDto;
|
|
19
|
-
disabled: boolean;
|
|
20
|
-
onCheckChange: EventEmitter<boolean>;
|
|
21
|
-
scaleKeys: string[];
|
|
22
|
-
topScales: FactorStructureDto[];
|
|
23
|
-
constructor();
|
|
24
|
-
ngOnInit(): void;
|
|
25
|
-
writeValue(scaleKeys: string[]): void;
|
|
26
|
-
registerOnChange(fn: any): void;
|
|
27
|
-
registerOnTouched(fn: any): void;
|
|
28
|
-
setDisabledState?(isDisabled: boolean): void;
|
|
29
|
-
onChange: (scaleKeys: string[]) => void;
|
|
30
|
-
onTouched: () => void;
|
|
31
|
-
filterSegmentWithQuestions(segment: FactorStructureSegmentDto): boolean;
|
|
32
|
-
getChildFactors(parentKey: string): FactorStructureDto[];
|
|
33
|
-
private updateMetaData;
|
|
34
|
-
private emitScaleKeys;
|
|
35
|
-
toggleChildren(scale: FactorStructureDto): void;
|
|
36
|
-
toggleParent(scale: FactorStructureDto): void;
|
|
37
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ScaleSelectorComponent, never>;
|
|
38
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ScaleSelectorComponent, "scale-selector", never, { "scales": { "alias": "scales"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "scaleKeys": { "alias": "scaleKeys"; "required": false; }; }, { "onCheckChange": "onCheckChange"; }, never, never, false, never>;
|
|
39
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "./scale-selector.component";
|
|
3
|
-
import * as i2 from "@angular/forms";
|
|
4
|
-
import * as i3 from "@angular/material/form-field";
|
|
5
|
-
import * as i4 from "@angular/common";
|
|
6
|
-
import * as i5 from "@angular/material/select";
|
|
7
|
-
import * as i6 from "../../pipes/segmentName/segmentName.module";
|
|
8
|
-
import * as i7 from "../../pipes/callback/callback.module";
|
|
9
|
-
import * as i8 from "@angular/material/tooltip";
|
|
10
|
-
import * as i9 from "../../dialogs/dialog-factorinformation/dialog-factorinformation.module";
|
|
11
|
-
export declare class ScaleSelectorModule {
|
|
12
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<ScaleSelectorModule, never>;
|
|
13
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<ScaleSelectorModule, [typeof i1.ScaleSelectorComponent], [typeof i2.FormsModule, typeof i3.MatFormFieldModule, typeof i2.ReactiveFormsModule, typeof i4.CommonModule, typeof i5.MatSelectModule, typeof i6.SegmentNamePipeModule, typeof i7.CallbackPipeModule, typeof i8.MatTooltip, typeof i9.FactorInformationDialogModule], [typeof i1.ScaleSelectorComponent]>;
|
|
14
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<ScaleSelectorModule>;
|
|
15
|
-
}
|